QRgen API Documentation

Integrate QR code generation into your applications. Generate static codes, manage dynamic codes, and bulk-generate from CSV.

Authentication

All API requests (except static QR generation) require authentication via a cookie-based JWT token. To obtain a token:

  1. Sign up or log in via POST /api/signup or POST /api/login
  2. The response sets a qr_token cookie
  3. Include this cookie in subsequent requests

Example: Log in and save cookie

curl -c cookies.txt -X POST https://qr.wolfenterprises.cloud/api/login \
  -H "Content-Type: application/json" \
  -d '{"email": "you@example.com", "password": "yourpassword"}'

Endpoints

POST /api/generate

Generate a static QR code. No authentication required.

Parameters (JSON body)

datastring, requiredThe content to encode
qr_typestringurl, text, wifi, vcard, email, phone (default: url)
sizeintegerImage size in px, 100-2000 (default: 300)
fg_colorstringForeground hex color (default: #000000)
bg_colorstringBackground hex color (default: #FFFFFF)
error_correctionstringL, M, Q, H (default: M)
output_formatstringpng or svg (default: png)
logostringBase64-encoded logo image (PNG/JPG, max 500KB, PNG format only)

curl example

curl -X POST https://qr.wolfenterprises.cloud/api/generate \
  -H "Content-Type: application/json" \
  -d '{"data": "https://example.com", "size": 400}' \
  --output qrcode.png

Python example

import requests

resp = requests.post("https://qr.wolfenterprises.cloud/api/generate", json={
    "data": "https://example.com",
    "size": 400,
    "fg_color": "#1a1a2e",
    "bg_color": "#ffffff"
})
with open("qrcode.png", "wb") as f:
    f.write(resp.content)

Response: PNG image binary (Content-Type: image/png) or SVG (Content-Type: image/svg+xml)

POST /api/dynamic

Create a new dynamic QR code. Requires authentication.

destination_urlstring, requiredURL to redirect to (http:// or https://)
labelstringOptional label
curl -b cookies.txt -X POST https://qr.wolfenterprises.cloud/api/dynamic \
  -H "Content-Type: application/json" \
  -d '{"destination_url": "https://example.com", "label": "Homepage"}'

Response: {"ok": true, "short_code": "abc1234", "qr_url": "...", "destination": "..."}

GET /api/dynamic

List all your dynamic QR codes. Requires authentication.

curl -b cookies.txt https://qr.wolfenterprises.cloud/api/dynamic

Response: {"codes": [{"short_code": "...", "destination_url": "...", "label": "...", "scan_count": 42}]}

PUT /api/dynamic/{id}

Update the destination URL. Requires authentication.

idpath paramThe short_code
destination_urlstring, requiredNew destination URL
curl -b cookies.txt -X PUT https://qr.wolfenterprises.cloud/api/dynamic/abc1234 \
  -H "Content-Type: application/json" \
  -d '{"destination_url": "https://new-url.com"}'

DELETE /api/dynamic/{id}

Delete a dynamic QR code and its scan data. Requires authentication.

curl -b cookies.txt -X DELETE https://qr.wolfenterprises.cloud/api/dynamic/abc1234

GET /api/dynamic/{id}/stats

Get scan analytics for a dynamic code. Requires authentication.

curl -b cookies.txt https://qr.wolfenterprises.cloud/api/dynamic/abc1234/stats

Response: {"short_code": "...", "total_scans": 42, "daily_scans": [...], "recent_scans": [...]}

POST /api/bulk

Bulk-generate QR codes from CSV. Returns a ZIP archive. Requires authentication.

curl (file upload)

curl -b cookies.txt -X POST https://qr.wolfenterprises.cloud/api/bulk \
  -F "file=@codes.csv" \
  --output qr_codes.zip

Python example

import requests

session = requests.Session()
session.post("https://qr.wolfenterprises.cloud/api/login", json={
    "email": "you@example.com", "password": "yourpassword"
})

with open("codes.csv", "rb") as f:
    resp = session.post("https://qr.wolfenterprises.cloud/api/bulk",
                        files={"file": ("codes.csv", f, "text/csv")})
with open("qr_codes.zip", "wb") as f:
    f.write(resp.content)

Response: ZIP file containing PNG images named by label or row number.

Rate Limits

General API endpoints60 requests / minute
Auth endpoints (login/signup)5 requests / minute
Bulk generation (Free plan)50 codes per batch
Bulk generation (Pro plan)500 codes per batch

Rate limits are per IP address. Exceeding a limit returns 429 Too Many Requests.

Ready to integrate?

Generate your first QR code via the API in under a minute.

Try the Generator