Instagram automation
Pre-release v1, published 2026-09-14. This page commits to the shape of the API, not to a
date. We will build exactly what is documented here. The shape can still change until
2026-10-14; after that, changes follow Versioning and stability.
The banner comes off one page at a time as each route goes live. While it is here, build against the contract and assume the route is not callable yet.
Automation rules are Instagram only. They let your customers automate replies without raising a support ticket with you, or with us. A rule belongs to one Instagram channel and fires on a direct message or a comment on a post or reel.
A DM rule
Keywords match in any language the channel supports. Write them the way your customer’s audience actually types.
The actions vocabulary is closed: text, image, link, delay. An unknown type returns
422. An open-ended array would turn every future action type into a silent breaking change for
anyone who guessed.
A comment rule does three things
Your customer picks the post themselves, exactly as our own users do, so you will want to show them a post list to choose from. That is what the media endpoint is for.
Follow gating
A rule can withhold its answer until the commenter follows the page. It is a core Instagram growth mechanic.
When require_follow.enabled is true and the sender does not follow the page, the rule holds its
payload. It sends prompt with a button instead, then delivers the real response once the follow
is verified. retry_prompt covers someone tapping the button before actually following.
The button is a postback, a tap inside Instagram rather than a link out. You do not implement the verification round-trip. The rule engine does.
A held response expires after 24 hours
After that, the person has to trigger the rule again.
Checking follow status
follows_business is three-valued: true, false, or null. null means Meta did not
confirm the relationship. It does not mean “does not follow”.
null is not false. We fail open: on null, the answer is sent. A withheld answer to a
genuine follower reads to the end user as the automation being broken, which is worse than
answering someone who has not followed. Treat null the same way.
Managing rules
List is paginated and filterable by is_active and on. To pause a rule without losing it, patch
is_active to false.
Full parameters and a live playground: Automation reference.