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

# whatsapp.group.lifecycle_update

> 在创建或删除 WhatsApp 群组时发生，包括成功和失败的结果。

在您的 Webhook 端点处使用 `whatsapp.group.lifecycle_update` 来处理此事件。

## 触发条件

在创建或删除 WhatsApp 群组时发生，包括成功和失败的结果。

[配置 Webhook 端点](https://docs.ycloud.com/zh/api-reference/guides/api-fundamentals/configure-webhooks.md)时订阅 `whatsapp.group.lifecycle_update`。

## 语法

YCloud 向您配置的 Webhook URL 发送一个 HTTP `POST` 请求。以下结构展示了一种有效载荷变体。尖括号中的值为占位符；其类型列在 **参数** 下。可选字段和其他变体在下方说明。

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
  "id": "<ID>",
  "type": "whatsapp.group.lifecycle_update",
  "apiVersion": "<API_VERSION>",
  "createTime": "<CREATE_TIME>",
  "whatsappGroup": {
    "wabaId": "<WABA_ID>",
    "displayPhoneNumber": "<DISPLAY_PHONE_NUMBER>",
    "phoneNumberId": "<PHONE_NUMBER_ID>",
    "field": "<FIELD>",
    "type": "<TYPE>",
    "requestId": "<REQUEST_ID>",
    "status": "<STATUS>",
    "groupId": "<GROUP_ID>",
    "inviteLink": "<INVITE_LINK>",
    "subject": "<SUBJECT>",
    "description": "<DESCRIPTION>",
    "joinApprovalMode": "<JOIN_APPROVAL_MODE>",
    "webhookTime": "<WEBHOOK_TIME>",
    "dedupeKey": "<DEDUPE_KEY>"
  }
}
```

## 参数

在处理 JSON 请求体之前，请先验证 `YCloud-Signature` HTTP 请求头。参见[签名验证](https://docs.ycloud.com/zh/api-reference/guides/api-fundamentals/configure-webhooks.md)。

### 事件信封

| 参数 | 类型 | 必需 | 描述 |
| - | - | - | - |
| `id` | string | 是 | 事件的唯一 ID。最小长度：`6`。最大长度：`128`。 |
| `type` | string | 是 | 始终为 `whatsapp.group.lifecycle_update`。 |
| `apiVersion` | string | 是 | 用于渲染此事件的 API 版本。 |
| `createTime` | string (date-time) | 是 | 此事件创建的时间，格式遵循 [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339)。例如：`2022-06-01T12:00:00.000Z`。 |

### 事件有效载荷

| 参数 | 类型 | 必需 | 描述 |
| - | - | - | - |
| `whatsappGroup` | object | 否 | 特定于事件的 `whatsappGroup` 有效载荷。 |

四个通用信封字段为必需字段。有效载荷字段取决于事件变体。在每个对象表格中，当其父对象存在时， **必需** 适用。可选字段可以省略；示例并不意味着字段是必需的。

#### whatsappGroup

| 参数 | 类型 | 必需 | 描述 |
| - | - | - | - |
| `wabaId` | string | 否 | WhatsApp 商业账户 ID。 |
| `displayPhoneNumber` | string | 否 | 来自 WhatsApp Webhook 元数据的显示电话号码。 |
| `phoneNumberId` | string | 否 | WhatsApp 电话号码 ID。 |
| `field` | string | 否 | 生成群组事件的 WhatsApp Webhook 字段。取值：`group_lifecycle_update`、`group_participants_update`、`group_settings_update`、`group_status_update`、`messages`。 |
| `type` | string | 否 | 具体的 WhatsApp 群组事件类型。取值：`group_create`、`group_delete`、`group_participants_add`、`group_participants_remove`、`group_join_request_created`、`group_join_request_revoked`、`group_settings_update`、`group_suspend`、`group_suspend_cleared`、`message_status`。 |
| `requestId` | string | 否 | 异步群组 API 操作返回的请求 ID。 |
| `status` | string | 否 | WhatsApp 群组 Webhook 状态。取值：`created`、`failed`、`deleted`、`added`、`removed`、`left`、`requested`、`revoked`、`updated`、`suspended`、`suspend_cleared`、`sent`、`delivered`、`read`、`expired`。 |
| `groupId` | string | 否 | WhatsApp 群组 ID。 |
| `messageId` | string | 否 | YCloud 群组消息 ID。仅当状态事件关联到已保存的出站群组消息时才存在。 |
| `inviteLink` | string | 否 | 群组邀请链接。 |
| `reason` | string | 否 | 成员、加入申请或移除事件的原因。 |
| `initiatedBy` | string | 否 | 表示谁发起了成员移除事件。可选值：`business`、`participant`。 |
| `joinRequestId` | string | 否 | 加入申请 ID。 |
| `waId` | string | 否 | 单个成员事件对应的 WhatsApp 用户 ID。 |
| `recipientUserId` | string | 否 | 单个成员事件对应的企业级用户 ID（BSUID）。 |
| `parentRecipientUserId` | string | 否 | 单个成员事件对应的父级企业级用户 ID。 |
| `customerProfile` | object | 否 | WhatsApp 客户个人资料信息。 |
| `subject` | string | 否 | 群组主题。 |
| `description` | string | 否 | 群组描述。 |
| `joinApprovalMode` | string | 否 | WhatsApp 群组加入审批模式。<ul><li>`approval_required`：新成员加入前必须经过审批。</li><li>`auto_approve`：新成员无需审批即可加入。</li></ul> |
| `addedParticipants` | object\[] | 否 | 已添加到群组的成员。 |
| `removedParticipants` | object\[] | 否 | 已从群组中移除的成员。 |
| `failedParticipants` | object\[] | 否 | 添加或移除失败的成员。 |
| `settings` | object\[] | 否 | 群组设置更新详情。 |
| `errors` | object\[] | 否 | WhatsApp 返回的错误。 |
| `contacts` | object\[] | 否 | 群组消息状态 Webhook 中包含的联系人。 |
| `statuses` | object\[] | 否 | 群组消息状态详情。 |
| `webhookTime` | string (date-time) | 否 | WhatsApp 触发此 Webhook 的时间。 |
| `dedupeKey` | string | 否 | 用于对群组 Webhook 事件去重的幂等键。 |

> [accordion] whatsappGroup.customerProfile
>
> | 参数 | 类型 | 必填 | 说明 |
> | - | - | - | - |
> | `name` | string | 否 | WhatsApp 个人资料名称。 |
> | `username` | string | 否 | WhatsApp 用户名。 |

> [accordion] whatsappGroup.addedParticipants\[]
>
> | 参数 | 类型 | 必填 | 说明 |
> | - | - | - | - |
> | `input` | string | 否 | 原始成员输入值。 |
> | `waId` | string | 否 | WhatsApp 用户 ID。 |
> | `recipientUserId` | string | 否 | 企业级用户 ID（BSUID）。 |
> | `parentRecipientUserId` | string | 否 | 父级企业级用户 ID。 |
> | `customerProfile` | object | 否 | WhatsApp 客户个人资料信息。 |
> | `errors` | object\[] | 否 | WhatsApp 针对此成员返回的错误。 |

> [accordion] whatsappGroup.addedParticipants\[].customerProfile
>
> | 参数 | 类型 | 必填 | 说明 |
> | - | - | - | - |
> | `name` | string | 否 | WhatsApp 个人资料名称。 |
> | `username` | string | 否 | WhatsApp 用户名。 |

> [accordion] whatsappGroup.removedParticipants\[]
>
> | 参数 | 类型 | 是否必填 | 描述 |
> | - | - | - | - |
> | `input` | string | 否 | 原始参与者输入。 |
> | `waId` | string | 否 | WhatsApp 用户 ID。 |
> | `recipientUserId` | string | 否 | 业务范围用户 ID（Business-scoped user ID）。 |
> | `parentRecipientUserId` | string | 否 | 父级业务范围用户 ID（Parent business-scoped user ID）。 |
> | `customerProfile` | object | 否 | WhatsApp 客户个人资料信息。 |
> | `errors` | object\[] | 否 | WhatsApp 针对该参与者返回的错误。 |

> [accordion] whatsappGroup.removedParticipants\[].customerProfile
>
> | 参数 | 类型 | 是否必填 | 描述 |
> | - | - | - | - |
> | `name` | string | 否 | WhatsApp 个人资料名称。 |
> | `username` | string | 否 | WhatsApp 用户名。 |

> [accordion] whatsappGroup.failedParticipants\[]
>
> | 参数 | 类型 | 是否必填 | 描述 |
> | - | - | - | - |
> | `input` | string | 否 | 原始参与者输入。 |
> | `waId` | string | 否 | WhatsApp 用户 ID。 |
> | `recipientUserId` | string | 否 | 业务范围用户 ID（Business-scoped user ID）。 |
> | `parentRecipientUserId` | string | 否 | 父级业务范围用户 ID（Parent business-scoped user ID）。 |
> | `customerProfile` | object | 否 | WhatsApp 客户个人资料信息。 |
> | `errors` | object\[] | 否 | WhatsApp 针对该参与者返回的错误。 |

> [accordion] whatsappGroup.failedParticipants\[].customerProfile
>
> | 参数 | 类型 | 是否必填 | 描述 |
> | - | - | - | - |
> | `name` | string | 否 | WhatsApp 个人资料名称。 |
> | `username` | string | 否 | WhatsApp 用户名。 |

> [accordion] whatsappGroup.settings\[]
>
> | 参数 | 类型 | 是否必填 | 描述 |
> | - | - | - | - |
> | `name` | string | 否 | 设置名称。可选值：`profile_picture`、`group_subject`、`group_description`。 |
> | `text` | string | 否 | 主题或描述更新的文本值。 |
> | `updateSuccessful` | boolean | 否 | 设置更新是否成功。 |
> | `mimeType` | string | 否 | 头像更新的 MIME 类型。 |
> | `sha256` | string | 否 | 头像更新的 SHA-256 哈希值。 |
> | `errors` | object\[] | 否 | WhatsApp 针对该设置返回的错误。 |

> [accordion] whatsappGroup.contacts\[]
>
> | 参数 | 类型 | 是否必填 | 描述 |
> | - | - | - | - |
> | `customerProfile` | object | 否 | WhatsApp 客户个人资料信息。 |
> | `waId` | string | 否 | WhatsApp 用户 ID。 |
> | `recipientUserId` | string | 否 | 业务范围用户 ID（Business-scoped user ID）。 |
> | `parentRecipientUserId` | string | 否 | 父级业务范围用户 ID（Parent business-scoped user ID）。 |

> [accordion] whatsappGroup.contacts\[].customerProfile
>
> | 参数 | 类型 | 是否必填 | 描述 |
> | - | - | - | - |
> | `name` | string | 否 | WhatsApp 个人资料名称。 |
> | `username` | string | 否 | WhatsApp 用户名。 |

> [accordion] whatsappGroup.statuses\[]
>
> | 参数 | 类型 | 是否必填 | 说明 |
> | - | - | - | - |
> | `id` | string | 否 | WhatsApp 消息 ID。 |
> | `status` | string | 否 | 消息状态。取值：`sent`、`delivered`、`read`、`failed`、`expired`。 |
> | `timestamp` | integer (int64) | 否 | 表示消息状态更新时间的 Unix 时间戳。 |
> | `recipientId` | string | 否 | 接收者群组 ID。 |
> | `recipientType` | string | 否 | 接收者类型。取值：`group`。 |
> | `recipientParticipantId` | string | 否 | 接收者成员的 WhatsApp 用户 ID。 |
> | `recipientUserId` | string | 否 | 接收者成员的企业作用域用户 ID。 |
> | `parentRecipientUserId` | string | 否 | 接收者成员的父企业作用域用户 ID。 |
> | `conversation` | object | 否 | 群组消息状态 Webhook 中包含的 WhatsApp 会话对象。 |
> | `pricing` | object | 否 | 群组消息状态 Webhook 中包含的计费信息。 |
> | `errors` | object\[] | 否 | WhatsApp 返回的错误信息。 |

> [accordion] whatsappGroup.statuses\[].conversation
>
> | 参数 | 类型 | 是否必填 | 说明 |
> | - | - | - | - |
> | `id` | string | 否 | 会话 ID。 |
> | `expirationTimestamp` | integer (int64) | 否 | 表示会话过期时间的 Unix 时间戳。 |
> | `origin` | object | 否 | 对象字段列于下方。 |

> [accordion] whatsappGroup.statuses\[].conversation.origin
>
> | 参数 | 类型 | 是否必填 | 说明 |
> | - | - | - | - |
> | `type` | string | 否 | 会话发起类型。 |

> [accordion] whatsappGroup.statuses\[].pricing
>
> | 参数 | 类型 | 是否必填 | 说明 |
> | - | - | - | - |
> | `billable` | boolean | 否 | 该消息是否计费。 |
> | `pricingModel` | string | 否 | 计费模式。 |
> | `type` | string | 否 | 定价类型。 |
> | `category` | string | 否 | Meta 报告的原始群组计费类别。YCloud 不在此 Webhook 字段中公开内部 MM Lite 映射。取值：`group_marketing`、`group_utility`、`group_service`。 |

## 示例

以下 JSON 是投递至接收端的消息体。ID、电话号码和其他账户值仅作演示说明。

> [accordion] WhatsApp 群组生命周期更新事件
>
> WhatsApp 群组创建时的示例载荷
>
> ```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
> {
>   "id": "evt_group_lifecycle_123",
>   "type": "whatsapp.group.lifecycle_update",
>   "apiVersion": "v2",
>   "createTime": "2026-05-13T00:00:00.000Z",
>   "whatsappGroup": {
>     "wabaId": "123456789012345",
>     "displayPhoneNumber": "16315551111",
>     "phoneNumberId": "1234567890123456",
>     "field": "group_lifecycle_update",
>     "type": "group_create",
>     "requestId": "REQ_1",
>     "status": "created",
>     "groupId": "120363345678901234@g.us",
>     "inviteLink": "https://chat.whatsapp.com/AbCdEfGhIjK",
>     "subject": "New Purchase Inquiry",
>     "description": "Group for purchase inquiries.",
>     "joinApprovalMode": "auto_approve",
>     "webhookTime": "2026-05-13T00:00:00.000Z",
>     "dedupeKey": "123456789012345|REQ_1|group_lifecycle_update|group_create|created"
>   }
> }
> ```

> [accordion] 群组已创建
>
> ```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
> {
>   "id": "evt_group_lifecycle_123",
>   "type": "whatsapp.group.lifecycle_update",
>   "apiVersion": "v2",
>   "createTime": "2026-05-13T00:00:00.000Z",
>   "whatsappGroup": {
>     "wabaId": "123456789012345",
>     "displayPhoneNumber": "16315551111",
>     "phoneNumberId": "1234567890123456",
>     "field": "group_lifecycle_update",
>     "type": "group_create",
>     "requestId": "REQ_1",
>     "status": "created",
>     "groupId": "Y2FwaV9ncm91cDpFWEFNUExFX0dST1VQX0lE",
>     "inviteLink": "https://chat.whatsapp.com/AbCdEfGhIjK",
>     "subject": "New Purchase Inquiry",
>     "description": "Group for purchase inquiries.",
>     "joinApprovalMode": "auto_approve",
>     "webhookTime": "2026-05-13T00:00:00.000Z",
>     "dedupeKey": "123456789012345|REQ_1|group_lifecycle_update|group_create|created"
>   }
> }
> ```

> [accordion] 群组已删除
>
> ```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
> {
>   "id": "evt_group_lifecycle_124",
>   "type": "whatsapp.group.lifecycle_update",
>   "apiVersion": "v2",
>   "createTime": "2026-05-13T00:00:00.000Z",
>   "whatsappGroup": {
>     "wabaId": "123456789012345",
>     "field": "group_lifecycle_update",
>     "type": "group_delete",
>     "requestId": "REQ_DELETE",
>     "status": "deleted",
>     "groupId": "Y2FwaV9ncm91cDpFWEFNUExFX0dST1VQX0lE",
>     "webhookTime": "2026-05-13T00:00:00.000Z"
>   }
> }
> ```

在验证签名并持久化接收事件后，请返回 `2xx` 响应。耗时任务应异步处理。

```http theme={"theme":{"light":"github-light","dark":"github-dark"}}
HTTP/1.1 200 OK
```

有关具体场景演练，请参阅[带注释示例](https://docs.ycloud.com/zh/api-reference/guides/examples/webhook-examples/whatsapp-group-lifecycle-update-webhook-examples)。


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.