dibales.ai - Instagram icon

dibales.ai - Instagram

Send Instagram DMs (text, button templates with multi-level menu routing, quick replies, or media attachments) via the dibales.ai public API.

Message → Send Text

AI-generated

Summary

Sends a text Instagram DM through the dibales.ai public API, either to a user by IGSID or as a private reply to a comment. It can attach up to 13 quick-reply chips, and each chip becomes its own output port for routing the user's tap.

Inputs

  • recipientMode (required) — 'User ID (Direct Message)' (default) or 'Comment ID (Private Reply)'. Use comment mode only for the first message of a comment-triggered flow. Use user mode for follow-ups.
  • recipient (required) — Recipient's IGSID, shown in user mode. The default expression pulls it from the upstream event (raw.from.id, raw.sender.id, data.user_id, etc.). If the field is empty at runtime, the node tries the same auto-detection and errors if it finds nothing.
  • recipientCommentId (required) — Comment ID, shown in comment mode. The default expression extracts it from the upstream comment event. If it is empty, the node falls back to auto-detection and errors if it finds nothing.
  • text (required) — Message body, max 1000 chars, and expressions are supported. An empty value throws an error.
  • quickReplies — Optional list of up to 13 chips, each with a required Title (max 20 chars). Each chip adds an output port.

Output shape

With no quick replies, one Main output carries one item per input item. Each item holds the API response fields plus _sent: { to, text }. With quick replies, there is one output port per chip, labelled with the chip title.

With quick replies, the send step emits nothing. Items appear on a chip's port only in a later execution, when an inbound message.quick_reply or postback event arrives whose payload (dbl_{nodeId}_{index}) matches this node. That item is the inbound event JSON plus _routed: { from, btnIndex, title }. Payloads that belong to a downstream Send Buttons or Send Text node are forwarded out the port that leads to it, with _forward: true. Stale or unknown payloads are silently dropped. An item with an upstream _routed marker triggers a send. Quick-reply settings are read from item 0 only. API errors throw a NodeApiError that includes the backend error code, message, and request_id.

Examples

Example 1: Reply to a DM from the trigger with a plain message

Recipient Mode: User ID; Recipient: default expression; Text: 'Thanks for reaching out!'; no quick replies.

Example 2: Send a comment-triggered private reply that starts a menu

Recipient Mode: Comment ID; Recipient Comment ID: default; Text: 'What do you need?'; Quick Replies: 'Pricing', 'Support'. Wire each chip's port to its own follow-up node.

Links

Discussion