Skip to content

Comment → DM automations

Where: Automations in the main menu (/automations), then the Instagram settings of a post in the composer.

An automation answers a comment with a direct message: “write LINK below and I’ll send you the guide”. It is the part of UseNadia that the original project does not have, and it works on Instagram only, because it is Instagram’s Messaging API that does the work. The conversations it opens end up in the inbox.

What it is Where it lives
Template The conversation, drawn as a tree of steps: a trigger, messages with buttons, waits, conditions, actions. Carries no trigger word, no publication, no value Automations
Attachment The template attached to one publication (a pose in the API), with that publication’s trigger words and one value per {variable} ({ressource}, {bouton}, {lien}…), with its own people and counters Chosen in the composer, or from Analytics on something already live

One template runs on many publications at once, each with its own words and values: the same Lead magnet template gives the Malta guide under one reel and the Git kit under another. Only an Active template runs, or an Archived one, on the publications it is already attached to.

With the Lead magnet starting point, the one most people pick:

  1. They comment a trigger word

    Under a post or a reel, or as a reply to a story. Typos are tolerated when the trigger says so: LEIN still catches LIEN.

  2. A public reply appears under their comment

    One variant drawn at random from a pool, so the thread does not read as a bot. Posts only: a story reply has no public thread.

  3. A direct message arrives, with a button

    The first message names the resource and carries a button (20 characters, Instagram’s cap).

  4. Tapping it asks for their email

    Once. If UseNadia already knows the address from an earlier automation, it says so instead of asking again.

  5. The resource is delivered

    A closing message carries the link as a button, the address goes to your email tool when the template has a « Forward the email » step, and non-followers get one more line.

Every message is the template’s to rewrite, and the editor’s ▶ Test simulates the conversation without sending anything.

Automations → + New template offers six starting points, grouped by what they are for: Lead magnet and Newsletter sign-up (collect emails); Straight link, Ask for a follow and Follow required (send a link: the last two give the resource against a follow, with one reminder if the person does not follow yet, then the link anyway for the former, and for the latter no link, the thread comes back to you in the inbox); and Blank. The selected template is told on the right as a conversation, bubbles and buttons, before you open it. The editor is a diagram: one card per step, a + on each output, the selected step’s text and buttons in the right panel. The overview, when nothing is selected, lists what is left to finish, the variables to fill on each post, and the publications the template is attached to.

A reply button only moves on a tap: only a message that is exactly its title triggers it. Any other answer (“ok”, a question, an email address) does not move the conversation on and stays in To reply, for you. Someone who cannot see the button can type its title exactly.

The status switch at the top activates or pauses it. Activation is refused while the template has an error: it would send what Meta refuses, or a text with a hole in it.

A template you no longer want to offer, but whose publications should keep answering, is archived: ⋯ → Archive on an Active template. An Archived template:

  • keeps answering on every publication it is already attached to, exactly as when it was Active (each attachment keeps its own Pause);
  • is no longer offered anywhere: not in the composer, not in Automate comments on this post, not to an agent;
  • no longer changes: the editor shows it read-only, with Unarchive at the top. Duplicate gives you an editable copy.

It leaves the list of Automations for the folded Archived (N) section at the bottom of the page. Only an Active template can be archived: a Paused one is resumed first (archiving it would set its publications answering again), a Draft has never run and is simply deleted. Unarchive puts it back to Active, with the same check as an activation.

Deleting a template, by contrast, removes every attachment with it, and the people who went through them. The three gestures sit side by side in the editor’s ⋯ menu, each with what it does and on how many publications: Pause (nothing goes out, nothing is lost), Archive (its publications keep answering, it is no longer offered), Delete (for good).

A word between braces in any text of a template is a variable: write {ressource} in a message, or in a button’s title or link, and the variable exists. There is nothing to declare. When the message leaves, each variable is replaced by its value; one with no value stays as written, so a test shows what is missing instead of a silent hole.

Variables come in three families:

