Skip to main content

Instagram Interactions

Coming soon

Comments, direct messages and AutoDM are not available yet. Until they launch, every endpoint on this page returns 501 with "error_code": "COMING_SOON". This page describes the planned API and may change before release.

These endpoints let you read and reply to comments, send direct messages, and manage AutoDM monitors for an Instagram Business account. All requests require an Instagram Business (or Creator) account connected to the target profile via OAuth. Pass your API key in every request using the Authorization: Apikey YOUR_API_KEY header.


Comments​

List Comments​

GET https://api.indreelforge.com/api/instagram/comments

Returns all comments (and nested replies) on a specific media post. You can identify the post either by its Instagram media ID or by its public URL.

ParameterTypeRequiredDescription
profilestringYesThe IndReelForge profile name whose Instagram account to use
media_idstringConditionalInstagram media ID. Required if media_url is not provided
media_urlstringConditionalPublic Instagram post URL. Required if media_id is not provided
curl \
-H 'Authorization: Apikey YOUR_API_KEY' \
'https://api.indreelforge.com/api/instagram/comments?profile=my-brand&media_id=17854360229135492'

Response​

{
"media_id": "17854360229135492",
"comments": [
{
"id": "17858893269000001",
"text": "Love this product!",
"username": "janedoe",
"timestamp": "2026-04-17T10:23:00+0000",
"replies": {
"data": [
{
"id": "17858893269000002",
"text": "Thanks so much!",
"username": "my-brand",
"timestamp": "2026-04-17T10:45:00+0000"
}
]
}
}
],
"paging": {
"cursors": {
"before": "MAZDZD",
"after": "MQZDZD"
},
"next": "https://graph.instagram.com/..."
}
}

Reply to a Comment (Private DM)​

POST https://api.indreelforge.com/api/instagram/comments/reply

Sends a private DM to the person who left a specific comment. Uses the Instagram Messaging API — the reply is delivered as a direct message, not a public comment reply.

ParameterTypeRequiredDescription
profilestringYesThe IndReelForge profile name whose Instagram account to use
comment_idstringYesThe Instagram comment ID to reply to
messagestringYesThe text to send as a private DM
curl \
-X POST \
-H 'Authorization: Apikey YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"profile": "my-brand",
"comment_id": "17858893269000001",
"message": "Thanks for your kind words! Here is a 10% discount code: THANKS10"
}' \
https://api.indreelforge.com/api/instagram/comments/reply

Response​

{
"success": true,
"message_id": "aWdfZAG4aWRlbnRpdHkZD"
}

Direct Messages​

Send a DM​

POST https://api.indreelforge.com/api/instagram/dms/send

Sends a direct message to any Instagram user by their platform user ID.

ParameterTypeRequiredDescription
profilestringYesThe IndReelForge profile name whose Instagram account to use
recipient_idstringYesThe Instagram-scoped user ID of the recipient
messagestringYesThe message text to send
curl \
-X POST \
-H 'Authorization: Apikey YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"profile": "my-brand",
"recipient_id": "6109560149124133",
"message": "Hey! Thanks for following us. Here is a welcome gift for you."
}' \
https://api.indreelforge.com/api/instagram/dms/send

Response​

{
"success": true,
"message_id": "aWdfZAG4aWRlbnRpdHkZD"
}

List DM Conversations​

GET https://api.indreelforge.com/api/instagram/dms/conversations

Returns all DM conversations for the connected Instagram account, including participants and recent messages in each thread.

ParameterTypeRequiredDescription
profilestringYesThe IndReelForge profile name whose Instagram account to use
curl \
-H 'Authorization: Apikey YOUR_API_KEY' \
'https://api.indreelforge.com/api/instagram/dms/conversations?profile=my-brand'

Response​

{
"conversations": [
{
"id": "t_10153913738212036",
"participants": {
"data": [
{ "id": "6109560149124133", "name": "Jane Doe" },
{ "id": "104039549309093", "name": "My Brand" }
]
},
"messages": {
"data": [
{
"id": "m_abc123",
"message": "Thanks for following us!",
"from": { "id": "104039549309093", "name": "My Brand" },
"created_time": "2026-04-17T11:00:00+0000"
}
]
}
}
]
}

AutoDM​

