Instagram logo

Integrate Instagram with your AI CRM

Instagram is a social media platform for sharing photos, videos, and stories. Only supports Instagram Business and Creator accounts, not Instagram Personal accounts.

Explore Triggers and Actions

Create Carousel Container

Create a draft carousel post with multiple images/videos before publishing. Instagram requires carousels to have between 2 and 10 media items. Container creation_ids expire in under 24 hours, so publish promptly after creation.

ActionTry it

Create Media Container (Deprecated)

DEPRECATED: Creates a draft media container for photos, videos or Reels for a Business or Creator account. Returns an ID for subsequent publishing; containers expire after about 24 hours and must finish processing before publication.

ActionTry it

Create Post (Deprecated)

DEPRECATED: Use INSTAGRAM_POST_IG_USER_MEDIA_PUBLISH instead. Publish a draft media container to Instagram (final publishing step). Posts become immediately and publicly visible upon success — confirm intent before calling. Requires Business or Creator account with publish scopes; missing scopes return Graph error code 10. After creating a media container, Instagram may need time to process media before publishing. If called too early, error code 9007 is returned. This action automatically retries with exponential backoff (up to ~44 seconds total). For large videos, use INSTAGRAM_GET_POST_STATUS to poll until status_code='FINISHED' before calling; for carousels, all child containers must individually reach FINISHED status first. No native scheduling support — use an external scheduler to trigger this call at the desired time.

ActionTry it

Delete Comment

Tool to delete a comment on Instagram media. Use when you need to remove a comment that was created by your Instagram Business or Creator Account. Note: You can only delete comments that your account created - you cannot delete other users' comments unless they are on your own media.

ActionTry it

Delete Messenger Profile

Delete ice breakers or a persistent menu from an Instagram messenger profile.

ActionTry it

Enable Webhook Subscriptions

Enable selected Instagram Login webhook fields for delivery to the connected professional account. This enables account delivery only; it does not configure the callback URL or app-level webhook subscriptions. The Meta app must be Live, have its callback configured, and meet Advanced Access and business verification prerequisites before this action is used.

ActionTry it

Get Conversation

Get details about a specific Instagram DM conversation (participants, etc). Requires a Business or Creator account with Instagram messaging permissions; personal accounts will return permission errors. Newly sent/received messages may take a few seconds to appear in results.

ActionTry it

Get IG Comment Replies

Get replies to a specific Instagram comment. Returns a list of comment replies with details like text, username, timestamp, and like count. Use when you need to retrieve child comments (replies) for a specific parent comment.

ActionTry it

Get IG Media Children

Tool to get media objects (images/videos) that are children of an Instagram carousel/album post. Use when you need to retrieve individual media items from a carousel album post. Note: Carousel children media do not support insights queries - for analytics, query metrics at the parent carousel level.

ActionTry it

Get IG Media Insights

Get performance insights for an Instagram media object, such as views, reach, likes, comments, saves and shares. Requires a Business or Creator account. Some metric names are normalized, and certain invalid or deprecated metrics are removed; the response reports removals and substitutions.

ActionTry it

Get IG User Content Publishing Limit

Get an Instagram Business Account's current content publishing usage. Use this to monitor quota usage before publishing; exceeding the daily cap blocks new posts until the quota resets (no partial failure — new publish calls are rejected until reset). IMPORTANT: This endpoint requires an IG User ID (Instagram Business Account ID), NOT an IGSID (Instagram Scoped ID). IGSID is only used for messaging-related endpoints. Content publishing endpoints require a proper IG User ID. Excessive polling of this endpoint may trigger Graph error 613 (rate limit); space calls several seconds apart.

ActionTry it

Get IG User Live Media

Get live media objects for an Instagram Business or Creator account during an active broadcast, including the live video media ID and metadata.

ActionTry it

Get IG User Stories

Get active story media objects for an Instagram Business or Creator account. Stories are retrieved via the /stories endpoint. Returns stories that are currently active within the 24-hour window. Use this to retrieve story content, metadata, and engagement metrics for monitoring or analytics purposes.

ActionTry it

Get IG User Tags

Get one page of media tagging an Instagram Business or Creator account using Instagram Login. Select fields and use the returned cursors for pagination. Requires basic access and comment-management permission.

ActionTry it

Get Instagram Media

