Skip to main content
Place these objects inside configuration.follow_up.actions, in execution order. Each example is one action, not a complete configuration. A sequence requires at least one delivery action and a final finish, with at most 20 actions in total.
send_message requires text and buttons. Use an empty array for no buttons: text then allows 1 to 1000 Unicode scalars. With 1 to 3 buttons, text allows 1 to 640. Follow-up buttons are URL-only, with titles of 1 to 20 scalars and HTTP(S) URLs. A URL click does not resume the sequence.

Send media

send_media accepts media_type values image, video, audio, or file, with a public HTTP(S) url. Keep the file accessible until delivery. The authoring API accepts a URL, not multipart upload or base64. Structural validation does not download the file or establish its size, MIME type, or provider acceptance. Use send_carousel for 1 to 10 image cards, each with 1 to 3 URL buttons. The carousel guide includes every field and a complete creation example.

Ask the contact to follow

strict checks follow status with Instagram; trusted_click trusts the confirmation click. not_following_message is required but can be null. Both prompts allow 1 to 640 scalars; button titles allow 1 to 20. max_attempts is 1 to 10. recheck_after_seconds is 60 to 86400; expires_in_seconds is 60 to 604800.

Ask for an email address

Ask for a phone number

Both capture actions require all fields shown. message and retry_message allow 1 to 1000 scalars; max_attempts is 1 to 5; expires_in_seconds is 60 to 604800. Capture validates the submitted value, not ownership, and does not send an email or WhatsApp message. For every gate, retry_exhausted_action accepts continue or stop. Expiry ends the gate even when retry exhaustion is configured to continue. A configured expiry does not extend Instagram permission to send messages.

Add a contact tag

Use an existing tag UUID from the selected account. Place add_contact_tag after a delivery action. Its delay_seconds accepts 0 to 2592000, but a later message must still pass the cumulative messaging-window checks.

Finish the sequence

finish occurs exactly once, at the end, and accepts no delay or other fields.

Order and timing

Every non-null follow-up requires exactly one start_follow_up button in the opening, for every trigger type. Gates come before delivery. Use at most one ask_to_follow; it cannot be combined with email or phone capture. Email and phone can each appear once, in either order. Delivery and gate delays are integers from 0 to 86399 seconds, relative to the preceding successful completion. Cumulative waits, including tag delays and background follow rechecks, must leave each outbound provider action within 86399 seconds of the applicable window baseline. A captured inbound reply resets that baseline; a silent follow recheck does not. Queues and account pacing can add latency. A saved configuration is not proof of delivery.