> ## 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.

# Detalles del grupo

> Obtiene los metadatos completos de un grupo a partir de un JID, código o enlace de invitación

**Auth:** `TokenAccount` o `TokenInstance` • **Rate-limit:** `Global` (100/min) • **Idempotente:** sí

## Descripción

Devuelve el `GroupDetail` completo: nombre, descripción, imagen, enlace de invitación, creador, lista de participantes (con `lid`), permisos y metadatos (quién cambió el nombre / la descripción). Acepta el `identifier` en cualquier formato, JID, código de invitación o enlace.

## Ejemplos

### Por JID

Obtiene los detalles del grupo pasando el JID `120363406289005073@g.us` en `identifier`. De forma predeterminada, la respuesta incluye la 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 enlace

Resuelve el grupo desde el enlace de invitación `https://chat.whatsapp.com/ABC123XYZ`. El servicio extrae el código, descubre el JID y devuelve los mismos datos que la búsqueda 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>

### Sin participantes

Agrega `participants=false` a la query para recibir solo los metadatos del grupo, sin la lista de miembros. Útil cuando solo necesitas el nombre / descripción / permisos en 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>

## Respuesta exitosa

Devuelve el `GroupDetail` completo: metadatos (`name`, `description`, `image`, `inviteLink`, `createdBy`, `createdAt`), la lista `participants` (presente solo cuando `participants=true`, con `lid` para correlación entre dispositivos), `groupSettings` resueltos y `metadata` con la autoría de los últimos cambios de nombre/descripción. La URL en `image` está firmada por WhatsApp y expira en \~1h.

```json 200 OK theme={null}
{
  "success": true,
  "message": "Group information retrieved successfully",
  "group": {
    "jid": "120363406289005073@g.us",
    "name": "Dev Team",
    "description": "Technical discussions",
    "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 ruta

<ParamField path="instance" type="string" required>
  Nombre de la instancia.
</ParamField>

## Cabeceras

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

## Query

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

<ParamField query="participants" type="boolean" default="true">
  Cuando es `false`, omite la lista de participantes (respuesta más liviana).
</ParamField>

## Notas

<Note>
  * Cuando el identifier es un código / enlace, el servicio lo resuelve a un JID antes de obtener los detalles, debes estar en el grupo (o unirte primero) para ver los datos internos.
  * El campo `lid` corresponde al identificador "lite" de whatsmeow para el usuario; útil para correlacionar mensajes enviados desde otros dispositivos.
  * La URL en `image` es temporal (firmada por WhatsApp; válida por \~1h).
</Note>

## Errores

| HTTP | Mensaje                                                                                        |
| ---- | ---------------------------------------------------------------------------------------------- |
| 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`                                        |

Envoltorio:

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