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"}'

SnapQR hakkında

Ücretsiz bir REST API ile QR kodu ve kısa bağlantı oluşturmayı otomatikleştirin: dinamik kodlar, toplu oluşturma, analiz dışa aktarma, UTM etiketleme ve özel alan adları. API anahtarı gerekmez — dakikalar içinde entegre etmeye başlayın.

Sık sorulan sorular

SnapQR gerçekten ücretsiz mi? İşin püf noktası ne?

Evet — QR kodları, dinamik kodlar, kısa bağlantılar ve analiz oluşturmak %100 ücretsizdir ve hesap gerektirmez. Filigran yoktur ve kodların süresi dolmaz.

Statik ve dinamik QR kodu arasındaki fark nedir?

Statik bir QR kodu içeriğinizi doğrudan desende kodlar ve asla değiştirilemez. Dinamik bir QR kodu, kontrol ettiğiniz kısa bir yönlendirme URL'sini kodlar; böylece baskıdan sonra nereye yönlendirdiğini değiştirebilir ve her taramayı izleyebilirsiniz.

QR kodlarımın süresi doluyor mu?

Hayır. Statik kodlar tasarımı gereği asla çalışmayı durdurmaz ve dinamik kodlar ücretsiz olarak aktif kalır.

Bir QR kodunu baskıdan sonra nasıl düzenlerim?

Dinamik bir kod oluşturduğunuzda özel bir yönetim URL'si alırsınız. Onu açın, yeni hedefi girin ve kaydedin — basılı her kopya anında yeni sayfaya yönlendirir.

QR koduma logomu ekleyebilir miyim?

Evet. Tasarım panelinde herhangi bir görsel yükleyin — kod hâlâ güvenilir şekilde taranabilsin diye yüksek hata düzeltmeyle ortaya yerleştirilir. Logo tamamen tarayıcınızda işlenir.

Hangi analizleri alıyorum?

Her kod için: toplam tarama, benzersiz ziyaretçi, zaman içinde taramalar, cihaz türü, işletim sistemi, tarayıcı, ülke, şehir ve yönlendiren — CSV dışa aktarmayla. IP adresleri asla saklanmaz.

Hangi dosya biçimlerini indirebilirim?

4096 px'ye kadar PNG (300 DPI'da yaklaşık 13 inç) ve sonsuz ölçeklenebilir SVG vektör — ikisi de profesyonel baskı için uygundur.

Kısa bağlantılar için kendi alan adımı kullanabilir miyim?

Evet — bir CNAME'yi snapqr.link'e yönlendirin ve alan adını API'miz üzerinden kaydedin. HTTPS sertifikaları otomatik olarak verilir.