Family Examples Filled by
Of the run {username}, {keyword}, {email}, {account} UseNadia itself: the person’s handle, the word they commented, the email they gave (now or in an earlier automation), your account’s name
Kept along the way {prenom}, {budget}… The conversation: a « wait for a reply » step that keeps the answer, or a « set a variable » action
Of the template {ressource}, {bouton}, {lien} You, on each post: every other name is asked for when the template is attached

The third family is what makes one template serve many posts. The overview of the editor lists these variables under to fill on each post, and under each one, two optional fields: a description (what to type there) and an example. The person who attaches the template reads them next to the field: the description behind a ?, the example as the field’s placeholder. A template without them works exactly the same.

The composer and the attach form also show the first DM as the person will receive it, rendered with the values typed so far; a variable still empty stays highlighted in braces. The problems of an attachment (no trigger word, a value missing) appear once you start typing, or when you schedule or attach.

The starting points come with their description and example:

Variable Starting point Description Example
{ressource} Lead magnet, Straight link, Ask for a follow, Follow required What the person gets, as named in the first DM the Malta guide as a PDF
{bouton} Lead magnet, Ask for a follow, Follow required Title of the closing button, 20 characters max The guide
{bouton} Straight link Title of the DM’s button, 20 characters max The guide
{lien} Lead magnet, Straight link, Ask for a follow, Follow required The address the button opens https://mysite.com/guide

Newsletter sign-up and Blank have no variable of their own.

Instagram settings, Automation: pick a template, type the trigger words of this post (the word and its likely typos), fill its variables. UseNadia checks them before the post is scheduled: a post to schedule whose attachment is incomplete (no trigger word, a variable without a value, a link that is not one) is refused until it is fixed, while a draft is saved as it is.

Only Active templates are offered; the section says how many are left out (not activated, archived). A post written with a template that was paused since keeps it, and the section says so in amber: This template is not active: nothing goes out until it is. It is attached all the same, and starts working the day you activate the template. A post written with a template that was archived since keeps it too, with a neutral note: it still answers once the post is live.

From the video page in Analytics, or the action bar of a published Instagram post in the calendar: Automate comments on this post (see Post actions). On a live story, Automate replies to this story: a story lives 24 hours, which is why the picker lists what is live right now.

The template’s overview, the video page and the Automations tab of a channel’s Analytics list where it is attached: words, values, N people · N waiting · N done · N failed · N emails, with Check now (reads the comments again and starts what a missed webhook left behind), Pause / Resume and Remove on each. Show the people lists them: username, word, email, and where they are in the flow (In progress, Waiting, Done, Handed over to you, Failed, Skipped).

Two badges on an attachment tell you why it is quiet: Paused when you paused that attachment, Template off when the template it belongs to is a Draft or Paused: nothing runs there until the template is Active. An attachment of an Archived template shows a neutral Archived badge: it still answers.

Export CSV on an attachment downloads its people; the same button at the top of Attached to this channel, in the Analytics Automations tab, downloads every attachment of the channel in one file, each line naming its template and publication. Columns: template, media_id (channel file only), email, instagram_username, keyword, status, date. A person who gave no address is still a line, with the email cell empty. That is how you keep the emails without a connected email tool (see Forward the email).

A Meta webhook does the real work: a comment arrives, Instagram calls UseNadia, the flow starts. Nothing re-reads Instagram on a schedule: when a webhook was missed, Check now reads the publication’s comments again and starts what was left behind.

Meta lets an account send one unsolicited message to a person; while an earlier one of yours sits unanswered in their requests, a second is refused. UseNadia does not fail the run: it parks it, for up to 7 days. The moment the person writes anything (most often a tap on that earlier message), the window opens and the parked message leaves as a DM. Past a week the run is dropped: a resource nobody asked about again would arrive out of the blue. Parking is per person: several attachments waiting on the same person are released together, in order.

Everything on this page is on the Public API (automations) and in the MCP: automationList, automationManageTool and automationRunsTool, plus commentsListTool and commentActTool for the comments themselves.