Feature
SMLLR API: Scan Analytics, Programmatically.
A read-only REST API for pulling SMLLR scan, campaign, and client analytics into your own systems — full details on what it does and doesn't cover.
A Reporting API, Not a Generation API
The SMLLR REST API (Premium plan) is read-only: it returns scan, campaign, and client analytics as JSON. It does not create or edit QR codes — QR code creation and destination-URL changes happen through the SMLLR dashboard only. This is a deliberate, upfront distinction worth knowing before evaluating SMLLR for an integration that needs programmatic QR generation.
- GET /summary — account-wide scan totals for a period
- GET /qrs and GET /qr/:id — list your QR codes, or pull full analytics for one
- GET /campaigns and GET /campaign/:id — campaign-level aggregated analytics
- GET /clients and GET /client/:id — for agencies, per-client aggregated analytics
- A single static API key per account, sent as an x-api-key header or Bearer token
- 60 requests per minute per API key, a flat limit that doesn't scale with plan tier
What's Not in the API
To be direct about the gaps: there is no endpoint to create a QR code or update its destination URL — that's dashboard-only. There is no bulk/batch creation endpoint on any current self-serve plan. If your integration needs to generate QR codes programmatically, the API doesn't cover that today — but if you need to react to a scan the instant it happens instead of polling, see Webhooks below.
What the API Is Actually Good For
Despite those gaps, the reporting API covers a genuinely useful set of integrations: feeding QR, campaign, and client scan data into an internal BI tool or a Python/Pandas pipeline, building a lightweight custom client-reporting view for an agency, or scheduling a periodic export into a data warehouse. If the need is "get scan data out of SMLLR programmatically," it fits well.
Authentication and Rate Limits
Authentication is a single static API key (format smllr_live_...) generated from Settings → API — Premium plan only, no OAuth flow and no token expiry to manage. The rate limit is a flat 60 requests per minute per key, tracked per key rather than per IP or account, so it isn't shared with unrelated integrations running from the same network.
Connect via MCP
The same reporting API is also available as an MCP (Model Context Protocol) server — @smllr/mcp-server — so Claude or any other MCP-compatible AI agent can query your scan, campaign, and client analytics directly, in plain language, using the same API key. It wraps the exact 7 endpoints above one-to-one: same read-only scope, same Premium-plan requirement, same 60-requests-per-minute limit, and it never returns Lead Hub contact data. Setup is one command: claude mcp add smllr --env SMLLR_API_KEY=your_key -- npx -y @smllr/mcp-server. Full instructions are in the API docs and the Help Centre.
Need Real-Time Instead of Polling? Use Webhooks
The REST API and MCP server are both pull-based — you ask, they answer. If you need to react to a scan the instant it happens instead of polling on a schedule, SMLLR also has outbound webhooks (Pro plan and above): register a URL and SMLLR POSTs a signed JSON payload to it on every QR scan. See the Webhooks feature page for the full payload shape and signature verification.
Related Reading
Frequently Asked Questions
Does SMLLR offer a REST API?
Yes, on the Premium plan — but it's a read-only reporting API. It returns scan, campaign, and client analytics as JSON; it does not create or edit QR codes.
Does SMLLR have an MCP server for AI agents?
Yes — @smllr/mcp-server wraps the same read-only reporting API as tools Claude and other MCP-compatible agents can call directly. Same Premium-plan requirement, same 60-req/min limit, and it never exposes Lead Hub contact data — only aggregated scan, campaign, and client analytics.
Can I create or generate QR codes using the API?
No. QR code creation and destination-URL editing happen through the SMLLR dashboard only. The API is for pulling analytics data out, not creating codes.
Does the API support webhooks for real-time scan events?
The REST API and MCP server are both pull-based (poll on a schedule). For real-time push, SMLLR has a separate outbound webhooks feature (Pro plan and above) — see the Webhooks feature page.
How do I authenticate with the SMLLR API?
A single static API key, generated from Settings → API. Send it as an x-api-key header or as a Bearer token in the Authorization header.
What is the rate limit for the API?
60 requests per minute per API key — a flat limit that doesn't increase on higher plans, tracked per key rather than shared across your account or network.
Can I bulk-create QR codes via the API?
Not on any current self-serve plan. There is no bulk/batch QR-creation endpoint for Starter, Basic, Pro, or Premium customers today.
Is API access available on all plans?
No. API access is available only on the Premium plan; lower tiers are limited to the dashboard interface.
What can I actually build with this API?
Anything that needs scan, campaign, or client analytics pulled out of SMLLR programmatically — a BI dashboard, a Python data pipeline, a custom client-reporting view, or a scheduled export into a data warehouse.
Unlock Every Feature
Start free with 3 static QR codes. Upgrade anytime to unlock dynamic QR codes, more codes, and scan analytics.