SnapQR API

Create and manage QR codes and short links programmatically. No API key, no signup — the token returned at creation is the credential for that link. Base URL: https://snapqr.link/api

Create a link / dynamic QR

POST /api/links
Content-Type: application/json

{
  "kind": "url",                  // url | appstore | vcard | page
  "target": "https://example.com/menu",
  "alias": "summer-menu",         // optional custom code
  "title": "Summer menu",         // optional
  "campaign": "summer",           // optional grouping tag
  "utm": {                        // optional, auto-appended on redirect
    "utm_source": "poster", "utm_medium": "qr", "utm_campaign": "summer2026"
  }
}

Response 201:

{
  "code": "summer-menu",
  "short_url": "https://snapqr.link/summer-menu",
  "qr_png": "https://snapqr.link/summer-menu/qr.png",
  "qr_svg": "https://snapqr.link/summer-menu/qr.svg",
  "manage_url": "https://snapqr.link/m/<token>",
  "token": "<token>"            // keep secret — grants edit + analytics access
}

For kind: "appstore" send ios, android, fallback URLs. For kind: "vcard" send firstName, lastName, org, jobTitle, phone, email, website. For kind: "page" send headline, description and a links array of {label, url}.

Manage & analytics

GET    /api/manage/{token}            # link details + totals
PUT    /api/manage/{token}            # update target/payload/utm/active/title
DELETE /api/manage/{token}            # delete link + analytics
GET    /api/manage/{token}/stats?days=30
GET    /api/manage/{token}/scans.csv  # raw scan export

/stats returns totals, unique visitors, a per-day series and top-10 breakdowns for device, OS, browser, country, city, referrer and QR-vs-link source.

Bulk creation

POST /api/bulk            # JSON array of link objects, or {"csv": "alias,target,title,campaign\n..."}
POST /api/bulk?format=csv  # same, responds with a CSV of created codes

Max 500 rows per request.

QR images

GET /api/qr?data=hello&size=1024&fg=%23000000&bg=%23ffffff&format=png|svg&ecl=M
GET /{code}/qr.png   GET /{code}/qr.svg    # QR for an existing short code

Custom domains

POST /api/domains  {"domain": "qr.yourbrand.com"}

Then point a CNAME for that hostname at snapqr.link. TLS certificates are issued automatically on first visit, and your short codes resolve on your own domain.

Limits

Fair-use rate limits apply per IP (60 links/hour, 10 bulk requests/hour, 300 QR images/hour). Destinations must be public http(s) URLs. Codes serving malware or phishing are removed.

Example: curl

curl -X POST https://snapqr.link/api/links \
  -H "Content-Type: application/json" \
  -d '{"kind":"url","target":"https://example.com","alias":"demo-123"}'

À propos de SnapQR

Automatisez la création de codes QR et de liens courts avec une API REST gratuite : codes dynamiques, génération en masse, export d'analyses, balisage UTM et domaines personnalisés. Sans clé API requise — commencez à intégrer en quelques minutes.

Questions fréquentes

SnapQR est-il vraiment gratuit ? Où est le piège ?

Oui — créer des codes QR, des codes dynamiques, des liens courts et des analyses est 100% gratuit sans compte requis. Il n'y a pas de filigrane et les codes n'expirent pas.

Quelle est la différence entre un code QR statique et un code QR dynamique ?

Un code QR statique encode votre contenu directement dans le motif et ne peut jamais être modifié. Un code QR dynamique encode une URL de redirection courte que vous contrôlez, ce qui vous permet de changer sa destination après impression et de suivre chaque scan.

Mes codes QR expirent-ils ?

Non. Les codes statiques ne cessent jamais de fonctionner par conception, et les codes dynamiques restent actifs gratuitement.

Comment modifier un code QR après impression ?

Lorsque vous créez un code dynamique, vous obtenez une URL de gestion privée. Ouvrez-la, saisissez la nouvelle destination et enregistrez — chaque copie imprimée pointe instantanément vers la nouvelle page.

Puis-je ajouter mon logo à un code QR ?

Oui. Téléchargez n'importe quelle image dans le panneau Design — elle est intégrée au centre avec une correction d'erreur élevée pour que le code se scanne toujours de manière fiable. Le logo est traité entièrement dans votre navigateur.

Quelles analyses est-ce que j'obtiens ?

Par code : total des scans, visiteurs uniques, scans au fil du temps, type d'appareil, système d'exploitation, navigateur, pays, ville et référent — avec export CSV. Les adresses IP ne sont jamais stockées.

Quels formats de fichier puis-je télécharger ?

PNG jusqu'à 4096 px (environ 33 cm à 300 DPI) et vecteur SVG infiniment redimensionnable — les deux conviennent à l'impression professionnelle.

Puis-je utiliser mon propre domaine pour les liens courts ?

Oui — faites pointer un CNAME vers snapqr.link et enregistrez le domaine via notre API. Les certificats HTTPS sont délivrés automatiquement.