Developers

A QR code API. And an MCP server.

Make verified picture codes from your own software or from an AI agent. One call takes an image and a link and returns a code that scans, activated on your plan, with analytics. Included in the quarter plan.

1. Get a key

On your account page, under API & MCP. Send it as a Bearer token. The secret is shown once; revoke and re-create any time.

2. Make a code

Generation runs the same engine and the same verification as the site. By default the code is activated on your plan and comes back ready to print.

curl -X POST https://ariaqr.com/api/v1/codes \
  -H "Authorization: Bearer aq_…" \
  -H "Content-Type: application/json" \
  -d '{
    "image_url": "https://example.com/artwork.png",
    "url": "https://example.com/menu",
    "edge": "soft"
  }'
{
  "job_id": "…",
  "verified": true,
  "activated": true,
  "code": "a7Bx9Q",
  "short_url": "ariaqr.com/r/a7Bx9Q",
  "preview_url": "https://ariaqr.com/api/preview/…",
  "download_url": "https://ariaqr.com/api/download/…",
  "stats_url": "https://ariaqr.com/stats/a7Bx9Q?k=…"
}

Other kinds use kind and fields, with the same field names as the generator: whatsapp, vcard, wifi, upi, email, phone, sms, maps, event, text. Send image_base64 instead of image_url if the image is not online. Set activate: false to generate without spending an activation; the response then carries a pay_url.

3. Read and change

# your codes
GET  https://ariaqr.com/api/v1/codes

# one code with its analytics
GET  https://ariaqr.com/api/v1/codes/a7Bx9Q

# point it somewhere else, no reprint
PATCH https://ariaqr.com/api/v1/codes/a7Bx9Q
      { "destination": "https://example.com/spring-menu" }

MCP server

Streamable HTTP at https://ariaqr.com/api/mcp, same Bearer key. Tools: create_code, list_codes, get_code_stats, set_destination.

// Claude Desktop / Cursor / any MCP client
{
  "mcpServers": {
    "ariaqr": {
      "url": "https://ariaqr.com/api/mcp",
      "headers": { "Authorization": "Bearer aq_…" }
    }
  }
}
# Claude Code
claude mcp add --transport http ariaqr https://ariaqr.com/api/mcp \
  --header "Authorization: Bearer aq_…"

Then ask: “Make an AriaQR code from this product photo that opens our booking page, and tell me how many scans it got this week.”

Limits and errors

  • 60 requests a minute per key. 429 with a retry hint when exceeded.
  • Images up to 10 MB, PNG, JPEG or WebP. Non-square images are centre-cropped; use the site for hand placement.
  • Each activation counts against the plan’s 45 per quarter. 402 when none are left or the plan is not active.
  • Errors are JSON: { "error": "…" } with the matching HTTP status.

Questions

What does the AriaQR API do?+

It makes a verified picture QR code from an image URL and a destination in one call, activates it on your quarter plan, and returns the preview, the 2048px download, the short link and an analytics link. It can also list your codes, read scan analytics and change where a code points.

What is the AriaQR MCP server?+

An MCP (Model Context Protocol) endpoint at https://ariaqr.com/api/mcp that exposes the same capabilities as tools, so Claude, ChatGPT, Cursor and other agents can make and manage codes for you. Authenticate with an API key as a Bearer token.

How do I get an API key?+

Start the quarter plan, then create a key on your account page. The secret is shown once. Keys can be revoked any time.

What are the limits?+

60 requests a minute per key, images up to 10 MB, and every activation counts against the 45 per quarter on the plan. Generation without activation is free and unlimited within the rate limit.