DEV Community

Cover image for Connecting Instagram DMs to 3,000 Apps: InstantDM + Make.com Recipes
sakthivel
sakthivel

Posted on

Connecting Instagram DMs to 3,000 Apps: InstantDM + Make.com Recipes

Every Instagram DM is a lead sitting in a channel you can't easily connect to the rest of your stack. Someone comments "PRICE" on your Reel, InstantDM sends them a DM flow that collects their name and email, and that data sits inside Instagram with no path to your CRM, your email tool, your Slack workspace, or your spreadsheet. You've captured the lead. Now you're manually copying it somewhere useful.

Make.com (formerly Integromat) fixes this. It's a visual automation platform that connects over 3,000 apps through webhooks and API calls. And InstantDM — the Instagram DM automation tool we use — has a native Make.com integration with webhook support that fires structured data the moment a DM flow completes in 2026.

This post walks through how to connect InstantDM to Make.com, what the webhook payload actually looks like, and five recipes that turn Instagram DM leads into data your entire team can act on.

Why Connect Instagram DMs to External Tools?

Instagram DMs are a black hole for most businesses. Leads come in through automated flows, but the data stays trapped inside Instagram's ecosystem. Your sales team can't see the leads in your CRM. Your email sequences don't get triggered. Your Slack channel stays silent while hot leads sit unworked.

The gap isn't Instagram's fault. It's an integration problem. Instagram's Graph API gives you raw webhook events — comment text, user IDs, timestamps — but connecting those events to your existing tools requires building and maintaining API integrations, handling OAuth tokens, managing webhook verification, and keeping up with Meta's constantly changing API versions.

InstantDM + Make.com eliminates that entire layer. InstantDM handles the Instagram side — the API connection, the DM automation, the rate limit compliance, the 24-hour messaging window. Make.com handles the integration side — routing the data to wherever your team needs it.

How the InstantDM + Make.com Connection Works

The connection runs on two webhook mechanisms.

Step 1: InstantDM Captures the Data

When a user triggers a DM flow in InstantDM — by commenting a keyword, replying to a Story, or sending a DM — the flow collects data through questions. You configure questions in the flow editor: "What's your name?" (text), "What's your email?" (email), "What are you interested in?" (text). Each question maps to a custom variable name you define.

When the flow completes, InstantDM packages the data into a structured JSON payload and fires a flow_completed webhook. This is the trigger event that Make.com receives.

Step 2: Make.com Receives and Routes the Data

In Make.com, you create a scenario with a Custom Webhook trigger. Make gives you a unique webhook URL. You paste that URL into InstantDM's webhook settings (Settings → API → Webhook URL) and enable the flow_completed event.

When a flow completes, InstantDM POSTs the JSON payload to your Make.com webhook URL. Make receives it, parses the fields, and routes the data to whatever apps you've connected in the scenario.

The Webhook Payload

Here's what the flow_completed payload looks like in practice:

{
  "flow_id": "5a0441b5-6589-4452-b8bf-90902c865893",
  "flow_name": "Lead Capture Flow",
  "sender_id": "2031528510825908",
  "sender_username": "__zain_z",
  "completed_at": "2026-05-06 04:46:15.654321",
  "attempt_no": "1",
  "tags": ["hot-lead", "interested"],
  "response_variables": {
    "user_name": "Zain",
    "email": "zain@example.com",
    "interest": "pricing"
  },
  "question_responses": [
    {
      "question": "What's your name?",
      "question_type": "text",
      "custom_variable_name": "user_name",
      "user_response": "Zain",
      "skip": false
    },
    {
      "question": "What's your email?",
      "question_type": "email",
      "custom_variable_name": "email",
      "user_response": "zain@example.com",
      "skip": false
    }
  ]
}
Enter fullscreen mode Exit fullscreen mode

The fields that matter for integration are response_variables (the key-value pairs you defined), tags (for categorizing leads), sender_username (for personalization), and completed_at (for timestamping).

Five Make.com Recipes That Actually Work

These aren't theoretical. Each recipe uses InstantDM's flow_completed webhook as the trigger and routes the data to a specific tool.

Recipe 1: Instagram DM Lead to HubSpot CRM

This is the recipe most teams need first. A lead comes in through Instagram DM, and within seconds it appears in HubSpot as a new contact with a deal.

In Make.com, set the trigger to your InstantDM webhook. Add a HubSpot module: Create Contact. Map the fields — email from response_variables.email, name from response_variables.user_name, and the sender_username as a custom property. Add a second HubSpot module: Create Deal, linked to the new contact, with the deal source set to "Instagram DM."

