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

# Camada de Compatibilidade Evolution GO — Referência da API

> Use a Camada de API Evolution GO do Pilot Status para executar requisições compatíveis com o Evolution GO. Substitua sua base URL pelo endpoint da camada do Pilot Status para migrar.

A Camada de API Evolution GO do Pilot Status oferece um substituto direto para o seu servidor Evolution GO. Você mantém cada corpo de requisição, cabeçalho e caminho exatamente como estão hoje — a única mudança que você faz é trocar a sua base URL. O Pilot Status traduz suas requisições compatíveis com o Evolution GO para sua API nativa e retorna as respostas no formato que seu código já manipula.

## Base URL

Aponte seu cliente HTTP ou variável de ambiente para a seguinte base URL para começar a usar a camada Evolution GO:

```text theme={null}
https://pilotstatus.com.br/api/layer/evolution-go/
```

Todos os caminhos que você usa atualmente com seu servidor Evolution GO são anexados diretamente a esta URL. Nenhuma outra alteração é necessária.

## Autenticação

Passe sua chave de API do Pilot Status usando o mesmo cabeçalho que seu código Evolution GO existente já envia. Se o seu código usa o cabeçalho `apikey`, continue usando-o:

```text theme={null}
apikey: YOUR_API_KEY
```

Se o seu código usa um cabeçalho com token Bearer, esse formato também é aceito:

```text theme={null}
Authorization: Bearer YOUR_API_KEY
```

Use o formato que corresponder à sua implementação existente — você não precisa alterar seu código de autenticação.

## Operações suportadas

Cada requisição é uma chamada para `<MÉTODO> https://pilotstatus.com.br/api/layer/evolution-go<CAMINHO>`. A instância é resolvida a partir da sua chave de API, então os caminhos do Evolution GO que normalmente carregam um segmento de instância **não** precisam dele aqui. As operações de envio são automaticamente balanceadas entre as instâncias conectadas do seu número.

