> ## Documentation Index
> Fetch the complete documentation index at: https://docs.minidesk.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Instagram

> Direct messages to your Instagram account become conversations in your inbox.

Customers send your Instagram account a direct message; it becomes a
conversation in your inbox; your reply goes back to them as a direct message.
They never leave Instagram, and you never leave your inbox.

## What you need

The login for the Instagram account you want to connect, and two minutes.
Nothing to host, nothing to install, and no code.

Only an Owner can connect it.

## Set it up

<Steps>
  <Step title="Add the channel">
    In the dashboard, go to **Channels** and pick **Instagram**.
  </Step>

  <Step title="Press Continue to Meta">
    Meta owns Instagram, so the login happens on Meta's own screen. Log in
    and pick the account.
  </Step>

  <Step title="Come back to Channels">
    Meta sends you back to the dashboard, which says **Instagram is
    connected**. If you cancelled on Meta's screen, nothing changed.
  </Step>
</Steps>

Send the account a direct message from a different Instagram account to
confirm it works. It should appear in your inbox within a few seconds.

## One account per workspace

A workspace connects one Instagram account. To switch to another, disconnect
the first.

## Only messages from now on

Direct messages sent after you connect become conversations. Your existing
Instagram inbox is not imported, so a customer you were already talking to
starts a new conversation the next time they write.

## What arrives

Direct messages, and what comes with them.

Photos and PDFs are stored alongside the message, up to 10MB each, the same as
everywhere else in the product. Videos, voice messages and other files are not
stored. An internal note names each one, so your team knows something was sent
and can look in the Instagram app.

We stop at images and PDFs because almost every support attachment is a
screenshot, and every file type we accept is one we have to store and serve
safely.

A message with no words, like a photo on its own, still becomes a
conversation. It gets a short placeholder line, like "(sent a photo)", so the
thread is not blank. Replies to your story and mentions of you in someone's
story arrive the same way, as "(replied to your story)" and "(mentioned you in
their story)".

Comments on your posts do not arrive. Only direct messages do.

## Which conversation a message joins

A chat has no threads, just one continuous stream. So a new message joins the
customer's open conversation if they have one. If every conversation with them
is resolved or closed, it starts a new one.

That means a customer coming back a month later opens a fresh conversation
rather than reviving a finished one.

## Their name and picture

The customer's Instagram name is used as their name in your inbox. Where they
have a profile picture, we fetch it whenever they start a new conversation and
show it beside their name. People with no picture keep the initials circle.

The image is stored privately and shown through a short-lived signed link, not
a public URL. Erasing a customer deletes the file along with the record.

## Replying

Your reply goes back as a direct message. Three things are worth knowing.

**Meta only lets businesses reply within 24 hours of the customer's last
message.** A reply written by a person gets 7 days instead. The AI does not
get the extra time, and does not need it: it answers within minutes. Once the
window has closed, nothing reaches the customer until they write again.

**Long replies are split.** Instagram caps a message at 1000 characters, so a
longer reply arrives as several messages, broken at a line or a space.

**Only the text goes.** Files you attach to a reply stay on the conversation
in miniDesk. If the customer needs one, send a link.

### A reply that did not arrive says so

If Instagram refuses a reply, you get an internal note on the conversation
saying it was not delivered, and why: the 24 hours have passed, the account
needs reconnecting, or Instagram did not accept it. The note is there so
nobody on your team believes the customer has an answer they never got.

## Replies sent from the Instagram app

You can still answer from the Instagram app on your phone. That reply is added
to the conversation, labelled **Instagram app**, so the thread in your inbox
stays complete. It is not sent a second time.

A conversation you start yourself from the app does not become a ticket. It is
not a support request.

## Automated replies

If you have AI auto-reply switched on, Instagram follows it like any other
channel. Once the account is connected, the **Reply automatically on** list
under **AI Agent → Settings** gets an **Instagram** switch. It starts on, so
you can turn it off for Instagram and leave it on for email, or the reverse.

## The confirmation message

When the AI is not answering a new conversation, the customer hears nothing
until someone on your team replies. Switch on **Confirmation message** in
**Channels → Instagram** to send them one line straight away, so they know it
arrived.

It goes once, when a conversation starts, and only if the AI did not reply on
its own. Leave the text as it is to send ours: "Thanks for your message! We'll
get back to you as soon as we can." Or write your own, up to 500 characters.
Clear the field to go back to ours.

It is off until you switch it on. Your team does not see it as a message in
the thread. It is listed as **Confirmation sent** in the conversation's
history, and the conversation still counts as unanswered.

<Warning>
  If **Instant reply** is also on in Meta Business Suite, customers get both.
  Switch one of them off.
</Warning>

## On the free plan

On the free plan, the first message we send in each conversation ends with
the line "Sent from miniDesk.ai". That is the confirmation message if one went
out, or the first reply if not. Paid plans never add it, and upgrading removes
it straight away.

## The states

The Channels screen shows which one you are in:

| State | Meaning |
| - | - |
| **Waiting for the first message** | Connected, but nobody has messaged the account since |
| **Live** | At least one message has arrived and become a conversation |
| **Paused** | You switched it off |
| **Reconnect needed** | Meta stopped sending this account's messages to us |

**Reconnect needed** usually means the account's password changed or its
access was removed on Meta's side. Open **Channels → Instagram** and press
**Reconnect** to log in on Meta again.

## Pausing and disconnecting

**Pausing** is the **Accept new conversations** switch. While it is off,
nothing customers send is picked up, not even replies to conversations already
in your inbox, and nothing is kept for later. The connection is kept, so
switching it back on picks up from the next message.

**Disconnecting** removes the connection and withdraws the access Meta gave
us. The Instagram account itself is untouched and stays exactly as it is.

Conversations that already arrived stay in your inbox either way. They are
your support history, not part of the connection.

## Through the API

Conversations that start on Instagram have `source: "instagram"` in
[the REST API](/api-reference/introduction). Their requesters are never
verified: Meta vouches that an Instagram account exists, not that it belongs to
one of your customers.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.