Read QR codes and barcodes, identify formats, detect multiple codes, generate barcode images and validate payloads for automated workflows.
Access the service through a configured POKT gateway or signed supplier relay. The public docs/results host does not expose the backend API. The backend contract accepts JSON at /v1/barcode with one operation: decode, generate, formats or validate.
{"operation":"generate","params":{"format":"qr_code","text":"https://example.com","width":1024,"height":1024,"error_correction":"M","output_format":"png"}}
{"operation":"decode","image_url":"https://example.com/image.png","params":{"formats":[],"try_harder":true,"max_results":16}}
{"operation":"formats"}
Decode accepts public HTTPS PNG, JPEG or WebP images; maximum download 25 MiB, maximum image 30 million pixels. Private network destinations are rejected.
Generation returns a temporary HTTPS PNG or SVG URL, valid for one hour. Maximum payload 4096 UTF-8 bytes; maximum dimensions 4096 each and 16 million pixels total. Capacity can impose a lower payload limit. Margin specifies the minimum quiet-zone modules; the image is centered and integer-scaled. GS1 generation is unavailable.
Use the formats operation for the verified inventory. Unsupported and experimental formats are not accepted for production generation. Text and raw base64 bytes are returned separately when decoding; binary payloads have null text.
Two business requests can run concurrently. Requests exceeding capacity return HTTP 429 with code busy. The operation deadline is 15 seconds. Errors use an ok:false JSON envelope and a stable code.
Operators: deploy the isolated service with one CPU, 768 MiB, one worker and a persistent result volume. Storage is capped at 2 GiB and automatically expires results. Health probes: GET /v1/identity, GET /v1/health, POST /v1/self-test. Route /v1 endpoints through the REST supplier; serve images and docs separately.
OpenAPI contract