Generate a QR code from text as PNG (base64) or SVG
Generate a QR code from text as PNG (base64) or SVG. Custom module size, quiet-zone margin, and hex colours. Deterministic, capacity-capped at 2953 bytes. Set delivery to "url" to receive a short-lived download link instead of inline data.
Answeringour last check, 2026-09-24
1 of 1checks answered this week
559 msmedian answer time
$0.005listed price per call
$0.005price it asked us
Paid test badge: not yet. The checks above are free: we call the tool without paying and read the payment request it sends back. The Verified badge needs paid calls whose answers match the promised output, and nobody can buy a badge.
Endpoint
POST https://workbot1.oddsys.org/qr
| Category | Code and developer |
|---|---|
| Provider host | workbot1.oddsys.org |
| Networks | eip155:8453 |
| Payment schemes | exact |
| Self-reported calls, 30 days | 1 from 1 payers (the provider's figure, not ours) |
Our checks, last 30 days
| Day | Result | HTTP | Asked | Time |
|---|---|---|---|---|
| 2026-09-24 | valid payment request | 402 | $0.005 | 559 ms |
Example input (from the provider)
{
"body": {
"dark": "#000000",
"format": "png",
"light": "#ffffff",
"margin": 2,
"scale": 4,
"text": "https://example.com"
},
"bodyType": "json",
"method": "POST",
"type": "http"
}
Promised output schema (from the provider)
{
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"body": {
"additionalProperties": false,
"properties": {
"dark": {
"description": "Hex colour of the data modules (default #000000).",
"type": "string"
},
"delivery": {
"description": "inline (default) = data in the response body; url = a short-lived download link (expires after ~15 min or a small download budget) \u2014 hand it to a user or client script instead of carrying the bytes.",
"enum": [
"inline",
"url"
],
"type": "string"
},
"downloads": {
"description": "url delivery only: download budget before the link dies (1-3, default 2).",
"type": "number"
},
"format": {
"description": "Output format (default png).",
"enum": [
"png",
"svg"
],
"type": "string"
},
"light": {
"description": "Hex colour of the background (default #ffffff).",
"type": "string"
},
"margin": {
"description": "Quiet-zone width in modules (0-16, default 2).",
"type": "number"
},
"scale": {
"description": "Pixels per QR module, PNG only (1-20, default 4).",
"type": "number"
},
"text": {
"description": "Content to encode (max 2953 bytes utf8 \u2014 QR capacity).",
"type": "string"
}
},
"required": [
"text"
],
"type": "object"
},
"bodyType": {
"enum": [
"json"
],
"type": "string"
},
"method": {
"enum": [
"POST"
],
"type": "string"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method",
"bodyType",
"body"
],
"type": "object"
}
}
}