Introducing the QRDex API: Create and Manage QR Codes Programmatically

01 Feb 2026
Introducing the QRDex API: Create and Manage QR Codes Programmatically

QR Codes, Meet Your API

We are shipping something that many of you have been asking for: the QRDex public REST API. Starting today, you can create, update, delete, and retrieve QR codes entirely through code. No browser required.

Whether you are building an internal tool that generates QR codes for inventory labels, wiring up a workflow that creates tracking codes on the fly, or integrating QR code generation into your SaaS product, the API gives you full programmatic control over everything QRDex can do.

The API is live now at https://qrdex.io/api/v1/ and full interactive documentation is available at qrdex.io/developers.

What You Can Do

The API covers the complete lifecycle of a QR code:

  • Create QR codes -- URL, WiFi, email, SMS, WhatsApp, and telephone types are all supported. Set custom foreground/background colors, shapes, and enable scan tracking in a single POST request.
  • List and filter -- Retrieve your team's QR codes with pagination and type-based filtering. Need just your WiFi codes? Pass ?qr_type=wifi.
  • Get QR code images -- Fetch server-rendered SVG images of any QR code, with your custom colors applied. No client-side rendering library needed.
  • Update and delete -- Modify any field on an existing QR code or soft-delete codes you no longer need.
  • Track scans -- QR codes created with scan tracking enabled get a short URL (qrdex.io/abc12xyz) that records every scan with full analytics.

All responses are JSON. All errors return clear, descriptive messages. The API behaves exactly the way you would expect a modern REST API to behave.

Getting Started

Three steps to your first API call:

1. Sign up for the Growth plan. API access is available on the Growth plan ($199/year) and above. Head to qrdex.io/pricing to get started.

2. Generate an API key. In your dashboard, go to your team settings and open the API Keys section. Create a new key -- you will see it once, so store it securely. Keys use the qrdx_ prefix format for easy identification.

3. Make your first request. List your existing QR codes:

curl https://qrdex.io/api/v1/qr_codes \
  -H "Authorization: Bearer qrdx_your_key_here"

You will get back a paginated JSON response:

{
  "data": [
    {
      "id": 1,
      "title": "My Website",
      "qr_type": "url",
      "short_url": "abc12xyz",
      "full_short_url": "https://qrdex.io/abc12xyz",
      "scans_count": 142,
      "track_scans": true,
      "foreground_color": "#000000",
      "background_color": "#FFFFFF",
      "shape": "rounded",
      "created_at": "2026-01-15T10:30:00Z",
      "updated_at": "2026-01-20T14:22:00Z",
      "image_url": "https://qrdex.io/api/v1/qr_codes/1/image"
    }
  ],
  "meta": {
    "page": 1,
    "per_page": 25,
    "total": 1,
    "total_pages": 1
  }
}

Creating a new QR code is just as straightforward:

curl -X POST https://qrdex.io/api/v1/qr_codes \
  -H "Authorization: Bearer qrdx_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "qr_code": {
      "title": "Conference Badge",
      "qr_type": "url",
      "url": "https://example.com/attendee/1234",
      "foreground_color": "#1a1a2e",
      "background_color": "#ffffff",
      "track_scans": true
    }
  }'

Server-Side SVG Image Generation

This is the feature we are most excited about. Every QR code exposes an /image endpoint that returns a fully rendered SVG:

GET /api/v1/qr_codes/:id/image

The SVG is generated server-side with your configured foreground and background colors applied. When scan tracking is enabled, the QR code encodes the tracking short URL so every scan is counted automatically.

This means you can embed QR codes directly into your application without pulling in a client-side QR code rendering library. Use it as an image source:

<img src="https://qrdex.io/api/v1/qr_codes/42/image"
     alt="QR Code"
     width="200"
     height="200" />

Or download it and save to a file:

curl https://qrdex.io/api/v1/qr_codes/42/image \
  -H "Authorization: Bearer qrdx_your_key_here" \
  -o badge-qr.svg

SVG is resolution-independent, so the image looks crisp at any size -- print, screen, or billboard.

Interactive Documentation

We built a full developer documentation page at qrdex.io/developers with everything you need to integrate: endpoint references, parameter tables, example requests and responses in cURL, JavaScript, and Ruby.

Every endpoint section includes a Try It button. Paste your API key at the top of the page and you can make live API calls directly from the docs. It is the fastest way to explore what the API can do without writing any code first.

What's Next

This v1 release covers the core operations, but we have more planned:

  • Webhooks for scan events -- Get notified in real time when a QR code is scanned. Useful for triggering downstream workflows, logging, or alerting.
  • Bulk operations -- Create or update multiple QR codes in a single request for high-volume use cases.
  • Scan analytics endpoint -- Query scan data programmatically: counts over time, geographic breakdown, and device information.

We are building based on what you need, so if there is a feature or endpoint you want to see, let us know.

Start Building

The API is available now on the Growth plan ($199/year), which was designed to make programmatic access affordable. The Plus ($499/year) and Pro ($999/year) plans include API access as well, with higher QR code limits.

We built this API to get out of your way and let you ship. We hope it does exactly that.

Luc Castera

Back to Blogs