AutoDM monitors watch a media post for new comments and automatically send a DM to each commenter. Monitors expire automatically after 15 days. A maximum of 2 monitors can be created per profile per day.

Start an AutoDM Monitor​

POST https://api.indreelforge.com/api/instagram/autodm/start

Creates a new active AutoDM monitor for a media post. Optionally filters by keyword so the DM is only sent when a comment contains a specific word or phrase.

ParameterTypeRequiredDescription
profilestringYesThe IndReelForge profile name whose Instagram account to use
media_idstringYesThe Instagram media ID to watch for new comments
dm_messagestringYesThe message to send automatically to each new commenter
keyword_filterstringNoOnly trigger the DM when a comment contains this keyword (case-insensitive)
curl \
-X POST \
-H 'Authorization: Apikey YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"profile": "my-brand",
"media_id": "17854360229135492",
"dm_message": "Thanks for commenting! Use code SAVE20 for 20% off your next order.",
"keyword_filter": "price"
}' \
https://api.indreelforge.com/api/instagram/autodm/start

Response​

{
"success": true,
"monitor_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"status": "active",
"expires_at": "2026-05-03T11:00:00.000Z"
}
info

You can create at most 2 monitors per profile per day. Monitors automatically expire and stop after 15 days.


List AutoDM Monitors​

GET https://api.indreelforge.com/api/instagram/autodm

Returns all AutoDM monitors for the authenticated account, across all profiles, ordered by creation date (newest first).

curl \
-H 'Authorization: Apikey YOUR_API_KEY' \
https://api.indreelforge.com/api/instagram/autodm

Response​

{
"monitors": [
{
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"user_id": 42,
"profile_id": "p_abc123",
"profile_name": "my-brand",
"media_id": "17854360229135492",
"keyword_filter": "price",
"dm_message": "Thanks for commenting! Use code SAVE20 for 20% off your next order.",
"status": "active",
"expires_at": "2026-05-03T11:00:00.000Z",
"created_at": "2026-04-18T11:00:00.000Z"
}
]
}

Get AutoDM Event Logs​

GET https://api.indreelforge.com/api/instagram/autodm/logs

Returns the event log for a specific monitor — each row records one triggered DM delivery attempt, whether it succeeded or failed.

ParameterTypeRequiredDescription
monitor_idstringYesThe UUID of the AutoDM monitor
limitintegerNoNumber of log entries to return. Defaults to 50, maximum 200
curl \
-H 'Authorization: Apikey YOUR_API_KEY' \
'https://api.indreelforge.com/api/instagram/autodm/logs?monitor_id=a1b2c3d4-e5f6-7890-abcd-ef1234567890&limit=25'

Response​

{
"monitor_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"logs": [
{
"id": "log_00001",
"event": "dm_sent",
"recipient_id": "6109560149124133",
"message_id": "aWdfZAG4aWRlbnRpdHkZD",
"error_message": null,
"created_at": "2026-04-18T12:05:00.000Z"
},
{
"id": "log_00002",
"event": "dm_failed",
"recipient_id": "6109560149124134",
"message_id": null,
"error_message": "User has restricted DMs from unknown accounts",
"created_at": "2026-04-18T12:07:00.000Z"
}
]
}

Pause, Resume, or Stop a Monitor​

PATCH https://api.indreelforge.com/api/instagram/autodm/:id

Changes the status of an existing monitor. Use pause to temporarily halt DM delivery, resume to reactivate a paused monitor, or stop to permanently end it.

ParameterTypeRequiredDescription
actionstringYesOne of pause, resume, or stop
curl \
-X PATCH \
-H 'Authorization: Apikey YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{"action": "pause"}' \
https://api.indreelforge.com/api/instagram/autodm/a1b2c3d4-e5f6-7890-abcd-ef1234567890

Response​

{
"success": true,
"monitor_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"status": "paused"
}
ActionResulting status
pausepaused
resumeactive
stopstopped

Delete a Monitor​

DELETE https://api.indreelforge.com/api/instagram/autodm/:id

Permanently removes an AutoDM monitor and all associated configuration. This does not delete event logs.

curl \
-X DELETE \
-H 'Authorization: Apikey YOUR_API_KEY' \
https://api.indreelforge.com/api/instagram/autodm/a1b2c3d4-e5f6-7890-abcd-ef1234567890

Response​

{
"success": true
}