InstantDM's guide for this exact workflow shows the data flowing from DM flow to webhook to HubSpot in real time. The contact appears in your pipeline without anyone copying data manually.

Recipe 2: Instagram DM Lead to Google Sheets

For teams that want a simple log of every lead that comes through Instagram DMs. The webhook payload goes straight to a Google Sheet as a new row.

In Make.com, trigger on the InstantDM webhook. Add a Google Sheets module: Add a Row. Map response_variables fields to columns — name, email, interest, tags. Include sender_username and completed_at for reference.

This recipe is useful for teams that don't have a CRM yet or want a quick audit trail of all DM interactions. It also serves as a backup log if your CRM integration ever fails.

Recipe 3: Instagram DM Notification to Slack

When a high-value lead comes in, your team should know immediately. This recipe sends a Slack message the moment a flow completes with a hot-lead tag.

Trigger on the InstantDM webhook. Add a Filter module: only continue if tags contains "hot-lead." Add a Slack module: Send Message to a channel. Format the message with the lead's name, email, interest, and a link to their Instagram profile.

The filter is important. Without it, every DM completion floods your Slack channel. With the tag filter, only qualified leads trigger a notification.

Recipe 4: Instagram DM Lead to Email Marketing Tool

ConvertKit, Mailchimp, ActiveCampaign — whatever email tool you use, this recipe adds new DM leads to your email list automatically.

Trigger on the InstantDM webhook. Add your email marketing module: Add Subscriber. Map the email from response_variables.email, the name from response_variables.user_name, and apply a tag like "instagram-dm-lead" for segmentation.

This creates a seamless handoff from Instagram DM conversation to email nurture sequence. The lead never falls through the cracks between channels.

Recipe 5: Instagram DM Lead to Airtable

For teams that manage leads in Airtable instead of a traditional CRM. This recipe creates a new record in your Airtable base with all the data from the DM flow.

Trigger on the InstantDM webhook. Add an Airtable module: Create Record. Map the fields to your Airtable columns. Use the tags from the webhook to set a Lead Status field — "hot-lead" maps to "Hot," "interested" maps to "Warm."

Airtable's flexibility makes this recipe powerful for teams that want custom views, Kanban boards, or linked records across multiple tables.

Setting It Up: The 15-Minute Walkthrough

In InstantDM

Open your flow in the flow editor. Click the Integrations popup. Enable Webhook. In Settings → API, paste your Make.com webhook URL. Enable the flow_completed event. Save.

In Make.com

Create a new scenario. Add a Custom Webhook module as the trigger. Copy the webhook URL it generates. Go back to InstantDM and paste it. Return to Make.com and click "Run once" — then trigger your flow in InstantDM to send a test payload. Make.com will capture the test data and let you map fields for the next modules.

Add your destination app (HubSpot, Google Sheets, Slack, etc.). Map the fields from the webhook payload to the app's fields. Save and activate the scenario.

Total setup time: about 15 minutes for a basic recipe.

Why InstantDM's API Makes This Work

Not every Instagram DM tool has a webhook payload this clean. InstantDM's API documentation (instantdm.com/instagram-api-docs) defines structured data with custom variables, tags, and question responses — not just raw message text.

InstantDM is an official Meta Business Partner and Make.com integration partner. The webhook fires server-side, so there's no browser dependency. It handles the Instagram Graph API connection, rate limiting (750 calls/hour for comment replies), and the 24-hour messaging window natively. You don't have to manage OAuth tokens, webhook verification, or API version updates.

InstantDM also sends webhook events for comments and DM receives — not just flow completions. This means you can build recipes that trigger when someone comments on your post, when they send a DM, or when they complete a multi-step flow. Each event type carries different data, giving you flexibility in what you route and where.

The platform serves over 30,000 creators and businesses in 2026. The free plan includes 500 DMs per month. Paid plans start at $9.99 per month with unlimited DMs and unlimited automations — so your integration costs don't scale with your lead volume.

The Bigger Picture

Instagram DMs are where engagement happens. Make.com is where automation connects. InstantDM is the bridge between the two — turning Instagram conversations into structured data that flows to your CRM, your email tool, your team notifications, and any of the 3,000+ apps Make.com supports.

The real value isn't the integration itself. It's what happens after. A lead that goes from Instagram DM to HubSpot to email sequence to closed deal — without anyone manually copying data — is a lead that actually converts. In 2026, the 15 minutes you spend setting up one Make.com recipe pays for itself every time a lead comes in while you're asleep.

Top comments (0)