mirrored listing x402 eip155:8453

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.

Do you run workbot1.oddsys.org? This listing was mirrored from Coinbase's public Bazaar. Claim it in 30 seconds — no account required — and it becomes verified, permanently overriding the mirrored copy.

Claim this listing
5000 (raw units)
price
1
calls / 30d
1
unique payers
2026-08-30
updated

Provider

workbot1.oddsys.org · discovered, not yet claimed by its owner

Payment (x402 accepts[])

[
  {
    "scheme": "exact",
    "network": "eip155:8453",
    "payTo": "0x15459498e1191d8787c83177809bd54022fA18c4",
    "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "amount": "5000",
    "maxTimeoutSeconds": 300
  }
]

Output schema

{
  "bazaar": {
    "info": {
      "input": {
        "body": {
          "dark": "#000000",
          "format": "png",
          "light": "#ffffff",
          "margin": 2,
          "scale": 4,
          "text": "https://example.com"
        },
        "bodyType": "json",
        "method": "POST",
        "type": "http"
      },
      "output": {
        "body": {
          "dataBase64": "string (png, inline delivery) | absent",
          "downloadsRemaining": "number (url delivery)",
          "expiresAt": "string (url delivery)",
          "format": "string",
          "meta": {
            "inputBytes": "number",
            "margin": "number",
            "modules": "number",
            "pixels": "number",
            "scale": "number"
          },
          "svg": "string (svg, inline delivery) | absent",
          "url": "string (url delivery) — expiring download link"
        },
        "bodyType": "json",
        "example": {
          "dataBase64": "iVBORw0KGgoAAAANSUhEUgAA…",
          "format": "png",
          "meta": {
            "dark": "#000000",
            "errorCorrection": "M",
            "inputBytes": 23,
            "light": "#ffffff",
            "margin": 2,
            "modules": 25,
            "outputBytes": 412,
            "pixels": 116,
            "scale": 4
          }
        }
      }
    },
    "routeTemplate": "/qr",
    "schema": {
      "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) — 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 — 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"
        }
      }
    }
  }
}

Use it

curl

curl "https://workbot1.oddsys.org/qr"
# -> 402 Payment Required, accepts[] lists how to pay
# retry with a PAYMENT-SIGNATURE (or PAYMENT header) once paid

JavaScript

const res = await fetch("https://workbot1.oddsys.org/qr");
if (res.status === 402) {
  const { accepts } = await res.json();
  // pay one of accepts[] via an x402 client, then retry with the payment header
}

Python

import httpx
res = httpx.get("https://workbot1.oddsys.org/qr")
if res.status_code == 402:
    accepts = res.json()["accepts"]
    # pay one of accepts[] via an x402 client, then retry with the payment header

Machine-readable

Everything on this page is also available as clean JSON at /resources/8675.json, and this resource appears in /discovery/resources and /discovery/search.