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

# Subscrever Eventos de Presença do Chat

> Subscrever para receber notificações de presença (online/offline) de um chat específico

## Descrição

Este endpoint permite subscrever para receber atualizações de presença (status online/offline) de um contato específico. Após a subscrição, você receberá eventos sempre que o contato ficar online ou offline.

## Parâmetros de URL

<ParamField path="session" type="string" required>
  ID único da sessão WhatsApp
</ParamField>

<ParamField path="chatId" type="string" required>
  ID do chat/contato no formato `5511999999999@s.whatsapp.net`
</ParamField>

## Resposta

<ResponseExample>
  ```json Resposta de Sucesso theme={null}
  {
    "success": true,
    "message": "Subscrição de presença criada com sucesso",
    "chatId": "5511999999999@s.whatsapp.net"
  }
  ```
</ResponseExample>

## Códigos de Status

* `200` - Subscrição criada com sucesso
* `400` - Parâmetros inválidos
* `401` - Não autorizado
* `404` - Chat/Sessão não encontrado

## Exemplo de Uso

<CodeGroup>
  ```bash cURL theme={null}
  curl -X POST https://api.wappfy.com.br/api/my-session/presence/5511999999999@s.whatsapp.net/subscribe
  ```

  ```javascript JavaScript theme={null}
  const session = 'my-session';
  const chatId = '5511999999999@s.whatsapp.net';
  const response = await fetch(`https://api.wappfy.com.br/api/${session}/presence/${chatId}/subscribe`, {
    method: 'POST'
  });
  const data = await response.json();
  console.log(data);
  ```

  ```python Python theme={null}
  import requests

  session = 'my-session'
  chat_id = '5511999999999@s.whatsapp.net'
  response = requests.post(
    f'https://api.wappfy.com.br/api/{session}/presence/{chat_id}/subscribe'
  )
  data = response.json()
  print(data)
  ```
</CodeGroup>

## Notas

* Após subscrever, você receberá eventos de presença através do stream de eventos
* Use o endpoint `/api/events/stream/{sessionId}` para receber os eventos em tempo real
* Os eventos informarão quando o contato ficar online (`AVAILABLE`) ou offline (`UNAVAILABLE`)
* Útil para implementar indicadores de status online em aplicações


## OpenAPI

````yaml viewer.json post /api/{session}/presence/{chatId}/subscribe
openapi: 3.1.0
info:
  title: Wappfy - WhatsApp HTTP API
  version: '2.0'
  contact: {}
servers:
  - url: https://{host}
    description: Servidor Customizável
    variables:
      host:
        default: api.wappfy.com.br
        description: 'URL do servidor (ex: api.wappfy.com.br ou seu-servidor.com)'
security:
  - api_key: []
tags:
  - name: 🖥️ Sessions
    description: >-
      Controlar sessões do WhatsApp (contas) (Control WhatsApp sessions
      (accounts))
  - name: 🔑 Auth
    description: Autenticação
  - name: 🆔 Profile
    description: Informações do seu perfil
  - name: 🖼️ Screenshot
    description: Obter captura de tela do WhatsApp e mostrar código QR
  - name: 📤 Chatting
    description: Métodos de conversação
  - name: 📢 Channels
    description: Métodos de canais (newsletters) (Channels (newsletters) methods)
  - name: 🟢 Status
    description: Métodos de status (aka stories) (Status (aka stories) methods)
  - name: 💬 Chats
    description: Métodos de conversas
  - name: 👤 Contacts
    description: >-
      Métodos de contatos. Use número de telefone (sem +) ou número de telefone
      e `@c.us` no final como `contactId`. Ex: `12312312310` OU
      `12312312310@c.us` (Contacts methods.<br>
                      Use phone number (without +) or phone number and `@c.us` at the end as `contactId`.<br>
                      'E.g: `12312312310` OR `12312312310@c.us`<br>)
  - name: 👥 Groups
    description: Métodos de grupos (Groups methods).<br>
  - name: ✅ Presence
    description: Informações de presença
  - name: 📅 Events
    description: Mensagem de Evento
  - name: 🏷️ Labels
    description: Etiquetas - disponível apenas para contas WhatsApp Business
  - name: 🔍 Observability
    description: Outros métodos
  - name: 🗄️ Storage
    description: Métodos de armazenamento
externalDocs:
  description: Wappfy - WhatsApp HTTP API
  url: https://wappfy.com.br/
paths:
  /api/{session}/presence/{chatId}/subscribe:
    post:
      tags:
        - ✅ Presence
      summary: Inscrever-se em eventos de presença para a conversa
      description: O parâmetro {session} deve ser o instanceName da sessão.
      operationId: PresenceController_subscribe
      parameters:
        - name: chatId
          required: true
          in: path
          description: ID da Conversa
          example: 123456789@c.us
          schema:
            type: string
      responses:
        '201':
          description: ''
      security:
        - api_key: []
components:
  securitySchemes:
    api_key:
      type: apiKey
      in: header
      name: apikey
      description: Sua chave de API do Wappfy (obtenha em dash.wappfy.com.br)

````