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

# Introduction

> Send and receive Instagram DMs via dashboard or API, with official Meta or unofficial connection, tracking, and comment moderation.

<Tip>
  Instagram Direct is the **profile inbox**: support, notifications, and DM automation without relying only on WhatsApp or Telegram.
</Tip>

## What is Instagram on Notifique?

It's how you **send and receive direct messages (DMs)** and **moderate comments** on the connected account. You integrate via **dashboard or API**; the platform handles the queue and delivery status for each send.

You can:

* **Connect** an ops account (official or unofficial)
* **Send** text and media by URL (image, video, audio, document)
* **Receive** DMs and track them via webhook (`instagram.received`)
* **Reply and moderate** comments (official also supports **hide**)
* On **unofficial**: **edit** sent text or **unsend**

Think of profile support: the customer is already on Instagram; you reply in DM without leaving your system.

## Official or unofficial?

When connecting an account, you choose one mode. **You can't switch later** on the same instance: if you change your mind, create a new one.

### Official connection (recommended for production)

This is the **Meta-approved** path (Messaging API). Ideal when your product is live, you need a **reliable webhook**, comment **hide**, and recipient **IGSID**.

* Meta login in the panel or shareable link for the client
* Advanced **BYOK** variant if you already have Page token and IDs
* **24-hour** window after the customer's last message

### Unofficial connection

Works with **username and password** (or a link for the client to enter credentials). Fast for **MVP** and testing, with more freedom to **edit** and **unsend** DMs.

<Warning>
  In **unofficial** mode, connecting an Instagram account carries restriction risk. `acceptInstagramTerms: true` is required. Use a **dedicated** account and read the [anti-suspension policy](/en/instagram-api/como-funciona/politica-anti-banimento).
</Warning>

## Comparison: what each mode does

| Feature                                  |     Official     |  Unofficial |
| ---------------------------------------- | :--------------: | :---------: |
| Text DM                                  |         ✅        |      ✅      |
| Media DM (URL)                           |         ✅        |      ✅      |
| Receive DMs                              | ✅ (Meta webhook) | ✅ (polling) |
| Edit sent DM                             |         ❌        |      ✅      |
| Unsend (delete for everyone)             |         ❌        |      ✅      |
| Reply to comments                        |         ✅        |      ✅      |
| Hide comment                             |         ✅        |      ❌      |
| 24h window after customer's last message |         ✅        |      ❌      |
| Recipient by `@username`                 |   ❌ (use IGSID)  |      ✅      |
| Shareable link for the client to connect |         ✅        |      ✅      |
| Meta login in panel / public page        |         ✅        |      ❌      |
| Username and password                    |         ❌        |      ✅      |
| Warm-up / anti-suspension cooldown       |         ❌        |      ✅      |
| Test in sandbox                          |         ✅        |      ✅      |

Details and "which to pick?": [Connection modes](/en/instagram-api/como-funciona/modos-de-conexao).

## How to connect your account

In three steps:

1. **Create an instance** (your Instagram connection) in the panel or via API
2. **Choose** official or unofficial
3. **Complete setup** until status is **active** and ready to send

<AccordionGroup>
  <Accordion title="How to set up official connection">
    1) In the panel, create a connection and choose **Official**
    2) Sign in with Meta (Embedded) or use a shareable link
    3) **Instagram Professional** account linked to a **Facebook Page**
    4) Configure Meta webhook at `{your_base}/webhooks/meta/instagram`

    Step-by-step guide: [Quick Start](/en/instagram-api/como-funciona/quick-start) (**Official connection** tab)
  </Accordion>

  <Accordion title="How to set up official BYOK connection">
    1. Create instance with `mode: "OFFICIAL_BYOK"`
    2. Provide Page token, Page ID, IG Business Account ID, and App Secret
    3. Future reconnect **only** with manual token (does not become Embedded)

    Details: [Connection modes](/en/instagram-api/como-funciona/modos-de-conexao)
  </Accordion>

  <Accordion title="How to set up unofficial connection">
    1. In the panel or API, choose **Unofficial**
    2. Enter username and password (or generate a shareable link)
    3. Accept the terms (`acceptInstagramTerms: true`)
    4. On a new account, respect warm-up from the [anti-suspension policy](/en/instagram-api/como-funciona/politica-anti-banimento)

    Step-by-step guide: [Quick Start](/en/instagram-api/como-funciona/quick-start) (**Unofficial connection** tab)
  </Accordion>
</AccordionGroup>

## After connecting

* Status **active** → send with `instanceId` and recipient (IGSID on official, username on unofficial)
* Configure workspace [webhooks](/en/instagram-api/como-funciona/eventos-do-webhooks) (and Meta callback on official)
* Reconnect is **locked** to the original method (Embedded ≠ BYOK ≠ password)

<Info>
  On official, edit and unsend are **not** available (Meta API limitation). Comment hide is **only** on official.
</Info>

## Next steps

* [Connection modes](/en/instagram-api/como-funciona/modos-de-conexao)
* [Quick Start](/en/instagram-api/como-funciona/quick-start)
* [Anti-suspension policy](/en/instagram-api/como-funciona/politica-anti-banimento)
* [API Key scopes](/en/instagram-api/como-funciona/escopos-api-key)
* [Webhook events](/en/instagram-api/como-funciona/eventos-do-webhooks)
* [API reference](/en/instagram-api/api-reference/api-reference)