<Note>
  Qualquer caminho não listado abaixo retorna **404**. Caminhos globais ou exclusivos de administrador retornam **403** — eles nunca são expostos pela camada (veja [Caminhos bloqueados](#bloqueados-admin%2Fglobal)).
</Note>

### Instância (sessão)

| Método | Caminho                            |
| ------ | ---------------------------------- |
| POST   | `/instance/connect`                |
| GET    | `/instance/status`                 |
| GET    | `/instance/qr`                     |
| POST   | `/instance/pair`                   |
| POST   | `/instance/disconnect`             |
| POST   | `/instance/reconnect`              |
| DELETE | `/instance/logout`                 |
| GET    | `/instance/{id}/advanced-settings` |
| PUT    | `/instance/{id}/advanced-settings` |

### Envio (balanceado)

| Método | Caminho          |
| ------ | ---------------- |
| POST   | `/send/text`     |
| POST   | `/send/link`     |
| POST   | `/send/media`    |
| POST   | `/send/poll`     |
| POST   | `/send/sticker`  |
| POST   | `/send/location` |
| POST   | `/send/contact`  |
| POST   | `/send/button`   |
| POST   | `/send/list`     |
| POST   | `/send/carousel` |

### Usuário / Contatos

| Método | Caminho                |
| ------ | ---------------------- |
| POST   | `/user/info`           |
| POST   | `/user/check`          |
| POST   | `/user/avatar`         |
| GET    | `/user/contacts`       |
| GET    | `/user/privacy`        |
| POST   | `/user/privacy`        |
| POST   | `/user/block`          |
| POST   | `/user/unblock`        |
| GET    | `/user/blocklist`      |
| POST   | `/user/profilePicture` |
| POST   | `/user/profileName`    |
| POST   | `/user/profileStatus`  |

### Mensagem

| Método | Caminho                  |
| ------ | ------------------------ |
| POST   | `/message/react`         |
| POST   | `/message/presence`      |
| POST   | `/message/markread`      |
| POST   | `/message/downloadmedia` |
| POST   | `/message/status`        |
| POST   | `/message/delete`        |
| POST   | `/message/edit`          |

### Chat

| Método | Caminho              |
| ------ | -------------------- |
| POST   | `/chat/pin`          |
| POST   | `/chat/unpin`        |
| POST   | `/chat/archive`      |
| POST   | `/chat/unarchive`    |
| POST   | `/chat/mute`         |
| POST   | `/chat/unmute`       |
| POST   | `/chat/history-sync` |

### Grupo

| Método | Caminho              |
| ------ | -------------------- |
| GET    | `/group/list`        |
| POST   | `/group/info`        |
| POST   | `/group/invitelink`  |
| POST   | `/group/photo`       |
| POST   | `/group/name`        |
| POST   | `/group/description` |
| POST   | `/group/create`      |
| POST   | `/group/participant` |
| GET    | `/group/myall`       |
| POST   | `/group/join`        |
| POST   | `/group/leave`       |

### Chamada (voz)

| Método | Caminho                        |
| ------ | ------------------------------ |
| POST   | `/call/start`                  |
| GET    | `/call/list`                   |
| POST   | `/call/get`                    |
| POST   | `/call/answer`                 |
| POST   | `/call/reject`                 |
| POST   | `/call/reject/by-id`           |
| POST   | `/call/reject/latest`          |
| POST   | `/call/hangup`                 |
| POST   | `/call/media/play`             |
| POST   | `/call/media/realtime/session` |

### Comunidade

| Método | Caminho             |
| ------ | ------------------- |
| POST   | `/community/create` |
| POST   | `/community/add`    |
| POST   | `/community/remove` |

### Etiqueta (label)

| Método | Caminho            |
| ------ | ------------------ |
| POST   | `/label/chat`      |
| POST   | `/label/message`   |
| POST   | `/label/edit`      |
| GET    | `/label/list`      |
| POST   | `/unlabel/chat`    |
| POST   | `/unlabel/message` |

### Newsletter / Canais

| Método | Caminho                 |
| ------ | ----------------------- |
| POST   | `/newsletter/create`    |
| GET    | `/newsletter/list`      |
| POST   | `/newsletter/info`      |
| POST   | `/newsletter/link`      |
| POST   | `/newsletter/subscribe` |
| POST   | `/newsletter/messages`  |

### Bloqueados (admin/global)

Estes caminhos globais e exclusivos de administrador do Evolution GO **não** são expostos pela camada e retornam **403**:

`GET /server/ok` · `/swagger/*` · `POST /instance/create` · `GET /instance/all` · `GET /instance/info/{id}` · `DELETE /instance/delete/{id}` · `POST /instance/proxy/{id}` · `DELETE /instance/proxy/{id}` · `POST /instance/forcereconnect/{id}` · `GET /instance/logs/{id}`

## Eventos

A camada encaminha eventos para o seu webhook configurado no formato **nativo (PascalCase)** do próprio Evolution GO, para que seus manipuladores de eventos existentes continuem funcionando sem alterações:

`Message` · `SendMessage` · `Receipt` · `Presence` · `ChatPresence` · `Archive` · `CallOffer` · `CallAccept` · `CallTerminate` · `Connected` · `PairSuccess` · `TemporaryBan` · `LoggedOut` · `ConnectFailure` · `Disconnected` · `LabelEdit` · `LabelAssociationChat` · `LabelAssociationMessage` · `Contact` · `PushName` · `GroupInfo` · `JoinedGroup` · `NewsletterJoin` · `NewsletterLeave` · `QRCode` · `QRSuccess`

Os aliases modernos em **UPPER\_SNAKE** também são aceitos:

`MESSAGES_UPSERT` · `SEND_MESSAGE` · `CONNECTION_UPDATE` · `QRCODE_UPDATED` · `PRESENCE_UPDATE` · `CHATS_UPSERT` · `CHATS_UPDATE` · `CHATS_DELETE` · `GROUPS_UPSERT` · `GROUPS_UPDATE` · `GROUP_PARTICIPANTS_UPDATE` · `CALL` · `CONTACTS_UPSERT` · `CONTACTS_UPDATE` · `NEWSLETTER_UPDATE` · `LABEL_EDIT` · `LABEL_ASSOCIATION`

Além disso, o Pilot Status pode entregar seus próprios eventos **normalizados** junto com os nativos:

* **Ciclo de vida da chamada:** `call.ringing`, `call.connected`, `call.ended`, `call.missed`
* **Ciclo de vida do número:** `number.created`, `number.connected`, `number.disconnected`, `number.removed`

## Exemplo: enviar texto via camada Evolution GO

A requisição abaixo é uma chamada real da camada Evolution GO — um `POST /send/text` padrão, com apenas a base URL alterada para rotear através do Pilot Status. Não há segmento de instância no caminho: o cabeçalho `apikey` seleciona a instância.

```bash theme={null}
curl -X POST 'https://pilotstatus.com.br/api/layer/evolution-go/send/text' \
  -H 'apikey: YOUR_PILOT_STATUS_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{ "number": "5511999999999", "text": "Hello from Pilot Status! 👋" }'
```

Os campos do corpo são os mesmos que seu código Evolution GO já envia para `POST /send/text` — `number` e `text`, além de campos opcionais como `delay`, `quoted` e `mentionedJid`. O formato da resposta é idêntico ao que seu código existente consome.

<Note>
  Se alguma operação do Evolution GO não for suportada pela camada, use a API nativa do Pilot Status. Para dúvidas específicas de compatibilidade, fale com o suporte no WhatsApp: [+55 11 96743-5133](https://wa.me/5511967435133).
</Note>
