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

# Detalhes do Grupo

> Obtém metadados completos de um grupo a partir de JID, código ou link de convite

**Auth:** `TokenAccount` ou `TokenInstance` • **Rate-limit:** `Global` (100/min) • **Idempotente:** sim

## Descrição

Retorna o `GroupDetail` completo: nome, descrição, foto, link de convite, criador, lista de participantes (com `lid`), permissões e metadata (quem alterou nome / descrição). Aceita `identifier` em qualquer formato, JID, código de convite ou link.

## Exemplos

### Por JID

Busca os detalhes do grupo passando o JID `120363406289005073@g.us` em `identifier`. Por default, a resposta inclui a lista completa de participantes.

<CodeGroup>
  ```bash cURL theme={null}
  curl -X GET "https://ryzeapi.cloud/api/group/info/$Instance_Name?identifier=120363406289005073@g.us" \
    -H "token: $Token_Instance"
  ```

  ```javascript JavaScript theme={null}
  await fetch(`https://ryzeapi.cloud/api/group/info/${process.env.Instance_Name}?identifier=120363406289005073@g.us`, {
    method: "GET",
    headers: {
      "token": process.env.Token_Instance
    }
  });
  ```

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

  requests.get(
      f"https://ryzeapi.cloud/api/group/info/{os.environ['Instance_Name']}?identifier=120363406289005073@g.us",
      headers={
          "token": os.environ["Token_Instance"]
      }
  )
  ```

  ```go Go theme={null}
  package main

  import (
      "net/http"
      "os"
  )

  func main() {
      req, _ := http.NewRequest("GET", "https://ryzeapi.cloud/api/group/info/"+os.Getenv("Instance_Name")+"?identifier=120363406289005073@g.us", nil)
      req.Header.Set("token", os.Getenv("Token_Instance"))
      http.DefaultClient.Do(req)
  }
  ```
</CodeGroup>

### Por link

Resolve o grupo a partir do link de convite `https://chat.whatsapp.com/ABC123XYZ`. O serviço extrai o código, descobre o JID e retorna os mesmos dados que a busca por JID.

<CodeGroup>
  ```bash cURL theme={null}
  curl -X GET "https://ryzeapi.cloud/api/group/info/$Instance_Name?identifier=https://chat.whatsapp.com/ABC123XYZ" \
    -H "token: $Token_Instance"
  ```

  ```javascript JavaScript theme={null}
  await fetch(`https://ryzeapi.cloud/api/group/info/${process.env.Instance_Name}?identifier=https://chat.whatsapp.com/ABC123XYZ`, {
    method: "GET",
    headers: {
      "token": process.env.Token_Instance
    }
  });
  ```

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

  requests.get(
      f"https://ryzeapi.cloud/api/group/info/{os.environ['Instance_Name']}?identifier=https://chat.whatsapp.com/ABC123XYZ",
      headers={
          "token": os.environ["Token_Instance"]
      }
  )
  ```

  ```go Go theme={null}
  package main

  import (
      "net/http"
      "os"
  )

  func main() {
      req, _ := http.NewRequest("GET", "https://ryzeapi.cloud/api/group/info/"+os.Getenv("Instance_Name")+"?identifier=https://chat.whatsapp.com/ABC123XYZ", nil)
      req.Header.Set("token", os.Getenv("Token_Instance"))
      http.DefaultClient.Do(req)
  }
  ```
</CodeGroup>

### Sem participantes

Adiciona `participants=false` na query para receber apenas os metadados do grupo, sem a lista de membros. Útil quando você só precisa do nome / descrição / permissões em grupos grandes.

