---
title: "Buy one scan-verified QR artwork (x402, no account)"
method: GET
path: "/v1/qr"
tags: ["public", "agent"]
---

# Buy one scan-verified QR artwork (x402, no account)

`GET /v1/qr`

## Request

- Base URL: `https://qart.uk/api`
- URL: `https://qart.uk/api/v1/qr`
- Auth: none declared

Returns 402 with x402 payment requirements; retry with a `PAYMENT-SIGNATURE` header and the image comes back as image/png.

No account and no bearer token: the wallet is the only identity. You are charged ONLY if a real QR detector decodes the image we generate — settlement happens after the scan verdict, so a request that produces nothing scannable is never settled and costs you nothing.

The destination URL is encoded directly; no qart.uk redirect is minted, so nothing about the code depends on us staying up. Retrying with the same payment nonce returns the same image rather than generating (and charging) a second time.

## Query parameters

- `url` string, required
- `style` string
- `size` 768 | 1024

## Response `200`

Paid and delivered. Scan-verified PNG.

## Other responses

- `400`: Bad or unsafe destination, unknown style, or a URL over the cap. Not charged.
- `402`: Payment required. Requirements are in the PAYMENT-REQUIRED header.
- `409`: That payment is already generating.
- `429`: Rate limited for this wallet.
- `502`: Nothing scannable was produced. NOT charged.
- `503`: The paid agent API is disabled or unconfigured.

---

[API](https://skmtc.dev/qart/apis/qart-uk-api.md) · [All operations](https://skmtc.dev/qart/apis/qart-uk-api/llms.txt) · [OpenAPI document](https://skmtc.dev/qart/apis/qart-uk-api/revisions/128be33f1888?raw)
