BYTETOOLS

QR Server (goQR.me) API

Free QR code generator API with no key. Create QR codes as PNG, SVG or EPS at any size and colour using a single URL. Tested example and full parameter list.

No API key requiredCORS enabledHTTPSFree tier

Endpoint tested and returned HTTP 200 on 2026-08-19

What is the QR Server (goQR.me) API?

The QR Server API is a free QR code generation API that creates a QR code image from any text or URL using a single GET request. It requires no API key and returns PNG, GIF, JPEG, SVG or EPS at any size.

This API is unusual in that the response is an image rather than JSON, which makes it exceptionally easy to use: you can put the endpoint URL straight into an `<img src>` and a QR code appears, with no JavaScript at all.

It handles the encoding details that make QR codes actually scannable — error correction level, quiet-zone margin and contrast — through simple query parameters. The one rule worth remembering is that the data must be URL-encoded, or anything containing `&` or `?` will be truncated.

Quick facts

Base URL
https://api.qrserver.com/v1/create-qr-code/
Authentication
No key or registration.
Rate limit
No published limit; commercial use is permitted.
Pricing
Free, including commercial use.
CORS
Enabled — callable directly from browser JavaScript
Official docs
Read the docs

How to use the QR Server (goQR.me) API

Every request below was executed against the live API on 2026-08-19, and the response shown is the real body it returned — not an illustration.

1. Generate a 150x150 QR code PNG

GET https://api.qrserver.com/v1/create-qr-code/?data=ByteTools&size=150x150

curl
curl 'https://api.qrserver.com/v1/create-qr-code/?data=ByteTools&size=150x150'
JavaScript (fetch)
const res = await fetch("https://api.qrserver.com/v1/create-qr-code/?data=ByteTools&size=150x150");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);
Python (requests)
import requests

res = requests.get("https://api.qrserver.com/v1/create-qr-code/?data=ByteTools&size=150x150", timeout=20)
res.raise_for_status()
print(res.json())
Response — HTTP 200
# This endpoint returns image/png, not JSON.
# The response body is the image itself, so it can be used directly as an
# <img src="..."> or saved to a file — there is nothing to parse.
#
# Verified: HTTP 200, Content-Type: image/png

Parameters

ParameterTypeRequiredDescription
datastringRequiredThe text or URL to encode. Must be URL-encoded. ByteTools
sizestringOptionalDimensions as WIDTHxHEIGHT, from 10x10 to 1000x1000. 150x150
formatstringOptionalpng, gif, jpeg, jpg, svg or eps. svg
color / bgcolorstringOptionalForeground and background as RGB decimal or hex. 0-0-0
marginintegerOptionalQuiet zone in pixels. Defaults to 1; scanners need at least 4. 4
eccstringOptionalError correction level: L, M, Q or H. M

Response fields

(binary image)image
The response body is the image itself, not JSON. Content-Type reflects the requested format.

What you can build with the QR Server (goQR.me) API

  • Generate QR codes for tickets, menus or event check-in pages
  • Embed a QR code in an email or PDF using a plain img tag
  • Produce print-ready vector QR codes by requesting SVG or EPS format
  • Create Wi-Fi or vCard QR codes by encoding the appropriate text scheme

Common errors and how to fix them

Truncated or wrong content encoded

The `data` parameter was not URL-encoded.

Fix: Encode it — `&`, `?`, `#` and spaces all break the query string otherwise.

QR code will not scan

Margin too small or contrast too low.

Fix: Set `margin=4` or more and keep a dark foreground on a light background. Inverted colours often fail.

400

Size outside the permitted range.

Fix: Keep dimensions between 10x10 and 1000x1000.

QR Server (goQR.me) API — frequently asked questions

Is there a free QR code API with no API key?

Yes. The QR Server API generates QR codes from a single GET request with no key or signup, and permits commercial use. The response is the image itself.

Can I use the QR code API directly in an img tag?

Yes. Because the endpoint returns an image, you can set it as the `src` of an img element and the QR code renders with no JavaScript.

Why does my QR code fail to scan?

The two usual causes are too small a quiet zone and poor contrast. Set `margin=4` or higher, and keep the foreground dark against a light background — inverted QR codes are unreliable across scanners.

Can I generate vector QR codes for print?

Yes. Pass `format=svg` or `format=eps` to get a scalable vector output suitable for printing at any size.

Tools that pair with this API

QR Server (goQR.me) is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 2026-08-19; always check the official documentation before relying on this API in production, as terms and limits can change.