<CodeGroup>
  ```bash cURL theme={null}
  curl -X GET "https://ryzeapi.cloud/api/group/info/$Instance_Name?identifier=ABC123XYZ&participants=false" \
    -H "token: $Token_Instance"
  ```

  ```javascript JavaScript theme={null}
  await fetch(`https://ryzeapi.cloud/api/group/info/${process.env.Instance_Name}?identifier=ABC123XYZ&participants=false`, {
    method: "GET",
    headers: {
      "token": process.env.Token_Instance
    }
  });
  ```

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

  requests.get(
      f"https://ryzeapi.cloud/api/group/info/{os.environ['Instance_Name']}?identifier=ABC123XYZ&participants=false",
      headers={
          "token": os.environ["Token_Instance"]
      }
  )
  ```

  ```go Go theme={null}
  package main

  import (
      "net/http"
      "os"
  )

  func main() {
      req, _ := http.NewRequest("GET", "https://ryzeapi.cloud/api/group/info/"+os.Getenv("Instance_Name")+"?identifier=ABC123XYZ&participants=false", nil)
      req.Header.Set("token", os.Getenv("Token_Instance"))
      http.DefaultClient.Do(req)
  }
  ```
</CodeGroup>

## Resposta de sucesso

Retorna o `GroupDetail` completo: metadados (`name`, `description`, `image`, `inviteLink`, `createdBy`, `createdAt`), lista de `participants` (presente apenas quando `participants=true`, com `lid` para correlação cross-device), `groupSettings` resolvidos e `metadata` com autoria das últimas alterações de nome/descrição. A URL em `image` é assinada pelo WhatsApp e expira em \~1h.

```json 200 OK theme={null}
{
  "success": true,
  "message": "Group information retrieved successfully",
  "group": {
    "jid": "120363406289005073@g.us",
    "name": "Time de Dev",
    "description": "Discussões técnicas",
    "image": "https://pps.whatsapp.net/...",
    "inviteCode": "ABC123XYZ",
    "inviteLink": "https://chat.whatsapp.com/ABC123XYZ",
    "createdBy": "5511999999999@s.whatsapp.net",
    "createdAt": "2026-01-15T10:30:00Z",
    "participantCount": 3,
    "participants": [
      {
        "jid": "5511999999999@s.whatsapp.net",
        "lid": "199789077627112@lid",
        "isAdmin": true,
        "isSuperAdmin": false,
        "joinedAt": null
      }
    ],
    "groupSettings": {
      "membersCanEditInfo": true,
      "membersCanSendMessages": true,
      "membersCanAddOthers": false,
      "requireAdminApproval": false
    },
    "metadata": {
      "nameSetAt": "2026-01-15T10:30:00Z",
      "nameSetBy": "5511999999999@s.whatsapp.net",
      "descriptionSetAt": "2026-02-20T14:00:00Z",
      "descriptionSetBy": "5521988888888@s.whatsapp.net"
    },
    "isCommunity": false,
    "isParent": false,
    "isDefaultSubGroup": false,
    "isEphemeral": false,
    "isIncognito": false,
    "isSuspended": false
  }
}
```

## Parâmetros de rota

<ParamField path="instance" type="string" required>
  Nome da instância.
</ParamField>

## Headers

<ParamField header="token" type="string" required>
  `TokenAccount` ou `TokenInstance`.
</ParamField>

## Query

<ParamField query="identifier" type="string" required>
  JID `@g.us`, código de convite (`ABC123XYZ`) ou link completo (`https://chat.whatsapp.com/ABC123XYZ`).
</ParamField>

<ParamField query="participants" type="boolean" default="true">
  Quando `false`, omite a lista de participantes (resposta mais leve).
</ParamField>

## Notas

<Note>
  * Quando o identifier é código / link, o serviço resolve para JID antes de buscar o detalhe, você precisa estar no grupo (ou fazer join antes) para ver os dados internos.
  * O campo `lid` corresponde ao identificador "lite" do whatsmeow para o usuário; útil para correlacionar mensagens enviadas a partir de outros aparelhos.
  * A URL em `image` é temporária (assinada pelo WhatsApp; vale \~1h).
</Note>

## Erros

| HTTP | Mensagem                                                                                       |
| ---- | ---------------------------------------------------------------------------------------------- |
| 400  | `The 'identifier' query parameter is required (can be group JID, invite code, or invite link)` |
| 400  | `failed to resolve group from identifier (not a valid JID, code, or link)`                     |
| 404  | `Group not found or you are not a member of this group`                                        |

Envelope:

```json theme={null}
{
  "success": false,
  "error": { "message": "Group not found or you are not a member of this group" }
}
```
