Everything you need to integrate QRKit into your application.
Include your API key in the Authorization header:
Authorization: Bearer qk_your_api_key_here
Get your API key from the Dashboard.
/qrcode| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| data | string | Yes | - | URL or text to encode (max 4296 chars) |
| size | number | No | 300 | Image size in pixels (100-2000) |
| format | string | No | png | Output format: png, svg, jpg |
| fgColor | string | No | #000000 | Foreground hex color |
| bgColor | string | No | #ffffff | Background hex color |
| logo | string | No | - | URL of logo to overlay in center |
| logoSize | number | No | 0.3 | Logo size ratio (0.1-0.4) |
| style | string | No | square | Dot style: square, rounded, dots |
| ecLevel | string | No | M | Error correction: L, M, Q, H |
| margin | number | No | 2 | Margin in modules (0-10) |
| template | string | No | - | Template ID or slug (see Templates) |
{
"success": true,
"data": {
"id": "qr_abc123",
"url": "https://pub-xxxx.r2.dev/qr_abc123.png",
"size": 300,
"format": "png",
"createdAt": "2026-04-17T10:00:00Z"
}
}Fill in the parameters below and generate a QR code instantly.
QR code preview will appear here
curl -X POST https://www.qrkit.site/api/v1/qrcode \
-H "Authorization: Bearer qk_your_key" \
-H "Content-Type: application/json" \
-d '{
"data": "https://example.com",
"size": 300,
"style": "square",
"fgColor": "#000000",
"bgColor": "#ffffff",
"format": "png"
}'Use templates to apply pre-configured styles. Pass a template slug or ID in the template parameter.
Classic
Black on white, square
classicDark Mode
White on dark blue
dark-modeOcean Dots
Blue dots on white
ocean-dotsRounded Warm
Red rounded on cream
rounded-warmMinimal
Gray rounded, subtle
minimalCreate and manage your own templates via the API:
# List templates (built-in + yours)
GET /api/templates
# Create a custom template
POST /api/templates
{
"name": "My Brand",
"config": { "fgColor": "#ff0000", "style": "rounded" }
}
# Delete a custom template
DELETE /api/templates/{id}/qrcode/batchPro+Generate up to 50 QR codes in a single request. Each item is processed independently.
curl -X POST https://www.qrkit.site/api/v1/qrcode/batch \
-H "Authorization: Bearer qk_your_key" \
-H "Content-Type: application/json" \
-d '{
"template": "ocean-dots",
"items": [
{ "data": "https://a.com" },
{ "data": "https://b.com", "fgColor": "#ff0000" },
{ "data": "https://c.com", "size": 500 }
]
}'{
"success": true,
"data": {
"results": [
{ "index": 0, "success": true, "data": { "id": "...", "url": "...", ... } },
{ "index": 1, "success": true, "data": { "id": "...", "url": "...", ... } },
{ "index": 2, "success": true, "data": { "id": "...", "url": "...", ... } }
],
"total": 3,
"succeeded": 3,
"failed": 0
}
}| Code | Status | Description |
|---|---|---|
| UNAUTHORIZED | 401 | Missing or invalid API key |
| INVALID_KEY | 401 | API key not found or deactivated |
| INVALID_PARAMS | 400 | Invalid request parameters |
| MISSING_DATA | 400 | Required "data" parameter missing |
| RATE_LIMITED | 429 | Too many requests per minute |
| QUOTA_EXCEEDED | 429 | Monthly request limit reached |
| TEMPLATE_NOT_FOUND | 404 | Template slug/ID not found |
| PLAN_NOT_SUPPORTED | 403 | Feature requires Pro or Enterprise plan |
| GENERATION_FAILED | 500 | Internal QR generation error |
/account/usagecurl https://www.qrkit.site/api/v1/account/usage \ -H "Authorization: Bearer qk_your_key"