Get a published Instagram Media object (photo, video, story, reel, or carousel). Use when you need to retrieve detailed information about a specific Instagram post including engagement metrics, caption, media URLs, and metadata. NOTE: This action is for published media only. For unpublished container IDs (from INSTAGRAM_CREATE_MEDIA_CONTAINER), use INSTAGRAM_GET_POST_STATUS to check status instead.

ActionTry it

Get Messenger Profile

Get the messenger profile settings for an Instagram account. Returns ice breakers and other messaging configuration. Use when you need to retrieve messaging settings, ice breaker questions, or messenger configuration for an Instagram Business account.

ActionTry it

Get Multiple Graph Nodes

Retrieve selected fields for multiple Instagram Graph nodes and return the results keyed by requested node ID. The action reads nodes individually and fails if a node request fails.

ActionTry it

Get Page Conversations

Get a page of Instagram conversations for an Instagram Business account, with cursor pagination.

ActionTry it

Get Post Comments (Deprecated)

DEPRECATED: Use INSTAGRAM_GET_IG_MEDIA_COMMENTS instead. Get comments on an Instagram post. Requires Instagram Business or Creator account. Returns empty `data` array (not an error) when no comments exist. Response data is nested under `data.data`; unwrap before processing. Timestamps are timezone-aware ISO 8601 strings; use UTC-based comparison.

ActionTry it

Get Post Insights (Deprecated)

Get insights for an Instagram post from a Business or Creator account, using its numeric media ID and selected metrics or a metric preset. Available metrics vary by media type. DEPRECATED: Use INSTAGRAM_GET_IG_MEDIA_INSIGHTS instead.

ActionTry it

Get Post Status (Deprecated)

DEPRECATED: Use GetIgMedia instead. Check the processing status of a draft post container. Poll until status_code='FINISHED' before calling INSTAGRAM_CREATE_POST; publishing early triggers OAuthException 9007 (HTTP 400). If status_code='ERROR' or remains non-terminal after ~30 attempts, the container is permanently failed — recreate a new container. Poll every 3–5s with exponential backoff to avoid error 613/code 4/HTTP 429. For carousels, all child containers must reach FINISHED before publishing the parent.

ActionTry it

Get User Info

Get Instagram Business Account info including profile details and statistics. Use "me" to query your own authenticated account, or provide the numeric Business Account ID of an account you manage. NOTE: followers_count and follows_count are returned for your own profile (ig_user_id="me"). For other accounts, follower/follow counts are surfaced through the business_discovery edge rather than this direct-node action, so they may be null here.

ActionTry it

Get User Insights

Get Instagram account-level insights and analytics (profile views, reach, follower count, etc.). Requires a Business or Creator account; personal accounts are not supported. Returned timestamps are in UTC. metric_type (time_series or total_value): When set to total_value, the API returns a total_value object instead of values. breakdown: Only applicable when metric_type=total_value and only for supported metrics. timeframe: Required for demographics-related metrics and overrides since/until for those metrics.

ActionTry it

Get User Media (Deprecated)

DEPRECATED: Use INSTAGRAM_GET_IG_USER_MEDIA instead. Get Instagram user's media (posts, photos, videos). Only works for connected Business or Creator accounts; personal accounts return no data. Response data is nested under `data.data`; unwrap before processing. Items mix images, videos, carousels, and reels — filter by `media_type` and `media_product_type`. Use `media_url` for file download, `permalink` for share links. Fields like `caption`, `like_count` may be null. Timestamps are UTC ISO 8601. HTTP 429 with `Retry-After` header indicates rate limiting.

ActionTry it

List All Conversations

List one cursor-paginated page of Instagram DM conversations for the authenticated or specified Business/Creator account, optionally selecting conversation fields and filtering for one participant.

ActionTry it

List All Messages

List one cursor-paginated page of messages from a specific Instagram DM conversation, with a caller-selectable field projection. Set the page size and use the returned cursor to retrieve the next page.

ActionTry it

List Media Comments

List selected comments for an Instagram media object ID using fields, limit, and after cursors.

ActionTry it

List Subscribed Apps

Return one provider page of apps enabled for webhook notifications on the authenticated Instagram professional account, including subscribed fields. Check paging.next in the response when present; Meta does not expose a continuation input for this edge.

ActionTry it

List User Media

List one cursor-paginated page of user media with selected fields; use ig_user_id='me' for the authenticated account.

ActionTry it

Mark Seen

