POST /v1/codes/qr-decode
QR reader
Point it at a screenshot or a photo and get the contents back as text.
Read a QR code from a picture now No key, no code — 2 credits either way.
curl -X POST "$DOATHING_API/v1/codes/qr-decode" \
-H "x-api-key: $DOATHING_KEY" \
-H "content-type: application/json" \
-d '{"file": {"filename": "screenshot.png", "content_type": "image/png", "data_b64": "<base64>"}}'
Point it at a screenshot or a photo and get the contents back as text.
Detect and decode QR codes present in an uploaded image, returning contents and positions.
Input
Send a file object with base64 data_b64, its content_type and a filename. Accepted types: image/png, image/jpeg, image/webp, image/gif, image/tiff.
The declared type is not trusted — the bytes are sniffed and a contradiction is rejected rather than corrected.
Response
The result carries your remaining balance alongside it, so you can track spend without a second call.
{
"codes": [
{
"text": "https://doathing.com",
"format": "QRCode",
"position": {
"top_left": {
"x": 32,
"y": 32
}
}
}
],
"count": 1,
"request_id": "37f01edb-0163-42a1-ac51-0acaef979800",
"credits_remaining": 96
}
Cost
2 credits per call, whether it is run from the site or from the API — the credential differs, the price does not. A new account starts with 20 credits.
A rejected request still costs a credit: the authorizer decrements before the tool validates. A call rejected for a missing or invalid key is free.