Yirlo integrations: webhooks, booking links and the API
By the Yirlo team · Product details checked against the app
Yirlo integrations come in three live forms: webhooks that push replies to the tools you already use, booking links that Yirlo offers to interested leads, and a public API for everything else. This page explains what each one is for, how to set it up, and where the limits are today. Each of them takes a few minutes to configure.
Webhooks: send replies to any tool
A webhook pushes a message to an address of your choosing each time a certain event occurs in your account. To set one up, go to Settings > Integrations in the app and enter the address. Up to 20 webhook URLs are allowed, and all of them need https.
Two events are available to subscribe to. reply.received fires whenever a lead sends back a real answer; out-of-office autoreplies, unsubscribe requests and plain declines do not trigger it. hot_lead.received fires once Yirlo judges a reply to be a hot lead.
Typical uses are a Slack message when a hot lead arrives, a row in a spreadsheet for every real reply, a task for your sales rep, or a text alert to the founder who closes deals. One URL can listen for both events, or you can point different URLs at different tools. Because the payload carries the campaign name, you can route replies from one audience to one person and replies from another audience to someone else.
What a webhook delivery contains
Yirlo delivers each notification as a POST request with a JSON body. Three keys sit at the top level: event, whose value is always reply.received; occurred_at, which gives the time in ISO form; and data. Inside data you get the sender's email address, first name, last name and company, plus the campaign name and the text of their answer in the reply field. Anything beyond 3,000 characters in that answer is cut off.
Every delivery carries a signature. Yirlo builds an HMAC-SHA256 signature from the payload and the webhook's own secret, the string that begins with whsec_, and places it in a header named X-Yirlo-Signature. On your server, recompute the same HMAC from the unmodified body and that secret, then check it against the header value. Reject the request if the two differ. That stops someone who learns your URL from pushing forged leads into your pipeline.
Your endpoint has 5 seconds to respond, so return an answer right away and do any heavy processing after that. Beside every webhook, the app displays how the latest attempt went, so you can tell at a glance whether a URL is getting events or erroring.
Zapier, n8n and Make through webhooks
None of Zapier, n8n or Make has a Yirlo app yet. Each one still works today through its own incoming-webhook trigger, which covers most automations. Build the trigger in that tool, copy the URL it generates, and enter it under Settings > Integrations in Yirlo.
In Zapier, use Webhooks by Zapier and pick the Catch Hook trigger. In n8n, add the Webhook node and use its production URL. In Make, create a Custom webhook module. Send a first event, then map the fields (email, first_name, company, campaign, reply) to whatever the next step needs.
Once the data arrives, the rest is ordinary automation work: add the lead to a table, post the reply text in a team channel, create a follow-up task, or start your own internal checklist for onboarding a new prospect. The next step is up to you. Yirlo's part is delivering the event.
- Zapier: Webhooks by Zapier, Catch Hook trigger
- n8n: the Webhook node
- Make: Custom webhook
Booking links from Google Calendar, Calendly, HubSpot Meetings or Cal.com, where warm leads choose a meeting time
Under Email sequence > Replies, the "Interested replies get" setting decides where Yirlo steers a conversation once a lead shows interest. You can pick a different value for an individual campaign. Four destinations are on offer: sending a resource, starting a trial, a demo, or a call on your calendar.
Choose a booked call as the goal and give Yirlo a booking link starting with https. Calendly, Cal.com, a Google Calendar appointment page or a HubSpot Meetings page all do the job, since only a URL is needed. Yirlo's drafted replies to interested leads include that link, and they can be sent automatically if you enable it.
Yirlo sends the link, and the lead picks a slot on your scheduling page the same way any visitor would. Your scheduling tool keeps control of your calendar, including availability, meeting length, buffers and reminders. Different campaigns can use different links, so a campaign aimed at agency owners can book into one person's calendar while a campaign aimed at operations managers books into another's.
The public API
All endpoints live under https://yirlo.com/public/api/v1. Send the X-API-Key header with your key, or use a Bearer token in the Authorization header. The key page is https://yirlo.com/app/api-keys, where you can create one. Complete docs, with an OpenAPI spec, are at https://yirlo.com/api-docs. Errors come back as JSON in the form {"detail": "..."}.
GET /me tells you who owns the key being used. The billing endpoints return your balance, daily spend and recent activity. Per project, you can read its details and change the budget per day, the cap per month, the name emails are sent under, your custom email text and the autopilot configuration. You can also pull analytics and the project inbox.
Campaign endpoints cover listing, creating, fetching and editing, plus a preview of the first email. A campaign's lead list can be approved, and a campaign can be started, stopped, archived, restored from the archive and given a daily budget. Analytics, send status and the list of contacted leads are readable too. For the inbox, you can browse conversations, open a thread, post a response, flag a thread as replied, view or write the lead's note, and change the lead's status. Beyond that, the API offers a hot leads endpoint, suppression lists covering people and companies across every project, webhook management, tasks and feedback.
Begin on yirlo.com by entering your website address, and make your first payment on the same site. Extra projects can be created there too, or programmatically with the MCP server, the SDK or direct API calls. After a project exists, every task inside it can be done through the API.
Which integration is for what
The right choice depends on what you want to happen outside Yirlo.
- Webhooks: get told the moment a real reply or hot lead arrives, in the tool where your team already works.
- Zapier, n8n or Make: turn those events into multi-step automations without writing a server.
- Booking links: give interested leads a way to book a call in your existing scheduling tool.
- Public API: build dashboards, pull campaign numbers into reports, answer threads from your own software, or manage campaigns and suppression lists from a script.
Coming soon
A few capabilities are coming soon, and it helps to know that before you plan. Importing your own lead list and reaching more than one contact per company are both on the way, along with sending from your own domains or mailboxes. For now, build around what the API offers today.
Replies reach another system through a webhook or the API, which works with any CRM. The field mapping happens on your side or in your automation tool.
Questions
How many webhooks can I add?
Up to 20 webhook URLs per account, added in Settings > Integrations. Every URL must use https.
Which events can a webhook send?
There are two events. reply.received is sent for a genuine reply from a lead, excluding out-of-office messages, unsubscribes and refusals. hot_lead.received is sent when Yirlo rates a reply as a hot lead.
How do I verify that a webhook really came from Yirlo?
Every delivery carries a signature: a keyed hash (HMAC with SHA-256) of the body, made with the secret belonging to that webhook, which begins with whsec_. It arrives in the X-Yirlo-Signature header. To verify it, hash the unmodified raw body with the same secret on your server and check that the two values match.
Is there a Yirlo app in Zapier, n8n or Make?
Each tool receives Yirlo's events through its own entry point: Zapier uses Webhooks by Zapier with a Catch Hook trigger, n8n uses its Webhook node, and Make uses a custom webhook. Paste the URL that trigger gives you into Yirlo.
How can I check whether my webhook is working?
The app shows the last delivery status for each webhook. Your endpoint has 5 seconds to respond, so acknowledge the request quickly and process it afterward.
Which booking links can I use?
Any https booking link. Calendly, Cal.com, Google Calendar appointment schedules and HubSpot Meetings pages all work. Yirlo's drafted answers to interested replies offer the link, and they can be sent automatically.
Does Yirlo connect to my calendar?
Nothing changes about how you book meetings. Once a lead shows interest, the response Yirlo drafts carries a link to your own scheduling page, be it Calendly, Google Calendar, HubSpot Meetings or Cal.com. The person picks a time there, and the meeting lands on your calendar the way any other would.
Where do I get an API key?
Generate a key for your account on the page at https://yirlo.com/app/api-keys. To authenticate a request, put the key in an Authorization header as a bearer token, or use a header named X-API-Key instead. Complete documentation and the OpenAPI spec live at https://yirlo.com/api-docs.
Can I start a new project through the API?
Begin on yirlo.com by entering your website address, and Yirlo builds the initial project from it. Extra projects can be created on the site again, or through the API, the MCP server or the SDK. After a project is live, the API exposes its campaigns, inbox, hot leads, suppression lists, webhooks and billing details.
Does Yirlo sync with a CRM?
Yes, through webhooks and the API. You can send replies and hot leads to any tool that accepts a webhook, or read and write the inbox through the API, so HubSpot, Salesforce, Pipedrive and other CRMs all work.