Mark Instagram DM messages as read/seen for a specific user. Sends a 'mark_seen' sender action to indicate messages from the specified recipient have been read. Marking as seen is visible to the other party and changes inbox read state — use with explicit user approval in automated or bulk flows. IMPORTANT LIMITATIONS: - The sender_action API feature may have limited support on Instagram - The recipient must have an active 24-hour messaging window open - Requires instagram_manage_messages permission - Only works with Instagram Business or Creator accounts If this action fails with a 500 error, it may indicate that the sender_action feature is not supported for your Instagram account or the specific recipient.

ActionTry it

Post IG Comment Replies

Tool to create a reply to an Instagram comment. Use when you need to reply to a specific comment on an Instagram post owned by a Business or Creator account. The reply must be 300 characters or less, contain at most 4 hashtags and 1 URL, and cannot consist entirely of capital letters.

ActionTry it

Post IG Media Comments

Tool to create a comment on an Instagram media object. Use when you need to post a comment on a specific Instagram post, photo, video, or carousel. The comment must be 300 characters or less, contain at most 4 hashtags and 1 URL, and cannot consist entirely of capital letters.

ActionTry it

Post IG User Media

Tool to create a media container for Instagram posts. Use this to create a container for images, videos, Reels, or carousels. This is the first step in Instagram's two-step publishing process - after creating the container, use the media_publish endpoint to publish it.

ActionTry it

Publish IG User Media

Publish a media container to an Instagram Business account and return the published media ID. By default, the action polls for FINISHED status before publishing, subject to a wait timeout; setting the wait to zero skips status checks and attempts immediate publication.

ActionTry it

Reply To Comment (Deprecated)

DEPRECATED: Use INSTAGRAM_POST_IG_COMMENT_REPLIES instead. Reply to a comment on Instagram media. Only usable on comments belonging to media owned by the authenticated account. Creates a public, irreversible reply; invoke only with explicit user confirmation, not for bulk or speculative use.

ActionTry it

Reply to IG User Mentions

Tool to reply to a mention of your Instagram Business or Creator account. Use when you need to respond to comments or media captions where your account has been @mentioned by another Instagram user. This creates a comment on the media or comment containing the mention.

ActionTry it

Send Image

Send an image via Instagram DM to a specific user. Each send modifies inbox state; avoid bulk or automated sends without explicit user approval.

ActionTry it

Send Text Message

Send a text message to an Instagram user via DM in an existing conversation. Cannot initiate new DM threads — a prior conversation must exist. Requires an Instagram Business or Creator account with messaging permissions. Fails with error_subcode 2534022 if outside the messaging window; do not retry these failures.

ActionTry it

Set Media Comment Availability

Enable or disable new comments on owned, published Instagram media. Live video media is not supported by Meta.

ActionTry it

Update Messenger Profile

Update ice breakers for an Instagram Business account's messenger profile. Ice breakers are suggested questions that help users start conversations.

ActionTry it

How the Instagram integration works

The Instagram integration connects your Dench AI CRM directly to Instagram, so agents can read and act on your Instagram data as part of everyday work — answering questions in chat, keeping your CRM in sync, and running automations without anyone copying data between tools.

40 actions are available for agents to invoke on your behalf. Every call runs through Instagram's own authorization, scoped to the account you connect.

Set up Instagram in Dench

  1. 1

    Sign in to your Dench workspace and open Integrations.

  2. 2

    Find Instagram and click Connect — you'll authorize access through Instagram's own sign-in flow. No API keys or code required.

  3. 3

    Ask an agent to use Instagram in chat, or call it from an automation.

  4. 4

    Manage or disconnect the connection any time from workspace settings.

Frequently asked questions

How does the Instagram integration work with Dench?

The Dench Instagram integration connects your AI CRM to Instagram, so AI agents can work with your Instagram data as part of chats, automations, and CRM workflows. You connect your account once, and every agent in your workspace can use it — governed by your workspace permissions.

What actions can AI agents perform with Instagram via Dench?

The Instagram integration currently exposes 40 actions, including Create Carousel Container, Create Media Container (Deprecated), Create Post (Deprecated), Delete Comment, Delete Messenger Profile, and Enable Webhook Subscriptions. Agents invoke them on your behalf from chat or from automations.

Do I need to write code to connect Instagram to Dench?

No. You connect Instagram from your Dench workspace using Instagram's own sign-in and authorization flow — no API keys to copy, no glue code to maintain.

Is the Instagram integration secure?

Connections are authorized through Instagram's own authentication flow, and Dench stores only the authorization needed to act on your behalf. You can review and disconnect the Instagram connection from your workspace settings at any time.

Instagram | Dench AI CRM