Send DM Replies and Flow Data to Zapier
The other LinktoDM triggers fire when something about the contact changes — a tag, an email, a custom field. Send to Zapier Event fires when a flow says so: drop a Send to Zapier action into any Action node, and every contact who reaches that step sends one event to Zapier.
That makes it the trigger for anything that isn’t a tag, an email or a field — a booking request, a finished quiz, a reply to an open question — and it’s the only way to send a DM reply to Zapier without saving it on the contact first.
In the flow
Section titled “In the flow”Pick Send to Zapier from the action list and fill in two things.
Event name is the label your Zap listens for, such as bookslot or
quiz_finished. Name it after what happened, not after the Zap, since one
event can feed several Zaps.
Extra data is optional. Each row is a field name and a value, and the value can be fixed text or a variable:
| Variable | Sends |
|---|---|
{{last_input}} |
Whatever the contact last typed in the DM |
{{email}}, {{phone}}, {{username}} |
The contact’s saved details |
{{tags}} |
The contact’s tags, comma separated |
{{user.<slug>}} |
Any custom field, e.g. {{user.plan_tier}} |
The contact’s details are always sent, so you only need Extra data for values that don’t already live on the contact.
In Zapier
Section titled “In Zapier”Choose LinktoDM → Send to Zapier Event as the trigger. On the Configure tab, type the Event Name exactly as you wrote it in the flow. Leave it blank and the Zap gets every Send to Zapier event from every flow, which suits a single catch-all log but not much else.
Load a real record before you map anything
Section titled “Load a real record before you map anything”Zapier builds the list of fields you can map from the test record you pick on
the trigger’s Test tab. Until a real event exists, it shows a placeholder
contact — Priya Sharma, priyabakes, a BK-1049 booking ref — and that
placeholder carries no custom fields and none of your Extra data.
- Publish the flow, then send yourself the trigger DM from a second account and go through it to the Send to Zapier step.
- In Zapier, open the trigger step → Test → Find new records. Zapier loads up to three of the most recent events.
- Pick the newest one — check it shows your test account’s username — and click Continue with selected record.
If you change the flow later and re-run it, repeat Find new records — the field list doesn’t refresh on its own.
Map the values
Section titled “Map the values”Extra data rows show up under Data, so a row named zap_date
maps as Data Zap Date.
Custom fields travel with every event too, nested under Fields. To pick one, open the field picker in your action step and switch on Turn on enhanced field mappings at the top. The nested fields then appear as Fields › Your Field Name, e.g. Fields › Zap Date.
Example: send a booked slot to Google Sheets
Section titled “Example: send a booked slot to Google Sheets”LinktoDM doesn’t send every incoming message to Zapier. Messages reach Zapier when a flow passes them on, so you choose which answers leave your account. Ask the question, wait for the reply, save it to a custom field, then send it on:
LinktoDM flow: User sends "zap" → Send message "enter your preferred slot" + Collect user info (Any) → Next step → Delay (a few seconds) → Action node: Set custom field (zap_date = {{last_input}}) → Action node: Send to Zapier (event: bookslot)Zapier: bookslot → Create Spreadsheet Row (Username → UserName column, Fields › Zap Date → Slot column)The Set custom field action is what turns the reply into something Zapier
can map. Pick the field, choose Set value, and use {{last_input}} (it
appears as Last Text Input) as the value — if the field doesn’t exist yet,
+ Create new field makes it from the same panel. The
Action node guide covers
the options in full.
Four things decide whether the value actually arrives:
- Collect user info on the question. Add a
Collect user info
block set to Any to the Send message node, and wire its Next step
handle onward, not Then. Without it the flow doesn’t wait, and
{{last_input}}is still the trigger message (zap). An Email or Phone collect field rejects a date with “Invalid information. Please try again.” - A short Delay before Set custom field. Put a
Delay node of a few seconds between Next
step and the Action node. Without it the action can run before the reply
is stored, and
{{last_input}}still holds the previous message. - Save before you send. Set custom field has to run before Send to Zapier, either in an earlier Action node, as above, or above it in the same node. The other way round, the event leaves before the value is saved.
- A fresh test record. After any change, run the flow again and use Find new records in Zapier before mapping.
Prefer not to store the answer on the contact? Skip Set custom field and add
an Extra data row on the Send to Zapier action instead — zap_date =
{{last_input}} — then map Data Zap Date. Storing it is the better
default: the value stays on the contact for later flows, and the
custom field trigger can
pick it up too.