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

ធ្វើស្វ័យប្រវត្តិកម្មការបង្កើតកូដ QR និងតំណខ្លីជាមួយ REST API ឥតគិតថ្លៃ៖ កូដថាមវន្ត ការបង្កើតច្រើនក្នុងពេលតែមួយ ការនាំចេញការវិភាគ ការដាក់ស្លាក UTM និងដែនតាមបំណង។ មិនតម្រូវឱ្យមានលេខសោ API — ចាប់ផ្តើមរួមបញ្ចូលក្នុងរយៈពេលប៉ុន្មាននាទី។

សំណួរដែលសួរញឹកញាប់

តើ SnapQR ឥតគិតថ្លៃពិតមែនទេ? តើមានល្បិចអ្វីទេ?

ពិតមែន — ការបង្កើតកូដ QR កូដថាមវន្ត តំណខ្លី និងការវិភាគ គឺឥតគិតថ្លៃ ១០០% ដោយមិនតម្រូវឱ្យមានគណនី។ គ្មានស្លាកទឹក ហើយកូដមិនផុតកំណត់ទេ។

តើអ្វីជាភាពខុសគ្នារវាងកូដ QR ឋិតិវន្ត និងកូដ QR ថាមវន្ត?

កូដ QR ឋិតិវន្តអ៊ិនកូដមាតិការបស់អ្នកដោយផ្ទាល់ក្នុងលំនាំ ហើយមិនអាចផ្លាស់ប្តូរបានឡើយ។ កូដ QR ថាមវន្តអ៊ិនកូដ URL បញ្ជូនបន្តខ្លីដែលអ្នកគ្រប់គ្រង ដូច្នេះអ្នកអាចផ្លាស់ប្តូរកន្លែងដែលវាចង្អុលទៅក្រោយបោះពុម្ព និងតាមដានការស្កេនរាល់ដង។

តើកូដ QR របស់ខ្ញុំផុតកំណត់ទេ?

ទេ។ កូដឋិតិវន្តមិនឈប់ដំណើរការតាមការរចនា ហើយកូដថាមវន្តនៅសកម្មដោយឥតគិតថ្លៃ។

តើខ្ញុំកែប្រែកូដ QR ក្រោយបោះពុម្ពដោយរបៀបណា?

នៅពេលអ្នកបង្កើតកូដថាមវន្ត អ្នកទទួលបាន URL គ្រប់គ្រងឯកជន។ បើកវា បញ្ចូលគោលដៅថ្មី ហើយរក្សាទុក — រាល់ច្បាប់ចម្លងដែលបានបោះពុម្ពនឹងចង្អុលទៅទំព័រថ្មីភ្លាមៗ។

តើខ្ញុំអាចបន្ថែមឡូហ្គោរបស់ខ្ញុំទៅកូដ QR បានទេ?

បាន។ ផ្ទុករូបភាពណាមួយឡើងក្នុងផ្ទាំងរចនា — វាត្រូវបានបង្កប់នៅកណ្តាលជាមួយការកែកំហុសខ្ពស់ ដូច្នេះកូដនៅតែស្កេនបានយ៉ាងគួរឱ្យទុកចិត្ត។ ឡូហ្គោត្រូវបានដំណើរការទាំងស្រុងក្នុងកម្មវិធីរុករករបស់អ្នក។

តើខ្ញុំទទួលបានការវិភាគអ្វីខ្លះ?

ក្នុងមួយកូដ៖ ការស្កេនសរុប អ្នកទស្សនាតែមួយគត់ ការស្កេនតាមពេលវេលា ប្រភេទឧបករណ៍ ប្រព័ន្ធប្រតិបត្តិការ កម្មវិធីរុករក ប្រទេស ទីក្រុង និងអ្នកបញ្ជូន — ជាមួយការនាំចេញ CSV។ អាសយដ្ឋាន IP មិនត្រូវបានរក្សាទុកឡើយ។

តើខ្ញុំអាចទាញយកទ្រង់ទ្រាយឯកសារអ្វីខ្លះ?

PNG រហូតដល់ 4096 px (ប្រហែល ១៣ អ៊ិញនៅ 300 DPI) និង SVG វ៉ិចទ័រដែលអាចពង្រីកបានគ្មានដែនកំណត់ — ទាំងពីរសមរម្យសម្រាប់ការបោះពុម្ពប្រកបដោយវិជ្ជាជីវៈ។

តើខ្ញុំអាចប្រើដែនផ្ទាល់ខ្លួនរបស់ខ្ញុំសម្រាប់តំណខ្លីបានទេ?

បាន — ចង្អុល CNAME ទៅ snapqr.link ហើយចុះឈ្មោះដែនតាមរយៈ API របស់យើង។ វិញ្ញាបនបត្រ HTTPS ត្រូវបានចេញដោយស្វ័យប្រវត្តិ។