Zapier
Connect Looma to Zapier and every new lead your widgets collect starts a Zap — it can land in Google Sheets, a Slack channel, a Telegram bot, an email, or any of the thousands of services Zapier supports. No code and no copying of URLs.
The connection is one-way: Zapier receives leads from Looma and never writes anything back.
What it does
The Looma app in Zapier has one trigger, New Lead. It fires when Looma collects a lead from a chat, the search widget, a widget form, a messaging channel or a call. Leads that already exist are not sent again, and changes to a lead (a new status, a comment) do not trigger it.
Contacts go to Zapier
A lead carries the visitor's name, phone and email. Once you turn a Zap on, that data is passed to Zapier and on to every service your Zap uses. Make sure this fits your privacy policy.
Before you start
- The Owner or Administrator role in Looma: only they can open Integrations and create API keys.
- A plan with API access. It is included in every paid plan (Starter, Growth, Business). Without it, Zapier shows “API access is not included in your Looma plan” when you connect.
- A Zapier account. The free one is enough.
Step 1. Create an API key
- Open Integrations → API and click Create API Key.
- Name it, for example “Zapier”.
- Tick exactly three scopes:
leads:read,sites:readandwebhooks:manage. - Copy the key in the API Key Created window — it is shown only once.
Do not leave the scopes empty
A key with no scopes gets full access to your account. Zapier needs only the three above, so give it only those.
If you limit the key to specific sites, the Zap only sees leads of those sites.
Step 2. Connect Looma in Zapier
For now the Looma app is available by a private link, not in the public Zapier catalogue. The link to the Looma app in Zapier is on the Integrations page in Looma, on the Zapier card.
- Open the link and accept the invitation in Zapier.
- Create a Zap and pick Looma as the trigger app.
- Choose the trigger New Lead and click Sign in.
- Paste the API key. Zapier checks it right away: a wrong key, a missing scope or a plan without API access is reported in plain words.
Step 3. Set up the trigger
- Site is optional. Pick one to receive only its leads; leave it empty to receive leads from all sites the key can see.
- Zapier shows a sample lead taken from your latest real leads. If you have none yet, it shows an example.
- Map the fields to the next step and turn the Zap on.
Turning the Zap on creates a webhook in Looma. You can see it in Integrations → API → Webhooks, marked with a Zapier badge.
Lead fields
Every field is always present: when there is no value, text fields are empty, lists are empty and custom_fields is an empty object.
| Field | What it contains |
|---|---|
id | Lead number (also lead_id, the same value) |
created_at | Creation time, ISO 8601 |
status | Lead status in Looma |
name, phone, email, address | Contacts. The phone is exactly as the visitor typed it, without a country code |
lead_text | What the visitor wanted |
custom_fields | Your own collected fields by the name you gave them in Looma |
products | Products of the lead (up to 20): ID, title, price, currency, link, image |
products_text | The same products as ready text, one line per product |
site_id, site_name, site_domain | The site |
source | Where the lead came from: widget, Telegram, Viber, Facebook, Instagram… |
channel_id, channel_name | The messaging channel, if any |
utm_source, utm_medium, utm_campaign, landing_page, referrer | Where the visitor came from |
lead_url | Link to the lead in the Looma dashboard |
session_id, visitor_id | Chat session and visitor |
Use products_text when the next step wants one text cell; use the product fields when you need links or prices separately.
Turning it off and removing
- Switching the Zap off removes its webhook in Looma by itself. Turning it on again creates a new one.
- Deleting a Zap does the same. If Zapier cannot tell Looma, Looma finds out at the next lead (Zapier answers that the hook is gone) and deletes the webhook.
Do not delete the webhook by hand
If you delete the Zapier webhook in Integrations → API → Webhooks, the Zap stays “on” but stops receiving leads, and nothing warns you. Turn the Zap off and on again to create the webhook anew.
Limits
- Up to 20 webhooks per account, all kinds together. When the limit is reached, Zapier says so when you turn a Zap on — remove unused webhooks in Looma first.
- A webhook that fails ten deliveries in a row is switched off by Looma; turn it on again in the Webhooks list or switch the Zap off and on.
Troubleshooting
Zapier says the key is invalid. Check that you copied the whole key and that it is not revoked. Revoking a key takes effect within about 5 more minutes — the API keeps a revoked key in its cache for that long.
“The API key lacks a required scope”. The key needs leads:read, sites:read and webhooks:manage. Edit the key under Integrations → API or create a new one.
“API access is not included in your Looma plan”. Choose a paid plan in Billing.
“Webhook limit reached”. Delete unused webhooks in Integrations → API → Webhooks.
The Zap is on but no leads arrive. Check that the webhook with the Zapier badge still exists in Looma and that the Zap's site is the one collecting leads.
The site list is empty. The key needs the sites:read scope.
A field was filled in the sample but is empty in real runs. The New Lead trigger fires the moment the lead appears — usually as soon as the visitor leaves the first contact (for example, a phone). If they later add an email or more products in the same chat, Looma updates the lead, but that update is not sent to the Zap. The sample in the Zap editor, on the other hand, comes from leads that have already been completed, so it can show fields a fresh lead does not have yet. Mark such fields as optional in the next Zap step, or add a Filter step (for example, «Email exists») where an action needs them.
Related
- Leads — where leads come from
- Integrations — API keys and webhooks
- KeyCRM, SalesDrive and KeepinCRM — direct CRM connections
- Webhooks — the lead payload for your own receivers
- Billing — plans and subscription status

