logo

Automate CodeQR: API, MCP, Zapier, Make, n8n and webhooks

Which route automates short links and QR codes best — REST API, MCP for AI assistants, Zapier, Make, n8n, IFTTT or webhooks — and what each plan includes.

Avatar for undefined
CodeQR Team
Content Team

Everything you do in the CodeQR dashboard — create a short link, generate a dynamic QR code, change a destination, read scans and clicks — can also be done by a program, a no-code scenario or an AI assistant. This page tells you which door to use for which job, what your plan includes, and where the reference material lives.

Availability

  • Plan: the REST API, the MCP server and the Zapier, Make, IFTTT and n8n integrations are available on every plan, including Free. Custom webhooks need Pro or above; webhooks on individual clicks and scans need Business or above. Rate limits and quotas depend on the plan (table below).
  • Where: API keys in SettingsAPI Keys; integrations in SettingsIntegrations; webhooks in SettingsWebhooks; the MCP server at https://mcp.codeqr.io/mcp; the endpoint reference at docs.codeqr.io.

Before you start

  • One API key belongs to one workspace. If you manage several workspaces, create a key in each.
  • Short links and QR codes created by any of these routes appear in the dashboard like any other, count towards the same plan quotas, and record clicks and scans the same way.
  • Nothing here changes how a link redirects: automation only creates, edits, reads or deletes what you could create by hand.

Which route fits your job

What each plan includes

  • API access: every plan. Requests per minute per key — Free 60, Starter 100, Pro 500, Business 1,000, Scale 10,000. Above the limit the API answers 429 Too many requests. until the minute rolls over.
  • Links, QR codes, tracked clicks: the same monthly quotas as the dashboard; a link created by Zapier is one link.
  • Zapier, Make, IFTTT, n8n, Pipedream, Integrately: no plan requirement to connect. Their "new link" and "webhook" triggers follow the webhook rules below.
  • MCP server: every plan; the assistant can do what the signed-in user can do in that workspace.
  • Webhooks to your own URL: Pro and above for created/updated/deleted events on links, QR codes and pages, and for leads and sales. Link clicked, QR Code scanned and Page visited events, and attaching a webhook to specific links or codes, need Business or above.
  • Native CRM handoffs (RD Station, Kommo, HubSpot): Starter and above.

Rate limits and quotas are enforced per key and per workspace, not per user.

Vocabulary

  • API key — the codeqr_… secret you paste in a header. The dashboard also calls the page Project API Keys.
  • Workspace — the unit that owns links, QR codes, domains, keys and webhooks. Some screens and error messages call it project; it is the same thing.
  • Webhook — an HTTP POST CodeQR sends to your URL when an event happens. Not to be confused with the URL of a link.
  • BulkPOST /links/bulk and POST /qrcodes/bulk, up to 100 items per request.
  • MCP — Model Context Protocol, the way AI assistants call CodeQR as a set of tools.

Verify it works

Whatever route you pick, the proof is the same: the new link or QR code shows up in Links or QR Codes with the destination you sent, and after you open the short link once, Analytics shows the click within two to three minutes.

Troubleshooting

I cannot create a webhook, but I can create an API key

That is the role model, not a bug: any workspace member can create, edit and delete API keys; only the workspace owner can create, edit or delete webhooks and OAuth apps. Members can still read the webhook list and its logs. The pages live under Developer Settings in the settings sidebar — API Keys, OAuth Apps, Webhooks.

The integration page says COMING SOON

Cards marked COMING SOON (Albato, HubSpot at the time of writing) cannot be enabled yet. Use a generic webhook or the HTTP module of your automation tool in the meantime.

I created a key but the tool asks for a "workspace ID"

CodeQR keys are bound to a workspace, so nothing else identifies it. If a form insists on an ID, use the workspace id returned by GET /projects — but the key alone is enough for every endpoint.

Related articles