Zapier and Make webhook recipe
Last updated: 19 October 2026
Send every queue event to Google Sheets, a CRM or your team's chat without writing code. QR Wait posts each event to a web address; Zapier and Make give you one and pass the event on.
1. What you need
A QR Wait account you own (managers and attendants don't see the integrations), a Zapier or Make account, and the admin page's Integrations screen open in another tab.
2. Zapier
- In Zapier, create a Zap with Webhooks by Zapier as the trigger and Catch Hook as its event. Copy the webhook URL Zapier shows.
- In QR Wait, under Integrations, paste it into Endpoint address (https), tick the events you want and press Add webhook. Keep the signing secret it shows once.
- Join your queue once from a phone, or add someone in the attendant panel, so that a real
ticket.joinedevent arrives. Send test event only sends apingwithout ticket fields: it shows that the address answers. - Back in Zapier, test the trigger and pick that event. Add an action, for example Google Sheets › Create Spreadsheet Row, and map the fields:
type,queue.name,ticket.no,ticket.size,ticket.joined_at. - Publish the Zap. From now on every event adds a row.
3. Make
- In Make, create a scenario whose first module is Webhooks › Custom webhook. Add a webhook and copy its address.
- Paste it into QR Wait's Integrations as above and press Add webhook.
- Make waits to learn the data's structure: join your queue once or add someone in the attendant panel.
- Add the next module, for example Google Sheets › Add a Row or a message to your chat, map the fields and switch the scenario on.
4. What arrives
Each event is a JSON body like this one. Tick only the events you need in QR Wait, or filter on type in Zapier or Make.
{
"id": "d_3f9a1c0b7e2d4a61",
"type": "ticket.joined",
"created": "2026-10-10T09:12:30.010Z",
"account": "antalyabb",
"queue": { "id": "a1b2c3d4e5", "name": "Konyaaltı Beach", "slug": "konyaalti" },
"ticket": { "no": 42, "size": 2, "source": "qr", "joined_at": "2026-10-10T09:12:30.004Z" }
}Names, join form answers and booking codes are sent only if you tick Include names, join form answers and booking codes for that address. Without it, events carry numbers and times only.
A delivery that fails is retried for about 9 hours with the same id. Check it before adding a row (a lookup step) if a duplicate would matter.
5. The other way: add people from Zapier or Make
To let another tool put people in a queue (a website form, a booking tool), create a key under API keys with Read and write access and send a request from Webhooks by Zapier › POST or Make's HTTP › Make a request:
POST https://qrwait.app/api/v1/queues/<queue id>/tickets
Authorization: Bearer qrw_…
Content-Type: application/json
{ "size": 2, "note": "Website" }The answer is the new number, such as { "no": 43 }. Queue ids come from GET /api/v1/queues. Calling the next group, marking someone served and every field are in the API reference (in English).
6. Keep it safe
- The address Zapier or Make gives you is enough to send data into your Zap or scenario: don't share it.
- Zapier and Make don't check QR Wait's signature on their own. If the receiving side must be sure an event came from QR Wait, verify the
X-QRWait-Signatureheader as the API reference shows, for example in a code step. - Give a key only the access it needs, and revoke it on the Integrations screen once it is no longer used; the screen shows when each key was last used.