Represents a webhook event payload.
Every event contains certain common properties: id, type, apiVersion, createTime.
Each event may also contain some properties unique to the event. For example, sms is returned when type is sms.message.updated.
Included when type is whatsapp.message.updated, whatsapp.smb.message.created, or when type is whatsapp.smb.history for an outbound history message. Also included for whatsapp.echo_message.created and whatsapp.echo_message.updated, where the Agent echo subset applies. It is omitted for a metadata-only history chunk.
Included when type is whatsapp.inbound_message.received, or when type is whatsapp.smb.history for an inbound history message. It is omitted for a metadata-only history chunk.
Included when type is whatsapp.group.lifecycle_update, whatsapp.group.participants_update, whatsapp.group.settings_update, whatsapp.group.status_update, or when type is whatsapp.message.updated for group message status updates.
Included when type is whatsapp.phone_number.deleted, whatsapp.phone_number.name_updated, whatsapp.phone_number.quality_updated, or whatsapp.phone_number.business_username_updated.
Included when type is whatsapp.template.reviewed, whatsapp.template.quality_updated, whatsapp.template.category_updated, or whatsapp.template.correct_category_detection.
Included when type is messenger.inbound_message.received or messenger.inbound_message.updated. Editing keeps the same message IDs and original times; event createTime is the edit time for updated events.
Included when type is messenger.message_reaction.updated. Event createTime is the source interaction time.
Show child attributes
响应
200
The request is successfully accepted.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"YCloud Docs","description":"YCloud product documentation, API reference, and webhook payload documentation.","colors":{"primary":"#602DED","light":"#FD4C7D","dark":"#1a1e22"},"logo":{"light":"https://mintcdn.com/lchnan/AXn0jsI-c5aPnOMW/logo/light.png?fit=max\u0026auto=format\u0026n=AXn0jsI-c5aPnOMW\u0026q=85\u0026s=0865e4207d765d07a769c29bc819adbe","dark":"https://mintcdn.com/lchnan/AXn0jsI-c5aPnOMW/logo/dark.png?fit=max\u0026auto=format\u0026n=AXn0jsI-c5aPnOMW\u0026q=85\u0026s=1bafffbe886c0ac13b0409dc90d446f8","href":"https://www.ycloud.com"},"favicon":"https://mintcdn.com/lchnan/AXn0jsI-c5aPnOMW/favicon.png?fit=max\u0026auto=format\u0026n=AXn0jsI-c5aPnOMW\u0026q=85\u0026s=1eed9e0b562f4b06368d2b8185b801b4","api":{"openapi":["openapi/endpoints/ycloud-api-v2.yaml","openapi/webhooks/testing-webhooks.yaml"],"params":{"expanded":"closed"},"playground":{"display":"interactive"},"examples":{"defaults":"required","prefill":true,"autogenerate":false},"url":"full"},"background":{"color":{"light":"#ffffff"}},"navbar":{"links":[{"href":"https://www.ycloud.com/customer-support","label":"Support"},{"href":"https://www.ycloud.com/pricing","label":"Pricing"}],"primary":{"type":"button","label":"Dashboard","href":"https://www.ycloud.com/console"}},"seo":{"indexing":"all"},"fonts":{"heading":{"family":"Inter","weight":650},"body":{"family":"Inter","weight":450}},"icons":{"library":"fontawesome"},"styling":{"codeblocks":{"theme":{"light":"github-light","dark":"github-dark"}},"latex":true},"errors":{"404":{"redirect":true}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"markdown":{"schema":true},"navigation":{"languages":[{"language":"en","default":true,"href":"en/documentation/overview"},{"language":"zh","href":"zh/documentation/overview"},{"language":"es","href":"es/documentation/overview"},{"language":"pt","href":"pt/documentation/overview"},{"language":"ru","href":"ru/documentation/overview"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"lchnan","hasAudioNarration":false,"actualSubdomain":"lchnan","customDomains":["docs.ycloud.com"],"gitSource":{"type":"github","owner":"ycloud-developers","repo":"ycloud_docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"collectionId":"38a7c79a-935e-44ce-8ac4-771d9347bc89","liveDeploymentHistoryId":"6ae201baf9cefd8f8d7a475b","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae201baf9cefd8f8d7a475b"},"feedback":{"thumbs":true,"agentFeedback":true},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6ae201baf9cefd8f8d7a475b","clientVersion":"0.0.4006","searchFilterCounts":[{"language":"en","tag":"Documentation","count":242},{"language":"es","tag":"Documentación","count":241},{"language":"pt","tag":"Documentação","count":241},{"language":"ru","tag":"Документация","count":241},{"language":"zh","tag":"产品文档","count":241},{"language":"default","tag":"API Reference","count":165},{"language":"default","tag":"Endpoints","count":165},{"language":"en","tag":"API Reference","count":68},{"language":"es","tag":"Referencia de la API","count":68},{"language":"pt","tag":"Referência da API","count":68},{"language":"ru","tag":"Справочник API","count":68},{"language":"zh","tag":"API 参考","count":68},{"language":"en","tag":"Guides","count":63},{"language":"es","tag":"Guías","count":63},{"language":"pt","tag":"Guias","count":63},{"language":"ru","tag":"Руководства","count":63},{"language":"zh","tag":"指南","count":63},{"language":"default","tag":"Meta Business Agent","count":63},{"language":"en","tag":"Channels","count":60},{"language":"es","tag":"Gestión de cuentas de WhatsApp","count":54},{"language":"pt","tag":"Gerenciamento de contas do WhatsApp","count":54},{"language":"ru","tag":"Управление аккаунтами WhatsApp","count":54},{"language":"zh","tag":"WhatsApp 账号管理","count":54},{"language":"en","tag":"Integrations","count":44},{"language":"es","tag":"Integraciones","count":44},{"language":"pt","tag":"Integrações","count":44},{"language":"ru","tag":"Интеграции","count":44},{"language":"zh","tag":"集成","count":44},{"language":"default","tag":"Configure","count":43},{"language":"en","tag":"WhatsApp Business Platform","count":40},{"language":"es","tag":"WhatsApp Business Platform","count":40},{"language":"pt","tag":"WhatsApp Business Platform","count":40},{"language":"ru","tag":"Платформа WhatsApp Business","count":40},{"language":"zh","tag":"WhatsApp 商业平台","count":40},{"language":"es","tag":"Canales","count":32},{"language":"pt","tag":"Canais","count":32},{"language":"ru","tag":"Каналы","count":32},{"language":"zh","tag":"渠道","count":32},{"language":"en","tag":"Examples","count":28},{"language":"en","tag":"WhatsApp Accounts Management","count":28},{"language":"es","tag":"Ejemplos","count":28},{"language":"pt","tag":"Exemplos","count":28},{"language":"ru","tag":"Примеры","count":28},{"language":"zh","tag":"示例","count":28},{"language":"en","tag":"Webhook examples","count":25},{"language":"en","tag":"Agents","count":25},{"language":"es","tag":"Ejemplos de Webhook","count":25},{"language":"es","tag":"Agentes","count":25},{"language":"pt","tag":"Exemplos de Webhook","count":25},{"language":"pt","tag":"Agentes","count":25},{"language":"ru","tag":"Примеры Webhook","count":25},{"language":"ru","tag":"Агенты","count":25},{"language":"zh","tag":"Webhook 示例","count":25},{"language":"zh","tag":"智能体","count":25},{"language":"default","tag":"WhatsApp Phone Numbers","count":15},{"language":"default","tag":"WhatsApp Groups","count":12},{"language":"default","tag":"Contacts","count":10},{"language":"default","tag":"Operate","count":10},{"language":"default","tag":"Connectors","count":10},{"language":"default","tag":"Onboard","count":9}],"searchSettings":{"isFiltersEnabled":true}},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"privacy":{"consentBanner":{"enabled":true}},"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"zh/api-reference/webhooks/test-webhooks","slug":"/zh/api-reference/webhooks/test-webhooks","pageMetadata":{"title":"测试 Webhook","sidebarTitle":"测试 Webhook","description":"发送示例 Webhook 载荷并检查事件架构 (schema)。","openapi":"openapi/webhooks/testing-webhooks.yaml POST /webhooks/ycloud","playground":"interactive","href":"/zh/api-reference/webhooks/test-webhooks"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"发送示例 Webhook 载荷并检查事件架构 (schema)。\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,p:`p`,pre:`pre`,span:`span`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{Card,CardGroup,CodeBlock,Heading,Note,Table}=_components;if(!Card)_missingMdxReference(`Card`,true);if(!CardGroup)_missingMdxReference(`CardGroup`,true);if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Note)_missingMdxReference(`Note`,true);if(!Table)_missingMdxReference(`Table`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`使用此参考信息检查 YCloud 发送到您应用程序的 Webhook 载荷。在请求构建器中选择指定命名示例以查看其字段。`}),`\n`,_jsx(_components.p,{children:`对于电话号码质量和账户移除事件,请选择以下示例:`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`事件类型`}),_jsx(_components.th,{children:`命名示例`}),_jsx(_components.th,{children:`载荷字段`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`whatsapp.phone_number.quality_updated`})}),_jsx(_components.td,{children:`WhatsApp 电话号码质量更新事件`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`whatsappPhoneNumber`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`whatsapp.business_account.deleted`})}),_jsx(_components.td,{children:`WhatsApp 商业账户已删除事件`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`whatsappBusinessAccount`})})]})]})]}),`\n`,_jsxs(_components.p,{children:[`对于质量更新,请在存在时检查 `,_jsx(_components.code,{children:`qualityRating`}),` 和 `,_jsx(_components.code,{children:`qualityUpdateEvent`}),`。请将电话号码的 `,_jsx(_components.code,{children:`messagingLimit`}),` 与描述所属业务资产组合共享额度的 `,_jsx(_components.code,{children:`whatsappBusinessManagerMessagingLimit`}),` 分开。示例值不是您账户的默认值。`]}),`\n`,_jsxs(_components.p,{children:[`对于账户删除事件,使用 `,_jsx(_components.code,{children:`whatsappBusinessAccount.id`}),` 识别账户。移除字段为可选项。保留未知的 `,_jsx(_components.code,{children:`removedReason`}),` 和 `,_jsx(_components.code,{children:`removedInitiatedBy`}),` 值。`,_jsx(_components.code,{children:`removedTime`}),` 记录的是接收到删除事件的时间,而不是账户被删除的确切时间。`]}),`\n`,_jsxs(_components.p,{children:[`本参考使用 `,_jsx(_components.code,{children:`https://example.com`}),` 作为保留占位符。针对您自己的测试,请在生成的请求中将其替换为您应用程序的 Webhook URL。您的应用程序托管此端点;YCloud 不托管 `,_jsx(_components.code,{children:`/webhooks/ycloud`}),`。`]}),`\n`,_jsx(Note,{children:_jsxs(_components.p,{children:[`发送示例载荷可测试您的接收方。它不会触发来自 YCloud 的\nWebhook 发送。示例 `,_jsx(_components.code,{children:`YCloud-Signature`}),` 是一个样例值;它\n不是已编辑载荷或您端点密钥的有效签名。`]})}),`\n`,_jsxs(_components.p,{children:[`在处理事件前请验证 `,_jsx(_components.code,{children:`YCloud-Signature`}),` 标头。有关设置和投递指南,请参阅 `,_jsx(_components.a,{href:`/zh/api-reference/guides/api-fundamentals/configure-webhooks`,children:`配置 Webhook`}),`。`]}),`\n`,_jsx(Heading,{level:`2`,id:`接收方响应`,children:`接收方响应`}),`\n`,_jsxs(_components.p,{children:[`在通过身份验证并持久接收事件后,返回任意 `,_jsx(_components.code,{children:`2xx`}),` 状态。异步处理耗时工作,以防 YCloud 重试您的应用程序已经接收的投递。`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`http`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light github-dark`,style:{backgroundColor:`#fff`,\"--shiki-dark-bg\":`#24292e`,color:`#24292e`,\"--shiki-dark\":`#e1e4e8`},language:`http`,children:_jsxs(_components.code,{language:`http`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#D73A49`,\"--shiki-dark\":`#F97583`},children:`HTTP`}),_jsx(_components.span,{style:{color:`#24292E`,\"--shiki-dark\":`#E1E4E8`},children:`/`}),_jsx(_components.span,{style:{color:`#005CC5`,\"--shiki-dark\":`#79B8FF`},children:`1.1`}),_jsx(_components.span,{style:{color:`#005CC5`,\"--shiki-dark\":`#79B8FF`},children:` 200`}),_jsx(_components.span,{style:{color:`#032F62`,\"--shiki-dark\":`#9ECBFF`},children:` OK`})]}),`\n`]})})}),`\n`,_jsxs(CardGroup,{cols:2,children:[_jsx(Card,{title:`配置 Webhook`,icon:`webhook`,href:`/zh/api-reference/guides/api-fundamentals/configure-webhooks`,children:_jsx(_components.p,{children:`创建端点、验证签名并处理重试。`})}),_jsx(Card,{title:`浏览带注解的示例`,icon:`brackets-curly`,href:`/zh/api-reference/guides/examples/webhook-examples/overview`,children:_jsx(_components.p,{children:`了解事件触发机制和特定场景的处理。`})})]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"codeStyling":{"theme":{"light":"github-light","dark":"github-dark"}},"config":{},"pageMetadata":{"title":"测试 Webhook","sidebarTitle":"测试 Webhook","description":"发送示例 Webhook 载荷并检查事件架构 (schema)。","openapi":"openapi/webhooks/testing-webhooks.yaml POST /webhooks/ycloud","playground":"interactive","href":"/zh/api-reference/webhooks/test-webhooks"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"接收方响应","slug":"接收方响应","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"summary":"Test webhooks","operationId":"test-webhooks","tags":["Webhook Payload Object"],"description":"发送示例 Webhook 载荷并检查事件架构 (schema)。","parameters":["6dd95048-c97e-4c3e-b3be-85492a96a6eb"],"requestBody":"a2768fe0-2127-4368-a135-e9c365bb1063","responses":{"200":"2be9be38-6829-40f7-8179-232a03f10be4"},"method":"post","type":"path","servers":["b4f58450-c5db-43b6-969c-9c2cdd4836a5"],"security":[],"path":"/webhooks/ycloud","baseUrlOptions":["https://example.com"],"title":"Test webhooks","codeSamples":[],"requiredOnlyExamples":true,"disableCodeSampleGeneration":true,"responseExampleType":"generated","prefillPlaygroundWithExample":true,"prefillPlaygroundExamples":[{"body.oneOf.2.type":"messenger.inbound_message.received","body.oneOf.2.id":"evt_0123456789abcdef01234567","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2026-10-20T02:00:00.000Z","body.oneOf.2.messengerInboundMessage.id":"1308528868252065793","body.oneOf.2.messengerInboundMessage.metaMessageId":"m_EXAMPLE_IN_001","body.oneOf.2.messengerInboundMessage.from":"100800000000000","body.oneOf.2.messengerInboundMessage.to":"422500000000000","body.oneOf.2.messengerInboundMessage.type":"text","body.oneOf.2.messengerInboundMessage.text.body":" Hello ","body.oneOf.2.messengerInboundMessage.sendTime":"2026-10-20T02:00:00.000Z","body.oneOf.2.messengerInboundMessage.createTime":"2026-10-20T02:00:00.100Z"},{"body.oneOf.2.type":"messenger.inbound_message.updated","body.oneOf.2.id":"evt_cdef0123456789abcdef0123","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2026-10-20T02:01:00.000Z","body.oneOf.2.messengerInboundMessage.id":"1308528868252065793","body.oneOf.2.messengerInboundMessage.metaMessageId":"m_EXAMPLE_IN_001","body.oneOf.2.messengerInboundMessage.from":"100800000000000","body.oneOf.2.messengerInboundMessage.to":"422500000000000","body.oneOf.2.messengerInboundMessage.type":"text","body.oneOf.2.messengerInboundMessage.text.body":" Hello, corrected ","body.oneOf.2.messengerInboundMessage.sendTime":"2026-10-20T02:00:00.000Z","body.oneOf.2.messengerInboundMessage.createTime":"2026-10-20T02:00:00.100Z","body.oneOf.2.messengerInboundMessage.editCount":2,"body.oneOf.2.messengerInboundMessage.editTime":"2026-10-20T02:01:00.000Z"},{"body.oneOf.2.type":"messenger.message.updated","body.oneOf.2.id":"evt_89abcdef0123456789abcdef","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2026-10-20T02:00:03.000Z","body.oneOf.2.messengerMessage.id":"1308528868252065792","body.oneOf.2.messengerMessage.from":"422500000000000","body.oneOf.2.messengerMessage.to":"100800000000000","body.oneOf.2.messengerMessage.type":"text","body.oneOf.2.messengerMessage.text.body":"How can I help you?","body.oneOf.2.messengerMessage.status":"read","body.oneOf.2.messengerMessage.createTime":"2026-10-20T02:00:00.000Z","body.oneOf.2.messengerMessage.updateTime":"2026-10-20T02:00:03.000Z","body.oneOf.2.messengerMessage.metaMessageId":"m_EXAMPLE_OUT_001","body.oneOf.2.messengerMessage.readTime":"2026-10-20T02:00:03.000Z"},{"body.oneOf.2.type":"messenger.message_reaction.updated","body.oneOf.2.id":"evt_abcdef0123456789abcdef01","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2026-10-20T02:00:04.000Z","body.oneOf.2.messengerMessageReaction.pageId":"422500000000000","body.oneOf.2.messengerMessageReaction.psid":"100800000000000","body.oneOf.2.messengerMessageReaction.metaMessageId":"m_EXAMPLE_OUT_001","body.oneOf.2.messengerMessageReaction.action":"react","body.oneOf.2.messengerMessageReaction.reaction":"love","body.oneOf.2.messengerMessageReaction.emoji":"❤️"},{"body.oneOf.2.type":"messenger.message_reaction.updated","body.oneOf.2.id":"evt_bcdef0123456789abcdef012","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2026-10-20T02:00:05.000Z","body.oneOf.2.messengerMessageReaction.pageId":"422500000000000","body.oneOf.2.messengerMessageReaction.psid":"100800000000000","body.oneOf.2.messengerMessageReaction.metaMessageId":"m_EXAMPLE_OUT_001","body.oneOf.2.messengerMessageReaction.action":"unreact"},{"body.oneOf.0.type":"whatsapp.echo_message.created","body.oneOf.0.whatsappMessage.id":"MESSAGE_ID","body.oneOf.0.whatsappMessage.wamid":"wamid.EXAMPLE","body.oneOf.0.whatsappMessage.wabaId":"WABA_ID","body.oneOf.0.whatsappMessage.from":"+12025550123","body.oneOf.0.whatsappMessage.to":"+12025550124","body.oneOf.0.whatsappMessage.recipientUserId":"GB.898232076600896","body.oneOf.0.whatsappMessage.type":"text","body.oneOf.0.whatsappMessage.text.body":"Hello! How can I help you?","body.oneOf.0.whatsappMessage.status":"sent","body.oneOf.0.whatsappMessage.createTime":"2026-09-09T02:00:00.000Z","body.oneOf.0.whatsappMessage.sendTime":"2026-09-09T02:00:00.000Z","body.oneOf.0.id":"evt_example_echo_text","body.oneOf.0.apiVersion":"v2","body.oneOf.0.createTime":"2026-09-09T02:00:00.000Z"},{"body.oneOf.0.type":"whatsapp.echo_message.created","body.oneOf.0.whatsappMessage.id":"IMAGE_MESSAGE_ID","body.oneOf.0.whatsappMessage.wamid":"wamid.IMAGE_EXAMPLE","body.oneOf.0.whatsappMessage.wabaId":"WABA_ID","body.oneOf.0.whatsappMessage.from":"+12025550123","body.oneOf.0.whatsappMessage.to":"+12025550124","body.oneOf.0.whatsappMessage.recipientUserId":"GB.898232076600896","body.oneOf.0.whatsappMessage.type":"image","body.oneOf.0.whatsappMessage.image.id":"MEDIA_ID","body.oneOf.0.whatsappMessage.image.mime_type":"image/jpeg","body.oneOf.0.whatsappMessage.status":"sent","body.oneOf.0.whatsappMessage.createTime":"2026-09-09T02:00:00.000Z","body.oneOf.0.whatsappMessage.sendTime":"2026-09-09T02:00:00.000Z","body.oneOf.0.id":"evt_example_echo_image","body.oneOf.0.apiVersion":"v2","body.oneOf.0.createTime":"2026-09-09T02:00:00.000Z"},{"body.oneOf.0.type":"whatsapp.echo_message.updated","body.oneOf.0.whatsappMessage.id":"MESSAGE_ID","body.oneOf.0.whatsappMessage.wamid":"wamid.EXAMPLE","body.oneOf.0.whatsappMessage.wabaId":"WABA_ID","body.oneOf.0.whatsappMessage.from":"+12025550123","body.oneOf.0.whatsappMessage.to":"+12025550124","body.oneOf.0.whatsappMessage.recipientUserId":"GB.898232076600896","body.oneOf.0.whatsappMessage.status":"delivered","body.oneOf.0.whatsappMessage.updateTime":"2026-09-09T02:00:01.000Z","body.oneOf.0.whatsappMessage.deliverTime":"2026-09-09T02:00:01.000Z","body.oneOf.0.id":"evt_example_echo_delivered","body.oneOf.0.apiVersion":"v2","body.oneOf.0.createTime":"2026-09-09T02:00:03.000Z"},{"body.oneOf.0.type":"whatsapp.echo_message.updated","body.oneOf.0.whatsappMessage.id":"MESSAGE_ID","body.oneOf.0.whatsappMessage.wamid":"wamid.EXAMPLE","body.oneOf.0.whatsappMessage.wabaId":"WABA_ID","body.oneOf.0.whatsappMessage.from":"+12025550123","body.oneOf.0.whatsappMessage.to":"+12025550124","body.oneOf.0.whatsappMessage.recipientUserId":"GB.898232076600896","body.oneOf.0.whatsappMessage.status":"read","body.oneOf.0.whatsappMessage.updateTime":"2026-09-09T02:00:02.000Z","body.oneOf.0.whatsappMessage.readTime":"2026-09-09T02:00:02.000Z","body.oneOf.0.id":"evt_example_echo_read","body.oneOf.0.apiVersion":"v2","body.oneOf.0.createTime":"2026-09-09T02:00:03.000Z"},{"body.oneOf.0.type":"whatsapp.echo_message.updated","body.oneOf.0.whatsappMessage.id":"MESSAGE_ID","body.oneOf.0.whatsappMessage.wamid":"wamid.EXAMPLE","body.oneOf.0.whatsappMessage.wabaId":"WABA_ID","body.oneOf.0.whatsappMessage.from":"+12025550123","body.oneOf.0.whatsappMessage.to":"+12025550124","body.oneOf.0.whatsappMessage.recipientUserId":"GB.898232076600896","body.oneOf.0.whatsappMessage.status":"sent","body.oneOf.0.whatsappMessage.updateTime":"2026-09-09T02:00:00.000Z","body.oneOf.0.whatsappMessage.sendTime":"2026-09-09T02:00:00.000Z","body.oneOf.0.id":"evt_example_echo_sent","body.oneOf.0.apiVersion":"v2","body.oneOf.0.createTime":"2026-09-09T02:00:03.000Z"},{"body.oneOf.0.type":"whatsapp.echo_message.updated","body.oneOf.0.whatsappMessage.id":"FAILED_MESSAGE_ID","body.oneOf.0.whatsappMessage.wamid":"wamid.FAILED_EXAMPLE","body.oneOf.0.whatsappMessage.wabaId":"WABA_ID","body.oneOf.0.whatsappMessage.from":"+12025550123","body.oneOf.0.whatsappMessage.to":"+12025550124","body.oneOf.0.whatsappMessage.recipientUserId":"GB.898232076600896","body.oneOf.0.whatsappMessage.status":"failed","body.oneOf.0.whatsappMessage.errorCode":"131000","body.oneOf.0.whatsappMessage.errorMessage":"Provider failure","body.oneOf.0.whatsappMessage.updateTime":"2026-09-09T02:00:03.000Z","body.oneOf.0.id":"evt_example_echo_failed","body.oneOf.0.apiVersion":"v2","body.oneOf.0.createTime":"2026-09-09T02:00:03.000Z"},{"body.oneOf.1.type":"whatsapp.meta_business_agent.handover.updated","body.oneOf.1.whatsappMetaBusinessAgent.agentId":"00000000-0000-4000-8000-000000000001","body.oneOf.1.whatsappMetaBusinessAgent.metaAgentId":"META_AGENT_ID","body.oneOf.1.whatsappMetaBusinessAgent.phoneNumberId":"PHONE_NUMBER_ID","body.oneOf.1.whatsappMetaBusinessAgent.wabaId":"WABA_ID","body.oneOf.1.whatsappMetaBusinessAgent.consumerPhoneNumber":"+12025550124","body.oneOf.1.whatsappMetaBusinessAgent.controlState":"APP_CONTROL_TAKEN","body.oneOf.1.whatsappMetaBusinessAgent.actor":"PREVIOUS_OWNER_APP_ID","body.oneOf.1.whatsappMetaBusinessAgent.reason":"customer_request","body.oneOf.1.whatsappMetaBusinessAgent.timestamp":1788919204000,"body.oneOf.1.id":"evt_example_agent_handover","body.oneOf.1.apiVersion":"v2","body.oneOf.1.createTime":"2026-09-09T02:00:04.000Z"},{"body.oneOf.2.type":"whatsapp.business_account.deleted","body.oneOf.2.id":"evt_business_account_deleted_123","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2026-05-26T12:00:00.000Z","body.oneOf.2.whatsappBusinessAccount.id":"whatsapp-business-account-id","body.oneOf.2.whatsappBusinessAccount.name":"Example business","body.oneOf.2.whatsappBusinessAccount.removedReason":"ACCOUNT_DISCONNECTED","body.oneOf.2.whatsappBusinessAccount.removedInitiatedBy":"USER","body.oneOf.2.whatsappBusinessAccount.removedTime":"2026-05-26T12:00:00.000Z"},{"body.oneOf.2.type":"whatsapp.phone_number.quality_updated","body.oneOf.2.id":"evt_phone_number_quality_updated_123","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2026-05-26T12:00:00.000Z","body.oneOf.2.whatsappPhoneNumber.id":"1234567890123456","body.oneOf.2.whatsappPhoneNumber.phoneNumber":"+16315551111","body.oneOf.2.whatsappPhoneNumber.displayPhoneNumber":"+1 631-555-1111","body.oneOf.2.whatsappPhoneNumber.wabaId":"whatsapp-business-account-id","body.oneOf.2.whatsappPhoneNumber.qualityRating":"GREEN","body.oneOf.2.whatsappPhoneNumber.messagingLimit":"TIER_1K","body.oneOf.2.whatsappPhoneNumber.whatsappBusinessManagerMessagingLimit":"TIER_2K","body.oneOf.2.whatsappPhoneNumber.qualityUpdateEvent":"ONBOARDING"},{"body.oneOf.2.type":"contact.attributes_changed","body.oneOf.2.id":"evt_1234567890","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2024-01-01T12:00:00.000Z","body.oneOf.2.contactAttributesChanged.id":"1824266594102064128","body.oneOf.2.contactAttributesChanged.updateTime":"2024-01-01T12:00:00.000Z","body.oneOf.2.contactAttributesChanged.changedAttributes.remark_name.oldValue":"Standard customer","body.oneOf.2.contactAttributesChanged.changedAttributes.remark_name.newValue":"Priority customer","body.oneOf.2.contactAttributesChanged.changedAttributes.email.oldValue":"john.doe@example.com","body.oneOf.2.contactAttributesChanged.changedAttributes.email.newValue":"johnny.doe@example.com","body.oneOf.2.contactAttributesChanged.changedAttributes.tags.oldValue":["premium","newsletter"],"body.oneOf.2.contactAttributesChanged.changedAttributes.tags.newValue":["premium","newsletter","vip"],"body.oneOf.2.contactAttributesChanged.changedAttributes.tags.extra.items.0.action":"ADDED","body.oneOf.2.contactAttributesChanged.changedAttributes.tags.extra.items.0.id":"686dd294334be8606a5bf312","body.oneOf.2.contactAttributesChanged.changedAttributes.tags.extra.items.0.value":"vip"},{"body.oneOf.2.type":"contact.created","body.oneOf.2.id":"evt_2345678901","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2024-01-01T12:00:00.000Z","body.oneOf.2.contactCreated.id":"1824266594102064128","body.oneOf.2.contactCreated.remarkName":"Priority customer","body.oneOf.2.contactCreated.nickName":"John Doe","body.oneOf.2.contactCreated.realName":"John Smith","body.oneOf.2.contactCreated.phoneNumber":"+16315551111","body.oneOf.2.contactCreated.countryCode":"US","body.oneOf.2.contactCreated.countryName":"United States","body.oneOf.2.contactCreated.email":"john.doe@example.com","body.oneOf.2.contactCreated.sourceType":"api","body.oneOf.2.contactCreated.sourceId":"import_batch_123","body.oneOf.2.contactCreated.sourceUrl":"https://example.com/signup","body.oneOf.2.contactCreated.lastSeen":"2024-01-01T11:59:00.000Z","body.oneOf.2.contactCreated.lastConnectedNumber":"+16315552222","body.oneOf.2.contactCreated.ownerEmail":"owner@example.com","body.oneOf.2.contactCreated.tags.items.0":"premium","body.oneOf.2.contactCreated.tags.items.1":"newsletter","body.oneOf.2.contactCreated.createTime":"2024-01-01T12:00:00.000Z","body.oneOf.2.contactCreated.updateTime":"2024-01-01T12:00:00.000Z","body.oneOf.2.contactCreated.blocked":false,"body.oneOf.2.contactCreated.customAttributes.attr1":"value1","body.oneOf.2.contactCreated.customAttributes.attr2":"value2","body.oneOf.2.contactCreated.customAttributes.attr3":123},{"body.oneOf.2.type":"contact.deleted","body.oneOf.2.id":"evt_3456789012","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2024-01-01T12:00:00.000Z","body.oneOf.2.contactDeleted.id":"1824266594102064128","body.oneOf.2.contactDeleted.remarkName":"Former customer","body.oneOf.2.contactDeleted.nickName":"John Doe","body.oneOf.2.contactDeleted.phoneNumber":"+16315551111","body.oneOf.2.contactDeleted.updateTime":"2024-01-01T12:00:00.000Z"},{"body.oneOf.2.type":"contact.note.created","body.oneOf.2.id":"evt_1234567890abcdef12345678","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2024-01-01T12:00:00.000Z","body.oneOf.2.contactNote.id":"6a3de646e18f344f743aaa4d","body.oneOf.2.contactNote.contactId":"1824266594102064128","body.oneOf.2.contactNote.username.oneOf.0":"alice_01","body.oneOf.2.contactNote.phoneNumber.oneOf.0":"+16315551111","body.oneOf.2.contactNote.content":"Customer prefers follow-up in the morning.","body.oneOf.2.contactNote.createTime":"2024-01-01T12:00:00.000Z","body.oneOf.2.contactNote.updateTime":"2024-01-01T12:00:00.000Z"},{"body.oneOf.2.type":"contact.note.updated","body.oneOf.2.id":"evt_2234567890abcdef12345678","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2024-01-02T12:00:00.000Z","body.oneOf.2.contactNote.id":"6a3de646e18f344f743aaa4d","body.oneOf.2.contactNote.contactId":"1824266594102064128","body.oneOf.2.contactNote.username.oneOf.0":"alice_01","body.oneOf.2.contactNote.phoneNumber.oneOf.0":"+16315551111","body.oneOf.2.contactNote.content":"Customer now prefers afternoon follow-up.","body.oneOf.2.contactNote.createTime":"2024-01-01T12:00:00.000Z","body.oneOf.2.contactNote.updateTime":"2024-01-02T12:00:00.000Z"},{"body.oneOf.2.type":"contact.note.deleted","body.oneOf.2.id":"evt_3234567890abcdef12345678","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2024-01-03T12:00:00.000Z","body.oneOf.2.contactNote.id":"6a3de646e18f344f743aaa4d","body.oneOf.2.contactNote.contactId":"1824266594102064128","body.oneOf.2.contactNote.username.oneOf.0":"alice_01","body.oneOf.2.contactNote.phoneNumber.oneOf.0":"+16315551111","body.oneOf.2.contactNote.content":"Customer now prefers afternoon follow-up.","body.oneOf.2.contactNote.createTime":"2024-01-01T12:00:00.000Z","body.oneOf.2.contactNote.updateTime":"2024-01-02T12:00:00.000Z"},{"body.oneOf.2.type":"contact.unsubscribe.created","body.oneOf.2.id":"evt_3456789012","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2024-01-01T12:00:00.000Z"},{"body.oneOf.2.type":"contact.unsubscribe.deleted","body.oneOf.2.id":"evt_3456789012","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2024-01-01T12:00:00.000Z"},{"body.oneOf.2.type":"whatsapp.phone_number.business_username_updated","body.oneOf.2.id":"evt_business_username_updated_123","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2026-05-26T12:00:00.000Z","body.oneOf.2.whatsappPhoneNumber.id":"1234567890123456","body.oneOf.2.whatsappPhoneNumber.phoneNumber":"+16315551111","body.oneOf.2.whatsappPhoneNumber.displayPhoneNumber":"+1 631-555-1111","body.oneOf.2.whatsappPhoneNumber.wabaId":"whatsapp-business-account-id","body.oneOf.2.whatsappPhoneNumber.businessUsername":"acme.support","body.oneOf.2.whatsappPhoneNumber.businessUsernameStatus":"active","body.oneOf.2.whatsappPhoneNumber.businessUsernameUpdatedAt":"2026-05-26T12:00:00.000Z"},{"body.oneOf.2.type":"whatsapp.phone_number.business_username_updated","body.oneOf.2.id":"evt_business_username_pending_123","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2026-05-26T12:30:00.000Z","body.oneOf.2.whatsappPhoneNumber.id":"1234567890123456","body.oneOf.2.whatsappPhoneNumber.phoneNumber":"+16315551111","body.oneOf.2.whatsappPhoneNumber.displayPhoneNumber":"+1 631-555-1111","body.oneOf.2.whatsappPhoneNumber.wabaId":"whatsapp-business-account-id","body.oneOf.2.whatsappPhoneNumber.businessUsername":"acme.support","body.oneOf.2.whatsappPhoneNumber.businessUsernameStatus":"reserved","body.oneOf.2.whatsappPhoneNumber.requestedBusinessUsername":"acme.help","body.oneOf.2.whatsappPhoneNumber.businessUsernameUpdatedAt":"2026-05-26T12:30:00.000Z"},{"body.oneOf.2.type":"whatsapp.template.correct_category_detection","body.oneOf.2.id":"evt_direct_send_category_123","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2026-09-17T08:00:00.000Z","body.oneOf.2.whatsappTemplate.wabaId":"whatsapp-business-account-id","body.oneOf.2.whatsappTemplate.name":"auto_generated_sample","body.oneOf.2.whatsappTemplate.language":"en_US","body.oneOf.2.whatsappTemplate.officialTemplateId":"official-template-id","body.oneOf.2.whatsappTemplate.category":"MARKETING","body.oneOf.2.whatsappTemplate.previousCategory":"UTILITY"},{"body.oneOf.2.type":"whatsapp.business_account.updated","body.oneOf.2.id":"evt_direct_send_restriction_123","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2026-09-17T08:00:00.000Z","body.oneOf.2.whatsappBusinessAccount.id":"whatsapp-business-account-id","body.oneOf.2.whatsappBusinessAccount.name":"Example business","body.oneOf.2.whatsappBusinessAccount.updateEvent":"ACCOUNT_RESTRICTION","body.oneOf.2.whatsappBusinessAccount.violationType":"DIRECT_SEND_UTILITY_CATEGORY_ABUSE_STRIKE_1","body.oneOf.2.whatsappBusinessAccount.restrictions.items.0.restrictionType":"RESTRICTED_DIRECT_SEND_UTILITY_TEMPLATES","body.oneOf.2.whatsappBusinessAccount.restrictions.items.0.expiration":"2026-09-24T08:00:00.000Z"},{"body.oneOf.2.type":"whatsapp.template.reviewed","body.oneOf.2.id":"evt_template_archived_123","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2024-01-01T12:00:00.000Z","body.oneOf.2.whatsappTemplate.wabaId":"whatsapp-business-account-id","body.oneOf.2.whatsappTemplate.name":"sample_whatsapp_template","body.oneOf.2.whatsappTemplate.language":"en","body.oneOf.2.whatsappTemplate.officialTemplateId":"official-template-id","body.oneOf.2.whatsappTemplate.category":"MARKETING","body.oneOf.2.whatsappTemplate.status":"ARCHIVED","body.oneOf.2.whatsappTemplate.createTime":"2024-01-01T12:00:00.000Z","body.oneOf.2.whatsappTemplate.updateTime":"2024-01-01T12:00:00.000Z","body.oneOf.2.whatsappTemplate.statusUpdateEvent":"ARCHIVED"},{"body.oneOf.2.type":"whatsapp.template.reviewed","body.oneOf.2.id":"evt_template_unarchived_123","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2024-01-01T12:00:00.000Z","body.oneOf.2.whatsappTemplate.wabaId":"whatsapp-business-account-id","body.oneOf.2.whatsappTemplate.name":"sample_whatsapp_template","body.oneOf.2.whatsappTemplate.language":"en","body.oneOf.2.whatsappTemplate.officialTemplateId":"official-template-id","body.oneOf.2.whatsappTemplate.category":"MARKETING","body.oneOf.2.whatsappTemplate.status":"APPROVED","body.oneOf.2.whatsappTemplate.createTime":"2024-01-01T12:00:00.000Z","body.oneOf.2.whatsappTemplate.updateTime":"2024-01-01T12:00:00.000Z","body.oneOf.2.whatsappTemplate.statusUpdateEvent":"UNARCHIVED"},{"body.oneOf.2.type":"whatsapp.call.connect","body.oneOf.2.id":"evt_call_connect_123","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2024-01-01T12:00:00.000Z","body.oneOf.2.callingConnect.id":"6757b723960b25543b9ecc66","body.oneOf.2.callingConnect.wacid":"wacid.HBgNNjI4MTM2MTkwNTEzMxUCABIYIEF","body.oneOf.2.callingConnect.phoneId":"461269257068832","body.oneOf.2.callingConnect.from":"+6281361905133","body.oneOf.2.callingConnect.to":"+6283138205150","body.oneOf.2.callingConnect.direction":"USER_INITIATED","body.oneOf.2.callingConnect.sdpType":"offer","body.oneOf.2.callingConnect.sdp":"v=0\r\no=- 1732169627243 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE audio\r\na=msid-semantic: WMS af3b01e3-eb42-4244-812e-db903c062ae7\r\na=ice-lite\r\nm=audio 3480 UDP/TLS/RTP/SAVPF 111 126\r\nc=IN IP4 31.13.87.130\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=candidate:785588535 1 udp 2122260223 31.13.87.130 3480 typ host generation 0 network-cost 50\r\na=candidate:1906600321 1 udp 2122262783 2a03:2880:f217:d0:face:b00c:0:699c 3480 typ host generation 0 network-cost 50\r\na=ice-ufrag:CvRXRnInnWhQzLIE\r\na=ice-pwd:HGXUGAFI8wK6seuVknBT2Q==\r\na=fingerprint:sha-256 FB:56:A1:C5:37:35:6C:5C:1B:05:23:B0:DD:BB:2E:C9:5F:E4:70:61:7B:D9:1D:09:84:76:46:23:12:38:B7:01\r\na=setup:actpass\r\na=mid:audio\r\na=sendrecv\r\na=msid:af3b01e3-eb42-4244-812e-db903c062ae7 WhatsAppTrack1\r\na=rtcp-mux\r\na=rtpmap:111 opus/48000/2\r\na=rtcp-fb:111 transport-cc\r\na=fmtp:111 maxaveragebitrate=20000;maxplaybackrate=16000;minptime=20;sprop-maxcapturerate=16000;useinbandfec=1\r\na=rtpmap:126 telephone-event/8000\r\na=maxptime:20\r\na=ptime:20\r\na=ssrc:659928310 cname:WhatsAppAudioStream1\r\n","body.oneOf.2.callingConnect.dialTime":1733826430000},{"body.oneOf.2.type":"whatsapp.call.terminate","body.oneOf.2.id":"evt_6757b889a5a42d369ef48481","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2024-12-10T03:42:01.822Z","body.oneOf.2.callingTerminate.id":"6757b889960b25543b9ecc67","body.oneOf.2.callingTerminate.wacid":"wacid.HBgNNjI4MTM2MTkwNTEzMxUCABIYIEFENjB","body.oneOf.2.callingTerminate.phoneId":"461269257068832","body.oneOf.2.callingTerminate.from":"+6281361905133","body.oneOf.2.callingTerminate.to":"+6283138205150","body.oneOf.2.callingTerminate.direction":"USER_INITIATED","body.oneOf.2.callingTerminate.startTime":1733734738000,"body.oneOf.2.callingTerminate.endTime":1733734771000,"body.oneOf.2.callingTerminate.duration":33,"body.oneOf.2.callingTerminate.status":"COMPLETED"},{"body.oneOf.2.type":"whatsapp.call.status.updated","body.oneOf.2.id":"evt_676e5ab57a9cb742d02d7646","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2024-12-27T07:41:28.422Z","body.oneOf.2.callingStatusUpdated.wacid":"wacid.HBgNNjI4MTM2MTkwNTEzMxUCABE","body.oneOf.2.callingStatusUpdated.status":"RINGING","body.oneOf.2.callingStatusUpdated.wabaId":"188234691048809","body.oneOf.2.callingStatusUpdated.phoneId":"461269257068832","body.oneOf.2.callingStatusUpdated.recipientPhone":"+6281361905133"},{"body.oneOf.2.type":"whatsapp.call.recording.updated","body.oneOf.2.id":"evt_call_recording_01JZ8K4V7H3P6Q9R2T5W8X1Y4Z","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2026-08-04T08:00:00.000Z","body.oneOf.2.callingRecording.wacid":"wacid.HBgNNjI4MTM2MTkwNTEzMxUCABE","body.oneOf.2.callingRecording.phoneId":"461269257068832","body.oneOf.2.callingRecording.mediaAssetId":"66b1f0c2e4b05c2d8f1a3b47","body.oneOf.2.callingRecording.status":"AVAILABLE"},{"body.oneOf.2.type":"whatsapp.call.transcription.updated","body.oneOf.2.id":"evt_call_transcription_01JZ8K5A9C4D7E0F3G6H9J2K5M","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2026-08-04T08:01:00.000Z","body.oneOf.2.callingTranscription.wacid":"wacid.HBgNNjI4MTM2MTkwNTEzMxUCABE","body.oneOf.2.callingTranscription.phoneId":"461269257068832","body.oneOf.2.callingTranscription.mediaAssetId":"66b1f0d9e4b05c2d8f1a3b48","body.oneOf.2.callingTranscription.status":"FAILED","body.oneOf.2.callingTranscription.error.code":"CALLING_TRANSCRIPTION_PROCESSING_FAILED","body.oneOf.2.callingTranscription.error.retryable":false},{"body.oneOf.2.type":"whatsapp.group.lifecycle_update","body.oneOf.2.id":"evt_group_lifecycle_123","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2026-05-13T00:00:00.000Z","body.oneOf.2.whatsappGroup.wabaId":"123456789012345","body.oneOf.2.whatsappGroup.displayPhoneNumber":"16315551111","body.oneOf.2.whatsappGroup.phoneNumberId":"1234567890123456","body.oneOf.2.whatsappGroup.field":"group_lifecycle_update","body.oneOf.2.whatsappGroup.type":"group_create","body.oneOf.2.whatsappGroup.requestId":"REQ_1","body.oneOf.2.whatsappGroup.status":"created","body.oneOf.2.whatsappGroup.groupId":"120363345678901234@g.us","body.oneOf.2.whatsappGroup.inviteLink":"https://chat.whatsapp.com/AbCdEfGhIjK","body.oneOf.2.whatsappGroup.subject":"New Purchase Inquiry","body.oneOf.2.whatsappGroup.description":"Group for purchase inquiries.","body.oneOf.2.whatsappGroup.joinApprovalMode":"auto_approve","body.oneOf.2.whatsappGroup.webhookTime":"2026-05-13T00:00:00.000Z","body.oneOf.2.whatsappGroup.dedupeKey":"123456789012345|REQ_1|group_lifecycle_update|group_create|created"},{"body.oneOf.2.type":"whatsapp.group.participants_update","body.oneOf.2.id":"evt_group_participants_123","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2026-05-13T00:00:00.000Z","body.oneOf.2.whatsappGroup.wabaId":"123456789012345","body.oneOf.2.whatsappGroup.field":"group_participants_update","body.oneOf.2.whatsappGroup.type":"group_participants_add","body.oneOf.2.whatsappGroup.status":"added","body.oneOf.2.whatsappGroup.groupId":"120363345678901234@g.us","body.oneOf.2.whatsappGroup.waId":"16315551111","body.oneOf.2.whatsappGroup.recipientUserId":"US.1234","body.oneOf.2.whatsappGroup.parentRecipientUserId":"US.parent123","body.oneOf.2.whatsappGroup.customerProfile.name":"John Doe","body.oneOf.2.whatsappGroup.customerProfile.username":"john_doe","body.oneOf.2.whatsappGroup.addedParticipants.items.0.input":"US.1234","body.oneOf.2.whatsappGroup.addedParticipants.items.0.waId":"16315551111","body.oneOf.2.whatsappGroup.addedParticipants.items.0.recipientUserId":"US.1234","body.oneOf.2.whatsappGroup.addedParticipants.items.0.parentRecipientUserId":"US.parent123","body.oneOf.2.whatsappGroup.addedParticipants.items.0.customerProfile.name":"John Doe","body.oneOf.2.whatsappGroup.addedParticipants.items.0.customerProfile.username":"john_doe","body.oneOf.2.whatsappGroup.webhookTime":"2026-05-13T00:00:00.000Z"},{"body.oneOf.2.type":"whatsapp.group.settings_update","body.oneOf.2.id":"evt_group_settings_123","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2026-05-13T00:00:00.000Z","body.oneOf.2.whatsappGroup.wabaId":"123456789012345","body.oneOf.2.whatsappGroup.field":"group_settings_update","body.oneOf.2.whatsappGroup.type":"group_settings_update","body.oneOf.2.whatsappGroup.requestId":"REQ_2","body.oneOf.2.whatsappGroup.status":"updated","body.oneOf.2.whatsappGroup.groupId":"120363345678901234@g.us","body.oneOf.2.whatsappGroup.subject":"Updated Purchase Inquiry","body.oneOf.2.whatsappGroup.description":"Updated group description.","body.oneOf.2.whatsappGroup.settings.items.0.name":"group_subject","body.oneOf.2.whatsappGroup.settings.items.0.text":"Updated Purchase Inquiry","body.oneOf.2.whatsappGroup.settings.items.0.updateSuccessful":true,"body.oneOf.2.whatsappGroup.settings.items.1.name":"group_description","body.oneOf.2.whatsappGroup.settings.items.1.text":"Updated group description.","body.oneOf.2.whatsappGroup.settings.items.1.updateSuccessful":true,"body.oneOf.2.whatsappGroup.webhookTime":"2026-05-13T00:00:00.000Z"},{"body.oneOf.2.type":"whatsapp.group.status_update","body.oneOf.2.id":"evt_group_status_123","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2026-05-13T00:00:00.000Z","body.oneOf.2.whatsappGroup.wabaId":"123456789012345","body.oneOf.2.whatsappGroup.field":"group_status_update","body.oneOf.2.whatsappGroup.type":"group_suspend","body.oneOf.2.whatsappGroup.status":"suspended","body.oneOf.2.whatsappGroup.groupId":"120363345678901234@g.us","body.oneOf.2.whatsappGroup.webhookTime":"2026-05-13T00:00:00.000Z"},{"body.oneOf.2.type":"whatsapp.smb.message.created","body.oneOf.2.id":"evt_example_smb_created","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2026-10-09T08:00:00.000Z","body.oneOf.2.whatsappMessage.id":"MESSAGE_ID","body.oneOf.2.whatsappMessage.wabaId":"WABA_ID","body.oneOf.2.whatsappMessage.from":"+16315551111","body.oneOf.2.whatsappMessage.wamid":"wamid.EXAMPLE","body.oneOf.2.whatsappMessage.to":"+16315552222","body.oneOf.2.whatsappMessage.type":"text","body.oneOf.2.whatsappMessage.text.body":"Your order is ready for pickup.","body.oneOf.2.whatsappMessage.status":"sent","body.oneOf.2.whatsappMessage.createTime":"2026-10-08T12:00:00.000Z","body.oneOf.2.whatsappMessage.sendTime":"2026-10-08T12:00:00.000Z"},{"body.oneOf.2.type":"whatsapp.smb.message.echoes","body.oneOf.2.id":"evt_example_smb_echoes","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2026-10-09T08:00:00.000Z","body.oneOf.2.whatsappMessage.id":"MESSAGE_ID","body.oneOf.2.whatsappMessage.wabaId":"WABA_ID","body.oneOf.2.whatsappMessage.from":"+16315551111","body.oneOf.2.whatsappMessage.wamid":"wamid.EXAMPLE","body.oneOf.2.whatsappMessage.to":"+16315552222","body.oneOf.2.whatsappMessage.toUserId":"US.13491208655302741918","body.oneOf.2.whatsappMessage.toParentUserId":"US.ENT.11815799212886844830","body.oneOf.2.whatsappMessage.customerProfile.username":"example_customer","body.oneOf.2.whatsappMessage.type":"text","body.oneOf.2.whatsappMessage.text.body":"Your order is ready for pickup.","body.oneOf.2.whatsappMessage.status":"sent","body.oneOf.2.whatsappMessage.createTime":"2026-10-08T12:00:00.000Z","body.oneOf.2.whatsappMessage.sendTime":"2026-10-08T12:00:00.000Z"},{"body.oneOf.2.type":"whatsapp.smb.history","body.oneOf.2.id":"evt_example_smb_history_inbound","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2026-10-09T08:00:00.000Z","body.oneOf.2.phase":1,"body.oneOf.2.progress":40,"body.oneOf.2.whatsappInboundMessage.id":"INBOUND_MESSAGE_ID","body.oneOf.2.whatsappInboundMessage.wamid":"wamid.INBOUND_EXAMPLE","body.oneOf.2.whatsappInboundMessage.wabaId":"WABA_ID","body.oneOf.2.whatsappInboundMessage.from":"+16315552222","body.oneOf.2.whatsappInboundMessage.customerProfile.name":"Example customer","body.oneOf.2.whatsappInboundMessage.to":"+16315551111","body.oneOf.2.whatsappInboundMessage.sendTime":"2026-10-08T12:00:00.000Z","body.oneOf.2.whatsappInboundMessage.type":"text","body.oneOf.2.whatsappInboundMessage.text.body":"What time can I collect my order?"},{"body.oneOf.2.type":"whatsapp.smb.history","body.oneOf.2.id":"evt_example_smb_history_outbound","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2026-10-09T08:00:00.000Z","body.oneOf.2.whatsappMessage.id":"MESSAGE_ID","body.oneOf.2.whatsappMessage.wabaId":"WABA_ID","body.oneOf.2.whatsappMessage.from":"+16315551111","body.oneOf.2.whatsappMessage.wamid":"wamid.EXAMPLE","body.oneOf.2.whatsappMessage.to":"+16315552222","body.oneOf.2.whatsappMessage.type":"text","body.oneOf.2.whatsappMessage.text.body":"Your order is ready for pickup.","body.oneOf.2.whatsappMessage.status":"sent","body.oneOf.2.whatsappMessage.createTime":"2026-10-08T12:00:00.000Z","body.oneOf.2.whatsappMessage.sendTime":"2026-10-08T12:00:00.000Z","body.oneOf.2.phase":1,"body.oneOf.2.progress":60},{"body.oneOf.2.type":"whatsapp.smb.history","body.oneOf.2.id":"evt_example_smb_history_progress","body.oneOf.2.apiVersion":"v2","body.oneOf.2.createTime":"2026-10-09T08:00:00.000Z","body.oneOf.2.phase":1,"body.oneOf.2.progress":73}],"urlDisplay":"full"},"dependencies":{"parameters":{"6dd95048-c97e-4c3e-b3be-85492a96a6eb":{"name":"YCloud-Signature","in":"header","required":false,"schema":{"type":"string","example":"t=1654084800,s=8eb70f2acb056c2119acbee8fdd98a889021d9c268bc9ad248a4182c40e31119","isRequired":false,"uniqueKey":"","typeLabel":"string"}}},"requestBody":{"content":{"application/json":{"schema":{"oneOf":[{"type":"object","description":"Represents a webhook event payload.\nEvery event contains certain common properties: `id`, `type`, `apiVersion`, `createTime`.\nEach event may also contain some properties unique to the event. For example, `sms` is returned when `type` is `sms.message.updated`.","required":["id","type","apiVersion","createTime","whatsappMessage"],"properties":{"type":{"type":"string","description":"Type of event.","enum":["whatsapp.echo_message.created","whatsapp.echo_message.updated"],"x-enum-descriptions":["Occurs when a contact's attributes are changed.","Occurs when a contact is created.","Occurs when a contact is deleted.","Occurs when a contact unsubscribes from messages.","Occurs when a contact resumes subscription to messages.","Occurs when an email delivery status is updated, and the status changes to `delivered` or `failed`.","Occurs when an SMS message status is updated, and the status changes to `delivered` or `undelivered`.","Occurs when an SMS inbound message is received, which means a user replies to your message.","Occurs when a voice message status is updated, and the status changes to `delivered` or `undelivered`.","Occurs when a WhatsApp Business Account is deleted.","Occurs when a WhatsApp Business Account has been reviewed.","Occurs when a policy violation happened, WhatsApp Business Account has been banned and more.","Occurs when a WhatsApp inbound message is received.","Occurs when a WhatsApp outbound message status is updated, and the status changes to `sent`, `failed`, `delivered`, or `read`.","Occurs when a WhatsApp group is created or deleted, including successful and failed results.","Occurs when WhatsApp group participants or join requests are updated.","Occurs when WhatsApp group settings are updated, including successful and failed results.","Occurs when a WhatsApp group suspension status is updated.","Occurs when a WhatsApp business phone number is deleted.","Occurs when a WhatsApp business phone number's name has been approved or rejected.","Occurs when a WhatsApp business phone number's quality-related status is updated, and the status changes to `GREEN`, `YELLOW`, or `RED`.","Occurs when a WhatsApp business phone number's Business Username is updated.","Occurs when a WhatsApp template category is updated.","Occurs when Meta detects non-utility content in Utility Direct Send. Subscribe through the webhook endpoint API.","Occurs when a WhatsApp template quality rating is updated.","Occurs when a WhatsApp template status is updated, and the status changes to `REJECTED`, `APPROVED`, `PAUSED`, `DISABLED`, `IN_APPEAL`, or `ARCHIVED`.","Occurs when a WhatsApp call is connected.","Occurs when a WhatsApp call is terminated.","Occurs when a WhatsApp call status is updated.","Occurs when an API-sourced WhatsApp call recording becomes available or permanently fails.","Occurs when an API-sourced WhatsApp call transcription becomes available or permanently fails.","Occurs when a WhatsApp flow status is updated.","Occurs when a WhatsApp payment transaction changes.","Occurs when a WhatsApp user stops marketing messages or a WhatsApp user resumes marketing messages.","Occurs when a contact note is created.","Occurs when a contact note is updated.","Occurs when a contact note is independently deleted. Contact deletion does not emit this event for cascaded notes.","Occurs when an outbound echo message is recorded for a Public REST API Agent.","Occurs when an outbound echo status is received for a Public REST API Agent; late lower-ranked statuses can also be delivered.","Occurs when a supported handover callback transfers control away from a Public REST API Agent. Does not confirm Inbox assignment.","Occurs when WhatsApp Business app sync history message.","Occurs when WhatsApp Business app send message.","Occurs when WhatsApp Business app sends a message echo.","Occurs when an ordinary Messenger text message is received from a customer.","Occurs when a customer edits a saved Messenger inbound text message.","Occurs when a saved ordinary Messenger outbound message snapshot is available, including submission results and matched receipts.","Occurs when a customer reacts to or removes a reaction from a Messenger message."],"isRequired":true,"uniqueKey":"oneOf.0.type","typeLabel":"enum\u003cstring>"},"whatsappMessage":{"type":"object","description":"Included when `type` is `whatsapp.message.updated`, `whatsapp.smb.message.created`, or when `type` is `whatsapp.smb.history` for an outbound history message. Also included for `whatsapp.echo_message.created` and `whatsapp.echo_message.updated`, where the Agent echo subset applies. It is omitted for a metadata-only history chunk.","required":["id"],"properties":{"id":{"type":"string","description":"YCloud message ID. Use it to correlate created and updated echo events.","isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.id","typeLabel":"string"},"wamid":{"type":"string","description":"The original message ID on WhatsApp's platform, when available.","example":"wamid.EXAMPLE","uniqueKey":"oneOf.0.whatsappMessage.wamid","typeLabel":"string"},"wabaId":{"type":"string","description":"WhatsApp Business Account ID from the source callback, when available.","example":"WABA_ID","uniqueKey":"oneOf.0.whatsappMessage.wabaId","typeLabel":"string"},"from":{"type":"string","description":"Business sender number in E.164 format, when available.","example":"+12025550123","uniqueKey":"oneOf.0.whatsappMessage.from","typeLabel":"string"},"to":{"type":"string","description":"Recipient number in E.164 format when the callback identifies the customer by phone number.","example":"+12025550124","uniqueKey":"oneOf.0.whatsappMessage.to","typeLabel":"string"},"recipientUserId":{"type":"string","description":"Recipient WhatsApp Business-scoped user ID (BSUID), when supplied by the callback.","example":"GB.898232076600896","uniqueKey":"oneOf.0.whatsappMessage.recipientUserId","typeLabel":"string"},"parentRecipientUserId":{"type":"string","description":"Recipient parent WhatsApp Business-scoped user ID, when supplied by the callback.","example":"GB.ENT.898232076600896","uniqueKey":"oneOf.0.whatsappMessage.parentRecipientUserId","typeLabel":"string"},"type":{"type":"string","description":"Message type copied from a supported provider callback. Current values include text, interactive, image, video, audio, document, sticker, location, contacts, and reaction. Clients should tolerate future values.","example":"text","uniqueKey":"oneOf.0.whatsappMessage.type","typeLabel":"string"},"text":{"type":"object","description":"WhatsApp Message Text Object.","required":["body"],"properties":{"body":{"type":"string","description":"Required for text messages.\nThe text of the text message which can contain URLs which begin with http:// or https:// and formatting. See available formatting options here.\nIf you include URLs in your text and want to include a preview box in text messages (preview_url: true), make sure the URL starts with http:// or https:// — https:// URLs are preferred. You must include a hostname, since IP addresses will not be matched.\nMaximum length: 4096 characters.","maxLength":4096,"isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.text.body","typeLabel":"string"},"preview_url":{"type":"boolean","description":"By default, WhatsApp recognizes URLs and makes them clickable, but you can also include a preview box with more information about the link. Set this field to true if you want to include a URL preview box.\nThe majority of the time, the receiver will see a URL they can click on when you send an URL, set preview_url to true, and provide a body object with a http or https link.\nURL previews are only rendered after one of the following has happened:\n- The business has sent a message template to the user.\n- The user initiates a conversation with a \"click to chat\" link.\n- The user adds the business phone number to their address book and initiates a conversation.\nDefault: `false`.","uniqueKey":"oneOf.0.whatsappMessage.text.preview_url","typeLabel":"boolean"}},"uniqueKey":"oneOf.0.whatsappMessage.text","typeLabel":"object"},"image":{"type":"object","description":"Media metadata copied from a Meta Business Agent echo callback.","properties":{"id":{"type":"string","description":"Provider media ID, when supplied by the callback.","uniqueKey":"oneOf.0.whatsappMessage.image.id","typeLabel":"string"},"link":{"type":"string","description":"Provider media URL, when supplied by the callback.","uniqueKey":"oneOf.0.whatsappMessage.image.link","typeLabel":"string"},"caption":{"type":"string","description":"Media caption, when supplied by the callback.","uniqueKey":"oneOf.0.whatsappMessage.image.caption","typeLabel":"string"},"filename":{"type":"string","description":"Original filename, when supplied by the callback.","uniqueKey":"oneOf.0.whatsappMessage.image.filename","typeLabel":"string"},"mime_type":{"type":"string","description":"Provider MIME type copied from the callback.","example":"image/jpeg","uniqueKey":"oneOf.0.whatsappMessage.image.mime_type","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.image","typeLabel":"object"},"video":{"type":"object","description":"Media metadata copied from a Meta Business Agent echo callback.","properties":{"id":{"type":"string","description":"Provider media ID, when supplied by the callback.","uniqueKey":"oneOf.0.whatsappMessage.video.id","typeLabel":"string"},"link":{"type":"string","description":"Provider media URL, when supplied by the callback.","uniqueKey":"oneOf.0.whatsappMessage.video.link","typeLabel":"string"},"caption":{"type":"string","description":"Media caption, when supplied by the callback.","uniqueKey":"oneOf.0.whatsappMessage.video.caption","typeLabel":"string"},"filename":{"type":"string","description":"Original filename, when supplied by the callback.","uniqueKey":"oneOf.0.whatsappMessage.video.filename","typeLabel":"string"},"mime_type":{"type":"string","description":"Provider MIME type copied from the callback.","example":"image/jpeg","uniqueKey":"oneOf.0.whatsappMessage.video.mime_type","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.video","typeLabel":"object"},"audio":{"type":"object","description":"Media metadata copied from a Meta Business Agent echo callback.","properties":{"id":{"type":"string","description":"Provider media ID, when supplied by the callback.","uniqueKey":"oneOf.0.whatsappMessage.audio.id","typeLabel":"string"},"link":{"type":"string","description":"Provider media URL, when supplied by the callback.","uniqueKey":"oneOf.0.whatsappMessage.audio.link","typeLabel":"string"},"caption":{"type":"string","description":"Media caption, when supplied by the callback.","uniqueKey":"oneOf.0.whatsappMessage.audio.caption","typeLabel":"string"},"filename":{"type":"string","description":"Original filename, when supplied by the callback.","uniqueKey":"oneOf.0.whatsappMessage.audio.filename","typeLabel":"string"},"mime_type":{"type":"string","description":"Provider MIME type copied from the callback.","example":"image/jpeg","uniqueKey":"oneOf.0.whatsappMessage.audio.mime_type","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.audio","typeLabel":"object"},"document":{"type":"object","description":"Media metadata copied from a Meta Business Agent echo callback.","properties":{"id":{"type":"string","description":"Provider media ID, when supplied by the callback.","uniqueKey":"oneOf.0.whatsappMessage.document.id","typeLabel":"string"},"link":{"type":"string","description":"Provider media URL, when supplied by the callback.","uniqueKey":"oneOf.0.whatsappMessage.document.link","typeLabel":"string"},"caption":{"type":"string","description":"Media caption, when supplied by the callback.","uniqueKey":"oneOf.0.whatsappMessage.document.caption","typeLabel":"string"},"filename":{"type":"string","description":"Original filename, when supplied by the callback.","uniqueKey":"oneOf.0.whatsappMessage.document.filename","typeLabel":"string"},"mime_type":{"type":"string","description":"Provider MIME type copied from the callback.","example":"image/jpeg","uniqueKey":"oneOf.0.whatsappMessage.document.mime_type","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.document","typeLabel":"object"},"sticker":{"type":"object","description":"Media metadata copied from a Meta Business Agent echo callback.","properties":{"id":{"type":"string","description":"Provider media ID, when supplied by the callback.","uniqueKey":"oneOf.0.whatsappMessage.sticker.id","typeLabel":"string"},"link":{"type":"string","description":"Provider media URL, when supplied by the callback.","uniqueKey":"oneOf.0.whatsappMessage.sticker.link","typeLabel":"string"},"caption":{"type":"string","description":"Media caption, when supplied by the callback.","uniqueKey":"oneOf.0.whatsappMessage.sticker.caption","typeLabel":"string"},"filename":{"type":"string","description":"Original filename, when supplied by the callback.","uniqueKey":"oneOf.0.whatsappMessage.sticker.filename","typeLabel":"string"},"mime_type":{"type":"string","description":"Provider MIME type copied from the callback.","example":"image/jpeg","uniqueKey":"oneOf.0.whatsappMessage.sticker.mime_type","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.sticker","typeLabel":"object"},"location":{"type":"object","description":"Use for `location` messages.","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","format":"double","description":"Latitude of the location.","isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.location.latitude","typeLabel":"number\u003cdouble>"},"longitude":{"type":"number","format":"double","description":"Longitude of the location.","isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.location.longitude","typeLabel":"number\u003cdouble>"},"name":{"type":"string","description":"Name of the location.","uniqueKey":"oneOf.0.whatsappMessage.location.name","typeLabel":"string"},"address":{"type":"string","description":"Address of the location. Only displayed if `name` is present.","uniqueKey":"oneOf.0.whatsappMessage.location.address","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.location","typeLabel":"object"},"interactive":{"type":"object","description":"Use for `interactive` messages.","properties":{"type":{"type":"string","description":"**Required.**\nThe type of interactive message you want to send.\n- `button`: Use for Reply Buttons.\n- `list`: Use for List Messages.\n- `cta_url`: Use for Call-To-Action (CTA) URL Button Messages.\n- `product`: Use for Single Product Messages.\n- `product_list`: Use for Multi-Product Messages.\n- `catalog_message`: Use for Catalog Messages.\n- `location_request_message`: Use for Location Request Messages.\n- `order_details`: Use for Order Details Messages.\n- `order_status`: Use for Order Status Messages.\n- `voice_call`: Use for Voice Call Messages.\n- `flow`: Use for Flow Messages.","enum":["button","list","cta_url","product","product_list","catalog_message","location_request_message","order_details","order_status","voice_call","flow"],"uniqueKey":"oneOf.0.whatsappMessage.interactive.type","typeLabel":"enum\u003cstring>"},"action":{"type":"object","description":"**Required.**\nAction you want the user to perform after reading the `interactive` message.","properties":{"buttons":{"type":"array","description":"Required for Reply Buttons. You can have up to 3 buttons.","maxItems":3,"items":{"type":"object","description":"A button object in `interactive` messages.","properties":{"type":{"type":"string","description":"Only supported type is `reply` (for Reply Button).","enum":["reply"],"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.buttons.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"reply":{"type":"object","properties":{"title":{"type":"string","description":"Button title. It cannot be an empty string and must be unique within the message. Emojis are supported, markdown is not. Maximum length: 20 characters.","maxLength":20,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.buttons.items.[INDEX].reply.title","typeLabel":"string"},"id":{"type":"string","description":"Unique identifier for your button. This ID is returned in the webhook when the button is clicked by the user. Maximum length: 256 characters. You cannot have leading or trailing spaces when setting the ID.","maxLength":256,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.buttons.items.[INDEX].reply.id","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.buttons.items.[INDEX].reply","typeLabel":"object"}},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.buttons.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.buttons","typeLabel":"object[]"},"button":{"type":"string","description":"Required for List Messages. Button content. It cannot be an empty string and must be unique within the message. Emojis are supported, markdown is not. Maximum length: 20 characters.","maxLength":20,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.button","typeLabel":"string"},"catalog_id":{"type":"string","description":"Required for Single Product Messages and Multi-Product Messages.\nUnique identifier of the Facebook catalog linked to your WhatsApp Business Account. This ID can be retrieved via the [Meta Commerce Manager](https://business.facebook.com/commerce).","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.catalog_id","typeLabel":"string"},"product_retailer_id":{"type":"string","description":"Required for Single Product Messages and Multi-Product Messages.\nUnique identifier of the product in a catalog.","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.product_retailer_id","typeLabel":"string"},"sections":{"type":"array","description":"Required for List Messages and Multi-Product Messages.\nArray of section objects. Minimum of 1, maximum of 10.","minItems":1,"maxItems":10,"items":{"type":"object","description":"WhatsApp Message Interactive Section Object.","properties":{"title":{"type":"string","description":"**Required if the message has more than one section.**\nTitle of the section. Maximum length: 24 characters.","maxLength":24,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.sections.items.[INDEX].title","typeLabel":"string"},"rows":{"type":"array","description":"Contains a list of rows. You can have a total of 10 rows across your sections.\nEach row must have a title (Maximum length: 24 characters) and an ID (Maximum length: 200 characters). You can add a description (Maximum length: 72 characters), but it is optional.","maxItems":10,"items":{"type":"object","properties":{"id":{"type":"string","description":"Unique row ID. Maximum length: 200 characters.","maxLength":200,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.sections.items.[INDEX].rows.items.[INDEX].id","typeLabel":"string"},"title":{"type":"string","description":"Row title content. Maximum length: 24 characters.","maxLength":24,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.sections.items.[INDEX].rows.items.[INDEX].title","typeLabel":"string"},"description":{"type":"string","description":"Row description content. Maximum length: 72 characters.","maxLength":72,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.sections.items.[INDEX].rows.items.[INDEX].description","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.sections.items.[INDEX].rows.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.sections.items.[INDEX].rows","typeLabel":"object[]"},"product_items":{"type":"array","description":"Required for Multi-Product Messages.\nArray of product objects. There is a minimum of 1 product per section and a maximum of 30 products across all sections.","minItems":1,"maxItems":30,"items":{"type":"object","properties":{"product_retailer_id":{"type":"string","description":"Required for Multi-Product Messages.\nUnique identifier of the product in a catalog.","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.sections.items.[INDEX].product_items.items.[INDEX].product_retailer_id","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.sections.items.[INDEX].product_items.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.sections.items.[INDEX].product_items","typeLabel":"object[]"}},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.sections.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.sections","typeLabel":"object[]"},"name":{"type":"string","description":"Action name.\nRequired for Call-To-Action (CTA) buttons.\n- `cta_url`: Use for Call-To-Action (CTA) URL buttons.\n- `catalog_message`: Use for Catalog Messages.\n- `send_location`: Use for Location Request buttons.\n- `flow`: Use for Flow buttons.\n- `review_and_pay`: Use for Order Details buttons.\n- `review_order`: Use for Order Status buttons.\n- `voice_call`: Use for Voice Call buttons.","enum":["cta_url","catalog_message","send_location","flow","review_and_pay","review_order","voice_call"],"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.name","typeLabel":"enum\u003cstring>"},"parameters":{"type":"object","description":"Action parameters.\nRequired for Call-To-Action (CTA) buttons.","properties":{"display_text":{"type":"string","description":"Text of the CTA URL button.\nMaximum length: 20 bytes.","maxLength":20,"example":"See Docs","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.display_text","typeLabel":"string"},"url":{"type":"string","description":"URL of the CTA URL button.","example":"https://developers.facebook.com/docs/whatsapp","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.url","typeLabel":"string"},"thumbnail_product_retailer_id":{"type":"string","description":"Item SKU number. Labeled as **Content ID** in the [Commerce Manager](https://business.facebook.com/commerce).\nThe thumbnail of this item will be used as the message's header image.","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.thumbnail_product_retailer_id","typeLabel":"string"},"flow_message_version":{"type":"string","description":"Use for `flow` buttons.\nValue must be \"3\".","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.flow_message_version","typeLabel":"string"},"flow_token":{"type":"string","description":"Use for `flow` buttons.\nFlow token that is generated by the business to serve as an identifier. Defaults to `unused`.","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.flow_token","typeLabel":"string"},"flow_id":{"type":"string","description":"Conditionally required for `flow` buttons. Unique ID of the Flow provided by WhatsApp. Cannot be used with the `flow_name` parameter.","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.flow_id","typeLabel":"string"},"flow_name":{"type":"string","description":"Conditionally required for `flow` buttons.\nThe name of the Flow that you created. Cannot be used with the `flow_id` parameter. Changing the Flow name will require updating this parameter to match the new name.","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.flow_name","typeLabel":"string"},"flow_cta":{"type":"string","description":"Required for `flow` buttons.\nText on the CTA button. For example: \"Open flow!\". Maximum length: 20 characters.","maxLength":20,"example":"Open flow!","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.flow_cta","typeLabel":"string"},"flow_action":{"type":"string","description":"Use for `flow` buttons.\nEither `navigate` or `data_exchange`. Defaults to `navigate`.","example":"navigate","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.flow_action","typeLabel":"string"},"flow_action_payload":{"type":"object","description":"Required if `flow_action` is `navigate`. Should be omitted otherwise.","properties":{"screen":{"type":"string","description":"The ID of the screen displayed first. It needs to be an **entry** screen.","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.flow_action_payload.screen","typeLabel":"string"},"data":{"type":"object","description":"Optional input data for the first screen of the Flow. If provided, this must be a non-empty object.","additionalProperties":{"type":"object","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.flow_action_payload.data.additionalProperties","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.flow_action_payload.data","typeLabel":"object"}},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.flow_action_payload","typeLabel":"object"},"reference_id":{"type":"string","description":"Required for `review_and_pay` buttons.\nUnique identifier for the order provided by the business. It is case sensitive and cannot be an empty string and can only contain English letters, numbers, underscores, dashes, or dots, and should not exceed 35 characters.\n\nThe `reference_id` must be unique for each order_details message for a given business. If there is a need to send multiple order_details messages for the same order, it is recommended to include a sequence number in the reference_id (for example, \"BM345A-12\") to ensure reference_id uniqueness.","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.reference_id","typeLabel":"string"},"type":{"type":"string","description":"Required for `review_and_pay` buttons.\nThe type of goods being paid for in this order. Current supported options are `digital-goods` and `physical-goods`.","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.type","typeLabel":"string"},"beneficiaries":{"type":"array","description":"Required for `review_and_pay` buttons.\nAn array of beneficiaries for this order.\nA beneficiary is an intended recipient for shipping the physical goods in the order.\nBeneficiary information isn't shown to users but is needed for legal and compliance reasons.","items":{"type":"object","description":"A beneficiary is an intended recipient for shipping the physical goods in the order.\nBeneficiary information isn't shown to users but is needed for legal and compliance reasons.","required":["name","address_line1","city","state","country","postal_code"],"properties":{"name":{"type":"string","description":"Name of the individual or business receiving the physical goods. Cannot exceed 200 characters.","maxLength":200,"isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.beneficiaries.items.[INDEX].name","typeLabel":"string"},"address_line1":{"type":"string","description":"Shipping address (Door/Tower Number, Street Name etc.). Cannot exceed 100 characters.","maxLength":100,"isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.beneficiaries.items.[INDEX].address_line1","typeLabel":"string"},"city":{"type":"string","description":"Name of the city.","isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.beneficiaries.items.[INDEX].city","typeLabel":"string"},"state":{"type":"string","description":"Name of the state.","isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.beneficiaries.items.[INDEX].state","typeLabel":"string"},"country":{"type":"string","description":"Name of the country.\nCurrently the only supported value is `India`.","isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.beneficiaries.items.[INDEX].country","typeLabel":"string"},"postal_code":{"type":"string","description":"6-digit zipcode of shipping address.","minLength":6,"maxLength":6,"isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.beneficiaries.items.[INDEX].postal_code","typeLabel":"string"},"address_line2":{"type":"string","description":"Shipping address (Landmark, Area, etc.). Cannot exceed 100 characters.","maxLength":100,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.beneficiaries.items.[INDEX].address_line2","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.beneficiaries.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.beneficiaries","typeLabel":"object[]"},"currency":{"type":"string","description":"Required for `review_and_pay` buttons.\nThe currency for this order.\nCurrently the only supported value is `INR`.","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.currency","typeLabel":"string"},"total_amount":{"type":"object","description":"Required for `review_and_pay` buttons.\nThe total amount for this order.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.total_amount.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.total_amount.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.total_amount.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.total_amount.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.total_amount","typeLabel":"object"},"order":{"type":"object","description":"Required for `review_and_pay` or `review_order` buttons.\n\nFor `review_and_pay` buttons, provides order `status`, `items`, `subtotal`, `tax`, etc.\n\nFor `review_order` buttons, provides only order `status` and `description`.","properties":{"status":{"type":"string","description":"Only supported value in the `order_details` message is `pending`.\nIn an `order_status` message, `status` can be: `pending`, `processing`, `partially_shipped`, `shipped`, `completed`, or `canceled`.","enum":["pending","processing","partially_shipped","shipped","completed","canceled"],"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.status","typeLabel":"enum\u003cstring>"},"type":{"type":"string","description":"Only supported value is `quick_pay`.\nWhen this field is passed in we hide the \"Review and Pay\" button and only show the \"Pay Now\" button in the order details bubble.","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.type","typeLabel":"string"},"catalog_id":{"type":"string","description":"Unique identifier of the Facebook catalog being used by the business.\nIf you do not provide this field, you must provide the following fields inside the items object: `country_of_origin`, `importer_name`, and `importer_address`.","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.catalog_id","typeLabel":"string"},"items":{"type":"array","description":"Array of items in the order.","items":{"type":"object","required":["name","amount","quantity"],"properties":{"name":{"type":"string","description":"The item's name to be displayed to the user. Cannot exceed 60 characters.","maxLength":60,"isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].name","typeLabel":"string"},"amount":{"type":"object","description":"The price per item.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].amount.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].amount.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].amount.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].amount.discount_program_name","typeLabel":"string"}},"isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].amount","typeLabel":"object"},"quantity":{"type":"integer","format":"int32","description":"The number of items in the order.","isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].quantity","typeLabel":"integer\u003cint32>"},"retailer_id":{"type":"string","description":"Content ID for an item in the order from your catalog.","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].retailer_id","typeLabel":"string"},"image":{"type":"object","description":"Custom image for the item to be displayed to the user.","properties":{"id":{"type":"string","description":"**Use this when media is uploaded to WhatsApp servers.**\n\nProvide the media object ID obtained from WhatsApp media upload API (https://docs.ycloud.com/reference/whatsapp_media-upload#/).\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence.","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].image.id","typeLabel":"string"},"link":{"type":"string","description":"**Use this when sending media directly from your server.**\n\nThe protocol and URL of the media to be sent. Use only with HTTP/HTTPS URLs.\n\nNote: WhatsApp Cloud API caches media resources for 10 minutes. To ensure latest content, add random query strings to the URL.\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence and `link` will be ignored.","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].image.link","typeLabel":"string"},"caption":{"type":"string","description":"Describes the specified `image`, `gif`, `video`, or `document` media. Not applicable in the `header` of `template` or `interactive` messages.","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].image.caption","typeLabel":"string"},"filename":{"type":"string","description":"Describes the filename for the specific document. Use only with `document` media.","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].image.filename","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].image","typeLabel":"object"},"sale_amount":{"type":"object","description":"The discounted price per item. This should be less than the original amount. If included, this field is used to calculate the subtotal amount.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].sale_amount.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].sale_amount.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].sale_amount.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].sale_amount.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].sale_amount","typeLabel":"object"},"country_of_origin":{"type":"string","description":"Required if `catalog_id` is not present.\nThe country of origin of the product.","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].country_of_origin","typeLabel":"string"},"importer_name":{"type":"string","description":"Required if `catalog_id` is not present.\nName of the importer company.","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].importer_name","typeLabel":"string"},"importer_address":{"type":"string","description":"Required if `catalog_id` is not present.\nAddress of importer company.","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].importer_address","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.\\items","typeLabel":"object[]"},"subtotal":{"type":"object","description":"The value **must be equal** to sum of `order.amount.value` * `order.amount.quantity`.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.subtotal.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.subtotal.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.subtotal.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.subtotal.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.subtotal","typeLabel":"object"},"tax":{"type":"object","description":"The tax information for this order.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.tax.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.tax.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.tax.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.tax.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.tax","typeLabel":"object"},"shipping":{"type":"object","description":"The shipping cost of the order.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.shipping.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.shipping.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.shipping.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.shipping.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.shipping","typeLabel":"object"},"discount":{"type":"object","description":"The discount amount for this order.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.discount.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.discount.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.discount.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.discount.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.discount","typeLabel":"object"},"expiration":{"type":"object","description":"Expiration for this order.","required":["timestamp"],"properties":{"timestamp":{"type":"string","description":"A string of UTC timestamp in seconds of time when order should expire. Minimum threshold is 300 seconds.","example":"1727438564","isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.expiration.timestamp","typeLabel":"string"},"description":{"type":"string","description":"Text explanation for expiration.","maxLength":120,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.expiration.description","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.expiration","typeLabel":"object"},"description":{"type":"string","description":"**Optional.**\nText for sharing status related information. Could be useful while sending cancellation. Max character limit is 120 characters.","maxLength":120,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order.description","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.order","typeLabel":"object"},"payment_settings":{"type":"array","description":"Required for `review_and_pay` buttons.\nPayment settings for the order.","items":{"type":"object","description":"Payment settings for the order.","required":["type","payment_gateway"],"properties":{"type":{"type":"string","description":"Must be set to `payment_gateway`.","example":"payment_gateway","isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].type","typeLabel":"string"},"payment_gateway":{"type":"object","description":"An object that describes payment account information.","required":["type","configuration_name"],"properties":{"type":{"type":"string","description":"Payment type.\nMust set this to `billdesk`, `razorpay`, `payu`, or `zaakpay`, if you have linked your BillDesk, Razorpay, PayU, or Zaakpay payment gateway to accept payments.","enum":["billdesk","razorpay","payu","zaakpay"],"isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.type","typeLabel":"enum\u003cstring>"},"configuration_name":{"type":"string","description":"The name of the pre-configured payment configuration to use for this order and must not exceed 60 characters.\nThis value must match with a payment configuration set up on the WhatsApp Business Manager.","maxLength":60,"isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.configuration_name","typeLabel":"string"},"billdesk":{"type":"object","description":"Additional info for BillDesk.\nUser-defined fields (extra) are used to store any information corresponding to a particular order. Each extra field has a maximum character limit of 120.","properties":{"additional_info1":{"type":"string","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.billdesk.additional_info1","typeLabel":"string"},"additional_info2":{"type":"string","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.billdesk.additional_info2","typeLabel":"string"},"additional_info3":{"type":"string","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.billdesk.additional_info3","typeLabel":"string"},"additional_info4":{"type":"string","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.billdesk.additional_info4","typeLabel":"string"},"additional_info5":{"type":"string","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.billdesk.additional_info5","typeLabel":"string"},"additional_info6":{"type":"string","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.billdesk.additional_info6","typeLabel":"string"},"additional_info7":{"type":"string","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.billdesk.additional_info7","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.billdesk","typeLabel":"object"},"payu":{"type":"object","description":"Additional info for PayU.\nUser-defined fields (udf) are used to store any information corresponding to a particular order. Each UDF field has a maximum character limit of 255.","properties":{"udf1":{"type":"string","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.payu.udf1","typeLabel":"string"},"udf2":{"type":"string","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.payu.udf2","typeLabel":"string"},"udf3":{"type":"string","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.payu.udf3","typeLabel":"string"},"udf4":{"type":"string","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.payu.udf4","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.payu","typeLabel":"object"},"razorpay":{"type":"object","description":"Additional info for Razorpay.","properties":{"receipt":{"type":"string","description":"Receipt number that corresponds to this order, set for your internal reference.\nMaximum length of 40 characters supported with minimum length greater than 0 characters.","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.razorpay.receipt","typeLabel":"string"},"notes":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.razorpay.notes.additionalProperties","typeLabel":"string"},"description":"The object can be key value pairs with maximum 15 keys and each value limits to 256 characters.","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.razorpay.notes","typeLabel":"object"}},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.razorpay","typeLabel":"object"},"zaakpay":{"type":"object","description":"Additional info for Zaakpay.\nUser-defined fields (extra) are used to store any information corresponding to a particular order. Each extra field has a maximum character limit of 180.","properties":{"extra1":{"type":"string","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.zaakpay.extra1","typeLabel":"string"},"extra2":{"type":"string","uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.zaakpay.extra2","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.zaakpay","typeLabel":"object"}},"isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway","typeLabel":"object"}},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters.payment_settings","typeLabel":"object[]"}},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action.parameters","typeLabel":"object"}},"uniqueKey":"oneOf.0.whatsappMessage.interactive.action","typeLabel":"object"},"body":{"type":"object","description":"Optional for type `product`. Required for other message types.","properties":{"text":{"type":"string","description":"The body content of the message. Emojis and markdown are supported. Maximum length: 1024 characters.","maxLength":1024,"uniqueKey":"oneOf.0.whatsappMessage.interactive.body.text","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.interactive.body","typeLabel":"object"},"header":{"type":"object","description":"Required for type `product_list`. Optional for other types.","properties":{"type":{"type":"string","description":"**Required.**\nThe header type you would like to use.\n- `text`: Used for List Messages, Reply Buttons, and Multi-Product Messages.\n- `video`: Used for Reply Buttons.\n- `image`: Used for Reply Buttons.\n- `document`: Used for Reply Buttons.","enum":["text","image","video","document"],"uniqueKey":"oneOf.0.whatsappMessage.interactive.header.type","typeLabel":"enum\u003cstring>"},"text":{"type":"string","description":"Text for the header. Formatting allows emojis, but not markdown.","maxLength":60,"uniqueKey":"oneOf.0.whatsappMessage.interactive.header.text","typeLabel":"string"},"image":{"type":"object","description":"Use for `image`, `gif`, `video`, `audio`, `document`, or `sticker` messages.\nSee also [Supported Media Types](https://developers.facebook.com/docs/whatsapp/cloud-api/reference/media#supported-media-types).","properties":{"id":{"type":"string","description":"**Use this when media is uploaded to WhatsApp servers.**\n\nProvide the media object ID obtained from WhatsApp media upload API (https://docs.ycloud.com/reference/whatsapp_media-upload#/).\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence.","uniqueKey":"oneOf.0.whatsappMessage.interactive.header.image.id","typeLabel":"string"},"link":{"type":"string","description":"**Use this when sending media directly from your server.**\n\nThe protocol and URL of the media to be sent. Use only with HTTP/HTTPS URLs.\n\nNote: WhatsApp Cloud API caches media resources for 10 minutes. To ensure latest content, add random query strings to the URL.\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence and `link` will be ignored.","uniqueKey":"oneOf.0.whatsappMessage.interactive.header.image.link","typeLabel":"string"},"caption":{"type":"string","description":"Describes the specified `image`, `gif`, `video`, or `document` media. Not applicable in the `header` of `template` or `interactive` messages.","uniqueKey":"oneOf.0.whatsappMessage.interactive.header.image.caption","typeLabel":"string"},"filename":{"type":"string","description":"Describes the filename for the specific document. Use only with `document` media.","uniqueKey":"oneOf.0.whatsappMessage.interactive.header.image.filename","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.interactive.header.image","typeLabel":"object"},"video":{"type":"object","description":"Use for `image`, `gif`, `video`, `audio`, `document`, or `sticker` messages.\nSee also [Supported Media Types](https://developers.facebook.com/docs/whatsapp/cloud-api/reference/media#supported-media-types).","properties":{"id":{"type":"string","description":"**Use this when media is uploaded to WhatsApp servers.**\n\nProvide the media object ID obtained from WhatsApp media upload API (https://docs.ycloud.com/reference/whatsapp_media-upload#/).\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence.","uniqueKey":"oneOf.0.whatsappMessage.interactive.header.video.id","typeLabel":"string"},"link":{"type":"string","description":"**Use this when sending media directly from your server.**\n\nThe protocol and URL of the media to be sent. Use only with HTTP/HTTPS URLs.\n\nNote: WhatsApp Cloud API caches media resources for 10 minutes. To ensure latest content, add random query strings to the URL.\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence and `link` will be ignored.","uniqueKey":"oneOf.0.whatsappMessage.interactive.header.video.link","typeLabel":"string"},"caption":{"type":"string","description":"Describes the specified `image`, `gif`, `video`, or `document` media. Not applicable in the `header` of `template` or `interactive` messages.","uniqueKey":"oneOf.0.whatsappMessage.interactive.header.video.caption","typeLabel":"string"},"filename":{"type":"string","description":"Describes the filename for the specific document. Use only with `document` media.","uniqueKey":"oneOf.0.whatsappMessage.interactive.header.video.filename","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.interactive.header.video","typeLabel":"object"},"document":{"type":"object","description":"Use for `image`, `gif`, `video`, `audio`, `document`, or `sticker` messages.\nSee also [Supported Media Types](https://developers.facebook.com/docs/whatsapp/cloud-api/reference/media#supported-media-types).","properties":{"id":{"type":"string","description":"**Use this when media is uploaded to WhatsApp servers.**\n\nProvide the media object ID obtained from WhatsApp media upload API (https://docs.ycloud.com/reference/whatsapp_media-upload#/).\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence.","uniqueKey":"oneOf.0.whatsappMessage.interactive.header.document.id","typeLabel":"string"},"link":{"type":"string","description":"**Use this when sending media directly from your server.**\n\nThe protocol and URL of the media to be sent. Use only with HTTP/HTTPS URLs.\n\nNote: WhatsApp Cloud API caches media resources for 10 minutes. To ensure latest content, add random query strings to the URL.\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence and `link` will be ignored.","uniqueKey":"oneOf.0.whatsappMessage.interactive.header.document.link","typeLabel":"string"},"caption":{"type":"string","description":"Describes the specified `image`, `gif`, `video`, or `document` media. Not applicable in the `header` of `template` or `interactive` messages.","uniqueKey":"oneOf.0.whatsappMessage.interactive.header.document.caption","typeLabel":"string"},"filename":{"type":"string","description":"Describes the filename for the specific document. Use only with `document` media.","uniqueKey":"oneOf.0.whatsappMessage.interactive.header.document.filename","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.interactive.header.document","typeLabel":"object"}},"uniqueKey":"oneOf.0.whatsappMessage.interactive.header","typeLabel":"object"},"footer":{"type":"object","description":"Optional. An object with the footer of the message.","properties":{"text":{"type":"string","description":"The footer content. Emojis and markdown are supported. Links are supported. Maximum length: 60 characters.","maxLength":60,"uniqueKey":"oneOf.0.whatsappMessage.interactive.footer.text","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.interactive.footer","typeLabel":"object"}},"uniqueKey":"oneOf.0.whatsappMessage.interactive","typeLabel":"object"},"contacts":{"type":"array","items":{"type":"object","description":"When the message type filed is set to `contacts`, this object is included in the message object.","required":["name"],"properties":{"name":{"type":"object","description":"Full contact name formatted as a name object.","required":["formatted_name"],"properties":{"formatted_name":{"type":"string","description":"Full name, as it normally appears.","isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].name.formatted_name","typeLabel":"string"},"first_name":{"type":"string","description":"First name.","uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].name.first_name","typeLabel":"string"},"last_name":{"type":"string","description":"Last name.","uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].name.last_name","typeLabel":"string"},"middle_name":{"type":"string","description":"Middle name.","uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].name.middle_name","typeLabel":"string"},"suffix":{"type":"string","description":"Name suffix.","uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].name.suffix","typeLabel":"string"},"prefix":{"type":"string","description":"Name prefix.","uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].name.prefix","typeLabel":"string"}},"isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].name","typeLabel":"object"},"addresses":{"type":"array","items":{"type":"object","description":"Full contact address(es) formatted as an addresses object.","properties":{"street":{"type":"string","description":"Street number and name.","uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].addresses.items.[INDEX].street","typeLabel":"string"},"city":{"type":"string","description":"City name.","uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].addresses.items.[INDEX].city","typeLabel":"string"},"state":{"type":"string","description":"State abbreviation.","uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].addresses.items.[INDEX].state","typeLabel":"string"},"zip":{"type":"string","description":"ZIP code.","uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].addresses.items.[INDEX].zip","typeLabel":"string"},"country":{"type":"string","description":"Full country name.","uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].addresses.items.[INDEX].country","typeLabel":"string"},"country_code":{"type":"string","description":"Two-letter country abbreviation.","uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].addresses.items.[INDEX].country_code","typeLabel":"string"},"type":{"type":"string","description":"Standard values are `HOME` and `WORK`.","example":"WORK","uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].addresses.items.[INDEX].type","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].addresses.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].addresses","typeLabel":"object[]"},"birthday":{"type":"string","description":"`YYYY-MM-DD` formatted string.","example":"2022-09-27","uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].birthday","typeLabel":"string"},"emails":{"type":"array","items":{"type":"object","description":"Contact email address(es) formatted as an emails object.","properties":{"email":{"type":"string","description":"Email address.","uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].emails.items.[INDEX].email","typeLabel":"string"},"type":{"type":"string","description":"Standard values are `HOME` and `WORK`.","example":"WORK","uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].emails.items.[INDEX].type","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].emails.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].emails","typeLabel":"object[]"},"org":{"type":"object","description":"Contact organization information formatted as an org object.","properties":{"company":{"type":"string","description":"Name of the contact's company.","uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].org.company","typeLabel":"string"},"department":{"type":"string","description":"Name of the contact's department.","uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].org.department","typeLabel":"string"},"title":{"type":"string","description":"Contact's business title.","uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].org.title","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].org","typeLabel":"object"},"phones":{"type":"array","description":"Contact phone number(s) formatted as a phone object.","items":{"type":"object","properties":{"phone":{"type":"string","description":"Automatically populated with the `wa_id` value as a formatted phone number.","uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].phones.items.[INDEX].phone","typeLabel":"string"},"type":{"type":"string","description":"Standard Values are `CELL`, `MAIN`, `IPHONE`, `HOME`, and `WORK`.","uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].phones.items.[INDEX].type","typeLabel":"string"},"wa_id":{"type":"string","description":"WhatsApp ID.","uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].phones.items.[INDEX].wa_id","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].phones.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].phones","typeLabel":"object[]"},"urls":{"type":"array","description":"Contact URL(s) formatted as a urls object.","items":{"type":"object","properties":{"url":{"type":"string","description":"URL.","uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].urls.items.[INDEX].url","typeLabel":"string"},"type":{"type":"string","description":"Standard values are `HOME` and `WORK`.","uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].urls.items.[INDEX].type","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].urls.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].urls","typeLabel":"object[]"},"vcard":{"type":"string","description":"Optional vCard supplied with the shared contact payload.","uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].vcard","typeLabel":"string"},"origin":{"type":"string","description":"Set to `contact_request` when the user shared the contact in response to a request-contact-info message.","example":"contact_request","uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX].origin","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.contacts.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappMessage.contacts","typeLabel":"object[]"},"reaction":{"type":"object","description":"When a user reacts to messages with an emoji, the message type is set to `reaction`, and this field is included.","required":["message_id"],"properties":{"message_id":{"type":"string","description":"Specifies the `wamid` of the message received that contained the reaction.","example":"wamid.BgNODYxN...","isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage.reaction.message_id","typeLabel":"string"},"emoji":{"type":"string","description":"**Required** when you send a `reaction` message. Set it to `\"\"` if you want to remove the emoji.\n**Optional** when you received a message from a user. This field is included when a user reacts to messages with an emoji. Otherwise, it indicates a user removed the emoji.","uniqueKey":"oneOf.0.whatsappMessage.reaction.emoji","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.reaction","typeLabel":"object"},"context":{"type":"object","description":"Used to mention a specific message you are replying to. The reply can be any message type.","properties":{"message_id":{"type":"string","description":"Specifies the `wamid` of the message your are replying to. `wamid` is the original message ID on WhatsApp’s platform.","example":"wamid.BgNODYxN...","uniqueKey":"oneOf.0.whatsappMessage.context.message_id","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappMessage.context","typeLabel":"object"},"status":{"type":"string","description":"WhatsApp message status. One of `accepted`, `failed`, `sent`, `delivered`, `read`.\n- `accepted`: The messaging request is accepted by our system.\n- `failed`: A message sent by your business failed to send.\n- `sent`: A message sent by your business is in transit within WhatsApp's systems.\n- `delivered`: A message sent by your business was delivered to the user's device.\n- `read`: A message sent by your business was read by the user.","enum":["accepted","failed","sent","delivered","read"],"uniqueKey":"oneOf.0.whatsappMessage.status","typeLabel":"enum\u003cstring>"},"errorCode":{"type":"string","description":"Source error code when status is failed and the provider supplied one.","example":"131000","uniqueKey":"oneOf.0.whatsappMessage.errorCode","typeLabel":"string"},"errorMessage":{"type":"string","description":"Source error title when status is failed and the provider supplied one.","example":"Provider failure","uniqueKey":"oneOf.0.whatsappMessage.errorMessage","typeLabel":"string"},"createTime":{"type":"string","format":"date-time","description":"Source echo time for a created event, formatted in RFC 3339.","example":"2026-09-09T02:00:00.000Z","uniqueKey":"oneOf.0.whatsappMessage.createTime","typeLabel":"string\u003cdate-time>"},"updateTime":{"type":"string","format":"date-time","description":"Source status time for an updated event, formatted in RFC 3339.","example":"2026-09-09T02:00:01.000Z","uniqueKey":"oneOf.0.whatsappMessage.updateTime","typeLabel":"string\u003cdate-time>"},"sendTime":{"type":"string","format":"date-time","description":"Source echo time on created events, or source status time when the current event reports sent.","example":"2026-09-09T02:00:00.000Z","uniqueKey":"oneOf.0.whatsappMessage.sendTime","typeLabel":"string\u003cdate-time>"},"deliverTime":{"type":"string","format":"date-time","description":"Source status time when the current event reports delivered.","example":"2026-09-09T02:00:01.000Z","uniqueKey":"oneOf.0.whatsappMessage.deliverTime","typeLabel":"string\u003cdate-time>"},"readTime":{"type":"string","format":"date-time","description":"Source status time when the current event reports read.","example":"2026-09-09T02:00:02.000Z","uniqueKey":"oneOf.0.whatsappMessage.readTime","typeLabel":"string\u003cdate-time>"}},"isRequired":true,"uniqueKey":"oneOf.0.whatsappMessage","typeLabel":"object"},"id":{"type":"string","description":"Unique ID for the event.","minLength":6,"maxLength":128,"isRequired":true,"uniqueKey":"oneOf.0.id","typeLabel":"string"},"apiVersion":{"type":"string","description":"The API version used to render this event.","example":"v2","isRequired":true,"uniqueKey":"oneOf.0.apiVersion","typeLabel":"string"},"createTime":{"type":"string","format":"date-time","description":"The time at which this event was created, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2022-06-01T12:00:00.000Z","isRequired":true,"uniqueKey":"oneOf.0.createTime","typeLabel":"string\u003cdate-time>"},"phase":{"type":"integer","format":"int32","description":"Included when `type` is `whatsapp.smb.history` and the event was generated from a Meta history chunk. Identifies the chunk's synchronization phase.","example":1,"uniqueKey":"oneOf.0.phase","typeLabel":"integer\u003cint32>"},"progress":{"type":"integer","format":"int32","description":"Included when `type` is `whatsapp.smb.history` and the event was generated from a Meta history chunk. Reports the chunk's synchronization progress.","example":73,"uniqueKey":"oneOf.0.progress","typeLabel":"integer\u003cint32>"},"contactAttributesChanged":{"type":"object","description":"Included when `type` is `contact.attributes_changed`.","required":["id","updateTime","changedAttributes"],"properties":{"id":{"type":"string","description":"The ID of the contact whose attributes were changed.","example":"1824266594102064128","isRequired":true,"uniqueKey":"oneOf.0.contactAttributesChanged.id","typeLabel":"string"},"updateTime":{"type":"string","format":"date-time","description":"The time at which the contact attributes were updated, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2025-07-09T02:24:16.193Z","isRequired":true,"uniqueKey":"oneOf.0.contactAttributesChanged.updateTime","typeLabel":"string\u003cdate-time>"},"changedAttributes":{"type":"object","description":"An object containing the changed attributes. Each key represents the name of the changed attribute,\nand the value contains the old value, new value, and change actions. Keys use the Contact\nattribute catalog names, including system keys such as `remark_name`, `country_code`, and\n`meta_username`.","additionalProperties":{"type":"object","description":"Represents a single attribute change, containing the old value, new value, and change actions.","properties":{"oldValue":{"description":"The previous value of the attribute before the change.\nCan be a string, number, array, or boolean depending on the attribute type.\nThis field is not included when the value is null.","example":"previous_value","uniqueKey":"oneOf.0.contactAttributesChanged.changedAttributes.additionalProperties.oldValue","typeLabel":"any"},"newValue":{"description":"The new value of the attribute after the change.\nCan be a string, number, array, or boolean depending on the attribute type.\nThis field is not included when the value is null.","example":["tag1","tag2"],"uniqueKey":"oneOf.0.contactAttributesChanged.changedAttributes.additionalProperties.newValue","typeLabel":"any"},"extra":{"type":"array","description":"An array of change actions that describe what operations were performed on this attribute.","items":{"type":"object","description":"Represents a single change action performed on an attribute.\nFor tag attributes, includes additional id and value fields.","required":["action"],"properties":{"action":{"type":"string","description":"The type of change action performed.","enum":["ADDED","REMOVED","CHANGED"],"example":"ADDED","isRequired":true,"uniqueKey":"oneOf.0.contactAttributesChanged.changedAttributes.additionalProperties.extra.items.[INDEX].action","typeLabel":"enum\u003cstring>"},"id":{"type":"string","description":"The ID of the item when the attribute is 'tags'.\nThis field is only present for tag-related changes.","example":"686dd294334be8606a5bf312","uniqueKey":"oneOf.0.contactAttributesChanged.changedAttributes.additionalProperties.extra.items.[INDEX].id","typeLabel":"string"},"value":{"type":"string","description":"The value of the item when the attribute is 'tags'.\nThis field is only present for tag-related changes.","example":"fsadf","uniqueKey":"oneOf.0.contactAttributesChanged.changedAttributes.additionalProperties.extra.items.[INDEX].value","typeLabel":"string"}},"uniqueKey":"oneOf.0.contactAttributesChanged.changedAttributes.additionalProperties.extra.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.contactAttributesChanged.changedAttributes.additionalProperties.extra","typeLabel":"object[]"}},"uniqueKey":"oneOf.0.contactAttributesChanged.changedAttributes.additionalProperties","typeLabel":"object"},"example":{"tags":{"newValue":["customer","vip"],"extra":[{"action":"ADDED","id":"686dd294334be8606a5bf312","value":"customer"}]},"waba_id":{"oldValue":"old_waba_id","newValue":"new_waba_id","extra":[{"action":"CHANGED"}]},"age":{"oldValue":25,"newValue":26,"extra":[{"action":"CHANGED"}]},"is_verified":{"oldValue":false,"newValue":true,"extra":[{"action":"CHANGED"}]}},"isRequired":true,"uniqueKey":"oneOf.0.contactAttributesChanged.changedAttributes","typeLabel":"object"}},"uniqueKey":"oneOf.0.contactAttributesChanged","typeLabel":"object"},"contactCreated":{"type":"object","description":"Included when `type` is `contact.created`.","required":["id"],"properties":{"id":{"type":"string","description":"Unique ID for the object.","example":"1824266594102064128","isRequired":true,"uniqueKey":"oneOf.0.contactCreated.id","typeLabel":"string"},"remarkName":{"type":"string","description":"The business-managed remark name for the contact.","example":"Priority customer","uniqueKey":"oneOf.0.contactCreated.remarkName","typeLabel":"string"},"nickName":{"type":"string","description":"Contact's nickname.","example":"John Doe","uniqueKey":"oneOf.0.contactCreated.nickName","typeLabel":"string"},"realName":{"type":"string","description":"Contact's real name.","example":"John Smith","uniqueKey":"oneOf.0.contactCreated.realName","typeLabel":"string"},"phoneNumber":{"type":"string","description":"Unique Phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","uniqueKey":"oneOf.0.contactCreated.phoneNumber","typeLabel":"string"},"countryCode":{"type":"string","description":"Two-letter country abbreviation. See [ISO 3166-1 alpha-2 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).","example":"US","uniqueKey":"oneOf.0.contactCreated.countryCode","typeLabel":"string"},"countryName":{"type":"string","description":"Full country name.","example":"United States","uniqueKey":"oneOf.0.contactCreated.countryName","typeLabel":"string"},"email":{"type":"string","description":"The contact's email address.\nIf present, the email address must be unique.","example":"john.doe@example.com","uniqueKey":"oneOf.0.contactCreated.email","typeLabel":"string"},"sourceType":{"type":"string","description":"The source type where the contact was created.","example":"api","uniqueKey":"oneOf.0.contactCreated.sourceType","typeLabel":"string"},"sourceId":{"type":"string","description":"The source ID where the contact was created.","example":"import_batch_123","uniqueKey":"oneOf.0.contactCreated.sourceId","typeLabel":"string"},"sourceUrl":{"type":"string","description":"The source URL where the contact was created.","example":"https://example.com/signup","uniqueKey":"oneOf.0.contactCreated.sourceUrl","typeLabel":"string"},"lastSeen":{"type":"string","format":"date-time","description":"The time at which the contact last sent a message to your business, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2025-07-09T02:24:16.193Z","uniqueKey":"oneOf.0.contactCreated.lastSeen","typeLabel":"string\u003cdate-time>"},"lastConnectedNumber":{"type":"string","description":"The business phone number that the contact last connected to.","example":"+16315551111","uniqueKey":"oneOf.0.contactCreated.lastConnectedNumber","typeLabel":"string"},"ownerEmail":{"type":"string","description":"The email address of the contact's owner.","example":"support@example.com","uniqueKey":"oneOf.0.contactCreated.ownerEmail","typeLabel":"string"},"tags":{"type":"array","description":"Contact's tags.","items":{"type":"string","uniqueKey":"oneOf.0.contactCreated.tags.items.[INDEX]","typeLabel":"string"},"example":["customer","vip"],"uniqueKey":"oneOf.0.contactCreated.tags","typeLabel":"string[]"},"createTime":{"type":"string","format":"date-time","description":"The time at which the contact was created, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2025-07-09T02:24:16.193Z","uniqueKey":"oneOf.0.contactCreated.createTime","typeLabel":"string\u003cdate-time>"},"updateTime":{"type":"string","format":"date-time","description":"The time at which the contact was last updated, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2025-07-09T02:24:16.193Z","uniqueKey":"oneOf.0.contactCreated.updateTime","typeLabel":"string\u003cdate-time>"},"blocked":{"type":"boolean","description":"Whether the contact is blocked.","example":false,"uniqueKey":"oneOf.0.contactCreated.blocked","typeLabel":"boolean"},"customAttributes":{"type":"object","description":"Contact's custom attributes as key-value pairs.","additionalProperties":{"type":"object","uniqueKey":"oneOf.0.contactCreated.customAttributes.additionalProperties","typeLabel":"object"},"example":{"company":"YCloud Inc","age":25,"preferences":{"newsletter":true}},"uniqueKey":"oneOf.0.contactCreated.customAttributes","typeLabel":"object"}},"uniqueKey":"oneOf.0.contactCreated","typeLabel":"object"},"contactDeleted":{"type":"object","description":"Included when `type` is `contact.deleted`.","required":["id"],"properties":{"id":{"type":"string","description":"Contact ID","example":"1824266594102064129","isRequired":true,"uniqueKey":"oneOf.0.contactDeleted.id","typeLabel":"string"},"remarkName":{"type":"string","description":"The business-managed remark name from the deleted contact snapshot.","example":"Former customer","uniqueKey":"oneOf.0.contactDeleted.remarkName","typeLabel":"string"},"nickName":{"type":"string","description":"Contact's nickname.","example":"Jane Smith","uniqueKey":"oneOf.0.contactDeleted.nickName","typeLabel":"string"},"phoneNumber":{"type":"string","description":"Unique Phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16475551234","uniqueKey":"oneOf.0.contactDeleted.phoneNumber","typeLabel":"string"},"updateTime":{"type":"string","format":"date-time","description":"The time at which the contact was last updated, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2025-07-08T15:25:00.000Z","uniqueKey":"oneOf.0.contactDeleted.updateTime","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.0.contactDeleted","typeLabel":"object"},"contactNote":{"type":"object","description":"Included when `type` is `contact.note.created`, `contact.note.updated`, or `contact.note.deleted`.","required":["id","contactId","username","phoneNumber","content"],"properties":{"id":{"type":"string","minLength":24,"maxLength":24,"pattern":"^[0-9a-fA-F]{24}$","example":"6a3de646e18f344f743aaa4d","isRequired":true,"uniqueKey":"oneOf.0.contactNote.id","typeLabel":"string"},"contactId":{"type":"string","example":"1824266594102064128","isRequired":true,"uniqueKey":"oneOf.0.contactNote.contactId","typeLabel":"string"},"username":{"oneOf":[{"type":"string","description":"Username of the contact that owns this note, without the leading `@`.","example":"alice_01","isRequired":true,"uniqueKey":"oneOf.0.contactNote.username.oneOf.0","typeLabel":"string"},{"type":"null","description":"Username of the contact that owns this note, without the leading `@`.","example":"alice_01","isRequired":true,"uniqueKey":"oneOf.0.contactNote.username.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.0.contactNote.username","typeLabel":"string | null"},"phoneNumber":{"oneOf":[{"type":"string","description":"Phone number of the contact that owns this note in E.164 format.","example":"+16315551111","isRequired":true,"uniqueKey":"oneOf.0.contactNote.phoneNumber.oneOf.0","typeLabel":"string"},{"type":"null","description":"Phone number of the contact that owns this note in E.164 format.","example":"+16315551111","isRequired":true,"uniqueKey":"oneOf.0.contactNote.phoneNumber.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.0.contactNote.phoneNumber","typeLabel":"string | null"},"content":{"type":"string","maxLength":500,"example":"Customer prefers follow-up in the morning.","isRequired":true,"uniqueKey":"oneOf.0.contactNote.content","typeLabel":"string"},"createTime":{"type":"string","format":"date-time","uniqueKey":"oneOf.0.contactNote.createTime","typeLabel":"string\u003cdate-time>"},"updateTime":{"type":"string","format":"date-time","uniqueKey":"oneOf.0.contactNote.updateTime","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.0.contactNote","typeLabel":"object"},"contactUnsubscribeCreated":{"type":"object","description":"Included when `type` is `contact.unsubscribe.created`.","required":["id"],"properties":{"id":{"type":"string","description":"Unique ID of the contact unsubscribe event.","isRequired":true,"uniqueKey":"oneOf.0.contactUnsubscribeCreated.id","typeLabel":"string"},"phoneNumber":{"type":"string","description":"Unique Customer Phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16475551234","uniqueKey":"oneOf.0.contactUnsubscribeCreated.phoneNumber","typeLabel":"string"},"source":{"type":"string","description":"The source from which a customer initiates an unsubscribe.\n- `Whatsapp`: The customer initiated an unsubscribe on the whatsapp client.\n- `Inbox`:You added a customer to the unsubscribe list on the Inbox page of YCloud.\n- `Chatbot`: The message sent by the customer triggered the unsubscribe keyword configured by the Chatbot.\n- `API`: You add customers to the unsubscribe list through YCloud's OpenAPI.\n- `Manual`: You added a customer to the unsubscribe list on the Contact page of YCloud.","enum":["Whatsapp","Inbox","Chatbot","API","Manual"],"example":"Whatsapp","uniqueKey":"oneOf.0.contactUnsubscribeCreated.source","typeLabel":"enum\u003cstring>"},"updateTime":{"type":"string","format":"date-time","description":"The time when a customer initiates an unsubscribe, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2025-07-08T15:25:00.000Z","uniqueKey":"oneOf.0.contactUnsubscribeCreated.updateTime","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.0.contactUnsubscribeCreated","typeLabel":"object"},"contactUnsubscribeDeleted":{"type":"object","description":"Included when `type` is `contact.unsubscribe.deleted`.","required":["id"],"properties":{"id":{"type":"string","description":"Unique ID of the contact resubscribe event.","isRequired":true,"uniqueKey":"oneOf.0.contactUnsubscribeDeleted.id","typeLabel":"string"},"phoneNumber":{"type":"string","description":"Unique Customer Phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16475551234","uniqueKey":"oneOf.0.contactUnsubscribeDeleted.phoneNumber","typeLabel":"string"},"source":{"type":"string","description":"The source from which a customer resumed their subscription\n- `Whatsapp`: The customer resumed their subscription on the whatsapp client\n- `API`: You remove the customer from the unsubscribe list through the OpenAPI of YCloud\n- `Manual`: You remove the customer from the unsubscribe list on the Contact page of YCloud.","enum":["Whatsapp","API","Manual"],"example":"Whatsapp","uniqueKey":"oneOf.0.contactUnsubscribeDeleted.source","typeLabel":"enum\u003cstring>"},"updateTime":{"type":"string","format":"date-time","description":"The time when customers cancel unsubscribe, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2025-07-08T15:25:00.000Z","uniqueKey":"oneOf.0.contactUnsubscribeDeleted.updateTime","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.0.contactUnsubscribeDeleted","typeLabel":"object"},"emailDelivery":{"type":"object","description":"Included when `type` is `email.delivery.updated`.","required":["emailId","recipientAddress"],"properties":{"emailId":{"type":"string","description":"Unique ID for the related email you've previously sent.","minLength":6,"maxLength":128,"isRequired":true,"uniqueKey":"oneOf.0.emailDelivery.emailId","typeLabel":"string"},"recipientAddress":{"type":"string","description":"A recipient's email address.","example":"tom@example.com","isRequired":true,"uniqueKey":"oneOf.0.emailDelivery.recipientAddress","typeLabel":"string"},"status":{"type":"string","description":"Delivery status of the email to the specific recipient address.\n- `sending`: The messaging request is accepted by our system.\n- `failed`: The message failed to be sent from our system.\n- `sent`: The message has been sent from our system.\n- `delivered`: Our system has received a delivery receipt indicating that message is delivered.\n- `undelivered`: Our system has received a delivery receipt indicating that message is not delivered.","enum":["sending","failed","sent","delivered","undelivered"],"example":"failed","uniqueKey":"oneOf.0.emailDelivery.status","typeLabel":"enum\u003cstring>"},"errorCode":{"type":"string","description":"Error code when the email is undeliverable.","example":402,"uniqueKey":"oneOf.0.emailDelivery.errorCode","typeLabel":"string"},"errorMessage":{"type":"string","description":"Error message when the email is undeliverable.","example":"Unsubscribes","uniqueKey":"oneOf.0.emailDelivery.errorMessage","typeLabel":"string"},"externalId":{"type":"string","description":"The `externalId` you set when you sent the email.","uniqueKey":"oneOf.0.emailDelivery.externalId","typeLabel":"string"},"bizType":{"type":"string","description":"This can be either empty or one of `email`, or `verify`. Defaults to `email`.\n- `email`: Indicates that the message is sent via the **Email** product.\n- `verify`: Indicates that the message is sent via the **Verify** product.","example":"email","uniqueKey":"oneOf.0.emailDelivery.bizType","typeLabel":"string"},"verificationId":{"type":"string","description":"The verification ID. Included only when `bizType` is `verify`.","example":"VERIFICATION-ID","uniqueKey":"oneOf.0.emailDelivery.verificationId","typeLabel":"string"}},"uniqueKey":"oneOf.0.emailDelivery","typeLabel":"object"},"sms":{"type":"object","required":["id","to"],"properties":{"id":{"type":"string","description":"Unique ID for the object.","minLength":6,"maxLength":128,"isRequired":true,"uniqueKey":"oneOf.0.sms.id","typeLabel":"string"},"to":{"type":"string","description":"The recipient's phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","isRequired":true,"uniqueKey":"oneOf.0.sms.to","typeLabel":"string"},"text":{"type":"string","description":"The text of this message.","example":"Your verification code is 123456.","uniqueKey":"oneOf.0.sms.text","typeLabel":"string"},"senderId":{"type":"string","description":"Sender ID to be used.","example":"Brand","uniqueKey":"oneOf.0.sms.senderId","typeLabel":"string"},"regionCode":{"type":"string","description":"[ISO 3166-1 alpha-2 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)","example":"US","uniqueKey":"oneOf.0.sms.regionCode","typeLabel":"string"},"totalSegments":{"type":"integer","format":"int32","minimum":1,"description":"Number of message segments. See [SMS character encoding](https://helpdocs.ycloud.com/help-center/integrations/channels/global-sms/sms-basic-principles#sms-encoding) for more info.","example":1,"uniqueKey":"oneOf.0.sms.totalSegments","typeLabel":"integer\u003cint32>"},"totalPrice":{"type":"number","format":"double","description":"Total price of this message.","example":0.0085,"uniqueKey":"oneOf.0.sms.totalPrice","typeLabel":"number\u003cdouble>"},"currency":{"type":"string","description":"Price currency. [ISO 4217 currency code](https://en.wikipedia.org/wiki/ISO_4217).","example":"USD","uniqueKey":"oneOf.0.sms.currency","typeLabel":"string"},"status":{"type":"string","description":"Delivery status. One of `accepted`, `sent`, `delivered`, `undelivered`, or `failed`.\n- `accepted`: The messaging request is accepted by our system.\n- `failed`: The message failed to be sent from our system.\n- `sent`: The message has been sent from our system.\n- `delivered`: Our system has received a delivery receipt indicating that message is delivered.\n- `undelivered`: Our system has received a delivery receipt indicating that message is not delivered.","example":"sent","enum":["accepted","failed","sent","delivered","undelivered"],"uniqueKey":"oneOf.0.sms.status","typeLabel":"enum\u003cstring>"},"errorCode":{"type":"string","description":"Error code when the message is undeliverable.","uniqueKey":"oneOf.0.sms.errorCode","typeLabel":"string"},"createTime":{"type":"string","format":"date-time","description":"The time at which this message was created, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-03-01T12:00:00.000Z`.","example":"2022-03-01T12:00:00.000Z","uniqueKey":"oneOf.0.sms.createTime","typeLabel":"string\u003cdate-time>"},"updateTime":{"type":"string","format":"date-time","description":"The time at which the delivery report for this message was updated, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-03-01T12:00:00.000Z`.","example":"2022-03-01T12:00:00.000Z","uniqueKey":"oneOf.0.sms.updateTime","typeLabel":"string\u003cdate-time>"},"externalId":{"type":"string","description":"A unique (recommended) string to reference the object. This can be an order number or similar, and can be used to reconcile the object with your internal systems.","uniqueKey":"oneOf.0.sms.externalId","typeLabel":"string"},"callbackUrl":{"type":"string","description":"Delivery report URL. You can provide a URL, and we will push the updated status report to your server in time. e.g., https://httpbin.org/anything?tag=api.\nNote: We recommend configuring Webhook Endpoints instead.","example":"https://httpbin.org/anything?tag=api-sms","uniqueKey":"oneOf.0.sms.callbackUrl","typeLabel":"string"},"bizType":{"type":"string","description":"This can be either empty or one of `sms`, or `verify`. Defaults to `sms`.\n- `sms`: Indicates that the message is sent via the **SMS** product.\n- `verify`: Indicates that the message is sent via the **Verify** product.","example":"sms","uniqueKey":"oneOf.0.sms.bizType","typeLabel":"string"},"verificationId":{"type":"string","description":"The verification ID. Included only when `bizType` is `verify`.","example":"VERIFICATION-ID","uniqueKey":"oneOf.0.sms.verificationId","typeLabel":"string"}},"description":"Included when `type` is `sms.message.updated`.","uniqueKey":"oneOf.0.sms","typeLabel":"object"},"smsInbound":{"type":"object","description":"Included when `type` is `sms.inbound.received`.","properties":{"id":{"type":"string","description":"Unique ID of the message.","uniqueKey":"oneOf.0.smsInbound.id","typeLabel":"string"},"from":{"type":"string","description":"The user's phone number who sent the message to your registered sender ID, formatted in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","uniqueKey":"oneOf.0.smsInbound.from","typeLabel":"string"},"to":{"type":"string","description":"The receiver's phone number, which is one of your registered Sender IDs.","uniqueKey":"oneOf.0.smsInbound.to","typeLabel":"string"},"text":{"type":"string","description":"The text of this message.","uniqueKey":"oneOf.0.smsInbound.text","typeLabel":"string"},"sendTime":{"type":"string","format":"date-time","description":"The time at which this message was sent, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2022-06-01T12:00:00.000Z","uniqueKey":"oneOf.0.smsInbound.sendTime","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.0.smsInbound","typeLabel":"object"},"voice":{"type":"object","required":["id","to"],"properties":{"id":{"type":"string","description":"Unique ID for the object.","minLength":6,"maxLength":128,"isRequired":true,"uniqueKey":"oneOf.0.voice.id","typeLabel":"string"},"to":{"type":"string","description":"The recipient's phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","isRequired":true,"uniqueKey":"oneOf.0.voice.to","typeLabel":"string"},"verificationCode":{"type":"string","description":"The verification code to be sent, 4 to 6 digits.","example":"123456","uniqueKey":"oneOf.0.voice.verificationCode","typeLabel":"string"},"language":{"type":"string","description":"[ISO 639 Language Code](https://www.iso.org/iso-639-language-codes.html).","example":"en","uniqueKey":"oneOf.0.voice.language","typeLabel":"string"},"regionCode":{"type":"string","description":"[ISO 3166-1 alpha-2 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).","example":"US","uniqueKey":"oneOf.0.voice.regionCode","typeLabel":"string"},"totalSegments":{"type":"integer","format":"int32","minimum":1,"description":"Number of message segments. It's always 1 for voice calls.","example":1,"uniqueKey":"oneOf.0.voice.totalSegments","typeLabel":"integer\u003cint32>"},"totalPrice":{"type":"number","format":"double","description":"Total price of this message.","example":0.05,"uniqueKey":"oneOf.0.voice.totalPrice","typeLabel":"number\u003cdouble>"},"currency":{"type":"string","description":"Price currency. [ISO 4217 currency code](https://en.wikipedia.org/wiki/ISO_4217).","example":"USD","uniqueKey":"oneOf.0.voice.currency","typeLabel":"string"},"status":{"type":"string","description":"Delivery status. One of `accepted`, `sent`, `delivered`, `undelivered`, or `failed`.\n- `accepted`: The messaging request is accepted by our system.\n- `failed`: The message failed to be sent from our system.\n- `sent`: The message has been sent from our system.\n- `delivered`: Our system has received a delivery receipt indicating that message is delivered.\n- `undelivered`: Our system has received a delivery receipt indicating that message is not delivered.","example":"sent","enum":["accepted","failed","sent","delivered","undelivered"],"uniqueKey":"oneOf.0.voice.status","typeLabel":"enum\u003cstring>"},"errorCode":{"type":"string","description":"Error code when the message is undeliverable.","uniqueKey":"oneOf.0.voice.errorCode","typeLabel":"string"},"createTime":{"type":"string","format":"date-time","description":"The time at which this message was created, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-03-01T12:00:00.000Z`.","example":"2022-03-01T12:00:00.000Z","uniqueKey":"oneOf.0.voice.createTime","typeLabel":"string\u003cdate-time>"},"updateTime":{"type":"string","format":"date-time","description":"The time at which the delivery report for this message was updated, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-03-01T12:00:00.000Z`.","example":"2022-03-01T12:00:00.000Z","uniqueKey":"oneOf.0.voice.updateTime","typeLabel":"string\u003cdate-time>"},"externalId":{"type":"string","description":"A unique (recommended) string to reference the object. This can be an order number or similar, and can be used to reconcile the object with your internal systems.","uniqueKey":"oneOf.0.voice.externalId","typeLabel":"string"},"callbackUrl":{"type":"string","description":"Delivery report URL. You can provide a URL, and we will push the updated status report to your server in time. e.g., https://httpbin.org/anything?tag=api.\nNote: We recommend configuring Webhook Endpoints instead.","example":"https://httpbin.org/anything?tag=api-voice","uniqueKey":"oneOf.0.voice.callbackUrl","typeLabel":"string"},"bizType":{"type":"string","description":"This can be either empty or one of `voice`, or `verify`. Defaults to `voice`.\n- `voice`: Indicates that the message is sent via the **Voice** product.\n- `verify`: Indicates that the message is sent via **Verify** product.","example":"voice","uniqueKey":"oneOf.0.voice.bizType","typeLabel":"string"},"verificationId":{"type":"string","description":"The verification ID. Included only when `bizType` is `verify`.","example":"VERIFICATION-ID","uniqueKey":"oneOf.0.voice.verificationId","typeLabel":"string"}},"description":"Included when `type` is `voice.message.updated`.","uniqueKey":"oneOf.0.voice","typeLabel":"object"},"whatsappBusinessAccount":{"type":"object","description":"Included when `type` is `whatsapp.business_account.deleted`, `whatsapp.business_account.reviewed`, or `whatsapp.business_account.updated`.","properties":{"id":{"type":"string","description":"WhatApp Business Account ID.","uniqueKey":"oneOf.0.whatsappBusinessAccount.id","typeLabel":"string"},"name":{"type":"string","description":"User-friendly name to differentiate WhatsApp Business Accounts.","uniqueKey":"oneOf.0.whatsappBusinessAccount.name","typeLabel":"string"},"currency":{"type":"string","description":"The currency in which the payment transactions for the WhatsApp Business Account will be processed.","uniqueKey":"oneOf.0.whatsappBusinessAccount.currency","typeLabel":"string"},"messageTemplateNamespace":{"type":"string","description":"Namespace string for the message templates that belong to the WhatsApp Business Account.","uniqueKey":"oneOf.0.whatsappBusinessAccount.messageTemplateNamespace","typeLabel":"string"},"accountReviewStatus":{"type":"string","description":"WhatsApp Business Account review status.","enum":["PENDING","APPROVED","REJECTED"],"uniqueKey":"oneOf.0.whatsappBusinessAccount.accountReviewStatus","typeLabel":"enum\u003cstring>"},"businessVerificationStatus":{"type":"string","description":"Current status of business verification of Meta Business Account which owns this WhatsApp Business Account.","enum":["expired","failed","ineligible","not_verified","pending","pending_need_more_info","pending_submission","rejected","revoked","verified"],"uniqueKey":"oneOf.0.whatsappBusinessAccount.businessVerificationStatus","typeLabel":"enum\u003cstring>"},"country":{"type":"string","description":"Country of the WhatsApp Business Account's owning Meta Business account.","uniqueKey":"oneOf.0.whatsappBusinessAccount.country","typeLabel":"string"},"ownershipType":{"type":"string","description":"Ownership type of the WhatsApp Business Account.","uniqueKey":"oneOf.0.whatsappBusinessAccount.ownershipType","typeLabel":"string"},"paymentMethodAttached":{"type":"boolean","description":"Whether we have attached a payment method to the WhatsApp Business Account.","uniqueKey":"oneOf.0.whatsappBusinessAccount.paymentMethodAttached","typeLabel":"boolean"},"primaryFundingId":{"type":"string","description":"Primary funding ID for the WhatsApp Business Account paid service.","uniqueKey":"oneOf.0.whatsappBusinessAccount.primaryFundingId","typeLabel":"string"},"purchaseOrderNumber":{"type":"string","description":"The purchase order number supplied by the business for payment management purposes.","uniqueKey":"oneOf.0.whatsappBusinessAccount.purchaseOrderNumber","typeLabel":"string"},"timezoneId":{"type":"string","description":"The timezone ID of the WhatsApp Business Account. See [Timezone IDs](https://developers.facebook.com/docs/marketing-api/reference/ad-account/timezone-ids).","example":"1","uniqueKey":"oneOf.0.whatsappBusinessAccount.timezoneId","typeLabel":"string"},"decision":{"type":"string","description":"Review decision made on this WhatsApp Business Account. One of `APPROVED` or `REJECTED`.","enum":["APPROVED","REJECTED"],"uniqueKey":"oneOf.0.whatsappBusinessAccount.decision","typeLabel":"enum\u003cstring>"},"updateEvent":{"type":"string","description":"Indicates the update event type of the WABA when a notification is sent to you to report a [policy violation](https://developers.facebook.com/docs/whatsapp/overview/policy-enforcement), a WABA has been banned and more.\n- `DISABLED_UPDATE`: WhatsApp Business Account Banned.\n- `ACCOUNT_RESTRICTION`: WhatsApp Business Account Restricted Due To Policy Violations.\n- `ACCOUNT_VIOLATION`: WhatsApp Business Account Violates Policy.\n- `PARTNER_REMOVED`: WhatsApp Business Account was removed from the partner connection.\n- `PARTNER_APP_UNINSTALLED`: WhatsApp Business Account partner app was uninstalled.\n- `AUTH_INTL_PRICE_ELIGIBILITY_UPDATE`: WhatsApp Business Account is eligible for the [authentication-international rate](https://developers.facebook.com/docs/whatsapp/pricing/authentication-international-rates).\n- `BUSINESS_PRIMARY_LOCATION_COUNTRY_UPDATE`: Business's [primary business location](https://developers.facebook.com/docs/whatsapp/pricing/authentication-international-rates#primary-business-location) is set.\n- `BUSINESS_CAPABILITY_UPDATE`: Meta reported a change to the Business Portfolio or WABA phone-number registration limit.","enum":["DISABLED_UPDATE","ACCOUNT_RESTRICTION","ACCOUNT_VIOLATION","PARTNER_REMOVED","PARTNER_APP_UNINSTALLED","AUTH_INTL_PRICE_ELIGIBILITY_UPDATE","BUSINESS_PRIMARY_LOCATION_COUNTRY_UPDATE","BUSINESS_CAPABILITY_UPDATE"],"uniqueKey":"oneOf.0.whatsappBusinessAccount.updateEvent","typeLabel":"enum\u003cstring>"},"banState":{"type":"string","description":"The ban state of the WhatsApp Business Account.","enum":["SCHEDULE_FOR_DISABLE","DISABLE","REINSTATE"],"uniqueKey":"oneOf.0.whatsappBusinessAccount.banState","typeLabel":"enum\u003cstring>"},"banDate":{"type":"string","description":"The date when the WABA is banned.","example":"December 9, 2022","uniqueKey":"oneOf.0.whatsappBusinessAccount.banDate","typeLabel":"string"},"violationType":{"type":"string","description":"Used to report violations imposed on the WABA.\nSee Meta's [Policy enforcement violations](https://developers.facebook.com/documentation/business-messaging/whatsapp/policy-enforcement-violations) for violation types and descriptions. Meta may update this list over time.\nFor Utility Direct Send violation types and restriction details, see Meta's [Webhook for account restriction](https://developers.facebook.com/documentation/business-messaging/whatsapp/direct-send/integrity-and-content-guidelines#webhook-for-account-restriction).","example":"SCAM","uniqueKey":"oneOf.0.whatsappBusinessAccount.violationType","typeLabel":"string"},"restrictions":{"type":"array","description":"Used to report restrictions imposed on the WABA, when that WABA violates [WhatsApp Business Platform policies](https://developers.facebook.com/docs/whatsapp/overview/policy-enforcement).","items":{"type":"object","description":"Used to report restrictions imposed on a specific WABA, when that WABA violates [WhatsApp Business Platform policies](https://developers.facebook.com/docs/whatsapp/overview/policy-enforcement).","properties":{"restrictionType":{"type":"string","description":"Restriction type.","enum":["RESTRICTED_ADD_PHONE_NUMBER_ACTION","RESTRICTED_BIZ_INITIATED_MESSAGING","RESTRICTED_CUSTOMER_INITIATED_MESSAGING","RESTRICTED_DIRECT_SEND_UTILITY_TEMPLATES"],"uniqueKey":"oneOf.0.whatsappBusinessAccount.restrictions.items.[INDEX].restrictionType","typeLabel":"enum\u003cstring>"},"expiration":{"type":"string","format":"date-time","description":"The time at which this restriction expires, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2022-06-01T12:00:00.000Z","uniqueKey":"oneOf.0.whatsappBusinessAccount.restrictions.items.[INDEX].expiration","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.0.whatsappBusinessAccount.restrictions.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappBusinessAccount.restrictions","typeLabel":"object[]"},"maxPhoneNumbersPerBusiness":{"type":"integer","format":"int32","description":"Included in a `whatsapp.business_account.updated` webhook with `updateEvent=BUSINESS_CAPABILITY_UPDATE` when Meta reports the Business Portfolio phone-number registration limit. Meta currently reports this field separately from `maxPhoneNumbersPerWaba`, but consumers must process both if a future update includes them together.","example":20,"uniqueKey":"oneOf.0.whatsappBusinessAccount.maxPhoneNumbersPerBusiness","typeLabel":"integer\u003cint32>"},"maxPhoneNumbersPerWaba":{"type":"integer","format":"int32","description":"Included in a `whatsapp.business_account.updated` webhook with `updateEvent=BUSINESS_CAPABILITY_UPDATE` when Meta reports the WABA phone-number registration limit. Meta currently reports this field separately from `maxPhoneNumbersPerBusiness`, but consumers must process both if a future update includes them together.","example":25,"uniqueKey":"oneOf.0.whatsappBusinessAccount.maxPhoneNumbersPerWaba","typeLabel":"integer\u003cint32>"},"authIntlRateEligibilityCountries":{"type":"array","description":"Starting June 1, 2024, we are updating our authentication rate card and introducing a new authentication-international rate. This rate will apply in the the following countries:\n- June 1, 2024 – Indonesia (country calling code +62, country code `ID`)\n- July 1, 2024 – India (country calling code +91, country code `IN`)\n\nSee also [Authentication-International Rates](https://developers.facebook.com/docs/whatsapp/pricing/authentication-international-rates).","items":{"type":"object","description":"Starting June 1, 2024, we are updating our authentication rate card and introducing a new authentication-international rate. This rate will apply in the the following countries:\n- June 1, 2024 – Indonesia (country calling code +62, country code `ID`)\n- July 1, 2024 – India (country calling code +91, country code `IN`)\n\nSee also [Authentication-International Rates](https://developers.facebook.com/docs/whatsapp/pricing/authentication-international-rates).","properties":{"countryCode":{"type":"string","description":"[ISO 3166-1 alpha-2 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).","example":"IN","uniqueKey":"oneOf.0.whatsappBusinessAccount.authIntlRateEligibilityCountries.items.[INDEX].countryCode","typeLabel":"string"},"startTime":{"type":"string","format":"date-time","description":"Date when newly-opened authentication conversations are subject to authentication-international rates, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2024-07-01T00:00:00.000Z`.","example":"2024-07-01T00:00:00.000Z","uniqueKey":"oneOf.0.whatsappBusinessAccount.authIntlRateEligibilityCountries.items.[INDEX].startTime","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.0.whatsappBusinessAccount.authIntlRateEligibilityCountries.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappBusinessAccount.authIntlRateEligibilityCountries","typeLabel":"object[]"},"primaryBusinessLocation":{"type":"string","description":"Your primary business location is the country where your business is based. It will appear in the Business Manager under the Primary Business Location field starting May 1, 2024.\n[ISO 3166-1 alpha-2 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).","example":"US","uniqueKey":"oneOf.0.whatsappBusinessAccount.primaryBusinessLocation","typeLabel":"string"},"removedReason":{"type":"string","description":"Raw reason from the WhatsApp Business Account deletion event. Known values include:\n- `ACCOUNT_DISCONNECTED`: The account was disconnected due to enforcement or because the WhatsApp account was explicitly deleted.\n- `BUSINESS_DOWNGRADE`: The phone number was registered with the consumer WhatsApp app.\n- `CHANGE_NUMBER`: The WhatsApp phone number was changed.\n- `COMPANION_INACTIVITY`: A companion device was inactive for approximately 30 days.\n- `PRIMARY_INACTIVITY`: A primary device was inactive for approximately 30 days.\n- `USER_RE_REGISTERED`: WhatsApp was re-registered on a new device.\n\nUnknown values are returned as received.","example":"ACCOUNT_DISCONNECTED","uniqueKey":"oneOf.0.whatsappBusinessAccount.removedReason","typeLabel":"string"},"removedInitiatedBy":{"type":"string","description":"Raw initiator from the WhatsApp Business Account deletion event. Known values include:\n- `USER`: The removal was initiated by the WhatsApp user.\n- `SYSTEM`: The removal was initiated by the Meta system.\n\nUnknown values are returned as received.","example":"USER","uniqueKey":"oneOf.0.whatsappBusinessAccount.removedInitiatedBy","typeLabel":"string"},"removedTime":{"type":"string","format":"date-time","description":"The time when the WhatsApp Business Account deletion event was received, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2026-05-19T12:00:00.000Z`.","example":"2026-05-19T12:00:00.000Z","uniqueKey":"oneOf.0.whatsappBusinessAccount.removedTime","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.0.whatsappBusinessAccount","typeLabel":"object"},"whatsappInboundMessage":{"type":"object","description":"Included when `type` is `whatsapp.inbound_message.received`, or when `type` is `whatsapp.smb.history` for an inbound history message. It is omitted for a metadata-only history chunk.","required":["id"],"properties":{"id":{"type":"string","description":"Unique ID for the object.","isRequired":true,"uniqueKey":"oneOf.0.whatsappInboundMessage.id","typeLabel":"string"},"wamid":{"type":"string","description":"The original message ID on WhatsApp's platform.","example":"wamid.BgNODYxN...","uniqueKey":"oneOf.0.whatsappInboundMessage.wamid","typeLabel":"string"},"wabaId":{"type":"string","description":"WhatsApp Business Account ID.","example":"whatsapp-business-account-id","uniqueKey":"oneOf.0.whatsappInboundMessage.wabaId","typeLabel":"string"},"from":{"type":"string","description":"The customer's phone number who sent the message to the business, formatted in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","uniqueKey":"oneOf.0.whatsappInboundMessage.from","typeLabel":"string"},"fromUserId":{"type":"string","description":"The customer's WhatsApp Business-scoped user ID (BSUID).","example":"US.1234","uniqueKey":"oneOf.0.whatsappInboundMessage.fromUserId","typeLabel":"string"},"fromParentUserId":{"type":"string","description":"The customer's parent WhatsApp Business-scoped user ID.","example":"US.ENT.1234","uniqueKey":"oneOf.0.whatsappInboundMessage.fromParentUserId","typeLabel":"string"},"customerProfile":{"type":"object","description":"The customer's profile information.","properties":{"name":{"type":"string","description":"Name of the WhatsApp account.","example":"John","uniqueKey":"oneOf.0.whatsappInboundMessage.customerProfile.name","typeLabel":"string"},"username":{"type":"string","description":"WhatsApp username.","example":"john_doe","uniqueKey":"oneOf.0.whatsappInboundMessage.customerProfile.username","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappInboundMessage.customerProfile","typeLabel":"object"},"to":{"type":"string","description":"The recipient's phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","uniqueKey":"oneOf.0.whatsappInboundMessage.to","typeLabel":"string"},"sendTime":{"type":"string","format":"date-time","description":"The time at which this message is sent, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2022-06-01T12:00:00.000Z","uniqueKey":"oneOf.0.whatsappInboundMessage.sendTime","typeLabel":"string\u003cdate-time>"},"type":{"type":"string","description":"WhatsApp inbound message type.\nSee also [WhatsApp webhook messages object](https://developers.facebook.com/docs/whatsapp/cloud-api/webhooks/components#messages-object).","enum":["text","image","video","audio","document","sticker","contacts","location","interactive","button","reaction","request_welcome","order","system","unsupported"],"uniqueKey":"oneOf.0.whatsappInboundMessage.type","typeLabel":"enum\u003cstring>"},"text":{"type":"object","description":"When the notification describes a text message, the text object provides the body of the text message.","properties":{"body":{"type":"string","description":"Message text.","uniqueKey":"oneOf.0.whatsappInboundMessage.text.body","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappInboundMessage.text","typeLabel":"object"},"image":{"type":"object","description":"When a message with media (`image` | `document` | `audio` | `video` | `sticker`) is received, the WhatsApp Business API client will download the media. Once the media is downloaded, a notification is sent to your Webhook. This message contains information that identifies the media object and enables you to find and download the object.","properties":{"id":{"type":"string","description":"ID of the media. Can be used to delete the media if stored locally on the client.","uniqueKey":"oneOf.0.whatsappInboundMessage.image.id","typeLabel":"string"},"link":{"type":"string","description":"The url to download the media file.\nNote that This link can be directly accessed in a few minutes for the convenience of the consumer, but you should always include an `X-API-Key` header to download this file within a month.","uniqueKey":"oneOf.0.whatsappInboundMessage.image.link","typeLabel":"string"},"caption":{"type":"string","description":"The provided caption for the media. Only present if specified.","uniqueKey":"oneOf.0.whatsappInboundMessage.image.caption","typeLabel":"string"},"filename":{"type":"string","description":"Filename on the sender's device. This will only be present in `document` media messages.","uniqueKey":"oneOf.0.whatsappInboundMessage.image.filename","typeLabel":"string"},"metadata":{"type":"object","additionalProperties":{"type":"object","uniqueKey":"oneOf.0.whatsappInboundMessage.image.metadata.additionalProperties","typeLabel":"object"},"description":"Metadata pertaining to `sticker` media.","uniqueKey":"oneOf.0.whatsappInboundMessage.image.metadata","typeLabel":"object"},"mime_type":{"type":"string","description":"Mime type of the media.","uniqueKey":"oneOf.0.whatsappInboundMessage.image.mime_type","typeLabel":"string"},"sha256":{"type":"string","description":"Checksum.","uniqueKey":"oneOf.0.whatsappInboundMessage.image.sha256","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappInboundMessage.image","typeLabel":"object"},"video":{"type":"object","description":"When a message with media (`image` | `document` | `audio` | `video` | `sticker`) is received, the WhatsApp Business API client will download the media. Once the media is downloaded, a notification is sent to your Webhook. This message contains information that identifies the media object and enables you to find and download the object.","properties":{"id":{"type":"string","description":"ID of the media. Can be used to delete the media if stored locally on the client.","uniqueKey":"oneOf.0.whatsappInboundMessage.video.id","typeLabel":"string"},"link":{"type":"string","description":"The url to download the media file.\nNote that This link can be directly accessed in a few minutes for the convenience of the consumer, but you should always include an `X-API-Key` header to download this file within a month.","uniqueKey":"oneOf.0.whatsappInboundMessage.video.link","typeLabel":"string"},"caption":{"type":"string","description":"The provided caption for the media. Only present if specified.","uniqueKey":"oneOf.0.whatsappInboundMessage.video.caption","typeLabel":"string"},"filename":{"type":"string","description":"Filename on the sender's device. This will only be present in `document` media messages.","uniqueKey":"oneOf.0.whatsappInboundMessage.video.filename","typeLabel":"string"},"metadata":{"type":"object","additionalProperties":{"type":"object","uniqueKey":"oneOf.0.whatsappInboundMessage.video.metadata.additionalProperties","typeLabel":"object"},"description":"Metadata pertaining to `sticker` media.","uniqueKey":"oneOf.0.whatsappInboundMessage.video.metadata","typeLabel":"object"},"mime_type":{"type":"string","description":"Mime type of the media.","uniqueKey":"oneOf.0.whatsappInboundMessage.video.mime_type","typeLabel":"string"},"sha256":{"type":"string","description":"Checksum.","uniqueKey":"oneOf.0.whatsappInboundMessage.video.sha256","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappInboundMessage.video","typeLabel":"object"},"audio":{"type":"object","description":"When a message with media (`image` | `document` | `audio` | `video` | `sticker`) is received, the WhatsApp Business API client will download the media. Once the media is downloaded, a notification is sent to your Webhook. This message contains information that identifies the media object and enables you to find and download the object.","properties":{"id":{"type":"string","description":"ID of the media. Can be used to delete the media if stored locally on the client.","uniqueKey":"oneOf.0.whatsappInboundMessage.audio.id","typeLabel":"string"},"link":{"type":"string","description":"The url to download the media file.\nNote that This link can be directly accessed in a few minutes for the convenience of the consumer, but you should always include an `X-API-Key` header to download this file within a month.","uniqueKey":"oneOf.0.whatsappInboundMessage.audio.link","typeLabel":"string"},"caption":{"type":"string","description":"The provided caption for the media. Only present if specified.","uniqueKey":"oneOf.0.whatsappInboundMessage.audio.caption","typeLabel":"string"},"filename":{"type":"string","description":"Filename on the sender's device. This will only be present in `document` media messages.","uniqueKey":"oneOf.0.whatsappInboundMessage.audio.filename","typeLabel":"string"},"metadata":{"type":"object","additionalProperties":{"type":"object","uniqueKey":"oneOf.0.whatsappInboundMessage.audio.metadata.additionalProperties","typeLabel":"object"},"description":"Metadata pertaining to `sticker` media.","uniqueKey":"oneOf.0.whatsappInboundMessage.audio.metadata","typeLabel":"object"},"mime_type":{"type":"string","description":"Mime type of the media.","uniqueKey":"oneOf.0.whatsappInboundMessage.audio.mime_type","typeLabel":"string"},"sha256":{"type":"string","description":"Checksum.","uniqueKey":"oneOf.0.whatsappInboundMessage.audio.sha256","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappInboundMessage.audio","typeLabel":"object"},"document":{"type":"object","description":"When a message with media (`image` | `document` | `audio` | `video` | `sticker`) is received, the WhatsApp Business API client will download the media. Once the media is downloaded, a notification is sent to your Webhook. This message contains information that identifies the media object and enables you to find and download the object.","properties":{"id":{"type":"string","description":"ID of the media. Can be used to delete the media if stored locally on the client.","uniqueKey":"oneOf.0.whatsappInboundMessage.document.id","typeLabel":"string"},"link":{"type":"string","description":"The url to download the media file.\nNote that This link can be directly accessed in a few minutes for the convenience of the consumer, but you should always include an `X-API-Key` header to download this file within a month.","uniqueKey":"oneOf.0.whatsappInboundMessage.document.link","typeLabel":"string"},"caption":{"type":"string","description":"The provided caption for the media. Only present if specified.","uniqueKey":"oneOf.0.whatsappInboundMessage.document.caption","typeLabel":"string"},"filename":{"type":"string","description":"Filename on the sender's device. This will only be present in `document` media messages.","uniqueKey":"oneOf.0.whatsappInboundMessage.document.filename","typeLabel":"string"},"metadata":{"type":"object","additionalProperties":{"type":"object","uniqueKey":"oneOf.0.whatsappInboundMessage.document.metadata.additionalProperties","typeLabel":"object"},"description":"Metadata pertaining to `sticker` media.","uniqueKey":"oneOf.0.whatsappInboundMessage.document.metadata","typeLabel":"object"},"mime_type":{"type":"string","description":"Mime type of the media.","uniqueKey":"oneOf.0.whatsappInboundMessage.document.mime_type","typeLabel":"string"},"sha256":{"type":"string","description":"Checksum.","uniqueKey":"oneOf.0.whatsappInboundMessage.document.sha256","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappInboundMessage.document","typeLabel":"object"},"sticker":{"type":"object","description":"When a message with media (`image` | `document` | `audio` | `video` | `sticker`) is received, the WhatsApp Business API client will download the media. Once the media is downloaded, a notification is sent to your Webhook. This message contains information that identifies the media object and enables you to find and download the object.","properties":{"id":{"type":"string","description":"ID of the media. Can be used to delete the media if stored locally on the client.","uniqueKey":"oneOf.0.whatsappInboundMessage.sticker.id","typeLabel":"string"},"link":{"type":"string","description":"The url to download the media file.\nNote that This link can be directly accessed in a few minutes for the convenience of the consumer, but you should always include an `X-API-Key` header to download this file within a month.","uniqueKey":"oneOf.0.whatsappInboundMessage.sticker.link","typeLabel":"string"},"caption":{"type":"string","description":"The provided caption for the media. Only present if specified.","uniqueKey":"oneOf.0.whatsappInboundMessage.sticker.caption","typeLabel":"string"},"filename":{"type":"string","description":"Filename on the sender's device. This will only be present in `document` media messages.","uniqueKey":"oneOf.0.whatsappInboundMessage.sticker.filename","typeLabel":"string"},"metadata":{"type":"object","additionalProperties":{"type":"object","uniqueKey":"oneOf.0.whatsappInboundMessage.sticker.metadata.additionalProperties","typeLabel":"object"},"description":"Metadata pertaining to `sticker` media.","uniqueKey":"oneOf.0.whatsappInboundMessage.sticker.metadata","typeLabel":"object"},"mime_type":{"type":"string","description":"Mime type of the media.","uniqueKey":"oneOf.0.whatsappInboundMessage.sticker.mime_type","typeLabel":"string"},"sha256":{"type":"string","description":"Checksum.","uniqueKey":"oneOf.0.whatsappInboundMessage.sticker.sha256","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappInboundMessage.sticker","typeLabel":"object"},"interactive":{"type":"object","description":"When a customer has interacted with your message, this object is included in the message object.","properties":{"type":{"type":"string","description":"The type of interactive message received.\n- `button_reply`: Sent when a customer clicks a button.\n- `list_reply`: Sent when a customer selects an item from a list.\n- `nfm_reply`: Sent when a customer responds to a WhatsApp Flow (Next Feature Messaging).\n- `call_permission_reply`: Sent when a customer responds to a call permission request.","enum":["button_reply","list_reply","nfm_reply","call_permission_reply"],"uniqueKey":"oneOf.0.whatsappInboundMessage.interactive.type","typeLabel":"enum\u003cstring>"},"button_reply":{"type":"object","description":"Sent when a customer clicks a button. Returned when `type` is `button_reply`.","properties":{"id":{"type":"string","description":"Unique ID of the clicked button.","uniqueKey":"oneOf.0.whatsappInboundMessage.interactive.button_reply.id","typeLabel":"string"},"title":{"type":"string","description":"Title of a button.","uniqueKey":"oneOf.0.whatsappInboundMessage.interactive.button_reply.title","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappInboundMessage.interactive.button_reply","typeLabel":"object"},"list_reply":{"type":"object","description":"Sent when a customer selects an item from a list. Returned when `type` is `list_reply`.","properties":{"id":{"type":"string","description":"Unique ID of the selected list item.","uniqueKey":"oneOf.0.whatsappInboundMessage.interactive.list_reply.id","typeLabel":"string"},"title":{"type":"string","description":"Title of the selected list item.","uniqueKey":"oneOf.0.whatsappInboundMessage.interactive.list_reply.title","typeLabel":"string"},"description":{"type":"string","description":"Description of the selected row.","uniqueKey":"oneOf.0.whatsappInboundMessage.interactive.list_reply.description","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappInboundMessage.interactive.list_reply","typeLabel":"object"},"nfm_reply":{"type":"object","description":"Sent when a customer responds to a WhatsApp Flow (Next Feature Messaging). Returned when `type` is `nfm_reply`.","properties":{"name":{"type":"string","description":"The name of the flow or form being replied to.","example":"flow","uniqueKey":"oneOf.0.whatsappInboundMessage.interactive.nfm_reply.name","typeLabel":"string"},"response_json":{"type":"string","description":"JSON string containing the user's responses to the flow. Contains form field values and flow token.","example":"{\"flow_token\":\"unused\",\"screen_0_firstName_0\":\"王\",\"screen_1_TextInput_1\":\"123\",\"screen_1_TextInput_0\":\"11\",\"screen_0_lastName_1\":\"TESTNAME\"}","uniqueKey":"oneOf.0.whatsappInboundMessage.interactive.nfm_reply.response_json","typeLabel":"string"},"body":{"type":"string","description":"The body content of the flow reply message.","example":"Sent","uniqueKey":"oneOf.0.whatsappInboundMessage.interactive.nfm_reply.body","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappInboundMessage.interactive.nfm_reply","typeLabel":"object"},"call_permission_reply":{"type":"object","description":"Sent when a customer responds to a call permission request. Returned when `type` is `call_permission_reply`.\nThis occurs when WhatsApp prompts users to grant callback permissions after they call your business.","properties":{"response":{"type":"string","description":"The customer's response to the call permission request.\n- `accept`: User granted permission for business to call back\n- `reject`: User rejected permission for business to call back","enum":["accept","reject"],"example":"accept","uniqueKey":"oneOf.0.whatsappInboundMessage.interactive.call_permission_reply.response","typeLabel":"enum\u003cstring>"},"expiration_timestamp":{"type":"integer","format":"int64","description":"The timestamp (in seconds) when the call permission expires.\nOnly present when response is \"accept\" and is_permanent is false.","example":1672531200,"uniqueKey":"oneOf.0.whatsappInboundMessage.interactive.call_permission_reply.expiration_timestamp","typeLabel":"integer\u003cint64>"},"is_permanent":{"type":"boolean","description":"Whether the permission is permanent or temporary.\n- `true`: Permanent authorization (no expiration)\n- `false`: Temporary authorization (expires at expiration_timestamp)","example":false,"uniqueKey":"oneOf.0.whatsappInboundMessage.interactive.call_permission_reply.is_permanent","typeLabel":"boolean"}},"uniqueKey":"oneOf.0.whatsappInboundMessage.interactive.call_permission_reply","typeLabel":"object"}},"uniqueKey":"oneOf.0.whatsappInboundMessage.interactive","typeLabel":"object"},"location":{"type":"object","description":"When you receive a notification of a user's static location, the location object provides the details of the location.","properties":{"latitude":{"type":"number","format":"double","description":"Latitude of location being sent.","uniqueKey":"oneOf.0.whatsappInboundMessage.location.latitude","typeLabel":"number\u003cdouble>"},"longitude":{"type":"number","format":"double","description":"Longitude of location being sent.","uniqueKey":"oneOf.0.whatsappInboundMessage.location.longitude","typeLabel":"number\u003cdouble>"},"address":{"type":"string","description":"Address of the location.","uniqueKey":"oneOf.0.whatsappInboundMessage.location.address","typeLabel":"string"},"name":{"type":"string","description":"Name of the location.","uniqueKey":"oneOf.0.whatsappInboundMessage.location.name","typeLabel":"string"},"url":{"type":"string","description":"URL for the website where the user downloaded the location information.","uniqueKey":"oneOf.0.whatsappInboundMessage.location.url","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappInboundMessage.location","typeLabel":"object"},"button":{"type":"object","description":"When the message type field is set to `button`, this object is included in the message object.","properties":{"payload":{"type":"string","description":"The payload for a button set up by the business that a customer clicked as part of an interactive message.","uniqueKey":"oneOf.0.whatsappInboundMessage.button.payload","typeLabel":"string"},"text":{"type":"string","description":"Button text.","uniqueKey":"oneOf.0.whatsappInboundMessage.button.text","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappInboundMessage.button","typeLabel":"object"},"contacts":{"type":"array","items":{"type":"object","description":"When the message type filed is set to `contacts`, this object is included in the message object.","required":["name"],"properties":{"name":{"type":"object","description":"Full contact name formatted as a name object.","required":["formatted_name"],"properties":{"formatted_name":{"type":"string","description":"Full name, as it normally appears.","isRequired":true,"uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].name.formatted_name","typeLabel":"string"},"first_name":{"type":"string","description":"First name.","uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].name.first_name","typeLabel":"string"},"last_name":{"type":"string","description":"Last name.","uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].name.last_name","typeLabel":"string"},"middle_name":{"type":"string","description":"Middle name.","uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].name.middle_name","typeLabel":"string"},"suffix":{"type":"string","description":"Name suffix.","uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].name.suffix","typeLabel":"string"},"prefix":{"type":"string","description":"Name prefix.","uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].name.prefix","typeLabel":"string"}},"isRequired":true,"uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].name","typeLabel":"object"},"addresses":{"type":"array","items":{"type":"object","description":"Full contact address(es) formatted as an addresses object.","properties":{"street":{"type":"string","description":"Street number and name.","uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].addresses.items.[INDEX].street","typeLabel":"string"},"city":{"type":"string","description":"City name.","uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].addresses.items.[INDEX].city","typeLabel":"string"},"state":{"type":"string","description":"State abbreviation.","uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].addresses.items.[INDEX].state","typeLabel":"string"},"zip":{"type":"string","description":"ZIP code.","uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].addresses.items.[INDEX].zip","typeLabel":"string"},"country":{"type":"string","description":"Full country name.","uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].addresses.items.[INDEX].country","typeLabel":"string"},"country_code":{"type":"string","description":"Two-letter country abbreviation.","uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].addresses.items.[INDEX].country_code","typeLabel":"string"},"type":{"type":"string","description":"Standard values are `HOME` and `WORK`.","example":"WORK","uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].addresses.items.[INDEX].type","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].addresses.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].addresses","typeLabel":"object[]"},"birthday":{"type":"string","description":"`YYYY-MM-DD` formatted string.","example":"2022-09-27","uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].birthday","typeLabel":"string"},"emails":{"type":"array","items":{"type":"object","description":"Contact email address(es) formatted as an emails object.","properties":{"email":{"type":"string","description":"Email address.","uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].emails.items.[INDEX].email","typeLabel":"string"},"type":{"type":"string","description":"Standard values are `HOME` and `WORK`.","example":"WORK","uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].emails.items.[INDEX].type","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].emails.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].emails","typeLabel":"object[]"},"org":{"type":"object","description":"Contact organization information formatted as an org object.","properties":{"company":{"type":"string","description":"Name of the contact's company.","uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].org.company","typeLabel":"string"},"department":{"type":"string","description":"Name of the contact's department.","uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].org.department","typeLabel":"string"},"title":{"type":"string","description":"Contact's business title.","uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].org.title","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].org","typeLabel":"object"},"phones":{"type":"array","description":"Contact phone number(s) formatted as a phone object.","items":{"type":"object","properties":{"phone":{"type":"string","description":"Automatically populated with the `wa_id` value as a formatted phone number.","uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].phones.items.[INDEX].phone","typeLabel":"string"},"type":{"type":"string","description":"Standard Values are `CELL`, `MAIN`, `IPHONE`, `HOME`, and `WORK`.","uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].phones.items.[INDEX].type","typeLabel":"string"},"wa_id":{"type":"string","description":"WhatsApp ID.","uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].phones.items.[INDEX].wa_id","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].phones.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].phones","typeLabel":"object[]"},"urls":{"type":"array","description":"Contact URL(s) formatted as a urls object.","items":{"type":"object","properties":{"url":{"type":"string","description":"URL.","uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].urls.items.[INDEX].url","typeLabel":"string"},"type":{"type":"string","description":"Standard values are `HOME` and `WORK`.","uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].urls.items.[INDEX].type","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].urls.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].urls","typeLabel":"object[]"},"vcard":{"type":"string","description":"Optional vCard supplied with the shared contact payload.","uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].vcard","typeLabel":"string"},"origin":{"type":"string","description":"Set to `contact_request` when the user shared the contact in response to a request-contact-info message.","example":"contact_request","uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX].origin","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappInboundMessage.contacts.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappInboundMessage.contacts","typeLabel":"object[]"},"reaction":{"type":"object","description":"When a user reacts to messages with an emoji, the message type is set to `reaction`, and this field is included.","required":["message_id"],"properties":{"message_id":{"type":"string","description":"Specifies the `wamid` of the message received that contained the reaction.","example":"wamid.BgNODYxN...","isRequired":true,"uniqueKey":"oneOf.0.whatsappInboundMessage.reaction.message_id","typeLabel":"string"},"emoji":{"type":"string","description":"**Required** when you send a `reaction` message. Set it to `\"\"` if you want to remove the emoji.\n**Optional** when you received a message from a user. This field is included when a user reacts to messages with an emoji. Otherwise, it indicates a user removed the emoji.","uniqueKey":"oneOf.0.whatsappInboundMessage.reaction.emoji","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappInboundMessage.reaction","typeLabel":"object"},"order":{"type":"object","description":"When a customer places an order, the message type is set to `order`, and this field is included.","properties":{"catalog_id":{"type":"string","description":"The catalog ID.","example":"the-catalog_id","uniqueKey":"oneOf.0.whatsappInboundMessage.order.catalog_id","typeLabel":"string"},"product_items":{"type":"array","items":{"type":"object","properties":{"product_retailer_id":{"type":"string","description":"The product SKU identifier.","uniqueKey":"oneOf.0.whatsappInboundMessage.order.product_items.items.[INDEX].product_retailer_id","typeLabel":"string"},"quantity":{"type":"integer","format":"int32","description":"Number of item.","uniqueKey":"oneOf.0.whatsappInboundMessage.order.product_items.items.[INDEX].quantity","typeLabel":"integer\u003cint32>"},"item_price":{"type":"number","format":"double","description":"Unitary price of item.","uniqueKey":"oneOf.0.whatsappInboundMessage.order.product_items.items.[INDEX].item_price","typeLabel":"number\u003cdouble>"},"currency":{"type":"string","description":"Price currency. [ISO 4217 currency code](https://en.wikipedia.org/wiki/ISO_4217).","example":"USD","uniqueKey":"oneOf.0.whatsappInboundMessage.order.product_items.items.[INDEX].currency","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappInboundMessage.order.product_items.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappInboundMessage.order.product_items","typeLabel":"object[]"},"text":{"type":"string","description":"Text message sent along with the order.","uniqueKey":"oneOf.0.whatsappInboundMessage.order.text","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappInboundMessage.order","typeLabel":"object"},"system":{"type":"object","description":"When the message type is set to `system`, this field is included.\nThis object is added to Webhooks if a user has changed their phone number and if a user’s identity has potentially changed on WhatsApp.","properties":{"body":{"type":"string","description":"Describes the system message event. Supported use cases are:\n- Phone number update: for when a user changes from an old number to a new number.\n- Identity update: for when a user identity has changed.","uniqueKey":"oneOf.0.whatsappInboundMessage.system.body","typeLabel":"string"},"wa_id":{"type":"string","description":"**Added to Webhooks for phone number updates.**\n\nNew WhatsApp ID of the customer.","uniqueKey":"oneOf.0.whatsappInboundMessage.system.wa_id","typeLabel":"string"},"user_id":{"type":"string","description":"**Added to Webhooks for phone number updates.**\n\nThe customer's new WhatsApp Business-scoped user ID (BSUID). This\nfield keeps Meta's original snake_case name inside the `system`\nobject.","example":"US.13491208655302741919","uniqueKey":"oneOf.0.whatsappInboundMessage.system.user_id","typeLabel":"string"},"parent_user_id":{"type":"string","description":"**Added to Webhooks for phone number updates when parent BSUIDs are enabled.**\n\nThe customer's new parent WhatsApp Business-scoped user ID. This\nfield keeps Meta's original snake_case name inside the `system`\nobject.","example":"US.ENT.11815799212886844831","uniqueKey":"oneOf.0.whatsappInboundMessage.system.parent_user_id","typeLabel":"string"},"type":{"type":"string","description":"Supported types are:\n- `user_changed_number`: for a user changed number notification.\n- `user_identity_changed`: for user identity changed notification.","uniqueKey":"oneOf.0.whatsappInboundMessage.system.type","typeLabel":"string"},"user":{"type":"string","description":"**Added to Webhooks for identity updates.**\n\nThe new WhatsApp user ID of the customer.","uniqueKey":"oneOf.0.whatsappInboundMessage.system.user","typeLabel":"string"},"new_wa_id":{"type":"string","description":"**Added to Webhooks for phone number updates.**\n\nNew WhatsApp ID of the customer.","uniqueKey":"oneOf.0.whatsappInboundMessage.system.new_wa_id","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappInboundMessage.system","typeLabel":"object"},"errors":{"type":"array","items":{"type":"object","description":"When the message type `unsupported`, this object is included.","properties":{"code":{"type":"string","description":"The error code.","example":131051,"uniqueKey":"oneOf.0.whatsappInboundMessage.errors.items.[INDEX].code","typeLabel":"string"},"title":{"type":"string","description":"The error title.","example":"Message type unknown","uniqueKey":"oneOf.0.whatsappInboundMessage.errors.items.[INDEX].title","typeLabel":"string"},"message":{"type":"string","description":"The error message.","example":"Message type unknown","uniqueKey":"oneOf.0.whatsappInboundMessage.errors.items.[INDEX].message","typeLabel":"string"},"error_data":{"type":"object","description":"An error data object with the following properties:\n- `details`: A string describing the reason for the error. Example: `Message type is currently not supported.`.","uniqueKey":"oneOf.0.whatsappInboundMessage.errors.items.[INDEX].error_data","typeLabel":"object"}},"uniqueKey":"oneOf.0.whatsappInboundMessage.errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappInboundMessage.errors","typeLabel":"object[]"},"context":{"type":"object","description":"Message context.","properties":{"forwarded":{"type":"boolean","description":"**Added to Webhooks if message was forwarded.**\n\nSet to `true` if the received message has been forwarded.","uniqueKey":"oneOf.0.whatsappInboundMessage.context.forwarded","typeLabel":"boolean"},"frequently_forwarded":{"type":"boolean","description":"**Added to Webhooks if message has been frequently forwarded.**\n\nSet to `true` if the received message has been forwarded more than five times.","uniqueKey":"oneOf.0.whatsappInboundMessage.context.frequently_forwarded","typeLabel":"boolean"},"from":{"type":"string","description":"**Added to Webhooks if message is an inbound reply to a sent message.**\n\nThe WhatsApp ID (a phone number without the '+' prefix) of the sender of the sent message.","uniqueKey":"oneOf.0.whatsappInboundMessage.context.from","typeLabel":"string"},"id":{"type":"string","description":"**Optional.**\n\nThe `wamid` for the sent message for an inbound reply. `wamid` is the original message ID on WhatsApp’s platform.","example":"wamid.BgNODYxN...","uniqueKey":"oneOf.0.whatsappInboundMessage.context.id","typeLabel":"string"},"referred_product":{"type":"object","description":"**Required for Product Inquiry Messages.**\n\nSpecifies the product the user is requesting information about. See also [Sell Products \u0026 Services](https://developers.facebook.com/docs/whatsapp/cloud-api/guides/sell-products-and-services).","properties":{"catalog_id":{"type":"string","description":"The catalog ID.","uniqueKey":"oneOf.0.whatsappInboundMessage.context.referred_product.catalog_id","typeLabel":"string"},"product_retailer_id":{"type":"string","description":"The product SKU identifier.","uniqueKey":"oneOf.0.whatsappInboundMessage.context.referred_product.product_retailer_id","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappInboundMessage.context.referred_product","typeLabel":"object"}},"uniqueKey":"oneOf.0.whatsappInboundMessage.context","typeLabel":"object"},"referral":{"type":"object","description":"When a user messages businesses using call-to-actions buttons on [Ads that Click to WhatsApp](https://www.facebook.com/business/help/447934475640650) or a [Facebook Page call-to-action buttons](https://www.facebook.com/help/977869848936797), this field is included as an attachment.","properties":{"source_url":{"type":"string","description":"Specifies the URL that leads to the ad or post clicked by the user. Opening this URL takes you to the ad viewed by your user.","uniqueKey":"oneOf.0.whatsappInboundMessage.referral.source_url","typeLabel":"string"},"source_type":{"type":"string","description":"Specifies the type of the ad's source. Supported values are \"ad\" or \"post\".","uniqueKey":"oneOf.0.whatsappInboundMessage.referral.source_type","typeLabel":"string"},"source_id":{"type":"string","description":"Specifies the Meta ID for an ad or post.","uniqueKey":"oneOf.0.whatsappInboundMessage.referral.source_id","typeLabel":"string"},"headline":{"type":"string","description":"Specifies the headline used in the ad or post that generated the message.","uniqueKey":"oneOf.0.whatsappInboundMessage.referral.headline","typeLabel":"string"},"body":{"type":"string","description":"The description, or body, from the ad or post that generated the message.","uniqueKey":"oneOf.0.whatsappInboundMessage.referral.body","typeLabel":"string"},"media_type":{"type":"string","description":"Media present in the ad or post the user clicked. Supported values are \"image\" or \"video\".","uniqueKey":"oneOf.0.whatsappInboundMessage.referral.media_type","typeLabel":"string"},"image_url":{"type":"string","description":"**Added if media_type is \"image\".**\n\nContains a URL to the raw image.","uniqueKey":"oneOf.0.whatsappInboundMessage.referral.image_url","typeLabel":"string"},"video_url":{"type":"string","description":"**Added if media_type is \"video\".**\n\nContains a URL to the video.","uniqueKey":"oneOf.0.whatsappInboundMessage.referral.video_url","typeLabel":"string"},"thumbnail_url":{"type":"string","description":"**Added if media_type is \"video\".**\n\nContains a URL to the thumbnail image of the clicked video.","uniqueKey":"oneOf.0.whatsappInboundMessage.referral.thumbnail_url","typeLabel":"string"},"ctwa_clid":{"type":"string","description":"Click ID generated by Meta for ads that click to WhatsApp.","uniqueKey":"oneOf.0.whatsappInboundMessage.referral.ctwa_clid","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappInboundMessage.referral","typeLabel":"object"},"groupId":{"type":"string","description":"WhatsApp group ID. This field is included when the inbound message is sent in a WhatsApp group.","example":"120363345678901234@g.us","uniqueKey":"oneOf.0.whatsappInboundMessage.groupId","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappInboundMessage","typeLabel":"object"},"whatsappMetaBusinessAgent":{"type":"object","description":"Included for whatsapp.meta_business_agent.handover.updated. Currently limited to Public REST API Agents.","properties":{"agentId":{"type":"string","description":"YCloud Agent ID. Not a Meta Agent ID or an Inbox assignee ID.","example":"00000000-0000-4000-8000-000000000001","uniqueKey":"oneOf.0.whatsappMetaBusinessAgent.agentId","typeLabel":"string"},"metaAgentId":{"type":"string","description":"Meta Agent ID, when available.","example":"META_AGENT_ID","uniqueKey":"oneOf.0.whatsappMetaBusinessAgent.metaAgentId","typeLabel":"string"},"phoneNumberId":{"type":"string","description":"Meta business phone number ID. Not an E.164 phone number.","example":"PHONE_NUMBER_ID","uniqueKey":"oneOf.0.whatsappMetaBusinessAgent.phoneNumberId","typeLabel":"string"},"wabaId":{"type":"string","description":"WhatsApp Business Account ID from the source callback, when available.","example":"WABA_ID","uniqueKey":"oneOf.0.whatsappMetaBusinessAgent.wabaId","typeLabel":"string"},"consumerPhoneNumber":{"type":"string","description":"Consumer phone number from the handover callback, normalized to E.164 when available. This is not the business number or phoneNumberId.","pattern":"^\\+[1-9][0-9]{7,14}$","example":"+12025550124","uniqueKey":"oneOf.0.whatsappMetaBusinessAgent.consumerPhoneNumber","typeLabel":"string"},"controlState":{"type":"string","description":"Present for handover events. Currently APP_CONTROL_TAKEN for Public REST API\nhandover callbacks. Does not confirm an Inbox assignment or message delivery.","example":"APP_CONTROL_TAKEN","uniqueKey":"oneOf.0.whatsappMetaBusinessAgent.controlState","typeLabel":"string"},"actor":{"type":"string","description":"Optional handover source actor. For a control_passed handoff this is the\nprevious owner app ID, not the employee who receives the conversation.","example":"PREVIOUS_OWNER_APP_ID","uniqueKey":"oneOf.0.whatsappMetaBusinessAgent.actor","typeLabel":"string"},"reason":{"type":"string","description":"Optional provider handover reason or metadata, for example customer_request. Not a closed enum.","example":"customer_request","uniqueKey":"oneOf.0.whatsappMetaBusinessAgent.reason","typeLabel":"string"},"timestamp":{"type":"integer","format":"int64","description":"Source event time in Unix milliseconds, or processing time if unavailable.","example":1788919204000,"uniqueKey":"oneOf.0.whatsappMetaBusinessAgent.timestamp","typeLabel":"integer\u003cint64>"}},"uniqueKey":"oneOf.0.whatsappMetaBusinessAgent","typeLabel":"object"},"whatsappGroup":{"type":"object","description":"Included when `type` is `whatsapp.group.lifecycle_update`, `whatsapp.group.participants_update`, `whatsapp.group.settings_update`, `whatsapp.group.status_update`, or when `type` is `whatsapp.message.updated` for group message status updates.","properties":{"wabaId":{"type":"string","description":"WhatsApp Business Account ID.","example":"123456789012345","uniqueKey":"oneOf.0.whatsappGroup.wabaId","typeLabel":"string"},"displayPhoneNumber":{"type":"string","description":"The display phone number from WhatsApp webhook metadata.","example":"16315551111","uniqueKey":"oneOf.0.whatsappGroup.displayPhoneNumber","typeLabel":"string"},"phoneNumberId":{"type":"string","description":"WhatsApp phone number ID.","example":"1234567890123456","uniqueKey":"oneOf.0.whatsappGroup.phoneNumberId","typeLabel":"string"},"field":{"type":"string","description":"WhatsApp webhook field that produced the group event.","enum":["group_lifecycle_update","group_participants_update","group_settings_update","group_status_update","messages"],"uniqueKey":"oneOf.0.whatsappGroup.field","typeLabel":"enum\u003cstring>"},"type":{"type":"string","description":"Specific WhatsApp group event type.","enum":["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"],"uniqueKey":"oneOf.0.whatsappGroup.type","typeLabel":"enum\u003cstring>"},"requestId":{"type":"string","description":"The request ID returned by an asynchronous group API operation.","example":"REQ_1","uniqueKey":"oneOf.0.whatsappGroup.requestId","typeLabel":"string"},"status":{"type":"string","description":"WhatsApp group webhook status.","enum":["created","failed","deleted","added","removed","left","requested","revoked","updated","suspended","suspend_cleared","sent","delivered","read","expired"],"uniqueKey":"oneOf.0.whatsappGroup.status","typeLabel":"enum\u003cstring>"},"groupId":{"type":"string","description":"WhatsApp group ID.","example":"120363345678901234@g.us","uniqueKey":"oneOf.0.whatsappGroup.groupId","typeLabel":"string"},"messageId":{"type":"string","description":"YCloud group-message ID. Present only when the status event is linked to a saved outbound group message.","example":"wam_group_01","uniqueKey":"oneOf.0.whatsappGroup.messageId","typeLabel":"string"},"inviteLink":{"type":"string","description":"The group invite link.","example":"https://chat.whatsapp.com/AbCdEfGhIjK","uniqueKey":"oneOf.0.whatsappGroup.inviteLink","typeLabel":"string"},"reason":{"type":"string","description":"The reason for a participant, join request, or removal event.","example":"invite_link","uniqueKey":"oneOf.0.whatsappGroup.reason","typeLabel":"string"},"initiatedBy":{"type":"string","description":"Indicates who initiated a participant removal event.","enum":["business","participant"],"example":"business","uniqueKey":"oneOf.0.whatsappGroup.initiatedBy","typeLabel":"enum\u003cstring>"},"joinRequestId":{"type":"string","description":"The join request ID.","example":"join-request-id","uniqueKey":"oneOf.0.whatsappGroup.joinRequestId","typeLabel":"string"},"waId":{"type":"string","description":"WhatsApp user ID for a single participant event.","example":"16315551111","uniqueKey":"oneOf.0.whatsappGroup.waId","typeLabel":"string"},"recipientUserId":{"type":"string","description":"Business-scoped user ID for a single participant event.","example":"US.1234","uniqueKey":"oneOf.0.whatsappGroup.recipientUserId","typeLabel":"string"},"parentRecipientUserId":{"type":"string","description":"Parent business-scoped user ID for a single participant event.","example":"US.parent123","uniqueKey":"oneOf.0.whatsappGroup.parentRecipientUserId","typeLabel":"string"},"customerProfile":{"type":"object","description":"WhatsApp customer profile information.","properties":{"name":{"type":"string","description":"WhatsApp profile name.","example":"John Doe","uniqueKey":"oneOf.0.whatsappGroup.customerProfile.name","typeLabel":"string"},"username":{"type":"string","description":"WhatsApp username.","example":"john_doe","uniqueKey":"oneOf.0.whatsappGroup.customerProfile.username","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappGroup.customerProfile","typeLabel":"object"},"subject":{"type":"string","description":"The group subject.","example":"New Purchase Inquiry","uniqueKey":"oneOf.0.whatsappGroup.subject","typeLabel":"string"},"description":{"type":"string","description":"The group description.","example":"Group for purchase inquiries.","uniqueKey":"oneOf.0.whatsappGroup.description","typeLabel":"string"},"joinApprovalMode":{"type":"string","description":"WhatsApp group join approval mode.\n- `approval_required`: New members must be approved before joining.\n- `auto_approve`: New members can join without approval.","enum":["approval_required","auto_approve"],"example":"auto_approve","uniqueKey":"oneOf.0.whatsappGroup.joinApprovalMode","typeLabel":"enum\u003cstring>"},"addedParticipants":{"type":"array","description":"Participants added to the group.","items":{"type":"object","description":"Participant information included in group webhook payloads.","properties":{"input":{"type":"string","description":"The original participant input.","example":"US.1234","uniqueKey":"oneOf.0.whatsappGroup.addedParticipants.items.[INDEX].input","typeLabel":"string"},"waId":{"type":"string","description":"WhatsApp user ID.","example":"16315551111","uniqueKey":"oneOf.0.whatsappGroup.addedParticipants.items.[INDEX].waId","typeLabel":"string"},"recipientUserId":{"type":"string","description":"Business-scoped user ID.","example":"US.1234","uniqueKey":"oneOf.0.whatsappGroup.addedParticipants.items.[INDEX].recipientUserId","typeLabel":"string"},"parentRecipientUserId":{"type":"string","description":"Parent business-scoped user ID.","example":"US.parent123","uniqueKey":"oneOf.0.whatsappGroup.addedParticipants.items.[INDEX].parentRecipientUserId","typeLabel":"string"},"customerProfile":{"type":"object","description":"WhatsApp customer profile information.","properties":{"name":{"type":"string","description":"WhatsApp profile name.","example":"John Doe","uniqueKey":"oneOf.0.whatsappGroup.addedParticipants.items.[INDEX].customerProfile.name","typeLabel":"string"},"username":{"type":"string","description":"WhatsApp username.","example":"john_doe","uniqueKey":"oneOf.0.whatsappGroup.addedParticipants.items.[INDEX].customerProfile.username","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappGroup.addedParticipants.items.[INDEX].customerProfile","typeLabel":"object"},"errors":{"type":"array","description":"Errors returned by WhatsApp for this participant.","items":{"type":"object","additionalProperties":true,"uniqueKey":"oneOf.0.whatsappGroup.addedParticipants.items.[INDEX].errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappGroup.addedParticipants.items.[INDEX].errors","typeLabel":"object[]"}},"uniqueKey":"oneOf.0.whatsappGroup.addedParticipants.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappGroup.addedParticipants","typeLabel":"object[]"},"removedParticipants":{"type":"array","description":"Participants removed from the group.","items":{"type":"object","description":"Participant information included in group webhook payloads.","properties":{"input":{"type":"string","description":"The original participant input.","example":"US.1234","uniqueKey":"oneOf.0.whatsappGroup.removedParticipants.items.[INDEX].input","typeLabel":"string"},"waId":{"type":"string","description":"WhatsApp user ID.","example":"16315551111","uniqueKey":"oneOf.0.whatsappGroup.removedParticipants.items.[INDEX].waId","typeLabel":"string"},"recipientUserId":{"type":"string","description":"Business-scoped user ID.","example":"US.1234","uniqueKey":"oneOf.0.whatsappGroup.removedParticipants.items.[INDEX].recipientUserId","typeLabel":"string"},"parentRecipientUserId":{"type":"string","description":"Parent business-scoped user ID.","example":"US.parent123","uniqueKey":"oneOf.0.whatsappGroup.removedParticipants.items.[INDEX].parentRecipientUserId","typeLabel":"string"},"customerProfile":{"type":"object","description":"WhatsApp customer profile information.","properties":{"name":{"type":"string","description":"WhatsApp profile name.","example":"John Doe","uniqueKey":"oneOf.0.whatsappGroup.removedParticipants.items.[INDEX].customerProfile.name","typeLabel":"string"},"username":{"type":"string","description":"WhatsApp username.","example":"john_doe","uniqueKey":"oneOf.0.whatsappGroup.removedParticipants.items.[INDEX].customerProfile.username","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappGroup.removedParticipants.items.[INDEX].customerProfile","typeLabel":"object"},"errors":{"type":"array","description":"Errors returned by WhatsApp for this participant.","items":{"type":"object","additionalProperties":true,"uniqueKey":"oneOf.0.whatsappGroup.removedParticipants.items.[INDEX].errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappGroup.removedParticipants.items.[INDEX].errors","typeLabel":"object[]"}},"uniqueKey":"oneOf.0.whatsappGroup.removedParticipants.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappGroup.removedParticipants","typeLabel":"object[]"},"failedParticipants":{"type":"array","description":"Participants that failed to be added or removed.","items":{"type":"object","description":"Participant information included in group webhook payloads.","properties":{"input":{"type":"string","description":"The original participant input.","example":"US.1234","uniqueKey":"oneOf.0.whatsappGroup.failedParticipants.items.[INDEX].input","typeLabel":"string"},"waId":{"type":"string","description":"WhatsApp user ID.","example":"16315551111","uniqueKey":"oneOf.0.whatsappGroup.failedParticipants.items.[INDEX].waId","typeLabel":"string"},"recipientUserId":{"type":"string","description":"Business-scoped user ID.","example":"US.1234","uniqueKey":"oneOf.0.whatsappGroup.failedParticipants.items.[INDEX].recipientUserId","typeLabel":"string"},"parentRecipientUserId":{"type":"string","description":"Parent business-scoped user ID.","example":"US.parent123","uniqueKey":"oneOf.0.whatsappGroup.failedParticipants.items.[INDEX].parentRecipientUserId","typeLabel":"string"},"customerProfile":{"type":"object","description":"WhatsApp customer profile information.","properties":{"name":{"type":"string","description":"WhatsApp profile name.","example":"John Doe","uniqueKey":"oneOf.0.whatsappGroup.failedParticipants.items.[INDEX].customerProfile.name","typeLabel":"string"},"username":{"type":"string","description":"WhatsApp username.","example":"john_doe","uniqueKey":"oneOf.0.whatsappGroup.failedParticipants.items.[INDEX].customerProfile.username","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappGroup.failedParticipants.items.[INDEX].customerProfile","typeLabel":"object"},"errors":{"type":"array","description":"Errors returned by WhatsApp for this participant.","items":{"type":"object","additionalProperties":true,"uniqueKey":"oneOf.0.whatsappGroup.failedParticipants.items.[INDEX].errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappGroup.failedParticipants.items.[INDEX].errors","typeLabel":"object[]"}},"uniqueKey":"oneOf.0.whatsappGroup.failedParticipants.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappGroup.failedParticipants","typeLabel":"object[]"},"settings":{"type":"array","description":"Group setting update details.","items":{"type":"object","description":"Group setting update detail.","properties":{"name":{"type":"string","description":"Setting name.","enum":["profile_picture","group_subject","group_description"],"example":"group_subject","uniqueKey":"oneOf.0.whatsappGroup.settings.items.[INDEX].name","typeLabel":"enum\u003cstring>"},"text":{"type":"string","description":"Text value for subject or description updates.","example":"New Purchase Inquiry","uniqueKey":"oneOf.0.whatsappGroup.settings.items.[INDEX].text","typeLabel":"string"},"updateSuccessful":{"type":"boolean","description":"Whether the setting update succeeded.","example":true,"uniqueKey":"oneOf.0.whatsappGroup.settings.items.[INDEX].updateSuccessful","typeLabel":"boolean"},"mimeType":{"type":"string","description":"MIME type for profile picture updates.","example":"image/jpeg","uniqueKey":"oneOf.0.whatsappGroup.settings.items.[INDEX].mimeType","typeLabel":"string"},"sha256":{"type":"string","description":"SHA-256 hash for profile picture updates.","example":"2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae","uniqueKey":"oneOf.0.whatsappGroup.settings.items.[INDEX].sha256","typeLabel":"string"},"errors":{"type":"array","description":"Errors returned by WhatsApp for this setting.","items":{"type":"object","additionalProperties":true,"uniqueKey":"oneOf.0.whatsappGroup.settings.items.[INDEX].errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappGroup.settings.items.[INDEX].errors","typeLabel":"object[]"}},"uniqueKey":"oneOf.0.whatsappGroup.settings.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappGroup.settings","typeLabel":"object[]"},"errors":{"type":"array","description":"Errors returned by WhatsApp.","items":{"type":"object","additionalProperties":true,"uniqueKey":"oneOf.0.whatsappGroup.errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappGroup.errors","typeLabel":"object[]"},"contacts":{"type":"array","description":"Contacts included in group message status webhooks.","items":{"type":"object","description":"Contact information included in group message status webhooks.","properties":{"customerProfile":{"type":"object","description":"WhatsApp customer profile information.","properties":{"name":{"type":"string","description":"WhatsApp profile name.","example":"John Doe","uniqueKey":"oneOf.0.whatsappGroup.contacts.items.[INDEX].customerProfile.name","typeLabel":"string"},"username":{"type":"string","description":"WhatsApp username.","example":"john_doe","uniqueKey":"oneOf.0.whatsappGroup.contacts.items.[INDEX].customerProfile.username","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappGroup.contacts.items.[INDEX].customerProfile","typeLabel":"object"},"waId":{"type":"string","description":"WhatsApp user ID.","example":"16315551111","uniqueKey":"oneOf.0.whatsappGroup.contacts.items.[INDEX].waId","typeLabel":"string"},"recipientUserId":{"type":"string","description":"Business-scoped user ID.","example":"US.1234","uniqueKey":"oneOf.0.whatsappGroup.contacts.items.[INDEX].recipientUserId","typeLabel":"string"},"parentRecipientUserId":{"type":"string","description":"Parent business-scoped user ID.","example":"US.parent123","uniqueKey":"oneOf.0.whatsappGroup.contacts.items.[INDEX].parentRecipientUserId","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappGroup.contacts.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappGroup.contacts","typeLabel":"object[]"},"statuses":{"type":"array","description":"Group message status details.","items":{"type":"object","description":"Group message status detail.","properties":{"id":{"type":"string","description":"WhatsApp message ID.","example":"wamid.1","uniqueKey":"oneOf.0.whatsappGroup.statuses.items.[INDEX].id","typeLabel":"string"},"status":{"type":"string","description":"Message status.","enum":["sent","delivered","read","failed","expired"],"example":"delivered","uniqueKey":"oneOf.0.whatsappGroup.statuses.items.[INDEX].status","typeLabel":"enum\u003cstring>"},"timestamp":{"type":"integer","format":"int64","description":"Unix timestamp indicating when the message status was updated.","example":1739321024,"uniqueKey":"oneOf.0.whatsappGroup.statuses.items.[INDEX].timestamp","typeLabel":"integer\u003cint64>"},"recipientId":{"type":"string","description":"Recipient group ID.","example":"120363345678901234@g.us","uniqueKey":"oneOf.0.whatsappGroup.statuses.items.[INDEX].recipientId","typeLabel":"string"},"recipientType":{"type":"string","description":"Recipient type.","enum":["group"],"example":"group","uniqueKey":"oneOf.0.whatsappGroup.statuses.items.[INDEX].recipientType","typeLabel":"enum\u003cstring>"},"recipientParticipantId":{"type":"string","description":"WhatsApp user ID of the recipient participant.","example":"16315551111","uniqueKey":"oneOf.0.whatsappGroup.statuses.items.[INDEX].recipientParticipantId","typeLabel":"string"},"recipientUserId":{"type":"string","description":"Business-scoped user ID of the recipient participant.","example":"US.1234","uniqueKey":"oneOf.0.whatsappGroup.statuses.items.[INDEX].recipientUserId","typeLabel":"string"},"parentRecipientUserId":{"type":"string","description":"Parent business-scoped user ID of the recipient participant.","example":"US.parent123","uniqueKey":"oneOf.0.whatsappGroup.statuses.items.[INDEX].parentRecipientUserId","typeLabel":"string"},"conversation":{"type":"object","description":"WhatsApp conversation object included in group message status webhooks.","properties":{"id":{"type":"string","description":"Conversation ID.","example":"conversation-id","uniqueKey":"oneOf.0.whatsappGroup.statuses.items.[INDEX].conversation.id","typeLabel":"string"},"expirationTimestamp":{"type":"integer","format":"int64","description":"Unix timestamp indicating when the conversation expires.","example":1739321024,"uniqueKey":"oneOf.0.whatsappGroup.statuses.items.[INDEX].conversation.expirationTimestamp","typeLabel":"integer\u003cint64>"},"origin":{"type":"object","properties":{"type":{"type":"string","description":"Conversation origin type.","example":"service","uniqueKey":"oneOf.0.whatsappGroup.statuses.items.[INDEX].conversation.origin.type","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappGroup.statuses.items.[INDEX].conversation.origin","typeLabel":"object"}},"uniqueKey":"oneOf.0.whatsappGroup.statuses.items.[INDEX].conversation","typeLabel":"object"},"pricing":{"type":"object","description":"Pricing information included in group message status webhooks.","properties":{"billable":{"type":"boolean","description":"Whether the message is billable.","example":true,"uniqueKey":"oneOf.0.whatsappGroup.statuses.items.[INDEX].pricing.billable","typeLabel":"boolean"},"pricingModel":{"type":"string","description":"Pricing model.","example":"PMP","uniqueKey":"oneOf.0.whatsappGroup.statuses.items.[INDEX].pricing.pricingModel","typeLabel":"string"},"type":{"type":"string","description":"Pricing type.","example":"regular","uniqueKey":"oneOf.0.whatsappGroup.statuses.items.[INDEX].pricing.type","typeLabel":"string"},"category":{"type":"string","description":"Raw group pricing category reported by Meta. YCloud does not expose the internal MM Lite mapping in this webhook field.","enum":["group_marketing","group_utility","group_service"],"example":"group_service","uniqueKey":"oneOf.0.whatsappGroup.statuses.items.[INDEX].pricing.category","typeLabel":"enum\u003cstring>"}},"uniqueKey":"oneOf.0.whatsappGroup.statuses.items.[INDEX].pricing","typeLabel":"object"},"errors":{"type":"array","description":"Errors returned by WhatsApp.","items":{"type":"object","additionalProperties":true,"uniqueKey":"oneOf.0.whatsappGroup.statuses.items.[INDEX].errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappGroup.statuses.items.[INDEX].errors","typeLabel":"object[]"}},"uniqueKey":"oneOf.0.whatsappGroup.statuses.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappGroup.statuses","typeLabel":"object[]"},"webhookTime":{"type":"string","format":"date-time","description":"The time at which WhatsApp triggered this webhook.","example":"2026-05-13T00:00:00.000Z","uniqueKey":"oneOf.0.whatsappGroup.webhookTime","typeLabel":"string\u003cdate-time>"},"dedupeKey":{"type":"string","description":"Idempotency key for deduplicating group webhook events.","example":"WABA_ID|REQ_1|group_lifecycle_update|group_create|created","uniqueKey":"oneOf.0.whatsappGroup.dedupeKey","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappGroup","typeLabel":"object"},"whatsappPhoneNumber":{"type":"object","description":"Included when `type` is `whatsapp.phone_number.deleted`, `whatsapp.phone_number.name_updated`, `whatsapp.phone_number.quality_updated`, or `whatsapp.phone_number.business_username_updated`.","properties":{"id":{"type":"string","description":"Phone number ID.","example":"1234567890123456","uniqueKey":"oneOf.0.whatsappPhoneNumber.id","typeLabel":"string"},"phoneNumber":{"type":"string","description":"Phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","uniqueKey":"oneOf.0.whatsappPhoneNumber.phoneNumber","typeLabel":"string"},"displayPhoneNumber":{"type":"string","description":"Display phone number.","example":"+1 631-555-1111","uniqueKey":"oneOf.0.whatsappPhoneNumber.displayPhoneNumber","typeLabel":"string"},"wabaId":{"type":"string","description":"WhatsApp Business Account ID.","example":"whatsapp-business-account-id","uniqueKey":"oneOf.0.whatsappPhoneNumber.wabaId","typeLabel":"string"},"businessUsername":{"type":"string","description":"Active Business Username for this phone number. The value is a plain username without `@`.","example":"acme.support","uniqueKey":"oneOf.0.whatsappPhoneNumber.businessUsername","typeLabel":"string"},"businessUsernameStatus":{"type":"string","description":"Business Username state for a WhatsApp business phone number.\n- `not_set`: No active or pending Business Username exists.\n- `active`: A Business Username is active.\n- `reserved`: A requested Business Username is reserved by Meta and may still be under review.\n- `pending_review`: Legacy compatibility value for an under-review request. New writes use `reserved`.\nIf an active username exists while a new request is reserved or under review, `businessUsernameStatus` is `reserved`, `businessUsername` contains the still-active username, and `requestedBusinessUsername` contains the requested username.","enum":["not_set","active","pending_review","reserved"],"uniqueKey":"oneOf.0.whatsappPhoneNumber.businessUsernameStatus","typeLabel":"enum\u003cstring>"},"requestedBusinessUsername":{"type":"string","description":"Last requested Business Username that is still under review. This value can coexist with an active `businessUsername` while the new request is pending.","example":"acme.help","uniqueKey":"oneOf.0.whatsappPhoneNumber.requestedBusinessUsername","typeLabel":"string"},"businessUsernameUpdatedAt":{"type":"string","format":"date-time","description":"The time when the Business Username state was last updated.","example":"2026-05-26T12:00:00.000Z","uniqueKey":"oneOf.0.whatsappPhoneNumber.businessUsernameUpdatedAt","typeLabel":"string\u003cdate-time>"},"qualityRating":{"type":"string","description":"Quality rating. One of `GREEN`, `YELLOW`, `RED`, or `UNKNOWN`. See also [Phone Number Quality Rating](https://www.facebook.com/business/help/896873687365001).\n- `GREEN`: High quality.\n- `YELLOW`: Medium quality.\n- `RED`: Low quality.\n- `UNKNOWN`: Unknown quality.","enum":["GREEN","YELLOW","RED","UNKNOWN"],"uniqueKey":"oneOf.0.whatsappPhoneNumber.qualityRating","typeLabel":"enum\u003cstring>"},"messagingLimit":{"type":"string","description":"Messaging limits determine the maximum number of business-initiated conversations each phone number can start in a rolling 24-hour period. See also [Messaging Limits](https://developers.facebook.com/docs/whatsapp/messaging-limits).\n- `TIER_NOT_SET`: Unknown limit.\n- `TIER_50`: 50 business-initiated conversations in a rolling 24-hour period.\n- `TIER_250`: 250 business-initiated conversations in a rolling 24-hour period.\n- `TIER_1K`: 1K business-initiated conversations with unique customers in a rolling 24-hour period.\n- `TIER_10K`: 10K business-initiated conversations with unique customers in a rolling 24-hour period.\n- `TIER_100K`: 100K business-initiated conversations with unique customers in a rolling 24-hour period.\n- `TIER_UNLIMITED`: An unlimited number of business-initiated conversations in a rolling 24-hour period.","example":"TIER_1K","uniqueKey":"oneOf.0.whatsappPhoneNumber.messagingLimit","typeLabel":"string"},"whatsappBusinessManagerMessagingLimit":{"type":"string","description":"The owning business portfolio's messaging limit. Starting October 7, 2025, messaging limits will instead be calculated and set on a business portfolio basis, and will be shared by all business phone numbers within each portfolio. See also [phone_number_quality_update webhook reference](https://developers.facebook.com/docs/whatsapp/cloud-api/webhooks/reference/phone_number_quality_update).\n- `TIER_NOT_SET`: The business phone number has not been used to send a message yet.\n- `TIER_50`: Messaging limit of 50 business-initiated conversations in a rolling 24-hour period.\n- `TIER_250`: Messaging limit of 250 business-initiated conversations in a rolling 24-hour period.\n- `TIER_2K`: Messaging limit of 2,000 business-initiated conversations in a rolling 24-hour period.\n- `TIER_10K`: Messaging limit of 10,000 business-initiated conversations in a rolling 24-hour period.\n- `TIER_100K`: Messaging limit of 100,000 business-initiated conversations in a rolling 24-hour period.\n- `TIER_UNLIMITED`: The business phone number has higher throughput with unlimited business-initiated conversations.","uniqueKey":"oneOf.0.whatsappPhoneNumber.whatsappBusinessManagerMessagingLimit","typeLabel":"string"},"verifiedName":{"type":"string","description":"Verified name.","example":"John’s Cake Shop","uniqueKey":"oneOf.0.whatsappPhoneNumber.verifiedName","typeLabel":"string"},"codeVerificationStatus":{"type":"string","description":"To see if a phone number has been verified via OTP (one-time password).","enum":["VERIFIED","NOT_VERIFIED","EXPIRED"],"uniqueKey":"oneOf.0.whatsappPhoneNumber.codeVerificationStatus","typeLabel":"enum\u003cstring>"},"isOfficialBusinessAccount":{"type":"boolean","description":"Whether this phone number is an official business account or not.\nAn official business account has a green checkmark badge in its profile and chat thread headers. See [Official Business Account](https://developers.facebook.com/docs/whatsapp/overview/business-accounts#official-business-account) for more information.","uniqueKey":"oneOf.0.whatsappPhoneNumber.isOfficialBusinessAccount","typeLabel":"boolean"},"status":{"type":"string","description":"The status of a WhatsApp business phone number.\n- `PENDING`: Pending. Phone number is newly added. Verify and register this phone number so it can be connected to your account.\n- `UNVERIFIED`: Unverified. Verify this phone number to start sending messages.\n- `MANUAL_REVIEW`: Being reviewed. Phone number is currently being reviewed for connection to your account.\n- `DISCONNECTED`: Offline. Phone number is currently not reachable by WhatsApp servers.\n- `CONNECTED`: Connected. Phone number is associated with this account and working properly.\n- `FLAGGED`: Flagged. This phone number has been flagged due to low quality messages.\n- `WARNED`: Warned. A warning has been issued for this number, potentially due to spam reports.\n- `RATE_LIMITED`: Rate limited. The number of messages you can send from this phone number may be restricted.\n- `BANNED`: Banned. Phone number cannot be used with a WhatsApp account.\n- `RESTRICTED`: Restricted. This phone number has reached its 24-hour messaging limit and can no longer send messages to customers. Please wait until the messaging limit is reset to send messages.\n- `BLOCKED`: Message limit reached. The limit has been reached for this 24-hour period.\n- `MIGRATED`: Transferred. This phone number has been transferred to another WhatsApp Business account.\n- `UNKNOWN`: Unavailable. The status of this phone number can't be determined right now.","enum":["PENDING","UNVERIFIED","MANUAL_REVIEW","DISCONNECTED","CONNECTED","FLAGGED","WARNED","RATE_LIMITED","BANNED","RESTRICTED","BLOCKED","MIGRATED","UNKNOWN"],"uniqueKey":"oneOf.0.whatsappPhoneNumber.status","typeLabel":"enum\u003cstring>"},"nameStatus":{"type":"string","description":"The review status of the current display name request. See also [Get Display Name Status](https://developers.facebook.com/docs/whatsapp/business-management-api/manage-phone-numbers#get-display-name-status--beta-).\n- `APPROVED`: The name has been approved. You can download your certificate now.\n- `AVAILABLE_WITHOUT_REVIEW`: The certificate for the phone is available and display name is ready to use without review.\n- `DECLINED`: The name has not been approved. You cannot download your certificate.\n- `EXPIRED`: Your certificate has expire and can no longer be downloaded.\n- `PENDING_REVIEW`: Your name request is under review. You cannot download your certificate.\n- `NONE`: No certificate is available.","enum":["APPROVED","AVAILABLE_WITHOUT_REVIEW","DECLINED","EXPIRED","PENDING_REVIEW","NONE"],"uniqueKey":"oneOf.0.whatsappPhoneNumber.nameStatus","typeLabel":"enum\u003cstring>"},"newNameStatus":{"type":"string","description":"The review status of the new display name request.\nSee also [Get Display Name Status](https://developers.facebook.com/docs/whatsapp/business-management-api/manage-phone-numbers#get-display-name-status--beta-).","enum":["APPROVED","AVAILABLE_WITHOUT_REVIEW","DECLINED","EXPIRED","PENDING_REVIEW","NONE"],"uniqueKey":"oneOf.0.whatsappPhoneNumber.newNameStatus","typeLabel":"enum\u003cstring>"},"decision":{"type":"string","description":"Review decision made on this phone number. One of `APPROVED` or `REJECTED`.","enum":["APPROVED","REJECTED"],"uniqueKey":"oneOf.0.whatsappPhoneNumber.decision","typeLabel":"enum\u003cstring>"},"requestedVerifiedName":{"type":"string","description":"Last requested verified name.","uniqueKey":"oneOf.0.whatsappPhoneNumber.requestedVerifiedName","typeLabel":"string"},"rejectionReason":{"type":"string","description":"Rejection reason.","uniqueKey":"oneOf.0.whatsappPhoneNumber.rejectionReason","typeLabel":"string"},"qualityUpdateEvent":{"type":"string","description":"Indicates the update event type of WhatsApp phone number quality when a notification is sent to you.\n- `ONBOARDING`: Typically when the messaging limit changes from `TIER_NOT_SET` to another tier.\n- `UPGRADE`: Messaging limit tier upgraded.\n- `DOWNGRADE`: Messaging limit tier downgraded.\n- `FLAGGED`: Flagged status occurs when the quality rating reaches a low state. If the message quality improves to a high or medium state and maintains this for 7 days, your status will return to Connected. If the quality rating doesn't improve, your status will still return to Connected, but you'll be placed in a lower messaging limit tier. Learn more on [Phone Number Quality Rating](https://www.facebook.com/business/help/896873687365001) docs.\n- `UNFLAGGED`: Phone number status changes from `FLAGGED` to `CONNECTED`.","enum":["ONBOARDING","UPGRADE","DOWNGRADE","FLAGGED","UNFLAGGED"],"uniqueKey":"oneOf.0.whatsappPhoneNumber.qualityUpdateEvent","typeLabel":"enum\u003cstring>"},"updateEvent":{"type":"string","description":"Account update event that triggered this phone number status change.","enum":["ACCOUNT_RECONNECTED","ACCOUNT_OFFBOARDED"],"example":"ACCOUNT_OFFBOARDED","uniqueKey":"oneOf.0.whatsappPhoneNumber.updateEvent","typeLabel":"enum\u003cstring>"},"throughputLevel":{"type":"string","description":"Current Meta throughput level of the WhatsApp phone number.\n- `STANDARD`: Default Cloud API throughput level, currently up to 80 messages per second.\n- `HIGH`: Upgraded Cloud API throughput level, currently up to 1,000 messages per second, subject to Meta's current Cloud API throughput rules.\n- `NOT_APPLICABLE`: Throughput level is not applicable to this phone number.","enum":["STANDARD","HIGH","NOT_APPLICABLE"],"example":"HIGH","uniqueKey":"oneOf.0.whatsappPhoneNumber.throughputLevel","typeLabel":"enum\u003cstring>"}},"uniqueKey":"oneOf.0.whatsappPhoneNumber","typeLabel":"object"},"whatsappPayment":{"type":"object","description":"Included when `type` is `whatsapp.payment.updated`.","required":["wabaId","referenceId","status"],"properties":{"wabaId":{"type":"string","description":"WhatsApp Business Account ID.","isRequired":true,"uniqueKey":"oneOf.0.whatsappPayment.wabaId","typeLabel":"string"},"referenceId":{"type":"string","description":"Unique identifier for the payment provided by the business.\nIt is case sensitive and cannot be an empty string and can only contain English letters, numbers, underscores, dashes, or dots, and should not exceed 35 characters.","isRequired":true,"uniqueKey":"oneOf.0.whatsappPayment.referenceId","typeLabel":"string"},"status":{"type":"string","description":"Status of this payment.\n- `captured`: Indicates the payment is successfully completed.\n- `pending`: Indicates the user attempted but yet to receive success transactions signal.","enum":["captured","pending"],"isRequired":true,"uniqueKey":"oneOf.0.whatsappPayment.status","typeLabel":"enum\u003cstring>"},"transactions":{"type":"array","description":"Contains the latest transaction attempt for this payment.","items":{"type":"object","description":"Represents a transaction attempt for a payment.","required":["id","type","status","createdTimestamp","updatedTimestamp","amount","currency"],"properties":{"id":{"type":"string","description":"Transaction ID.","isRequired":true,"uniqueKey":"oneOf.0.whatsappPayment.transactions.items.[INDEX].id","typeLabel":"string"},"type":{"type":"string","description":"The payment type for this transactions. One of `billdesk`, `razorpay`, `payu`, or `zaakpay`.","enum":["billdesk","razorpay","payu","zaakpay"],"isRequired":true,"uniqueKey":"oneOf.0.whatsappPayment.transactions.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"status":{"type":"string","description":"The status of the transaction. One of `pending`, `success` or `failed`.","enum":["pending","success","failed"],"isRequired":true,"uniqueKey":"oneOf.0.whatsappPayment.transactions.items.[INDEX].status","typeLabel":"enum\u003cstring>"},"createdTimestamp":{"type":"integer","format":"int64","description":"Time when transaction was created in epoch milliseconds.","isRequired":true,"uniqueKey":"oneOf.0.whatsappPayment.transactions.items.[INDEX].createdTimestamp","typeLabel":"integer\u003cint64>"},"updatedTimestamp":{"type":"integer","format":"int64","description":"Time when transaction was last updated in epoch milliseconds.","isRequired":true,"uniqueKey":"oneOf.0.whatsappPayment.transactions.items.[INDEX].updatedTimestamp","typeLabel":"integer\u003cint64>"},"amount":{"type":"object","description":"Total amount that user has paid.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.0.whatsappPayment.transactions.items.[INDEX].amount.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.0.whatsappPayment.transactions.items.[INDEX].amount.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.0.whatsappPayment.transactions.items.[INDEX].amount.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.0.whatsappPayment.transactions.items.[INDEX].amount.discount_program_name","typeLabel":"string"}},"isRequired":true,"uniqueKey":"oneOf.0.whatsappPayment.transactions.items.[INDEX].amount","typeLabel":"object"},"currency":{"type":"string","description":"The currency for this payment.\nCurrently the only supported value is `INR`.","isRequired":true,"uniqueKey":"oneOf.0.whatsappPayment.transactions.items.[INDEX].currency","typeLabel":"string"},"methodType":{"type":"string","description":"Describes the type of payment method used by consumer to pay for the order. Can be one of `upi`, `card`, `wallet`, or `netbanking`.\nThe payment method information might not be available for failed payments.","example":"upi","uniqueKey":"oneOf.0.whatsappPayment.transactions.items.[INDEX].methodType","typeLabel":"string"},"error":{"type":"object","description":"The payment error details might not be available for all payments attempts.","required":["code","reason"],"properties":{"code":{"type":"string","description":"Describes the payment failure reason that generated by payment gateway and Meta transmits this to partners.","isRequired":true,"uniqueKey":"oneOf.0.whatsappPayment.transactions.items.[INDEX].error.code","typeLabel":"string"},"reason":{"type":"string","description":"Describes the payment failure reason in plain text that is generated by payment gateway and Meta transmits this to partners.","isRequired":true,"uniqueKey":"oneOf.0.whatsappPayment.transactions.items.[INDEX].error.reason","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappPayment.transactions.items.[INDEX].error","typeLabel":"object"}},"uniqueKey":"oneOf.0.whatsappPayment.transactions.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappPayment.transactions","typeLabel":"object[]"}},"uniqueKey":"oneOf.0.whatsappPayment","typeLabel":"object"},"whatsappTemplate":{"type":"object","description":"Included when `type` is `whatsapp.template.reviewed`, `whatsapp.template.quality_updated`, `whatsapp.template.category_updated`, or `whatsapp.template.correct_category_detection`.","required":["wabaId","name","language"],"properties":{"wabaId":{"type":"string","description":"WhatsApp Business Account ID.","example":"whatsapp-business-account-id","isRequired":true,"uniqueKey":"oneOf.0.whatsappTemplate.wabaId","typeLabel":"string"},"name":{"type":"string","description":"Name of the template.","maxLength":512,"pattern":"[a-z0-9]{1,512}","isRequired":true,"uniqueKey":"oneOf.0.whatsappTemplate.name","typeLabel":"string"},"language":{"type":"string","description":"Language code of the template. See [Supported Languages](https://developers.facebook.com/documentation/business-messaging/whatsapp/templates/supported-languages) for all codes.","example":"en_US","isRequired":true,"uniqueKey":"oneOf.0.whatsappTemplate.language","typeLabel":"string"},"officialTemplateId":{"type":"string","description":"Official template ID assigned by WhatsApp. This ID is used to identify the template in WhatsApp's system.","example":"official-template-id","uniqueKey":"oneOf.0.whatsappTemplate.officialTemplateId","typeLabel":"string"},"category":{"type":"string","description":"Category of WhatsApp templates.\n- `AUTHENTICATION`: Enable businesses to authenticate users with one-time passcodes, potentially at multiple steps in the login process (e.g., account verification, account recovery, integrity challenges).\n- `MARKETING`: Include promotions or offers, informational updates, or invitations for customers to respond / take action. Any conversation that does not qualify as utility or authentication is a marketing conversation.\n- `UTILITY`: Facilitate a specific, agreed-upon request or transaction or update to a customer about an ongoing transaction, including post-purchase notifications and recurring billing statements.","enum":["AUTHENTICATION","MARKETING","UTILITY"],"uniqueKey":"oneOf.0.whatsappTemplate.category","typeLabel":"enum\u003cstring>"},"subCategory":{"type":"string","description":"Subcategory of WhatsApp templates.\n- ORDER_STATUS: Order status template is categorized as `UTILITY` template and apart from name and language of choice, it has general template components such as `BODY`, `FOOTER` and additionally subcategory as `ORDER_STATUS`.","enum":["ORDER_STATUS"],"uniqueKey":"oneOf.0.whatsappTemplate.subCategory","typeLabel":"enum\u003cstring>"},"previousCategory":{"type":"string","description":"This field indicates the template's previous category (or `null`, for newly created templates after April 1, 2023). Compare this value to the template's `category` field value, which indicates the template's current category.","uniqueKey":"oneOf.0.whatsappTemplate.previousCategory","typeLabel":"string"},"messageSendTtlSeconds":{"type":"integer","format":"int32","description":"If we are unable to deliver a message for an amount of time that exceeds its time-to-live, we will stop retrying and drop the message.\nBy default, messages that use an authentication template have a default TTL of **10 minutes**, and messages that use a utility or marketing template have a default TTL of **30 days**.\nSet its value between `30` and `900` seconds (i.e., 30 seconds to 15 minutes) for authentication templates, or `30` and `43200` seconds (i.e., 30 seconds to 12 hours) for utility templates, or `43200` and `2592000` seconds (i.e., 12 hours to 30 days) for marketing templates. Alternatively, you can set this value to `-1`, which will set a custom TTL of 30 days for either type of template.\nWe encourage you to set a time-to-live for all of your authentication templates, preferably equal to or less than your code expiration time, to ensure your customers only get a message when a code is still usable.\nAuthentication templates created before October 23, 2024, have a default TTL of 30 days.","example":600,"uniqueKey":"oneOf.0.whatsappTemplate.messageSendTtlSeconds","typeLabel":"integer\u003cint32>"},"components":{"type":"array","description":"Template components. A template consists of `HEADER`, `BODY`, `FOOTER`, and `BUTTONS` components. `BODY` component is required, the other types are optional.","minItems":1,"items":{"type":"object","properties":{"type":{"type":"string","description":"**Required.** Template component type.\n- `BODY`: Body components are text-only components and are required by all templates. Templates are limited to one body component.\n- `HEADER`: Headers are optional components that appear at the top of template messages. Headers support text, media (images, gif, videos, documents). Templates are limited to one header component.\n- `FOOTER`: Footers are optional text-only components that appear immediately after the body component. Templates are limited to one footer component.\n- `BUTTONS`: Buttons are optional interactive components that perform specific actions when tapped.\n- `LIMITED_TIME_OFFER`: Use for limited-time offer templates. The delivered message can display an offer expiration details section with a heading, an optional expiration timer, and the offer code itself.\n- `CAROUSEL`: Carousel templates allow you to send a single text message (1), accompanied by a set of up to 10 carousel cards (2) in a horizontally scrollable view.","enum":["BODY","HEADER","FOOTER","BUTTONS","LIMITED_TIME_OFFER","CAROUSEL"],"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"format":{"type":"string","description":"**Required for type `HEADER`.**","enum":["TEXT","IMAGE","GIF","VIDEO","DOCUMENT","LOCATION"],"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].format","typeLabel":"enum\u003cstring>"},"text":{"type":"string","description":"For body text (type = `BODY`), maximum 1024 characters.\nFor header text (type = `HEADER`, format = `TEXT`), maximum 60 characters.\nFor footer text (type = `FOOTER`), maximum 60 characters.\nFor card body text (`CAROUSEL` card component type = `BODY`), maximum 160 characters.","maxLength":1024,"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].text","typeLabel":"string"},"buttons":{"type":"array","description":"**Required for type `BUTTONS`.**\nButtons are optional interactive components that perform specific actions when tapped. Templates can have a mixture of up to 10 button components total, although there are limits to individual buttons of the same type as well as combination limits.\nIf a template has more than three buttons, two buttons will appear in the delivered message and the remaining buttons will be replaced with a **See all options** button. Tapping the **See all options** button reveals the remaining buttons.","maxItems":10,"items":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Button type.\n- `PHONE_NUMBER`: Phone number buttons call the specified business phone number when tapped by the app user. Templates are limited to one phone number button.\n- `URL`: URL buttons load the specified URL in the device's default web browser when tapped by the app user. Templates are limited to two URL buttons.\n- `QUICK_REPLY`: Quick reply buttons are custom text-only buttons that immediately message you with the specified text string when tapped by the app user. Templates are limited to 10 quick reply buttons. If using quick reply buttons with other buttons, buttons must be organized into two groups: quick reply buttons and non-quick reply buttons.\n- `COPY_CODE`: Copy code buttons copy a text string (defined when the template is sent in a template message) to the device's clipboard when tapped by the app user. Templates are limited to one copy code button.\n- `OTP`: One-time password (OTP) buttons are a special type of URL button component used with authentication templates.\n- `CATALOG`: When a customer taps the **View catalog** button in a catalog template message, your product catalog appears within WhatsApp.\n- `MPM`: Customers can browse products and sections by tapping the **View items** button in a multi-product template message.\n- `FLOW`: Use this type to specify the [Flow](https://developers.facebook.com/docs/whatsapp/flows) to be sent with the template message.\n- `ORDER_DETAILS`: Provides a order details button with `Review and Pay` text.\n- `VOICE_CALL`: Triggers a WhatsApp call, when clicked by a WhatsApp customer.","enum":["PHONE_NUMBER","URL","QUICK_REPLY","COPY_CODE","OTP","CATALOG","MPM","FLOW","ORDER_DETAILS","VOICE_CALL"],"isRequired":true,"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"text":{"type":"string","description":"**Required for button type `PHONE_NUMBER` or `URL`.** Button text.\nFor `CODE_CODE` buttons, the text is a pre-set value and cannot be customized.\nFor `OTP` buttons, if omitted, the text will default to a pre-set value localized to the template's language. For example, `Copy Code` for English (US). If your template is using a one-tap autofill button and you supply this value, the authentication template message will display a copy code button with this text if we are unable to validate your [handshake](https://developers.facebook.com/docs/whatsapp/business-management-api/authentication-templates/autofill-button-authentication-templates#handshake). Maximum 25 characters.","maxLength":25,"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].text","typeLabel":"string"},"url":{"type":"string","description":"**Required for button type `URL`.** URL of website.\nThere can be at most 1 variable at the end of the URL. Example: `https://www.luckyshrub.com/shop?promo={{1}}`.\n2000 characters maximum.","maxLength":2000,"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].url","typeLabel":"string"},"phone_number":{"type":"string","description":"**Required for button type `PHONE_NUMBER`.**\nAlphanumeric string. Business phone number to be (display phone number) called when the user taps the button.\n20 characters maximum.","maxLength":20,"example":15550051310,"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].phone_number","typeLabel":"string"},"otp_type":{"type":"string","description":"**Required for button type `OTP`.**\nIndicates button OTP type.\nSet to `COPY_CODE` if you want the template to use a copy code button, `ONE_TAP` to have it use a one-tap autofill button, or `ZERO_TAP` to have no button at all.","enum":["COPY_CODE","ONE_TAP","ZERO_TAP"],"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].otp_type","typeLabel":"enum\u003cstring>"},"autofill_text":{"type":"string","description":"**One-tap and zero-tap buttons only.**\nOne-tap button text.\nMaximum 25 characters.","maxLength":25,"example":"Autofill","uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].autofill_text","typeLabel":"string"},"package_name":{"type":"string","description":"**One-tap and zero-tap buttons only.**\nYour Android app's package name.","example":"com.example.myapplication","uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].package_name","typeLabel":"string"},"signature_hash":{"type":"string","description":"**One-tap and zero-tap buttons only.**\nYour app signing key hash. See [App Signing Key Hash](https://developers.facebook.com/docs/whatsapp/business-management-api/authentication-templates/zero-tap-authentication-templates#app-signing-key-hash).","example":"K8a%2FAINcGX7","uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].signature_hash","typeLabel":"string"},"zero_tap_terms_accepted":{"type":"boolean","description":"**Zero-tap buttons only.**\nSet to `true` to indicate that you understand that your use of zero-tap authentication is subject to the WhatsApp Business Terms of Service, and that it's your responsibility to ensure your customers expect that the code will be automatically filled in on their behalf when they choose to receive the zero-tap code through WhatsApp.\nIf set to `false`, the template will not be created as you need to accept zero-tap terms before creating zero-tap enabled message templates.","uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].zero_tap_terms_accepted","typeLabel":"boolean"},"example":{"type":"array","description":"Sample full URL for a `URL` button with a variable.","items":{"type":"string","uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].example.items.[INDEX]","typeLabel":"string"},"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].example","typeLabel":"string[]"},"flow_id":{"type":"string","description":"**Conditionally required for button type `FLOW`.**\nThe unique ID of the Flow. Cannot be used if `flow_name` or `flow_json` parameters are provided. Only one of these parameters is allowed.","example":"1","uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].flow_id","typeLabel":"string"},"flow_name":{"type":"string","description":"**Conditionally required for button type `FLOW`.**\nThe name of the Flow. Cannot be used if `flow_id` or `flow_json` parameters are provided. Only one of these parameters is allowed. The Flow ID is stored in the message template, not the name, so changing the Flow name will not affect existing message templates.","uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].flow_name","typeLabel":"string"},"flow_json":{"type":"string","description":"**Conditionally required for button type `FLOW`.**\nThe Flow JSON encoded as string with escaping. The Flow JSON specifies the content of the Flow. Cannot be used if `flow_id` or `flow_name` parameters are provided. Only one of these parameters is allowed.","uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].flow_json","typeLabel":"string"},"flow_action":{"type":"string","description":"**Use for button type `FLOW`.**\nEither `navigate` or `data_exchange`. Defaults to `navigate`.","example":"navigate","uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].flow_action","typeLabel":"string"},"navigate_screen":{"type":"string","description":"**Required if `flow_action` is `navigate`.**\nThe unique ID of the Screen in the Flow.","example":"WELCOME_SCREEN","uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].navigate_screen","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].buttons","typeLabel":"object[]"},"add_security_recommendation":{"type":"boolean","description":"**Optional. Only applicable in the `BODY` component of an AUTHENTICATION template.**\nSet to `true` if you want the template to include the string, *For your security, do not share this code.* Set to `false` to exclude the string.","uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].add_security_recommendation","typeLabel":"boolean"},"code_expiration_minutes":{"type":"integer","format":"int32","description":"**Optional. Only applicable in the `FOOTER` component of an AUTHENTICATION template.**\nIndicates number of minutes the password or code is valid.\nIf omitted, the code expiration warning will not be displayed in the delivered message.\nMinimum 1, maximum 90.","maximum":90,"minimum":1,"example":5,"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].code_expiration_minutes","typeLabel":"integer\u003cint32>"},"limited_time_offer":{"type":"object","description":"Use for `LIMITED_TIME_OFFER` components.","properties":{"text":{"type":"string","description":"**Required.**\nOffer details text.\nMaximum 16 characters.","maxLength":16,"example":"Expiring offer!","uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].limited_time_offer.text","typeLabel":"string"},"has_expiration":{"type":"boolean","description":"**Optional.**\nSet to `true` to have the [offer expiration details](https://developers.facebook.com/docs/whatsapp/business-management-api/message-templates/limited-time-offer-templates#offer-expiration-details) appear in the delivered message.\nIf set to `true`, the copy code button component must be included in the `buttons` array, and must appear first in the array.\nIf set to `false`, offer expiration details will not appear in the delivered message and the copy code button component is optional. If including the copy code button, it must appear first in the `buttons` array.","uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].limited_time_offer.has_expiration","typeLabel":"boolean"}},"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].limited_time_offer","typeLabel":"object"},"example":{"type":"object","description":"**Required** when:\n- `type` is `HEADER`, and `format` is one of `IMAGE`, `GIF`, `VIDEO`, or `DOCUMENT`. Provide a sample media URL in `header_url`.\n- `type` is `HEADER`, `format` is `TEXT`, and a variable is used in `text`. Provide a sample value for that variable in `header_text`. There can be at most 1 variable in `HEADER` text.\n- `type` is `BODY`, and variables are used in `text`. Provide sample values for those variables in `body_text`.","properties":{"body_text":{"type":"array","description":"Sample values for variables in `text` of a `BODY` component.","items":{"type":"array","items":{"type":"string","uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].example.body_text.items.[INDEX].items.[INDEX]","typeLabel":"string"},"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].example.body_text.items.[INDEX]","typeLabel":"string[]"},"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].example.body_text","typeLabel":"string[][]"},"header_text":{"type":"array","description":"Sample value for the variable in `text` of a `HEADER` component.","items":{"type":"string","uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].example.header_text.items.[INDEX]","typeLabel":"string"},"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].example.header_text","typeLabel":"string[]"},"header_url":{"type":"array","description":"Sample media URL for a `HEADER` component whose format is one of `IMAGE`, `GIF`, `VIDEO`, or `DOCUMENT`.\nSupported types:\n- For `IMAGE`, the URL must end with one of `.jpg`, `.jpeg`, or `.png`, size limit is 5MB.\n- For `GIF`, the URL must end with `.mp4`, size limit is 3.5MB.\n- For `VIDEO`, the URL must end with `.mp4`, size limit is 16MB.\n- For `DOCUMENT`, the URL must end with `.pdf`, size limit is 100MB.","items":{"type":"string","uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].example.header_url.items.[INDEX]","typeLabel":"string"},"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].example.header_url","typeLabel":"string[]"}},"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].example","typeLabel":"object"},"cards":{"type":"array","description":"**Required for type `CAROUSEL`.**\nCarousel templates support up to 10 carousel cards.","maxItems":10,"items":{"type":"object","description":"Carousel templates support up to 10 carousel cards. Cards must have a media header (image or video) and can optionally include body text and up to 2 quick reply buttons, phone number buttons, or URL buttons (button types can be mixed).","properties":{"components":{"type":"array","description":"**Required.**\nCard components.","items":{"type":"object","properties":{"type":{"type":"string","description":"**Required.**\nCard component type.\n- `BODY`: Body components are text-only components. Cards must have body text.\n- `HEADER`: Cards must have a media header (image or video).\n- `BUTTONS`: Buttons are interactive components that perform specific actions when tapped. Cards must have at least one button, up to 2 buttons.","enum":["BODY","HEADER","BUTTONS"],"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"format":{"type":"string","description":"**Required for type `HEADER`.**\nCards must have a media header (image or video).","enum":["IMAGE","VIDEO"],"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].format","typeLabel":"enum\u003cstring>"},"text":{"type":"string","description":"**Required for type `BODY`.**\nCard body text supports variables. Maximum 160 characters.","maxLength":160,"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].text","typeLabel":"string"},"buttons":{"type":"array","description":"**Required for type `BUTTONS`.**\nCards must have at least one button. Supports 2 buttons. Buttons can be the same or a mix of quick reply buttons, phone number buttons, or URL buttons.","minItems":1,"maxItems":2,"items":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Button type.\n- `PHONE_NUMBER`: Phone number buttons call the specified business phone number when tapped by the app user. Templates are limited to one phone number button.\n- `URL`: URL buttons load the specified URL in the device's default web browser when tapped by the app user. Templates are limited to two URL buttons.\n- `QUICK_REPLY`: Quick reply buttons are custom text-only buttons that immediately message you with the specified text string when tapped by the app user. Templates are limited to 10 quick reply buttons. If using quick reply buttons with other buttons, buttons must be organized into two groups: quick reply buttons and non-quick reply buttons.\n- `COPY_CODE`: Copy code buttons copy a text string (defined when the template is sent in a template message) to the device's clipboard when tapped by the app user. Templates are limited to one copy code button.\n- `OTP`: One-time password (OTP) buttons are a special type of URL button component used with authentication templates.\n- `CATALOG`: When a customer taps the **View catalog** button in a catalog template message, your product catalog appears within WhatsApp.\n- `MPM`: Customers can browse products and sections by tapping the **View items** button in a multi-product template message.\n- `FLOW`: Use this type to specify the [Flow](https://developers.facebook.com/docs/whatsapp/flows) to be sent with the template message.\n- `ORDER_DETAILS`: Provides a order details button with `Review and Pay` text.\n- `VOICE_CALL`: Triggers a WhatsApp call, when clicked by a WhatsApp customer.","enum":["PHONE_NUMBER","URL","QUICK_REPLY","COPY_CODE","OTP","CATALOG","MPM","FLOW","ORDER_DETAILS","VOICE_CALL"],"isRequired":true,"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"text":{"type":"string","description":"**Required for button type `PHONE_NUMBER` or `URL`.** Button text.\nFor `CODE_CODE` buttons, the text is a pre-set value and cannot be customized.\nFor `OTP` buttons, if omitted, the text will default to a pre-set value localized to the template's language. For example, `Copy Code` for English (US). If your template is using a one-tap autofill button and you supply this value, the authentication template message will display a copy code button with this text if we are unable to validate your [handshake](https://developers.facebook.com/docs/whatsapp/business-management-api/authentication-templates/autofill-button-authentication-templates#handshake). Maximum 25 characters.","maxLength":25,"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].text","typeLabel":"string"},"url":{"type":"string","description":"**Required for button type `URL`.** URL of website.\nThere can be at most 1 variable at the end of the URL. Example: `https://www.luckyshrub.com/shop?promo={{1}}`.\n2000 characters maximum.","maxLength":2000,"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].url","typeLabel":"string"},"phone_number":{"type":"string","description":"**Required for button type `PHONE_NUMBER`.**\nAlphanumeric string. Business phone number to be (display phone number) called when the user taps the button.\n20 characters maximum.","maxLength":20,"example":15550051310,"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].phone_number","typeLabel":"string"},"otp_type":{"type":"string","description":"**Required for button type `OTP`.**\nIndicates button OTP type.\nSet to `COPY_CODE` if you want the template to use a copy code button, `ONE_TAP` to have it use a one-tap autofill button, or `ZERO_TAP` to have no button at all.","enum":["COPY_CODE","ONE_TAP","ZERO_TAP"],"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].otp_type","typeLabel":"enum\u003cstring>"},"autofill_text":{"type":"string","description":"**One-tap and zero-tap buttons only.**\nOne-tap button text.\nMaximum 25 characters.","maxLength":25,"example":"Autofill","uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].autofill_text","typeLabel":"string"},"package_name":{"type":"string","description":"**One-tap and zero-tap buttons only.**\nYour Android app's package name.","example":"com.example.myapplication","uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].package_name","typeLabel":"string"},"signature_hash":{"type":"string","description":"**One-tap and zero-tap buttons only.**\nYour app signing key hash. See [App Signing Key Hash](https://developers.facebook.com/docs/whatsapp/business-management-api/authentication-templates/zero-tap-authentication-templates#app-signing-key-hash).","example":"K8a%2FAINcGX7","uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].signature_hash","typeLabel":"string"},"zero_tap_terms_accepted":{"type":"boolean","description":"**Zero-tap buttons only.**\nSet to `true` to indicate that you understand that your use of zero-tap authentication is subject to the WhatsApp Business Terms of Service, and that it's your responsibility to ensure your customers expect that the code will be automatically filled in on their behalf when they choose to receive the zero-tap code through WhatsApp.\nIf set to `false`, the template will not be created as you need to accept zero-tap terms before creating zero-tap enabled message templates.","uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].zero_tap_terms_accepted","typeLabel":"boolean"},"example":{"type":"array","description":"Sample full URL for a `URL` button with a variable.","items":{"type":"string","uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].example.items.[INDEX]","typeLabel":"string"},"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].example","typeLabel":"string[]"},"flow_id":{"type":"string","description":"**Conditionally required for button type `FLOW`.**\nThe unique ID of the Flow. Cannot be used if `flow_name` or `flow_json` parameters are provided. Only one of these parameters is allowed.","example":"1","uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].flow_id","typeLabel":"string"},"flow_name":{"type":"string","description":"**Conditionally required for button type `FLOW`.**\nThe name of the Flow. Cannot be used if `flow_id` or `flow_json` parameters are provided. Only one of these parameters is allowed. The Flow ID is stored in the message template, not the name, so changing the Flow name will not affect existing message templates.","uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].flow_name","typeLabel":"string"},"flow_json":{"type":"string","description":"**Conditionally required for button type `FLOW`.**\nThe Flow JSON encoded as string with escaping. The Flow JSON specifies the content of the Flow. Cannot be used if `flow_id` or `flow_name` parameters are provided. Only one of these parameters is allowed.","uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].flow_json","typeLabel":"string"},"flow_action":{"type":"string","description":"**Use for button type `FLOW`.**\nEither `navigate` or `data_exchange`. Defaults to `navigate`.","example":"navigate","uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].flow_action","typeLabel":"string"},"navigate_screen":{"type":"string","description":"**Required if `flow_action` is `navigate`.**\nThe unique ID of the Screen in the Flow.","example":"WELCOME_SCREEN","uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].navigate_screen","typeLabel":"string"}},"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons","typeLabel":"object[]"},"example":{"type":"object","description":"**Required** when:\n- `type` is `HEADER`, and `format` is one of `IMAGE`, `GIF`, `VIDEO`, or `DOCUMENT`. Provide a sample media URL in `header_url`.\n- `type` is `HEADER`, `format` is `TEXT`, and a variable is used in `text`. Provide a sample value for that variable in `header_text`. There can be at most 1 variable in `HEADER` text.\n- `type` is `BODY`, and variables are used in `text`. Provide sample values for those variables in `body_text`.","properties":{"body_text":{"type":"array","description":"Sample values for variables in `text` of a `BODY` component.","items":{"type":"array","items":{"type":"string","uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].example.body_text.items.[INDEX].items.[INDEX]","typeLabel":"string"},"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].example.body_text.items.[INDEX]","typeLabel":"string[]"},"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].example.body_text","typeLabel":"string[][]"},"header_text":{"type":"array","description":"Sample value for the variable in `text` of a `HEADER` component.","items":{"type":"string","uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].example.header_text.items.[INDEX]","typeLabel":"string"},"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].example.header_text","typeLabel":"string[]"},"header_url":{"type":"array","description":"Sample media URL for a `HEADER` component whose format is one of `IMAGE`, `GIF`, `VIDEO`, or `DOCUMENT`.\nSupported types:\n- For `IMAGE`, the URL must end with one of `.jpg`, `.jpeg`, or `.png`, size limit is 5MB.\n- For `GIF`, the URL must end with `.mp4`, size limit is 3.5MB.\n- For `VIDEO`, the URL must end with `.mp4`, size limit is 16MB.\n- For `DOCUMENT`, the URL must end with `.pdf`, size limit is 100MB.","items":{"type":"string","uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].example.header_url.items.[INDEX]","typeLabel":"string"},"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].example.header_url","typeLabel":"string[]"}},"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].example","typeLabel":"object"}},"description":"Cards must have a media header (image or video) and can optionally include body text and up to 2 quick reply buttons, phone number buttons, or URL buttons (button types can be mixed).","uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components","typeLabel":"object[]"}},"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX].cards","typeLabel":"object[]"}},"uniqueKey":"oneOf.0.whatsappTemplate.components.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.whatsappTemplate.components","typeLabel":"object[]"},"status":{"type":"string","description":"The status of a WhatsApp template.\n- `PENDING`: The template is still under review. Review can take up to 24 hours.\n- `REJECTED`: The template has been rejected during review process.\n- `APPROVED`: The template is approved, and you may begin sending it to customers.\n- `PAUSED`: The template has been paused due to recurring negative feedback from customers. Message templates with this status cannot be sent to customers. See [Template Pausing](https://developers.facebook.com/docs/whatsapp/message-templates/guidelines#template-pausing).\n- `DISABLED`: The template has been disabled due to recurring negative feedback from customers or for violating one or more of our policies. Message templates with this status cannot be sent to customers. You may be able to edit a disabled message template and request an appeal. See [Appeals](https://developers.facebook.com/docs/whatsapp/message-templates/guidelines#appeals).\n- `ARCHIVED`: The template has been archived. Archived templates cannot be sent or edited.\n- `IN_APPEAL`: The template is in appeal. See also [Template Appeals](https://developers.facebook.com/docs/whatsapp/message-templates/guidelines#appeals).\n- `DELETED`: The template is deleted.","enum":["PENDING","REJECTED","APPROVED","PAUSED","DISABLED","ARCHIVED","IN_APPEAL","DELETED"],"example":"REJECTED","uniqueKey":"oneOf.0.whatsappTemplate.status","typeLabel":"enum\u003cstring>"},"qualityRating":{"type":"string","description":"Quality rating of WhatsApp template. One of `GREEN`, `YELLOW`, `RED`, or `UNKNOWN`. See also [Template Quality Rating](https://developers.facebook.com/docs/whatsapp/message-templates/guidelines/#quality-rating).\n- `GREEN`: High quality.\n- `YELLOW`: Medium quality.\n- `RED`: Low quality.\n- `UNKNOWN`: Unknown quality.","enum":["GREEN","YELLOW","RED","UNKNOWN"],"uniqueKey":"oneOf.0.whatsappTemplate.qualityRating","typeLabel":"enum\u003cstring>"},"reason":{"type":"string","description":"The reason why the template is rejected.","uniqueKey":"oneOf.0.whatsappTemplate.reason","typeLabel":"string"},"createTime":{"type":"string","format":"date-time","description":"The time at which this object is created, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2022-06-01T12:00:00.000Z","uniqueKey":"oneOf.0.whatsappTemplate.createTime","typeLabel":"string\u003cdate-time>"},"updateTime":{"type":"string","format":"date-time","description":"The time at which this object is updated, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2022-06-01T12:00:00.000Z","uniqueKey":"oneOf.0.whatsappTemplate.updateTime","typeLabel":"string\u003cdate-time>"},"statusUpdateEvent":{"type":"string","description":"The WhatsApp template status update event that caused this webhook. For `ARCHIVED`, the template `status` is `ARCHIVED`. For `UNARCHIVED`, the template `status` is the current status returned by Meta, for example `APPROVED`; it does not represent a new approval review.","enum":["PENDING","APPROVED","REJECTED","IN_APPEAL","PAUSED","FLAGGED","DISABLED","ARCHIVED","UNARCHIVED","REINSTATED","PENDING_DELETION"],"uniqueKey":"oneOf.0.whatsappTemplate.statusUpdateEvent","typeLabel":"enum\u003cstring>"},"disableDate":{"type":"string","description":"The date at which the template will be disabled. When a WhatsApp template `FLAGGED` event is received, this field is set.","example":"December 9, 2022","uniqueKey":"oneOf.0.whatsappTemplate.disableDate","typeLabel":"string"},"whatsappApiError":{"type":"object","description":"The original error object returned by WhatsApp. See [Handling Errors](https://developers.facebook.com/docs/graph-api/guides/error-handling), [Cloud API Error Codes](https://developers.facebook.com/docs/whatsapp/cloud-api/support/error-codes).","required":["message","code"],"properties":{"message":{"type":"string","description":"A human-readable description of the error.","example":"HSM Template creation failed","isRequired":true,"uniqueKey":"oneOf.0.whatsappTemplate.whatsappApiError.message","typeLabel":"string"},"code":{"type":"string","description":"An error code.","example":200002,"isRequired":true,"uniqueKey":"oneOf.0.whatsappTemplate.whatsappApiError.code","typeLabel":"string"},"type":{"type":"string","description":"Error type.","example":"OAuthException","uniqueKey":"oneOf.0.whatsappTemplate.whatsappApiError.type","typeLabel":"string"},"error_subcode":{"type":"string","description":"Additional code about the error.","example":2388109,"uniqueKey":"oneOf.0.whatsappTemplate.whatsappApiError.error_subcode","typeLabel":"string"},"error_user_msg":{"type":"string","description":"The message to display to the user. The language of the message is based on the locale of the API request.","example":"This message template cannot be created.","uniqueKey":"oneOf.0.whatsappTemplate.whatsappApiError.error_user_msg","typeLabel":"string"},"error_user_title":{"type":"string","description":"The title of the dialog, if shown. The language of the message is based on the locale of the API request.","example":"Message Cannot Be Submitted","uniqueKey":"oneOf.0.whatsappTemplate.whatsappApiError.error_user_title","typeLabel":"string"},"fbtrace_id":{"type":"string","description":"Internal support identifier. When reporting a bug related to a Graph API call, include the fbtrace_id to help us find log data for debugging.","example":"AVGjJ7ia2zJkrHG","uniqueKey":"oneOf.0.whatsappTemplate.whatsappApiError.fbtrace_id","typeLabel":"string"},"error_data":{"oneOf":[{"type":"string","description":"Additional data about the error. A string or map.\n- For template APIs, this field is a string describing the reason for the error.\n- For message APIs, this field is a map with property `details` describing the reason for the error.","uniqueKey":"oneOf.0.whatsappTemplate.whatsappApiError.error_data.oneOf.0","typeLabel":"string"},{"type":"object","description":"Additional data about the error. A string or map.\n- For template APIs, this field is a string describing the reason for the error.\n- For message APIs, this field is a map with property `details` describing the reason for the error.","additionalProperties":true,"uniqueKey":"oneOf.0.whatsappTemplate.whatsappApiError.error_data.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.0.whatsappTemplate.whatsappApiError.error_data","typeLabel":"string | object"}},"uniqueKey":"oneOf.0.whatsappTemplate.whatsappApiError","typeLabel":"object"}},"uniqueKey":"oneOf.0.whatsappTemplate","typeLabel":"object"},"callingConnect":{"type":"object","description":"Included when `type` is `whatsapp.call.connect`.","required":["id","wacid"],"properties":{"id":{"type":"string","description":"Unique ID for the call event.","example":"call_evt_123456789","isRequired":true,"uniqueKey":"oneOf.0.callingConnect.id","typeLabel":"string"},"wacid":{"type":"string","description":"The WhatsApp call ID. This ID uniquely identifies the call session.","example":"wacid.ABGGFjFVU2AfAgo6V-Hc5eCgK5Gh","isRequired":true,"uniqueKey":"oneOf.0.callingConnect.wacid","typeLabel":"string"},"phoneId":{"type":"string","description":"The WhatsApp Business phone number ID.","example":"436666719526789","uniqueKey":"oneOf.0.callingConnect.phoneId","typeLabel":"string"},"from":{"type":"string","description":"The caller's phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","uniqueKey":"oneOf.0.callingConnect.from","typeLabel":"string"},"fromUserId":{"type":"string","description":"The caller's WhatsApp Business-scoped user ID (BSUID) for customer-initiated calls.","example":"US.1234","uniqueKey":"oneOf.0.callingConnect.fromUserId","typeLabel":"string"},"fromParentUserId":{"type":"string","description":"The caller's parent WhatsApp Business-scoped user ID for customer-initiated calls.","example":"US.ENT.1234","uniqueKey":"oneOf.0.callingConnect.fromParentUserId","typeLabel":"string"},"to":{"type":"string","description":"The callee's phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551112","uniqueKey":"oneOf.0.callingConnect.to","typeLabel":"string"},"toUserId":{"type":"string","description":"The callee's WhatsApp Business-scoped user ID (BSUID) for business-initiated calls.","example":"US.1234","uniqueKey":"oneOf.0.callingConnect.toUserId","typeLabel":"string"},"toParentUserId":{"type":"string","description":"The callee's parent WhatsApp Business-scoped user ID for business-initiated calls.","example":"US.ENT.1234","uniqueKey":"oneOf.0.callingConnect.toParentUserId","typeLabel":"string"},"customerProfile":{"type":"object","description":"The customer's profile information, including WhatsApp username when available.","properties":{"name":{"type":"string","description":"Name of the WhatsApp account.","example":"John","uniqueKey":"oneOf.0.callingConnect.customerProfile.name","typeLabel":"string"},"username":{"type":"string","description":"WhatsApp username.","example":"john_doe","uniqueKey":"oneOf.0.callingConnect.customerProfile.username","typeLabel":"string"}},"uniqueKey":"oneOf.0.callingConnect.customerProfile","typeLabel":"object"},"direction":{"type":"string","description":"The direction of the call.\n- `USER_INITIATED`: Call initiated by the customer to the business.\n- `BUSINESS_INITIATED`: Call initiated by the business to the customer.","enum":["USER_INITIATED","BUSINESS_INITIATED"],"example":"USER_INITIATED","uniqueKey":"oneOf.0.callingConnect.direction","typeLabel":"enum\u003cstring>"},"sdpType":{"type":"string","description":"The SDP type for the WebRTC connection.","enum":["offer","answer"],"example":"offer","uniqueKey":"oneOf.0.callingConnect.sdpType","typeLabel":"enum\u003cstring>"},"sdp":{"type":"string","description":"The Session Description Protocol (SDP) information compliant with [RFC 8866](https://datatracker.ietf.org/doc/html/rfc8866).\nContains media session parameters for the WebRTC connection.","example":"v=0\r\no=- 123456789 987654321 IN IP4 192.168.1.1\r\ns=-\r\nt=0 0\r\n...","uniqueKey":"oneOf.0.callingConnect.sdp","typeLabel":"string"},"dialTime":{"type":"integer","format":"int64","description":"The time when the call was dialed, in Unix timestamp milliseconds.","example":1640995200000,"uniqueKey":"oneOf.0.callingConnect.dialTime","typeLabel":"integer\u003cint64>"}},"uniqueKey":"oneOf.0.callingConnect","typeLabel":"object"},"callingTerminate":{"type":"object","description":"Included when `type` is `whatsapp.call.terminate`.","required":["id","wacid"],"properties":{"id":{"type":"string","description":"Unique ID for the call event.","example":"call_evt_123456789","isRequired":true,"uniqueKey":"oneOf.0.callingTerminate.id","typeLabel":"string"},"wacid":{"type":"string","description":"The WhatsApp call ID. This ID uniquely identifies the call session.","example":"wacid.ABGGFjFVU2AfAgo6V-Hc5eCgK5Gh","isRequired":true,"uniqueKey":"oneOf.0.callingTerminate.wacid","typeLabel":"string"},"phoneId":{"type":"string","description":"The WhatsApp Business phone number ID.","example":"436666719526789","uniqueKey":"oneOf.0.callingTerminate.phoneId","typeLabel":"string"},"from":{"type":"string","description":"The caller's phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","uniqueKey":"oneOf.0.callingTerminate.from","typeLabel":"string"},"fromUserId":{"type":"string","description":"The caller's WhatsApp Business-scoped user ID (BSUID) for customer-initiated calls.","example":"US.1234","uniqueKey":"oneOf.0.callingTerminate.fromUserId","typeLabel":"string"},"fromParentUserId":{"type":"string","description":"The caller's parent WhatsApp Business-scoped user ID for customer-initiated calls.","example":"US.ENT.1234","uniqueKey":"oneOf.0.callingTerminate.fromParentUserId","typeLabel":"string"},"to":{"type":"string","description":"The callee's phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551112","uniqueKey":"oneOf.0.callingTerminate.to","typeLabel":"string"},"toUserId":{"type":"string","description":"The callee's WhatsApp Business-scoped user ID (BSUID) for business-initiated calls.","example":"US.1234","uniqueKey":"oneOf.0.callingTerminate.toUserId","typeLabel":"string"},"toParentUserId":{"type":"string","description":"The callee's parent WhatsApp Business-scoped user ID for business-initiated calls.","example":"US.ENT.1234","uniqueKey":"oneOf.0.callingTerminate.toParentUserId","typeLabel":"string"},"customerProfile":{"type":"object","description":"The customer's profile information, including WhatsApp username when available.","properties":{"name":{"type":"string","description":"Name of the WhatsApp account.","example":"John","uniqueKey":"oneOf.0.callingTerminate.customerProfile.name","typeLabel":"string"},"username":{"type":"string","description":"WhatsApp username.","example":"john_doe","uniqueKey":"oneOf.0.callingTerminate.customerProfile.username","typeLabel":"string"}},"uniqueKey":"oneOf.0.callingTerminate.customerProfile","typeLabel":"object"},"direction":{"type":"string","description":"The direction of the call.\n- `USER_INITIATED`: Call initiated by the customer to the business.\n- `BUSINESS_INITIATED`: Call initiated by the business to the customer.","enum":["USER_INITIATED","BUSINESS_INITIATED"],"example":"USER_INITIATED","uniqueKey":"oneOf.0.callingTerminate.direction","typeLabel":"enum\u003cstring>"},"startTime":{"type":"integer","format":"int64","description":"The time when the call started, in Unix timestamp milliseconds.","example":1640995200000,"uniqueKey":"oneOf.0.callingTerminate.startTime","typeLabel":"integer\u003cint64>"},"endTime":{"type":"integer","format":"int64","description":"The time when the call ended, in Unix timestamp milliseconds.","example":1640995320000,"uniqueKey":"oneOf.0.callingTerminate.endTime","typeLabel":"integer\u003cint64>"},"duration":{"type":"integer","format":"int64","description":"The duration of the call in seconds.","example":120,"uniqueKey":"oneOf.0.callingTerminate.duration","typeLabel":"integer\u003cint64>"},"status":{"type":"string","description":"The final status of the call.\n- `COMPLETED`: The call was successfully completed.\n- `FAILED`: The call failed due to an error.","enum":["COMPLETED","FAILED"],"example":"COMPLETED","uniqueKey":"oneOf.0.callingTerminate.status","typeLabel":"enum\u003cstring>"},"errorCode":{"type":"string","description":"Error code when the call status is `FAILED`. Numeric string representing the error.","example":"131000","uniqueKey":"oneOf.0.callingTerminate.errorCode","typeLabel":"string"}},"uniqueKey":"oneOf.0.callingTerminate","typeLabel":"object"},"callingStatusUpdated":{"type":"object","description":"Included when `type` is `whatsapp.call.status.updated`.","required":["wacid","status"],"properties":{"wacid":{"type":"string","description":"The WhatsApp call ID. This ID uniquely identifies the call session.","example":"wacid.HBgNNjI4MTM2MTkwNTEzMxUCABE","isRequired":true,"uniqueKey":"oneOf.0.callingStatusUpdated.wacid","typeLabel":"string"},"status":{"type":"string","description":"The current status of the call.\n- `RINGING`: Business initiated call is ringing the user.\n- `ACCEPTED`: Business initiated call is accepted by the user.\n- `REJECTED`: Business initiated call is rejected by the user.","enum":["RINGING","ACCEPTED","REJECTED"],"example":"RINGING","isRequired":true,"uniqueKey":"oneOf.0.callingStatusUpdated.status","typeLabel":"enum\u003cstring>"},"id":{"type":"string","description":"Unique ID for the call event (optional field, may not be present).","example":"call_evt_123456789","uniqueKey":"oneOf.0.callingStatusUpdated.id","typeLabel":"string"},"wabaId":{"type":"string","description":"WhatsApp Business Account ID.","example":"188234691048809","uniqueKey":"oneOf.0.callingStatusUpdated.wabaId","typeLabel":"string"},"phoneId":{"type":"string","description":"The WhatsApp Business phone number ID (optional field, may not be present).","example":"436666719526789","uniqueKey":"oneOf.0.callingStatusUpdated.phoneId","typeLabel":"string"},"recipientPhone":{"type":"string","description":"The recipient's phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+6281361905133","uniqueKey":"oneOf.0.callingStatusUpdated.recipientPhone","typeLabel":"string"},"recipientUserId":{"type":"string","description":"The recipient's WhatsApp Business-scoped user ID (BSUID).","example":"US.1234","uniqueKey":"oneOf.0.callingStatusUpdated.recipientUserId","typeLabel":"string"},"parentRecipientUserId":{"type":"string","description":"The recipient's parent WhatsApp Business-scoped user ID.","example":"US.ENT.1234","uniqueKey":"oneOf.0.callingStatusUpdated.parentRecipientUserId","typeLabel":"string"},"customerProfile":{"type":"object","description":"The customer's profile information, including WhatsApp username when available.","properties":{"name":{"type":"string","description":"Name of the WhatsApp account.","example":"John","uniqueKey":"oneOf.0.callingStatusUpdated.customerProfile.name","typeLabel":"string"},"username":{"type":"string","description":"WhatsApp username.","example":"john_doe","uniqueKey":"oneOf.0.callingStatusUpdated.customerProfile.username","typeLabel":"string"}},"uniqueKey":"oneOf.0.callingStatusUpdated.customerProfile","typeLabel":"object"}},"uniqueKey":"oneOf.0.callingStatusUpdated","typeLabel":"object"},"callingRecording":{"type":"object","additionalProperties":false,"description":"Included when `type` is `whatsapp.call.recording.updated`.","required":["wacid","phoneId","mediaAssetId","status"],"properties":{"wacid":{"type":"string","description":"WhatsApp call ID.","example":"wacid.HBgNNjI4MTM2MTkwNTEzMxUCABE","isRequired":true,"uniqueKey":"oneOf.0.callingRecording.wacid","typeLabel":"string"},"phoneId":{"type":"string","description":"WhatsApp business phone number ID used for authorized-asset delivery.","example":"461269257068832","isRequired":true,"uniqueKey":"oneOf.0.callingRecording.phoneId","typeLabel":"string"},"mediaAssetId":{"type":"string","description":"YCloud media asset ID used with the call media download API.","example":"66b1f0c2e4b05c2d8f1a3b47","isRequired":true,"uniqueKey":"oneOf.0.callingRecording.mediaAssetId","typeLabel":"string"},"status":{"type":"string","enum":["AVAILABLE","FAILED"],"example":"AVAILABLE","isRequired":true,"uniqueKey":"oneOf.0.callingRecording.status","typeLabel":"enum\u003cstring>"},"error":{"type":"object","additionalProperties":false,"description":"Present only when `status` is `FAILED`.","required":["code","retryable"],"properties":{"code":{"type":"string","description":"Stable failure code.","example":"CALLING_RECORDING_PROCESSING_FAILED","isRequired":true,"uniqueKey":"oneOf.0.callingRecording.error.code","typeLabel":"string"},"retryable":{"type":"boolean","description":"Whether retrying the upstream media operation may succeed.","example":false,"isRequired":true,"uniqueKey":"oneOf.0.callingRecording.error.retryable","typeLabel":"boolean"}},"uniqueKey":"oneOf.0.callingRecording.error","typeLabel":"object"}},"uniqueKey":"oneOf.0.callingRecording","typeLabel":"object"},"callingTranscription":{"type":"object","additionalProperties":false,"description":"Included when `type` is `whatsapp.call.transcription.updated`.","required":["wacid","phoneId","mediaAssetId","status"],"properties":{"wacid":{"type":"string","description":"WhatsApp call ID.","example":"wacid.HBgNNjI4MTM2MTkwNTEzMxUCABE","isRequired":true,"uniqueKey":"oneOf.0.callingTranscription.wacid","typeLabel":"string"},"phoneId":{"type":"string","description":"WhatsApp business phone number ID used for authorized-asset delivery.","example":"461269257068832","isRequired":true,"uniqueKey":"oneOf.0.callingTranscription.phoneId","typeLabel":"string"},"mediaAssetId":{"type":"string","description":"YCloud media asset ID used with the call media download API.","example":"66b1f0c2e4b05c2d8f1a3b47","isRequired":true,"uniqueKey":"oneOf.0.callingTranscription.mediaAssetId","typeLabel":"string"},"status":{"type":"string","enum":["AVAILABLE","FAILED"],"example":"AVAILABLE","isRequired":true,"uniqueKey":"oneOf.0.callingTranscription.status","typeLabel":"enum\u003cstring>"},"error":{"type":"object","additionalProperties":false,"description":"Present only when `status` is `FAILED`.","required":["code","retryable"],"properties":{"code":{"type":"string","description":"Stable failure code.","example":"CALLING_RECORDING_PROCESSING_FAILED","isRequired":true,"uniqueKey":"oneOf.0.callingTranscription.error.code","typeLabel":"string"},"retryable":{"type":"boolean","description":"Whether retrying the upstream media operation may succeed.","example":false,"isRequired":true,"uniqueKey":"oneOf.0.callingTranscription.error.retryable","typeLabel":"boolean"}},"uniqueKey":"oneOf.0.callingTranscription.error","typeLabel":"object"}},"uniqueKey":"oneOf.0.callingTranscription","typeLabel":"object"},"flowChanges":{"type":"object","description":"Included when `type` is `whatsapp.flow.status_change`.","required":["flowId","wabaId","newStatus"],"properties":{"flowId":{"type":"string","description":"The unique ID of the Flow.","example":"1097420589034000","isRequired":true,"uniqueKey":"oneOf.0.flowChanges.flowId","typeLabel":"string"},"wabaId":{"type":"string","description":"WhatsApp Business Account ID.","isRequired":true,"uniqueKey":"oneOf.0.flowChanges.wabaId","typeLabel":"string"},"newStatus":{"type":"string","description":"The new status of the flow.","example":"PUBLISHED","isRequired":true,"uniqueKey":"oneOf.0.flowChanges.newStatus","typeLabel":"string"},"message":{"type":"string","description":"The message ID of the flow status change.","example":"Flow Webhook 3 changed status from DRAFT to PUBLISHED","uniqueKey":"oneOf.0.flowChanges.message","typeLabel":"string"},"oldStatus":{"type":"string","description":"The old status of the flow.","example":"DRAFT","uniqueKey":"oneOf.0.flowChanges.oldStatus","typeLabel":"string"}},"uniqueKey":"oneOf.0.flowChanges","typeLabel":"object"},"whatsappUserPreference":{"properties":{"wabaId":{"type":"string","description":"WhatsApp Business Account ID.","example":1234123123,"uniqueKey":"oneOf.0.whatsappUserPreference.wabaId","typeLabel":"string"},"businessPhoneNumber":{"type":"string","description":"Phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","uniqueKey":"oneOf.0.whatsappUserPreference.businessPhoneNumber","typeLabel":"string"},"businessPhoneId":{"type":"string","description":"Phone number ID.","example":"1234567890123456","uniqueKey":"oneOf.0.whatsappUserPreference.businessPhoneId","typeLabel":"string"},"contactName":{"type":"string","description":"WhatsApp user name.","example":"John","uniqueKey":"oneOf.0.whatsappUserPreference.contactName","typeLabel":"string"},"contactPhoneNumber":{"type":"string","description":"WhatsApp user phone number. Phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","uniqueKey":"oneOf.0.whatsappUserPreference.contactPhoneNumber","typeLabel":"string"},"userId":{"type":"string","description":"The WhatsApp user's Business-scoped user ID (BSUID).","example":"US.13491208655302741918","uniqueKey":"oneOf.0.whatsappUserPreference.userId","typeLabel":"string"},"parentUserId":{"type":"string","description":"The WhatsApp user's parent Business-scoped user ID. Omitted when parent BSUIDs are not enabled.","example":"US.ENT.11815799212886844830","uniqueKey":"oneOf.0.whatsappUserPreference.parentUserId","typeLabel":"string"},"detail":{"type":"string","description":"Description of marketing message preference.","example":"User requested to stop marketing messages","uniqueKey":"oneOf.0.whatsappUserPreference.detail","typeLabel":"string"},"category":{"type":"string","example":"marketing_messages","uniqueKey":"oneOf.0.whatsappUserPreference.category","typeLabel":"string"},"value":{"type":"string","description":"Marketing message preference.","example":"stop","uniqueKey":"oneOf.0.whatsappUserPreference.value","typeLabel":"string"},"timestamp":{"type":"string","description":"Unix timestamp indicating when the webhook was triggered.","example":"1739321024000","uniqueKey":"oneOf.0.whatsappUserPreference.timestamp","typeLabel":"string"}},"description":"Included when `type` is `whatsapp.user.preferences`.","type":"object","uniqueKey":"oneOf.0.whatsappUserPreference","typeLabel":"object"},"messengerInboundMessage":{"type":"object","description":"Included when `type` is `messenger.inbound_message.received` or `messenger.inbound_message.updated`. Editing keeps the same message IDs and original times; event createTime is the edit time for updated events.","required":["id","metaMessageId","from","to","type","text","sendTime","createTime"],"properties":{"id":{"type":"string","description":"YCloud inbound message ID as a decimal string.","isRequired":true,"uniqueKey":"oneOf.0.messengerInboundMessage.id","typeLabel":"string"},"metaMessageId":{"type":"string","description":"Meta message ID.","isRequired":true,"uniqueKey":"oneOf.0.messengerInboundMessage.metaMessageId","typeLabel":"string"},"from":{"type":"string","description":"Customer PSID scoped to the Facebook Page.","isRequired":true,"uniqueKey":"oneOf.0.messengerInboundMessage.from","typeLabel":"string"},"to":{"type":"string","description":"Facebook Page ID.","isRequired":true,"uniqueKey":"oneOf.0.messengerInboundMessage.to","typeLabel":"string"},"type":{"type":"string","enum":["text"],"isRequired":true,"uniqueKey":"oneOf.0.messengerInboundMessage.type","typeLabel":"enum\u003cstring>"},"text":{"type":"object","required":["body"],"properties":{"body":{"type":"string","minLength":1,"description":"Nonblank text. Leading and trailing spaces are preserved and included when comparing a repeated request.","isRequired":true,"uniqueKey":"oneOf.0.messengerInboundMessage.text.body","typeLabel":"string"}},"isRequired":true,"uniqueKey":"oneOf.0.messengerInboundMessage.text","typeLabel":"object"},"sendTime":{"type":"string","format":"date-time","description":"Saved source event time in UTC RFC 3339 with millisecond precision.","isRequired":true,"uniqueKey":"oneOf.0.messengerInboundMessage.sendTime","typeLabel":"string\u003cdate-time>"},"createTime":{"type":"string","format":"date-time","description":"Local persistence time in UTC RFC 3339 with millisecond precision.","isRequired":true,"uniqueKey":"oneOf.0.messengerInboundMessage.createTime","typeLabel":"string\u003cdate-time>"},"editCount":{"type":"integer","description":"Cumulative edit count supplied by Meta. Omitted before the first edit.","uniqueKey":"oneOf.0.messengerInboundMessage.editCount","typeLabel":"integer"},"editTime":{"type":"string","format":"date-time","description":"Saved platform edit time in UTC RFC 3339 with millisecond precision. Omitted before the first edit.","uniqueKey":"oneOf.0.messengerInboundMessage.editTime","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.0.messengerInboundMessage","typeLabel":"object"},"messengerMessage":{"type":"object","required":["id","from","to","type","text","status","createTime","updateTime"],"properties":{"id":{"type":"string","description":"YCloud outbound ID, a decimal string; never serialize it as a JSON number.","isRequired":true,"uniqueKey":"oneOf.0.messengerMessage.id","typeLabel":"string"},"from":{"type":"string","description":"Facebook Page ID.","isRequired":true,"uniqueKey":"oneOf.0.messengerMessage.from","typeLabel":"string"},"to":{"type":"string","description":"Peer PSID for this Page.","isRequired":true,"uniqueKey":"oneOf.0.messengerMessage.to","typeLabel":"string"},"type":{"type":"string","enum":["text"],"isRequired":true,"uniqueKey":"oneOf.0.messengerMessage.type","typeLabel":"enum\u003cstring>"},"text":{"type":"object","required":["body"],"properties":{"body":{"type":"string","minLength":1,"description":"Nonblank text. Leading and trailing spaces are preserved and included when comparing a repeated request.","isRequired":true,"uniqueKey":"oneOf.0.messengerMessage.text.body","typeLabel":"string"}},"isRequired":true,"uniqueKey":"oneOf.0.messengerMessage.text","typeLabel":"object"},"status":{"type":"string","enum":["unknown","accepted","rejected","sent","delivered","read"],"description":"Current stored facts: read > delivered > sent > submission result.\nUnknown means unconfirmed or in progress, never a definitive failure.\nMissing receipts do not imply failure and no intermediate state is fabricated.\n","isRequired":true,"uniqueKey":"oneOf.0.messengerMessage.status","typeLabel":"enum\u003cstring>"},"createTime":{"type":"string","format":"date-time","description":"Local creation time in UTC RFC 3339 with millisecond precision.","isRequired":true,"uniqueKey":"oneOf.0.messengerMessage.createTime","typeLabel":"string\u003cdate-time>"},"updateTime":{"type":"string","format":"date-time","description":"Local update time in UTC RFC 3339 with millisecond precision.","isRequired":true,"uniqueKey":"oneOf.0.messengerMessage.updateTime","typeLabel":"string\u003cdate-time>"},"metaMessageId":{"type":"string","description":"Omitted when no Meta ID is confirmed.","uniqueKey":"oneOf.0.messengerMessage.metaMessageId","typeLabel":"string"},"reactions":{"type":"array","description":"Active reactions reconstructed when retrieving an outbound message. Returns [] when no\nsaved active reaction exists, including after withdrawal. Customer status webhooks omit\nthis field; receiving a reaction does not change the message delivery status or updateTime.\n","items":{"type":"object","description":"The latest active reaction from a user, reconstructed from saved interaction events.","required":["psid","updateTime"],"properties":{"psid":{"type":"string","description":"Page-scoped ID of the user who reacted.","isRequired":true,"uniqueKey":"oneOf.0.messengerMessage.reactions.items.[INDEX].psid","typeLabel":"string"},"updateTime":{"type":"string","format":"date-time","description":"Source interaction time in UTC RFC 3339 with millisecond precision; independent of the message updateTime.","example":"2026-10-16T10:00:04.000Z","isRequired":true,"uniqueKey":"oneOf.0.messengerMessage.reactions.items.[INDEX].updateTime","typeLabel":"string\u003cdate-time>"},"reaction":{"type":"string","description":"Provider reaction description, when available. Clients should tolerate new values.","example":"love","uniqueKey":"oneOf.0.messengerMessage.reactions.items.[INDEX].reaction","typeLabel":"string"},"emoji":{"type":"string","description":"Reaction emoji, when available.","example":"❤","uniqueKey":"oneOf.0.messengerMessage.reactions.items.[INDEX].emoji","typeLabel":"string"}},"uniqueKey":"oneOf.0.messengerMessage.reactions.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.0.messengerMessage.reactions","typeLabel":"object[]"},"errorCode":{"type":"string","description":"Locally recorded submission error, when present. A confirmed rejection may be\nMESSENGER_MESSAGE_REJECTED(#100:2018276), MESSENGER_MESSAGE_REJECTED(#100),\nor the legacy MESSENGER_MESSAGE_REJECTED when diagnostics are unavailable.\nMESSENGER_MESSAGE_RESULT_UNKNOWN means the submission outcome is unconfirmed.\nNever contains the raw Meta error body or credentials.\n","uniqueKey":"oneOf.0.messengerMessage.errorCode","typeLabel":"string"},"sendTime":{"type":"string","format":"date-time","description":"Confirmed send time in UTC RFC 3339 with millisecond precision; omitted when unknown.","uniqueKey":"oneOf.0.messengerMessage.sendTime","typeLabel":"string\u003cdate-time>"},"deliverTime":{"type":"string","format":"date-time","description":"Confirmed delivery time in UTC RFC 3339 with millisecond precision; omitted when unknown.","uniqueKey":"oneOf.0.messengerMessage.deliverTime","typeLabel":"string\u003cdate-time>"},"readTime":{"type":"string","format":"date-time","description":"Confirmed read time in UTC RFC 3339 with millisecond precision; omitted when unknown.","uniqueKey":"oneOf.0.messengerMessage.readTime","typeLabel":"string\u003cdate-time>"}},"description":"Included when `type` is `messenger.message.updated`.","uniqueKey":"oneOf.0.messengerMessage","typeLabel":"object"},"messengerMessageReaction":{"type":"object","description":"Included when `type` is `messenger.message_reaction.updated`. Event createTime is the source interaction time.","required":["pageId","psid","metaMessageId","action"],"properties":{"pageId":{"type":"string","description":"Facebook Page ID that scopes this conversation.","isRequired":true,"uniqueKey":"oneOf.0.messengerMessageReaction.pageId","typeLabel":"string"},"psid":{"type":"string","description":"Page-scoped ID of the customer who reacted.","isRequired":true,"uniqueKey":"oneOf.0.messengerMessageReaction.psid","typeLabel":"string"},"metaMessageId":{"type":"string","description":"Meta ID of the message being reacted to.","isRequired":true,"uniqueKey":"oneOf.0.messengerMessageReaction.metaMessageId","typeLabel":"string"},"action":{"type":"string","enum":["react","unreact"],"description":"Use react to apply a reaction and unreact to withdraw it.","isRequired":true,"uniqueKey":"oneOf.0.messengerMessageReaction.action","typeLabel":"enum\u003cstring>"},"reaction":{"type":"string","description":"Reaction name when provided by Meta. May be omitted, including on withdrawal.","uniqueKey":"oneOf.0.messengerMessageReaction.reaction","typeLabel":"string"},"emoji":{"type":"string","description":"Reaction emoji when provided by Meta. May be omitted, including on withdrawal.","uniqueKey":"oneOf.0.messengerMessageReaction.emoji","typeLabel":"string"}},"uniqueKey":"oneOf.0.messengerMessageReaction","typeLabel":"object"}},"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","description":"Represents a webhook event payload.\nEvery event contains certain common properties: `id`, `type`, `apiVersion`, `createTime`.\nEach event may also contain some properties unique to the event. For example, `sms` is returned when `type` is `sms.message.updated`.","required":["id","type","apiVersion","createTime","whatsappMetaBusinessAgent"],"properties":{"type":{"type":"string","description":"Type of event.","enum":["whatsapp.meta_business_agent.handover.updated"],"x-enum-descriptions":["Occurs when a contact's attributes are changed.","Occurs when a contact is created.","Occurs when a contact is deleted.","Occurs when a contact unsubscribes from messages.","Occurs when a contact resumes subscription to messages.","Occurs when an email delivery status is updated, and the status changes to `delivered` or `failed`.","Occurs when an SMS message status is updated, and the status changes to `delivered` or `undelivered`.","Occurs when an SMS inbound message is received, which means a user replies to your message.","Occurs when a voice message status is updated, and the status changes to `delivered` or `undelivered`.","Occurs when a WhatsApp Business Account is deleted.","Occurs when a WhatsApp Business Account has been reviewed.","Occurs when a policy violation happened, WhatsApp Business Account has been banned and more.","Occurs when a WhatsApp inbound message is received.","Occurs when a WhatsApp outbound message status is updated, and the status changes to `sent`, `failed`, `delivered`, or `read`.","Occurs when a WhatsApp group is created or deleted, including successful and failed results.","Occurs when WhatsApp group participants or join requests are updated.","Occurs when WhatsApp group settings are updated, including successful and failed results.","Occurs when a WhatsApp group suspension status is updated.","Occurs when a WhatsApp business phone number is deleted.","Occurs when a WhatsApp business phone number's name has been approved or rejected.","Occurs when a WhatsApp business phone number's quality-related status is updated, and the status changes to `GREEN`, `YELLOW`, or `RED`.","Occurs when a WhatsApp business phone number's Business Username is updated.","Occurs when a WhatsApp template category is updated.","Occurs when Meta detects non-utility content in Utility Direct Send. Subscribe through the webhook endpoint API.","Occurs when a WhatsApp template quality rating is updated.","Occurs when a WhatsApp template status is updated, and the status changes to `REJECTED`, `APPROVED`, `PAUSED`, `DISABLED`, `IN_APPEAL`, or `ARCHIVED`.","Occurs when a WhatsApp call is connected.","Occurs when a WhatsApp call is terminated.","Occurs when a WhatsApp call status is updated.","Occurs when an API-sourced WhatsApp call recording becomes available or permanently fails.","Occurs when an API-sourced WhatsApp call transcription becomes available or permanently fails.","Occurs when a WhatsApp flow status is updated.","Occurs when a WhatsApp payment transaction changes.","Occurs when a WhatsApp user stops marketing messages or a WhatsApp user resumes marketing messages.","Occurs when a contact note is created.","Occurs when a contact note is updated.","Occurs when a contact note is independently deleted. Contact deletion does not emit this event for cascaded notes.","Occurs when an outbound echo message is recorded for a Public REST API Agent.","Occurs when an outbound echo status is received for a Public REST API Agent; late lower-ranked statuses can also be delivered.","Occurs when a supported handover callback transfers control away from a Public REST API Agent. Does not confirm Inbox assignment.","Occurs when WhatsApp Business app sync history message.","Occurs when WhatsApp Business app send message.","Occurs when WhatsApp Business app sends a message echo.","Occurs when an ordinary Messenger text message is received from a customer.","Occurs when a customer edits a saved Messenger inbound text message.","Occurs when a saved ordinary Messenger outbound message snapshot is available, including submission results and matched receipts.","Occurs when a customer reacts to or removes a reaction from a Messenger message."],"isRequired":true,"uniqueKey":"oneOf.1.type","typeLabel":"enum\u003cstring>"},"whatsappMetaBusinessAgent":{"type":"object","description":"Included for whatsapp.meta_business_agent.handover.updated. Currently limited to Public REST API Agents.","properties":{"agentId":{"type":"string","description":"YCloud Agent ID. Not a Meta Agent ID or an Inbox assignee ID.","example":"00000000-0000-4000-8000-000000000001","uniqueKey":"oneOf.1.whatsappMetaBusinessAgent.agentId","typeLabel":"string"},"metaAgentId":{"type":"string","description":"Meta Agent ID, when available.","example":"META_AGENT_ID","uniqueKey":"oneOf.1.whatsappMetaBusinessAgent.metaAgentId","typeLabel":"string"},"phoneNumberId":{"type":"string","description":"Meta business phone number ID. Not an E.164 phone number.","example":"PHONE_NUMBER_ID","uniqueKey":"oneOf.1.whatsappMetaBusinessAgent.phoneNumberId","typeLabel":"string"},"wabaId":{"type":"string","description":"WhatsApp Business Account ID from the source callback, when available.","example":"WABA_ID","uniqueKey":"oneOf.1.whatsappMetaBusinessAgent.wabaId","typeLabel":"string"},"consumerPhoneNumber":{"type":"string","description":"Consumer phone number from the handover callback, normalized to E.164 when available. This is not the business number or phoneNumberId.","pattern":"^\\+[1-9][0-9]{7,14}$","example":"+12025550124","uniqueKey":"oneOf.1.whatsappMetaBusinessAgent.consumerPhoneNumber","typeLabel":"string"},"controlState":{"type":"string","description":"Present for handover events. Currently APP_CONTROL_TAKEN for Public REST API\nhandover callbacks. Does not confirm an Inbox assignment or message delivery.","example":"APP_CONTROL_TAKEN","uniqueKey":"oneOf.1.whatsappMetaBusinessAgent.controlState","typeLabel":"string"},"actor":{"type":"string","description":"Optional handover source actor. For a control_passed handoff this is the\nprevious owner app ID, not the employee who receives the conversation.","example":"PREVIOUS_OWNER_APP_ID","uniqueKey":"oneOf.1.whatsappMetaBusinessAgent.actor","typeLabel":"string"},"reason":{"type":"string","description":"Optional provider handover reason or metadata, for example customer_request. Not a closed enum.","example":"customer_request","uniqueKey":"oneOf.1.whatsappMetaBusinessAgent.reason","typeLabel":"string"},"timestamp":{"type":"integer","description":"Source event time in Unix milliseconds, or processing time if unavailable.","format":"int64","example":1788919204000,"uniqueKey":"oneOf.1.whatsappMetaBusinessAgent.timestamp","typeLabel":"integer\u003cint64>"}},"isRequired":true,"uniqueKey":"oneOf.1.whatsappMetaBusinessAgent","typeLabel":"object"},"id":{"type":"string","description":"Unique ID for the event.","minLength":6,"maxLength":128,"isRequired":true,"uniqueKey":"oneOf.1.id","typeLabel":"string"},"apiVersion":{"type":"string","description":"The API version used to render this event.","example":"v2","isRequired":true,"uniqueKey":"oneOf.1.apiVersion","typeLabel":"string"},"createTime":{"type":"string","format":"date-time","description":"The time at which this event was created, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2022-06-01T12:00:00.000Z","isRequired":true,"uniqueKey":"oneOf.1.createTime","typeLabel":"string\u003cdate-time>"},"phase":{"type":"integer","format":"int32","description":"Included when `type` is `whatsapp.smb.history` and the event was generated from a Meta history chunk. Identifies the chunk's synchronization phase.","example":1,"uniqueKey":"oneOf.1.phase","typeLabel":"integer\u003cint32>"},"progress":{"type":"integer","format":"int32","description":"Included when `type` is `whatsapp.smb.history` and the event was generated from a Meta history chunk. Reports the chunk's synchronization progress.","example":73,"uniqueKey":"oneOf.1.progress","typeLabel":"integer\u003cint32>"},"contactAttributesChanged":{"type":"object","description":"Included when `type` is `contact.attributes_changed`.","required":["id","updateTime","changedAttributes"],"properties":{"id":{"type":"string","description":"The ID of the contact whose attributes were changed.","example":"1824266594102064128","isRequired":true,"uniqueKey":"oneOf.1.contactAttributesChanged.id","typeLabel":"string"},"updateTime":{"type":"string","format":"date-time","description":"The time at which the contact attributes were updated, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2025-07-09T02:24:16.193Z","isRequired":true,"uniqueKey":"oneOf.1.contactAttributesChanged.updateTime","typeLabel":"string\u003cdate-time>"},"changedAttributes":{"type":"object","description":"An object containing the changed attributes. Each key represents the name of the changed attribute,\nand the value contains the old value, new value, and change actions. Keys use the Contact\nattribute catalog names, including system keys such as `remark_name`, `country_code`, and\n`meta_username`.","additionalProperties":{"type":"object","description":"Represents a single attribute change, containing the old value, new value, and change actions.","properties":{"oldValue":{"description":"The previous value of the attribute before the change.\nCan be a string, number, array, or boolean depending on the attribute type.\nThis field is not included when the value is null.","example":"previous_value","uniqueKey":"oneOf.1.contactAttributesChanged.changedAttributes.additionalProperties.oldValue","typeLabel":"any"},"newValue":{"description":"The new value of the attribute after the change.\nCan be a string, number, array, or boolean depending on the attribute type.\nThis field is not included when the value is null.","example":["tag1","tag2"],"uniqueKey":"oneOf.1.contactAttributesChanged.changedAttributes.additionalProperties.newValue","typeLabel":"any"},"extra":{"type":"array","description":"An array of change actions that describe what operations were performed on this attribute.","items":{"type":"object","description":"Represents a single change action performed on an attribute.\nFor tag attributes, includes additional id and value fields.","required":["action"],"properties":{"action":{"type":"string","description":"The type of change action performed.","enum":["ADDED","REMOVED","CHANGED"],"example":"ADDED","isRequired":true,"uniqueKey":"oneOf.1.contactAttributesChanged.changedAttributes.additionalProperties.extra.items.[INDEX].action","typeLabel":"enum\u003cstring>"},"id":{"type":"string","description":"The ID of the item when the attribute is 'tags'.\nThis field is only present for tag-related changes.","example":"686dd294334be8606a5bf312","uniqueKey":"oneOf.1.contactAttributesChanged.changedAttributes.additionalProperties.extra.items.[INDEX].id","typeLabel":"string"},"value":{"type":"string","description":"The value of the item when the attribute is 'tags'.\nThis field is only present for tag-related changes.","example":"fsadf","uniqueKey":"oneOf.1.contactAttributesChanged.changedAttributes.additionalProperties.extra.items.[INDEX].value","typeLabel":"string"}},"uniqueKey":"oneOf.1.contactAttributesChanged.changedAttributes.additionalProperties.extra.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.contactAttributesChanged.changedAttributes.additionalProperties.extra","typeLabel":"object[]"}},"uniqueKey":"oneOf.1.contactAttributesChanged.changedAttributes.additionalProperties","typeLabel":"object"},"example":{"tags":{"newValue":["customer","vip"],"extra":[{"action":"ADDED","id":"686dd294334be8606a5bf312","value":"customer"}]},"waba_id":{"oldValue":"old_waba_id","newValue":"new_waba_id","extra":[{"action":"CHANGED"}]},"age":{"oldValue":25,"newValue":26,"extra":[{"action":"CHANGED"}]},"is_verified":{"oldValue":false,"newValue":true,"extra":[{"action":"CHANGED"}]}},"isRequired":true,"uniqueKey":"oneOf.1.contactAttributesChanged.changedAttributes","typeLabel":"object"}},"uniqueKey":"oneOf.1.contactAttributesChanged","typeLabel":"object"},"contactCreated":{"type":"object","description":"Included when `type` is `contact.created`.","required":["id"],"properties":{"id":{"type":"string","description":"Unique ID for the object.","example":"1824266594102064128","isRequired":true,"uniqueKey":"oneOf.1.contactCreated.id","typeLabel":"string"},"remarkName":{"type":"string","description":"The business-managed remark name for the contact.","example":"Priority customer","uniqueKey":"oneOf.1.contactCreated.remarkName","typeLabel":"string"},"nickName":{"type":"string","description":"Contact's nickname.","example":"John Doe","uniqueKey":"oneOf.1.contactCreated.nickName","typeLabel":"string"},"realName":{"type":"string","description":"Contact's real name.","example":"John Smith","uniqueKey":"oneOf.1.contactCreated.realName","typeLabel":"string"},"phoneNumber":{"type":"string","description":"Unique Phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","uniqueKey":"oneOf.1.contactCreated.phoneNumber","typeLabel":"string"},"countryCode":{"type":"string","description":"Two-letter country abbreviation. See [ISO 3166-1 alpha-2 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).","example":"US","uniqueKey":"oneOf.1.contactCreated.countryCode","typeLabel":"string"},"countryName":{"type":"string","description":"Full country name.","example":"United States","uniqueKey":"oneOf.1.contactCreated.countryName","typeLabel":"string"},"email":{"type":"string","description":"The contact's email address.\nIf present, the email address must be unique.","example":"john.doe@example.com","uniqueKey":"oneOf.1.contactCreated.email","typeLabel":"string"},"sourceType":{"type":"string","description":"The source type where the contact was created.","example":"api","uniqueKey":"oneOf.1.contactCreated.sourceType","typeLabel":"string"},"sourceId":{"type":"string","description":"The source ID where the contact was created.","example":"import_batch_123","uniqueKey":"oneOf.1.contactCreated.sourceId","typeLabel":"string"},"sourceUrl":{"type":"string","description":"The source URL where the contact was created.","example":"https://example.com/signup","uniqueKey":"oneOf.1.contactCreated.sourceUrl","typeLabel":"string"},"lastSeen":{"type":"string","format":"date-time","description":"The time at which the contact last sent a message to your business, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2025-07-09T02:24:16.193Z","uniqueKey":"oneOf.1.contactCreated.lastSeen","typeLabel":"string\u003cdate-time>"},"lastConnectedNumber":{"type":"string","description":"The business phone number that the contact last connected to.","example":"+16315551111","uniqueKey":"oneOf.1.contactCreated.lastConnectedNumber","typeLabel":"string"},"ownerEmail":{"type":"string","description":"The email address of the contact's owner.","example":"support@example.com","uniqueKey":"oneOf.1.contactCreated.ownerEmail","typeLabel":"string"},"tags":{"type":"array","description":"Contact's tags.","items":{"type":"string","uniqueKey":"oneOf.1.contactCreated.tags.items.[INDEX]","typeLabel":"string"},"example":["customer","vip"],"uniqueKey":"oneOf.1.contactCreated.tags","typeLabel":"string[]"},"createTime":{"type":"string","format":"date-time","description":"The time at which the contact was created, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2025-07-09T02:24:16.193Z","uniqueKey":"oneOf.1.contactCreated.createTime","typeLabel":"string\u003cdate-time>"},"updateTime":{"type":"string","format":"date-time","description":"The time at which the contact was last updated, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2025-07-09T02:24:16.193Z","uniqueKey":"oneOf.1.contactCreated.updateTime","typeLabel":"string\u003cdate-time>"},"blocked":{"type":"boolean","description":"Whether the contact is blocked.","example":false,"uniqueKey":"oneOf.1.contactCreated.blocked","typeLabel":"boolean"},"customAttributes":{"type":"object","description":"Contact's custom attributes as key-value pairs.","additionalProperties":{"type":"object","uniqueKey":"oneOf.1.contactCreated.customAttributes.additionalProperties","typeLabel":"object"},"example":{"company":"YCloud Inc","age":25,"preferences":{"newsletter":true}},"uniqueKey":"oneOf.1.contactCreated.customAttributes","typeLabel":"object"}},"uniqueKey":"oneOf.1.contactCreated","typeLabel":"object"},"contactDeleted":{"type":"object","description":"Included when `type` is `contact.deleted`.","required":["id"],"properties":{"id":{"type":"string","description":"Contact ID","example":"1824266594102064129","isRequired":true,"uniqueKey":"oneOf.1.contactDeleted.id","typeLabel":"string"},"remarkName":{"type":"string","description":"The business-managed remark name from the deleted contact snapshot.","example":"Former customer","uniqueKey":"oneOf.1.contactDeleted.remarkName","typeLabel":"string"},"nickName":{"type":"string","description":"Contact's nickname.","example":"Jane Smith","uniqueKey":"oneOf.1.contactDeleted.nickName","typeLabel":"string"},"phoneNumber":{"type":"string","description":"Unique Phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16475551234","uniqueKey":"oneOf.1.contactDeleted.phoneNumber","typeLabel":"string"},"updateTime":{"type":"string","format":"date-time","description":"The time at which the contact was last updated, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2025-07-08T15:25:00.000Z","uniqueKey":"oneOf.1.contactDeleted.updateTime","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.1.contactDeleted","typeLabel":"object"},"contactNote":{"type":"object","description":"Included when `type` is `contact.note.created`, `contact.note.updated`, or `contact.note.deleted`.","required":["id","contactId","username","phoneNumber","content"],"properties":{"id":{"type":"string","minLength":24,"maxLength":24,"pattern":"^[0-9a-fA-F]{24}$","example":"6a3de646e18f344f743aaa4d","isRequired":true,"uniqueKey":"oneOf.1.contactNote.id","typeLabel":"string"},"contactId":{"type":"string","example":"1824266594102064128","isRequired":true,"uniqueKey":"oneOf.1.contactNote.contactId","typeLabel":"string"},"username":{"oneOf":[{"type":"string","description":"Username of the contact that owns this note, without the leading `@`.","example":"alice_01","isRequired":true,"uniqueKey":"oneOf.1.contactNote.username.oneOf.0","typeLabel":"string"},{"type":"null","description":"Username of the contact that owns this note, without the leading `@`.","example":"alice_01","isRequired":true,"uniqueKey":"oneOf.1.contactNote.username.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.1.contactNote.username","typeLabel":"string | null"},"phoneNumber":{"oneOf":[{"type":"string","description":"Phone number of the contact that owns this note in E.164 format.","example":"+16315551111","isRequired":true,"uniqueKey":"oneOf.1.contactNote.phoneNumber.oneOf.0","typeLabel":"string"},{"type":"null","description":"Phone number of the contact that owns this note in E.164 format.","example":"+16315551111","isRequired":true,"uniqueKey":"oneOf.1.contactNote.phoneNumber.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.1.contactNote.phoneNumber","typeLabel":"string | null"},"content":{"type":"string","maxLength":500,"example":"Customer prefers follow-up in the morning.","isRequired":true,"uniqueKey":"oneOf.1.contactNote.content","typeLabel":"string"},"createTime":{"type":"string","format":"date-time","uniqueKey":"oneOf.1.contactNote.createTime","typeLabel":"string\u003cdate-time>"},"updateTime":{"type":"string","format":"date-time","uniqueKey":"oneOf.1.contactNote.updateTime","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.1.contactNote","typeLabel":"object"},"contactUnsubscribeCreated":{"type":"object","description":"Included when `type` is `contact.unsubscribe.created`.","required":["id"],"properties":{"id":{"type":"string","description":"Unique ID of the contact unsubscribe event.","isRequired":true,"uniqueKey":"oneOf.1.contactUnsubscribeCreated.id","typeLabel":"string"},"phoneNumber":{"type":"string","description":"Unique Customer Phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16475551234","uniqueKey":"oneOf.1.contactUnsubscribeCreated.phoneNumber","typeLabel":"string"},"source":{"type":"string","description":"The source from which a customer initiates an unsubscribe.\n- `Whatsapp`: The customer initiated an unsubscribe on the whatsapp client.\n- `Inbox`:You added a customer to the unsubscribe list on the Inbox page of YCloud.\n- `Chatbot`: The message sent by the customer triggered the unsubscribe keyword configured by the Chatbot.\n- `API`: You add customers to the unsubscribe list through YCloud's OpenAPI.\n- `Manual`: You added a customer to the unsubscribe list on the Contact page of YCloud.","enum":["Whatsapp","Inbox","Chatbot","API","Manual"],"example":"Whatsapp","uniqueKey":"oneOf.1.contactUnsubscribeCreated.source","typeLabel":"enum\u003cstring>"},"updateTime":{"type":"string","format":"date-time","description":"The time when a customer initiates an unsubscribe, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2025-07-08T15:25:00.000Z","uniqueKey":"oneOf.1.contactUnsubscribeCreated.updateTime","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.1.contactUnsubscribeCreated","typeLabel":"object"},"contactUnsubscribeDeleted":{"type":"object","description":"Included when `type` is `contact.unsubscribe.deleted`.","required":["id"],"properties":{"id":{"type":"string","description":"Unique ID of the contact resubscribe event.","isRequired":true,"uniqueKey":"oneOf.1.contactUnsubscribeDeleted.id","typeLabel":"string"},"phoneNumber":{"type":"string","description":"Unique Customer Phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16475551234","uniqueKey":"oneOf.1.contactUnsubscribeDeleted.phoneNumber","typeLabel":"string"},"source":{"type":"string","description":"The source from which a customer resumed their subscription\n- `Whatsapp`: The customer resumed their subscription on the whatsapp client\n- `API`: You remove the customer from the unsubscribe list through the OpenAPI of YCloud\n- `Manual`: You remove the customer from the unsubscribe list on the Contact page of YCloud.","enum":["Whatsapp","API","Manual"],"example":"Whatsapp","uniqueKey":"oneOf.1.contactUnsubscribeDeleted.source","typeLabel":"enum\u003cstring>"},"updateTime":{"type":"string","format":"date-time","description":"The time when customers cancel unsubscribe, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2025-07-08T15:25:00.000Z","uniqueKey":"oneOf.1.contactUnsubscribeDeleted.updateTime","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.1.contactUnsubscribeDeleted","typeLabel":"object"},"emailDelivery":{"type":"object","description":"Included when `type` is `email.delivery.updated`.","required":["emailId","recipientAddress"],"properties":{"emailId":{"type":"string","description":"Unique ID for the related email you've previously sent.","minLength":6,"maxLength":128,"isRequired":true,"uniqueKey":"oneOf.1.emailDelivery.emailId","typeLabel":"string"},"recipientAddress":{"type":"string","description":"A recipient's email address.","example":"tom@example.com","isRequired":true,"uniqueKey":"oneOf.1.emailDelivery.recipientAddress","typeLabel":"string"},"status":{"type":"string","description":"Delivery status of the email to the specific recipient address.\n- `sending`: The messaging request is accepted by our system.\n- `failed`: The message failed to be sent from our system.\n- `sent`: The message has been sent from our system.\n- `delivered`: Our system has received a delivery receipt indicating that message is delivered.\n- `undelivered`: Our system has received a delivery receipt indicating that message is not delivered.","enum":["sending","failed","sent","delivered","undelivered"],"example":"failed","uniqueKey":"oneOf.1.emailDelivery.status","typeLabel":"enum\u003cstring>"},"errorCode":{"type":"string","description":"Error code when the email is undeliverable.","example":402,"uniqueKey":"oneOf.1.emailDelivery.errorCode","typeLabel":"string"},"errorMessage":{"type":"string","description":"Error message when the email is undeliverable.","example":"Unsubscribes","uniqueKey":"oneOf.1.emailDelivery.errorMessage","typeLabel":"string"},"externalId":{"type":"string","description":"The `externalId` you set when you sent the email.","uniqueKey":"oneOf.1.emailDelivery.externalId","typeLabel":"string"},"bizType":{"type":"string","description":"This can be either empty or one of `email`, or `verify`. Defaults to `email`.\n- `email`: Indicates that the message is sent via the **Email** product.\n- `verify`: Indicates that the message is sent via the **Verify** product.","example":"email","uniqueKey":"oneOf.1.emailDelivery.bizType","typeLabel":"string"},"verificationId":{"type":"string","description":"The verification ID. Included only when `bizType` is `verify`.","example":"VERIFICATION-ID","uniqueKey":"oneOf.1.emailDelivery.verificationId","typeLabel":"string"}},"uniqueKey":"oneOf.1.emailDelivery","typeLabel":"object"},"sms":{"type":"object","required":["id","to"],"properties":{"id":{"type":"string","description":"Unique ID for the object.","minLength":6,"maxLength":128,"isRequired":true,"uniqueKey":"oneOf.1.sms.id","typeLabel":"string"},"to":{"type":"string","description":"The recipient's phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","isRequired":true,"uniqueKey":"oneOf.1.sms.to","typeLabel":"string"},"text":{"type":"string","description":"The text of this message.","example":"Your verification code is 123456.","uniqueKey":"oneOf.1.sms.text","typeLabel":"string"},"senderId":{"type":"string","description":"Sender ID to be used.","example":"Brand","uniqueKey":"oneOf.1.sms.senderId","typeLabel":"string"},"regionCode":{"type":"string","description":"[ISO 3166-1 alpha-2 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)","example":"US","uniqueKey":"oneOf.1.sms.regionCode","typeLabel":"string"},"totalSegments":{"type":"integer","format":"int32","minimum":1,"description":"Number of message segments. See [SMS character encoding](https://helpdocs.ycloud.com/help-center/integrations/channels/global-sms/sms-basic-principles#sms-encoding) for more info.","example":1,"uniqueKey":"oneOf.1.sms.totalSegments","typeLabel":"integer\u003cint32>"},"totalPrice":{"type":"number","format":"double","description":"Total price of this message.","example":0.0085,"uniqueKey":"oneOf.1.sms.totalPrice","typeLabel":"number\u003cdouble>"},"currency":{"type":"string","description":"Price currency. [ISO 4217 currency code](https://en.wikipedia.org/wiki/ISO_4217).","example":"USD","uniqueKey":"oneOf.1.sms.currency","typeLabel":"string"},"status":{"type":"string","description":"Delivery status. One of `accepted`, `sent`, `delivered`, `undelivered`, or `failed`.\n- `accepted`: The messaging request is accepted by our system.\n- `failed`: The message failed to be sent from our system.\n- `sent`: The message has been sent from our system.\n- `delivered`: Our system has received a delivery receipt indicating that message is delivered.\n- `undelivered`: Our system has received a delivery receipt indicating that message is not delivered.","example":"sent","enum":["accepted","failed","sent","delivered","undelivered"],"uniqueKey":"oneOf.1.sms.status","typeLabel":"enum\u003cstring>"},"errorCode":{"type":"string","description":"Error code when the message is undeliverable.","uniqueKey":"oneOf.1.sms.errorCode","typeLabel":"string"},"createTime":{"type":"string","format":"date-time","description":"The time at which this message was created, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-03-01T12:00:00.000Z`.","example":"2022-03-01T12:00:00.000Z","uniqueKey":"oneOf.1.sms.createTime","typeLabel":"string\u003cdate-time>"},"updateTime":{"type":"string","format":"date-time","description":"The time at which the delivery report for this message was updated, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-03-01T12:00:00.000Z`.","example":"2022-03-01T12:00:00.000Z","uniqueKey":"oneOf.1.sms.updateTime","typeLabel":"string\u003cdate-time>"},"externalId":{"type":"string","description":"A unique (recommended) string to reference the object. This can be an order number or similar, and can be used to reconcile the object with your internal systems.","uniqueKey":"oneOf.1.sms.externalId","typeLabel":"string"},"callbackUrl":{"type":"string","description":"Delivery report URL. You can provide a URL, and we will push the updated status report to your server in time. e.g., https://httpbin.org/anything?tag=api.\nNote: We recommend configuring Webhook Endpoints instead.","example":"https://httpbin.org/anything?tag=api-sms","uniqueKey":"oneOf.1.sms.callbackUrl","typeLabel":"string"},"bizType":{"type":"string","description":"This can be either empty or one of `sms`, or `verify`. Defaults to `sms`.\n- `sms`: Indicates that the message is sent via the **SMS** product.\n- `verify`: Indicates that the message is sent via the **Verify** product.","example":"sms","uniqueKey":"oneOf.1.sms.bizType","typeLabel":"string"},"verificationId":{"type":"string","description":"The verification ID. Included only when `bizType` is `verify`.","example":"VERIFICATION-ID","uniqueKey":"oneOf.1.sms.verificationId","typeLabel":"string"}},"description":"Included when `type` is `sms.message.updated`.","uniqueKey":"oneOf.1.sms","typeLabel":"object"},"smsInbound":{"type":"object","description":"Included when `type` is `sms.inbound.received`.","properties":{"id":{"type":"string","description":"Unique ID of the message.","uniqueKey":"oneOf.1.smsInbound.id","typeLabel":"string"},"from":{"type":"string","description":"The user's phone number who sent the message to your registered sender ID, formatted in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","uniqueKey":"oneOf.1.smsInbound.from","typeLabel":"string"},"to":{"type":"string","description":"The receiver's phone number, which is one of your registered Sender IDs.","uniqueKey":"oneOf.1.smsInbound.to","typeLabel":"string"},"text":{"type":"string","description":"The text of this message.","uniqueKey":"oneOf.1.smsInbound.text","typeLabel":"string"},"sendTime":{"type":"string","format":"date-time","description":"The time at which this message was sent, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2022-06-01T12:00:00.000Z","uniqueKey":"oneOf.1.smsInbound.sendTime","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.1.smsInbound","typeLabel":"object"},"voice":{"type":"object","required":["id","to"],"properties":{"id":{"type":"string","description":"Unique ID for the object.","minLength":6,"maxLength":128,"isRequired":true,"uniqueKey":"oneOf.1.voice.id","typeLabel":"string"},"to":{"type":"string","description":"The recipient's phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","isRequired":true,"uniqueKey":"oneOf.1.voice.to","typeLabel":"string"},"verificationCode":{"type":"string","description":"The verification code to be sent, 4 to 6 digits.","example":"123456","uniqueKey":"oneOf.1.voice.verificationCode","typeLabel":"string"},"language":{"type":"string","description":"[ISO 639 Language Code](https://www.iso.org/iso-639-language-codes.html).","example":"en","uniqueKey":"oneOf.1.voice.language","typeLabel":"string"},"regionCode":{"type":"string","description":"[ISO 3166-1 alpha-2 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).","example":"US","uniqueKey":"oneOf.1.voice.regionCode","typeLabel":"string"},"totalSegments":{"type":"integer","format":"int32","minimum":1,"description":"Number of message segments. It's always 1 for voice calls.","example":1,"uniqueKey":"oneOf.1.voice.totalSegments","typeLabel":"integer\u003cint32>"},"totalPrice":{"type":"number","format":"double","description":"Total price of this message.","example":0.05,"uniqueKey":"oneOf.1.voice.totalPrice","typeLabel":"number\u003cdouble>"},"currency":{"type":"string","description":"Price currency. [ISO 4217 currency code](https://en.wikipedia.org/wiki/ISO_4217).","example":"USD","uniqueKey":"oneOf.1.voice.currency","typeLabel":"string"},"status":{"type":"string","description":"Delivery status. One of `accepted`, `sent`, `delivered`, `undelivered`, or `failed`.\n- `accepted`: The messaging request is accepted by our system.\n- `failed`: The message failed to be sent from our system.\n- `sent`: The message has been sent from our system.\n- `delivered`: Our system has received a delivery receipt indicating that message is delivered.\n- `undelivered`: Our system has received a delivery receipt indicating that message is not delivered.","example":"sent","enum":["accepted","failed","sent","delivered","undelivered"],"uniqueKey":"oneOf.1.voice.status","typeLabel":"enum\u003cstring>"},"errorCode":{"type":"string","description":"Error code when the message is undeliverable.","uniqueKey":"oneOf.1.voice.errorCode","typeLabel":"string"},"createTime":{"type":"string","format":"date-time","description":"The time at which this message was created, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-03-01T12:00:00.000Z`.","example":"2022-03-01T12:00:00.000Z","uniqueKey":"oneOf.1.voice.createTime","typeLabel":"string\u003cdate-time>"},"updateTime":{"type":"string","format":"date-time","description":"The time at which the delivery report for this message was updated, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-03-01T12:00:00.000Z`.","example":"2022-03-01T12:00:00.000Z","uniqueKey":"oneOf.1.voice.updateTime","typeLabel":"string\u003cdate-time>"},"externalId":{"type":"string","description":"A unique (recommended) string to reference the object. This can be an order number or similar, and can be used to reconcile the object with your internal systems.","uniqueKey":"oneOf.1.voice.externalId","typeLabel":"string"},"callbackUrl":{"type":"string","description":"Delivery report URL. You can provide a URL, and we will push the updated status report to your server in time. e.g., https://httpbin.org/anything?tag=api.\nNote: We recommend configuring Webhook Endpoints instead.","example":"https://httpbin.org/anything?tag=api-voice","uniqueKey":"oneOf.1.voice.callbackUrl","typeLabel":"string"},"bizType":{"type":"string","description":"This can be either empty or one of `voice`, or `verify`. Defaults to `voice`.\n- `voice`: Indicates that the message is sent via the **Voice** product.\n- `verify`: Indicates that the message is sent via **Verify** product.","example":"voice","uniqueKey":"oneOf.1.voice.bizType","typeLabel":"string"},"verificationId":{"type":"string","description":"The verification ID. Included only when `bizType` is `verify`.","example":"VERIFICATION-ID","uniqueKey":"oneOf.1.voice.verificationId","typeLabel":"string"}},"description":"Included when `type` is `voice.message.updated`.","uniqueKey":"oneOf.1.voice","typeLabel":"object"},"whatsappBusinessAccount":{"type":"object","description":"Included when `type` is `whatsapp.business_account.deleted`, `whatsapp.business_account.reviewed`, or `whatsapp.business_account.updated`.","properties":{"id":{"type":"string","description":"WhatApp Business Account ID.","uniqueKey":"oneOf.1.whatsappBusinessAccount.id","typeLabel":"string"},"name":{"type":"string","description":"User-friendly name to differentiate WhatsApp Business Accounts.","uniqueKey":"oneOf.1.whatsappBusinessAccount.name","typeLabel":"string"},"currency":{"type":"string","description":"The currency in which the payment transactions for the WhatsApp Business Account will be processed.","uniqueKey":"oneOf.1.whatsappBusinessAccount.currency","typeLabel":"string"},"messageTemplateNamespace":{"type":"string","description":"Namespace string for the message templates that belong to the WhatsApp Business Account.","uniqueKey":"oneOf.1.whatsappBusinessAccount.messageTemplateNamespace","typeLabel":"string"},"accountReviewStatus":{"type":"string","description":"WhatsApp Business Account review status.","enum":["PENDING","APPROVED","REJECTED"],"uniqueKey":"oneOf.1.whatsappBusinessAccount.accountReviewStatus","typeLabel":"enum\u003cstring>"},"businessVerificationStatus":{"type":"string","description":"Current status of business verification of Meta Business Account which owns this WhatsApp Business Account.","enum":["expired","failed","ineligible","not_verified","pending","pending_need_more_info","pending_submission","rejected","revoked","verified"],"uniqueKey":"oneOf.1.whatsappBusinessAccount.businessVerificationStatus","typeLabel":"enum\u003cstring>"},"country":{"type":"string","description":"Country of the WhatsApp Business Account's owning Meta Business account.","uniqueKey":"oneOf.1.whatsappBusinessAccount.country","typeLabel":"string"},"ownershipType":{"type":"string","description":"Ownership type of the WhatsApp Business Account.","uniqueKey":"oneOf.1.whatsappBusinessAccount.ownershipType","typeLabel":"string"},"paymentMethodAttached":{"type":"boolean","description":"Whether we have attached a payment method to the WhatsApp Business Account.","uniqueKey":"oneOf.1.whatsappBusinessAccount.paymentMethodAttached","typeLabel":"boolean"},"primaryFundingId":{"type":"string","description":"Primary funding ID for the WhatsApp Business Account paid service.","uniqueKey":"oneOf.1.whatsappBusinessAccount.primaryFundingId","typeLabel":"string"},"purchaseOrderNumber":{"type":"string","description":"The purchase order number supplied by the business for payment management purposes.","uniqueKey":"oneOf.1.whatsappBusinessAccount.purchaseOrderNumber","typeLabel":"string"},"timezoneId":{"type":"string","description":"The timezone ID of the WhatsApp Business Account. See [Timezone IDs](https://developers.facebook.com/docs/marketing-api/reference/ad-account/timezone-ids).","example":"1","uniqueKey":"oneOf.1.whatsappBusinessAccount.timezoneId","typeLabel":"string"},"decision":{"type":"string","description":"Review decision made on this WhatsApp Business Account. One of `APPROVED` or `REJECTED`.","enum":["APPROVED","REJECTED"],"uniqueKey":"oneOf.1.whatsappBusinessAccount.decision","typeLabel":"enum\u003cstring>"},"updateEvent":{"type":"string","description":"Indicates the update event type of the WABA when a notification is sent to you to report a [policy violation](https://developers.facebook.com/docs/whatsapp/overview/policy-enforcement), a WABA has been banned and more.\n- `DISABLED_UPDATE`: WhatsApp Business Account Banned.\n- `ACCOUNT_RESTRICTION`: WhatsApp Business Account Restricted Due To Policy Violations.\n- `ACCOUNT_VIOLATION`: WhatsApp Business Account Violates Policy.\n- `PARTNER_REMOVED`: WhatsApp Business Account was removed from the partner connection.\n- `PARTNER_APP_UNINSTALLED`: WhatsApp Business Account partner app was uninstalled.\n- `AUTH_INTL_PRICE_ELIGIBILITY_UPDATE`: WhatsApp Business Account is eligible for the [authentication-international rate](https://developers.facebook.com/docs/whatsapp/pricing/authentication-international-rates).\n- `BUSINESS_PRIMARY_LOCATION_COUNTRY_UPDATE`: Business's [primary business location](https://developers.facebook.com/docs/whatsapp/pricing/authentication-international-rates#primary-business-location) is set.\n- `BUSINESS_CAPABILITY_UPDATE`: Meta reported a change to the Business Portfolio or WABA phone-number registration limit.","enum":["DISABLED_UPDATE","ACCOUNT_RESTRICTION","ACCOUNT_VIOLATION","PARTNER_REMOVED","PARTNER_APP_UNINSTALLED","AUTH_INTL_PRICE_ELIGIBILITY_UPDATE","BUSINESS_PRIMARY_LOCATION_COUNTRY_UPDATE","BUSINESS_CAPABILITY_UPDATE"],"uniqueKey":"oneOf.1.whatsappBusinessAccount.updateEvent","typeLabel":"enum\u003cstring>"},"banState":{"type":"string","description":"The ban state of the WhatsApp Business Account.","enum":["SCHEDULE_FOR_DISABLE","DISABLE","REINSTATE"],"uniqueKey":"oneOf.1.whatsappBusinessAccount.banState","typeLabel":"enum\u003cstring>"},"banDate":{"type":"string","description":"The date when the WABA is banned.","example":"December 9, 2022","uniqueKey":"oneOf.1.whatsappBusinessAccount.banDate","typeLabel":"string"},"violationType":{"type":"string","description":"Used to report violations imposed on the WABA.\nSee Meta's [Policy enforcement violations](https://developers.facebook.com/documentation/business-messaging/whatsapp/policy-enforcement-violations) for violation types and descriptions. Meta may update this list over time.\nFor Utility Direct Send violation types and restriction details, see Meta's [Webhook for account restriction](https://developers.facebook.com/documentation/business-messaging/whatsapp/direct-send/integrity-and-content-guidelines#webhook-for-account-restriction).","example":"SCAM","uniqueKey":"oneOf.1.whatsappBusinessAccount.violationType","typeLabel":"string"},"restrictions":{"type":"array","description":"Used to report restrictions imposed on the WABA, when that WABA violates [WhatsApp Business Platform policies](https://developers.facebook.com/docs/whatsapp/overview/policy-enforcement).","items":{"type":"object","description":"Used to report restrictions imposed on a specific WABA, when that WABA violates [WhatsApp Business Platform policies](https://developers.facebook.com/docs/whatsapp/overview/policy-enforcement).","properties":{"restrictionType":{"type":"string","description":"Restriction type.","enum":["RESTRICTED_ADD_PHONE_NUMBER_ACTION","RESTRICTED_BIZ_INITIATED_MESSAGING","RESTRICTED_CUSTOMER_INITIATED_MESSAGING","RESTRICTED_DIRECT_SEND_UTILITY_TEMPLATES"],"uniqueKey":"oneOf.1.whatsappBusinessAccount.restrictions.items.[INDEX].restrictionType","typeLabel":"enum\u003cstring>"},"expiration":{"type":"string","format":"date-time","description":"The time at which this restriction expires, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2022-06-01T12:00:00.000Z","uniqueKey":"oneOf.1.whatsappBusinessAccount.restrictions.items.[INDEX].expiration","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.1.whatsappBusinessAccount.restrictions.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.whatsappBusinessAccount.restrictions","typeLabel":"object[]"},"maxPhoneNumbersPerBusiness":{"type":"integer","format":"int32","description":"Included in a `whatsapp.business_account.updated` webhook with `updateEvent=BUSINESS_CAPABILITY_UPDATE` when Meta reports the Business Portfolio phone-number registration limit. Meta currently reports this field separately from `maxPhoneNumbersPerWaba`, but consumers must process both if a future update includes them together.","example":20,"uniqueKey":"oneOf.1.whatsappBusinessAccount.maxPhoneNumbersPerBusiness","typeLabel":"integer\u003cint32>"},"maxPhoneNumbersPerWaba":{"type":"integer","format":"int32","description":"Included in a `whatsapp.business_account.updated` webhook with `updateEvent=BUSINESS_CAPABILITY_UPDATE` when Meta reports the WABA phone-number registration limit. Meta currently reports this field separately from `maxPhoneNumbersPerBusiness`, but consumers must process both if a future update includes them together.","example":25,"uniqueKey":"oneOf.1.whatsappBusinessAccount.maxPhoneNumbersPerWaba","typeLabel":"integer\u003cint32>"},"authIntlRateEligibilityCountries":{"type":"array","description":"Starting June 1, 2024, we are updating our authentication rate card and introducing a new authentication-international rate. This rate will apply in the the following countries:\n- June 1, 2024 – Indonesia (country calling code +62, country code `ID`)\n- July 1, 2024 – India (country calling code +91, country code `IN`)\n\nSee also [Authentication-International Rates](https://developers.facebook.com/docs/whatsapp/pricing/authentication-international-rates).","items":{"type":"object","description":"Starting June 1, 2024, we are updating our authentication rate card and introducing a new authentication-international rate. This rate will apply in the the following countries:\n- June 1, 2024 – Indonesia (country calling code +62, country code `ID`)\n- July 1, 2024 – India (country calling code +91, country code `IN`)\n\nSee also [Authentication-International Rates](https://developers.facebook.com/docs/whatsapp/pricing/authentication-international-rates).","properties":{"countryCode":{"type":"string","description":"[ISO 3166-1 alpha-2 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).","example":"IN","uniqueKey":"oneOf.1.whatsappBusinessAccount.authIntlRateEligibilityCountries.items.[INDEX].countryCode","typeLabel":"string"},"startTime":{"type":"string","format":"date-time","description":"Date when newly-opened authentication conversations are subject to authentication-international rates, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2024-07-01T00:00:00.000Z`.","example":"2024-07-01T00:00:00.000Z","uniqueKey":"oneOf.1.whatsappBusinessAccount.authIntlRateEligibilityCountries.items.[INDEX].startTime","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.1.whatsappBusinessAccount.authIntlRateEligibilityCountries.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.whatsappBusinessAccount.authIntlRateEligibilityCountries","typeLabel":"object[]"},"primaryBusinessLocation":{"type":"string","description":"Your primary business location is the country where your business is based. It will appear in the Business Manager under the Primary Business Location field starting May 1, 2024.\n[ISO 3166-1 alpha-2 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).","example":"US","uniqueKey":"oneOf.1.whatsappBusinessAccount.primaryBusinessLocation","typeLabel":"string"},"removedReason":{"type":"string","description":"Raw reason from the WhatsApp Business Account deletion event. Known values include:\n- `ACCOUNT_DISCONNECTED`: The account was disconnected due to enforcement or because the WhatsApp account was explicitly deleted.\n- `BUSINESS_DOWNGRADE`: The phone number was registered with the consumer WhatsApp app.\n- `CHANGE_NUMBER`: The WhatsApp phone number was changed.\n- `COMPANION_INACTIVITY`: A companion device was inactive for approximately 30 days.\n- `PRIMARY_INACTIVITY`: A primary device was inactive for approximately 30 days.\n- `USER_RE_REGISTERED`: WhatsApp was re-registered on a new device.\n\nUnknown values are returned as received.","example":"ACCOUNT_DISCONNECTED","uniqueKey":"oneOf.1.whatsappBusinessAccount.removedReason","typeLabel":"string"},"removedInitiatedBy":{"type":"string","description":"Raw initiator from the WhatsApp Business Account deletion event. Known values include:\n- `USER`: The removal was initiated by the WhatsApp user.\n- `SYSTEM`: The removal was initiated by the Meta system.\n\nUnknown values are returned as received.","example":"USER","uniqueKey":"oneOf.1.whatsappBusinessAccount.removedInitiatedBy","typeLabel":"string"},"removedTime":{"type":"string","format":"date-time","description":"The time when the WhatsApp Business Account deletion event was received, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2026-05-19T12:00:00.000Z`.","example":"2026-05-19T12:00:00.000Z","uniqueKey":"oneOf.1.whatsappBusinessAccount.removedTime","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.1.whatsappBusinessAccount","typeLabel":"object"},"whatsappInboundMessage":{"type":"object","description":"Included when `type` is `whatsapp.inbound_message.received`, or when `type` is `whatsapp.smb.history` for an inbound history message. It is omitted for a metadata-only history chunk.","required":["id"],"properties":{"id":{"type":"string","description":"Unique ID for the object.","isRequired":true,"uniqueKey":"oneOf.1.whatsappInboundMessage.id","typeLabel":"string"},"wamid":{"type":"string","description":"The original message ID on WhatsApp's platform.","example":"wamid.BgNODYxN...","uniqueKey":"oneOf.1.whatsappInboundMessage.wamid","typeLabel":"string"},"wabaId":{"type":"string","description":"WhatsApp Business Account ID.","example":"whatsapp-business-account-id","uniqueKey":"oneOf.1.whatsappInboundMessage.wabaId","typeLabel":"string"},"from":{"type":"string","description":"The customer's phone number who sent the message to the business, formatted in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","uniqueKey":"oneOf.1.whatsappInboundMessage.from","typeLabel":"string"},"fromUserId":{"type":"string","description":"The customer's WhatsApp Business-scoped user ID (BSUID).","example":"US.1234","uniqueKey":"oneOf.1.whatsappInboundMessage.fromUserId","typeLabel":"string"},"fromParentUserId":{"type":"string","description":"The customer's parent WhatsApp Business-scoped user ID.","example":"US.ENT.1234","uniqueKey":"oneOf.1.whatsappInboundMessage.fromParentUserId","typeLabel":"string"},"customerProfile":{"type":"object","description":"The customer's profile information.","properties":{"name":{"type":"string","description":"Name of the WhatsApp account.","example":"John","uniqueKey":"oneOf.1.whatsappInboundMessage.customerProfile.name","typeLabel":"string"},"username":{"type":"string","description":"WhatsApp username.","example":"john_doe","uniqueKey":"oneOf.1.whatsappInboundMessage.customerProfile.username","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappInboundMessage.customerProfile","typeLabel":"object"},"to":{"type":"string","description":"The recipient's phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","uniqueKey":"oneOf.1.whatsappInboundMessage.to","typeLabel":"string"},"sendTime":{"type":"string","format":"date-time","description":"The time at which this message is sent, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2022-06-01T12:00:00.000Z","uniqueKey":"oneOf.1.whatsappInboundMessage.sendTime","typeLabel":"string\u003cdate-time>"},"type":{"type":"string","description":"WhatsApp inbound message type.\nSee also [WhatsApp webhook messages object](https://developers.facebook.com/docs/whatsapp/cloud-api/webhooks/components#messages-object).","enum":["text","image","video","audio","document","sticker","contacts","location","interactive","button","reaction","request_welcome","order","system","unsupported"],"uniqueKey":"oneOf.1.whatsappInboundMessage.type","typeLabel":"enum\u003cstring>"},"text":{"type":"object","description":"When the notification describes a text message, the text object provides the body of the text message.","properties":{"body":{"type":"string","description":"Message text.","uniqueKey":"oneOf.1.whatsappInboundMessage.text.body","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappInboundMessage.text","typeLabel":"object"},"image":{"type":"object","description":"When a message with media (`image` | `document` | `audio` | `video` | `sticker`) is received, the WhatsApp Business API client will download the media. Once the media is downloaded, a notification is sent to your Webhook. This message contains information that identifies the media object and enables you to find and download the object.","properties":{"id":{"type":"string","description":"ID of the media. Can be used to delete the media if stored locally on the client.","uniqueKey":"oneOf.1.whatsappInboundMessage.image.id","typeLabel":"string"},"link":{"type":"string","description":"The url to download the media file.\nNote that This link can be directly accessed in a few minutes for the convenience of the consumer, but you should always include an `X-API-Key` header to download this file within a month.","uniqueKey":"oneOf.1.whatsappInboundMessage.image.link","typeLabel":"string"},"caption":{"type":"string","description":"The provided caption for the media. Only present if specified.","uniqueKey":"oneOf.1.whatsappInboundMessage.image.caption","typeLabel":"string"},"filename":{"type":"string","description":"Filename on the sender's device. This will only be present in `document` media messages.","uniqueKey":"oneOf.1.whatsappInboundMessage.image.filename","typeLabel":"string"},"metadata":{"type":"object","additionalProperties":{"type":"object","uniqueKey":"oneOf.1.whatsappInboundMessage.image.metadata.additionalProperties","typeLabel":"object"},"description":"Metadata pertaining to `sticker` media.","uniqueKey":"oneOf.1.whatsappInboundMessage.image.metadata","typeLabel":"object"},"mime_type":{"type":"string","description":"Mime type of the media.","uniqueKey":"oneOf.1.whatsappInboundMessage.image.mime_type","typeLabel":"string"},"sha256":{"type":"string","description":"Checksum.","uniqueKey":"oneOf.1.whatsappInboundMessage.image.sha256","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappInboundMessage.image","typeLabel":"object"},"video":{"type":"object","description":"When a message with media (`image` | `document` | `audio` | `video` | `sticker`) is received, the WhatsApp Business API client will download the media. Once the media is downloaded, a notification is sent to your Webhook. This message contains information that identifies the media object and enables you to find and download the object.","properties":{"id":{"type":"string","description":"ID of the media. Can be used to delete the media if stored locally on the client.","uniqueKey":"oneOf.1.whatsappInboundMessage.video.id","typeLabel":"string"},"link":{"type":"string","description":"The url to download the media file.\nNote that This link can be directly accessed in a few minutes for the convenience of the consumer, but you should always include an `X-API-Key` header to download this file within a month.","uniqueKey":"oneOf.1.whatsappInboundMessage.video.link","typeLabel":"string"},"caption":{"type":"string","description":"The provided caption for the media. Only present if specified.","uniqueKey":"oneOf.1.whatsappInboundMessage.video.caption","typeLabel":"string"},"filename":{"type":"string","description":"Filename on the sender's device. This will only be present in `document` media messages.","uniqueKey":"oneOf.1.whatsappInboundMessage.video.filename","typeLabel":"string"},"metadata":{"type":"object","additionalProperties":{"type":"object","uniqueKey":"oneOf.1.whatsappInboundMessage.video.metadata.additionalProperties","typeLabel":"object"},"description":"Metadata pertaining to `sticker` media.","uniqueKey":"oneOf.1.whatsappInboundMessage.video.metadata","typeLabel":"object"},"mime_type":{"type":"string","description":"Mime type of the media.","uniqueKey":"oneOf.1.whatsappInboundMessage.video.mime_type","typeLabel":"string"},"sha256":{"type":"string","description":"Checksum.","uniqueKey":"oneOf.1.whatsappInboundMessage.video.sha256","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappInboundMessage.video","typeLabel":"object"},"audio":{"type":"object","description":"When a message with media (`image` | `document` | `audio` | `video` | `sticker`) is received, the WhatsApp Business API client will download the media. Once the media is downloaded, a notification is sent to your Webhook. This message contains information that identifies the media object and enables you to find and download the object.","properties":{"id":{"type":"string","description":"ID of the media. Can be used to delete the media if stored locally on the client.","uniqueKey":"oneOf.1.whatsappInboundMessage.audio.id","typeLabel":"string"},"link":{"type":"string","description":"The url to download the media file.\nNote that This link can be directly accessed in a few minutes for the convenience of the consumer, but you should always include an `X-API-Key` header to download this file within a month.","uniqueKey":"oneOf.1.whatsappInboundMessage.audio.link","typeLabel":"string"},"caption":{"type":"string","description":"The provided caption for the media. Only present if specified.","uniqueKey":"oneOf.1.whatsappInboundMessage.audio.caption","typeLabel":"string"},"filename":{"type":"string","description":"Filename on the sender's device. This will only be present in `document` media messages.","uniqueKey":"oneOf.1.whatsappInboundMessage.audio.filename","typeLabel":"string"},"metadata":{"type":"object","additionalProperties":{"type":"object","uniqueKey":"oneOf.1.whatsappInboundMessage.audio.metadata.additionalProperties","typeLabel":"object"},"description":"Metadata pertaining to `sticker` media.","uniqueKey":"oneOf.1.whatsappInboundMessage.audio.metadata","typeLabel":"object"},"mime_type":{"type":"string","description":"Mime type of the media.","uniqueKey":"oneOf.1.whatsappInboundMessage.audio.mime_type","typeLabel":"string"},"sha256":{"type":"string","description":"Checksum.","uniqueKey":"oneOf.1.whatsappInboundMessage.audio.sha256","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappInboundMessage.audio","typeLabel":"object"},"document":{"type":"object","description":"When a message with media (`image` | `document` | `audio` | `video` | `sticker`) is received, the WhatsApp Business API client will download the media. Once the media is downloaded, a notification is sent to your Webhook. This message contains information that identifies the media object and enables you to find and download the object.","properties":{"id":{"type":"string","description":"ID of the media. Can be used to delete the media if stored locally on the client.","uniqueKey":"oneOf.1.whatsappInboundMessage.document.id","typeLabel":"string"},"link":{"type":"string","description":"The url to download the media file.\nNote that This link can be directly accessed in a few minutes for the convenience of the consumer, but you should always include an `X-API-Key` header to download this file within a month.","uniqueKey":"oneOf.1.whatsappInboundMessage.document.link","typeLabel":"string"},"caption":{"type":"string","description":"The provided caption for the media. Only present if specified.","uniqueKey":"oneOf.1.whatsappInboundMessage.document.caption","typeLabel":"string"},"filename":{"type":"string","description":"Filename on the sender's device. This will only be present in `document` media messages.","uniqueKey":"oneOf.1.whatsappInboundMessage.document.filename","typeLabel":"string"},"metadata":{"type":"object","additionalProperties":{"type":"object","uniqueKey":"oneOf.1.whatsappInboundMessage.document.metadata.additionalProperties","typeLabel":"object"},"description":"Metadata pertaining to `sticker` media.","uniqueKey":"oneOf.1.whatsappInboundMessage.document.metadata","typeLabel":"object"},"mime_type":{"type":"string","description":"Mime type of the media.","uniqueKey":"oneOf.1.whatsappInboundMessage.document.mime_type","typeLabel":"string"},"sha256":{"type":"string","description":"Checksum.","uniqueKey":"oneOf.1.whatsappInboundMessage.document.sha256","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappInboundMessage.document","typeLabel":"object"},"sticker":{"type":"object","description":"When a message with media (`image` | `document` | `audio` | `video` | `sticker`) is received, the WhatsApp Business API client will download the media. Once the media is downloaded, a notification is sent to your Webhook. This message contains information that identifies the media object and enables you to find and download the object.","properties":{"id":{"type":"string","description":"ID of the media. Can be used to delete the media if stored locally on the client.","uniqueKey":"oneOf.1.whatsappInboundMessage.sticker.id","typeLabel":"string"},"link":{"type":"string","description":"The url to download the media file.\nNote that This link can be directly accessed in a few minutes for the convenience of the consumer, but you should always include an `X-API-Key` header to download this file within a month.","uniqueKey":"oneOf.1.whatsappInboundMessage.sticker.link","typeLabel":"string"},"caption":{"type":"string","description":"The provided caption for the media. Only present if specified.","uniqueKey":"oneOf.1.whatsappInboundMessage.sticker.caption","typeLabel":"string"},"filename":{"type":"string","description":"Filename on the sender's device. This will only be present in `document` media messages.","uniqueKey":"oneOf.1.whatsappInboundMessage.sticker.filename","typeLabel":"string"},"metadata":{"type":"object","additionalProperties":{"type":"object","uniqueKey":"oneOf.1.whatsappInboundMessage.sticker.metadata.additionalProperties","typeLabel":"object"},"description":"Metadata pertaining to `sticker` media.","uniqueKey":"oneOf.1.whatsappInboundMessage.sticker.metadata","typeLabel":"object"},"mime_type":{"type":"string","description":"Mime type of the media.","uniqueKey":"oneOf.1.whatsappInboundMessage.sticker.mime_type","typeLabel":"string"},"sha256":{"type":"string","description":"Checksum.","uniqueKey":"oneOf.1.whatsappInboundMessage.sticker.sha256","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappInboundMessage.sticker","typeLabel":"object"},"interactive":{"type":"object","description":"When a customer has interacted with your message, this object is included in the message object.","properties":{"type":{"type":"string","description":"The type of interactive message received.\n- `button_reply`: Sent when a customer clicks a button.\n- `list_reply`: Sent when a customer selects an item from a list.\n- `nfm_reply`: Sent when a customer responds to a WhatsApp Flow (Next Feature Messaging).\n- `call_permission_reply`: Sent when a customer responds to a call permission request.","enum":["button_reply","list_reply","nfm_reply","call_permission_reply"],"uniqueKey":"oneOf.1.whatsappInboundMessage.interactive.type","typeLabel":"enum\u003cstring>"},"button_reply":{"type":"object","description":"Sent when a customer clicks a button. Returned when `type` is `button_reply`.","properties":{"id":{"type":"string","description":"Unique ID of the clicked button.","uniqueKey":"oneOf.1.whatsappInboundMessage.interactive.button_reply.id","typeLabel":"string"},"title":{"type":"string","description":"Title of a button.","uniqueKey":"oneOf.1.whatsappInboundMessage.interactive.button_reply.title","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappInboundMessage.interactive.button_reply","typeLabel":"object"},"list_reply":{"type":"object","description":"Sent when a customer selects an item from a list. Returned when `type` is `list_reply`.","properties":{"id":{"type":"string","description":"Unique ID of the selected list item.","uniqueKey":"oneOf.1.whatsappInboundMessage.interactive.list_reply.id","typeLabel":"string"},"title":{"type":"string","description":"Title of the selected list item.","uniqueKey":"oneOf.1.whatsappInboundMessage.interactive.list_reply.title","typeLabel":"string"},"description":{"type":"string","description":"Description of the selected row.","uniqueKey":"oneOf.1.whatsappInboundMessage.interactive.list_reply.description","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappInboundMessage.interactive.list_reply","typeLabel":"object"},"nfm_reply":{"type":"object","description":"Sent when a customer responds to a WhatsApp Flow (Next Feature Messaging). Returned when `type` is `nfm_reply`.","properties":{"name":{"type":"string","description":"The name of the flow or form being replied to.","example":"flow","uniqueKey":"oneOf.1.whatsappInboundMessage.interactive.nfm_reply.name","typeLabel":"string"},"response_json":{"type":"string","description":"JSON string containing the user's responses to the flow. Contains form field values and flow token.","example":"{\"flow_token\":\"unused\",\"screen_0_firstName_0\":\"王\",\"screen_1_TextInput_1\":\"123\",\"screen_1_TextInput_0\":\"11\",\"screen_0_lastName_1\":\"TESTNAME\"}","uniqueKey":"oneOf.1.whatsappInboundMessage.interactive.nfm_reply.response_json","typeLabel":"string"},"body":{"type":"string","description":"The body content of the flow reply message.","example":"Sent","uniqueKey":"oneOf.1.whatsappInboundMessage.interactive.nfm_reply.body","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappInboundMessage.interactive.nfm_reply","typeLabel":"object"},"call_permission_reply":{"type":"object","description":"Sent when a customer responds to a call permission request. Returned when `type` is `call_permission_reply`.\nThis occurs when WhatsApp prompts users to grant callback permissions after they call your business.","properties":{"response":{"type":"string","description":"The customer's response to the call permission request.\n- `accept`: User granted permission for business to call back\n- `reject`: User rejected permission for business to call back","enum":["accept","reject"],"example":"accept","uniqueKey":"oneOf.1.whatsappInboundMessage.interactive.call_permission_reply.response","typeLabel":"enum\u003cstring>"},"expiration_timestamp":{"type":"integer","format":"int64","description":"The timestamp (in seconds) when the call permission expires.\nOnly present when response is \"accept\" and is_permanent is false.","example":1672531200,"uniqueKey":"oneOf.1.whatsappInboundMessage.interactive.call_permission_reply.expiration_timestamp","typeLabel":"integer\u003cint64>"},"is_permanent":{"type":"boolean","description":"Whether the permission is permanent or temporary.\n- `true`: Permanent authorization (no expiration)\n- `false`: Temporary authorization (expires at expiration_timestamp)","example":false,"uniqueKey":"oneOf.1.whatsappInboundMessage.interactive.call_permission_reply.is_permanent","typeLabel":"boolean"}},"uniqueKey":"oneOf.1.whatsappInboundMessage.interactive.call_permission_reply","typeLabel":"object"}},"uniqueKey":"oneOf.1.whatsappInboundMessage.interactive","typeLabel":"object"},"location":{"type":"object","description":"When you receive a notification of a user's static location, the location object provides the details of the location.","properties":{"latitude":{"type":"number","format":"double","description":"Latitude of location being sent.","uniqueKey":"oneOf.1.whatsappInboundMessage.location.latitude","typeLabel":"number\u003cdouble>"},"longitude":{"type":"number","format":"double","description":"Longitude of location being sent.","uniqueKey":"oneOf.1.whatsappInboundMessage.location.longitude","typeLabel":"number\u003cdouble>"},"address":{"type":"string","description":"Address of the location.","uniqueKey":"oneOf.1.whatsappInboundMessage.location.address","typeLabel":"string"},"name":{"type":"string","description":"Name of the location.","uniqueKey":"oneOf.1.whatsappInboundMessage.location.name","typeLabel":"string"},"url":{"type":"string","description":"URL for the website where the user downloaded the location information.","uniqueKey":"oneOf.1.whatsappInboundMessage.location.url","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappInboundMessage.location","typeLabel":"object"},"button":{"type":"object","description":"When the message type field is set to `button`, this object is included in the message object.","properties":{"payload":{"type":"string","description":"The payload for a button set up by the business that a customer clicked as part of an interactive message.","uniqueKey":"oneOf.1.whatsappInboundMessage.button.payload","typeLabel":"string"},"text":{"type":"string","description":"Button text.","uniqueKey":"oneOf.1.whatsappInboundMessage.button.text","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappInboundMessage.button","typeLabel":"object"},"contacts":{"type":"array","items":{"type":"object","description":"When the message type filed is set to `contacts`, this object is included in the message object.","required":["name"],"properties":{"name":{"type":"object","description":"Full contact name formatted as a name object.","required":["formatted_name"],"properties":{"formatted_name":{"type":"string","description":"Full name, as it normally appears.","isRequired":true,"uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].name.formatted_name","typeLabel":"string"},"first_name":{"type":"string","description":"First name.","uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].name.first_name","typeLabel":"string"},"last_name":{"type":"string","description":"Last name.","uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].name.last_name","typeLabel":"string"},"middle_name":{"type":"string","description":"Middle name.","uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].name.middle_name","typeLabel":"string"},"suffix":{"type":"string","description":"Name suffix.","uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].name.suffix","typeLabel":"string"},"prefix":{"type":"string","description":"Name prefix.","uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].name.prefix","typeLabel":"string"}},"isRequired":true,"uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].name","typeLabel":"object"},"addresses":{"type":"array","items":{"type":"object","description":"Full contact address(es) formatted as an addresses object.","properties":{"street":{"type":"string","description":"Street number and name.","uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].addresses.items.[INDEX].street","typeLabel":"string"},"city":{"type":"string","description":"City name.","uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].addresses.items.[INDEX].city","typeLabel":"string"},"state":{"type":"string","description":"State abbreviation.","uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].addresses.items.[INDEX].state","typeLabel":"string"},"zip":{"type":"string","description":"ZIP code.","uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].addresses.items.[INDEX].zip","typeLabel":"string"},"country":{"type":"string","description":"Full country name.","uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].addresses.items.[INDEX].country","typeLabel":"string"},"country_code":{"type":"string","description":"Two-letter country abbreviation.","uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].addresses.items.[INDEX].country_code","typeLabel":"string"},"type":{"type":"string","description":"Standard values are `HOME` and `WORK`.","example":"WORK","uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].addresses.items.[INDEX].type","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].addresses.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].addresses","typeLabel":"object[]"},"birthday":{"type":"string","description":"`YYYY-MM-DD` formatted string.","example":"2022-09-27","uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].birthday","typeLabel":"string"},"emails":{"type":"array","items":{"type":"object","description":"Contact email address(es) formatted as an emails object.","properties":{"email":{"type":"string","description":"Email address.","uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].emails.items.[INDEX].email","typeLabel":"string"},"type":{"type":"string","description":"Standard values are `HOME` and `WORK`.","example":"WORK","uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].emails.items.[INDEX].type","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].emails.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].emails","typeLabel":"object[]"},"org":{"type":"object","description":"Contact organization information formatted as an org object.","properties":{"company":{"type":"string","description":"Name of the contact's company.","uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].org.company","typeLabel":"string"},"department":{"type":"string","description":"Name of the contact's department.","uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].org.department","typeLabel":"string"},"title":{"type":"string","description":"Contact's business title.","uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].org.title","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].org","typeLabel":"object"},"phones":{"type":"array","description":"Contact phone number(s) formatted as a phone object.","items":{"type":"object","properties":{"phone":{"type":"string","description":"Automatically populated with the `wa_id` value as a formatted phone number.","uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].phones.items.[INDEX].phone","typeLabel":"string"},"type":{"type":"string","description":"Standard Values are `CELL`, `MAIN`, `IPHONE`, `HOME`, and `WORK`.","uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].phones.items.[INDEX].type","typeLabel":"string"},"wa_id":{"type":"string","description":"WhatsApp ID.","uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].phones.items.[INDEX].wa_id","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].phones.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].phones","typeLabel":"object[]"},"urls":{"type":"array","description":"Contact URL(s) formatted as a urls object.","items":{"type":"object","properties":{"url":{"type":"string","description":"URL.","uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].urls.items.[INDEX].url","typeLabel":"string"},"type":{"type":"string","description":"Standard values are `HOME` and `WORK`.","uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].urls.items.[INDEX].type","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].urls.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].urls","typeLabel":"object[]"},"vcard":{"type":"string","description":"Optional vCard supplied with the shared contact payload.","uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].vcard","typeLabel":"string"},"origin":{"type":"string","description":"Set to `contact_request` when the user shared the contact in response to a request-contact-info message.","example":"contact_request","uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX].origin","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappInboundMessage.contacts.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.whatsappInboundMessage.contacts","typeLabel":"object[]"},"reaction":{"type":"object","description":"When a user reacts to messages with an emoji, the message type is set to `reaction`, and this field is included.","required":["message_id"],"properties":{"message_id":{"type":"string","description":"Specifies the `wamid` of the message received that contained the reaction.","example":"wamid.BgNODYxN...","isRequired":true,"uniqueKey":"oneOf.1.whatsappInboundMessage.reaction.message_id","typeLabel":"string"},"emoji":{"type":"string","description":"**Required** when you send a `reaction` message. Set it to `\"\"` if you want to remove the emoji.\n**Optional** when you received a message from a user. This field is included when a user reacts to messages with an emoji. Otherwise, it indicates a user removed the emoji.","uniqueKey":"oneOf.1.whatsappInboundMessage.reaction.emoji","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappInboundMessage.reaction","typeLabel":"object"},"order":{"type":"object","description":"When a customer places an order, the message type is set to `order`, and this field is included.","properties":{"catalog_id":{"type":"string","description":"The catalog ID.","example":"the-catalog_id","uniqueKey":"oneOf.1.whatsappInboundMessage.order.catalog_id","typeLabel":"string"},"product_items":{"type":"array","items":{"type":"object","properties":{"product_retailer_id":{"type":"string","description":"The product SKU identifier.","uniqueKey":"oneOf.1.whatsappInboundMessage.order.product_items.items.[INDEX].product_retailer_id","typeLabel":"string"},"quantity":{"type":"integer","format":"int32","description":"Number of item.","uniqueKey":"oneOf.1.whatsappInboundMessage.order.product_items.items.[INDEX].quantity","typeLabel":"integer\u003cint32>"},"item_price":{"type":"number","format":"double","description":"Unitary price of item.","uniqueKey":"oneOf.1.whatsappInboundMessage.order.product_items.items.[INDEX].item_price","typeLabel":"number\u003cdouble>"},"currency":{"type":"string","description":"Price currency. [ISO 4217 currency code](https://en.wikipedia.org/wiki/ISO_4217).","example":"USD","uniqueKey":"oneOf.1.whatsappInboundMessage.order.product_items.items.[INDEX].currency","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappInboundMessage.order.product_items.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.whatsappInboundMessage.order.product_items","typeLabel":"object[]"},"text":{"type":"string","description":"Text message sent along with the order.","uniqueKey":"oneOf.1.whatsappInboundMessage.order.text","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappInboundMessage.order","typeLabel":"object"},"system":{"type":"object","description":"When the message type is set to `system`, this field is included.\nThis object is added to Webhooks if a user has changed their phone number and if a user’s identity has potentially changed on WhatsApp.","properties":{"body":{"type":"string","description":"Describes the system message event. Supported use cases are:\n- Phone number update: for when a user changes from an old number to a new number.\n- Identity update: for when a user identity has changed.","uniqueKey":"oneOf.1.whatsappInboundMessage.system.body","typeLabel":"string"},"wa_id":{"type":"string","description":"**Added to Webhooks for phone number updates.**\n\nNew WhatsApp ID of the customer.","uniqueKey":"oneOf.1.whatsappInboundMessage.system.wa_id","typeLabel":"string"},"user_id":{"type":"string","description":"**Added to Webhooks for phone number updates.**\n\nThe customer's new WhatsApp Business-scoped user ID (BSUID). This\nfield keeps Meta's original snake_case name inside the `system`\nobject.","example":"US.13491208655302741919","uniqueKey":"oneOf.1.whatsappInboundMessage.system.user_id","typeLabel":"string"},"parent_user_id":{"type":"string","description":"**Added to Webhooks for phone number updates when parent BSUIDs are enabled.**\n\nThe customer's new parent WhatsApp Business-scoped user ID. This\nfield keeps Meta's original snake_case name inside the `system`\nobject.","example":"US.ENT.11815799212886844831","uniqueKey":"oneOf.1.whatsappInboundMessage.system.parent_user_id","typeLabel":"string"},"type":{"type":"string","description":"Supported types are:\n- `user_changed_number`: for a user changed number notification.\n- `user_identity_changed`: for user identity changed notification.","uniqueKey":"oneOf.1.whatsappInboundMessage.system.type","typeLabel":"string"},"user":{"type":"string","description":"**Added to Webhooks for identity updates.**\n\nThe new WhatsApp user ID of the customer.","uniqueKey":"oneOf.1.whatsappInboundMessage.system.user","typeLabel":"string"},"new_wa_id":{"type":"string","description":"**Added to Webhooks for phone number updates.**\n\nNew WhatsApp ID of the customer.","uniqueKey":"oneOf.1.whatsappInboundMessage.system.new_wa_id","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappInboundMessage.system","typeLabel":"object"},"errors":{"type":"array","items":{"type":"object","description":"When the message type `unsupported`, this object is included.","properties":{"code":{"type":"string","description":"The error code.","example":131051,"uniqueKey":"oneOf.1.whatsappInboundMessage.errors.items.[INDEX].code","typeLabel":"string"},"title":{"type":"string","description":"The error title.","example":"Message type unknown","uniqueKey":"oneOf.1.whatsappInboundMessage.errors.items.[INDEX].title","typeLabel":"string"},"message":{"type":"string","description":"The error message.","example":"Message type unknown","uniqueKey":"oneOf.1.whatsappInboundMessage.errors.items.[INDEX].message","typeLabel":"string"},"error_data":{"type":"object","description":"An error data object with the following properties:\n- `details`: A string describing the reason for the error. Example: `Message type is currently not supported.`.","uniqueKey":"oneOf.1.whatsappInboundMessage.errors.items.[INDEX].error_data","typeLabel":"object"}},"uniqueKey":"oneOf.1.whatsappInboundMessage.errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.whatsappInboundMessage.errors","typeLabel":"object[]"},"context":{"type":"object","description":"Message context.","properties":{"forwarded":{"type":"boolean","description":"**Added to Webhooks if message was forwarded.**\n\nSet to `true` if the received message has been forwarded.","uniqueKey":"oneOf.1.whatsappInboundMessage.context.forwarded","typeLabel":"boolean"},"frequently_forwarded":{"type":"boolean","description":"**Added to Webhooks if message has been frequently forwarded.**\n\nSet to `true` if the received message has been forwarded more than five times.","uniqueKey":"oneOf.1.whatsappInboundMessage.context.frequently_forwarded","typeLabel":"boolean"},"from":{"type":"string","description":"**Added to Webhooks if message is an inbound reply to a sent message.**\n\nThe WhatsApp ID (a phone number without the '+' prefix) of the sender of the sent message.","uniqueKey":"oneOf.1.whatsappInboundMessage.context.from","typeLabel":"string"},"id":{"type":"string","description":"**Optional.**\n\nThe `wamid` for the sent message for an inbound reply. `wamid` is the original message ID on WhatsApp’s platform.","example":"wamid.BgNODYxN...","uniqueKey":"oneOf.1.whatsappInboundMessage.context.id","typeLabel":"string"},"referred_product":{"type":"object","description":"**Required for Product Inquiry Messages.**\n\nSpecifies the product the user is requesting information about. See also [Sell Products \u0026 Services](https://developers.facebook.com/docs/whatsapp/cloud-api/guides/sell-products-and-services).","properties":{"catalog_id":{"type":"string","description":"The catalog ID.","uniqueKey":"oneOf.1.whatsappInboundMessage.context.referred_product.catalog_id","typeLabel":"string"},"product_retailer_id":{"type":"string","description":"The product SKU identifier.","uniqueKey":"oneOf.1.whatsappInboundMessage.context.referred_product.product_retailer_id","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappInboundMessage.context.referred_product","typeLabel":"object"}},"uniqueKey":"oneOf.1.whatsappInboundMessage.context","typeLabel":"object"},"referral":{"type":"object","description":"When a user messages businesses using call-to-actions buttons on [Ads that Click to WhatsApp](https://www.facebook.com/business/help/447934475640650) or a [Facebook Page call-to-action buttons](https://www.facebook.com/help/977869848936797), this field is included as an attachment.","properties":{"source_url":{"type":"string","description":"Specifies the URL that leads to the ad or post clicked by the user. Opening this URL takes you to the ad viewed by your user.","uniqueKey":"oneOf.1.whatsappInboundMessage.referral.source_url","typeLabel":"string"},"source_type":{"type":"string","description":"Specifies the type of the ad's source. Supported values are \"ad\" or \"post\".","uniqueKey":"oneOf.1.whatsappInboundMessage.referral.source_type","typeLabel":"string"},"source_id":{"type":"string","description":"Specifies the Meta ID for an ad or post.","uniqueKey":"oneOf.1.whatsappInboundMessage.referral.source_id","typeLabel":"string"},"headline":{"type":"string","description":"Specifies the headline used in the ad or post that generated the message.","uniqueKey":"oneOf.1.whatsappInboundMessage.referral.headline","typeLabel":"string"},"body":{"type":"string","description":"The description, or body, from the ad or post that generated the message.","uniqueKey":"oneOf.1.whatsappInboundMessage.referral.body","typeLabel":"string"},"media_type":{"type":"string","description":"Media present in the ad or post the user clicked. Supported values are \"image\" or \"video\".","uniqueKey":"oneOf.1.whatsappInboundMessage.referral.media_type","typeLabel":"string"},"image_url":{"type":"string","description":"**Added if media_type is \"image\".**\n\nContains a URL to the raw image.","uniqueKey":"oneOf.1.whatsappInboundMessage.referral.image_url","typeLabel":"string"},"video_url":{"type":"string","description":"**Added if media_type is \"video\".**\n\nContains a URL to the video.","uniqueKey":"oneOf.1.whatsappInboundMessage.referral.video_url","typeLabel":"string"},"thumbnail_url":{"type":"string","description":"**Added if media_type is \"video\".**\n\nContains a URL to the thumbnail image of the clicked video.","uniqueKey":"oneOf.1.whatsappInboundMessage.referral.thumbnail_url","typeLabel":"string"},"ctwa_clid":{"type":"string","description":"Click ID generated by Meta for ads that click to WhatsApp.","uniqueKey":"oneOf.1.whatsappInboundMessage.referral.ctwa_clid","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappInboundMessage.referral","typeLabel":"object"},"groupId":{"type":"string","description":"WhatsApp group ID. This field is included when the inbound message is sent in a WhatsApp group.","example":"120363345678901234@g.us","uniqueKey":"oneOf.1.whatsappInboundMessage.groupId","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappInboundMessage","typeLabel":"object"},"whatsappMessage":{"description":"Included when `type` is `whatsapp.message.updated`, `whatsapp.smb.message.created`, or when `type` is `whatsapp.smb.history` for an outbound history message. Also included for `whatsapp.echo_message.created` and `whatsapp.echo_message.updated`, where the Agent echo subset applies. It is omitted for a metadata-only history chunk.","type":"object","uniqueKey":"oneOf.1.whatsappMessage","typeLabel":"object"},"whatsappGroup":{"type":"object","description":"Included when `type` is `whatsapp.group.lifecycle_update`, `whatsapp.group.participants_update`, `whatsapp.group.settings_update`, `whatsapp.group.status_update`, or when `type` is `whatsapp.message.updated` for group message status updates.","properties":{"wabaId":{"type":"string","description":"WhatsApp Business Account ID.","example":"123456789012345","uniqueKey":"oneOf.1.whatsappGroup.wabaId","typeLabel":"string"},"displayPhoneNumber":{"type":"string","description":"The display phone number from WhatsApp webhook metadata.","example":"16315551111","uniqueKey":"oneOf.1.whatsappGroup.displayPhoneNumber","typeLabel":"string"},"phoneNumberId":{"type":"string","description":"WhatsApp phone number ID.","example":"1234567890123456","uniqueKey":"oneOf.1.whatsappGroup.phoneNumberId","typeLabel":"string"},"field":{"type":"string","description":"WhatsApp webhook field that produced the group event.","enum":["group_lifecycle_update","group_participants_update","group_settings_update","group_status_update","messages"],"uniqueKey":"oneOf.1.whatsappGroup.field","typeLabel":"enum\u003cstring>"},"type":{"type":"string","description":"Specific WhatsApp group event type.","enum":["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"],"uniqueKey":"oneOf.1.whatsappGroup.type","typeLabel":"enum\u003cstring>"},"requestId":{"type":"string","description":"The request ID returned by an asynchronous group API operation.","example":"REQ_1","uniqueKey":"oneOf.1.whatsappGroup.requestId","typeLabel":"string"},"status":{"type":"string","description":"WhatsApp group webhook status.","enum":["created","failed","deleted","added","removed","left","requested","revoked","updated","suspended","suspend_cleared","sent","delivered","read","expired"],"uniqueKey":"oneOf.1.whatsappGroup.status","typeLabel":"enum\u003cstring>"},"groupId":{"type":"string","description":"WhatsApp group ID.","example":"120363345678901234@g.us","uniqueKey":"oneOf.1.whatsappGroup.groupId","typeLabel":"string"},"messageId":{"type":"string","description":"YCloud group-message ID. Present only when the status event is linked to a saved outbound group message.","example":"wam_group_01","uniqueKey":"oneOf.1.whatsappGroup.messageId","typeLabel":"string"},"inviteLink":{"type":"string","description":"The group invite link.","example":"https://chat.whatsapp.com/AbCdEfGhIjK","uniqueKey":"oneOf.1.whatsappGroup.inviteLink","typeLabel":"string"},"reason":{"type":"string","description":"The reason for a participant, join request, or removal event.","example":"invite_link","uniqueKey":"oneOf.1.whatsappGroup.reason","typeLabel":"string"},"initiatedBy":{"type":"string","description":"Indicates who initiated a participant removal event.","enum":["business","participant"],"example":"business","uniqueKey":"oneOf.1.whatsappGroup.initiatedBy","typeLabel":"enum\u003cstring>"},"joinRequestId":{"type":"string","description":"The join request ID.","example":"join-request-id","uniqueKey":"oneOf.1.whatsappGroup.joinRequestId","typeLabel":"string"},"waId":{"type":"string","description":"WhatsApp user ID for a single participant event.","example":"16315551111","uniqueKey":"oneOf.1.whatsappGroup.waId","typeLabel":"string"},"recipientUserId":{"type":"string","description":"Business-scoped user ID for a single participant event.","example":"US.1234","uniqueKey":"oneOf.1.whatsappGroup.recipientUserId","typeLabel":"string"},"parentRecipientUserId":{"type":"string","description":"Parent business-scoped user ID for a single participant event.","example":"US.parent123","uniqueKey":"oneOf.1.whatsappGroup.parentRecipientUserId","typeLabel":"string"},"customerProfile":{"type":"object","description":"WhatsApp customer profile information.","properties":{"name":{"type":"string","description":"WhatsApp profile name.","example":"John Doe","uniqueKey":"oneOf.1.whatsappGroup.customerProfile.name","typeLabel":"string"},"username":{"type":"string","description":"WhatsApp username.","example":"john_doe","uniqueKey":"oneOf.1.whatsappGroup.customerProfile.username","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappGroup.customerProfile","typeLabel":"object"},"subject":{"type":"string","description":"The group subject.","example":"New Purchase Inquiry","uniqueKey":"oneOf.1.whatsappGroup.subject","typeLabel":"string"},"description":{"type":"string","description":"The group description.","example":"Group for purchase inquiries.","uniqueKey":"oneOf.1.whatsappGroup.description","typeLabel":"string"},"joinApprovalMode":{"type":"string","description":"WhatsApp group join approval mode.\n- `approval_required`: New members must be approved before joining.\n- `auto_approve`: New members can join without approval.","enum":["approval_required","auto_approve"],"example":"auto_approve","uniqueKey":"oneOf.1.whatsappGroup.joinApprovalMode","typeLabel":"enum\u003cstring>"},"addedParticipants":{"type":"array","description":"Participants added to the group.","items":{"type":"object","description":"Participant information included in group webhook payloads.","properties":{"input":{"type":"string","description":"The original participant input.","example":"US.1234","uniqueKey":"oneOf.1.whatsappGroup.addedParticipants.items.[INDEX].input","typeLabel":"string"},"waId":{"type":"string","description":"WhatsApp user ID.","example":"16315551111","uniqueKey":"oneOf.1.whatsappGroup.addedParticipants.items.[INDEX].waId","typeLabel":"string"},"recipientUserId":{"type":"string","description":"Business-scoped user ID.","example":"US.1234","uniqueKey":"oneOf.1.whatsappGroup.addedParticipants.items.[INDEX].recipientUserId","typeLabel":"string"},"parentRecipientUserId":{"type":"string","description":"Parent business-scoped user ID.","example":"US.parent123","uniqueKey":"oneOf.1.whatsappGroup.addedParticipants.items.[INDEX].parentRecipientUserId","typeLabel":"string"},"customerProfile":{"type":"object","description":"WhatsApp customer profile information.","properties":{"name":{"type":"string","description":"WhatsApp profile name.","example":"John Doe","uniqueKey":"oneOf.1.whatsappGroup.addedParticipants.items.[INDEX].customerProfile.name","typeLabel":"string"},"username":{"type":"string","description":"WhatsApp username.","example":"john_doe","uniqueKey":"oneOf.1.whatsappGroup.addedParticipants.items.[INDEX].customerProfile.username","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappGroup.addedParticipants.items.[INDEX].customerProfile","typeLabel":"object"},"errors":{"type":"array","description":"Errors returned by WhatsApp for this participant.","items":{"type":"object","additionalProperties":true,"uniqueKey":"oneOf.1.whatsappGroup.addedParticipants.items.[INDEX].errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.whatsappGroup.addedParticipants.items.[INDEX].errors","typeLabel":"object[]"}},"uniqueKey":"oneOf.1.whatsappGroup.addedParticipants.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.whatsappGroup.addedParticipants","typeLabel":"object[]"},"removedParticipants":{"type":"array","description":"Participants removed from the group.","items":{"type":"object","description":"Participant information included in group webhook payloads.","properties":{"input":{"type":"string","description":"The original participant input.","example":"US.1234","uniqueKey":"oneOf.1.whatsappGroup.removedParticipants.items.[INDEX].input","typeLabel":"string"},"waId":{"type":"string","description":"WhatsApp user ID.","example":"16315551111","uniqueKey":"oneOf.1.whatsappGroup.removedParticipants.items.[INDEX].waId","typeLabel":"string"},"recipientUserId":{"type":"string","description":"Business-scoped user ID.","example":"US.1234","uniqueKey":"oneOf.1.whatsappGroup.removedParticipants.items.[INDEX].recipientUserId","typeLabel":"string"},"parentRecipientUserId":{"type":"string","description":"Parent business-scoped user ID.","example":"US.parent123","uniqueKey":"oneOf.1.whatsappGroup.removedParticipants.items.[INDEX].parentRecipientUserId","typeLabel":"string"},"customerProfile":{"type":"object","description":"WhatsApp customer profile information.","properties":{"name":{"type":"string","description":"WhatsApp profile name.","example":"John Doe","uniqueKey":"oneOf.1.whatsappGroup.removedParticipants.items.[INDEX].customerProfile.name","typeLabel":"string"},"username":{"type":"string","description":"WhatsApp username.","example":"john_doe","uniqueKey":"oneOf.1.whatsappGroup.removedParticipants.items.[INDEX].customerProfile.username","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappGroup.removedParticipants.items.[INDEX].customerProfile","typeLabel":"object"},"errors":{"type":"array","description":"Errors returned by WhatsApp for this participant.","items":{"type":"object","additionalProperties":true,"uniqueKey":"oneOf.1.whatsappGroup.removedParticipants.items.[INDEX].errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.whatsappGroup.removedParticipants.items.[INDEX].errors","typeLabel":"object[]"}},"uniqueKey":"oneOf.1.whatsappGroup.removedParticipants.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.whatsappGroup.removedParticipants","typeLabel":"object[]"},"failedParticipants":{"type":"array","description":"Participants that failed to be added or removed.","items":{"type":"object","description":"Participant information included in group webhook payloads.","properties":{"input":{"type":"string","description":"The original participant input.","example":"US.1234","uniqueKey":"oneOf.1.whatsappGroup.failedParticipants.items.[INDEX].input","typeLabel":"string"},"waId":{"type":"string","description":"WhatsApp user ID.","example":"16315551111","uniqueKey":"oneOf.1.whatsappGroup.failedParticipants.items.[INDEX].waId","typeLabel":"string"},"recipientUserId":{"type":"string","description":"Business-scoped user ID.","example":"US.1234","uniqueKey":"oneOf.1.whatsappGroup.failedParticipants.items.[INDEX].recipientUserId","typeLabel":"string"},"parentRecipientUserId":{"type":"string","description":"Parent business-scoped user ID.","example":"US.parent123","uniqueKey":"oneOf.1.whatsappGroup.failedParticipants.items.[INDEX].parentRecipientUserId","typeLabel":"string"},"customerProfile":{"type":"object","description":"WhatsApp customer profile information.","properties":{"name":{"type":"string","description":"WhatsApp profile name.","example":"John Doe","uniqueKey":"oneOf.1.whatsappGroup.failedParticipants.items.[INDEX].customerProfile.name","typeLabel":"string"},"username":{"type":"string","description":"WhatsApp username.","example":"john_doe","uniqueKey":"oneOf.1.whatsappGroup.failedParticipants.items.[INDEX].customerProfile.username","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappGroup.failedParticipants.items.[INDEX].customerProfile","typeLabel":"object"},"errors":{"type":"array","description":"Errors returned by WhatsApp for this participant.","items":{"type":"object","additionalProperties":true,"uniqueKey":"oneOf.1.whatsappGroup.failedParticipants.items.[INDEX].errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.whatsappGroup.failedParticipants.items.[INDEX].errors","typeLabel":"object[]"}},"uniqueKey":"oneOf.1.whatsappGroup.failedParticipants.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.whatsappGroup.failedParticipants","typeLabel":"object[]"},"settings":{"type":"array","description":"Group setting update details.","items":{"type":"object","description":"Group setting update detail.","properties":{"name":{"type":"string","description":"Setting name.","enum":["profile_picture","group_subject","group_description"],"example":"group_subject","uniqueKey":"oneOf.1.whatsappGroup.settings.items.[INDEX].name","typeLabel":"enum\u003cstring>"},"text":{"type":"string","description":"Text value for subject or description updates.","example":"New Purchase Inquiry","uniqueKey":"oneOf.1.whatsappGroup.settings.items.[INDEX].text","typeLabel":"string"},"updateSuccessful":{"type":"boolean","description":"Whether the setting update succeeded.","example":true,"uniqueKey":"oneOf.1.whatsappGroup.settings.items.[INDEX].updateSuccessful","typeLabel":"boolean"},"mimeType":{"type":"string","description":"MIME type for profile picture updates.","example":"image/jpeg","uniqueKey":"oneOf.1.whatsappGroup.settings.items.[INDEX].mimeType","typeLabel":"string"},"sha256":{"type":"string","description":"SHA-256 hash for profile picture updates.","example":"2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae","uniqueKey":"oneOf.1.whatsappGroup.settings.items.[INDEX].sha256","typeLabel":"string"},"errors":{"type":"array","description":"Errors returned by WhatsApp for this setting.","items":{"type":"object","additionalProperties":true,"uniqueKey":"oneOf.1.whatsappGroup.settings.items.[INDEX].errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.whatsappGroup.settings.items.[INDEX].errors","typeLabel":"object[]"}},"uniqueKey":"oneOf.1.whatsappGroup.settings.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.whatsappGroup.settings","typeLabel":"object[]"},"errors":{"type":"array","description":"Errors returned by WhatsApp.","items":{"type":"object","additionalProperties":true,"uniqueKey":"oneOf.1.whatsappGroup.errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.whatsappGroup.errors","typeLabel":"object[]"},"contacts":{"type":"array","description":"Contacts included in group message status webhooks.","items":{"type":"object","description":"Contact information included in group message status webhooks.","properties":{"customerProfile":{"type":"object","description":"WhatsApp customer profile information.","properties":{"name":{"type":"string","description":"WhatsApp profile name.","example":"John Doe","uniqueKey":"oneOf.1.whatsappGroup.contacts.items.[INDEX].customerProfile.name","typeLabel":"string"},"username":{"type":"string","description":"WhatsApp username.","example":"john_doe","uniqueKey":"oneOf.1.whatsappGroup.contacts.items.[INDEX].customerProfile.username","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappGroup.contacts.items.[INDEX].customerProfile","typeLabel":"object"},"waId":{"type":"string","description":"WhatsApp user ID.","example":"16315551111","uniqueKey":"oneOf.1.whatsappGroup.contacts.items.[INDEX].waId","typeLabel":"string"},"recipientUserId":{"type":"string","description":"Business-scoped user ID.","example":"US.1234","uniqueKey":"oneOf.1.whatsappGroup.contacts.items.[INDEX].recipientUserId","typeLabel":"string"},"parentRecipientUserId":{"type":"string","description":"Parent business-scoped user ID.","example":"US.parent123","uniqueKey":"oneOf.1.whatsappGroup.contacts.items.[INDEX].parentRecipientUserId","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappGroup.contacts.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.whatsappGroup.contacts","typeLabel":"object[]"},"statuses":{"type":"array","description":"Group message status details.","items":{"type":"object","description":"Group message status detail.","properties":{"id":{"type":"string","description":"WhatsApp message ID.","example":"wamid.1","uniqueKey":"oneOf.1.whatsappGroup.statuses.items.[INDEX].id","typeLabel":"string"},"status":{"type":"string","description":"Message status.","enum":["sent","delivered","read","failed","expired"],"example":"delivered","uniqueKey":"oneOf.1.whatsappGroup.statuses.items.[INDEX].status","typeLabel":"enum\u003cstring>"},"timestamp":{"type":"integer","format":"int64","description":"Unix timestamp indicating when the message status was updated.","example":1739321024,"uniqueKey":"oneOf.1.whatsappGroup.statuses.items.[INDEX].timestamp","typeLabel":"integer\u003cint64>"},"recipientId":{"type":"string","description":"Recipient group ID.","example":"120363345678901234@g.us","uniqueKey":"oneOf.1.whatsappGroup.statuses.items.[INDEX].recipientId","typeLabel":"string"},"recipientType":{"type":"string","description":"Recipient type.","enum":["group"],"example":"group","uniqueKey":"oneOf.1.whatsappGroup.statuses.items.[INDEX].recipientType","typeLabel":"enum\u003cstring>"},"recipientParticipantId":{"type":"string","description":"WhatsApp user ID of the recipient participant.","example":"16315551111","uniqueKey":"oneOf.1.whatsappGroup.statuses.items.[INDEX].recipientParticipantId","typeLabel":"string"},"recipientUserId":{"type":"string","description":"Business-scoped user ID of the recipient participant.","example":"US.1234","uniqueKey":"oneOf.1.whatsappGroup.statuses.items.[INDEX].recipientUserId","typeLabel":"string"},"parentRecipientUserId":{"type":"string","description":"Parent business-scoped user ID of the recipient participant.","example":"US.parent123","uniqueKey":"oneOf.1.whatsappGroup.statuses.items.[INDEX].parentRecipientUserId","typeLabel":"string"},"conversation":{"type":"object","description":"WhatsApp conversation object included in group message status webhooks.","properties":{"id":{"type":"string","description":"Conversation ID.","example":"conversation-id","uniqueKey":"oneOf.1.whatsappGroup.statuses.items.[INDEX].conversation.id","typeLabel":"string"},"expirationTimestamp":{"type":"integer","format":"int64","description":"Unix timestamp indicating when the conversation expires.","example":1739321024,"uniqueKey":"oneOf.1.whatsappGroup.statuses.items.[INDEX].conversation.expirationTimestamp","typeLabel":"integer\u003cint64>"},"origin":{"type":"object","properties":{"type":{"type":"string","description":"Conversation origin type.","example":"service","uniqueKey":"oneOf.1.whatsappGroup.statuses.items.[INDEX].conversation.origin.type","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappGroup.statuses.items.[INDEX].conversation.origin","typeLabel":"object"}},"uniqueKey":"oneOf.1.whatsappGroup.statuses.items.[INDEX].conversation","typeLabel":"object"},"pricing":{"type":"object","description":"Pricing information included in group message status webhooks.","properties":{"billable":{"type":"boolean","description":"Whether the message is billable.","example":true,"uniqueKey":"oneOf.1.whatsappGroup.statuses.items.[INDEX].pricing.billable","typeLabel":"boolean"},"pricingModel":{"type":"string","description":"Pricing model.","example":"PMP","uniqueKey":"oneOf.1.whatsappGroup.statuses.items.[INDEX].pricing.pricingModel","typeLabel":"string"},"type":{"type":"string","description":"Pricing type.","example":"regular","uniqueKey":"oneOf.1.whatsappGroup.statuses.items.[INDEX].pricing.type","typeLabel":"string"},"category":{"type":"string","description":"Raw group pricing category reported by Meta. YCloud does not expose the internal MM Lite mapping in this webhook field.","enum":["group_marketing","group_utility","group_service"],"example":"group_service","uniqueKey":"oneOf.1.whatsappGroup.statuses.items.[INDEX].pricing.category","typeLabel":"enum\u003cstring>"}},"uniqueKey":"oneOf.1.whatsappGroup.statuses.items.[INDEX].pricing","typeLabel":"object"},"errors":{"type":"array","description":"Errors returned by WhatsApp.","items":{"type":"object","additionalProperties":true,"uniqueKey":"oneOf.1.whatsappGroup.statuses.items.[INDEX].errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.whatsappGroup.statuses.items.[INDEX].errors","typeLabel":"object[]"}},"uniqueKey":"oneOf.1.whatsappGroup.statuses.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.whatsappGroup.statuses","typeLabel":"object[]"},"webhookTime":{"type":"string","format":"date-time","description":"The time at which WhatsApp triggered this webhook.","example":"2026-05-13T00:00:00.000Z","uniqueKey":"oneOf.1.whatsappGroup.webhookTime","typeLabel":"string\u003cdate-time>"},"dedupeKey":{"type":"string","description":"Idempotency key for deduplicating group webhook events.","example":"WABA_ID|REQ_1|group_lifecycle_update|group_create|created","uniqueKey":"oneOf.1.whatsappGroup.dedupeKey","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappGroup","typeLabel":"object"},"whatsappPhoneNumber":{"type":"object","description":"Included when `type` is `whatsapp.phone_number.deleted`, `whatsapp.phone_number.name_updated`, `whatsapp.phone_number.quality_updated`, or `whatsapp.phone_number.business_username_updated`.","properties":{"id":{"type":"string","description":"Phone number ID.","example":"1234567890123456","uniqueKey":"oneOf.1.whatsappPhoneNumber.id","typeLabel":"string"},"phoneNumber":{"type":"string","description":"Phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","uniqueKey":"oneOf.1.whatsappPhoneNumber.phoneNumber","typeLabel":"string"},"displayPhoneNumber":{"type":"string","description":"Display phone number.","example":"+1 631-555-1111","uniqueKey":"oneOf.1.whatsappPhoneNumber.displayPhoneNumber","typeLabel":"string"},"wabaId":{"type":"string","description":"WhatsApp Business Account ID.","example":"whatsapp-business-account-id","uniqueKey":"oneOf.1.whatsappPhoneNumber.wabaId","typeLabel":"string"},"businessUsername":{"type":"string","description":"Active Business Username for this phone number. The value is a plain username without `@`.","example":"acme.support","uniqueKey":"oneOf.1.whatsappPhoneNumber.businessUsername","typeLabel":"string"},"businessUsernameStatus":{"type":"string","description":"Business Username state for a WhatsApp business phone number.\n- `not_set`: No active or pending Business Username exists.\n- `active`: A Business Username is active.\n- `reserved`: A requested Business Username is reserved by Meta and may still be under review.\n- `pending_review`: Legacy compatibility value for an under-review request. New writes use `reserved`.\nIf an active username exists while a new request is reserved or under review, `businessUsernameStatus` is `reserved`, `businessUsername` contains the still-active username, and `requestedBusinessUsername` contains the requested username.","enum":["not_set","active","pending_review","reserved"],"uniqueKey":"oneOf.1.whatsappPhoneNumber.businessUsernameStatus","typeLabel":"enum\u003cstring>"},"requestedBusinessUsername":{"type":"string","description":"Last requested Business Username that is still under review. This value can coexist with an active `businessUsername` while the new request is pending.","example":"acme.help","uniqueKey":"oneOf.1.whatsappPhoneNumber.requestedBusinessUsername","typeLabel":"string"},"businessUsernameUpdatedAt":{"type":"string","format":"date-time","description":"The time when the Business Username state was last updated.","example":"2026-05-26T12:00:00.000Z","uniqueKey":"oneOf.1.whatsappPhoneNumber.businessUsernameUpdatedAt","typeLabel":"string\u003cdate-time>"},"qualityRating":{"type":"string","description":"Quality rating. One of `GREEN`, `YELLOW`, `RED`, or `UNKNOWN`. See also [Phone Number Quality Rating](https://www.facebook.com/business/help/896873687365001).\n- `GREEN`: High quality.\n- `YELLOW`: Medium quality.\n- `RED`: Low quality.\n- `UNKNOWN`: Unknown quality.","enum":["GREEN","YELLOW","RED","UNKNOWN"],"uniqueKey":"oneOf.1.whatsappPhoneNumber.qualityRating","typeLabel":"enum\u003cstring>"},"messagingLimit":{"type":"string","description":"Messaging limits determine the maximum number of business-initiated conversations each phone number can start in a rolling 24-hour period. See also [Messaging Limits](https://developers.facebook.com/docs/whatsapp/messaging-limits).\n- `TIER_NOT_SET`: Unknown limit.\n- `TIER_50`: 50 business-initiated conversations in a rolling 24-hour period.\n- `TIER_250`: 250 business-initiated conversations in a rolling 24-hour period.\n- `TIER_1K`: 1K business-initiated conversations with unique customers in a rolling 24-hour period.\n- `TIER_10K`: 10K business-initiated conversations with unique customers in a rolling 24-hour period.\n- `TIER_100K`: 100K business-initiated conversations with unique customers in a rolling 24-hour period.\n- `TIER_UNLIMITED`: An unlimited number of business-initiated conversations in a rolling 24-hour period.","example":"TIER_1K","uniqueKey":"oneOf.1.whatsappPhoneNumber.messagingLimit","typeLabel":"string"},"whatsappBusinessManagerMessagingLimit":{"type":"string","description":"The owning business portfolio's messaging limit. Starting October 7, 2025, messaging limits will instead be calculated and set on a business portfolio basis, and will be shared by all business phone numbers within each portfolio. See also [phone_number_quality_update webhook reference](https://developers.facebook.com/docs/whatsapp/cloud-api/webhooks/reference/phone_number_quality_update).\n- `TIER_NOT_SET`: The business phone number has not been used to send a message yet.\n- `TIER_50`: Messaging limit of 50 business-initiated conversations in a rolling 24-hour period.\n- `TIER_250`: Messaging limit of 250 business-initiated conversations in a rolling 24-hour period.\n- `TIER_2K`: Messaging limit of 2,000 business-initiated conversations in a rolling 24-hour period.\n- `TIER_10K`: Messaging limit of 10,000 business-initiated conversations in a rolling 24-hour period.\n- `TIER_100K`: Messaging limit of 100,000 business-initiated conversations in a rolling 24-hour period.\n- `TIER_UNLIMITED`: The business phone number has higher throughput with unlimited business-initiated conversations.","uniqueKey":"oneOf.1.whatsappPhoneNumber.whatsappBusinessManagerMessagingLimit","typeLabel":"string"},"verifiedName":{"type":"string","description":"Verified name.","example":"John’s Cake Shop","uniqueKey":"oneOf.1.whatsappPhoneNumber.verifiedName","typeLabel":"string"},"codeVerificationStatus":{"type":"string","description":"To see if a phone number has been verified via OTP (one-time password).","enum":["VERIFIED","NOT_VERIFIED","EXPIRED"],"uniqueKey":"oneOf.1.whatsappPhoneNumber.codeVerificationStatus","typeLabel":"enum\u003cstring>"},"isOfficialBusinessAccount":{"type":"boolean","description":"Whether this phone number is an official business account or not.\nAn official business account has a green checkmark badge in its profile and chat thread headers. See [Official Business Account](https://developers.facebook.com/docs/whatsapp/overview/business-accounts#official-business-account) for more information.","uniqueKey":"oneOf.1.whatsappPhoneNumber.isOfficialBusinessAccount","typeLabel":"boolean"},"status":{"type":"string","description":"The status of a WhatsApp business phone number.\n- `PENDING`: Pending. Phone number is newly added. Verify and register this phone number so it can be connected to your account.\n- `UNVERIFIED`: Unverified. Verify this phone number to start sending messages.\n- `MANUAL_REVIEW`: Being reviewed. Phone number is currently being reviewed for connection to your account.\n- `DISCONNECTED`: Offline. Phone number is currently not reachable by WhatsApp servers.\n- `CONNECTED`: Connected. Phone number is associated with this account and working properly.\n- `FLAGGED`: Flagged. This phone number has been flagged due to low quality messages.\n- `WARNED`: Warned. A warning has been issued for this number, potentially due to spam reports.\n- `RATE_LIMITED`: Rate limited. The number of messages you can send from this phone number may be restricted.\n- `BANNED`: Banned. Phone number cannot be used with a WhatsApp account.\n- `RESTRICTED`: Restricted. This phone number has reached its 24-hour messaging limit and can no longer send messages to customers. Please wait until the messaging limit is reset to send messages.\n- `BLOCKED`: Message limit reached. The limit has been reached for this 24-hour period.\n- `MIGRATED`: Transferred. This phone number has been transferred to another WhatsApp Business account.\n- `UNKNOWN`: Unavailable. The status of this phone number can't be determined right now.","enum":["PENDING","UNVERIFIED","MANUAL_REVIEW","DISCONNECTED","CONNECTED","FLAGGED","WARNED","RATE_LIMITED","BANNED","RESTRICTED","BLOCKED","MIGRATED","UNKNOWN"],"uniqueKey":"oneOf.1.whatsappPhoneNumber.status","typeLabel":"enum\u003cstring>"},"nameStatus":{"type":"string","description":"The review status of the current display name request. See also [Get Display Name Status](https://developers.facebook.com/docs/whatsapp/business-management-api/manage-phone-numbers#get-display-name-status--beta-).\n- `APPROVED`: The name has been approved. You can download your certificate now.\n- `AVAILABLE_WITHOUT_REVIEW`: The certificate for the phone is available and display name is ready to use without review.\n- `DECLINED`: The name has not been approved. You cannot download your certificate.\n- `EXPIRED`: Your certificate has expire and can no longer be downloaded.\n- `PENDING_REVIEW`: Your name request is under review. You cannot download your certificate.\n- `NONE`: No certificate is available.","enum":["APPROVED","AVAILABLE_WITHOUT_REVIEW","DECLINED","EXPIRED","PENDING_REVIEW","NONE"],"uniqueKey":"oneOf.1.whatsappPhoneNumber.nameStatus","typeLabel":"enum\u003cstring>"},"newNameStatus":{"type":"string","description":"The review status of the new display name request.\nSee also [Get Display Name Status](https://developers.facebook.com/docs/whatsapp/business-management-api/manage-phone-numbers#get-display-name-status--beta-).","enum":["APPROVED","AVAILABLE_WITHOUT_REVIEW","DECLINED","EXPIRED","PENDING_REVIEW","NONE"],"uniqueKey":"oneOf.1.whatsappPhoneNumber.newNameStatus","typeLabel":"enum\u003cstring>"},"decision":{"type":"string","description":"Review decision made on this phone number. One of `APPROVED` or `REJECTED`.","enum":["APPROVED","REJECTED"],"uniqueKey":"oneOf.1.whatsappPhoneNumber.decision","typeLabel":"enum\u003cstring>"},"requestedVerifiedName":{"type":"string","description":"Last requested verified name.","uniqueKey":"oneOf.1.whatsappPhoneNumber.requestedVerifiedName","typeLabel":"string"},"rejectionReason":{"type":"string","description":"Rejection reason.","uniqueKey":"oneOf.1.whatsappPhoneNumber.rejectionReason","typeLabel":"string"},"qualityUpdateEvent":{"type":"string","description":"Indicates the update event type of WhatsApp phone number quality when a notification is sent to you.\n- `ONBOARDING`: Typically when the messaging limit changes from `TIER_NOT_SET` to another tier.\n- `UPGRADE`: Messaging limit tier upgraded.\n- `DOWNGRADE`: Messaging limit tier downgraded.\n- `FLAGGED`: Flagged status occurs when the quality rating reaches a low state. If the message quality improves to a high or medium state and maintains this for 7 days, your status will return to Connected. If the quality rating doesn't improve, your status will still return to Connected, but you'll be placed in a lower messaging limit tier. Learn more on [Phone Number Quality Rating](https://www.facebook.com/business/help/896873687365001) docs.\n- `UNFLAGGED`: Phone number status changes from `FLAGGED` to `CONNECTED`.","enum":["ONBOARDING","UPGRADE","DOWNGRADE","FLAGGED","UNFLAGGED"],"uniqueKey":"oneOf.1.whatsappPhoneNumber.qualityUpdateEvent","typeLabel":"enum\u003cstring>"},"updateEvent":{"type":"string","description":"Account update event that triggered this phone number status change.","enum":["ACCOUNT_RECONNECTED","ACCOUNT_OFFBOARDED"],"example":"ACCOUNT_OFFBOARDED","uniqueKey":"oneOf.1.whatsappPhoneNumber.updateEvent","typeLabel":"enum\u003cstring>"},"throughputLevel":{"type":"string","description":"Current Meta throughput level of the WhatsApp phone number.\n- `STANDARD`: Default Cloud API throughput level, currently up to 80 messages per second.\n- `HIGH`: Upgraded Cloud API throughput level, currently up to 1,000 messages per second, subject to Meta's current Cloud API throughput rules.\n- `NOT_APPLICABLE`: Throughput level is not applicable to this phone number.","enum":["STANDARD","HIGH","NOT_APPLICABLE"],"example":"HIGH","uniqueKey":"oneOf.1.whatsappPhoneNumber.throughputLevel","typeLabel":"enum\u003cstring>"}},"uniqueKey":"oneOf.1.whatsappPhoneNumber","typeLabel":"object"},"whatsappPayment":{"type":"object","description":"Included when `type` is `whatsapp.payment.updated`.","required":["wabaId","referenceId","status"],"properties":{"wabaId":{"type":"string","description":"WhatsApp Business Account ID.","isRequired":true,"uniqueKey":"oneOf.1.whatsappPayment.wabaId","typeLabel":"string"},"referenceId":{"type":"string","description":"Unique identifier for the payment provided by the business.\nIt is case sensitive and cannot be an empty string and can only contain English letters, numbers, underscores, dashes, or dots, and should not exceed 35 characters.","isRequired":true,"uniqueKey":"oneOf.1.whatsappPayment.referenceId","typeLabel":"string"},"status":{"type":"string","description":"Status of this payment.\n- `captured`: Indicates the payment is successfully completed.\n- `pending`: Indicates the user attempted but yet to receive success transactions signal.","enum":["captured","pending"],"isRequired":true,"uniqueKey":"oneOf.1.whatsappPayment.status","typeLabel":"enum\u003cstring>"},"transactions":{"type":"array","description":"Contains the latest transaction attempt for this payment.","items":{"type":"object","description":"Represents a transaction attempt for a payment.","required":["id","type","status","createdTimestamp","updatedTimestamp","amount","currency"],"properties":{"id":{"type":"string","description":"Transaction ID.","isRequired":true,"uniqueKey":"oneOf.1.whatsappPayment.transactions.items.[INDEX].id","typeLabel":"string"},"type":{"type":"string","description":"The payment type for this transactions. One of `billdesk`, `razorpay`, `payu`, or `zaakpay`.","enum":["billdesk","razorpay","payu","zaakpay"],"isRequired":true,"uniqueKey":"oneOf.1.whatsappPayment.transactions.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"status":{"type":"string","description":"The status of the transaction. One of `pending`, `success` or `failed`.","enum":["pending","success","failed"],"isRequired":true,"uniqueKey":"oneOf.1.whatsappPayment.transactions.items.[INDEX].status","typeLabel":"enum\u003cstring>"},"createdTimestamp":{"type":"integer","format":"int64","description":"Time when transaction was created in epoch milliseconds.","isRequired":true,"uniqueKey":"oneOf.1.whatsappPayment.transactions.items.[INDEX].createdTimestamp","typeLabel":"integer\u003cint64>"},"updatedTimestamp":{"type":"integer","format":"int64","description":"Time when transaction was last updated in epoch milliseconds.","isRequired":true,"uniqueKey":"oneOf.1.whatsappPayment.transactions.items.[INDEX].updatedTimestamp","typeLabel":"integer\u003cint64>"},"amount":{"type":"object","description":"Total amount that user has paid.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.1.whatsappPayment.transactions.items.[INDEX].amount.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.1.whatsappPayment.transactions.items.[INDEX].amount.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.1.whatsappPayment.transactions.items.[INDEX].amount.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.1.whatsappPayment.transactions.items.[INDEX].amount.discount_program_name","typeLabel":"string"}},"isRequired":true,"uniqueKey":"oneOf.1.whatsappPayment.transactions.items.[INDEX].amount","typeLabel":"object"},"currency":{"type":"string","description":"The currency for this payment.\nCurrently the only supported value is `INR`.","isRequired":true,"uniqueKey":"oneOf.1.whatsappPayment.transactions.items.[INDEX].currency","typeLabel":"string"},"methodType":{"type":"string","description":"Describes the type of payment method used by consumer to pay for the order. Can be one of `upi`, `card`, `wallet`, or `netbanking`.\nThe payment method information might not be available for failed payments.","example":"upi","uniqueKey":"oneOf.1.whatsappPayment.transactions.items.[INDEX].methodType","typeLabel":"string"},"error":{"type":"object","description":"The payment error details might not be available for all payments attempts.","required":["code","reason"],"properties":{"code":{"type":"string","description":"Describes the payment failure reason that generated by payment gateway and Meta transmits this to partners.","isRequired":true,"uniqueKey":"oneOf.1.whatsappPayment.transactions.items.[INDEX].error.code","typeLabel":"string"},"reason":{"type":"string","description":"Describes the payment failure reason in plain text that is generated by payment gateway and Meta transmits this to partners.","isRequired":true,"uniqueKey":"oneOf.1.whatsappPayment.transactions.items.[INDEX].error.reason","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappPayment.transactions.items.[INDEX].error","typeLabel":"object"}},"uniqueKey":"oneOf.1.whatsappPayment.transactions.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.whatsappPayment.transactions","typeLabel":"object[]"}},"uniqueKey":"oneOf.1.whatsappPayment","typeLabel":"object"},"whatsappTemplate":{"type":"object","description":"Included when `type` is `whatsapp.template.reviewed`, `whatsapp.template.quality_updated`, `whatsapp.template.category_updated`, or `whatsapp.template.correct_category_detection`.","required":["wabaId","name","language"],"properties":{"wabaId":{"type":"string","description":"WhatsApp Business Account ID.","example":"whatsapp-business-account-id","isRequired":true,"uniqueKey":"oneOf.1.whatsappTemplate.wabaId","typeLabel":"string"},"name":{"type":"string","description":"Name of the template.","maxLength":512,"pattern":"[a-z0-9]{1,512}","isRequired":true,"uniqueKey":"oneOf.1.whatsappTemplate.name","typeLabel":"string"},"language":{"type":"string","description":"Language code of the template. See [Supported Languages](https://developers.facebook.com/documentation/business-messaging/whatsapp/templates/supported-languages) for all codes.","example":"en_US","isRequired":true,"uniqueKey":"oneOf.1.whatsappTemplate.language","typeLabel":"string"},"officialTemplateId":{"type":"string","description":"Official template ID assigned by WhatsApp. This ID is used to identify the template in WhatsApp's system.","example":"official-template-id","uniqueKey":"oneOf.1.whatsappTemplate.officialTemplateId","typeLabel":"string"},"category":{"type":"string","description":"Category of WhatsApp templates.\n- `AUTHENTICATION`: Enable businesses to authenticate users with one-time passcodes, potentially at multiple steps in the login process (e.g., account verification, account recovery, integrity challenges).\n- `MARKETING`: Include promotions or offers, informational updates, or invitations for customers to respond / take action. Any conversation that does not qualify as utility or authentication is a marketing conversation.\n- `UTILITY`: Facilitate a specific, agreed-upon request or transaction or update to a customer about an ongoing transaction, including post-purchase notifications and recurring billing statements.","enum":["AUTHENTICATION","MARKETING","UTILITY"],"uniqueKey":"oneOf.1.whatsappTemplate.category","typeLabel":"enum\u003cstring>"},"subCategory":{"type":"string","description":"Subcategory of WhatsApp templates.\n- ORDER_STATUS: Order status template is categorized as `UTILITY` template and apart from name and language of choice, it has general template components such as `BODY`, `FOOTER` and additionally subcategory as `ORDER_STATUS`.","enum":["ORDER_STATUS"],"uniqueKey":"oneOf.1.whatsappTemplate.subCategory","typeLabel":"enum\u003cstring>"},"previousCategory":{"type":"string","description":"This field indicates the template's previous category (or `null`, for newly created templates after April 1, 2023). Compare this value to the template's `category` field value, which indicates the template's current category.","uniqueKey":"oneOf.1.whatsappTemplate.previousCategory","typeLabel":"string"},"messageSendTtlSeconds":{"type":"integer","format":"int32","description":"If we are unable to deliver a message for an amount of time that exceeds its time-to-live, we will stop retrying and drop the message.\nBy default, messages that use an authentication template have a default TTL of **10 minutes**, and messages that use a utility or marketing template have a default TTL of **30 days**.\nSet its value between `30` and `900` seconds (i.e., 30 seconds to 15 minutes) for authentication templates, or `30` and `43200` seconds (i.e., 30 seconds to 12 hours) for utility templates, or `43200` and `2592000` seconds (i.e., 12 hours to 30 days) for marketing templates. Alternatively, you can set this value to `-1`, which will set a custom TTL of 30 days for either type of template.\nWe encourage you to set a time-to-live for all of your authentication templates, preferably equal to or less than your code expiration time, to ensure your customers only get a message when a code is still usable.\nAuthentication templates created before October 23, 2024, have a default TTL of 30 days.","example":600,"uniqueKey":"oneOf.1.whatsappTemplate.messageSendTtlSeconds","typeLabel":"integer\u003cint32>"},"components":{"type":"array","description":"Template components. A template consists of `HEADER`, `BODY`, `FOOTER`, and `BUTTONS` components. `BODY` component is required, the other types are optional.","minItems":1,"items":{"type":"object","properties":{"type":{"type":"string","description":"**Required.** Template component type.\n- `BODY`: Body components are text-only components and are required by all templates. Templates are limited to one body component.\n- `HEADER`: Headers are optional components that appear at the top of template messages. Headers support text, media (images, gif, videos, documents). Templates are limited to one header component.\n- `FOOTER`: Footers are optional text-only components that appear immediately after the body component. Templates are limited to one footer component.\n- `BUTTONS`: Buttons are optional interactive components that perform specific actions when tapped.\n- `LIMITED_TIME_OFFER`: Use for limited-time offer templates. The delivered message can display an offer expiration details section with a heading, an optional expiration timer, and the offer code itself.\n- `CAROUSEL`: Carousel templates allow you to send a single text message (1), accompanied by a set of up to 10 carousel cards (2) in a horizontally scrollable view.","enum":["BODY","HEADER","FOOTER","BUTTONS","LIMITED_TIME_OFFER","CAROUSEL"],"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"format":{"type":"string","description":"**Required for type `HEADER`.**","enum":["TEXT","IMAGE","GIF","VIDEO","DOCUMENT","LOCATION"],"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].format","typeLabel":"enum\u003cstring>"},"text":{"type":"string","description":"For body text (type = `BODY`), maximum 1024 characters.\nFor header text (type = `HEADER`, format = `TEXT`), maximum 60 characters.\nFor footer text (type = `FOOTER`), maximum 60 characters.\nFor card body text (`CAROUSEL` card component type = `BODY`), maximum 160 characters.","maxLength":1024,"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].text","typeLabel":"string"},"buttons":{"type":"array","description":"**Required for type `BUTTONS`.**\nButtons are optional interactive components that perform specific actions when tapped. Templates can have a mixture of up to 10 button components total, although there are limits to individual buttons of the same type as well as combination limits.\nIf a template has more than three buttons, two buttons will appear in the delivered message and the remaining buttons will be replaced with a **See all options** button. Tapping the **See all options** button reveals the remaining buttons.","maxItems":10,"items":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Button type.\n- `PHONE_NUMBER`: Phone number buttons call the specified business phone number when tapped by the app user. Templates are limited to one phone number button.\n- `URL`: URL buttons load the specified URL in the device's default web browser when tapped by the app user. Templates are limited to two URL buttons.\n- `QUICK_REPLY`: Quick reply buttons are custom text-only buttons that immediately message you with the specified text string when tapped by the app user. Templates are limited to 10 quick reply buttons. If using quick reply buttons with other buttons, buttons must be organized into two groups: quick reply buttons and non-quick reply buttons.\n- `COPY_CODE`: Copy code buttons copy a text string (defined when the template is sent in a template message) to the device's clipboard when tapped by the app user. Templates are limited to one copy code button.\n- `OTP`: One-time password (OTP) buttons are a special type of URL button component used with authentication templates.\n- `CATALOG`: When a customer taps the **View catalog** button in a catalog template message, your product catalog appears within WhatsApp.\n- `MPM`: Customers can browse products and sections by tapping the **View items** button in a multi-product template message.\n- `FLOW`: Use this type to specify the [Flow](https://developers.facebook.com/docs/whatsapp/flows) to be sent with the template message.\n- `ORDER_DETAILS`: Provides a order details button with `Review and Pay` text.\n- `VOICE_CALL`: Triggers a WhatsApp call, when clicked by a WhatsApp customer.","enum":["PHONE_NUMBER","URL","QUICK_REPLY","COPY_CODE","OTP","CATALOG","MPM","FLOW","ORDER_DETAILS","VOICE_CALL"],"isRequired":true,"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"text":{"type":"string","description":"**Required for button type `PHONE_NUMBER` or `URL`.** Button text.\nFor `CODE_CODE` buttons, the text is a pre-set value and cannot be customized.\nFor `OTP` buttons, if omitted, the text will default to a pre-set value localized to the template's language. For example, `Copy Code` for English (US). If your template is using a one-tap autofill button and you supply this value, the authentication template message will display a copy code button with this text if we are unable to validate your [handshake](https://developers.facebook.com/docs/whatsapp/business-management-api/authentication-templates/autofill-button-authentication-templates#handshake). Maximum 25 characters.","maxLength":25,"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].text","typeLabel":"string"},"url":{"type":"string","description":"**Required for button type `URL`.** URL of website.\nThere can be at most 1 variable at the end of the URL. Example: `https://www.luckyshrub.com/shop?promo={{1}}`.\n2000 characters maximum.","maxLength":2000,"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].url","typeLabel":"string"},"phone_number":{"type":"string","description":"**Required for button type `PHONE_NUMBER`.**\nAlphanumeric string. Business phone number to be (display phone number) called when the user taps the button.\n20 characters maximum.","maxLength":20,"example":15550051310,"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].phone_number","typeLabel":"string"},"otp_type":{"type":"string","description":"**Required for button type `OTP`.**\nIndicates button OTP type.\nSet to `COPY_CODE` if you want the template to use a copy code button, `ONE_TAP` to have it use a one-tap autofill button, or `ZERO_TAP` to have no button at all.","enum":["COPY_CODE","ONE_TAP","ZERO_TAP"],"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].otp_type","typeLabel":"enum\u003cstring>"},"autofill_text":{"type":"string","description":"**One-tap and zero-tap buttons only.**\nOne-tap button text.\nMaximum 25 characters.","maxLength":25,"example":"Autofill","uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].autofill_text","typeLabel":"string"},"package_name":{"type":"string","description":"**One-tap and zero-tap buttons only.**\nYour Android app's package name.","example":"com.example.myapplication","uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].package_name","typeLabel":"string"},"signature_hash":{"type":"string","description":"**One-tap and zero-tap buttons only.**\nYour app signing key hash. See [App Signing Key Hash](https://developers.facebook.com/docs/whatsapp/business-management-api/authentication-templates/zero-tap-authentication-templates#app-signing-key-hash).","example":"K8a%2FAINcGX7","uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].signature_hash","typeLabel":"string"},"zero_tap_terms_accepted":{"type":"boolean","description":"**Zero-tap buttons only.**\nSet to `true` to indicate that you understand that your use of zero-tap authentication is subject to the WhatsApp Business Terms of Service, and that it's your responsibility to ensure your customers expect that the code will be automatically filled in on their behalf when they choose to receive the zero-tap code through WhatsApp.\nIf set to `false`, the template will not be created as you need to accept zero-tap terms before creating zero-tap enabled message templates.","uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].zero_tap_terms_accepted","typeLabel":"boolean"},"example":{"type":"array","description":"Sample full URL for a `URL` button with a variable.","items":{"type":"string","uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].example.items.[INDEX]","typeLabel":"string"},"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].example","typeLabel":"string[]"},"flow_id":{"type":"string","description":"**Conditionally required for button type `FLOW`.**\nThe unique ID of the Flow. Cannot be used if `flow_name` or `flow_json` parameters are provided. Only one of these parameters is allowed.","example":"1","uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].flow_id","typeLabel":"string"},"flow_name":{"type":"string","description":"**Conditionally required for button type `FLOW`.**\nThe name of the Flow. Cannot be used if `flow_id` or `flow_json` parameters are provided. Only one of these parameters is allowed. The Flow ID is stored in the message template, not the name, so changing the Flow name will not affect existing message templates.","uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].flow_name","typeLabel":"string"},"flow_json":{"type":"string","description":"**Conditionally required for button type `FLOW`.**\nThe Flow JSON encoded as string with escaping. The Flow JSON specifies the content of the Flow. Cannot be used if `flow_id` or `flow_name` parameters are provided. Only one of these parameters is allowed.","uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].flow_json","typeLabel":"string"},"flow_action":{"type":"string","description":"**Use for button type `FLOW`.**\nEither `navigate` or `data_exchange`. Defaults to `navigate`.","example":"navigate","uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].flow_action","typeLabel":"string"},"navigate_screen":{"type":"string","description":"**Required if `flow_action` is `navigate`.**\nThe unique ID of the Screen in the Flow.","example":"WELCOME_SCREEN","uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].navigate_screen","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].buttons","typeLabel":"object[]"},"add_security_recommendation":{"type":"boolean","description":"**Optional. Only applicable in the `BODY` component of an AUTHENTICATION template.**\nSet to `true` if you want the template to include the string, *For your security, do not share this code.* Set to `false` to exclude the string.","uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].add_security_recommendation","typeLabel":"boolean"},"code_expiration_minutes":{"type":"integer","format":"int32","description":"**Optional. Only applicable in the `FOOTER` component of an AUTHENTICATION template.**\nIndicates number of minutes the password or code is valid.\nIf omitted, the code expiration warning will not be displayed in the delivered message.\nMinimum 1, maximum 90.","maximum":90,"minimum":1,"example":5,"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].code_expiration_minutes","typeLabel":"integer\u003cint32>"},"limited_time_offer":{"type":"object","description":"Use for `LIMITED_TIME_OFFER` components.","properties":{"text":{"type":"string","description":"**Required.**\nOffer details text.\nMaximum 16 characters.","maxLength":16,"example":"Expiring offer!","uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].limited_time_offer.text","typeLabel":"string"},"has_expiration":{"type":"boolean","description":"**Optional.**\nSet to `true` to have the [offer expiration details](https://developers.facebook.com/docs/whatsapp/business-management-api/message-templates/limited-time-offer-templates#offer-expiration-details) appear in the delivered message.\nIf set to `true`, the copy code button component must be included in the `buttons` array, and must appear first in the array.\nIf set to `false`, offer expiration details will not appear in the delivered message and the copy code button component is optional. If including the copy code button, it must appear first in the `buttons` array.","uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].limited_time_offer.has_expiration","typeLabel":"boolean"}},"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].limited_time_offer","typeLabel":"object"},"example":{"type":"object","description":"**Required** when:\n- `type` is `HEADER`, and `format` is one of `IMAGE`, `GIF`, `VIDEO`, or `DOCUMENT`. Provide a sample media URL in `header_url`.\n- `type` is `HEADER`, `format` is `TEXT`, and a variable is used in `text`. Provide a sample value for that variable in `header_text`. There can be at most 1 variable in `HEADER` text.\n- `type` is `BODY`, and variables are used in `text`. Provide sample values for those variables in `body_text`.","properties":{"body_text":{"type":"array","description":"Sample values for variables in `text` of a `BODY` component.","items":{"type":"array","items":{"type":"string","uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].example.body_text.items.[INDEX].items.[INDEX]","typeLabel":"string"},"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].example.body_text.items.[INDEX]","typeLabel":"string[]"},"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].example.body_text","typeLabel":"string[][]"},"header_text":{"type":"array","description":"Sample value for the variable in `text` of a `HEADER` component.","items":{"type":"string","uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].example.header_text.items.[INDEX]","typeLabel":"string"},"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].example.header_text","typeLabel":"string[]"},"header_url":{"type":"array","description":"Sample media URL for a `HEADER` component whose format is one of `IMAGE`, `GIF`, `VIDEO`, or `DOCUMENT`.\nSupported types:\n- For `IMAGE`, the URL must end with one of `.jpg`, `.jpeg`, or `.png`, size limit is 5MB.\n- For `GIF`, the URL must end with `.mp4`, size limit is 3.5MB.\n- For `VIDEO`, the URL must end with `.mp4`, size limit is 16MB.\n- For `DOCUMENT`, the URL must end with `.pdf`, size limit is 100MB.","items":{"type":"string","uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].example.header_url.items.[INDEX]","typeLabel":"string"},"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].example.header_url","typeLabel":"string[]"}},"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].example","typeLabel":"object"},"cards":{"type":"array","description":"**Required for type `CAROUSEL`.**\nCarousel templates support up to 10 carousel cards.","maxItems":10,"items":{"type":"object","description":"Carousel templates support up to 10 carousel cards. Cards must have a media header (image or video) and can optionally include body text and up to 2 quick reply buttons, phone number buttons, or URL buttons (button types can be mixed).","properties":{"components":{"type":"array","description":"**Required.**\nCard components.","items":{"type":"object","properties":{"type":{"type":"string","description":"**Required.**\nCard component type.\n- `BODY`: Body components are text-only components. Cards must have body text.\n- `HEADER`: Cards must have a media header (image or video).\n- `BUTTONS`: Buttons are interactive components that perform specific actions when tapped. Cards must have at least one button, up to 2 buttons.","enum":["BODY","HEADER","BUTTONS"],"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"format":{"type":"string","description":"**Required for type `HEADER`.**\nCards must have a media header (image or video).","enum":["IMAGE","VIDEO"],"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].format","typeLabel":"enum\u003cstring>"},"text":{"type":"string","description":"**Required for type `BODY`.**\nCard body text supports variables. Maximum 160 characters.","maxLength":160,"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].text","typeLabel":"string"},"buttons":{"type":"array","description":"**Required for type `BUTTONS`.**\nCards must have at least one button. Supports 2 buttons. Buttons can be the same or a mix of quick reply buttons, phone number buttons, or URL buttons.","minItems":1,"maxItems":2,"items":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Button type.\n- `PHONE_NUMBER`: Phone number buttons call the specified business phone number when tapped by the app user. Templates are limited to one phone number button.\n- `URL`: URL buttons load the specified URL in the device's default web browser when tapped by the app user. Templates are limited to two URL buttons.\n- `QUICK_REPLY`: Quick reply buttons are custom text-only buttons that immediately message you with the specified text string when tapped by the app user. Templates are limited to 10 quick reply buttons. If using quick reply buttons with other buttons, buttons must be organized into two groups: quick reply buttons and non-quick reply buttons.\n- `COPY_CODE`: Copy code buttons copy a text string (defined when the template is sent in a template message) to the device's clipboard when tapped by the app user. Templates are limited to one copy code button.\n- `OTP`: One-time password (OTP) buttons are a special type of URL button component used with authentication templates.\n- `CATALOG`: When a customer taps the **View catalog** button in a catalog template message, your product catalog appears within WhatsApp.\n- `MPM`: Customers can browse products and sections by tapping the **View items** button in a multi-product template message.\n- `FLOW`: Use this type to specify the [Flow](https://developers.facebook.com/docs/whatsapp/flows) to be sent with the template message.\n- `ORDER_DETAILS`: Provides a order details button with `Review and Pay` text.\n- `VOICE_CALL`: Triggers a WhatsApp call, when clicked by a WhatsApp customer.","enum":["PHONE_NUMBER","URL","QUICK_REPLY","COPY_CODE","OTP","CATALOG","MPM","FLOW","ORDER_DETAILS","VOICE_CALL"],"isRequired":true,"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"text":{"type":"string","description":"**Required for button type `PHONE_NUMBER` or `URL`.** Button text.\nFor `CODE_CODE` buttons, the text is a pre-set value and cannot be customized.\nFor `OTP` buttons, if omitted, the text will default to a pre-set value localized to the template's language. For example, `Copy Code` for English (US). If your template is using a one-tap autofill button and you supply this value, the authentication template message will display a copy code button with this text if we are unable to validate your [handshake](https://developers.facebook.com/docs/whatsapp/business-management-api/authentication-templates/autofill-button-authentication-templates#handshake). Maximum 25 characters.","maxLength":25,"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].text","typeLabel":"string"},"url":{"type":"string","description":"**Required for button type `URL`.** URL of website.\nThere can be at most 1 variable at the end of the URL. Example: `https://www.luckyshrub.com/shop?promo={{1}}`.\n2000 characters maximum.","maxLength":2000,"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].url","typeLabel":"string"},"phone_number":{"type":"string","description":"**Required for button type `PHONE_NUMBER`.**\nAlphanumeric string. Business phone number to be (display phone number) called when the user taps the button.\n20 characters maximum.","maxLength":20,"example":15550051310,"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].phone_number","typeLabel":"string"},"otp_type":{"type":"string","description":"**Required for button type `OTP`.**\nIndicates button OTP type.\nSet to `COPY_CODE` if you want the template to use a copy code button, `ONE_TAP` to have it use a one-tap autofill button, or `ZERO_TAP` to have no button at all.","enum":["COPY_CODE","ONE_TAP","ZERO_TAP"],"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].otp_type","typeLabel":"enum\u003cstring>"},"autofill_text":{"type":"string","description":"**One-tap and zero-tap buttons only.**\nOne-tap button text.\nMaximum 25 characters.","maxLength":25,"example":"Autofill","uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].autofill_text","typeLabel":"string"},"package_name":{"type":"string","description":"**One-tap and zero-tap buttons only.**\nYour Android app's package name.","example":"com.example.myapplication","uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].package_name","typeLabel":"string"},"signature_hash":{"type":"string","description":"**One-tap and zero-tap buttons only.**\nYour app signing key hash. See [App Signing Key Hash](https://developers.facebook.com/docs/whatsapp/business-management-api/authentication-templates/zero-tap-authentication-templates#app-signing-key-hash).","example":"K8a%2FAINcGX7","uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].signature_hash","typeLabel":"string"},"zero_tap_terms_accepted":{"type":"boolean","description":"**Zero-tap buttons only.**\nSet to `true` to indicate that you understand that your use of zero-tap authentication is subject to the WhatsApp Business Terms of Service, and that it's your responsibility to ensure your customers expect that the code will be automatically filled in on their behalf when they choose to receive the zero-tap code through WhatsApp.\nIf set to `false`, the template will not be created as you need to accept zero-tap terms before creating zero-tap enabled message templates.","uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].zero_tap_terms_accepted","typeLabel":"boolean"},"example":{"type":"array","description":"Sample full URL for a `URL` button with a variable.","items":{"type":"string","uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].example.items.[INDEX]","typeLabel":"string"},"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].example","typeLabel":"string[]"},"flow_id":{"type":"string","description":"**Conditionally required for button type `FLOW`.**\nThe unique ID of the Flow. Cannot be used if `flow_name` or `flow_json` parameters are provided. Only one of these parameters is allowed.","example":"1","uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].flow_id","typeLabel":"string"},"flow_name":{"type":"string","description":"**Conditionally required for button type `FLOW`.**\nThe name of the Flow. Cannot be used if `flow_id` or `flow_json` parameters are provided. Only one of these parameters is allowed. The Flow ID is stored in the message template, not the name, so changing the Flow name will not affect existing message templates.","uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].flow_name","typeLabel":"string"},"flow_json":{"type":"string","description":"**Conditionally required for button type `FLOW`.**\nThe Flow JSON encoded as string with escaping. The Flow JSON specifies the content of the Flow. Cannot be used if `flow_id` or `flow_name` parameters are provided. Only one of these parameters is allowed.","uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].flow_json","typeLabel":"string"},"flow_action":{"type":"string","description":"**Use for button type `FLOW`.**\nEither `navigate` or `data_exchange`. Defaults to `navigate`.","example":"navigate","uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].flow_action","typeLabel":"string"},"navigate_screen":{"type":"string","description":"**Required if `flow_action` is `navigate`.**\nThe unique ID of the Screen in the Flow.","example":"WELCOME_SCREEN","uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].navigate_screen","typeLabel":"string"}},"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons","typeLabel":"object[]"},"example":{"type":"object","description":"**Required** when:\n- `type` is `HEADER`, and `format` is one of `IMAGE`, `GIF`, `VIDEO`, or `DOCUMENT`. Provide a sample media URL in `header_url`.\n- `type` is `HEADER`, `format` is `TEXT`, and a variable is used in `text`. Provide a sample value for that variable in `header_text`. There can be at most 1 variable in `HEADER` text.\n- `type` is `BODY`, and variables are used in `text`. Provide sample values for those variables in `body_text`.","properties":{"body_text":{"type":"array","description":"Sample values for variables in `text` of a `BODY` component.","items":{"type":"array","items":{"type":"string","uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].example.body_text.items.[INDEX].items.[INDEX]","typeLabel":"string"},"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].example.body_text.items.[INDEX]","typeLabel":"string[]"},"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].example.body_text","typeLabel":"string[][]"},"header_text":{"type":"array","description":"Sample value for the variable in `text` of a `HEADER` component.","items":{"type":"string","uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].example.header_text.items.[INDEX]","typeLabel":"string"},"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].example.header_text","typeLabel":"string[]"},"header_url":{"type":"array","description":"Sample media URL for a `HEADER` component whose format is one of `IMAGE`, `GIF`, `VIDEO`, or `DOCUMENT`.\nSupported types:\n- For `IMAGE`, the URL must end with one of `.jpg`, `.jpeg`, or `.png`, size limit is 5MB.\n- For `GIF`, the URL must end with `.mp4`, size limit is 3.5MB.\n- For `VIDEO`, the URL must end with `.mp4`, size limit is 16MB.\n- For `DOCUMENT`, the URL must end with `.pdf`, size limit is 100MB.","items":{"type":"string","uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].example.header_url.items.[INDEX]","typeLabel":"string"},"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].example.header_url","typeLabel":"string[]"}},"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].example","typeLabel":"object"}},"description":"Cards must have a media header (image or video) and can optionally include body text and up to 2 quick reply buttons, phone number buttons, or URL buttons (button types can be mixed).","uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components","typeLabel":"object[]"}},"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX].cards","typeLabel":"object[]"}},"uniqueKey":"oneOf.1.whatsappTemplate.components.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.whatsappTemplate.components","typeLabel":"object[]"},"status":{"type":"string","description":"The status of a WhatsApp template.\n- `PENDING`: The template is still under review. Review can take up to 24 hours.\n- `REJECTED`: The template has been rejected during review process.\n- `APPROVED`: The template is approved, and you may begin sending it to customers.\n- `PAUSED`: The template has been paused due to recurring negative feedback from customers. Message templates with this status cannot be sent to customers. See [Template Pausing](https://developers.facebook.com/docs/whatsapp/message-templates/guidelines#template-pausing).\n- `DISABLED`: The template has been disabled due to recurring negative feedback from customers or for violating one or more of our policies. Message templates with this status cannot be sent to customers. You may be able to edit a disabled message template and request an appeal. See [Appeals](https://developers.facebook.com/docs/whatsapp/message-templates/guidelines#appeals).\n- `ARCHIVED`: The template has been archived. Archived templates cannot be sent or edited.\n- `IN_APPEAL`: The template is in appeal. See also [Template Appeals](https://developers.facebook.com/docs/whatsapp/message-templates/guidelines#appeals).\n- `DELETED`: The template is deleted.","enum":["PENDING","REJECTED","APPROVED","PAUSED","DISABLED","ARCHIVED","IN_APPEAL","DELETED"],"example":"REJECTED","uniqueKey":"oneOf.1.whatsappTemplate.status","typeLabel":"enum\u003cstring>"},"qualityRating":{"type":"string","description":"Quality rating of WhatsApp template. One of `GREEN`, `YELLOW`, `RED`, or `UNKNOWN`. See also [Template Quality Rating](https://developers.facebook.com/docs/whatsapp/message-templates/guidelines/#quality-rating).\n- `GREEN`: High quality.\n- `YELLOW`: Medium quality.\n- `RED`: Low quality.\n- `UNKNOWN`: Unknown quality.","enum":["GREEN","YELLOW","RED","UNKNOWN"],"uniqueKey":"oneOf.1.whatsappTemplate.qualityRating","typeLabel":"enum\u003cstring>"},"reason":{"type":"string","description":"The reason why the template is rejected.","uniqueKey":"oneOf.1.whatsappTemplate.reason","typeLabel":"string"},"createTime":{"type":"string","format":"date-time","description":"The time at which this object is created, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2022-06-01T12:00:00.000Z","uniqueKey":"oneOf.1.whatsappTemplate.createTime","typeLabel":"string\u003cdate-time>"},"updateTime":{"type":"string","format":"date-time","description":"The time at which this object is updated, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2022-06-01T12:00:00.000Z","uniqueKey":"oneOf.1.whatsappTemplate.updateTime","typeLabel":"string\u003cdate-time>"},"statusUpdateEvent":{"type":"string","description":"The WhatsApp template status update event that caused this webhook. For `ARCHIVED`, the template `status` is `ARCHIVED`. For `UNARCHIVED`, the template `status` is the current status returned by Meta, for example `APPROVED`; it does not represent a new approval review.","enum":["PENDING","APPROVED","REJECTED","IN_APPEAL","PAUSED","FLAGGED","DISABLED","ARCHIVED","UNARCHIVED","REINSTATED","PENDING_DELETION"],"uniqueKey":"oneOf.1.whatsappTemplate.statusUpdateEvent","typeLabel":"enum\u003cstring>"},"disableDate":{"type":"string","description":"The date at which the template will be disabled. When a WhatsApp template `FLAGGED` event is received, this field is set.","example":"December 9, 2022","uniqueKey":"oneOf.1.whatsappTemplate.disableDate","typeLabel":"string"},"whatsappApiError":{"type":"object","description":"The original error object returned by WhatsApp. See [Handling Errors](https://developers.facebook.com/docs/graph-api/guides/error-handling), [Cloud API Error Codes](https://developers.facebook.com/docs/whatsapp/cloud-api/support/error-codes).","required":["message","code"],"properties":{"message":{"type":"string","description":"A human-readable description of the error.","example":"HSM Template creation failed","isRequired":true,"uniqueKey":"oneOf.1.whatsappTemplate.whatsappApiError.message","typeLabel":"string"},"code":{"type":"string","description":"An error code.","example":200002,"isRequired":true,"uniqueKey":"oneOf.1.whatsappTemplate.whatsappApiError.code","typeLabel":"string"},"type":{"type":"string","description":"Error type.","example":"OAuthException","uniqueKey":"oneOf.1.whatsappTemplate.whatsappApiError.type","typeLabel":"string"},"error_subcode":{"type":"string","description":"Additional code about the error.","example":2388109,"uniqueKey":"oneOf.1.whatsappTemplate.whatsappApiError.error_subcode","typeLabel":"string"},"error_user_msg":{"type":"string","description":"The message to display to the user. The language of the message is based on the locale of the API request.","example":"This message template cannot be created.","uniqueKey":"oneOf.1.whatsappTemplate.whatsappApiError.error_user_msg","typeLabel":"string"},"error_user_title":{"type":"string","description":"The title of the dialog, if shown. The language of the message is based on the locale of the API request.","example":"Message Cannot Be Submitted","uniqueKey":"oneOf.1.whatsappTemplate.whatsappApiError.error_user_title","typeLabel":"string"},"fbtrace_id":{"type":"string","description":"Internal support identifier. When reporting a bug related to a Graph API call, include the fbtrace_id to help us find log data for debugging.","example":"AVGjJ7ia2zJkrHG","uniqueKey":"oneOf.1.whatsappTemplate.whatsappApiError.fbtrace_id","typeLabel":"string"},"error_data":{"oneOf":[{"type":"string","description":"Additional data about the error. A string or map.\n- For template APIs, this field is a string describing the reason for the error.\n- For message APIs, this field is a map with property `details` describing the reason for the error.","uniqueKey":"oneOf.1.whatsappTemplate.whatsappApiError.error_data.oneOf.0","typeLabel":"string"},{"type":"object","description":"Additional data about the error. A string or map.\n- For template APIs, this field is a string describing the reason for the error.\n- For message APIs, this field is a map with property `details` describing the reason for the error.","additionalProperties":true,"uniqueKey":"oneOf.1.whatsappTemplate.whatsappApiError.error_data.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.1.whatsappTemplate.whatsappApiError.error_data","typeLabel":"string | object"}},"uniqueKey":"oneOf.1.whatsappTemplate.whatsappApiError","typeLabel":"object"}},"uniqueKey":"oneOf.1.whatsappTemplate","typeLabel":"object"},"callingConnect":{"type":"object","description":"Included when `type` is `whatsapp.call.connect`.","required":["id","wacid"],"properties":{"id":{"type":"string","description":"Unique ID for the call event.","example":"call_evt_123456789","isRequired":true,"uniqueKey":"oneOf.1.callingConnect.id","typeLabel":"string"},"wacid":{"type":"string","description":"The WhatsApp call ID. This ID uniquely identifies the call session.","example":"wacid.ABGGFjFVU2AfAgo6V-Hc5eCgK5Gh","isRequired":true,"uniqueKey":"oneOf.1.callingConnect.wacid","typeLabel":"string"},"phoneId":{"type":"string","description":"The WhatsApp Business phone number ID.","example":"436666719526789","uniqueKey":"oneOf.1.callingConnect.phoneId","typeLabel":"string"},"from":{"type":"string","description":"The caller's phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","uniqueKey":"oneOf.1.callingConnect.from","typeLabel":"string"},"fromUserId":{"type":"string","description":"The caller's WhatsApp Business-scoped user ID (BSUID) for customer-initiated calls.","example":"US.1234","uniqueKey":"oneOf.1.callingConnect.fromUserId","typeLabel":"string"},"fromParentUserId":{"type":"string","description":"The caller's parent WhatsApp Business-scoped user ID for customer-initiated calls.","example":"US.ENT.1234","uniqueKey":"oneOf.1.callingConnect.fromParentUserId","typeLabel":"string"},"to":{"type":"string","description":"The callee's phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551112","uniqueKey":"oneOf.1.callingConnect.to","typeLabel":"string"},"toUserId":{"type":"string","description":"The callee's WhatsApp Business-scoped user ID (BSUID) for business-initiated calls.","example":"US.1234","uniqueKey":"oneOf.1.callingConnect.toUserId","typeLabel":"string"},"toParentUserId":{"type":"string","description":"The callee's parent WhatsApp Business-scoped user ID for business-initiated calls.","example":"US.ENT.1234","uniqueKey":"oneOf.1.callingConnect.toParentUserId","typeLabel":"string"},"customerProfile":{"type":"object","description":"The customer's profile information, including WhatsApp username when available.","properties":{"name":{"type":"string","description":"Name of the WhatsApp account.","example":"John","uniqueKey":"oneOf.1.callingConnect.customerProfile.name","typeLabel":"string"},"username":{"type":"string","description":"WhatsApp username.","example":"john_doe","uniqueKey":"oneOf.1.callingConnect.customerProfile.username","typeLabel":"string"}},"uniqueKey":"oneOf.1.callingConnect.customerProfile","typeLabel":"object"},"direction":{"type":"string","description":"The direction of the call.\n- `USER_INITIATED`: Call initiated by the customer to the business.\n- `BUSINESS_INITIATED`: Call initiated by the business to the customer.","enum":["USER_INITIATED","BUSINESS_INITIATED"],"example":"USER_INITIATED","uniqueKey":"oneOf.1.callingConnect.direction","typeLabel":"enum\u003cstring>"},"sdpType":{"type":"string","description":"The SDP type for the WebRTC connection.","enum":["offer","answer"],"example":"offer","uniqueKey":"oneOf.1.callingConnect.sdpType","typeLabel":"enum\u003cstring>"},"sdp":{"type":"string","description":"The Session Description Protocol (SDP) information compliant with [RFC 8866](https://datatracker.ietf.org/doc/html/rfc8866).\nContains media session parameters for the WebRTC connection.","example":"v=0\r\no=- 123456789 987654321 IN IP4 192.168.1.1\r\ns=-\r\nt=0 0\r\n...","uniqueKey":"oneOf.1.callingConnect.sdp","typeLabel":"string"},"dialTime":{"type":"integer","format":"int64","description":"The time when the call was dialed, in Unix timestamp milliseconds.","example":1640995200000,"uniqueKey":"oneOf.1.callingConnect.dialTime","typeLabel":"integer\u003cint64>"}},"uniqueKey":"oneOf.1.callingConnect","typeLabel":"object"},"callingTerminate":{"type":"object","description":"Included when `type` is `whatsapp.call.terminate`.","required":["id","wacid"],"properties":{"id":{"type":"string","description":"Unique ID for the call event.","example":"call_evt_123456789","isRequired":true,"uniqueKey":"oneOf.1.callingTerminate.id","typeLabel":"string"},"wacid":{"type":"string","description":"The WhatsApp call ID. This ID uniquely identifies the call session.","example":"wacid.ABGGFjFVU2AfAgo6V-Hc5eCgK5Gh","isRequired":true,"uniqueKey":"oneOf.1.callingTerminate.wacid","typeLabel":"string"},"phoneId":{"type":"string","description":"The WhatsApp Business phone number ID.","example":"436666719526789","uniqueKey":"oneOf.1.callingTerminate.phoneId","typeLabel":"string"},"from":{"type":"string","description":"The caller's phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","uniqueKey":"oneOf.1.callingTerminate.from","typeLabel":"string"},"fromUserId":{"type":"string","description":"The caller's WhatsApp Business-scoped user ID (BSUID) for customer-initiated calls.","example":"US.1234","uniqueKey":"oneOf.1.callingTerminate.fromUserId","typeLabel":"string"},"fromParentUserId":{"type":"string","description":"The caller's parent WhatsApp Business-scoped user ID for customer-initiated calls.","example":"US.ENT.1234","uniqueKey":"oneOf.1.callingTerminate.fromParentUserId","typeLabel":"string"},"to":{"type":"string","description":"The callee's phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551112","uniqueKey":"oneOf.1.callingTerminate.to","typeLabel":"string"},"toUserId":{"type":"string","description":"The callee's WhatsApp Business-scoped user ID (BSUID) for business-initiated calls.","example":"US.1234","uniqueKey":"oneOf.1.callingTerminate.toUserId","typeLabel":"string"},"toParentUserId":{"type":"string","description":"The callee's parent WhatsApp Business-scoped user ID for business-initiated calls.","example":"US.ENT.1234","uniqueKey":"oneOf.1.callingTerminate.toParentUserId","typeLabel":"string"},"customerProfile":{"type":"object","description":"The customer's profile information, including WhatsApp username when available.","properties":{"name":{"type":"string","description":"Name of the WhatsApp account.","example":"John","uniqueKey":"oneOf.1.callingTerminate.customerProfile.name","typeLabel":"string"},"username":{"type":"string","description":"WhatsApp username.","example":"john_doe","uniqueKey":"oneOf.1.callingTerminate.customerProfile.username","typeLabel":"string"}},"uniqueKey":"oneOf.1.callingTerminate.customerProfile","typeLabel":"object"},"direction":{"type":"string","description":"The direction of the call.\n- `USER_INITIATED`: Call initiated by the customer to the business.\n- `BUSINESS_INITIATED`: Call initiated by the business to the customer.","enum":["USER_INITIATED","BUSINESS_INITIATED"],"example":"USER_INITIATED","uniqueKey":"oneOf.1.callingTerminate.direction","typeLabel":"enum\u003cstring>"},"startTime":{"type":"integer","format":"int64","description":"The time when the call started, in Unix timestamp milliseconds.","example":1640995200000,"uniqueKey":"oneOf.1.callingTerminate.startTime","typeLabel":"integer\u003cint64>"},"endTime":{"type":"integer","format":"int64","description":"The time when the call ended, in Unix timestamp milliseconds.","example":1640995320000,"uniqueKey":"oneOf.1.callingTerminate.endTime","typeLabel":"integer\u003cint64>"},"duration":{"type":"integer","format":"int64","description":"The duration of the call in seconds.","example":120,"uniqueKey":"oneOf.1.callingTerminate.duration","typeLabel":"integer\u003cint64>"},"status":{"type":"string","description":"The final status of the call.\n- `COMPLETED`: The call was successfully completed.\n- `FAILED`: The call failed due to an error.","enum":["COMPLETED","FAILED"],"example":"COMPLETED","uniqueKey":"oneOf.1.callingTerminate.status","typeLabel":"enum\u003cstring>"},"errorCode":{"type":"string","description":"Error code when the call status is `FAILED`. Numeric string representing the error.","example":"131000","uniqueKey":"oneOf.1.callingTerminate.errorCode","typeLabel":"string"}},"uniqueKey":"oneOf.1.callingTerminate","typeLabel":"object"},"callingStatusUpdated":{"type":"object","description":"Included when `type` is `whatsapp.call.status.updated`.","required":["wacid","status"],"properties":{"wacid":{"type":"string","description":"The WhatsApp call ID. This ID uniquely identifies the call session.","example":"wacid.HBgNNjI4MTM2MTkwNTEzMxUCABE","isRequired":true,"uniqueKey":"oneOf.1.callingStatusUpdated.wacid","typeLabel":"string"},"status":{"type":"string","description":"The current status of the call.\n- `RINGING`: Business initiated call is ringing the user.\n- `ACCEPTED`: Business initiated call is accepted by the user.\n- `REJECTED`: Business initiated call is rejected by the user.","enum":["RINGING","ACCEPTED","REJECTED"],"example":"RINGING","isRequired":true,"uniqueKey":"oneOf.1.callingStatusUpdated.status","typeLabel":"enum\u003cstring>"},"id":{"type":"string","description":"Unique ID for the call event (optional field, may not be present).","example":"call_evt_123456789","uniqueKey":"oneOf.1.callingStatusUpdated.id","typeLabel":"string"},"wabaId":{"type":"string","description":"WhatsApp Business Account ID.","example":"188234691048809","uniqueKey":"oneOf.1.callingStatusUpdated.wabaId","typeLabel":"string"},"phoneId":{"type":"string","description":"The WhatsApp Business phone number ID (optional field, may not be present).","example":"436666719526789","uniqueKey":"oneOf.1.callingStatusUpdated.phoneId","typeLabel":"string"},"recipientPhone":{"type":"string","description":"The recipient's phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+6281361905133","uniqueKey":"oneOf.1.callingStatusUpdated.recipientPhone","typeLabel":"string"},"recipientUserId":{"type":"string","description":"The recipient's WhatsApp Business-scoped user ID (BSUID).","example":"US.1234","uniqueKey":"oneOf.1.callingStatusUpdated.recipientUserId","typeLabel":"string"},"parentRecipientUserId":{"type":"string","description":"The recipient's parent WhatsApp Business-scoped user ID.","example":"US.ENT.1234","uniqueKey":"oneOf.1.callingStatusUpdated.parentRecipientUserId","typeLabel":"string"},"customerProfile":{"type":"object","description":"The customer's profile information, including WhatsApp username when available.","properties":{"name":{"type":"string","description":"Name of the WhatsApp account.","example":"John","uniqueKey":"oneOf.1.callingStatusUpdated.customerProfile.name","typeLabel":"string"},"username":{"type":"string","description":"WhatsApp username.","example":"john_doe","uniqueKey":"oneOf.1.callingStatusUpdated.customerProfile.username","typeLabel":"string"}},"uniqueKey":"oneOf.1.callingStatusUpdated.customerProfile","typeLabel":"object"}},"uniqueKey":"oneOf.1.callingStatusUpdated","typeLabel":"object"},"callingRecording":{"type":"object","additionalProperties":false,"description":"Included when `type` is `whatsapp.call.recording.updated`.","required":["wacid","phoneId","mediaAssetId","status"],"properties":{"wacid":{"type":"string","description":"WhatsApp call ID.","example":"wacid.HBgNNjI4MTM2MTkwNTEzMxUCABE","isRequired":true,"uniqueKey":"oneOf.1.callingRecording.wacid","typeLabel":"string"},"phoneId":{"type":"string","description":"WhatsApp business phone number ID used for authorized-asset delivery.","example":"461269257068832","isRequired":true,"uniqueKey":"oneOf.1.callingRecording.phoneId","typeLabel":"string"},"mediaAssetId":{"type":"string","description":"YCloud media asset ID used with the call media download API.","example":"66b1f0c2e4b05c2d8f1a3b47","isRequired":true,"uniqueKey":"oneOf.1.callingRecording.mediaAssetId","typeLabel":"string"},"status":{"type":"string","enum":["AVAILABLE","FAILED"],"example":"AVAILABLE","isRequired":true,"uniqueKey":"oneOf.1.callingRecording.status","typeLabel":"enum\u003cstring>"},"error":{"type":"object","additionalProperties":false,"description":"Present only when `status` is `FAILED`.","required":["code","retryable"],"properties":{"code":{"type":"string","description":"Stable failure code.","example":"CALLING_RECORDING_PROCESSING_FAILED","isRequired":true,"uniqueKey":"oneOf.1.callingRecording.error.code","typeLabel":"string"},"retryable":{"type":"boolean","description":"Whether retrying the upstream media operation may succeed.","example":false,"isRequired":true,"uniqueKey":"oneOf.1.callingRecording.error.retryable","typeLabel":"boolean"}},"uniqueKey":"oneOf.1.callingRecording.error","typeLabel":"object"}},"uniqueKey":"oneOf.1.callingRecording","typeLabel":"object"},"callingTranscription":{"type":"object","additionalProperties":false,"description":"Included when `type` is `whatsapp.call.transcription.updated`.","required":["wacid","phoneId","mediaAssetId","status"],"properties":{"wacid":{"type":"string","description":"WhatsApp call ID.","example":"wacid.HBgNNjI4MTM2MTkwNTEzMxUCABE","isRequired":true,"uniqueKey":"oneOf.1.callingTranscription.wacid","typeLabel":"string"},"phoneId":{"type":"string","description":"WhatsApp business phone number ID used for authorized-asset delivery.","example":"461269257068832","isRequired":true,"uniqueKey":"oneOf.1.callingTranscription.phoneId","typeLabel":"string"},"mediaAssetId":{"type":"string","description":"YCloud media asset ID used with the call media download API.","example":"66b1f0c2e4b05c2d8f1a3b47","isRequired":true,"uniqueKey":"oneOf.1.callingTranscription.mediaAssetId","typeLabel":"string"},"status":{"type":"string","enum":["AVAILABLE","FAILED"],"example":"AVAILABLE","isRequired":true,"uniqueKey":"oneOf.1.callingTranscription.status","typeLabel":"enum\u003cstring>"},"error":{"type":"object","additionalProperties":false,"description":"Present only when `status` is `FAILED`.","required":["code","retryable"],"properties":{"code":{"type":"string","description":"Stable failure code.","example":"CALLING_RECORDING_PROCESSING_FAILED","isRequired":true,"uniqueKey":"oneOf.1.callingTranscription.error.code","typeLabel":"string"},"retryable":{"type":"boolean","description":"Whether retrying the upstream media operation may succeed.","example":false,"isRequired":true,"uniqueKey":"oneOf.1.callingTranscription.error.retryable","typeLabel":"boolean"}},"uniqueKey":"oneOf.1.callingTranscription.error","typeLabel":"object"}},"uniqueKey":"oneOf.1.callingTranscription","typeLabel":"object"},"flowChanges":{"type":"object","description":"Included when `type` is `whatsapp.flow.status_change`.","required":["flowId","wabaId","newStatus"],"properties":{"flowId":{"type":"string","description":"The unique ID of the Flow.","example":"1097420589034000","isRequired":true,"uniqueKey":"oneOf.1.flowChanges.flowId","typeLabel":"string"},"wabaId":{"type":"string","description":"WhatsApp Business Account ID.","isRequired":true,"uniqueKey":"oneOf.1.flowChanges.wabaId","typeLabel":"string"},"newStatus":{"type":"string","description":"The new status of the flow.","example":"PUBLISHED","isRequired":true,"uniqueKey":"oneOf.1.flowChanges.newStatus","typeLabel":"string"},"message":{"type":"string","description":"The message ID of the flow status change.","example":"Flow Webhook 3 changed status from DRAFT to PUBLISHED","uniqueKey":"oneOf.1.flowChanges.message","typeLabel":"string"},"oldStatus":{"type":"string","description":"The old status of the flow.","example":"DRAFT","uniqueKey":"oneOf.1.flowChanges.oldStatus","typeLabel":"string"}},"uniqueKey":"oneOf.1.flowChanges","typeLabel":"object"},"whatsappUserPreference":{"properties":{"wabaId":{"type":"string","description":"WhatsApp Business Account ID.","example":1234123123,"uniqueKey":"oneOf.1.whatsappUserPreference.wabaId","typeLabel":"string"},"businessPhoneNumber":{"type":"string","description":"Phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","uniqueKey":"oneOf.1.whatsappUserPreference.businessPhoneNumber","typeLabel":"string"},"businessPhoneId":{"type":"string","description":"Phone number ID.","example":"1234567890123456","uniqueKey":"oneOf.1.whatsappUserPreference.businessPhoneId","typeLabel":"string"},"contactName":{"type":"string","description":"WhatsApp user name.","example":"John","uniqueKey":"oneOf.1.whatsappUserPreference.contactName","typeLabel":"string"},"contactPhoneNumber":{"type":"string","description":"WhatsApp user phone number. Phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","uniqueKey":"oneOf.1.whatsappUserPreference.contactPhoneNumber","typeLabel":"string"},"userId":{"type":"string","description":"The WhatsApp user's Business-scoped user ID (BSUID).","example":"US.13491208655302741918","uniqueKey":"oneOf.1.whatsappUserPreference.userId","typeLabel":"string"},"parentUserId":{"type":"string","description":"The WhatsApp user's parent Business-scoped user ID. Omitted when parent BSUIDs are not enabled.","example":"US.ENT.11815799212886844830","uniqueKey":"oneOf.1.whatsappUserPreference.parentUserId","typeLabel":"string"},"detail":{"type":"string","description":"Description of marketing message preference.","example":"User requested to stop marketing messages","uniqueKey":"oneOf.1.whatsappUserPreference.detail","typeLabel":"string"},"category":{"type":"string","example":"marketing_messages","uniqueKey":"oneOf.1.whatsappUserPreference.category","typeLabel":"string"},"value":{"type":"string","description":"Marketing message preference.","example":"stop","uniqueKey":"oneOf.1.whatsappUserPreference.value","typeLabel":"string"},"timestamp":{"type":"string","description":"Unix timestamp indicating when the webhook was triggered.","example":"1739321024000","uniqueKey":"oneOf.1.whatsappUserPreference.timestamp","typeLabel":"string"}},"description":"Included when `type` is `whatsapp.user.preferences`.","type":"object","uniqueKey":"oneOf.1.whatsappUserPreference","typeLabel":"object"},"messengerInboundMessage":{"type":"object","description":"Included when `type` is `messenger.inbound_message.received` or `messenger.inbound_message.updated`. Editing keeps the same message IDs and original times; event createTime is the edit time for updated events.","required":["id","metaMessageId","from","to","type","text","sendTime","createTime"],"properties":{"id":{"type":"string","description":"YCloud inbound message ID as a decimal string.","isRequired":true,"uniqueKey":"oneOf.1.messengerInboundMessage.id","typeLabel":"string"},"metaMessageId":{"type":"string","description":"Meta message ID.","isRequired":true,"uniqueKey":"oneOf.1.messengerInboundMessage.metaMessageId","typeLabel":"string"},"from":{"type":"string","description":"Customer PSID scoped to the Facebook Page.","isRequired":true,"uniqueKey":"oneOf.1.messengerInboundMessage.from","typeLabel":"string"},"to":{"type":"string","description":"Facebook Page ID.","isRequired":true,"uniqueKey":"oneOf.1.messengerInboundMessage.to","typeLabel":"string"},"type":{"type":"string","enum":["text"],"isRequired":true,"uniqueKey":"oneOf.1.messengerInboundMessage.type","typeLabel":"enum\u003cstring>"},"text":{"type":"object","required":["body"],"properties":{"body":{"type":"string","minLength":1,"description":"Nonblank text. Leading and trailing spaces are preserved and included when comparing a repeated request.","isRequired":true,"uniqueKey":"oneOf.1.messengerInboundMessage.text.body","typeLabel":"string"}},"isRequired":true,"uniqueKey":"oneOf.1.messengerInboundMessage.text","typeLabel":"object"},"sendTime":{"type":"string","format":"date-time","description":"Saved source event time in UTC RFC 3339 with millisecond precision.","isRequired":true,"uniqueKey":"oneOf.1.messengerInboundMessage.sendTime","typeLabel":"string\u003cdate-time>"},"createTime":{"type":"string","format":"date-time","description":"Local persistence time in UTC RFC 3339 with millisecond precision.","isRequired":true,"uniqueKey":"oneOf.1.messengerInboundMessage.createTime","typeLabel":"string\u003cdate-time>"},"editCount":{"type":"integer","description":"Cumulative edit count supplied by Meta. Omitted before the first edit.","uniqueKey":"oneOf.1.messengerInboundMessage.editCount","typeLabel":"integer"},"editTime":{"type":"string","format":"date-time","description":"Saved platform edit time in UTC RFC 3339 with millisecond precision. Omitted before the first edit.","uniqueKey":"oneOf.1.messengerInboundMessage.editTime","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.1.messengerInboundMessage","typeLabel":"object"},"messengerMessage":{"type":"object","required":["id","from","to","type","text","status","createTime","updateTime"],"properties":{"id":{"type":"string","description":"YCloud outbound ID, a decimal string; never serialize it as a JSON number.","isRequired":true,"uniqueKey":"oneOf.1.messengerMessage.id","typeLabel":"string"},"from":{"type":"string","description":"Facebook Page ID.","isRequired":true,"uniqueKey":"oneOf.1.messengerMessage.from","typeLabel":"string"},"to":{"type":"string","description":"Peer PSID for this Page.","isRequired":true,"uniqueKey":"oneOf.1.messengerMessage.to","typeLabel":"string"},"type":{"type":"string","enum":["text"],"isRequired":true,"uniqueKey":"oneOf.1.messengerMessage.type","typeLabel":"enum\u003cstring>"},"text":{"type":"object","required":["body"],"properties":{"body":{"type":"string","minLength":1,"description":"Nonblank text. Leading and trailing spaces are preserved and included when comparing a repeated request.","isRequired":true,"uniqueKey":"oneOf.1.messengerMessage.text.body","typeLabel":"string"}},"isRequired":true,"uniqueKey":"oneOf.1.messengerMessage.text","typeLabel":"object"},"status":{"type":"string","enum":["unknown","accepted","rejected","sent","delivered","read"],"description":"Current stored facts: read > delivered > sent > submission result.\nUnknown means unconfirmed or in progress, never a definitive failure.\nMissing receipts do not imply failure and no intermediate state is fabricated.\n","isRequired":true,"uniqueKey":"oneOf.1.messengerMessage.status","typeLabel":"enum\u003cstring>"},"createTime":{"type":"string","format":"date-time","description":"Local creation time in UTC RFC 3339 with millisecond precision.","isRequired":true,"uniqueKey":"oneOf.1.messengerMessage.createTime","typeLabel":"string\u003cdate-time>"},"updateTime":{"type":"string","format":"date-time","description":"Local update time in UTC RFC 3339 with millisecond precision.","isRequired":true,"uniqueKey":"oneOf.1.messengerMessage.updateTime","typeLabel":"string\u003cdate-time>"},"metaMessageId":{"type":"string","description":"Omitted when no Meta ID is confirmed.","uniqueKey":"oneOf.1.messengerMessage.metaMessageId","typeLabel":"string"},"reactions":{"type":"array","description":"Active reactions reconstructed when retrieving an outbound message. Returns [] when no\nsaved active reaction exists, including after withdrawal. Customer status webhooks omit\nthis field; receiving a reaction does not change the message delivery status or updateTime.\n","items":{"type":"object","description":"The latest active reaction from a user, reconstructed from saved interaction events.","required":["psid","updateTime"],"properties":{"psid":{"type":"string","description":"Page-scoped ID of the user who reacted.","isRequired":true,"uniqueKey":"oneOf.1.messengerMessage.reactions.items.[INDEX].psid","typeLabel":"string"},"updateTime":{"type":"string","format":"date-time","description":"Source interaction time in UTC RFC 3339 with millisecond precision; independent of the message updateTime.","example":"2026-10-16T10:00:04.000Z","isRequired":true,"uniqueKey":"oneOf.1.messengerMessage.reactions.items.[INDEX].updateTime","typeLabel":"string\u003cdate-time>"},"reaction":{"type":"string","description":"Provider reaction description, when available. Clients should tolerate new values.","example":"love","uniqueKey":"oneOf.1.messengerMessage.reactions.items.[INDEX].reaction","typeLabel":"string"},"emoji":{"type":"string","description":"Reaction emoji, when available.","example":"❤","uniqueKey":"oneOf.1.messengerMessage.reactions.items.[INDEX].emoji","typeLabel":"string"}},"uniqueKey":"oneOf.1.messengerMessage.reactions.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.1.messengerMessage.reactions","typeLabel":"object[]"},"errorCode":{"type":"string","description":"Locally recorded submission error, when present. A confirmed rejection may be\nMESSENGER_MESSAGE_REJECTED(#100:2018276), MESSENGER_MESSAGE_REJECTED(#100),\nor the legacy MESSENGER_MESSAGE_REJECTED when diagnostics are unavailable.\nMESSENGER_MESSAGE_RESULT_UNKNOWN means the submission outcome is unconfirmed.\nNever contains the raw Meta error body or credentials.\n","uniqueKey":"oneOf.1.messengerMessage.errorCode","typeLabel":"string"},"sendTime":{"type":"string","format":"date-time","description":"Confirmed send time in UTC RFC 3339 with millisecond precision; omitted when unknown.","uniqueKey":"oneOf.1.messengerMessage.sendTime","typeLabel":"string\u003cdate-time>"},"deliverTime":{"type":"string","format":"date-time","description":"Confirmed delivery time in UTC RFC 3339 with millisecond precision; omitted when unknown.","uniqueKey":"oneOf.1.messengerMessage.deliverTime","typeLabel":"string\u003cdate-time>"},"readTime":{"type":"string","format":"date-time","description":"Confirmed read time in UTC RFC 3339 with millisecond precision; omitted when unknown.","uniqueKey":"oneOf.1.messengerMessage.readTime","typeLabel":"string\u003cdate-time>"}},"description":"Included when `type` is `messenger.message.updated`.","uniqueKey":"oneOf.1.messengerMessage","typeLabel":"object"},"messengerMessageReaction":{"type":"object","description":"Included when `type` is `messenger.message_reaction.updated`. Event createTime is the source interaction time.","required":["pageId","psid","metaMessageId","action"],"properties":{"pageId":{"type":"string","description":"Facebook Page ID that scopes this conversation.","isRequired":true,"uniqueKey":"oneOf.1.messengerMessageReaction.pageId","typeLabel":"string"},"psid":{"type":"string","description":"Page-scoped ID of the customer who reacted.","isRequired":true,"uniqueKey":"oneOf.1.messengerMessageReaction.psid","typeLabel":"string"},"metaMessageId":{"type":"string","description":"Meta ID of the message being reacted to.","isRequired":true,"uniqueKey":"oneOf.1.messengerMessageReaction.metaMessageId","typeLabel":"string"},"action":{"type":"string","enum":["react","unreact"],"description":"Use react to apply a reaction and unreact to withdraw it.","isRequired":true,"uniqueKey":"oneOf.1.messengerMessageReaction.action","typeLabel":"enum\u003cstring>"},"reaction":{"type":"string","description":"Reaction name when provided by Meta. May be omitted, including on withdrawal.","uniqueKey":"oneOf.1.messengerMessageReaction.reaction","typeLabel":"string"},"emoji":{"type":"string","description":"Reaction emoji when provided by Meta. May be omitted, including on withdrawal.","uniqueKey":"oneOf.1.messengerMessageReaction.emoji","typeLabel":"string"}},"uniqueKey":"oneOf.1.messengerMessageReaction","typeLabel":"object"}},"uniqueKey":"oneOf.1","typeLabel":"object"},{"type":"object","description":"Represents a webhook event payload.\nEvery event contains certain common properties: `id`, `type`, `apiVersion`, `createTime`.\nEach event may also contain some properties unique to the event. For example, `sms` is returned when `type` is `sms.message.updated`.","required":["id","type","apiVersion","createTime"],"properties":{"type":{"type":"string","description":"Type of event.","enum":["contact.attributes_changed","contact.created","contact.deleted","contact.unsubscribe.created","contact.unsubscribe.deleted","email.delivery.updated","sms.message.updated","sms.inbound.received","voice.message.updated","whatsapp.business_account.deleted","whatsapp.business_account.reviewed","whatsapp.business_account.updated","whatsapp.inbound_message.received","whatsapp.message.updated","whatsapp.group.lifecycle_update","whatsapp.group.participants_update","whatsapp.group.settings_update","whatsapp.group.status_update","whatsapp.phone_number.deleted","whatsapp.phone_number.name_updated","whatsapp.phone_number.quality_updated","whatsapp.phone_number.business_username_updated","whatsapp.template.category_updated","whatsapp.template.correct_category_detection","whatsapp.template.quality_updated","whatsapp.template.reviewed","whatsapp.call.connect","whatsapp.call.terminate","whatsapp.call.status.updated","whatsapp.call.recording.updated","whatsapp.call.transcription.updated","whatsapp.flow.status_change","whatsapp.payment.updated","whatsapp.user.preferences","contact.note.created","contact.note.updated","contact.note.deleted","whatsapp.echo_message.created","whatsapp.echo_message.updated","whatsapp.meta_business_agent.handover.updated","whatsapp.smb.history","whatsapp.smb.message.created","whatsapp.smb.message.echoes","messenger.inbound_message.received","messenger.inbound_message.updated","messenger.message.updated","messenger.message_reaction.updated"],"x-enum-descriptions":["Occurs when a contact's attributes are changed.","Occurs when a contact is created.","Occurs when a contact is deleted.","Occurs when a contact unsubscribes from messages.","Occurs when a contact resumes subscription to messages.","Occurs when an email delivery status is updated, and the status changes to `delivered` or `failed`.","Occurs when an SMS message status is updated, and the status changes to `delivered` or `undelivered`.","Occurs when an SMS inbound message is received, which means a user replies to your message.","Occurs when a voice message status is updated, and the status changes to `delivered` or `undelivered`.","Occurs when a WhatsApp Business Account is deleted.","Occurs when a WhatsApp Business Account has been reviewed.","Occurs when a policy violation happened, WhatsApp Business Account has been banned and more.","Occurs when a WhatsApp inbound message is received.","Occurs when a WhatsApp outbound message status is updated, and the status changes to `sent`, `failed`, `delivered`, or `read`.","Occurs when a WhatsApp group is created or deleted, including successful and failed results.","Occurs when WhatsApp group participants or join requests are updated.","Occurs when WhatsApp group settings are updated, including successful and failed results.","Occurs when a WhatsApp group suspension status is updated.","Occurs when a WhatsApp business phone number is deleted.","Occurs when a WhatsApp business phone number's name has been approved or rejected.","Occurs when a WhatsApp business phone number's quality-related status is updated, and the status changes to `GREEN`, `YELLOW`, or `RED`.","Occurs when a WhatsApp business phone number's Business Username is updated.","Occurs when a WhatsApp template category is updated.","Occurs when Meta detects non-utility content in Utility Direct Send. Subscribe through the webhook endpoint API.","Occurs when a WhatsApp template quality rating is updated.","Occurs when a WhatsApp template status is updated, and the status changes to `REJECTED`, `APPROVED`, `PAUSED`, `DISABLED`, `IN_APPEAL`, or `ARCHIVED`.","Occurs when a WhatsApp call is connected.","Occurs when a WhatsApp call is terminated.","Occurs when a WhatsApp call status is updated.","Occurs when an API-sourced WhatsApp call recording becomes available or permanently fails.","Occurs when an API-sourced WhatsApp call transcription becomes available or permanently fails.","Occurs when a WhatsApp flow status is updated.","Occurs when a WhatsApp payment transaction changes.","Occurs when a WhatsApp user stops marketing messages or a WhatsApp user resumes marketing messages.","Occurs when a contact note is created.","Occurs when a contact note is updated.","Occurs when a contact note is independently deleted. Contact deletion does not emit this event for cascaded notes.","Occurs when an outbound echo message is recorded for a Public REST API Agent.","Occurs when an outbound echo status is received for a Public REST API Agent; late lower-ranked statuses can also be delivered.","Occurs when a supported handover callback transfers control away from a Public REST API Agent. Does not confirm Inbox assignment.","Occurs when WhatsApp Business app sync history message.","Occurs when WhatsApp Business app send message.","Occurs when WhatsApp Business app sends a message echo.","Occurs when an ordinary Messenger text message is received from a customer.","Occurs when a customer edits a saved Messenger inbound text message.","Occurs when a saved ordinary Messenger outbound message snapshot is available, including submission results and matched receipts.","Occurs when a customer reacts to or removes a reaction from a Messenger message."],"isRequired":true,"uniqueKey":"oneOf.2.type","typeLabel":"enum\u003cstring>"},"id":{"type":"string","description":"Unique ID for the event.","minLength":6,"maxLength":128,"isRequired":true,"uniqueKey":"oneOf.2.id","typeLabel":"string"},"apiVersion":{"type":"string","description":"The API version used to render this event.","example":"v2","isRequired":true,"uniqueKey":"oneOf.2.apiVersion","typeLabel":"string"},"createTime":{"type":"string","format":"date-time","description":"The time at which this event was created, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2022-06-01T12:00:00.000Z","isRequired":true,"uniqueKey":"oneOf.2.createTime","typeLabel":"string\u003cdate-time>"},"whatsappMessage":{"type":"object","description":"Included when `type` is `whatsapp.message.updated`, `whatsapp.smb.message.created`, or when `type` is `whatsapp.smb.history` for an outbound history message. Also included for `whatsapp.echo_message.created` and `whatsapp.echo_message.updated`, where the Agent echo subset applies. It is omitted for a metadata-only history chunk.","required":["id","wabaId","from"],"properties":{"id":{"type":"string","description":"Unique ID of the message.","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.id","typeLabel":"string"},"wabaId":{"type":"string","description":"WhatsApp Business Account ID.","example":"whatsapp-business-account-id","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.wabaId","typeLabel":"string"},"from":{"type":"string","description":"The sender's phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.from","typeLabel":"string"},"wamid":{"type":"string","description":"The original message ID on WhatsApp's platform.","example":"wamid.BgNODYxN...","uniqueKey":"oneOf.2.whatsappMessage.wamid","typeLabel":"string"},"to":{"type":"string","description":"The recipient's phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","uniqueKey":"oneOf.2.whatsappMessage.to","typeLabel":"string"},"recipient":{"type":"string","description":"The recipient value submitted in the request when a BSUID or parent BSUID was used.","example":"US.1234","uniqueKey":"oneOf.2.whatsappMessage.recipient","typeLabel":"string"},"recipientUserId":{"type":"string","description":"The recipient's WhatsApp Business-scoped user ID (BSUID).","example":"US.1234","uniqueKey":"oneOf.2.whatsappMessage.recipientUserId","typeLabel":"string"},"toUserId":{"type":"string","description":"Alias of `recipientUserId` kept for compatibility.","example":"US.1234","uniqueKey":"oneOf.2.whatsappMessage.toUserId","typeLabel":"string"},"parentRecipientUserId":{"type":"string","description":"The recipient's parent WhatsApp Business-scoped user ID.","example":"US.parent123","uniqueKey":"oneOf.2.whatsappMessage.parentRecipientUserId","typeLabel":"string"},"toParentUserId":{"type":"string","description":"Alias of `parentRecipientUserId` kept for compatibility.","example":"US.parent123","uniqueKey":"oneOf.2.whatsappMessage.toParentUserId","typeLabel":"string"},"customerProfile":{"type":"object","description":"The recipient's profile information, including WhatsApp username when available.","properties":{"name":{"type":"string","description":"Name of the WhatsApp account.","example":"John","uniqueKey":"oneOf.2.whatsappMessage.customerProfile.name","typeLabel":"string"},"username":{"type":"string","description":"WhatsApp username.","example":"john_doe","uniqueKey":"oneOf.2.whatsappMessage.customerProfile.username","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.customerProfile","typeLabel":"object"},"conversation":{"type":"object","description":"WhatsApp defines a conversation as a 24-hour session of messaging between a person and a business.\nThis field is present after the message status changes to `sent`.\nSee also [Conversation-Based Pricing](https://developers.facebook.com/docs/whatsapp/pricing).","properties":{"id":{"type":"string","description":"Unique ID for the object.","uniqueKey":"oneOf.2.whatsappMessage.conversation.id","typeLabel":"string"},"type":{"type":"string","description":"Conversation type. There is a charge when the first business message of this conversation is delivered, initiating the 24-hour conversation session. As such, the conversation type can be `null` before the first message is delivered.\n- `FREE_ENTRY`: Conversations originating from a [free entry point](https://developers.facebook.com/docs/whatsapp/pricing#free-entry-point-conversations).\n- `FREE_TIER`: Conversations within the monthly [free tier](https://developers.facebook.com/docs/whatsapp/pricing#free-tier-conversations).\n- `REGULAR`: Any conversations that did not originate from a [free entry point](https://developers.facebook.com/docs/whatsapp/pricing#free-entry-point-conversations) or are above the monthly [free tier](https://developers.facebook.com/docs/whatsapp/pricing#free-tier-conversations) allotment.","enum":["FREE_ENTRY","FREE_TIER","REGULAR"],"uniqueKey":"oneOf.2.whatsappMessage.conversation.type","typeLabel":"enum\u003cstring>"},"originType":{"type":"string","description":"Indicates [conversation category](https://developers.facebook.com/docs/whatsapp/pricing#conversation-categories). This can also be referred to as a conversation entry point.\n- `referral_conversion`: Indicates a [free entry point conversation](https://developers.facebook.com/docs/whatsapp/pricing#free-entry-point-conversations).\n- `authentication`: Indicates the conversation was opened by a business sending template categorized as `AUTHENTICATION` to the customer. This applies any time it has been more than 24 hours since the last customer message.\n- `marketing`: Indicates the conversation was opened by a business sending template categorized as `MARKETING` to the customer. This applies any time it has been more than 24 hours since the last customer message.\n- `utility`: Indicates the conversation was opened by a business sending template categorized as `UTILITY` to the customer. This applies any time it has been more than 24 hours since the last customer message.\n- `service`: Indicates that the conversation opened by a business replying to a customer within a [customer service window](https://developers.facebook.com/docs/whatsapp/pricing#customer-service-windows).","enum":["referral_conversion","authentication","marketing","utility","service"],"uniqueKey":"oneOf.2.whatsappMessage.conversation.originType","typeLabel":"enum\u003cstring>"},"expireTime":{"type":"string","format":"date-time","description":"Date when the conversation expires, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2022-06-01T12:00:00.000Z","uniqueKey":"oneOf.2.whatsappMessage.conversation.expireTime","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.2.whatsappMessage.conversation","typeLabel":"object"},"type":{"type":"string","description":"WhatsApp outbound message type.\nSee also [WhatsApp messages](https://developers.facebook.com/docs/whatsapp/cloud-api/reference/messages).","enum":["template","text","image","audio","video","document","sticker","location","interactive","contacts","reaction"],"uniqueKey":"oneOf.2.whatsappMessage.type","typeLabel":"enum\u003cstring>"},"template":{"type":"object","description":"Use for sending a WhatsApp `template` message.","required":["name","language"],"properties":{"name":{"type":"string","description":"Name of the template.","example":"sample_whatsapp_template","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.name","typeLabel":"string"},"language":{"type":"object","description":"Contains a language object. Specifies the language the template may be rendered in.","properties":{"code":{"type":"string","description":"The code of the language or locale to use. Accepts both language and language_locale formats (e.g., en and en_US). See [Supported Languages](https://developers.facebook.com/documentation/business-messaging/whatsapp/templates/supported-languages) for all codes.","example":"en_US","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.language.code","typeLabel":"string"},"policy":{"type":"string","description":"The language policy the message should follow.\nDefault (and only supported option): `deterministic`, which means that WhatsApp delivers the message template in exactly the language and locale asked for.","example":"deterministic","uniqueKey":"oneOf.2.whatsappMessage.template.language.policy","typeLabel":"string"}},"required":["code"],"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.language","typeLabel":"object"},"components":{"type":"array","description":"**Required when the specified template contains variables or media.**\nArray of component objects containing the parameters of the message.","items":{"type":"object","description":"Component object containing the parameters of the message.","required":["type"],"properties":{"type":{"type":"string","description":"Component type.","enum":["header","body","button","limited_time_offer","carousel","order_status"],"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"sub_type":{"type":"string","description":"**Required when type is `button`.**\nType of button.\n- `quick_reply`: Refers to a previously created quick reply button that allows for the customer to return a predefined message.\n- `url`: Refers to a previously created url button that allows the customer to visit the URL generated by appending the text parameter to the predefined prefix URL in the template.\n- `copy_code`: Refers to a previously created copy code button that allows the customer to copy a text string (defined when the template is sent in a template message) to the device's clipboard when tapped by the app user.\n- `catalog`: Refers to a previously created catalog button that allows the customer to view your product catalog.\n- `mpm`: Refers to a previously created MPM (multi-product message) button that allows the customer to browser products and sections.\n- `flow`: Refers to a previously created flow button that allows the customer to interact with a [flow](https://developers.facebook.com/docs/whatsapp/flows).\n- `order_details`: Refers to a previously created order details button that allows the customer to view the details of an order.","enum":["quick_reply","url","copy_code","catalog","mpm","flow","order_details"],"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].sub_type","typeLabel":"enum\u003cstring>"},"index":{"type":"integer","format":"int32","minimum":0,"maximum":9,"description":"**Required when `type` = `button`. Not used for the other types.**\nIndicates order in which button should appear, if the template uses multiple buttons.\nButtons are zero-indexed, so setting value to 0 will cause the button to appear first, and another button with an index of 1 will appear next, etc.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].index","typeLabel":"integer\u003cint32>"},"parameters":{"type":"array","description":"**Required when `type` = `button`, or there are variables in the corresponding template component, or the template `HEADER` format is media (`IMAGE`, `VIDEO`, or `DOCUMENT`).**\nArray of parameter objects with the content of the message.","items":{"type":"object","properties":{"type":{"type":"string","description":"**Required.**\nComponent parameter type.\n- `text`: Used when the template component type is `BODY`, or the `HEADER` component format is `TEXT`.\n- `image`: Used when the template `HEADER` component is `IMAGE`.\n- `gif`: Used when the template `HEADER` component is `GIF`.\n- `video`: Used when the template `HEADER` component is `VIDEO`.\n- `document`: Used when the template `HEADER` component is `DOCUMENT`.\n- `payload`: Used when the template component button type is `QUICK_REPLY`.\n- `coupon_code`: Used when the template component button type is `COPY_CODE`.\n- `limited_time_offer`: Used when the template component type is `LIMITED_TIME_OFFER`.\n- `action`: Used when the template component button type is `CATALOG`, `MPM`, `FLOW`, or `ORDER_DETAILS`.\n- `order_status`: Used when the template subcategory is `ORDER_STATUS`.\n- `location`: Used when the template `HEADER` component is `LOCATION`.","enum":["text","image","gif","video","document","payload","coupon_code","limited_time_offer","action","order_status","location"],"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"text":{"type":"string","description":"**Required when `type` = `text`.**\nThe message's text. For the header component, the character limit is 60 characters. For the body component, the character limit is 1024 characters.\nFor url buttons, it indicates the developer-provided suffix that is appended to the predefined prefix URL in the template.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].text","typeLabel":"string"},"payload":{"type":"string","description":"Required for `quick_reply` buttons.\nDeveloper-defined payload that is returned when the button is clicked in addition to the display text on the button.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].payload","typeLabel":"string"},"coupon_code":{"type":"string","description":"**Required when `type` = `coupon_code`.**\nThe coupon code to be copied when the customer taps the button.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].coupon_code","typeLabel":"string"},"image":{"type":"object","description":"**Required when the template `HEADER` format is `IMAGE`.**","properties":{"id":{"type":"string","description":"**Use this when media is uploaded to WhatsApp servers.**\n\nProvide the media object ID obtained from WhatsApp media upload API (https://docs.ycloud.com/reference/whatsapp_media-upload#/).\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].image.id","typeLabel":"string"},"link":{"type":"string","description":"**Use this when sending media directly from your server.**\n\nThe protocol and URL of the media to be sent. Use only with HTTP/HTTPS URLs.\n\nNote: WhatsApp Cloud API caches media resources for 10 minutes. To ensure latest content, add random query strings to the URL.\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence and `link` will be ignored.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].image.link","typeLabel":"string"},"caption":{"type":"string","description":"Describes the specified `image`, `gif`, `video`, or `document` media. Not applicable in the `header` of `template` or `interactive` messages.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].image.caption","typeLabel":"string"},"filename":{"type":"string","description":"Describes the filename for the specific document. Use only with `document` media.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].image.filename","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].image","typeLabel":"object"},"gif":{"type":"object","description":"**Required when the template `HEADER` format is `GIF`.**","properties":{"id":{"type":"string","description":"**Use this when media is uploaded to WhatsApp servers.**\n\nProvide the media object ID obtained from WhatsApp media upload API (https://docs.ycloud.com/reference/whatsapp_media-upload#/).\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].gif.id","typeLabel":"string"},"link":{"type":"string","description":"**Use this when sending media directly from your server.**\n\nThe protocol and URL of the media to be sent. Use only with HTTP/HTTPS URLs.\n\nNote: WhatsApp Cloud API caches media resources for 10 minutes. To ensure latest content, add random query strings to the URL.\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence and `link` will be ignored.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].gif.link","typeLabel":"string"},"caption":{"type":"string","description":"Describes the specified `image`, `gif`, `video`, or `document` media. Not applicable in the `header` of `template` or `interactive` messages.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].gif.caption","typeLabel":"string"},"filename":{"type":"string","description":"Describes the filename for the specific document. Use only with `document` media.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].gif.filename","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].gif","typeLabel":"object"},"video":{"type":"object","description":"**Required when the template `HEADER` format is `VIDEO`.**","properties":{"id":{"type":"string","description":"**Use this when media is uploaded to WhatsApp servers.**\n\nProvide the media object ID obtained from WhatsApp media upload API (https://docs.ycloud.com/reference/whatsapp_media-upload#/).\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].video.id","typeLabel":"string"},"link":{"type":"string","description":"**Use this when sending media directly from your server.**\n\nThe protocol and URL of the media to be sent. Use only with HTTP/HTTPS URLs.\n\nNote: WhatsApp Cloud API caches media resources for 10 minutes. To ensure latest content, add random query strings to the URL.\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence and `link` will be ignored.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].video.link","typeLabel":"string"},"caption":{"type":"string","description":"Describes the specified `image`, `gif`, `video`, or `document` media. Not applicable in the `header` of `template` or `interactive` messages.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].video.caption","typeLabel":"string"},"filename":{"type":"string","description":"Describes the filename for the specific document. Use only with `document` media.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].video.filename","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].video","typeLabel":"object"},"document":{"type":"object","description":"**Required when the template `HEADER` format is `DOCUMENT`.**","properties":{"id":{"type":"string","description":"**Use this when media is uploaded to WhatsApp servers.**\n\nProvide the media object ID obtained from WhatsApp media upload API (https://docs.ycloud.com/reference/whatsapp_media-upload#/).\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].document.id","typeLabel":"string"},"link":{"type":"string","description":"**Use this when sending media directly from your server.**\n\nThe protocol and URL of the media to be sent. Use only with HTTP/HTTPS URLs.\n\nNote: WhatsApp Cloud API caches media resources for 10 minutes. To ensure latest content, add random query strings to the URL.\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence and `link` will be ignored.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].document.link","typeLabel":"string"},"caption":{"type":"string","description":"Describes the specified `image`, `gif`, `video`, or `document` media. Not applicable in the `header` of `template` or `interactive` messages.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].document.caption","typeLabel":"string"},"filename":{"type":"string","description":"Describes the filename for the specific document. Use only with `document` media.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].document.filename","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].document","typeLabel":"object"},"limited_time_offer":{"type":"object","description":"Required if template uses offer expiration details.","properties":{"expiration_time_ms":{"type":"integer","format":"int64","description":"**Required.**\nOffer code expiration time as a UNIX timestamp in milliseconds.","example":"1698562800000","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].limited_time_offer.expiration_time_ms","typeLabel":"integer\u003cint64>"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].limited_time_offer","typeLabel":"object"},"action":{"type":"object","description":"Required if template uses catalog or MPM (multi-product message) buttons.","properties":{"thumbnail_product_retailer_id":{"type":"string","description":"**Optional.**\nUse for catalog and MPM template messages.\nItem SKU number. Labeled as Content ID in the Commerce Manager.\nThe thumbnail of this item will be used as the message's header image.\nIf the `parameters` object is omitted, the product image of the first item in your catalog will be used.","example":"2lc20305pt","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.thumbnail_product_retailer_id","typeLabel":"string"},"sections":{"type":"array","description":"Use for MPM templates.\nProduct sections. You can define up to 10 sections.","maxItems":10,"items":{"type":"object","properties":{"title":{"type":"string","description":"Section title text.\nMaximum 24 characters. Markdown is not supported.","maxLength":24,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.sections.items.[INDEX].title","typeLabel":"string"},"product_items":{"type":"array","description":"Array of product SKU numbers. There is a minimum of 1 product per section and a maximum of 30 products across all sections.","minItems":1,"maxItems":30,"items":{"type":"object","properties":{"product_retailer_id":{"type":"string","description":"SKU number of the item you want to appear in the section.\nSKU numbers are labeled as **Content ID** in the [Commerce Manager](https://business.facebook.com/commerce).","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.sections.items.[INDEX].product_items.items.[INDEX].product_retailer_id","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.sections.items.[INDEX].product_items.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.sections.items.[INDEX].product_items","typeLabel":"object[]"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.sections.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.sections","typeLabel":"object[]"},"flow_token":{"type":"string","description":"Use for `FLOW` buttons.\nFlow token that is generated by the business to serve as an identifier. Defaults to `unused`.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.flow_token","typeLabel":"string"},"flow_action_data":{"type":"object","additionalProperties":{"type":"object","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.flow_action_data.additionalProperties","typeLabel":"object"},"description":"Use for `FLOW` buttons.\nJSON object with the data payload for the first screen.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.flow_action_data","typeLabel":"object"},"order_details":{"type":"object","description":"Required for `order_details` buttons.","required":["currency","order","reference_id","total_amount","type","payment_settings"],"properties":{"currency":{"type":"string","description":"The currency for this order.\nCurrently the only supported value is `INR`.","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.currency","typeLabel":"string"},"order":{"type":"object","description":"Provides order `status`, `items`, `subtotal`, `tax`, etc.","properties":{"status":{"type":"string","description":"Only supported value in the `order_details` message is `pending`.\nIn an `order_status` message, `status` can be: `pending`, `processing`, `partially_shipped`, `shipped`, `completed`, or `canceled`.","enum":["pending","processing","partially_shipped","shipped","completed","canceled"],"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.status","typeLabel":"enum\u003cstring>"},"type":{"type":"string","description":"Only supported value is `quick_pay`.\nWhen this field is passed in we hide the \"Review and Pay\" button and only show the \"Pay Now\" button in the order details bubble.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.type","typeLabel":"string"},"catalog_id":{"type":"string","description":"Unique identifier of the Facebook catalog being used by the business.\nIf you do not provide this field, you must provide the following fields inside the items object: `country_of_origin`, `importer_name`, and `importer_address`.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.catalog_id","typeLabel":"string"},"items":{"type":"array","description":"Array of items in the order.","items":{"type":"object","required":["name","amount","quantity"],"properties":{"name":{"type":"string","description":"The item's name to be displayed to the user. Cannot exceed 60 characters.","maxLength":60,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].name","typeLabel":"string"},"amount":{"type":"object","description":"The price per item.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].amount.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].amount.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].amount.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].amount.discount_program_name","typeLabel":"string"}},"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].amount","typeLabel":"object"},"quantity":{"type":"integer","format":"int32","description":"The number of items in the order.","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].quantity","typeLabel":"integer\u003cint32>"},"retailer_id":{"type":"string","description":"Content ID for an item in the order from your catalog.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].retailer_id","typeLabel":"string"},"image":{"type":"object","description":"Custom image for the item to be displayed to the user.","properties":{"id":{"type":"string","description":"**Use this when media is uploaded to WhatsApp servers.**\n\nProvide the media object ID obtained from WhatsApp media upload API (https://docs.ycloud.com/reference/whatsapp_media-upload#/).\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].image.id","typeLabel":"string"},"link":{"type":"string","description":"**Use this when sending media directly from your server.**\n\nThe protocol and URL of the media to be sent. Use only with HTTP/HTTPS URLs.\n\nNote: WhatsApp Cloud API caches media resources for 10 minutes. To ensure latest content, add random query strings to the URL.\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence and `link` will be ignored.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].image.link","typeLabel":"string"},"caption":{"type":"string","description":"Describes the specified `image`, `gif`, `video`, or `document` media. Not applicable in the `header` of `template` or `interactive` messages.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].image.caption","typeLabel":"string"},"filename":{"type":"string","description":"Describes the filename for the specific document. Use only with `document` media.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].image.filename","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].image","typeLabel":"object"},"sale_amount":{"type":"object","description":"The discounted price per item. This should be less than the original amount. If included, this field is used to calculate the subtotal amount.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].sale_amount.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].sale_amount.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].sale_amount.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].sale_amount.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].sale_amount","typeLabel":"object"},"country_of_origin":{"type":"string","description":"Required if `catalog_id` is not present.\nThe country of origin of the product.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].country_of_origin","typeLabel":"string"},"importer_name":{"type":"string","description":"Required if `catalog_id` is not present.\nName of the importer company.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].importer_name","typeLabel":"string"},"importer_address":{"type":"string","description":"Required if `catalog_id` is not present.\nAddress of importer company.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].importer_address","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items","typeLabel":"object[]"},"subtotal":{"type":"object","description":"The value **must be equal** to sum of `order.amount.value` * `order.amount.quantity`.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.subtotal.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.subtotal.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.subtotal.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.subtotal.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.subtotal","typeLabel":"object"},"tax":{"type":"object","description":"The tax information for this order.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.tax.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.tax.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.tax.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.tax.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.tax","typeLabel":"object"},"shipping":{"type":"object","description":"The shipping cost of the order.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.shipping.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.shipping.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.shipping.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.shipping.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.shipping","typeLabel":"object"},"discount":{"type":"object","description":"The discount amount for this order.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.discount.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.discount.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.discount.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.discount.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.discount","typeLabel":"object"},"expiration":{"type":"object","description":"Expiration for this order.","required":["timestamp"],"properties":{"timestamp":{"type":"string","description":"A string of UTC timestamp in seconds of time when order should expire. Minimum threshold is 300 seconds.","example":"1727438564","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.expiration.timestamp","typeLabel":"string"},"description":{"type":"string","description":"Text explanation for expiration.","maxLength":120,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.expiration.description","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.expiration","typeLabel":"object"},"description":{"type":"string","description":"**Optional.**\nText for sharing status related information. Could be useful while sending cancellation. Max character limit is 120 characters.","maxLength":120,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.description","typeLabel":"string"}},"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.order","typeLabel":"object"},"reference_id":{"type":"string","description":"Unique identifier for the order provided by the business. It is case sensitive and cannot be an empty string and can only contain English letters, numbers, underscores, dashes, or dots, and should not exceed 35 characters.\n\nThe `reference_id` must be unique for each order_details message for a given business. If there is a need to send multiple order_details messages for the same order, it is recommended to include a sequence number in the reference_id (for example, \"BM345A-12\") to ensure reference_id uniqueness.","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.reference_id","typeLabel":"string"},"total_amount":{"type":"object","description":"The total amount of the order.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.total_amount.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.total_amount.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.total_amount.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.total_amount.discount_program_name","typeLabel":"string"}},"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.total_amount","typeLabel":"object"},"type":{"type":"string","description":"The type of goods being paid for in this order. Current supported options are `digital-goods` and `physical-goods`.","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.type","typeLabel":"string"},"payment_settings":{"type":"array","description":"Payment settings for the order.","items":{"type":"object","description":"Payment settings for the order.","required":["type","payment_gateway"],"properties":{"type":{"type":"string","description":"Must be set to `payment_gateway`.","example":"payment_gateway","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].type","typeLabel":"string"},"payment_gateway":{"type":"object","description":"An object that describes payment account information.","required":["type","configuration_name"],"properties":{"type":{"type":"string","description":"Payment type.\nMust set this to `billdesk`, `razorpay`, `payu`, or `zaakpay`, if you have linked your BillDesk, Razorpay, PayU, or Zaakpay payment gateway to accept payments.","enum":["billdesk","razorpay","payu","zaakpay"],"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.type","typeLabel":"enum\u003cstring>"},"configuration_name":{"type":"string","description":"The name of the pre-configured payment configuration to use for this order and must not exceed 60 characters.\nThis value must match with a payment configuration set up on the WhatsApp Business Manager.","maxLength":60,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.configuration_name","typeLabel":"string"},"billdesk":{"type":"object","description":"Additional info for BillDesk.\nUser-defined fields (extra) are used to store any information corresponding to a particular order. Each extra field has a maximum character limit of 120.","properties":{"additional_info1":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.billdesk.additional_info1","typeLabel":"string"},"additional_info2":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.billdesk.additional_info2","typeLabel":"string"},"additional_info3":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.billdesk.additional_info3","typeLabel":"string"},"additional_info4":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.billdesk.additional_info4","typeLabel":"string"},"additional_info5":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.billdesk.additional_info5","typeLabel":"string"},"additional_info6":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.billdesk.additional_info6","typeLabel":"string"},"additional_info7":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.billdesk.additional_info7","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.billdesk","typeLabel":"object"},"payu":{"type":"object","description":"Additional info for PayU.\nUser-defined fields (udf) are used to store any information corresponding to a particular order. Each UDF field has a maximum character limit of 255.","properties":{"udf1":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.payu.udf1","typeLabel":"string"},"udf2":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.payu.udf2","typeLabel":"string"},"udf3":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.payu.udf3","typeLabel":"string"},"udf4":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.payu.udf4","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.payu","typeLabel":"object"},"razorpay":{"type":"object","description":"Additional info for Razorpay.","properties":{"receipt":{"type":"string","description":"Receipt number that corresponds to this order, set for your internal reference.\nMaximum length of 40 characters supported with minimum length greater than 0 characters.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.razorpay.receipt","typeLabel":"string"},"notes":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.razorpay.notes.additionalProperties","typeLabel":"string"},"description":"The object can be key value pairs with maximum 15 keys and each value limits to 256 characters.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.razorpay.notes","typeLabel":"object"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.razorpay","typeLabel":"object"},"zaakpay":{"type":"object","description":"Additional info for Zaakpay.\nUser-defined fields (extra) are used to store any information corresponding to a particular order. Each extra field has a maximum character limit of 180.","properties":{"extra1":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.zaakpay.extra1","typeLabel":"string"},"extra2":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.zaakpay.extra2","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.zaakpay","typeLabel":"object"}},"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway","typeLabel":"object"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings","typeLabel":"object[]"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action.order_details","typeLabel":"object"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].action","typeLabel":"object"},"order_status":{"type":"object","properties":{"reference_id":{"type":"string","description":"Unique identifier for the order provided by the business.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.reference_id","typeLabel":"string"},"order":{"type":"object","description":"Provides only `status` and `description` of this order for `order_status` messages.","properties":{"status":{"type":"string","description":"Only supported value in the `order_details` message is `pending`.\nIn an `order_status` message, `status` can be: `pending`, `processing`, `partially_shipped`, `shipped`, `completed`, or `canceled`.","enum":["pending","processing","partially_shipped","shipped","completed","canceled"],"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.status","typeLabel":"enum\u003cstring>"},"type":{"type":"string","description":"Only supported value is `quick_pay`.\nWhen this field is passed in we hide the \"Review and Pay\" button and only show the \"Pay Now\" button in the order details bubble.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.type","typeLabel":"string"},"catalog_id":{"type":"string","description":"Unique identifier of the Facebook catalog being used by the business.\nIf you do not provide this field, you must provide the following fields inside the items object: `country_of_origin`, `importer_name`, and `importer_address`.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.catalog_id","typeLabel":"string"},"items":{"type":"array","description":"Array of items in the order.","items":{"type":"object","required":["name","amount","quantity"],"properties":{"name":{"type":"string","description":"The item's name to be displayed to the user. Cannot exceed 60 characters.","maxLength":60,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].name","typeLabel":"string"},"amount":{"type":"object","description":"The price per item.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].amount.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].amount.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].amount.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].amount.discount_program_name","typeLabel":"string"}},"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].amount","typeLabel":"object"},"quantity":{"type":"integer","format":"int32","description":"The number of items in the order.","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].quantity","typeLabel":"integer\u003cint32>"},"retailer_id":{"type":"string","description":"Content ID for an item in the order from your catalog.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].retailer_id","typeLabel":"string"},"image":{"type":"object","description":"Custom image for the item to be displayed to the user.","properties":{"id":{"type":"string","description":"**Use this when media is uploaded to WhatsApp servers.**\n\nProvide the media object ID obtained from WhatsApp media upload API (https://docs.ycloud.com/reference/whatsapp_media-upload#/).\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].image.id","typeLabel":"string"},"link":{"type":"string","description":"**Use this when sending media directly from your server.**\n\nThe protocol and URL of the media to be sent. Use only with HTTP/HTTPS URLs.\n\nNote: WhatsApp Cloud API caches media resources for 10 minutes. To ensure latest content, add random query strings to the URL.\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence and `link` will be ignored.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].image.link","typeLabel":"string"},"caption":{"type":"string","description":"Describes the specified `image`, `gif`, `video`, or `document` media. Not applicable in the `header` of `template` or `interactive` messages.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].image.caption","typeLabel":"string"},"filename":{"type":"string","description":"Describes the filename for the specific document. Use only with `document` media.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].image.filename","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].image","typeLabel":"object"},"sale_amount":{"type":"object","description":"The discounted price per item. This should be less than the original amount. If included, this field is used to calculate the subtotal amount.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].sale_amount.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].sale_amount.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].sale_amount.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].sale_amount.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].sale_amount","typeLabel":"object"},"country_of_origin":{"type":"string","description":"Required if `catalog_id` is not present.\nThe country of origin of the product.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].country_of_origin","typeLabel":"string"},"importer_name":{"type":"string","description":"Required if `catalog_id` is not present.\nName of the importer company.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].importer_name","typeLabel":"string"},"importer_address":{"type":"string","description":"Required if `catalog_id` is not present.\nAddress of importer company.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].importer_address","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items","typeLabel":"object[]"},"subtotal":{"type":"object","description":"The value **must be equal** to sum of `order.amount.value` * `order.amount.quantity`.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.subtotal.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.subtotal.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.subtotal.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.subtotal.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.subtotal","typeLabel":"object"},"tax":{"type":"object","description":"The tax information for this order.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.tax.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.tax.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.tax.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.tax.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.tax","typeLabel":"object"},"shipping":{"type":"object","description":"The shipping cost of the order.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.shipping.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.shipping.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.shipping.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.shipping.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.shipping","typeLabel":"object"},"discount":{"type":"object","description":"The discount amount for this order.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.discount.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.discount.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.discount.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.discount.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.discount","typeLabel":"object"},"expiration":{"type":"object","description":"Expiration for this order.","required":["timestamp"],"properties":{"timestamp":{"type":"string","description":"A string of UTC timestamp in seconds of time when order should expire. Minimum threshold is 300 seconds.","example":"1727438564","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.expiration.timestamp","typeLabel":"string"},"description":{"type":"string","description":"Text explanation for expiration.","maxLength":120,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.expiration.description","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.expiration","typeLabel":"object"},"description":{"type":"string","description":"**Optional.**\nText for sharing status related information. Could be useful while sending cancellation. Max character limit is 120 characters.","maxLength":120,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order.description","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status.order","typeLabel":"object"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].order_status","typeLabel":"object"},"location":{"type":"object","description":"**Required when `type` = `location`.**","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","format":"double","description":"Latitude of the location.","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].location.latitude","typeLabel":"number\u003cdouble>"},"longitude":{"type":"number","format":"double","description":"Longitude of the location.","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].location.longitude","typeLabel":"number\u003cdouble>"},"name":{"type":"string","description":"Name of the location.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].location.name","typeLabel":"string"},"address":{"type":"string","description":"Address of the location. Only displayed if `name` is present.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].location.address","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX].location","typeLabel":"object"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].parameters","typeLabel":"object[]"},"cards":{"type":"array","description":"Use for `carousel` components. Provides card components containing the parameters of the message.","items":{"type":"object","description":"Card component containing the parameters of the message.","properties":{"card_index":{"type":"integer","format":"int32","description":"**Required.**\nZero-indexed order in which card appears within the card carousel. 0 indicates first card, 1 indicates second card, etc.","minimum":0,"maximum":9,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].card_index","typeLabel":"integer\u003cint32>"},"components":{"type":"array","description":"Card component.","items":{"type":"object","description":"Card component object containing the parameters of the message.","required":["type"],"properties":{"type":{"type":"string","description":"Component type.","enum":["header","body","button"],"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"sub_type":{"type":"string","description":"**Required when type is `button`.**\nType of button.\n- `quick_reply`: Refers to a previously created quick reply button that allows for the customer to return a predefined message.\n- `url`: Refers to a previously created url button that allows the customer to visit the URL generated by appending the text parameter to the predefined prefix URL in the template.","enum":["quick_reply","url"],"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].sub_type","typeLabel":"enum\u003cstring>"},"index":{"type":"integer","format":"int32","minimum":0,"maximum":9,"description":"**Required when `type` = `button`. Not used for the other types.**\nIndicates order in which button should appear, if the template uses multiple buttons.\nButtons are zero-indexed, so setting value to 0 will cause the button to appear first, and another button with an index of 1 will appear next, etc.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].index","typeLabel":"integer\u003cint32>"},"parameters":{"type":"array","description":"**Required when `type` = `button`, or there are variables in the corresponding template component, or the card component `HEADER` format is media (`IMAGE`, `VIDEO`).**\nArray of parameter objects with the content of the message.","items":{"type":"object","properties":{"type":{"type":"string","description":"**Required.**\nComponent parameter type.\n- `text`: Used when the template component type is `BODY`, or the `HEADER` component format is `TEXT`.\n- `image`: Used when the template `HEADER` component is `IMAGE`.\n- `gif`: Used when the template `HEADER` component is `GIF`.\n- `video`: Used when the template `HEADER` component is `VIDEO`.\n- `document`: Used when the template `HEADER` component is `DOCUMENT`.\n- `payload`: Used when the template component button type is `QUICK_REPLY`.\n- `coupon_code`: Used when the template component button type is `COPY_CODE`.\n- `limited_time_offer`: Used when the template component type is `LIMITED_TIME_OFFER`.\n- `action`: Used when the template component button type is `CATALOG`, `MPM`, `FLOW`, or `ORDER_DETAILS`.\n- `order_status`: Used when the template subcategory is `ORDER_STATUS`.\n- `location`: Used when the template `HEADER` component is `LOCATION`.","enum":["text","image","gif","video","document","payload","coupon_code","limited_time_offer","action","order_status","location"],"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"text":{"type":"string","description":"**Required when `type` = `text`.**\nThe message's text. For the header component, the character limit is 60 characters. For the body component, the character limit is 1024 characters.\nFor url buttons, it indicates the developer-provided suffix that is appended to the predefined prefix URL in the template.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].text","typeLabel":"string"},"payload":{"type":"string","description":"Required for `quick_reply` buttons.\nDeveloper-defined payload that is returned when the button is clicked in addition to the display text on the button.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].payload","typeLabel":"string"},"coupon_code":{"type":"string","description":"**Required when `type` = `coupon_code`.**\nThe coupon code to be copied when the customer taps the button.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].coupon_code","typeLabel":"string"},"image":{"type":"object","description":"**Required when the template `HEADER` format is `IMAGE`.**","properties":{"id":{"type":"string","description":"**Use this when media is uploaded to WhatsApp servers.**\n\nProvide the media object ID obtained from WhatsApp media upload API (https://docs.ycloud.com/reference/whatsapp_media-upload#/).\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].image.id","typeLabel":"string"},"link":{"type":"string","description":"**Use this when sending media directly from your server.**\n\nThe protocol and URL of the media to be sent. Use only with HTTP/HTTPS URLs.\n\nNote: WhatsApp Cloud API caches media resources for 10 minutes. To ensure latest content, add random query strings to the URL.\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence and `link` will be ignored.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].image.link","typeLabel":"string"},"caption":{"type":"string","description":"Describes the specified `image`, `gif`, `video`, or `document` media. Not applicable in the `header` of `template` or `interactive` messages.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].image.caption","typeLabel":"string"},"filename":{"type":"string","description":"Describes the filename for the specific document. Use only with `document` media.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].image.filename","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].image","typeLabel":"object"},"gif":{"type":"object","description":"**Required when the template `HEADER` format is `GIF`.**","properties":{"id":{"type":"string","description":"**Use this when media is uploaded to WhatsApp servers.**\n\nProvide the media object ID obtained from WhatsApp media upload API (https://docs.ycloud.com/reference/whatsapp_media-upload#/).\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].gif.id","typeLabel":"string"},"link":{"type":"string","description":"**Use this when sending media directly from your server.**\n\nThe protocol and URL of the media to be sent. Use only with HTTP/HTTPS URLs.\n\nNote: WhatsApp Cloud API caches media resources for 10 minutes. To ensure latest content, add random query strings to the URL.\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence and `link` will be ignored.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].gif.link","typeLabel":"string"},"caption":{"type":"string","description":"Describes the specified `image`, `gif`, `video`, or `document` media. Not applicable in the `header` of `template` or `interactive` messages.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].gif.caption","typeLabel":"string"},"filename":{"type":"string","description":"Describes the filename for the specific document. Use only with `document` media.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].gif.filename","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].gif","typeLabel":"object"},"video":{"type":"object","description":"**Required when the template `HEADER` format is `VIDEO`.**","properties":{"id":{"type":"string","description":"**Use this when media is uploaded to WhatsApp servers.**\n\nProvide the media object ID obtained from WhatsApp media upload API (https://docs.ycloud.com/reference/whatsapp_media-upload#/).\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].video.id","typeLabel":"string"},"link":{"type":"string","description":"**Use this when sending media directly from your server.**\n\nThe protocol and URL of the media to be sent. Use only with HTTP/HTTPS URLs.\n\nNote: WhatsApp Cloud API caches media resources for 10 minutes. To ensure latest content, add random query strings to the URL.\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence and `link` will be ignored.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].video.link","typeLabel":"string"},"caption":{"type":"string","description":"Describes the specified `image`, `gif`, `video`, or `document` media. Not applicable in the `header` of `template` or `interactive` messages.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].video.caption","typeLabel":"string"},"filename":{"type":"string","description":"Describes the filename for the specific document. Use only with `document` media.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].video.filename","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].video","typeLabel":"object"},"document":{"type":"object","description":"**Required when the template `HEADER` format is `DOCUMENT`.**","properties":{"id":{"type":"string","description":"**Use this when media is uploaded to WhatsApp servers.**\n\nProvide the media object ID obtained from WhatsApp media upload API (https://docs.ycloud.com/reference/whatsapp_media-upload#/).\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].document.id","typeLabel":"string"},"link":{"type":"string","description":"**Use this when sending media directly from your server.**\n\nThe protocol and URL of the media to be sent. Use only with HTTP/HTTPS URLs.\n\nNote: WhatsApp Cloud API caches media resources for 10 minutes. To ensure latest content, add random query strings to the URL.\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence and `link` will be ignored.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].document.link","typeLabel":"string"},"caption":{"type":"string","description":"Describes the specified `image`, `gif`, `video`, or `document` media. Not applicable in the `header` of `template` or `interactive` messages.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].document.caption","typeLabel":"string"},"filename":{"type":"string","description":"Describes the filename for the specific document. Use only with `document` media.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].document.filename","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].document","typeLabel":"object"},"limited_time_offer":{"type":"object","description":"Required if template uses offer expiration details.","properties":{"expiration_time_ms":{"type":"integer","format":"int64","description":"**Required.**\nOffer code expiration time as a UNIX timestamp in milliseconds.","example":"1698562800000","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].limited_time_offer.expiration_time_ms","typeLabel":"integer\u003cint64>"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].limited_time_offer","typeLabel":"object"},"action":{"type":"object","description":"Required if template uses catalog or MPM (multi-product message) buttons.","properties":{"thumbnail_product_retailer_id":{"type":"string","description":"**Optional.**\nUse for catalog and MPM template messages.\nItem SKU number. Labeled as Content ID in the Commerce Manager.\nThe thumbnail of this item will be used as the message's header image.\nIf the `parameters` object is omitted, the product image of the first item in your catalog will be used.","example":"2lc20305pt","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.thumbnail_product_retailer_id","typeLabel":"string"},"sections":{"type":"array","description":"Use for MPM templates.\nProduct sections. You can define up to 10 sections.","maxItems":10,"items":{"type":"object","properties":{"title":{"type":"string","description":"Section title text.\nMaximum 24 characters. Markdown is not supported.","maxLength":24,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.sections.items.[INDEX].title","typeLabel":"string"},"product_items":{"type":"array","description":"Array of product SKU numbers. There is a minimum of 1 product per section and a maximum of 30 products across all sections.","minItems":1,"maxItems":30,"items":{"type":"object","properties":{"product_retailer_id":{"type":"string","description":"SKU number of the item you want to appear in the section.\nSKU numbers are labeled as **Content ID** in the [Commerce Manager](https://business.facebook.com/commerce).","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.sections.items.[INDEX].product_items.items.[INDEX].product_retailer_id","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.sections.items.[INDEX].product_items.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.sections.items.[INDEX].product_items","typeLabel":"object[]"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.sections.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.sections","typeLabel":"object[]"},"flow_token":{"type":"string","description":"Use for `FLOW` buttons.\nFlow token that is generated by the business to serve as an identifier. Defaults to `unused`.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.flow_token","typeLabel":"string"},"flow_action_data":{"type":"object","additionalProperties":{"type":"object","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.flow_action_data.additionalProperties","typeLabel":"object"},"description":"Use for `FLOW` buttons.\nJSON object with the data payload for the first screen.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.flow_action_data","typeLabel":"object"},"order_details":{"type":"object","description":"Required for `order_details` buttons.","required":["currency","order","reference_id","total_amount","type","payment_settings"],"properties":{"currency":{"type":"string","description":"The currency for this order.\nCurrently the only supported value is `INR`.","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.currency","typeLabel":"string"},"order":{"type":"object","description":"Provides order `status`, `items`, `subtotal`, `tax`, etc.","properties":{"status":{"type":"string","description":"Only supported value in the `order_details` message is `pending`.\nIn an `order_status` message, `status` can be: `pending`, `processing`, `partially_shipped`, `shipped`, `completed`, or `canceled`.","enum":["pending","processing","partially_shipped","shipped","completed","canceled"],"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.status","typeLabel":"enum\u003cstring>"},"type":{"type":"string","description":"Only supported value is `quick_pay`.\nWhen this field is passed in we hide the \"Review and Pay\" button and only show the \"Pay Now\" button in the order details bubble.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.type","typeLabel":"string"},"catalog_id":{"type":"string","description":"Unique identifier of the Facebook catalog being used by the business.\nIf you do not provide this field, you must provide the following fields inside the items object: `country_of_origin`, `importer_name`, and `importer_address`.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.catalog_id","typeLabel":"string"},"items":{"type":"array","description":"Array of items in the order.","items":{"type":"object","required":["name","amount","quantity"],"properties":{"name":{"type":"string","description":"The item's name to be displayed to the user. Cannot exceed 60 characters.","maxLength":60,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].name","typeLabel":"string"},"amount":{"type":"object","description":"The price per item.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].amount.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].amount.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].amount.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].amount.discount_program_name","typeLabel":"string"}},"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].amount","typeLabel":"object"},"quantity":{"type":"integer","format":"int32","description":"The number of items in the order.","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].quantity","typeLabel":"integer\u003cint32>"},"retailer_id":{"type":"string","description":"Content ID for an item in the order from your catalog.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].retailer_id","typeLabel":"string"},"image":{"type":"object","description":"Custom image for the item to be displayed to the user.","properties":{"id":{"type":"string","description":"**Use this when media is uploaded to WhatsApp servers.**\n\nProvide the media object ID obtained from WhatsApp media upload API (https://docs.ycloud.com/reference/whatsapp_media-upload#/).\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].image.id","typeLabel":"string"},"link":{"type":"string","description":"**Use this when sending media directly from your server.**\n\nThe protocol and URL of the media to be sent. Use only with HTTP/HTTPS URLs.\n\nNote: WhatsApp Cloud API caches media resources for 10 minutes. To ensure latest content, add random query strings to the URL.\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence and `link` will be ignored.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].image.link","typeLabel":"string"},"caption":{"type":"string","description":"Describes the specified `image`, `gif`, `video`, or `document` media. Not applicable in the `header` of `template` or `interactive` messages.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].image.caption","typeLabel":"string"},"filename":{"type":"string","description":"Describes the filename for the specific document. Use only with `document` media.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].image.filename","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].image","typeLabel":"object"},"sale_amount":{"type":"object","description":"The discounted price per item. This should be less than the original amount. If included, this field is used to calculate the subtotal amount.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].sale_amount.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].sale_amount.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].sale_amount.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].sale_amount.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].sale_amount","typeLabel":"object"},"country_of_origin":{"type":"string","description":"Required if `catalog_id` is not present.\nThe country of origin of the product.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].country_of_origin","typeLabel":"string"},"importer_name":{"type":"string","description":"Required if `catalog_id` is not present.\nName of the importer company.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].importer_name","typeLabel":"string"},"importer_address":{"type":"string","description":"Required if `catalog_id` is not present.\nAddress of importer company.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX].importer_address","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.\\items","typeLabel":"object[]"},"subtotal":{"type":"object","description":"The value **must be equal** to sum of `order.amount.value` * `order.amount.quantity`.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.subtotal.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.subtotal.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.subtotal.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.subtotal.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.subtotal","typeLabel":"object"},"tax":{"type":"object","description":"The tax information for this order.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.tax.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.tax.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.tax.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.tax.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.tax","typeLabel":"object"},"shipping":{"type":"object","description":"The shipping cost of the order.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.shipping.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.shipping.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.shipping.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.shipping.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.shipping","typeLabel":"object"},"discount":{"type":"object","description":"The discount amount for this order.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.discount.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.discount.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.discount.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.discount.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.discount","typeLabel":"object"},"expiration":{"type":"object","description":"Expiration for this order.","required":["timestamp"],"properties":{"timestamp":{"type":"string","description":"A string of UTC timestamp in seconds of time when order should expire. Minimum threshold is 300 seconds.","example":"1727438564","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.expiration.timestamp","typeLabel":"string"},"description":{"type":"string","description":"Text explanation for expiration.","maxLength":120,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.expiration.description","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.expiration","typeLabel":"object"},"description":{"type":"string","description":"**Optional.**\nText for sharing status related information. Could be useful while sending cancellation. Max character limit is 120 characters.","maxLength":120,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order.description","typeLabel":"string"}},"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.order","typeLabel":"object"},"reference_id":{"type":"string","description":"Unique identifier for the order provided by the business. It is case sensitive and cannot be an empty string and can only contain English letters, numbers, underscores, dashes, or dots, and should not exceed 35 characters.\n\nThe `reference_id` must be unique for each order_details message for a given business. If there is a need to send multiple order_details messages for the same order, it is recommended to include a sequence number in the reference_id (for example, \"BM345A-12\") to ensure reference_id uniqueness.","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.reference_id","typeLabel":"string"},"total_amount":{"type":"object","description":"The total amount of the order.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.total_amount.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.total_amount.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.total_amount.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.total_amount.discount_program_name","typeLabel":"string"}},"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.total_amount","typeLabel":"object"},"type":{"type":"string","description":"The type of goods being paid for in this order. Current supported options are `digital-goods` and `physical-goods`.","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.type","typeLabel":"string"},"payment_settings":{"type":"array","description":"Payment settings for the order.","items":{"type":"object","description":"Payment settings for the order.","required":["type","payment_gateway"],"properties":{"type":{"type":"string","description":"Must be set to `payment_gateway`.","example":"payment_gateway","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].type","typeLabel":"string"},"payment_gateway":{"type":"object","description":"An object that describes payment account information.","required":["type","configuration_name"],"properties":{"type":{"type":"string","description":"Payment type.\nMust set this to `billdesk`, `razorpay`, `payu`, or `zaakpay`, if you have linked your BillDesk, Razorpay, PayU, or Zaakpay payment gateway to accept payments.","enum":["billdesk","razorpay","payu","zaakpay"],"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.type","typeLabel":"enum\u003cstring>"},"configuration_name":{"type":"string","description":"The name of the pre-configured payment configuration to use for this order and must not exceed 60 characters.\nThis value must match with a payment configuration set up on the WhatsApp Business Manager.","maxLength":60,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.configuration_name","typeLabel":"string"},"billdesk":{"type":"object","description":"Additional info for BillDesk.\nUser-defined fields (extra) are used to store any information corresponding to a particular order. Each extra field has a maximum character limit of 120.","properties":{"additional_info1":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.billdesk.additional_info1","typeLabel":"string"},"additional_info2":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.billdesk.additional_info2","typeLabel":"string"},"additional_info3":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.billdesk.additional_info3","typeLabel":"string"},"additional_info4":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.billdesk.additional_info4","typeLabel":"string"},"additional_info5":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.billdesk.additional_info5","typeLabel":"string"},"additional_info6":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.billdesk.additional_info6","typeLabel":"string"},"additional_info7":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.billdesk.additional_info7","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.billdesk","typeLabel":"object"},"payu":{"type":"object","description":"Additional info for PayU.\nUser-defined fields (udf) are used to store any information corresponding to a particular order. Each UDF field has a maximum character limit of 255.","properties":{"udf1":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.payu.udf1","typeLabel":"string"},"udf2":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.payu.udf2","typeLabel":"string"},"udf3":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.payu.udf3","typeLabel":"string"},"udf4":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.payu.udf4","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.payu","typeLabel":"object"},"razorpay":{"type":"object","description":"Additional info for Razorpay.","properties":{"receipt":{"type":"string","description":"Receipt number that corresponds to this order, set for your internal reference.\nMaximum length of 40 characters supported with minimum length greater than 0 characters.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.razorpay.receipt","typeLabel":"string"},"notes":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.razorpay.notes.additionalProperties","typeLabel":"string"},"description":"The object can be key value pairs with maximum 15 keys and each value limits to 256 characters.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.razorpay.notes","typeLabel":"object"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.razorpay","typeLabel":"object"},"zaakpay":{"type":"object","description":"Additional info for Zaakpay.\nUser-defined fields (extra) are used to store any information corresponding to a particular order. Each extra field has a maximum character limit of 180.","properties":{"extra1":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.zaakpay.extra1","typeLabel":"string"},"extra2":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.zaakpay.extra2","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway.zaakpay","typeLabel":"object"}},"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX].payment_gateway","typeLabel":"object"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details.payment_settings","typeLabel":"object[]"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action.order_details","typeLabel":"object"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].action","typeLabel":"object"},"order_status":{"type":"object","properties":{"reference_id":{"type":"string","description":"Unique identifier for the order provided by the business.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.reference_id","typeLabel":"string"},"order":{"type":"object","description":"Provides only `status` and `description` of this order for `order_status` messages.","properties":{"status":{"type":"string","description":"Only supported value in the `order_details` message is `pending`.\nIn an `order_status` message, `status` can be: `pending`, `processing`, `partially_shipped`, `shipped`, `completed`, or `canceled`.","enum":["pending","processing","partially_shipped","shipped","completed","canceled"],"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.status","typeLabel":"enum\u003cstring>"},"type":{"type":"string","description":"Only supported value is `quick_pay`.\nWhen this field is passed in we hide the \"Review and Pay\" button and only show the \"Pay Now\" button in the order details bubble.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.type","typeLabel":"string"},"catalog_id":{"type":"string","description":"Unique identifier of the Facebook catalog being used by the business.\nIf you do not provide this field, you must provide the following fields inside the items object: `country_of_origin`, `importer_name`, and `importer_address`.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.catalog_id","typeLabel":"string"},"items":{"type":"array","description":"Array of items in the order.","items":{"type":"object","required":["name","amount","quantity"],"properties":{"name":{"type":"string","description":"The item's name to be displayed to the user. Cannot exceed 60 characters.","maxLength":60,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].name","typeLabel":"string"},"amount":{"type":"object","description":"The price per item.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].amount.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].amount.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].amount.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].amount.discount_program_name","typeLabel":"string"}},"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].amount","typeLabel":"object"},"quantity":{"type":"integer","format":"int32","description":"The number of items in the order.","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].quantity","typeLabel":"integer\u003cint32>"},"retailer_id":{"type":"string","description":"Content ID for an item in the order from your catalog.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].retailer_id","typeLabel":"string"},"image":{"type":"object","description":"Custom image for the item to be displayed to the user.","properties":{"id":{"type":"string","description":"**Use this when media is uploaded to WhatsApp servers.**\n\nProvide the media object ID obtained from WhatsApp media upload API (https://docs.ycloud.com/reference/whatsapp_media-upload#/).\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].image.id","typeLabel":"string"},"link":{"type":"string","description":"**Use this when sending media directly from your server.**\n\nThe protocol and URL of the media to be sent. Use only with HTTP/HTTPS URLs.\n\nNote: WhatsApp Cloud API caches media resources for 10 minutes. To ensure latest content, add random query strings to the URL.\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence and `link` will be ignored.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].image.link","typeLabel":"string"},"caption":{"type":"string","description":"Describes the specified `image`, `gif`, `video`, or `document` media. Not applicable in the `header` of `template` or `interactive` messages.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].image.caption","typeLabel":"string"},"filename":{"type":"string","description":"Describes the filename for the specific document. Use only with `document` media.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].image.filename","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].image","typeLabel":"object"},"sale_amount":{"type":"object","description":"The discounted price per item. This should be less than the original amount. If included, this field is used to calculate the subtotal amount.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].sale_amount.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].sale_amount.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].sale_amount.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].sale_amount.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].sale_amount","typeLabel":"object"},"country_of_origin":{"type":"string","description":"Required if `catalog_id` is not present.\nThe country of origin of the product.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].country_of_origin","typeLabel":"string"},"importer_name":{"type":"string","description":"Required if `catalog_id` is not present.\nName of the importer company.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].importer_name","typeLabel":"string"},"importer_address":{"type":"string","description":"Required if `catalog_id` is not present.\nAddress of importer company.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX].importer_address","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.\\items","typeLabel":"object[]"},"subtotal":{"type":"object","description":"The value **must be equal** to sum of `order.amount.value` * `order.amount.quantity`.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.subtotal.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.subtotal.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.subtotal.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.subtotal.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.subtotal","typeLabel":"object"},"tax":{"type":"object","description":"The tax information for this order.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.tax.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.tax.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.tax.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.tax.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.tax","typeLabel":"object"},"shipping":{"type":"object","description":"The shipping cost of the order.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.shipping.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.shipping.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.shipping.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.shipping.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.shipping","typeLabel":"object"},"discount":{"type":"object","description":"The discount amount for this order.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.discount.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.discount.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.discount.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.discount.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.discount","typeLabel":"object"},"expiration":{"type":"object","description":"Expiration for this order.","required":["timestamp"],"properties":{"timestamp":{"type":"string","description":"A string of UTC timestamp in seconds of time when order should expire. Minimum threshold is 300 seconds.","example":"1727438564","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.expiration.timestamp","typeLabel":"string"},"description":{"type":"string","description":"Text explanation for expiration.","maxLength":120,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.expiration.description","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.expiration","typeLabel":"object"},"description":{"type":"string","description":"**Optional.**\nText for sharing status related information. Could be useful while sending cancellation. Max character limit is 120 characters.","maxLength":120,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order.description","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status.order","typeLabel":"object"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].order_status","typeLabel":"object"},"location":{"type":"object","description":"**Required when `type` = `location`.**","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","format":"double","description":"Latitude of the location.","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].location.latitude","typeLabel":"number\u003cdouble>"},"longitude":{"type":"number","format":"double","description":"Longitude of the location.","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].location.longitude","typeLabel":"number\u003cdouble>"},"name":{"type":"string","description":"Name of the location.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].location.name","typeLabel":"string"},"address":{"type":"string","description":"Address of the location. Only displayed if `name` is present.","uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].location.address","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX].location","typeLabel":"object"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].parameters","typeLabel":"object[]"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX].components","typeLabel":"object[]"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX].cards","typeLabel":"object[]"}},"uniqueKey":"oneOf.2.whatsappMessage.template.components.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappMessage.template.components","typeLabel":"object[]"}},"uniqueKey":"oneOf.2.whatsappMessage.template","typeLabel":"object"},"text":{"type":"object","description":"WhatsApp Message Text Object.","required":["body"],"properties":{"body":{"type":"string","description":"Required for text messages.\nThe text of the text message which can contain URLs which begin with http:// or https:// and formatting. See available formatting options here.\nIf you include URLs in your text and want to include a preview box in text messages (preview_url: true), make sure the URL starts with http:// or https:// — https:// URLs are preferred. You must include a hostname, since IP addresses will not be matched.\nMaximum length: 4096 characters.","maxLength":4096,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.text.body","typeLabel":"string"},"preview_url":{"type":"boolean","description":"By default, WhatsApp recognizes URLs and makes them clickable, but you can also include a preview box with more information about the link. Set this field to true if you want to include a URL preview box.\nThe majority of the time, the receiver will see a URL they can click on when you send an URL, set preview_url to true, and provide a body object with a http or https link.\nURL previews are only rendered after one of the following has happened:\n- The business has sent a message template to the user.\n- The user initiates a conversation with a \"click to chat\" link.\n- The user adds the business phone number to their address book and initiates a conversation.\nDefault: `false`.","uniqueKey":"oneOf.2.whatsappMessage.text.preview_url","typeLabel":"boolean"}},"uniqueKey":"oneOf.2.whatsappMessage.text","typeLabel":"object"},"image":{"type":"object","description":"Use for `image`, `gif`, `video`, `audio`, `document`, or `sticker` messages.\nSee also [Supported Media Types](https://developers.facebook.com/docs/whatsapp/cloud-api/reference/media#supported-media-types).","properties":{"id":{"type":"string","description":"**Use this when media is uploaded to WhatsApp servers.**\n\nProvide the media object ID obtained from WhatsApp media upload API (https://docs.ycloud.com/reference/whatsapp_media-upload#/).\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence.","uniqueKey":"oneOf.2.whatsappMessage.image.id","typeLabel":"string"},"link":{"type":"string","description":"**Use this when sending media directly from your server.**\n\nThe protocol and URL of the media to be sent. Use only with HTTP/HTTPS URLs.\n\nNote: WhatsApp Cloud API caches media resources for 10 minutes. To ensure latest content, add random query strings to the URL.\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence and `link` will be ignored.","uniqueKey":"oneOf.2.whatsappMessage.image.link","typeLabel":"string"},"caption":{"type":"string","description":"Describes the specified `image`, `gif`, `video`, or `document` media. Not applicable in the `header` of `template` or `interactive` messages.","uniqueKey":"oneOf.2.whatsappMessage.image.caption","typeLabel":"string"},"filename":{"type":"string","description":"Describes the filename for the specific document. Use only with `document` media.","uniqueKey":"oneOf.2.whatsappMessage.image.filename","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.image","typeLabel":"object"},"video":{"type":"object","description":"Use for `image`, `gif`, `video`, `audio`, `document`, or `sticker` messages.\nSee also [Supported Media Types](https://developers.facebook.com/docs/whatsapp/cloud-api/reference/media#supported-media-types).","properties":{"id":{"type":"string","description":"**Use this when media is uploaded to WhatsApp servers.**\n\nProvide the media object ID obtained from WhatsApp media upload API (https://docs.ycloud.com/reference/whatsapp_media-upload#/).\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence.","uniqueKey":"oneOf.2.whatsappMessage.video.id","typeLabel":"string"},"link":{"type":"string","description":"**Use this when sending media directly from your server.**\n\nThe protocol and URL of the media to be sent. Use only with HTTP/HTTPS URLs.\n\nNote: WhatsApp Cloud API caches media resources for 10 minutes. To ensure latest content, add random query strings to the URL.\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence and `link` will be ignored.","uniqueKey":"oneOf.2.whatsappMessage.video.link","typeLabel":"string"},"caption":{"type":"string","description":"Describes the specified `image`, `gif`, `video`, or `document` media. Not applicable in the `header` of `template` or `interactive` messages.","uniqueKey":"oneOf.2.whatsappMessage.video.caption","typeLabel":"string"},"filename":{"type":"string","description":"Describes the filename for the specific document. Use only with `document` media.","uniqueKey":"oneOf.2.whatsappMessage.video.filename","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.video","typeLabel":"object"},"audio":{"type":"object","description":"Use for `image`, `gif`, `video`, `audio`, `document`, or `sticker` messages.\nSee also [Supported Media Types](https://developers.facebook.com/docs/whatsapp/cloud-api/reference/media#supported-media-types).","properties":{"id":{"type":"string","description":"**Use this when media is uploaded to WhatsApp servers.**\n\nProvide the media object ID obtained from WhatsApp media upload API (https://docs.ycloud.com/reference/whatsapp_media-upload#/).\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence.","uniqueKey":"oneOf.2.whatsappMessage.audio.id","typeLabel":"string"},"link":{"type":"string","description":"**Use this when sending media directly from your server.**\n\nThe protocol and URL of the media to be sent. Use only with HTTP/HTTPS URLs.\n\nNote: WhatsApp Cloud API caches media resources for 10 minutes. To ensure latest content, add random query strings to the URL.\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence and `link` will be ignored.","uniqueKey":"oneOf.2.whatsappMessage.audio.link","typeLabel":"string"},"caption":{"type":"string","description":"Describes the specified `image`, `gif`, `video`, or `document` media. Not applicable in the `header` of `template` or `interactive` messages.","uniqueKey":"oneOf.2.whatsappMessage.audio.caption","typeLabel":"string"},"filename":{"type":"string","description":"Describes the filename for the specific document. Use only with `document` media.","uniqueKey":"oneOf.2.whatsappMessage.audio.filename","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.audio","typeLabel":"object"},"document":{"type":"object","description":"Use for `image`, `gif`, `video`, `audio`, `document`, or `sticker` messages.\nSee also [Supported Media Types](https://developers.facebook.com/docs/whatsapp/cloud-api/reference/media#supported-media-types).","properties":{"id":{"type":"string","description":"**Use this when media is uploaded to WhatsApp servers.**\n\nProvide the media object ID obtained from WhatsApp media upload API (https://docs.ycloud.com/reference/whatsapp_media-upload#/).\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence.","uniqueKey":"oneOf.2.whatsappMessage.document.id","typeLabel":"string"},"link":{"type":"string","description":"**Use this when sending media directly from your server.**\n\nThe protocol and URL of the media to be sent. Use only with HTTP/HTTPS URLs.\n\nNote: WhatsApp Cloud API caches media resources for 10 minutes. To ensure latest content, add random query strings to the URL.\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence and `link` will be ignored.","uniqueKey":"oneOf.2.whatsappMessage.document.link","typeLabel":"string"},"caption":{"type":"string","description":"Describes the specified `image`, `gif`, `video`, or `document` media. Not applicable in the `header` of `template` or `interactive` messages.","uniqueKey":"oneOf.2.whatsappMessage.document.caption","typeLabel":"string"},"filename":{"type":"string","description":"Describes the filename for the specific document. Use only with `document` media.","uniqueKey":"oneOf.2.whatsappMessage.document.filename","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.document","typeLabel":"object"},"sticker":{"type":"object","description":"Use for `image`, `gif`, `video`, `audio`, `document`, or `sticker` messages.\nSee also [Supported Media Types](https://developers.facebook.com/docs/whatsapp/cloud-api/reference/media#supported-media-types).","properties":{"id":{"type":"string","description":"**Use this when media is uploaded to WhatsApp servers.**\n\nProvide the media object ID obtained from WhatsApp media upload API (https://docs.ycloud.com/reference/whatsapp_media-upload#/).\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence.","uniqueKey":"oneOf.2.whatsappMessage.sticker.id","typeLabel":"string"},"link":{"type":"string","description":"**Use this when sending media directly from your server.**\n\nThe protocol and URL of the media to be sent. Use only with HTTP/HTTPS URLs.\n\nNote: WhatsApp Cloud API caches media resources for 10 minutes. To ensure latest content, add random query strings to the URL.\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence and `link` will be ignored.","uniqueKey":"oneOf.2.whatsappMessage.sticker.link","typeLabel":"string"},"caption":{"type":"string","description":"Describes the specified `image`, `gif`, `video`, or `document` media. Not applicable in the `header` of `template` or `interactive` messages.","uniqueKey":"oneOf.2.whatsappMessage.sticker.caption","typeLabel":"string"},"filename":{"type":"string","description":"Describes the filename for the specific document. Use only with `document` media.","uniqueKey":"oneOf.2.whatsappMessage.sticker.filename","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.sticker","typeLabel":"object"},"location":{"type":"object","description":"Use for `location` messages.","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","format":"double","description":"Latitude of the location.","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.location.latitude","typeLabel":"number\u003cdouble>"},"longitude":{"type":"number","format":"double","description":"Longitude of the location.","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.location.longitude","typeLabel":"number\u003cdouble>"},"name":{"type":"string","description":"Name of the location.","uniqueKey":"oneOf.2.whatsappMessage.location.name","typeLabel":"string"},"address":{"type":"string","description":"Address of the location. Only displayed if `name` is present.","uniqueKey":"oneOf.2.whatsappMessage.location.address","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.location","typeLabel":"object"},"interactive":{"type":"object","description":"Use for `interactive` messages.","properties":{"type":{"type":"string","description":"**Required.**\nThe type of interactive message you want to send.\n- `button`: Use for Reply Buttons.\n- `list`: Use for List Messages.\n- `cta_url`: Use for Call-To-Action (CTA) URL Button Messages.\n- `product`: Use for Single Product Messages.\n- `product_list`: Use for Multi-Product Messages.\n- `catalog_message`: Use for Catalog Messages.\n- `location_request_message`: Use for Location Request Messages.\n- `order_details`: Use for Order Details Messages.\n- `order_status`: Use for Order Status Messages.\n- `voice_call`: Use for Voice Call Messages.\n- `flow`: Use for Flow Messages.","enum":["button","list","cta_url","product","product_list","catalog_message","location_request_message","order_details","order_status","voice_call","flow"],"uniqueKey":"oneOf.2.whatsappMessage.interactive.type","typeLabel":"enum\u003cstring>"},"action":{"type":"object","description":"**Required.**\nAction you want the user to perform after reading the `interactive` message.","properties":{"buttons":{"type":"array","description":"Required for Reply Buttons. You can have up to 3 buttons.","maxItems":3,"items":{"type":"object","description":"A button object in `interactive` messages.","properties":{"type":{"type":"string","description":"Only supported type is `reply` (for Reply Button).","enum":["reply"],"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.buttons.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"reply":{"type":"object","properties":{"title":{"type":"string","description":"Button title. It cannot be an empty string and must be unique within the message. Emojis are supported, markdown is not. Maximum length: 20 characters.","maxLength":20,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.buttons.items.[INDEX].reply.title","typeLabel":"string"},"id":{"type":"string","description":"Unique identifier for your button. This ID is returned in the webhook when the button is clicked by the user. Maximum length: 256 characters. You cannot have leading or trailing spaces when setting the ID.","maxLength":256,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.buttons.items.[INDEX].reply.id","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.buttons.items.[INDEX].reply","typeLabel":"object"}},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.buttons.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.buttons","typeLabel":"object[]"},"button":{"type":"string","description":"Required for List Messages. Button content. It cannot be an empty string and must be unique within the message. Emojis are supported, markdown is not. Maximum length: 20 characters.","maxLength":20,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.button","typeLabel":"string"},"catalog_id":{"type":"string","description":"Required for Single Product Messages and Multi-Product Messages.\nUnique identifier of the Facebook catalog linked to your WhatsApp Business Account. This ID can be retrieved via the [Meta Commerce Manager](https://business.facebook.com/commerce).","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.catalog_id","typeLabel":"string"},"product_retailer_id":{"type":"string","description":"Required for Single Product Messages and Multi-Product Messages.\nUnique identifier of the product in a catalog.","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.product_retailer_id","typeLabel":"string"},"sections":{"type":"array","description":"Required for List Messages and Multi-Product Messages.\nArray of section objects. Minimum of 1, maximum of 10.","minItems":1,"maxItems":10,"items":{"type":"object","description":"WhatsApp Message Interactive Section Object.","properties":{"title":{"type":"string","description":"**Required if the message has more than one section.**\nTitle of the section. Maximum length: 24 characters.","maxLength":24,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.sections.items.[INDEX].title","typeLabel":"string"},"rows":{"type":"array","description":"Contains a list of rows. You can have a total of 10 rows across your sections.\nEach row must have a title (Maximum length: 24 characters) and an ID (Maximum length: 200 characters). You can add a description (Maximum length: 72 characters), but it is optional.","maxItems":10,"items":{"type":"object","properties":{"id":{"type":"string","description":"Unique row ID. Maximum length: 200 characters.","maxLength":200,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.sections.items.[INDEX].rows.items.[INDEX].id","typeLabel":"string"},"title":{"type":"string","description":"Row title content. Maximum length: 24 characters.","maxLength":24,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.sections.items.[INDEX].rows.items.[INDEX].title","typeLabel":"string"},"description":{"type":"string","description":"Row description content. Maximum length: 72 characters.","maxLength":72,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.sections.items.[INDEX].rows.items.[INDEX].description","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.sections.items.[INDEX].rows.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.sections.items.[INDEX].rows","typeLabel":"object[]"},"product_items":{"type":"array","description":"Required for Multi-Product Messages.\nArray of product objects. There is a minimum of 1 product per section and a maximum of 30 products across all sections.","minItems":1,"maxItems":30,"items":{"type":"object","properties":{"product_retailer_id":{"type":"string","description":"Required for Multi-Product Messages.\nUnique identifier of the product in a catalog.","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.sections.items.[INDEX].product_items.items.[INDEX].product_retailer_id","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.sections.items.[INDEX].product_items.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.sections.items.[INDEX].product_items","typeLabel":"object[]"}},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.sections.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.sections","typeLabel":"object[]"},"name":{"type":"string","description":"Action name.\nRequired for Call-To-Action (CTA) buttons.\n- `cta_url`: Use for Call-To-Action (CTA) URL buttons.\n- `catalog_message`: Use for Catalog Messages.\n- `send_location`: Use for Location Request buttons.\n- `flow`: Use for Flow buttons.\n- `review_and_pay`: Use for Order Details buttons.\n- `review_order`: Use for Order Status buttons.\n- `voice_call`: Use for Voice Call buttons.","enum":["cta_url","catalog_message","send_location","flow","review_and_pay","review_order","voice_call"],"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.name","typeLabel":"enum\u003cstring>"},"parameters":{"type":"object","description":"Action parameters.\nRequired for Call-To-Action (CTA) buttons.","properties":{"display_text":{"type":"string","description":"Text of the CTA URL button.\nMaximum length: 20 bytes.","maxLength":20,"example":"See Docs","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.display_text","typeLabel":"string"},"url":{"type":"string","description":"URL of the CTA URL button.","example":"https://developers.facebook.com/docs/whatsapp","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.url","typeLabel":"string"},"thumbnail_product_retailer_id":{"type":"string","description":"Item SKU number. Labeled as **Content ID** in the [Commerce Manager](https://business.facebook.com/commerce).\nThe thumbnail of this item will be used as the message's header image.","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.thumbnail_product_retailer_id","typeLabel":"string"},"flow_message_version":{"type":"string","description":"Use for `flow` buttons.\nValue must be \"3\".","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.flow_message_version","typeLabel":"string"},"flow_token":{"type":"string","description":"Use for `flow` buttons.\nFlow token that is generated by the business to serve as an identifier. Defaults to `unused`.","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.flow_token","typeLabel":"string"},"flow_id":{"type":"string","description":"Conditionally required for `flow` buttons. Unique ID of the Flow provided by WhatsApp. Cannot be used with the `flow_name` parameter.","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.flow_id","typeLabel":"string"},"flow_name":{"type":"string","description":"Conditionally required for `flow` buttons.\nThe name of the Flow that you created. Cannot be used with the `flow_id` parameter. Changing the Flow name will require updating this parameter to match the new name.","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.flow_name","typeLabel":"string"},"flow_cta":{"type":"string","description":"Required for `flow` buttons.\nText on the CTA button. For example: \"Open flow!\". Maximum length: 20 characters.","maxLength":20,"example":"Open flow!","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.flow_cta","typeLabel":"string"},"flow_action":{"type":"string","description":"Use for `flow` buttons.\nEither `navigate` or `data_exchange`. Defaults to `navigate`.","example":"navigate","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.flow_action","typeLabel":"string"},"flow_action_payload":{"type":"object","description":"Required if `flow_action` is `navigate`. Should be omitted otherwise.","properties":{"screen":{"type":"string","description":"The ID of the screen displayed first. It needs to be an **entry** screen.","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.flow_action_payload.screen","typeLabel":"string"},"data":{"type":"object","description":"Optional input data for the first screen of the Flow. If provided, this must be a non-empty object.","additionalProperties":{"type":"object","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.flow_action_payload.data.additionalProperties","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.flow_action_payload.data","typeLabel":"object"}},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.flow_action_payload","typeLabel":"object"},"reference_id":{"type":"string","description":"Required for `review_and_pay` buttons.\nUnique identifier for the order provided by the business. It is case sensitive and cannot be an empty string and can only contain English letters, numbers, underscores, dashes, or dots, and should not exceed 35 characters.\n\nThe `reference_id` must be unique for each order_details message for a given business. If there is a need to send multiple order_details messages for the same order, it is recommended to include a sequence number in the reference_id (for example, \"BM345A-12\") to ensure reference_id uniqueness.","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.reference_id","typeLabel":"string"},"type":{"type":"string","description":"Required for `review_and_pay` buttons.\nThe type of goods being paid for in this order. Current supported options are `digital-goods` and `physical-goods`.","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.type","typeLabel":"string"},"beneficiaries":{"type":"array","description":"Required for `review_and_pay` buttons.\nAn array of beneficiaries for this order.\nA beneficiary is an intended recipient for shipping the physical goods in the order.\nBeneficiary information isn't shown to users but is needed for legal and compliance reasons.","items":{"type":"object","description":"A beneficiary is an intended recipient for shipping the physical goods in the order.\nBeneficiary information isn't shown to users but is needed for legal and compliance reasons.","required":["name","address_line1","city","state","country","postal_code"],"properties":{"name":{"type":"string","description":"Name of the individual or business receiving the physical goods. Cannot exceed 200 characters.","maxLength":200,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.beneficiaries.items.[INDEX].name","typeLabel":"string"},"address_line1":{"type":"string","description":"Shipping address (Door/Tower Number, Street Name etc.). Cannot exceed 100 characters.","maxLength":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.beneficiaries.items.[INDEX].address_line1","typeLabel":"string"},"city":{"type":"string","description":"Name of the city.","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.beneficiaries.items.[INDEX].city","typeLabel":"string"},"state":{"type":"string","description":"Name of the state.","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.beneficiaries.items.[INDEX].state","typeLabel":"string"},"country":{"type":"string","description":"Name of the country.\nCurrently the only supported value is `India`.","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.beneficiaries.items.[INDEX].country","typeLabel":"string"},"postal_code":{"type":"string","description":"6-digit zipcode of shipping address.","minLength":6,"maxLength":6,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.beneficiaries.items.[INDEX].postal_code","typeLabel":"string"},"address_line2":{"type":"string","description":"Shipping address (Landmark, Area, etc.). Cannot exceed 100 characters.","maxLength":100,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.beneficiaries.items.[INDEX].address_line2","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.beneficiaries.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.beneficiaries","typeLabel":"object[]"},"currency":{"type":"string","description":"Required for `review_and_pay` buttons.\nThe currency for this order.\nCurrently the only supported value is `INR`.","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.currency","typeLabel":"string"},"total_amount":{"type":"object","description":"Required for `review_and_pay` buttons.\nThe total amount for this order.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.total_amount.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.total_amount.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.total_amount.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.total_amount.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.total_amount","typeLabel":"object"},"order":{"type":"object","description":"Required for `review_and_pay` or `review_order` buttons.\n\nFor `review_and_pay` buttons, provides order `status`, `items`, `subtotal`, `tax`, etc.\n\nFor `review_order` buttons, provides only order `status` and `description`.","properties":{"status":{"type":"string","description":"Only supported value in the `order_details` message is `pending`.\nIn an `order_status` message, `status` can be: `pending`, `processing`, `partially_shipped`, `shipped`, `completed`, or `canceled`.","enum":["pending","processing","partially_shipped","shipped","completed","canceled"],"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.status","typeLabel":"enum\u003cstring>"},"type":{"type":"string","description":"Only supported value is `quick_pay`.\nWhen this field is passed in we hide the \"Review and Pay\" button and only show the \"Pay Now\" button in the order details bubble.","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.type","typeLabel":"string"},"catalog_id":{"type":"string","description":"Unique identifier of the Facebook catalog being used by the business.\nIf you do not provide this field, you must provide the following fields inside the items object: `country_of_origin`, `importer_name`, and `importer_address`.","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.catalog_id","typeLabel":"string"},"items":{"type":"array","description":"Array of items in the order.","items":{"type":"object","required":["name","amount","quantity"],"properties":{"name":{"type":"string","description":"The item's name to be displayed to the user. Cannot exceed 60 characters.","maxLength":60,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].name","typeLabel":"string"},"amount":{"type":"object","description":"The price per item.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].amount.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].amount.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].amount.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].amount.discount_program_name","typeLabel":"string"}},"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].amount","typeLabel":"object"},"quantity":{"type":"integer","format":"int32","description":"The number of items in the order.","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].quantity","typeLabel":"integer\u003cint32>"},"retailer_id":{"type":"string","description":"Content ID for an item in the order from your catalog.","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].retailer_id","typeLabel":"string"},"image":{"type":"object","description":"Custom image for the item to be displayed to the user.","properties":{"id":{"type":"string","description":"**Use this when media is uploaded to WhatsApp servers.**\n\nProvide the media object ID obtained from WhatsApp media upload API (https://docs.ycloud.com/reference/whatsapp_media-upload#/).\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence.","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].image.id","typeLabel":"string"},"link":{"type":"string","description":"**Use this when sending media directly from your server.**\n\nThe protocol and URL of the media to be sent. Use only with HTTP/HTTPS URLs.\n\nNote: WhatsApp Cloud API caches media resources for 10 minutes. To ensure latest content, add random query strings to the URL.\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence and `link` will be ignored.","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].image.link","typeLabel":"string"},"caption":{"type":"string","description":"Describes the specified `image`, `gif`, `video`, or `document` media. Not applicable in the `header` of `template` or `interactive` messages.","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].image.caption","typeLabel":"string"},"filename":{"type":"string","description":"Describes the filename for the specific document. Use only with `document` media.","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].image.filename","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].image","typeLabel":"object"},"sale_amount":{"type":"object","description":"The discounted price per item. This should be less than the original amount. If included, this field is used to calculate the subtotal amount.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].sale_amount.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].sale_amount.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].sale_amount.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].sale_amount.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].sale_amount","typeLabel":"object"},"country_of_origin":{"type":"string","description":"Required if `catalog_id` is not present.\nThe country of origin of the product.","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].country_of_origin","typeLabel":"string"},"importer_name":{"type":"string","description":"Required if `catalog_id` is not present.\nName of the importer company.","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].importer_name","typeLabel":"string"},"importer_address":{"type":"string","description":"Required if `catalog_id` is not present.\nAddress of importer company.","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX].importer_address","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.\\items.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.\\items","typeLabel":"object[]"},"subtotal":{"type":"object","description":"The value **must be equal** to sum of `order.amount.value` * `order.amount.quantity`.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.subtotal.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.subtotal.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.subtotal.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.subtotal.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.subtotal","typeLabel":"object"},"tax":{"type":"object","description":"The tax information for this order.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.tax.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.tax.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.tax.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.tax.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.tax","typeLabel":"object"},"shipping":{"type":"object","description":"The shipping cost of the order.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.shipping.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.shipping.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.shipping.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.shipping.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.shipping","typeLabel":"object"},"discount":{"type":"object","description":"The discount amount for this order.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.discount.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.discount.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.discount.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.discount.discount_program_name","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.discount","typeLabel":"object"},"expiration":{"type":"object","description":"Expiration for this order.","required":["timestamp"],"properties":{"timestamp":{"type":"string","description":"A string of UTC timestamp in seconds of time when order should expire. Minimum threshold is 300 seconds.","example":"1727438564","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.expiration.timestamp","typeLabel":"string"},"description":{"type":"string","description":"Text explanation for expiration.","maxLength":120,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.expiration.description","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.expiration","typeLabel":"object"},"description":{"type":"string","description":"**Optional.**\nText for sharing status related information. Could be useful while sending cancellation. Max character limit is 120 characters.","maxLength":120,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order.description","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.order","typeLabel":"object"},"payment_settings":{"type":"array","description":"Required for `review_and_pay` buttons.\nPayment settings for the order.","items":{"type":"object","description":"Payment settings for the order.","required":["type","payment_gateway"],"properties":{"type":{"type":"string","description":"Must be set to `payment_gateway`.","example":"payment_gateway","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].type","typeLabel":"string"},"payment_gateway":{"type":"object","description":"An object that describes payment account information.","required":["type","configuration_name"],"properties":{"type":{"type":"string","description":"Payment type.\nMust set this to `billdesk`, `razorpay`, `payu`, or `zaakpay`, if you have linked your BillDesk, Razorpay, PayU, or Zaakpay payment gateway to accept payments.","enum":["billdesk","razorpay","payu","zaakpay"],"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.type","typeLabel":"enum\u003cstring>"},"configuration_name":{"type":"string","description":"The name of the pre-configured payment configuration to use for this order and must not exceed 60 characters.\nThis value must match with a payment configuration set up on the WhatsApp Business Manager.","maxLength":60,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.configuration_name","typeLabel":"string"},"billdesk":{"type":"object","description":"Additional info for BillDesk.\nUser-defined fields (extra) are used to store any information corresponding to a particular order. Each extra field has a maximum character limit of 120.","properties":{"additional_info1":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.billdesk.additional_info1","typeLabel":"string"},"additional_info2":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.billdesk.additional_info2","typeLabel":"string"},"additional_info3":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.billdesk.additional_info3","typeLabel":"string"},"additional_info4":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.billdesk.additional_info4","typeLabel":"string"},"additional_info5":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.billdesk.additional_info5","typeLabel":"string"},"additional_info6":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.billdesk.additional_info6","typeLabel":"string"},"additional_info7":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.billdesk.additional_info7","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.billdesk","typeLabel":"object"},"payu":{"type":"object","description":"Additional info for PayU.\nUser-defined fields (udf) are used to store any information corresponding to a particular order. Each UDF field has a maximum character limit of 255.","properties":{"udf1":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.payu.udf1","typeLabel":"string"},"udf2":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.payu.udf2","typeLabel":"string"},"udf3":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.payu.udf3","typeLabel":"string"},"udf4":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.payu.udf4","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.payu","typeLabel":"object"},"razorpay":{"type":"object","description":"Additional info for Razorpay.","properties":{"receipt":{"type":"string","description":"Receipt number that corresponds to this order, set for your internal reference.\nMaximum length of 40 characters supported with minimum length greater than 0 characters.","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.razorpay.receipt","typeLabel":"string"},"notes":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.razorpay.notes.additionalProperties","typeLabel":"string"},"description":"The object can be key value pairs with maximum 15 keys and each value limits to 256 characters.","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.razorpay.notes","typeLabel":"object"}},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.razorpay","typeLabel":"object"},"zaakpay":{"type":"object","description":"Additional info for Zaakpay.\nUser-defined fields (extra) are used to store any information corresponding to a particular order. Each extra field has a maximum character limit of 180.","properties":{"extra1":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.zaakpay.extra1","typeLabel":"string"},"extra2":{"type":"string","uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.zaakpay.extra2","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway.zaakpay","typeLabel":"object"}},"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX].payment_gateway","typeLabel":"object"}},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.payment_settings.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters.payment_settings","typeLabel":"object[]"}},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action.parameters","typeLabel":"object"}},"uniqueKey":"oneOf.2.whatsappMessage.interactive.action","typeLabel":"object"},"body":{"type":"object","description":"Optional for type `product`. Required for other message types.","properties":{"text":{"type":"string","description":"The body content of the message. Emojis and markdown are supported. Maximum length: 1024 characters.","maxLength":1024,"uniqueKey":"oneOf.2.whatsappMessage.interactive.body.text","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.interactive.body","typeLabel":"object"},"header":{"type":"object","description":"Required for type `product_list`. Optional for other types.","properties":{"type":{"type":"string","description":"**Required.**\nThe header type you would like to use.\n- `text`: Used for List Messages, Reply Buttons, and Multi-Product Messages.\n- `video`: Used for Reply Buttons.\n- `image`: Used for Reply Buttons.\n- `document`: Used for Reply Buttons.","enum":["text","image","video","document"],"uniqueKey":"oneOf.2.whatsappMessage.interactive.header.type","typeLabel":"enum\u003cstring>"},"text":{"type":"string","description":"Text for the header. Formatting allows emojis, but not markdown.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.interactive.header.text","typeLabel":"string"},"image":{"type":"object","description":"Use for `image`, `gif`, `video`, `audio`, `document`, or `sticker` messages.\nSee also [Supported Media Types](https://developers.facebook.com/docs/whatsapp/cloud-api/reference/media#supported-media-types).","properties":{"id":{"type":"string","description":"**Use this when media is uploaded to WhatsApp servers.**\n\nProvide the media object ID obtained from WhatsApp media upload API (https://docs.ycloud.com/reference/whatsapp_media-upload#/).\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence.","uniqueKey":"oneOf.2.whatsappMessage.interactive.header.image.id","typeLabel":"string"},"link":{"type":"string","description":"**Use this when sending media directly from your server.**\n\nThe protocol and URL of the media to be sent. Use only with HTTP/HTTPS URLs.\n\nNote: WhatsApp Cloud API caches media resources for 10 minutes. To ensure latest content, add random query strings to the URL.\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence and `link` will be ignored.","uniqueKey":"oneOf.2.whatsappMessage.interactive.header.image.link","typeLabel":"string"},"caption":{"type":"string","description":"Describes the specified `image`, `gif`, `video`, or `document` media. Not applicable in the `header` of `template` or `interactive` messages.","uniqueKey":"oneOf.2.whatsappMessage.interactive.header.image.caption","typeLabel":"string"},"filename":{"type":"string","description":"Describes the filename for the specific document. Use only with `document` media.","uniqueKey":"oneOf.2.whatsappMessage.interactive.header.image.filename","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.interactive.header.image","typeLabel":"object"},"video":{"type":"object","description":"Use for `image`, `gif`, `video`, `audio`, `document`, or `sticker` messages.\nSee also [Supported Media Types](https://developers.facebook.com/docs/whatsapp/cloud-api/reference/media#supported-media-types).","properties":{"id":{"type":"string","description":"**Use this when media is uploaded to WhatsApp servers.**\n\nProvide the media object ID obtained from WhatsApp media upload API (https://docs.ycloud.com/reference/whatsapp_media-upload#/).\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence.","uniqueKey":"oneOf.2.whatsappMessage.interactive.header.video.id","typeLabel":"string"},"link":{"type":"string","description":"**Use this when sending media directly from your server.**\n\nThe protocol and URL of the media to be sent. Use only with HTTP/HTTPS URLs.\n\nNote: WhatsApp Cloud API caches media resources for 10 minutes. To ensure latest content, add random query strings to the URL.\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence and `link` will be ignored.","uniqueKey":"oneOf.2.whatsappMessage.interactive.header.video.link","typeLabel":"string"},"caption":{"type":"string","description":"Describes the specified `image`, `gif`, `video`, or `document` media. Not applicable in the `header` of `template` or `interactive` messages.","uniqueKey":"oneOf.2.whatsappMessage.interactive.header.video.caption","typeLabel":"string"},"filename":{"type":"string","description":"Describes the filename for the specific document. Use only with `document` media.","uniqueKey":"oneOf.2.whatsappMessage.interactive.header.video.filename","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.interactive.header.video","typeLabel":"object"},"document":{"type":"object","description":"Use for `image`, `gif`, `video`, `audio`, `document`, or `sticker` messages.\nSee also [Supported Media Types](https://developers.facebook.com/docs/whatsapp/cloud-api/reference/media#supported-media-types).","properties":{"id":{"type":"string","description":"**Use this when media is uploaded to WhatsApp servers.**\n\nProvide the media object ID obtained from WhatsApp media upload API (https://docs.ycloud.com/reference/whatsapp_media-upload#/).\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence.","uniqueKey":"oneOf.2.whatsappMessage.interactive.header.document.id","typeLabel":"string"},"link":{"type":"string","description":"**Use this when sending media directly from your server.**\n\nThe protocol and URL of the media to be sent. Use only with HTTP/HTTPS URLs.\n\nNote: WhatsApp Cloud API caches media resources for 10 minutes. To ensure latest content, add random query strings to the URL.\n\nNote: Either `id` or `link` must be provided. If both are provided, `id` takes precedence and `link` will be ignored.","uniqueKey":"oneOf.2.whatsappMessage.interactive.header.document.link","typeLabel":"string"},"caption":{"type":"string","description":"Describes the specified `image`, `gif`, `video`, or `document` media. Not applicable in the `header` of `template` or `interactive` messages.","uniqueKey":"oneOf.2.whatsappMessage.interactive.header.document.caption","typeLabel":"string"},"filename":{"type":"string","description":"Describes the filename for the specific document. Use only with `document` media.","uniqueKey":"oneOf.2.whatsappMessage.interactive.header.document.filename","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.interactive.header.document","typeLabel":"object"}},"uniqueKey":"oneOf.2.whatsappMessage.interactive.header","typeLabel":"object"},"footer":{"type":"object","description":"Optional. An object with the footer of the message.","properties":{"text":{"type":"string","description":"The footer content. Emojis and markdown are supported. Links are supported. Maximum length: 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappMessage.interactive.footer.text","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.interactive.footer","typeLabel":"object"}},"uniqueKey":"oneOf.2.whatsappMessage.interactive","typeLabel":"object"},"contacts":{"type":"array","items":{"type":"object","description":"When the message type filed is set to `contacts`, this object is included in the message object.","required":["name"],"properties":{"name":{"type":"object","description":"Full contact name formatted as a name object.","required":["formatted_name"],"properties":{"formatted_name":{"type":"string","description":"Full name, as it normally appears.","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].name.formatted_name","typeLabel":"string"},"first_name":{"type":"string","description":"First name.","uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].name.first_name","typeLabel":"string"},"last_name":{"type":"string","description":"Last name.","uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].name.last_name","typeLabel":"string"},"middle_name":{"type":"string","description":"Middle name.","uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].name.middle_name","typeLabel":"string"},"suffix":{"type":"string","description":"Name suffix.","uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].name.suffix","typeLabel":"string"},"prefix":{"type":"string","description":"Name prefix.","uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].name.prefix","typeLabel":"string"}},"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].name","typeLabel":"object"},"addresses":{"type":"array","items":{"type":"object","description":"Full contact address(es) formatted as an addresses object.","properties":{"street":{"type":"string","description":"Street number and name.","uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].addresses.items.[INDEX].street","typeLabel":"string"},"city":{"type":"string","description":"City name.","uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].addresses.items.[INDEX].city","typeLabel":"string"},"state":{"type":"string","description":"State abbreviation.","uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].addresses.items.[INDEX].state","typeLabel":"string"},"zip":{"type":"string","description":"ZIP code.","uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].addresses.items.[INDEX].zip","typeLabel":"string"},"country":{"type":"string","description":"Full country name.","uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].addresses.items.[INDEX].country","typeLabel":"string"},"country_code":{"type":"string","description":"Two-letter country abbreviation.","uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].addresses.items.[INDEX].country_code","typeLabel":"string"},"type":{"type":"string","description":"Standard values are `HOME` and `WORK`.","example":"WORK","uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].addresses.items.[INDEX].type","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].addresses.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].addresses","typeLabel":"object[]"},"birthday":{"type":"string","description":"`YYYY-MM-DD` formatted string.","example":"2022-09-27","uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].birthday","typeLabel":"string"},"emails":{"type":"array","items":{"type":"object","description":"Contact email address(es) formatted as an emails object.","properties":{"email":{"type":"string","description":"Email address.","uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].emails.items.[INDEX].email","typeLabel":"string"},"type":{"type":"string","description":"Standard values are `HOME` and `WORK`.","example":"WORK","uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].emails.items.[INDEX].type","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].emails.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].emails","typeLabel":"object[]"},"org":{"type":"object","description":"Contact organization information formatted as an org object.","properties":{"company":{"type":"string","description":"Name of the contact's company.","uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].org.company","typeLabel":"string"},"department":{"type":"string","description":"Name of the contact's department.","uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].org.department","typeLabel":"string"},"title":{"type":"string","description":"Contact's business title.","uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].org.title","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].org","typeLabel":"object"},"phones":{"type":"array","description":"Contact phone number(s) formatted as a phone object.","items":{"type":"object","properties":{"phone":{"type":"string","description":"Automatically populated with the `wa_id` value as a formatted phone number.","uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].phones.items.[INDEX].phone","typeLabel":"string"},"type":{"type":"string","description":"Standard Values are `CELL`, `MAIN`, `IPHONE`, `HOME`, and `WORK`.","uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].phones.items.[INDEX].type","typeLabel":"string"},"wa_id":{"type":"string","description":"WhatsApp ID.","uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].phones.items.[INDEX].wa_id","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].phones.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].phones","typeLabel":"object[]"},"urls":{"type":"array","description":"Contact URL(s) formatted as a urls object.","items":{"type":"object","properties":{"url":{"type":"string","description":"URL.","uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].urls.items.[INDEX].url","typeLabel":"string"},"type":{"type":"string","description":"Standard values are `HOME` and `WORK`.","uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].urls.items.[INDEX].type","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].urls.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].urls","typeLabel":"object[]"},"vcard":{"type":"string","description":"Optional vCard supplied with the shared contact payload.","uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].vcard","typeLabel":"string"},"origin":{"type":"string","description":"Set to `contact_request` when the user shared the contact in response to a request-contact-info message.","example":"contact_request","uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX].origin","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.contacts.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappMessage.contacts","typeLabel":"object[]"},"reaction":{"type":"object","description":"When a user reacts to messages with an emoji, the message type is set to `reaction`, and this field is included.","required":["message_id"],"properties":{"message_id":{"type":"string","description":"Specifies the `wamid` of the message received that contained the reaction.","example":"wamid.BgNODYxN...","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.reaction.message_id","typeLabel":"string"},"emoji":{"type":"string","description":"**Required** when you send a `reaction` message. Set it to `\"\"` if you want to remove the emoji.\n**Optional** when you received a message from a user. This field is included when a user reacts to messages with an emoji. Otherwise, it indicates a user removed the emoji.","uniqueKey":"oneOf.2.whatsappMessage.reaction.emoji","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.reaction","typeLabel":"object"},"context":{"type":"object","description":"Used to mention a specific message you are replying to. The reply can be any message type.","properties":{"message_id":{"type":"string","description":"Specifies the `wamid` of the message your are replying to. `wamid` is the original message ID on WhatsApp’s platform.","example":"wamid.BgNODYxN...","uniqueKey":"oneOf.2.whatsappMessage.context.message_id","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage.context","typeLabel":"object"},"externalId":{"type":"string","description":"A unique (recommended) string to reference the object. This can be an order number or similar, and can be used to reconcile the object with your internal systems.","uniqueKey":"oneOf.2.whatsappMessage.externalId","typeLabel":"string"},"category":{"type":"string","description":"The Direct Send category, such as `utility` or `authentication`, when applicable.","example":"utility","uniqueKey":"oneOf.2.whatsappMessage.category","typeLabel":"string"},"ttlSeconds":{"type":"integer","description":"The configured Direct Send message lifetime in seconds, when applicable.","example":600,"uniqueKey":"oneOf.2.whatsappMessage.ttlSeconds","typeLabel":"integer"},"status":{"type":"string","description":"WhatsApp message status. One of `accepted`, `failed`, `sent`, `delivered`, `read`.\n- `accepted`: The messaging request is accepted by our system.\n- `failed`: A message sent by your business failed to send.\n- `sent`: A message sent by your business is in transit within WhatsApp's systems.\n- `delivered`: A message sent by your business was delivered to the user's device.\n- `read`: A message sent by your business was read by the user.","enum":["accepted","failed","sent","delivered","read"],"uniqueKey":"oneOf.2.whatsappMessage.status","typeLabel":"enum\u003cstring>"},"errorCode":{"type":"string","description":"Error code when the message status is `failed`.","example":"INTERNAL_SERVER_ERROR","uniqueKey":"oneOf.2.whatsappMessage.errorCode","typeLabel":"string"},"errorMessage":{"type":"string","description":"Error message when the message status is `failed`.","uniqueKey":"oneOf.2.whatsappMessage.errorMessage","typeLabel":"string"},"createTime":{"type":"string","format":"date-time","description":"The time at which this message is created, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2022-06-01T12:00:00.000Z","uniqueKey":"oneOf.2.whatsappMessage.createTime","typeLabel":"string\u003cdate-time>"},"updateTime":{"type":"string","format":"date-time","description":"The time at which this message is updated, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2022-06-01T12:00:00.000Z","uniqueKey":"oneOf.2.whatsappMessage.updateTime","typeLabel":"string\u003cdate-time>"},"sendTime":{"type":"string","format":"date-time","description":"The time at which this message `status` changed to `sent`, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2022-06-01T12:00:00.000Z","uniqueKey":"oneOf.2.whatsappMessage.sendTime","typeLabel":"string\u003cdate-time>"},"deliverTime":{"type":"string","format":"date-time","description":"The time at which this message `status` changed to `delivered`, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2022-06-01T12:00:00.000Z","uniqueKey":"oneOf.2.whatsappMessage.deliverTime","typeLabel":"string\u003cdate-time>"},"readTime":{"type":"string","format":"date-time","description":"The time at which this message `status` changed to `read`, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2022-06-01T12:00:00.000Z","uniqueKey":"oneOf.2.whatsappMessage.readTime","typeLabel":"string\u003cdate-time>"},"totalPrice":{"type":"number","format":"double","description":"Total price of this message.\n**Note: It's only an estimated price when the `status` is `accepted` or `sent`. It becomes the final price after the message is delivered, i.e., the `status` is `delivered` or `read`.**","example":0.05,"uniqueKey":"oneOf.2.whatsappMessage.totalPrice","typeLabel":"number\u003cdouble>"},"currency":{"type":"string","description":"Price currency. [ISO 4217 currency code](https://en.wikipedia.org/wiki/ISO_4217).","example":"USD","uniqueKey":"oneOf.2.whatsappMessage.currency","typeLabel":"string"},"regionCode":{"type":"string","description":"The [region code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) of the recipient phone number.","example":"US","uniqueKey":"oneOf.2.whatsappMessage.regionCode","typeLabel":"string"},"pricingCategory":{"type":"string","description":"The pricing category of the message.\n**Note: It's only an estimated pricing category when the `status` is `accepted` or `sent`. It becomes final after the message is delivered, i.e., the `status` is `delivered` or `read`.**","enum":["referral_conversion","authentication","authentication_international","marketing","marketing_lite","utility","service"],"uniqueKey":"oneOf.2.whatsappMessage.pricingCategory","typeLabel":"enum\u003cstring>"},"pricingModel":{"type":"string","description":"The pricing model of the message.\n- `PMP`: Per-message pricing applies.\n- `CBP`: Conversation-based pricing applies.","enum":["PMP","CBP"],"uniqueKey":"oneOf.2.whatsappMessage.pricingModel","typeLabel":"enum\u003cstring>"},"pricingType":{"type":"string","description":"The pricing type of the message. This field is only available in PMP (Per-Message Pricing) mode.\n- `regular`: Indicates the message is billable.\n- `free_customer_service`: Indicates the message is free because it was either a utility template message or non-template message sent within a customer service window.\n- `free_entry_point`: Indicates the message is free because it is part of a free-entry point conversation.","enum":["regular","free_customer_service","free_entry_point"],"uniqueKey":"oneOf.2.whatsappMessage.pricingType","typeLabel":"enum\u003cstring>"},"whatsappApiError":{"type":"object","description":"The original error object returned by WhatsApp. See [Handling Errors](https://developers.facebook.com/docs/graph-api/guides/error-handling), [Cloud API Error Codes](https://developers.facebook.com/docs/whatsapp/cloud-api/support/error-codes).","required":["message","code"],"properties":{"message":{"type":"string","description":"A human-readable description of the error.","example":"HSM Template creation failed","isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.whatsappApiError.message","typeLabel":"string"},"code":{"type":"string","description":"An error code.","example":200002,"isRequired":true,"uniqueKey":"oneOf.2.whatsappMessage.whatsappApiError.code","typeLabel":"string"},"type":{"type":"string","description":"Error type.","example":"OAuthException","uniqueKey":"oneOf.2.whatsappMessage.whatsappApiError.type","typeLabel":"string"},"error_subcode":{"type":"string","description":"Additional code about the error.","example":2388109,"uniqueKey":"oneOf.2.whatsappMessage.whatsappApiError.error_subcode","typeLabel":"string"},"error_user_msg":{"type":"string","description":"The message to display to the user. The language of the message is based on the locale of the API request.","example":"This message template cannot be created.","uniqueKey":"oneOf.2.whatsappMessage.whatsappApiError.error_user_msg","typeLabel":"string"},"error_user_title":{"type":"string","description":"The title of the dialog, if shown. The language of the message is based on the locale of the API request.","example":"Message Cannot Be Submitted","uniqueKey":"oneOf.2.whatsappMessage.whatsappApiError.error_user_title","typeLabel":"string"},"fbtrace_id":{"type":"string","description":"Internal support identifier. When reporting a bug related to a Graph API call, include the fbtrace_id to help us find log data for debugging.","example":"AVGjJ7ia2zJkrHG","uniqueKey":"oneOf.2.whatsappMessage.whatsappApiError.fbtrace_id","typeLabel":"string"},"error_data":{"oneOf":[{"type":"string","description":"Additional data about the error. A string or map.\n- For template APIs, this field is a string describing the reason for the error.\n- For message APIs, this field is a map with property `details` describing the reason for the error.","uniqueKey":"oneOf.2.whatsappMessage.whatsappApiError.error_data.oneOf.0","typeLabel":"string"},{"type":"object","description":"Additional data about the error. A string or map.\n- For template APIs, this field is a string describing the reason for the error.\n- For message APIs, this field is a map with property `details` describing the reason for the error.","additionalProperties":true,"uniqueKey":"oneOf.2.whatsappMessage.whatsappApiError.error_data.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.2.whatsappMessage.whatsappApiError.error_data","typeLabel":"string | object"}},"uniqueKey":"oneOf.2.whatsappMessage.whatsappApiError","typeLabel":"object"},"bizType":{"type":"string","description":"This can be either empty or one of `whatsapp`, or `verify`. Defaults to `whatsapp`.\n- `whatsapp`: Indicates that the message is sent via the **WhatsApp** product.\n- `verify`: Indicates that the message is sent via the **Verify** product.","example":"whatsapp","uniqueKey":"oneOf.2.whatsappMessage.bizType","typeLabel":"string"},"verificationId":{"type":"string","description":"The verification ID. Included only when `bizType` is `verify`.","example":"VERIFICATION-ID","uniqueKey":"oneOf.2.whatsappMessage.verificationId","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappMessage","typeLabel":"object"},"phase":{"type":"integer","format":"int32","description":"Included when `type` is `whatsapp.smb.history` and the event was generated from a Meta history chunk. Identifies the chunk's synchronization phase.","example":1,"uniqueKey":"oneOf.2.phase","typeLabel":"integer\u003cint32>"},"progress":{"type":"integer","format":"int32","description":"Included when `type` is `whatsapp.smb.history` and the event was generated from a Meta history chunk. Reports the chunk's synchronization progress.","example":73,"uniqueKey":"oneOf.2.progress","typeLabel":"integer\u003cint32>"},"contactAttributesChanged":{"type":"object","description":"Included when `type` is `contact.attributes_changed`.","required":["id","updateTime","changedAttributes"],"properties":{"id":{"type":"string","description":"The ID of the contact whose attributes were changed.","example":"1824266594102064128","isRequired":true,"uniqueKey":"oneOf.2.contactAttributesChanged.id","typeLabel":"string"},"updateTime":{"type":"string","format":"date-time","description":"The time at which the contact attributes were updated, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2025-07-09T02:24:16.193Z","isRequired":true,"uniqueKey":"oneOf.2.contactAttributesChanged.updateTime","typeLabel":"string\u003cdate-time>"},"changedAttributes":{"type":"object","description":"An object containing the changed attributes. Each key represents the name of the changed attribute,\nand the value contains the old value, new value, and change actions. Keys use the Contact\nattribute catalog names, including system keys such as `remark_name`, `country_code`, and\n`meta_username`.","additionalProperties":{"type":"object","description":"Represents a single attribute change, containing the old value, new value, and change actions.","properties":{"oldValue":{"description":"The previous value of the attribute before the change.\nCan be a string, number, array, or boolean depending on the attribute type.\nThis field is not included when the value is null.","example":"previous_value","uniqueKey":"oneOf.2.contactAttributesChanged.changedAttributes.additionalProperties.oldValue","typeLabel":"any"},"newValue":{"description":"The new value of the attribute after the change.\nCan be a string, number, array, or boolean depending on the attribute type.\nThis field is not included when the value is null.","example":["tag1","tag2"],"uniqueKey":"oneOf.2.contactAttributesChanged.changedAttributes.additionalProperties.newValue","typeLabel":"any"},"extra":{"type":"array","description":"An array of change actions that describe what operations were performed on this attribute.","items":{"type":"object","description":"Represents a single change action performed on an attribute.\nFor tag attributes, includes additional id and value fields.","required":["action"],"properties":{"action":{"type":"string","description":"The type of change action performed.","enum":["ADDED","REMOVED","CHANGED"],"example":"ADDED","isRequired":true,"uniqueKey":"oneOf.2.contactAttributesChanged.changedAttributes.additionalProperties.extra.items.[INDEX].action","typeLabel":"enum\u003cstring>"},"id":{"type":"string","description":"The ID of the item when the attribute is 'tags'.\nThis field is only present for tag-related changes.","example":"686dd294334be8606a5bf312","uniqueKey":"oneOf.2.contactAttributesChanged.changedAttributes.additionalProperties.extra.items.[INDEX].id","typeLabel":"string"},"value":{"type":"string","description":"The value of the item when the attribute is 'tags'.\nThis field is only present for tag-related changes.","example":"fsadf","uniqueKey":"oneOf.2.contactAttributesChanged.changedAttributes.additionalProperties.extra.items.[INDEX].value","typeLabel":"string"}},"uniqueKey":"oneOf.2.contactAttributesChanged.changedAttributes.additionalProperties.extra.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.contactAttributesChanged.changedAttributes.additionalProperties.extra","typeLabel":"object[]"}},"uniqueKey":"oneOf.2.contactAttributesChanged.changedAttributes.additionalProperties","typeLabel":"object"},"example":{"tags":{"newValue":["customer","vip"],"extra":[{"action":"ADDED","id":"686dd294334be8606a5bf312","value":"customer"}]},"waba_id":{"oldValue":"old_waba_id","newValue":"new_waba_id","extra":[{"action":"CHANGED"}]},"age":{"oldValue":25,"newValue":26,"extra":[{"action":"CHANGED"}]},"is_verified":{"oldValue":false,"newValue":true,"extra":[{"action":"CHANGED"}]}},"isRequired":true,"uniqueKey":"oneOf.2.contactAttributesChanged.changedAttributes","typeLabel":"object"}},"uniqueKey":"oneOf.2.contactAttributesChanged","typeLabel":"object"},"contactCreated":{"type":"object","description":"Included when `type` is `contact.created`.","required":["id"],"properties":{"id":{"type":"string","description":"Unique ID for the object.","example":"1824266594102064128","isRequired":true,"uniqueKey":"oneOf.2.contactCreated.id","typeLabel":"string"},"remarkName":{"type":"string","description":"The business-managed remark name for the contact.","example":"Priority customer","uniqueKey":"oneOf.2.contactCreated.remarkName","typeLabel":"string"},"nickName":{"type":"string","description":"Contact's nickname.","example":"John Doe","uniqueKey":"oneOf.2.contactCreated.nickName","typeLabel":"string"},"realName":{"type":"string","description":"Contact's real name.","example":"John Smith","uniqueKey":"oneOf.2.contactCreated.realName","typeLabel":"string"},"phoneNumber":{"type":"string","description":"Unique Phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","uniqueKey":"oneOf.2.contactCreated.phoneNumber","typeLabel":"string"},"countryCode":{"type":"string","description":"Two-letter country abbreviation. See [ISO 3166-1 alpha-2 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).","example":"US","uniqueKey":"oneOf.2.contactCreated.countryCode","typeLabel":"string"},"countryName":{"type":"string","description":"Full country name.","example":"United States","uniqueKey":"oneOf.2.contactCreated.countryName","typeLabel":"string"},"email":{"type":"string","description":"The contact's email address.\nIf present, the email address must be unique.","example":"john.doe@example.com","uniqueKey":"oneOf.2.contactCreated.email","typeLabel":"string"},"sourceType":{"type":"string","description":"The source type where the contact was created.","example":"api","uniqueKey":"oneOf.2.contactCreated.sourceType","typeLabel":"string"},"sourceId":{"type":"string","description":"The source ID where the contact was created.","example":"import_batch_123","uniqueKey":"oneOf.2.contactCreated.sourceId","typeLabel":"string"},"sourceUrl":{"type":"string","description":"The source URL where the contact was created.","example":"https://example.com/signup","uniqueKey":"oneOf.2.contactCreated.sourceUrl","typeLabel":"string"},"lastSeen":{"type":"string","format":"date-time","description":"The time at which the contact last sent a message to your business, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2025-07-09T02:24:16.193Z","uniqueKey":"oneOf.2.contactCreated.lastSeen","typeLabel":"string\u003cdate-time>"},"lastConnectedNumber":{"type":"string","description":"The business phone number that the contact last connected to.","example":"+16315551111","uniqueKey":"oneOf.2.contactCreated.lastConnectedNumber","typeLabel":"string"},"ownerEmail":{"type":"string","description":"The email address of the contact's owner.","example":"support@example.com","uniqueKey":"oneOf.2.contactCreated.ownerEmail","typeLabel":"string"},"tags":{"type":"array","description":"Contact's tags.","items":{"type":"string","uniqueKey":"oneOf.2.contactCreated.tags.items.[INDEX]","typeLabel":"string"},"example":["customer","vip"],"uniqueKey":"oneOf.2.contactCreated.tags","typeLabel":"string[]"},"createTime":{"type":"string","format":"date-time","description":"The time at which the contact was created, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2025-07-09T02:24:16.193Z","uniqueKey":"oneOf.2.contactCreated.createTime","typeLabel":"string\u003cdate-time>"},"updateTime":{"type":"string","format":"date-time","description":"The time at which the contact was last updated, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2025-07-09T02:24:16.193Z","uniqueKey":"oneOf.2.contactCreated.updateTime","typeLabel":"string\u003cdate-time>"},"blocked":{"type":"boolean","description":"Whether the contact is blocked.","example":false,"uniqueKey":"oneOf.2.contactCreated.blocked","typeLabel":"boolean"},"customAttributes":{"type":"object","description":"Contact's custom attributes as key-value pairs.","additionalProperties":{"type":"object","uniqueKey":"oneOf.2.contactCreated.customAttributes.additionalProperties","typeLabel":"object"},"example":{"company":"YCloud Inc","age":25,"preferences":{"newsletter":true}},"uniqueKey":"oneOf.2.contactCreated.customAttributes","typeLabel":"object"}},"uniqueKey":"oneOf.2.contactCreated","typeLabel":"object"},"contactDeleted":{"type":"object","description":"Included when `type` is `contact.deleted`.","required":["id"],"properties":{"id":{"type":"string","description":"Contact ID","example":"1824266594102064129","isRequired":true,"uniqueKey":"oneOf.2.contactDeleted.id","typeLabel":"string"},"remarkName":{"type":"string","description":"The business-managed remark name from the deleted contact snapshot.","example":"Former customer","uniqueKey":"oneOf.2.contactDeleted.remarkName","typeLabel":"string"},"nickName":{"type":"string","description":"Contact's nickname.","example":"Jane Smith","uniqueKey":"oneOf.2.contactDeleted.nickName","typeLabel":"string"},"phoneNumber":{"type":"string","description":"Unique Phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16475551234","uniqueKey":"oneOf.2.contactDeleted.phoneNumber","typeLabel":"string"},"updateTime":{"type":"string","format":"date-time","description":"The time at which the contact was last updated, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2025-07-08T15:25:00.000Z","uniqueKey":"oneOf.2.contactDeleted.updateTime","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.2.contactDeleted","typeLabel":"object"},"contactNote":{"type":"object","description":"Included when `type` is `contact.note.created`, `contact.note.updated`, or `contact.note.deleted`.","required":["id","contactId","username","phoneNumber","content"],"properties":{"id":{"type":"string","minLength":24,"maxLength":24,"pattern":"^[0-9a-fA-F]{24}$","example":"6a3de646e18f344f743aaa4d","isRequired":true,"uniqueKey":"oneOf.2.contactNote.id","typeLabel":"string"},"contactId":{"type":"string","example":"1824266594102064128","isRequired":true,"uniqueKey":"oneOf.2.contactNote.contactId","typeLabel":"string"},"username":{"oneOf":[{"type":"string","description":"Username of the contact that owns this note, without the leading `@`.","example":"alice_01","isRequired":true,"uniqueKey":"oneOf.2.contactNote.username.oneOf.0","typeLabel":"string"},{"type":"null","description":"Username of the contact that owns this note, without the leading `@`.","example":"alice_01","isRequired":true,"uniqueKey":"oneOf.2.contactNote.username.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.2.contactNote.username","typeLabel":"string | null"},"phoneNumber":{"oneOf":[{"type":"string","description":"Phone number of the contact that owns this note in E.164 format.","example":"+16315551111","isRequired":true,"uniqueKey":"oneOf.2.contactNote.phoneNumber.oneOf.0","typeLabel":"string"},{"type":"null","description":"Phone number of the contact that owns this note in E.164 format.","example":"+16315551111","isRequired":true,"uniqueKey":"oneOf.2.contactNote.phoneNumber.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.2.contactNote.phoneNumber","typeLabel":"string | null"},"content":{"type":"string","maxLength":500,"example":"Customer prefers follow-up in the morning.","isRequired":true,"uniqueKey":"oneOf.2.contactNote.content","typeLabel":"string"},"createTime":{"type":"string","format":"date-time","uniqueKey":"oneOf.2.contactNote.createTime","typeLabel":"string\u003cdate-time>"},"updateTime":{"type":"string","format":"date-time","uniqueKey":"oneOf.2.contactNote.updateTime","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.2.contactNote","typeLabel":"object"},"contactUnsubscribeCreated":{"type":"object","description":"Included when `type` is `contact.unsubscribe.created`.","required":["id"],"properties":{"id":{"type":"string","description":"Unique ID of the contact unsubscribe event.","isRequired":true,"uniqueKey":"oneOf.2.contactUnsubscribeCreated.id","typeLabel":"string"},"phoneNumber":{"type":"string","description":"Unique Customer Phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16475551234","uniqueKey":"oneOf.2.contactUnsubscribeCreated.phoneNumber","typeLabel":"string"},"source":{"type":"string","description":"The source from which a customer initiates an unsubscribe.\n- `Whatsapp`: The customer initiated an unsubscribe on the whatsapp client.\n- `Inbox`:You added a customer to the unsubscribe list on the Inbox page of YCloud.\n- `Chatbot`: The message sent by the customer triggered the unsubscribe keyword configured by the Chatbot.\n- `API`: You add customers to the unsubscribe list through YCloud's OpenAPI.\n- `Manual`: You added a customer to the unsubscribe list on the Contact page of YCloud.","enum":["Whatsapp","Inbox","Chatbot","API","Manual"],"example":"Whatsapp","uniqueKey":"oneOf.2.contactUnsubscribeCreated.source","typeLabel":"enum\u003cstring>"},"updateTime":{"type":"string","format":"date-time","description":"The time when a customer initiates an unsubscribe, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2025-07-08T15:25:00.000Z","uniqueKey":"oneOf.2.contactUnsubscribeCreated.updateTime","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.2.contactUnsubscribeCreated","typeLabel":"object"},"contactUnsubscribeDeleted":{"type":"object","description":"Included when `type` is `contact.unsubscribe.deleted`.","required":["id"],"properties":{"id":{"type":"string","description":"Unique ID of the contact resubscribe event.","isRequired":true,"uniqueKey":"oneOf.2.contactUnsubscribeDeleted.id","typeLabel":"string"},"phoneNumber":{"type":"string","description":"Unique Customer Phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16475551234","uniqueKey":"oneOf.2.contactUnsubscribeDeleted.phoneNumber","typeLabel":"string"},"source":{"type":"string","description":"The source from which a customer resumed their subscription\n- `Whatsapp`: The customer resumed their subscription on the whatsapp client\n- `API`: You remove the customer from the unsubscribe list through the OpenAPI of YCloud\n- `Manual`: You remove the customer from the unsubscribe list on the Contact page of YCloud.","enum":["Whatsapp","API","Manual"],"example":"Whatsapp","uniqueKey":"oneOf.2.contactUnsubscribeDeleted.source","typeLabel":"enum\u003cstring>"},"updateTime":{"type":"string","format":"date-time","description":"The time when customers cancel unsubscribe, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2025-07-08T15:25:00.000Z","uniqueKey":"oneOf.2.contactUnsubscribeDeleted.updateTime","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.2.contactUnsubscribeDeleted","typeLabel":"object"},"emailDelivery":{"type":"object","description":"Included when `type` is `email.delivery.updated`.","required":["emailId","recipientAddress"],"properties":{"emailId":{"type":"string","description":"Unique ID for the related email you've previously sent.","minLength":6,"maxLength":128,"isRequired":true,"uniqueKey":"oneOf.2.emailDelivery.emailId","typeLabel":"string"},"recipientAddress":{"type":"string","description":"A recipient's email address.","example":"tom@example.com","isRequired":true,"uniqueKey":"oneOf.2.emailDelivery.recipientAddress","typeLabel":"string"},"status":{"type":"string","description":"Delivery status of the email to the specific recipient address.\n- `sending`: The messaging request is accepted by our system.\n- `failed`: The message failed to be sent from our system.\n- `sent`: The message has been sent from our system.\n- `delivered`: Our system has received a delivery receipt indicating that message is delivered.\n- `undelivered`: Our system has received a delivery receipt indicating that message is not delivered.","enum":["sending","failed","sent","delivered","undelivered"],"example":"failed","uniqueKey":"oneOf.2.emailDelivery.status","typeLabel":"enum\u003cstring>"},"errorCode":{"type":"string","description":"Error code when the email is undeliverable.","example":402,"uniqueKey":"oneOf.2.emailDelivery.errorCode","typeLabel":"string"},"errorMessage":{"type":"string","description":"Error message when the email is undeliverable.","example":"Unsubscribes","uniqueKey":"oneOf.2.emailDelivery.errorMessage","typeLabel":"string"},"externalId":{"type":"string","description":"The `externalId` you set when you sent the email.","uniqueKey":"oneOf.2.emailDelivery.externalId","typeLabel":"string"},"bizType":{"type":"string","description":"This can be either empty or one of `email`, or `verify`. Defaults to `email`.\n- `email`: Indicates that the message is sent via the **Email** product.\n- `verify`: Indicates that the message is sent via the **Verify** product.","example":"email","uniqueKey":"oneOf.2.emailDelivery.bizType","typeLabel":"string"},"verificationId":{"type":"string","description":"The verification ID. Included only when `bizType` is `verify`.","example":"VERIFICATION-ID","uniqueKey":"oneOf.2.emailDelivery.verificationId","typeLabel":"string"}},"uniqueKey":"oneOf.2.emailDelivery","typeLabel":"object"},"sms":{"type":"object","required":["id","to"],"properties":{"id":{"type":"string","description":"Unique ID for the object.","minLength":6,"maxLength":128,"isRequired":true,"uniqueKey":"oneOf.2.sms.id","typeLabel":"string"},"to":{"type":"string","description":"The recipient's phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","isRequired":true,"uniqueKey":"oneOf.2.sms.to","typeLabel":"string"},"text":{"type":"string","description":"The text of this message.","example":"Your verification code is 123456.","uniqueKey":"oneOf.2.sms.text","typeLabel":"string"},"senderId":{"type":"string","description":"Sender ID to be used.","example":"Brand","uniqueKey":"oneOf.2.sms.senderId","typeLabel":"string"},"regionCode":{"type":"string","description":"[ISO 3166-1 alpha-2 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)","example":"US","uniqueKey":"oneOf.2.sms.regionCode","typeLabel":"string"},"totalSegments":{"type":"integer","format":"int32","minimum":1,"description":"Number of message segments. See [SMS character encoding](https://helpdocs.ycloud.com/help-center/integrations/channels/global-sms/sms-basic-principles#sms-encoding) for more info.","example":1,"uniqueKey":"oneOf.2.sms.totalSegments","typeLabel":"integer\u003cint32>"},"totalPrice":{"type":"number","format":"double","description":"Total price of this message.","example":0.0085,"uniqueKey":"oneOf.2.sms.totalPrice","typeLabel":"number\u003cdouble>"},"currency":{"type":"string","description":"Price currency. [ISO 4217 currency code](https://en.wikipedia.org/wiki/ISO_4217).","example":"USD","uniqueKey":"oneOf.2.sms.currency","typeLabel":"string"},"status":{"type":"string","description":"Delivery status. One of `accepted`, `sent`, `delivered`, `undelivered`, or `failed`.\n- `accepted`: The messaging request is accepted by our system.\n- `failed`: The message failed to be sent from our system.\n- `sent`: The message has been sent from our system.\n- `delivered`: Our system has received a delivery receipt indicating that message is delivered.\n- `undelivered`: Our system has received a delivery receipt indicating that message is not delivered.","example":"sent","enum":["accepted","failed","sent","delivered","undelivered"],"uniqueKey":"oneOf.2.sms.status","typeLabel":"enum\u003cstring>"},"errorCode":{"type":"string","description":"Error code when the message is undeliverable.","uniqueKey":"oneOf.2.sms.errorCode","typeLabel":"string"},"createTime":{"type":"string","format":"date-time","description":"The time at which this message was created, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-03-01T12:00:00.000Z`.","example":"2022-03-01T12:00:00.000Z","uniqueKey":"oneOf.2.sms.createTime","typeLabel":"string\u003cdate-time>"},"updateTime":{"type":"string","format":"date-time","description":"The time at which the delivery report for this message was updated, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-03-01T12:00:00.000Z`.","example":"2022-03-01T12:00:00.000Z","uniqueKey":"oneOf.2.sms.updateTime","typeLabel":"string\u003cdate-time>"},"externalId":{"type":"string","description":"A unique (recommended) string to reference the object. This can be an order number or similar, and can be used to reconcile the object with your internal systems.","uniqueKey":"oneOf.2.sms.externalId","typeLabel":"string"},"callbackUrl":{"type":"string","description":"Delivery report URL. You can provide a URL, and we will push the updated status report to your server in time. e.g., https://httpbin.org/anything?tag=api.\nNote: We recommend configuring Webhook Endpoints instead.","example":"https://httpbin.org/anything?tag=api-sms","uniqueKey":"oneOf.2.sms.callbackUrl","typeLabel":"string"},"bizType":{"type":"string","description":"This can be either empty or one of `sms`, or `verify`. Defaults to `sms`.\n- `sms`: Indicates that the message is sent via the **SMS** product.\n- `verify`: Indicates that the message is sent via the **Verify** product.","example":"sms","uniqueKey":"oneOf.2.sms.bizType","typeLabel":"string"},"verificationId":{"type":"string","description":"The verification ID. Included only when `bizType` is `verify`.","example":"VERIFICATION-ID","uniqueKey":"oneOf.2.sms.verificationId","typeLabel":"string"}},"description":"Included when `type` is `sms.message.updated`.","uniqueKey":"oneOf.2.sms","typeLabel":"object"},"smsInbound":{"type":"object","description":"Included when `type` is `sms.inbound.received`.","properties":{"id":{"type":"string","description":"Unique ID of the message.","uniqueKey":"oneOf.2.smsInbound.id","typeLabel":"string"},"from":{"type":"string","description":"The user's phone number who sent the message to your registered sender ID, formatted in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","uniqueKey":"oneOf.2.smsInbound.from","typeLabel":"string"},"to":{"type":"string","description":"The receiver's phone number, which is one of your registered Sender IDs.","uniqueKey":"oneOf.2.smsInbound.to","typeLabel":"string"},"text":{"type":"string","description":"The text of this message.","uniqueKey":"oneOf.2.smsInbound.text","typeLabel":"string"},"sendTime":{"type":"string","format":"date-time","description":"The time at which this message was sent, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2022-06-01T12:00:00.000Z","uniqueKey":"oneOf.2.smsInbound.sendTime","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.2.smsInbound","typeLabel":"object"},"voice":{"type":"object","required":["id","to"],"properties":{"id":{"type":"string","description":"Unique ID for the object.","minLength":6,"maxLength":128,"isRequired":true,"uniqueKey":"oneOf.2.voice.id","typeLabel":"string"},"to":{"type":"string","description":"The recipient's phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","isRequired":true,"uniqueKey":"oneOf.2.voice.to","typeLabel":"string"},"verificationCode":{"type":"string","description":"The verification code to be sent, 4 to 6 digits.","example":"123456","uniqueKey":"oneOf.2.voice.verificationCode","typeLabel":"string"},"language":{"type":"string","description":"[ISO 639 Language Code](https://www.iso.org/iso-639-language-codes.html).","example":"en","uniqueKey":"oneOf.2.voice.language","typeLabel":"string"},"regionCode":{"type":"string","description":"[ISO 3166-1 alpha-2 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).","example":"US","uniqueKey":"oneOf.2.voice.regionCode","typeLabel":"string"},"totalSegments":{"type":"integer","format":"int32","minimum":1,"description":"Number of message segments. It's always 1 for voice calls.","example":1,"uniqueKey":"oneOf.2.voice.totalSegments","typeLabel":"integer\u003cint32>"},"totalPrice":{"type":"number","format":"double","description":"Total price of this message.","example":0.05,"uniqueKey":"oneOf.2.voice.totalPrice","typeLabel":"number\u003cdouble>"},"currency":{"type":"string","description":"Price currency. [ISO 4217 currency code](https://en.wikipedia.org/wiki/ISO_4217).","example":"USD","uniqueKey":"oneOf.2.voice.currency","typeLabel":"string"},"status":{"type":"string","description":"Delivery status. One of `accepted`, `sent`, `delivered`, `undelivered`, or `failed`.\n- `accepted`: The messaging request is accepted by our system.\n- `failed`: The message failed to be sent from our system.\n- `sent`: The message has been sent from our system.\n- `delivered`: Our system has received a delivery receipt indicating that message is delivered.\n- `undelivered`: Our system has received a delivery receipt indicating that message is not delivered.","example":"sent","enum":["accepted","failed","sent","delivered","undelivered"],"uniqueKey":"oneOf.2.voice.status","typeLabel":"enum\u003cstring>"},"errorCode":{"type":"string","description":"Error code when the message is undeliverable.","uniqueKey":"oneOf.2.voice.errorCode","typeLabel":"string"},"createTime":{"type":"string","format":"date-time","description":"The time at which this message was created, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-03-01T12:00:00.000Z`.","example":"2022-03-01T12:00:00.000Z","uniqueKey":"oneOf.2.voice.createTime","typeLabel":"string\u003cdate-time>"},"updateTime":{"type":"string","format":"date-time","description":"The time at which the delivery report for this message was updated, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-03-01T12:00:00.000Z`.","example":"2022-03-01T12:00:00.000Z","uniqueKey":"oneOf.2.voice.updateTime","typeLabel":"string\u003cdate-time>"},"externalId":{"type":"string","description":"A unique (recommended) string to reference the object. This can be an order number or similar, and can be used to reconcile the object with your internal systems.","uniqueKey":"oneOf.2.voice.externalId","typeLabel":"string"},"callbackUrl":{"type":"string","description":"Delivery report URL. You can provide a URL, and we will push the updated status report to your server in time. e.g., https://httpbin.org/anything?tag=api.\nNote: We recommend configuring Webhook Endpoints instead.","example":"https://httpbin.org/anything?tag=api-voice","uniqueKey":"oneOf.2.voice.callbackUrl","typeLabel":"string"},"bizType":{"type":"string","description":"This can be either empty or one of `voice`, or `verify`. Defaults to `voice`.\n- `voice`: Indicates that the message is sent via the **Voice** product.\n- `verify`: Indicates that the message is sent via **Verify** product.","example":"voice","uniqueKey":"oneOf.2.voice.bizType","typeLabel":"string"},"verificationId":{"type":"string","description":"The verification ID. Included only when `bizType` is `verify`.","example":"VERIFICATION-ID","uniqueKey":"oneOf.2.voice.verificationId","typeLabel":"string"}},"description":"Included when `type` is `voice.message.updated`.","uniqueKey":"oneOf.2.voice","typeLabel":"object"},"whatsappBusinessAccount":{"type":"object","description":"Included when `type` is `whatsapp.business_account.deleted`, `whatsapp.business_account.reviewed`, or `whatsapp.business_account.updated`.","properties":{"id":{"type":"string","description":"WhatApp Business Account ID.","uniqueKey":"oneOf.2.whatsappBusinessAccount.id","typeLabel":"string"},"name":{"type":"string","description":"User-friendly name to differentiate WhatsApp Business Accounts.","uniqueKey":"oneOf.2.whatsappBusinessAccount.name","typeLabel":"string"},"currency":{"type":"string","description":"The currency in which the payment transactions for the WhatsApp Business Account will be processed.","uniqueKey":"oneOf.2.whatsappBusinessAccount.currency","typeLabel":"string"},"messageTemplateNamespace":{"type":"string","description":"Namespace string for the message templates that belong to the WhatsApp Business Account.","uniqueKey":"oneOf.2.whatsappBusinessAccount.messageTemplateNamespace","typeLabel":"string"},"accountReviewStatus":{"type":"string","description":"WhatsApp Business Account review status.","enum":["PENDING","APPROVED","REJECTED"],"uniqueKey":"oneOf.2.whatsappBusinessAccount.accountReviewStatus","typeLabel":"enum\u003cstring>"},"businessVerificationStatus":{"type":"string","description":"Current status of business verification of Meta Business Account which owns this WhatsApp Business Account.","enum":["expired","failed","ineligible","not_verified","pending","pending_need_more_info","pending_submission","rejected","revoked","verified"],"uniqueKey":"oneOf.2.whatsappBusinessAccount.businessVerificationStatus","typeLabel":"enum\u003cstring>"},"country":{"type":"string","description":"Country of the WhatsApp Business Account's owning Meta Business account.","uniqueKey":"oneOf.2.whatsappBusinessAccount.country","typeLabel":"string"},"ownershipType":{"type":"string","description":"Ownership type of the WhatsApp Business Account.","uniqueKey":"oneOf.2.whatsappBusinessAccount.ownershipType","typeLabel":"string"},"paymentMethodAttached":{"type":"boolean","description":"Whether we have attached a payment method to the WhatsApp Business Account.","uniqueKey":"oneOf.2.whatsappBusinessAccount.paymentMethodAttached","typeLabel":"boolean"},"primaryFundingId":{"type":"string","description":"Primary funding ID for the WhatsApp Business Account paid service.","uniqueKey":"oneOf.2.whatsappBusinessAccount.primaryFundingId","typeLabel":"string"},"purchaseOrderNumber":{"type":"string","description":"The purchase order number supplied by the business for payment management purposes.","uniqueKey":"oneOf.2.whatsappBusinessAccount.purchaseOrderNumber","typeLabel":"string"},"timezoneId":{"type":"string","description":"The timezone ID of the WhatsApp Business Account. See [Timezone IDs](https://developers.facebook.com/docs/marketing-api/reference/ad-account/timezone-ids).","example":"1","uniqueKey":"oneOf.2.whatsappBusinessAccount.timezoneId","typeLabel":"string"},"decision":{"type":"string","description":"Review decision made on this WhatsApp Business Account. One of `APPROVED` or `REJECTED`.","enum":["APPROVED","REJECTED"],"uniqueKey":"oneOf.2.whatsappBusinessAccount.decision","typeLabel":"enum\u003cstring>"},"updateEvent":{"type":"string","description":"Indicates the update event type of the WABA when a notification is sent to you to report a [policy violation](https://developers.facebook.com/docs/whatsapp/overview/policy-enforcement), a WABA has been banned and more.\n- `DISABLED_UPDATE`: WhatsApp Business Account Banned.\n- `ACCOUNT_RESTRICTION`: WhatsApp Business Account Restricted Due To Policy Violations.\n- `ACCOUNT_VIOLATION`: WhatsApp Business Account Violates Policy.\n- `PARTNER_REMOVED`: WhatsApp Business Account was removed from the partner connection.\n- `PARTNER_APP_UNINSTALLED`: WhatsApp Business Account partner app was uninstalled.\n- `AUTH_INTL_PRICE_ELIGIBILITY_UPDATE`: WhatsApp Business Account is eligible for the [authentication-international rate](https://developers.facebook.com/docs/whatsapp/pricing/authentication-international-rates).\n- `BUSINESS_PRIMARY_LOCATION_COUNTRY_UPDATE`: Business's [primary business location](https://developers.facebook.com/docs/whatsapp/pricing/authentication-international-rates#primary-business-location) is set.\n- `BUSINESS_CAPABILITY_UPDATE`: Meta reported a change to the Business Portfolio or WABA phone-number registration limit.","enum":["DISABLED_UPDATE","ACCOUNT_RESTRICTION","ACCOUNT_VIOLATION","PARTNER_REMOVED","PARTNER_APP_UNINSTALLED","AUTH_INTL_PRICE_ELIGIBILITY_UPDATE","BUSINESS_PRIMARY_LOCATION_COUNTRY_UPDATE","BUSINESS_CAPABILITY_UPDATE"],"uniqueKey":"oneOf.2.whatsappBusinessAccount.updateEvent","typeLabel":"enum\u003cstring>"},"banState":{"type":"string","description":"The ban state of the WhatsApp Business Account.","enum":["SCHEDULE_FOR_DISABLE","DISABLE","REINSTATE"],"uniqueKey":"oneOf.2.whatsappBusinessAccount.banState","typeLabel":"enum\u003cstring>"},"banDate":{"type":"string","description":"The date when the WABA is banned.","example":"December 9, 2022","uniqueKey":"oneOf.2.whatsappBusinessAccount.banDate","typeLabel":"string"},"violationType":{"type":"string","description":"Used to report violations imposed on the WABA.\nSee Meta's [Policy enforcement violations](https://developers.facebook.com/documentation/business-messaging/whatsapp/policy-enforcement-violations) for violation types and descriptions. Meta may update this list over time.\nFor Utility Direct Send violation types and restriction details, see Meta's [Webhook for account restriction](https://developers.facebook.com/documentation/business-messaging/whatsapp/direct-send/integrity-and-content-guidelines#webhook-for-account-restriction).","example":"SCAM","uniqueKey":"oneOf.2.whatsappBusinessAccount.violationType","typeLabel":"string"},"restrictions":{"type":"array","description":"Used to report restrictions imposed on the WABA, when that WABA violates [WhatsApp Business Platform policies](https://developers.facebook.com/docs/whatsapp/overview/policy-enforcement).","items":{"type":"object","description":"Used to report restrictions imposed on a specific WABA, when that WABA violates [WhatsApp Business Platform policies](https://developers.facebook.com/docs/whatsapp/overview/policy-enforcement).","properties":{"restrictionType":{"type":"string","description":"Restriction type.","enum":["RESTRICTED_ADD_PHONE_NUMBER_ACTION","RESTRICTED_BIZ_INITIATED_MESSAGING","RESTRICTED_CUSTOMER_INITIATED_MESSAGING","RESTRICTED_DIRECT_SEND_UTILITY_TEMPLATES"],"uniqueKey":"oneOf.2.whatsappBusinessAccount.restrictions.items.[INDEX].restrictionType","typeLabel":"enum\u003cstring>"},"expiration":{"type":"string","format":"date-time","description":"The time at which this restriction expires, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2022-06-01T12:00:00.000Z","uniqueKey":"oneOf.2.whatsappBusinessAccount.restrictions.items.[INDEX].expiration","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.2.whatsappBusinessAccount.restrictions.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappBusinessAccount.restrictions","typeLabel":"object[]"},"maxPhoneNumbersPerBusiness":{"type":"integer","format":"int32","description":"Included in a `whatsapp.business_account.updated` webhook with `updateEvent=BUSINESS_CAPABILITY_UPDATE` when Meta reports the Business Portfolio phone-number registration limit. Meta currently reports this field separately from `maxPhoneNumbersPerWaba`, but consumers must process both if a future update includes them together.","example":20,"uniqueKey":"oneOf.2.whatsappBusinessAccount.maxPhoneNumbersPerBusiness","typeLabel":"integer\u003cint32>"},"maxPhoneNumbersPerWaba":{"type":"integer","format":"int32","description":"Included in a `whatsapp.business_account.updated` webhook with `updateEvent=BUSINESS_CAPABILITY_UPDATE` when Meta reports the WABA phone-number registration limit. Meta currently reports this field separately from `maxPhoneNumbersPerBusiness`, but consumers must process both if a future update includes them together.","example":25,"uniqueKey":"oneOf.2.whatsappBusinessAccount.maxPhoneNumbersPerWaba","typeLabel":"integer\u003cint32>"},"authIntlRateEligibilityCountries":{"type":"array","description":"Starting June 1, 2024, we are updating our authentication rate card and introducing a new authentication-international rate. This rate will apply in the the following countries:\n- June 1, 2024 – Indonesia (country calling code +62, country code `ID`)\n- July 1, 2024 – India (country calling code +91, country code `IN`)\n\nSee also [Authentication-International Rates](https://developers.facebook.com/docs/whatsapp/pricing/authentication-international-rates).","items":{"type":"object","description":"Starting June 1, 2024, we are updating our authentication rate card and introducing a new authentication-international rate. This rate will apply in the the following countries:\n- June 1, 2024 – Indonesia (country calling code +62, country code `ID`)\n- July 1, 2024 – India (country calling code +91, country code `IN`)\n\nSee also [Authentication-International Rates](https://developers.facebook.com/docs/whatsapp/pricing/authentication-international-rates).","properties":{"countryCode":{"type":"string","description":"[ISO 3166-1 alpha-2 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).","example":"IN","uniqueKey":"oneOf.2.whatsappBusinessAccount.authIntlRateEligibilityCountries.items.[INDEX].countryCode","typeLabel":"string"},"startTime":{"type":"string","format":"date-time","description":"Date when newly-opened authentication conversations are subject to authentication-international rates, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2024-07-01T00:00:00.000Z`.","example":"2024-07-01T00:00:00.000Z","uniqueKey":"oneOf.2.whatsappBusinessAccount.authIntlRateEligibilityCountries.items.[INDEX].startTime","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.2.whatsappBusinessAccount.authIntlRateEligibilityCountries.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappBusinessAccount.authIntlRateEligibilityCountries","typeLabel":"object[]"},"primaryBusinessLocation":{"type":"string","description":"Your primary business location is the country where your business is based. It will appear in the Business Manager under the Primary Business Location field starting May 1, 2024.\n[ISO 3166-1 alpha-2 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).","example":"US","uniqueKey":"oneOf.2.whatsappBusinessAccount.primaryBusinessLocation","typeLabel":"string"},"removedReason":{"type":"string","description":"Raw reason from the WhatsApp Business Account deletion event. Known values include:\n- `ACCOUNT_DISCONNECTED`: The account was disconnected due to enforcement or because the WhatsApp account was explicitly deleted.\n- `BUSINESS_DOWNGRADE`: The phone number was registered with the consumer WhatsApp app.\n- `CHANGE_NUMBER`: The WhatsApp phone number was changed.\n- `COMPANION_INACTIVITY`: A companion device was inactive for approximately 30 days.\n- `PRIMARY_INACTIVITY`: A primary device was inactive for approximately 30 days.\n- `USER_RE_REGISTERED`: WhatsApp was re-registered on a new device.\n\nUnknown values are returned as received.","example":"ACCOUNT_DISCONNECTED","uniqueKey":"oneOf.2.whatsappBusinessAccount.removedReason","typeLabel":"string"},"removedInitiatedBy":{"type":"string","description":"Raw initiator from the WhatsApp Business Account deletion event. Known values include:\n- `USER`: The removal was initiated by the WhatsApp user.\n- `SYSTEM`: The removal was initiated by the Meta system.\n\nUnknown values are returned as received.","example":"USER","uniqueKey":"oneOf.2.whatsappBusinessAccount.removedInitiatedBy","typeLabel":"string"},"removedTime":{"type":"string","format":"date-time","description":"The time when the WhatsApp Business Account deletion event was received, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2026-05-19T12:00:00.000Z`.","example":"2026-05-19T12:00:00.000Z","uniqueKey":"oneOf.2.whatsappBusinessAccount.removedTime","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.2.whatsappBusinessAccount","typeLabel":"object"},"whatsappInboundMessage":{"type":"object","description":"Included when `type` is `whatsapp.inbound_message.received`, or when `type` is `whatsapp.smb.history` for an inbound history message. It is omitted for a metadata-only history chunk.","required":["id"],"properties":{"id":{"type":"string","description":"Unique ID for the object.","isRequired":true,"uniqueKey":"oneOf.2.whatsappInboundMessage.id","typeLabel":"string"},"wamid":{"type":"string","description":"The original message ID on WhatsApp's platform.","example":"wamid.BgNODYxN...","uniqueKey":"oneOf.2.whatsappInboundMessage.wamid","typeLabel":"string"},"wabaId":{"type":"string","description":"WhatsApp Business Account ID.","example":"whatsapp-business-account-id","uniqueKey":"oneOf.2.whatsappInboundMessage.wabaId","typeLabel":"string"},"from":{"type":"string","description":"The customer's phone number who sent the message to the business, formatted in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","uniqueKey":"oneOf.2.whatsappInboundMessage.from","typeLabel":"string"},"fromUserId":{"type":"string","description":"The customer's WhatsApp Business-scoped user ID (BSUID).","example":"US.1234","uniqueKey":"oneOf.2.whatsappInboundMessage.fromUserId","typeLabel":"string"},"fromParentUserId":{"type":"string","description":"The customer's parent WhatsApp Business-scoped user ID.","example":"US.ENT.1234","uniqueKey":"oneOf.2.whatsappInboundMessage.fromParentUserId","typeLabel":"string"},"customerProfile":{"type":"object","description":"The customer's profile information.","properties":{"name":{"type":"string","description":"Name of the WhatsApp account.","example":"John","uniqueKey":"oneOf.2.whatsappInboundMessage.customerProfile.name","typeLabel":"string"},"username":{"type":"string","description":"WhatsApp username.","example":"john_doe","uniqueKey":"oneOf.2.whatsappInboundMessage.customerProfile.username","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappInboundMessage.customerProfile","typeLabel":"object"},"to":{"type":"string","description":"The recipient's phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","uniqueKey":"oneOf.2.whatsappInboundMessage.to","typeLabel":"string"},"sendTime":{"type":"string","format":"date-time","description":"The time at which this message is sent, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2022-06-01T12:00:00.000Z","uniqueKey":"oneOf.2.whatsappInboundMessage.sendTime","typeLabel":"string\u003cdate-time>"},"type":{"type":"string","description":"WhatsApp inbound message type.\nSee also [WhatsApp webhook messages object](https://developers.facebook.com/docs/whatsapp/cloud-api/webhooks/components#messages-object).","enum":["text","image","video","audio","document","sticker","contacts","location","interactive","button","reaction","request_welcome","order","system","unsupported"],"uniqueKey":"oneOf.2.whatsappInboundMessage.type","typeLabel":"enum\u003cstring>"},"text":{"type":"object","description":"When the notification describes a text message, the text object provides the body of the text message.","properties":{"body":{"type":"string","description":"Message text.","uniqueKey":"oneOf.2.whatsappInboundMessage.text.body","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappInboundMessage.text","typeLabel":"object"},"image":{"type":"object","description":"When a message with media (`image` | `document` | `audio` | `video` | `sticker`) is received, the WhatsApp Business API client will download the media. Once the media is downloaded, a notification is sent to your Webhook. This message contains information that identifies the media object and enables you to find and download the object.","properties":{"id":{"type":"string","description":"ID of the media. Can be used to delete the media if stored locally on the client.","uniqueKey":"oneOf.2.whatsappInboundMessage.image.id","typeLabel":"string"},"link":{"type":"string","description":"The url to download the media file.\nNote that This link can be directly accessed in a few minutes for the convenience of the consumer, but you should always include an `X-API-Key` header to download this file within a month.","uniqueKey":"oneOf.2.whatsappInboundMessage.image.link","typeLabel":"string"},"caption":{"type":"string","description":"The provided caption for the media. Only present if specified.","uniqueKey":"oneOf.2.whatsappInboundMessage.image.caption","typeLabel":"string"},"filename":{"type":"string","description":"Filename on the sender's device. This will only be present in `document` media messages.","uniqueKey":"oneOf.2.whatsappInboundMessage.image.filename","typeLabel":"string"},"metadata":{"type":"object","additionalProperties":{"type":"object","uniqueKey":"oneOf.2.whatsappInboundMessage.image.metadata.additionalProperties","typeLabel":"object"},"description":"Metadata pertaining to `sticker` media.","uniqueKey":"oneOf.2.whatsappInboundMessage.image.metadata","typeLabel":"object"},"mime_type":{"type":"string","description":"Mime type of the media.","uniqueKey":"oneOf.2.whatsappInboundMessage.image.mime_type","typeLabel":"string"},"sha256":{"type":"string","description":"Checksum.","uniqueKey":"oneOf.2.whatsappInboundMessage.image.sha256","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappInboundMessage.image","typeLabel":"object"},"video":{"type":"object","description":"When a message with media (`image` | `document` | `audio` | `video` | `sticker`) is received, the WhatsApp Business API client will download the media. Once the media is downloaded, a notification is sent to your Webhook. This message contains information that identifies the media object and enables you to find and download the object.","properties":{"id":{"type":"string","description":"ID of the media. Can be used to delete the media if stored locally on the client.","uniqueKey":"oneOf.2.whatsappInboundMessage.video.id","typeLabel":"string"},"link":{"type":"string","description":"The url to download the media file.\nNote that This link can be directly accessed in a few minutes for the convenience of the consumer, but you should always include an `X-API-Key` header to download this file within a month.","uniqueKey":"oneOf.2.whatsappInboundMessage.video.link","typeLabel":"string"},"caption":{"type":"string","description":"The provided caption for the media. Only present if specified.","uniqueKey":"oneOf.2.whatsappInboundMessage.video.caption","typeLabel":"string"},"filename":{"type":"string","description":"Filename on the sender's device. This will only be present in `document` media messages.","uniqueKey":"oneOf.2.whatsappInboundMessage.video.filename","typeLabel":"string"},"metadata":{"type":"object","additionalProperties":{"type":"object","uniqueKey":"oneOf.2.whatsappInboundMessage.video.metadata.additionalProperties","typeLabel":"object"},"description":"Metadata pertaining to `sticker` media.","uniqueKey":"oneOf.2.whatsappInboundMessage.video.metadata","typeLabel":"object"},"mime_type":{"type":"string","description":"Mime type of the media.","uniqueKey":"oneOf.2.whatsappInboundMessage.video.mime_type","typeLabel":"string"},"sha256":{"type":"string","description":"Checksum.","uniqueKey":"oneOf.2.whatsappInboundMessage.video.sha256","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappInboundMessage.video","typeLabel":"object"},"audio":{"type":"object","description":"When a message with media (`image` | `document` | `audio` | `video` | `sticker`) is received, the WhatsApp Business API client will download the media. Once the media is downloaded, a notification is sent to your Webhook. This message contains information that identifies the media object and enables you to find and download the object.","properties":{"id":{"type":"string","description":"ID of the media. Can be used to delete the media if stored locally on the client.","uniqueKey":"oneOf.2.whatsappInboundMessage.audio.id","typeLabel":"string"},"link":{"type":"string","description":"The url to download the media file.\nNote that This link can be directly accessed in a few minutes for the convenience of the consumer, but you should always include an `X-API-Key` header to download this file within a month.","uniqueKey":"oneOf.2.whatsappInboundMessage.audio.link","typeLabel":"string"},"caption":{"type":"string","description":"The provided caption for the media. Only present if specified.","uniqueKey":"oneOf.2.whatsappInboundMessage.audio.caption","typeLabel":"string"},"filename":{"type":"string","description":"Filename on the sender's device. This will only be present in `document` media messages.","uniqueKey":"oneOf.2.whatsappInboundMessage.audio.filename","typeLabel":"string"},"metadata":{"type":"object","additionalProperties":{"type":"object","uniqueKey":"oneOf.2.whatsappInboundMessage.audio.metadata.additionalProperties","typeLabel":"object"},"description":"Metadata pertaining to `sticker` media.","uniqueKey":"oneOf.2.whatsappInboundMessage.audio.metadata","typeLabel":"object"},"mime_type":{"type":"string","description":"Mime type of the media.","uniqueKey":"oneOf.2.whatsappInboundMessage.audio.mime_type","typeLabel":"string"},"sha256":{"type":"string","description":"Checksum.","uniqueKey":"oneOf.2.whatsappInboundMessage.audio.sha256","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappInboundMessage.audio","typeLabel":"object"},"document":{"type":"object","description":"When a message with media (`image` | `document` | `audio` | `video` | `sticker`) is received, the WhatsApp Business API client will download the media. Once the media is downloaded, a notification is sent to your Webhook. This message contains information that identifies the media object and enables you to find and download the object.","properties":{"id":{"type":"string","description":"ID of the media. Can be used to delete the media if stored locally on the client.","uniqueKey":"oneOf.2.whatsappInboundMessage.document.id","typeLabel":"string"},"link":{"type":"string","description":"The url to download the media file.\nNote that This link can be directly accessed in a few minutes for the convenience of the consumer, but you should always include an `X-API-Key` header to download this file within a month.","uniqueKey":"oneOf.2.whatsappInboundMessage.document.link","typeLabel":"string"},"caption":{"type":"string","description":"The provided caption for the media. Only present if specified.","uniqueKey":"oneOf.2.whatsappInboundMessage.document.caption","typeLabel":"string"},"filename":{"type":"string","description":"Filename on the sender's device. This will only be present in `document` media messages.","uniqueKey":"oneOf.2.whatsappInboundMessage.document.filename","typeLabel":"string"},"metadata":{"type":"object","additionalProperties":{"type":"object","uniqueKey":"oneOf.2.whatsappInboundMessage.document.metadata.additionalProperties","typeLabel":"object"},"description":"Metadata pertaining to `sticker` media.","uniqueKey":"oneOf.2.whatsappInboundMessage.document.metadata","typeLabel":"object"},"mime_type":{"type":"string","description":"Mime type of the media.","uniqueKey":"oneOf.2.whatsappInboundMessage.document.mime_type","typeLabel":"string"},"sha256":{"type":"string","description":"Checksum.","uniqueKey":"oneOf.2.whatsappInboundMessage.document.sha256","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappInboundMessage.document","typeLabel":"object"},"sticker":{"type":"object","description":"When a message with media (`image` | `document` | `audio` | `video` | `sticker`) is received, the WhatsApp Business API client will download the media. Once the media is downloaded, a notification is sent to your Webhook. This message contains information that identifies the media object and enables you to find and download the object.","properties":{"id":{"type":"string","description":"ID of the media. Can be used to delete the media if stored locally on the client.","uniqueKey":"oneOf.2.whatsappInboundMessage.sticker.id","typeLabel":"string"},"link":{"type":"string","description":"The url to download the media file.\nNote that This link can be directly accessed in a few minutes for the convenience of the consumer, but you should always include an `X-API-Key` header to download this file within a month.","uniqueKey":"oneOf.2.whatsappInboundMessage.sticker.link","typeLabel":"string"},"caption":{"type":"string","description":"The provided caption for the media. Only present if specified.","uniqueKey":"oneOf.2.whatsappInboundMessage.sticker.caption","typeLabel":"string"},"filename":{"type":"string","description":"Filename on the sender's device. This will only be present in `document` media messages.","uniqueKey":"oneOf.2.whatsappInboundMessage.sticker.filename","typeLabel":"string"},"metadata":{"type":"object","additionalProperties":{"type":"object","uniqueKey":"oneOf.2.whatsappInboundMessage.sticker.metadata.additionalProperties","typeLabel":"object"},"description":"Metadata pertaining to `sticker` media.","uniqueKey":"oneOf.2.whatsappInboundMessage.sticker.metadata","typeLabel":"object"},"mime_type":{"type":"string","description":"Mime type of the media.","uniqueKey":"oneOf.2.whatsappInboundMessage.sticker.mime_type","typeLabel":"string"},"sha256":{"type":"string","description":"Checksum.","uniqueKey":"oneOf.2.whatsappInboundMessage.sticker.sha256","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappInboundMessage.sticker","typeLabel":"object"},"interactive":{"type":"object","description":"When a customer has interacted with your message, this object is included in the message object.","properties":{"type":{"type":"string","description":"The type of interactive message received.\n- `button_reply`: Sent when a customer clicks a button.\n- `list_reply`: Sent when a customer selects an item from a list.\n- `nfm_reply`: Sent when a customer responds to a WhatsApp Flow (Next Feature Messaging).\n- `call_permission_reply`: Sent when a customer responds to a call permission request.","enum":["button_reply","list_reply","nfm_reply","call_permission_reply"],"uniqueKey":"oneOf.2.whatsappInboundMessage.interactive.type","typeLabel":"enum\u003cstring>"},"button_reply":{"type":"object","description":"Sent when a customer clicks a button. Returned when `type` is `button_reply`.","properties":{"id":{"type":"string","description":"Unique ID of the clicked button.","uniqueKey":"oneOf.2.whatsappInboundMessage.interactive.button_reply.id","typeLabel":"string"},"title":{"type":"string","description":"Title of a button.","uniqueKey":"oneOf.2.whatsappInboundMessage.interactive.button_reply.title","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappInboundMessage.interactive.button_reply","typeLabel":"object"},"list_reply":{"type":"object","description":"Sent when a customer selects an item from a list. Returned when `type` is `list_reply`.","properties":{"id":{"type":"string","description":"Unique ID of the selected list item.","uniqueKey":"oneOf.2.whatsappInboundMessage.interactive.list_reply.id","typeLabel":"string"},"title":{"type":"string","description":"Title of the selected list item.","uniqueKey":"oneOf.2.whatsappInboundMessage.interactive.list_reply.title","typeLabel":"string"},"description":{"type":"string","description":"Description of the selected row.","uniqueKey":"oneOf.2.whatsappInboundMessage.interactive.list_reply.description","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappInboundMessage.interactive.list_reply","typeLabel":"object"},"nfm_reply":{"type":"object","description":"Sent when a customer responds to a WhatsApp Flow (Next Feature Messaging). Returned when `type` is `nfm_reply`.","properties":{"name":{"type":"string","description":"The name of the flow or form being replied to.","example":"flow","uniqueKey":"oneOf.2.whatsappInboundMessage.interactive.nfm_reply.name","typeLabel":"string"},"response_json":{"type":"string","description":"JSON string containing the user's responses to the flow. Contains form field values and flow token.","example":"{\"flow_token\":\"unused\",\"screen_0_firstName_0\":\"王\",\"screen_1_TextInput_1\":\"123\",\"screen_1_TextInput_0\":\"11\",\"screen_0_lastName_1\":\"TESTNAME\"}","uniqueKey":"oneOf.2.whatsappInboundMessage.interactive.nfm_reply.response_json","typeLabel":"string"},"body":{"type":"string","description":"The body content of the flow reply message.","example":"Sent","uniqueKey":"oneOf.2.whatsappInboundMessage.interactive.nfm_reply.body","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappInboundMessage.interactive.nfm_reply","typeLabel":"object"},"call_permission_reply":{"type":"object","description":"Sent when a customer responds to a call permission request. Returned when `type` is `call_permission_reply`.\nThis occurs when WhatsApp prompts users to grant callback permissions after they call your business.","properties":{"response":{"type":"string","description":"The customer's response to the call permission request.\n- `accept`: User granted permission for business to call back\n- `reject`: User rejected permission for business to call back","enum":["accept","reject"],"example":"accept","uniqueKey":"oneOf.2.whatsappInboundMessage.interactive.call_permission_reply.response","typeLabel":"enum\u003cstring>"},"expiration_timestamp":{"type":"integer","format":"int64","description":"The timestamp (in seconds) when the call permission expires.\nOnly present when response is \"accept\" and is_permanent is false.","example":1672531200,"uniqueKey":"oneOf.2.whatsappInboundMessage.interactive.call_permission_reply.expiration_timestamp","typeLabel":"integer\u003cint64>"},"is_permanent":{"type":"boolean","description":"Whether the permission is permanent or temporary.\n- `true`: Permanent authorization (no expiration)\n- `false`: Temporary authorization (expires at expiration_timestamp)","example":false,"uniqueKey":"oneOf.2.whatsappInboundMessage.interactive.call_permission_reply.is_permanent","typeLabel":"boolean"}},"uniqueKey":"oneOf.2.whatsappInboundMessage.interactive.call_permission_reply","typeLabel":"object"}},"uniqueKey":"oneOf.2.whatsappInboundMessage.interactive","typeLabel":"object"},"location":{"type":"object","description":"When you receive a notification of a user's static location, the location object provides the details of the location.","properties":{"latitude":{"type":"number","format":"double","description":"Latitude of location being sent.","uniqueKey":"oneOf.2.whatsappInboundMessage.location.latitude","typeLabel":"number\u003cdouble>"},"longitude":{"type":"number","format":"double","description":"Longitude of location being sent.","uniqueKey":"oneOf.2.whatsappInboundMessage.location.longitude","typeLabel":"number\u003cdouble>"},"address":{"type":"string","description":"Address of the location.","uniqueKey":"oneOf.2.whatsappInboundMessage.location.address","typeLabel":"string"},"name":{"type":"string","description":"Name of the location.","uniqueKey":"oneOf.2.whatsappInboundMessage.location.name","typeLabel":"string"},"url":{"type":"string","description":"URL for the website where the user downloaded the location information.","uniqueKey":"oneOf.2.whatsappInboundMessage.location.url","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappInboundMessage.location","typeLabel":"object"},"button":{"type":"object","description":"When the message type field is set to `button`, this object is included in the message object.","properties":{"payload":{"type":"string","description":"The payload for a button set up by the business that a customer clicked as part of an interactive message.","uniqueKey":"oneOf.2.whatsappInboundMessage.button.payload","typeLabel":"string"},"text":{"type":"string","description":"Button text.","uniqueKey":"oneOf.2.whatsappInboundMessage.button.text","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappInboundMessage.button","typeLabel":"object"},"contacts":{"type":"array","items":{"type":"object","description":"When the message type filed is set to `contacts`, this object is included in the message object.","required":["name"],"properties":{"name":{"type":"object","description":"Full contact name formatted as a name object.","required":["formatted_name"],"properties":{"formatted_name":{"type":"string","description":"Full name, as it normally appears.","isRequired":true,"uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].name.formatted_name","typeLabel":"string"},"first_name":{"type":"string","description":"First name.","uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].name.first_name","typeLabel":"string"},"last_name":{"type":"string","description":"Last name.","uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].name.last_name","typeLabel":"string"},"middle_name":{"type":"string","description":"Middle name.","uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].name.middle_name","typeLabel":"string"},"suffix":{"type":"string","description":"Name suffix.","uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].name.suffix","typeLabel":"string"},"prefix":{"type":"string","description":"Name prefix.","uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].name.prefix","typeLabel":"string"}},"isRequired":true,"uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].name","typeLabel":"object"},"addresses":{"type":"array","items":{"type":"object","description":"Full contact address(es) formatted as an addresses object.","properties":{"street":{"type":"string","description":"Street number and name.","uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].addresses.items.[INDEX].street","typeLabel":"string"},"city":{"type":"string","description":"City name.","uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].addresses.items.[INDEX].city","typeLabel":"string"},"state":{"type":"string","description":"State abbreviation.","uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].addresses.items.[INDEX].state","typeLabel":"string"},"zip":{"type":"string","description":"ZIP code.","uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].addresses.items.[INDEX].zip","typeLabel":"string"},"country":{"type":"string","description":"Full country name.","uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].addresses.items.[INDEX].country","typeLabel":"string"},"country_code":{"type":"string","description":"Two-letter country abbreviation.","uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].addresses.items.[INDEX].country_code","typeLabel":"string"},"type":{"type":"string","description":"Standard values are `HOME` and `WORK`.","example":"WORK","uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].addresses.items.[INDEX].type","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].addresses.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].addresses","typeLabel":"object[]"},"birthday":{"type":"string","description":"`YYYY-MM-DD` formatted string.","example":"2022-09-27","uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].birthday","typeLabel":"string"},"emails":{"type":"array","items":{"type":"object","description":"Contact email address(es) formatted as an emails object.","properties":{"email":{"type":"string","description":"Email address.","uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].emails.items.[INDEX].email","typeLabel":"string"},"type":{"type":"string","description":"Standard values are `HOME` and `WORK`.","example":"WORK","uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].emails.items.[INDEX].type","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].emails.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].emails","typeLabel":"object[]"},"org":{"type":"object","description":"Contact organization information formatted as an org object.","properties":{"company":{"type":"string","description":"Name of the contact's company.","uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].org.company","typeLabel":"string"},"department":{"type":"string","description":"Name of the contact's department.","uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].org.department","typeLabel":"string"},"title":{"type":"string","description":"Contact's business title.","uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].org.title","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].org","typeLabel":"object"},"phones":{"type":"array","description":"Contact phone number(s) formatted as a phone object.","items":{"type":"object","properties":{"phone":{"type":"string","description":"Automatically populated with the `wa_id` value as a formatted phone number.","uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].phones.items.[INDEX].phone","typeLabel":"string"},"type":{"type":"string","description":"Standard Values are `CELL`, `MAIN`, `IPHONE`, `HOME`, and `WORK`.","uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].phones.items.[INDEX].type","typeLabel":"string"},"wa_id":{"type":"string","description":"WhatsApp ID.","uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].phones.items.[INDEX].wa_id","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].phones.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].phones","typeLabel":"object[]"},"urls":{"type":"array","description":"Contact URL(s) formatted as a urls object.","items":{"type":"object","properties":{"url":{"type":"string","description":"URL.","uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].urls.items.[INDEX].url","typeLabel":"string"},"type":{"type":"string","description":"Standard values are `HOME` and `WORK`.","uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].urls.items.[INDEX].type","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].urls.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].urls","typeLabel":"object[]"},"vcard":{"type":"string","description":"Optional vCard supplied with the shared contact payload.","uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].vcard","typeLabel":"string"},"origin":{"type":"string","description":"Set to `contact_request` when the user shared the contact in response to a request-contact-info message.","example":"contact_request","uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX].origin","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappInboundMessage.contacts.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappInboundMessage.contacts","typeLabel":"object[]"},"reaction":{"type":"object","description":"When a user reacts to messages with an emoji, the message type is set to `reaction`, and this field is included.","required":["message_id"],"properties":{"message_id":{"type":"string","description":"Specifies the `wamid` of the message received that contained the reaction.","example":"wamid.BgNODYxN...","isRequired":true,"uniqueKey":"oneOf.2.whatsappInboundMessage.reaction.message_id","typeLabel":"string"},"emoji":{"type":"string","description":"**Required** when you send a `reaction` message. Set it to `\"\"` if you want to remove the emoji.\n**Optional** when you received a message from a user. This field is included when a user reacts to messages with an emoji. Otherwise, it indicates a user removed the emoji.","uniqueKey":"oneOf.2.whatsappInboundMessage.reaction.emoji","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappInboundMessage.reaction","typeLabel":"object"},"order":{"type":"object","description":"When a customer places an order, the message type is set to `order`, and this field is included.","properties":{"catalog_id":{"type":"string","description":"The catalog ID.","example":"the-catalog_id","uniqueKey":"oneOf.2.whatsappInboundMessage.order.catalog_id","typeLabel":"string"},"product_items":{"type":"array","items":{"type":"object","properties":{"product_retailer_id":{"type":"string","description":"The product SKU identifier.","uniqueKey":"oneOf.2.whatsappInboundMessage.order.product_items.items.[INDEX].product_retailer_id","typeLabel":"string"},"quantity":{"type":"integer","format":"int32","description":"Number of item.","uniqueKey":"oneOf.2.whatsappInboundMessage.order.product_items.items.[INDEX].quantity","typeLabel":"integer\u003cint32>"},"item_price":{"type":"number","format":"double","description":"Unitary price of item.","uniqueKey":"oneOf.2.whatsappInboundMessage.order.product_items.items.[INDEX].item_price","typeLabel":"number\u003cdouble>"},"currency":{"type":"string","description":"Price currency. [ISO 4217 currency code](https://en.wikipedia.org/wiki/ISO_4217).","example":"USD","uniqueKey":"oneOf.2.whatsappInboundMessage.order.product_items.items.[INDEX].currency","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappInboundMessage.order.product_items.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappInboundMessage.order.product_items","typeLabel":"object[]"},"text":{"type":"string","description":"Text message sent along with the order.","uniqueKey":"oneOf.2.whatsappInboundMessage.order.text","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappInboundMessage.order","typeLabel":"object"},"system":{"type":"object","description":"When the message type is set to `system`, this field is included.\nThis object is added to Webhooks if a user has changed their phone number and if a user’s identity has potentially changed on WhatsApp.","properties":{"body":{"type":"string","description":"Describes the system message event. Supported use cases are:\n- Phone number update: for when a user changes from an old number to a new number.\n- Identity update: for when a user identity has changed.","uniqueKey":"oneOf.2.whatsappInboundMessage.system.body","typeLabel":"string"},"wa_id":{"type":"string","description":"**Added to Webhooks for phone number updates.**\n\nNew WhatsApp ID of the customer.","uniqueKey":"oneOf.2.whatsappInboundMessage.system.wa_id","typeLabel":"string"},"user_id":{"type":"string","description":"**Added to Webhooks for phone number updates.**\n\nThe customer's new WhatsApp Business-scoped user ID (BSUID). This\nfield keeps Meta's original snake_case name inside the `system`\nobject.","example":"US.13491208655302741919","uniqueKey":"oneOf.2.whatsappInboundMessage.system.user_id","typeLabel":"string"},"parent_user_id":{"type":"string","description":"**Added to Webhooks for phone number updates when parent BSUIDs are enabled.**\n\nThe customer's new parent WhatsApp Business-scoped user ID. This\nfield keeps Meta's original snake_case name inside the `system`\nobject.","example":"US.ENT.11815799212886844831","uniqueKey":"oneOf.2.whatsappInboundMessage.system.parent_user_id","typeLabel":"string"},"type":{"type":"string","description":"Supported types are:\n- `user_changed_number`: for a user changed number notification.\n- `user_identity_changed`: for user identity changed notification.","uniqueKey":"oneOf.2.whatsappInboundMessage.system.type","typeLabel":"string"},"user":{"type":"string","description":"**Added to Webhooks for identity updates.**\n\nThe new WhatsApp user ID of the customer.","uniqueKey":"oneOf.2.whatsappInboundMessage.system.user","typeLabel":"string"},"new_wa_id":{"type":"string","description":"**Added to Webhooks for phone number updates.**\n\nNew WhatsApp ID of the customer.","uniqueKey":"oneOf.2.whatsappInboundMessage.system.new_wa_id","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappInboundMessage.system","typeLabel":"object"},"errors":{"type":"array","items":{"type":"object","description":"When the message type `unsupported`, this object is included.","properties":{"code":{"type":"string","description":"The error code.","example":131051,"uniqueKey":"oneOf.2.whatsappInboundMessage.errors.items.[INDEX].code","typeLabel":"string"},"title":{"type":"string","description":"The error title.","example":"Message type unknown","uniqueKey":"oneOf.2.whatsappInboundMessage.errors.items.[INDEX].title","typeLabel":"string"},"message":{"type":"string","description":"The error message.","example":"Message type unknown","uniqueKey":"oneOf.2.whatsappInboundMessage.errors.items.[INDEX].message","typeLabel":"string"},"error_data":{"type":"object","description":"An error data object with the following properties:\n- `details`: A string describing the reason for the error. Example: `Message type is currently not supported.`.","uniqueKey":"oneOf.2.whatsappInboundMessage.errors.items.[INDEX].error_data","typeLabel":"object"}},"uniqueKey":"oneOf.2.whatsappInboundMessage.errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappInboundMessage.errors","typeLabel":"object[]"},"context":{"type":"object","description":"Message context.","properties":{"forwarded":{"type":"boolean","description":"**Added to Webhooks if message was forwarded.**\n\nSet to `true` if the received message has been forwarded.","uniqueKey":"oneOf.2.whatsappInboundMessage.context.forwarded","typeLabel":"boolean"},"frequently_forwarded":{"type":"boolean","description":"**Added to Webhooks if message has been frequently forwarded.**\n\nSet to `true` if the received message has been forwarded more than five times.","uniqueKey":"oneOf.2.whatsappInboundMessage.context.frequently_forwarded","typeLabel":"boolean"},"from":{"type":"string","description":"**Added to Webhooks if message is an inbound reply to a sent message.**\n\nThe WhatsApp ID (a phone number without the '+' prefix) of the sender of the sent message.","uniqueKey":"oneOf.2.whatsappInboundMessage.context.from","typeLabel":"string"},"id":{"type":"string","description":"**Optional.**\n\nThe `wamid` for the sent message for an inbound reply. `wamid` is the original message ID on WhatsApp’s platform.","example":"wamid.BgNODYxN...","uniqueKey":"oneOf.2.whatsappInboundMessage.context.id","typeLabel":"string"},"referred_product":{"type":"object","description":"**Required for Product Inquiry Messages.**\n\nSpecifies the product the user is requesting information about. See also [Sell Products \u0026 Services](https://developers.facebook.com/docs/whatsapp/cloud-api/guides/sell-products-and-services).","properties":{"catalog_id":{"type":"string","description":"The catalog ID.","uniqueKey":"oneOf.2.whatsappInboundMessage.context.referred_product.catalog_id","typeLabel":"string"},"product_retailer_id":{"type":"string","description":"The product SKU identifier.","uniqueKey":"oneOf.2.whatsappInboundMessage.context.referred_product.product_retailer_id","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappInboundMessage.context.referred_product","typeLabel":"object"}},"uniqueKey":"oneOf.2.whatsappInboundMessage.context","typeLabel":"object"},"referral":{"type":"object","description":"When a user messages businesses using call-to-actions buttons on [Ads that Click to WhatsApp](https://www.facebook.com/business/help/447934475640650) or a [Facebook Page call-to-action buttons](https://www.facebook.com/help/977869848936797), this field is included as an attachment.","properties":{"source_url":{"type":"string","description":"Specifies the URL that leads to the ad or post clicked by the user. Opening this URL takes you to the ad viewed by your user.","uniqueKey":"oneOf.2.whatsappInboundMessage.referral.source_url","typeLabel":"string"},"source_type":{"type":"string","description":"Specifies the type of the ad's source. Supported values are \"ad\" or \"post\".","uniqueKey":"oneOf.2.whatsappInboundMessage.referral.source_type","typeLabel":"string"},"source_id":{"type":"string","description":"Specifies the Meta ID for an ad or post.","uniqueKey":"oneOf.2.whatsappInboundMessage.referral.source_id","typeLabel":"string"},"headline":{"type":"string","description":"Specifies the headline used in the ad or post that generated the message.","uniqueKey":"oneOf.2.whatsappInboundMessage.referral.headline","typeLabel":"string"},"body":{"type":"string","description":"The description, or body, from the ad or post that generated the message.","uniqueKey":"oneOf.2.whatsappInboundMessage.referral.body","typeLabel":"string"},"media_type":{"type":"string","description":"Media present in the ad or post the user clicked. Supported values are \"image\" or \"video\".","uniqueKey":"oneOf.2.whatsappInboundMessage.referral.media_type","typeLabel":"string"},"image_url":{"type":"string","description":"**Added if media_type is \"image\".**\n\nContains a URL to the raw image.","uniqueKey":"oneOf.2.whatsappInboundMessage.referral.image_url","typeLabel":"string"},"video_url":{"type":"string","description":"**Added if media_type is \"video\".**\n\nContains a URL to the video.","uniqueKey":"oneOf.2.whatsappInboundMessage.referral.video_url","typeLabel":"string"},"thumbnail_url":{"type":"string","description":"**Added if media_type is \"video\".**\n\nContains a URL to the thumbnail image of the clicked video.","uniqueKey":"oneOf.2.whatsappInboundMessage.referral.thumbnail_url","typeLabel":"string"},"ctwa_clid":{"type":"string","description":"Click ID generated by Meta for ads that click to WhatsApp.","uniqueKey":"oneOf.2.whatsappInboundMessage.referral.ctwa_clid","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappInboundMessage.referral","typeLabel":"object"},"groupId":{"type":"string","description":"WhatsApp group ID. This field is included when the inbound message is sent in a WhatsApp group.","example":"120363345678901234@g.us","uniqueKey":"oneOf.2.whatsappInboundMessage.groupId","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappInboundMessage","typeLabel":"object"},"whatsappMetaBusinessAgent":{"type":"object","description":"Included for whatsapp.meta_business_agent.handover.updated. Currently limited to Public REST API Agents.","properties":{"agentId":{"type":"string","description":"YCloud Agent ID. Not a Meta Agent ID or an Inbox assignee ID.","example":"00000000-0000-4000-8000-000000000001","uniqueKey":"oneOf.2.whatsappMetaBusinessAgent.agentId","typeLabel":"string"},"metaAgentId":{"type":"string","description":"Meta Agent ID, when available.","example":"META_AGENT_ID","uniqueKey":"oneOf.2.whatsappMetaBusinessAgent.metaAgentId","typeLabel":"string"},"phoneNumberId":{"type":"string","description":"Meta business phone number ID. Not an E.164 phone number.","example":"PHONE_NUMBER_ID","uniqueKey":"oneOf.2.whatsappMetaBusinessAgent.phoneNumberId","typeLabel":"string"},"wabaId":{"type":"string","description":"WhatsApp Business Account ID from the source callback, when available.","example":"WABA_ID","uniqueKey":"oneOf.2.whatsappMetaBusinessAgent.wabaId","typeLabel":"string"},"consumerPhoneNumber":{"type":"string","description":"Consumer phone number from the handover callback, normalized to E.164 when available. This is not the business number or phoneNumberId.","pattern":"^\\+[1-9][0-9]{7,14}$","example":"+12025550124","uniqueKey":"oneOf.2.whatsappMetaBusinessAgent.consumerPhoneNumber","typeLabel":"string"},"controlState":{"type":"string","description":"Present for handover events. Currently APP_CONTROL_TAKEN for Public REST API\nhandover callbacks. Does not confirm an Inbox assignment or message delivery.","example":"APP_CONTROL_TAKEN","uniqueKey":"oneOf.2.whatsappMetaBusinessAgent.controlState","typeLabel":"string"},"actor":{"type":"string","description":"Optional handover source actor. For a control_passed handoff this is the\nprevious owner app ID, not the employee who receives the conversation.","example":"PREVIOUS_OWNER_APP_ID","uniqueKey":"oneOf.2.whatsappMetaBusinessAgent.actor","typeLabel":"string"},"reason":{"type":"string","description":"Optional provider handover reason or metadata, for example customer_request. Not a closed enum.","example":"customer_request","uniqueKey":"oneOf.2.whatsappMetaBusinessAgent.reason","typeLabel":"string"},"timestamp":{"type":"integer","format":"int64","description":"Source event time in Unix milliseconds, or processing time if unavailable.","example":1788919204000,"uniqueKey":"oneOf.2.whatsappMetaBusinessAgent.timestamp","typeLabel":"integer\u003cint64>"}},"uniqueKey":"oneOf.2.whatsappMetaBusinessAgent","typeLabel":"object"},"whatsappGroup":{"type":"object","description":"Included when `type` is `whatsapp.group.lifecycle_update`, `whatsapp.group.participants_update`, `whatsapp.group.settings_update`, `whatsapp.group.status_update`, or when `type` is `whatsapp.message.updated` for group message status updates.","properties":{"wabaId":{"type":"string","description":"WhatsApp Business Account ID.","example":"123456789012345","uniqueKey":"oneOf.2.whatsappGroup.wabaId","typeLabel":"string"},"displayPhoneNumber":{"type":"string","description":"The display phone number from WhatsApp webhook metadata.","example":"16315551111","uniqueKey":"oneOf.2.whatsappGroup.displayPhoneNumber","typeLabel":"string"},"phoneNumberId":{"type":"string","description":"WhatsApp phone number ID.","example":"1234567890123456","uniqueKey":"oneOf.2.whatsappGroup.phoneNumberId","typeLabel":"string"},"field":{"type":"string","description":"WhatsApp webhook field that produced the group event.","enum":["group_lifecycle_update","group_participants_update","group_settings_update","group_status_update","messages"],"uniqueKey":"oneOf.2.whatsappGroup.field","typeLabel":"enum\u003cstring>"},"type":{"type":"string","description":"Specific WhatsApp group event type.","enum":["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"],"uniqueKey":"oneOf.2.whatsappGroup.type","typeLabel":"enum\u003cstring>"},"requestId":{"type":"string","description":"The request ID returned by an asynchronous group API operation.","example":"REQ_1","uniqueKey":"oneOf.2.whatsappGroup.requestId","typeLabel":"string"},"status":{"type":"string","description":"WhatsApp group webhook status.","enum":["created","failed","deleted","added","removed","left","requested","revoked","updated","suspended","suspend_cleared","sent","delivered","read","expired"],"uniqueKey":"oneOf.2.whatsappGroup.status","typeLabel":"enum\u003cstring>"},"groupId":{"type":"string","description":"WhatsApp group ID.","example":"120363345678901234@g.us","uniqueKey":"oneOf.2.whatsappGroup.groupId","typeLabel":"string"},"messageId":{"type":"string","description":"YCloud group-message ID. Present only when the status event is linked to a saved outbound group message.","example":"wam_group_01","uniqueKey":"oneOf.2.whatsappGroup.messageId","typeLabel":"string"},"inviteLink":{"type":"string","description":"The group invite link.","example":"https://chat.whatsapp.com/AbCdEfGhIjK","uniqueKey":"oneOf.2.whatsappGroup.inviteLink","typeLabel":"string"},"reason":{"type":"string","description":"The reason for a participant, join request, or removal event.","example":"invite_link","uniqueKey":"oneOf.2.whatsappGroup.reason","typeLabel":"string"},"initiatedBy":{"type":"string","description":"Indicates who initiated a participant removal event.","enum":["business","participant"],"example":"business","uniqueKey":"oneOf.2.whatsappGroup.initiatedBy","typeLabel":"enum\u003cstring>"},"joinRequestId":{"type":"string","description":"The join request ID.","example":"join-request-id","uniqueKey":"oneOf.2.whatsappGroup.joinRequestId","typeLabel":"string"},"waId":{"type":"string","description":"WhatsApp user ID for a single participant event.","example":"16315551111","uniqueKey":"oneOf.2.whatsappGroup.waId","typeLabel":"string"},"recipientUserId":{"type":"string","description":"Business-scoped user ID for a single participant event.","example":"US.1234","uniqueKey":"oneOf.2.whatsappGroup.recipientUserId","typeLabel":"string"},"parentRecipientUserId":{"type":"string","description":"Parent business-scoped user ID for a single participant event.","example":"US.parent123","uniqueKey":"oneOf.2.whatsappGroup.parentRecipientUserId","typeLabel":"string"},"customerProfile":{"type":"object","description":"WhatsApp customer profile information.","properties":{"name":{"type":"string","description":"WhatsApp profile name.","example":"John Doe","uniqueKey":"oneOf.2.whatsappGroup.customerProfile.name","typeLabel":"string"},"username":{"type":"string","description":"WhatsApp username.","example":"john_doe","uniqueKey":"oneOf.2.whatsappGroup.customerProfile.username","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappGroup.customerProfile","typeLabel":"object"},"subject":{"type":"string","description":"The group subject.","example":"New Purchase Inquiry","uniqueKey":"oneOf.2.whatsappGroup.subject","typeLabel":"string"},"description":{"type":"string","description":"The group description.","example":"Group for purchase inquiries.","uniqueKey":"oneOf.2.whatsappGroup.description","typeLabel":"string"},"joinApprovalMode":{"type":"string","description":"WhatsApp group join approval mode.\n- `approval_required`: New members must be approved before joining.\n- `auto_approve`: New members can join without approval.","enum":["approval_required","auto_approve"],"example":"auto_approve","uniqueKey":"oneOf.2.whatsappGroup.joinApprovalMode","typeLabel":"enum\u003cstring>"},"addedParticipants":{"type":"array","description":"Participants added to the group.","items":{"type":"object","description":"Participant information included in group webhook payloads.","properties":{"input":{"type":"string","description":"The original participant input.","example":"US.1234","uniqueKey":"oneOf.2.whatsappGroup.addedParticipants.items.[INDEX].input","typeLabel":"string"},"waId":{"type":"string","description":"WhatsApp user ID.","example":"16315551111","uniqueKey":"oneOf.2.whatsappGroup.addedParticipants.items.[INDEX].waId","typeLabel":"string"},"recipientUserId":{"type":"string","description":"Business-scoped user ID.","example":"US.1234","uniqueKey":"oneOf.2.whatsappGroup.addedParticipants.items.[INDEX].recipientUserId","typeLabel":"string"},"parentRecipientUserId":{"type":"string","description":"Parent business-scoped user ID.","example":"US.parent123","uniqueKey":"oneOf.2.whatsappGroup.addedParticipants.items.[INDEX].parentRecipientUserId","typeLabel":"string"},"customerProfile":{"type":"object","description":"WhatsApp customer profile information.","properties":{"name":{"type":"string","description":"WhatsApp profile name.","example":"John Doe","uniqueKey":"oneOf.2.whatsappGroup.addedParticipants.items.[INDEX].customerProfile.name","typeLabel":"string"},"username":{"type":"string","description":"WhatsApp username.","example":"john_doe","uniqueKey":"oneOf.2.whatsappGroup.addedParticipants.items.[INDEX].customerProfile.username","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappGroup.addedParticipants.items.[INDEX].customerProfile","typeLabel":"object"},"errors":{"type":"array","description":"Errors returned by WhatsApp for this participant.","items":{"type":"object","additionalProperties":true,"uniqueKey":"oneOf.2.whatsappGroup.addedParticipants.items.[INDEX].errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappGroup.addedParticipants.items.[INDEX].errors","typeLabel":"object[]"}},"uniqueKey":"oneOf.2.whatsappGroup.addedParticipants.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappGroup.addedParticipants","typeLabel":"object[]"},"removedParticipants":{"type":"array","description":"Participants removed from the group.","items":{"type":"object","description":"Participant information included in group webhook payloads.","properties":{"input":{"type":"string","description":"The original participant input.","example":"US.1234","uniqueKey":"oneOf.2.whatsappGroup.removedParticipants.items.[INDEX].input","typeLabel":"string"},"waId":{"type":"string","description":"WhatsApp user ID.","example":"16315551111","uniqueKey":"oneOf.2.whatsappGroup.removedParticipants.items.[INDEX].waId","typeLabel":"string"},"recipientUserId":{"type":"string","description":"Business-scoped user ID.","example":"US.1234","uniqueKey":"oneOf.2.whatsappGroup.removedParticipants.items.[INDEX].recipientUserId","typeLabel":"string"},"parentRecipientUserId":{"type":"string","description":"Parent business-scoped user ID.","example":"US.parent123","uniqueKey":"oneOf.2.whatsappGroup.removedParticipants.items.[INDEX].parentRecipientUserId","typeLabel":"string"},"customerProfile":{"type":"object","description":"WhatsApp customer profile information.","properties":{"name":{"type":"string","description":"WhatsApp profile name.","example":"John Doe","uniqueKey":"oneOf.2.whatsappGroup.removedParticipants.items.[INDEX].customerProfile.name","typeLabel":"string"},"username":{"type":"string","description":"WhatsApp username.","example":"john_doe","uniqueKey":"oneOf.2.whatsappGroup.removedParticipants.items.[INDEX].customerProfile.username","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappGroup.removedParticipants.items.[INDEX].customerProfile","typeLabel":"object"},"errors":{"type":"array","description":"Errors returned by WhatsApp for this participant.","items":{"type":"object","additionalProperties":true,"uniqueKey":"oneOf.2.whatsappGroup.removedParticipants.items.[INDEX].errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappGroup.removedParticipants.items.[INDEX].errors","typeLabel":"object[]"}},"uniqueKey":"oneOf.2.whatsappGroup.removedParticipants.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappGroup.removedParticipants","typeLabel":"object[]"},"failedParticipants":{"type":"array","description":"Participants that failed to be added or removed.","items":{"type":"object","description":"Participant information included in group webhook payloads.","properties":{"input":{"type":"string","description":"The original participant input.","example":"US.1234","uniqueKey":"oneOf.2.whatsappGroup.failedParticipants.items.[INDEX].input","typeLabel":"string"},"waId":{"type":"string","description":"WhatsApp user ID.","example":"16315551111","uniqueKey":"oneOf.2.whatsappGroup.failedParticipants.items.[INDEX].waId","typeLabel":"string"},"recipientUserId":{"type":"string","description":"Business-scoped user ID.","example":"US.1234","uniqueKey":"oneOf.2.whatsappGroup.failedParticipants.items.[INDEX].recipientUserId","typeLabel":"string"},"parentRecipientUserId":{"type":"string","description":"Parent business-scoped user ID.","example":"US.parent123","uniqueKey":"oneOf.2.whatsappGroup.failedParticipants.items.[INDEX].parentRecipientUserId","typeLabel":"string"},"customerProfile":{"type":"object","description":"WhatsApp customer profile information.","properties":{"name":{"type":"string","description":"WhatsApp profile name.","example":"John Doe","uniqueKey":"oneOf.2.whatsappGroup.failedParticipants.items.[INDEX].customerProfile.name","typeLabel":"string"},"username":{"type":"string","description":"WhatsApp username.","example":"john_doe","uniqueKey":"oneOf.2.whatsappGroup.failedParticipants.items.[INDEX].customerProfile.username","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappGroup.failedParticipants.items.[INDEX].customerProfile","typeLabel":"object"},"errors":{"type":"array","description":"Errors returned by WhatsApp for this participant.","items":{"type":"object","additionalProperties":true,"uniqueKey":"oneOf.2.whatsappGroup.failedParticipants.items.[INDEX].errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappGroup.failedParticipants.items.[INDEX].errors","typeLabel":"object[]"}},"uniqueKey":"oneOf.2.whatsappGroup.failedParticipants.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappGroup.failedParticipants","typeLabel":"object[]"},"settings":{"type":"array","description":"Group setting update details.","items":{"type":"object","description":"Group setting update detail.","properties":{"name":{"type":"string","description":"Setting name.","enum":["profile_picture","group_subject","group_description"],"example":"group_subject","uniqueKey":"oneOf.2.whatsappGroup.settings.items.[INDEX].name","typeLabel":"enum\u003cstring>"},"text":{"type":"string","description":"Text value for subject or description updates.","example":"New Purchase Inquiry","uniqueKey":"oneOf.2.whatsappGroup.settings.items.[INDEX].text","typeLabel":"string"},"updateSuccessful":{"type":"boolean","description":"Whether the setting update succeeded.","example":true,"uniqueKey":"oneOf.2.whatsappGroup.settings.items.[INDEX].updateSuccessful","typeLabel":"boolean"},"mimeType":{"type":"string","description":"MIME type for profile picture updates.","example":"image/jpeg","uniqueKey":"oneOf.2.whatsappGroup.settings.items.[INDEX].mimeType","typeLabel":"string"},"sha256":{"type":"string","description":"SHA-256 hash for profile picture updates.","example":"2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae","uniqueKey":"oneOf.2.whatsappGroup.settings.items.[INDEX].sha256","typeLabel":"string"},"errors":{"type":"array","description":"Errors returned by WhatsApp for this setting.","items":{"type":"object","additionalProperties":true,"uniqueKey":"oneOf.2.whatsappGroup.settings.items.[INDEX].errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappGroup.settings.items.[INDEX].errors","typeLabel":"object[]"}},"uniqueKey":"oneOf.2.whatsappGroup.settings.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappGroup.settings","typeLabel":"object[]"},"errors":{"type":"array","description":"Errors returned by WhatsApp.","items":{"type":"object","additionalProperties":true,"uniqueKey":"oneOf.2.whatsappGroup.errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappGroup.errors","typeLabel":"object[]"},"contacts":{"type":"array","description":"Contacts included in group message status webhooks.","items":{"type":"object","description":"Contact information included in group message status webhooks.","properties":{"customerProfile":{"type":"object","description":"WhatsApp customer profile information.","properties":{"name":{"type":"string","description":"WhatsApp profile name.","example":"John Doe","uniqueKey":"oneOf.2.whatsappGroup.contacts.items.[INDEX].customerProfile.name","typeLabel":"string"},"username":{"type":"string","description":"WhatsApp username.","example":"john_doe","uniqueKey":"oneOf.2.whatsappGroup.contacts.items.[INDEX].customerProfile.username","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappGroup.contacts.items.[INDEX].customerProfile","typeLabel":"object"},"waId":{"type":"string","description":"WhatsApp user ID.","example":"16315551111","uniqueKey":"oneOf.2.whatsappGroup.contacts.items.[INDEX].waId","typeLabel":"string"},"recipientUserId":{"type":"string","description":"Business-scoped user ID.","example":"US.1234","uniqueKey":"oneOf.2.whatsappGroup.contacts.items.[INDEX].recipientUserId","typeLabel":"string"},"parentRecipientUserId":{"type":"string","description":"Parent business-scoped user ID.","example":"US.parent123","uniqueKey":"oneOf.2.whatsappGroup.contacts.items.[INDEX].parentRecipientUserId","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappGroup.contacts.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappGroup.contacts","typeLabel":"object[]"},"statuses":{"type":"array","description":"Group message status details.","items":{"type":"object","description":"Group message status detail.","properties":{"id":{"type":"string","description":"WhatsApp message ID.","example":"wamid.1","uniqueKey":"oneOf.2.whatsappGroup.statuses.items.[INDEX].id","typeLabel":"string"},"status":{"type":"string","description":"Message status.","enum":["sent","delivered","read","failed","expired"],"example":"delivered","uniqueKey":"oneOf.2.whatsappGroup.statuses.items.[INDEX].status","typeLabel":"enum\u003cstring>"},"timestamp":{"type":"integer","format":"int64","description":"Unix timestamp indicating when the message status was updated.","example":1739321024,"uniqueKey":"oneOf.2.whatsappGroup.statuses.items.[INDEX].timestamp","typeLabel":"integer\u003cint64>"},"recipientId":{"type":"string","description":"Recipient group ID.","example":"120363345678901234@g.us","uniqueKey":"oneOf.2.whatsappGroup.statuses.items.[INDEX].recipientId","typeLabel":"string"},"recipientType":{"type":"string","description":"Recipient type.","enum":["group"],"example":"group","uniqueKey":"oneOf.2.whatsappGroup.statuses.items.[INDEX].recipientType","typeLabel":"enum\u003cstring>"},"recipientParticipantId":{"type":"string","description":"WhatsApp user ID of the recipient participant.","example":"16315551111","uniqueKey":"oneOf.2.whatsappGroup.statuses.items.[INDEX].recipientParticipantId","typeLabel":"string"},"recipientUserId":{"type":"string","description":"Business-scoped user ID of the recipient participant.","example":"US.1234","uniqueKey":"oneOf.2.whatsappGroup.statuses.items.[INDEX].recipientUserId","typeLabel":"string"},"parentRecipientUserId":{"type":"string","description":"Parent business-scoped user ID of the recipient participant.","example":"US.parent123","uniqueKey":"oneOf.2.whatsappGroup.statuses.items.[INDEX].parentRecipientUserId","typeLabel":"string"},"conversation":{"type":"object","description":"WhatsApp conversation object included in group message status webhooks.","properties":{"id":{"type":"string","description":"Conversation ID.","example":"conversation-id","uniqueKey":"oneOf.2.whatsappGroup.statuses.items.[INDEX].conversation.id","typeLabel":"string"},"expirationTimestamp":{"type":"integer","format":"int64","description":"Unix timestamp indicating when the conversation expires.","example":1739321024,"uniqueKey":"oneOf.2.whatsappGroup.statuses.items.[INDEX].conversation.expirationTimestamp","typeLabel":"integer\u003cint64>"},"origin":{"type":"object","properties":{"type":{"type":"string","description":"Conversation origin type.","example":"service","uniqueKey":"oneOf.2.whatsappGroup.statuses.items.[INDEX].conversation.origin.type","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappGroup.statuses.items.[INDEX].conversation.origin","typeLabel":"object"}},"uniqueKey":"oneOf.2.whatsappGroup.statuses.items.[INDEX].conversation","typeLabel":"object"},"pricing":{"type":"object","description":"Pricing information included in group message status webhooks.","properties":{"billable":{"type":"boolean","description":"Whether the message is billable.","example":true,"uniqueKey":"oneOf.2.whatsappGroup.statuses.items.[INDEX].pricing.billable","typeLabel":"boolean"},"pricingModel":{"type":"string","description":"Pricing model.","example":"PMP","uniqueKey":"oneOf.2.whatsappGroup.statuses.items.[INDEX].pricing.pricingModel","typeLabel":"string"},"type":{"type":"string","description":"Pricing type.","example":"regular","uniqueKey":"oneOf.2.whatsappGroup.statuses.items.[INDEX].pricing.type","typeLabel":"string"},"category":{"type":"string","description":"Raw group pricing category reported by Meta. YCloud does not expose the internal MM Lite mapping in this webhook field.","enum":["group_marketing","group_utility","group_service"],"example":"group_service","uniqueKey":"oneOf.2.whatsappGroup.statuses.items.[INDEX].pricing.category","typeLabel":"enum\u003cstring>"}},"uniqueKey":"oneOf.2.whatsappGroup.statuses.items.[INDEX].pricing","typeLabel":"object"},"errors":{"type":"array","description":"Errors returned by WhatsApp.","items":{"type":"object","additionalProperties":true,"uniqueKey":"oneOf.2.whatsappGroup.statuses.items.[INDEX].errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappGroup.statuses.items.[INDEX].errors","typeLabel":"object[]"}},"uniqueKey":"oneOf.2.whatsappGroup.statuses.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappGroup.statuses","typeLabel":"object[]"},"webhookTime":{"type":"string","format":"date-time","description":"The time at which WhatsApp triggered this webhook.","example":"2026-05-13T00:00:00.000Z","uniqueKey":"oneOf.2.whatsappGroup.webhookTime","typeLabel":"string\u003cdate-time>"},"dedupeKey":{"type":"string","description":"Idempotency key for deduplicating group webhook events.","example":"WABA_ID|REQ_1|group_lifecycle_update|group_create|created","uniqueKey":"oneOf.2.whatsappGroup.dedupeKey","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappGroup","typeLabel":"object"},"whatsappPhoneNumber":{"type":"object","description":"Included when `type` is `whatsapp.phone_number.deleted`, `whatsapp.phone_number.name_updated`, `whatsapp.phone_number.quality_updated`, or `whatsapp.phone_number.business_username_updated`.","properties":{"id":{"type":"string","description":"Phone number ID.","example":"1234567890123456","uniqueKey":"oneOf.2.whatsappPhoneNumber.id","typeLabel":"string"},"phoneNumber":{"type":"string","description":"Phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","uniqueKey":"oneOf.2.whatsappPhoneNumber.phoneNumber","typeLabel":"string"},"displayPhoneNumber":{"type":"string","description":"Display phone number.","example":"+1 631-555-1111","uniqueKey":"oneOf.2.whatsappPhoneNumber.displayPhoneNumber","typeLabel":"string"},"wabaId":{"type":"string","description":"WhatsApp Business Account ID.","example":"whatsapp-business-account-id","uniqueKey":"oneOf.2.whatsappPhoneNumber.wabaId","typeLabel":"string"},"businessUsername":{"type":"string","description":"Active Business Username for this phone number. The value is a plain username without `@`.","example":"acme.support","uniqueKey":"oneOf.2.whatsappPhoneNumber.businessUsername","typeLabel":"string"},"businessUsernameStatus":{"type":"string","description":"Business Username state for a WhatsApp business phone number.\n- `not_set`: No active or pending Business Username exists.\n- `active`: A Business Username is active.\n- `reserved`: A requested Business Username is reserved by Meta and may still be under review.\n- `pending_review`: Legacy compatibility value for an under-review request. New writes use `reserved`.\nIf an active username exists while a new request is reserved or under review, `businessUsernameStatus` is `reserved`, `businessUsername` contains the still-active username, and `requestedBusinessUsername` contains the requested username.","enum":["not_set","active","pending_review","reserved"],"uniqueKey":"oneOf.2.whatsappPhoneNumber.businessUsernameStatus","typeLabel":"enum\u003cstring>"},"requestedBusinessUsername":{"type":"string","description":"Last requested Business Username that is still under review. This value can coexist with an active `businessUsername` while the new request is pending.","example":"acme.help","uniqueKey":"oneOf.2.whatsappPhoneNumber.requestedBusinessUsername","typeLabel":"string"},"businessUsernameUpdatedAt":{"type":"string","format":"date-time","description":"The time when the Business Username state was last updated.","example":"2026-05-26T12:00:00.000Z","uniqueKey":"oneOf.2.whatsappPhoneNumber.businessUsernameUpdatedAt","typeLabel":"string\u003cdate-time>"},"qualityRating":{"type":"string","description":"Quality rating. One of `GREEN`, `YELLOW`, `RED`, or `UNKNOWN`. See also [Phone Number Quality Rating](https://www.facebook.com/business/help/896873687365001).\n- `GREEN`: High quality.\n- `YELLOW`: Medium quality.\n- `RED`: Low quality.\n- `UNKNOWN`: Unknown quality.","enum":["GREEN","YELLOW","RED","UNKNOWN"],"uniqueKey":"oneOf.2.whatsappPhoneNumber.qualityRating","typeLabel":"enum\u003cstring>"},"messagingLimit":{"type":"string","description":"Messaging limits determine the maximum number of business-initiated conversations each phone number can start in a rolling 24-hour period. See also [Messaging Limits](https://developers.facebook.com/docs/whatsapp/messaging-limits).\n- `TIER_NOT_SET`: Unknown limit.\n- `TIER_50`: 50 business-initiated conversations in a rolling 24-hour period.\n- `TIER_250`: 250 business-initiated conversations in a rolling 24-hour period.\n- `TIER_1K`: 1K business-initiated conversations with unique customers in a rolling 24-hour period.\n- `TIER_10K`: 10K business-initiated conversations with unique customers in a rolling 24-hour period.\n- `TIER_100K`: 100K business-initiated conversations with unique customers in a rolling 24-hour period.\n- `TIER_UNLIMITED`: An unlimited number of business-initiated conversations in a rolling 24-hour period.","example":"TIER_1K","uniqueKey":"oneOf.2.whatsappPhoneNumber.messagingLimit","typeLabel":"string"},"whatsappBusinessManagerMessagingLimit":{"type":"string","description":"The owning business portfolio's messaging limit. Starting October 7, 2025, messaging limits will instead be calculated and set on a business portfolio basis, and will be shared by all business phone numbers within each portfolio. See also [phone_number_quality_update webhook reference](https://developers.facebook.com/docs/whatsapp/cloud-api/webhooks/reference/phone_number_quality_update).\n- `TIER_NOT_SET`: The business phone number has not been used to send a message yet.\n- `TIER_50`: Messaging limit of 50 business-initiated conversations in a rolling 24-hour period.\n- `TIER_250`: Messaging limit of 250 business-initiated conversations in a rolling 24-hour period.\n- `TIER_2K`: Messaging limit of 2,000 business-initiated conversations in a rolling 24-hour period.\n- `TIER_10K`: Messaging limit of 10,000 business-initiated conversations in a rolling 24-hour period.\n- `TIER_100K`: Messaging limit of 100,000 business-initiated conversations in a rolling 24-hour period.\n- `TIER_UNLIMITED`: The business phone number has higher throughput with unlimited business-initiated conversations.","uniqueKey":"oneOf.2.whatsappPhoneNumber.whatsappBusinessManagerMessagingLimit","typeLabel":"string"},"verifiedName":{"type":"string","description":"Verified name.","example":"John’s Cake Shop","uniqueKey":"oneOf.2.whatsappPhoneNumber.verifiedName","typeLabel":"string"},"codeVerificationStatus":{"type":"string","description":"To see if a phone number has been verified via OTP (one-time password).","enum":["VERIFIED","NOT_VERIFIED","EXPIRED"],"uniqueKey":"oneOf.2.whatsappPhoneNumber.codeVerificationStatus","typeLabel":"enum\u003cstring>"},"isOfficialBusinessAccount":{"type":"boolean","description":"Whether this phone number is an official business account or not.\nAn official business account has a green checkmark badge in its profile and chat thread headers. See [Official Business Account](https://developers.facebook.com/docs/whatsapp/overview/business-accounts#official-business-account) for more information.","uniqueKey":"oneOf.2.whatsappPhoneNumber.isOfficialBusinessAccount","typeLabel":"boolean"},"status":{"type":"string","description":"The status of a WhatsApp business phone number.\n- `PENDING`: Pending. Phone number is newly added. Verify and register this phone number so it can be connected to your account.\n- `UNVERIFIED`: Unverified. Verify this phone number to start sending messages.\n- `MANUAL_REVIEW`: Being reviewed. Phone number is currently being reviewed for connection to your account.\n- `DISCONNECTED`: Offline. Phone number is currently not reachable by WhatsApp servers.\n- `CONNECTED`: Connected. Phone number is associated with this account and working properly.\n- `FLAGGED`: Flagged. This phone number has been flagged due to low quality messages.\n- `WARNED`: Warned. A warning has been issued for this number, potentially due to spam reports.\n- `RATE_LIMITED`: Rate limited. The number of messages you can send from this phone number may be restricted.\n- `BANNED`: Banned. Phone number cannot be used with a WhatsApp account.\n- `RESTRICTED`: Restricted. This phone number has reached its 24-hour messaging limit and can no longer send messages to customers. Please wait until the messaging limit is reset to send messages.\n- `BLOCKED`: Message limit reached. The limit has been reached for this 24-hour period.\n- `MIGRATED`: Transferred. This phone number has been transferred to another WhatsApp Business account.\n- `UNKNOWN`: Unavailable. The status of this phone number can't be determined right now.","enum":["PENDING","UNVERIFIED","MANUAL_REVIEW","DISCONNECTED","CONNECTED","FLAGGED","WARNED","RATE_LIMITED","BANNED","RESTRICTED","BLOCKED","MIGRATED","UNKNOWN"],"uniqueKey":"oneOf.2.whatsappPhoneNumber.status","typeLabel":"enum\u003cstring>"},"nameStatus":{"type":"string","description":"The review status of the current display name request. See also [Get Display Name Status](https://developers.facebook.com/docs/whatsapp/business-management-api/manage-phone-numbers#get-display-name-status--beta-).\n- `APPROVED`: The name has been approved. You can download your certificate now.\n- `AVAILABLE_WITHOUT_REVIEW`: The certificate for the phone is available and display name is ready to use without review.\n- `DECLINED`: The name has not been approved. You cannot download your certificate.\n- `EXPIRED`: Your certificate has expire and can no longer be downloaded.\n- `PENDING_REVIEW`: Your name request is under review. You cannot download your certificate.\n- `NONE`: No certificate is available.","enum":["APPROVED","AVAILABLE_WITHOUT_REVIEW","DECLINED","EXPIRED","PENDING_REVIEW","NONE"],"uniqueKey":"oneOf.2.whatsappPhoneNumber.nameStatus","typeLabel":"enum\u003cstring>"},"newNameStatus":{"type":"string","description":"The review status of the new display name request.\nSee also [Get Display Name Status](https://developers.facebook.com/docs/whatsapp/business-management-api/manage-phone-numbers#get-display-name-status--beta-).","enum":["APPROVED","AVAILABLE_WITHOUT_REVIEW","DECLINED","EXPIRED","PENDING_REVIEW","NONE"],"uniqueKey":"oneOf.2.whatsappPhoneNumber.newNameStatus","typeLabel":"enum\u003cstring>"},"decision":{"type":"string","description":"Review decision made on this phone number. One of `APPROVED` or `REJECTED`.","enum":["APPROVED","REJECTED"],"uniqueKey":"oneOf.2.whatsappPhoneNumber.decision","typeLabel":"enum\u003cstring>"},"requestedVerifiedName":{"type":"string","description":"Last requested verified name.","uniqueKey":"oneOf.2.whatsappPhoneNumber.requestedVerifiedName","typeLabel":"string"},"rejectionReason":{"type":"string","description":"Rejection reason.","uniqueKey":"oneOf.2.whatsappPhoneNumber.rejectionReason","typeLabel":"string"},"qualityUpdateEvent":{"type":"string","description":"Indicates the update event type of WhatsApp phone number quality when a notification is sent to you.\n- `ONBOARDING`: Typically when the messaging limit changes from `TIER_NOT_SET` to another tier.\n- `UPGRADE`: Messaging limit tier upgraded.\n- `DOWNGRADE`: Messaging limit tier downgraded.\n- `FLAGGED`: Flagged status occurs when the quality rating reaches a low state. If the message quality improves to a high or medium state and maintains this for 7 days, your status will return to Connected. If the quality rating doesn't improve, your status will still return to Connected, but you'll be placed in a lower messaging limit tier. Learn more on [Phone Number Quality Rating](https://www.facebook.com/business/help/896873687365001) docs.\n- `UNFLAGGED`: Phone number status changes from `FLAGGED` to `CONNECTED`.","enum":["ONBOARDING","UPGRADE","DOWNGRADE","FLAGGED","UNFLAGGED"],"uniqueKey":"oneOf.2.whatsappPhoneNumber.qualityUpdateEvent","typeLabel":"enum\u003cstring>"},"updateEvent":{"type":"string","description":"Account update event that triggered this phone number status change.","enum":["ACCOUNT_RECONNECTED","ACCOUNT_OFFBOARDED"],"example":"ACCOUNT_OFFBOARDED","uniqueKey":"oneOf.2.whatsappPhoneNumber.updateEvent","typeLabel":"enum\u003cstring>"},"throughputLevel":{"type":"string","description":"Current Meta throughput level of the WhatsApp phone number.\n- `STANDARD`: Default Cloud API throughput level, currently up to 80 messages per second.\n- `HIGH`: Upgraded Cloud API throughput level, currently up to 1,000 messages per second, subject to Meta's current Cloud API throughput rules.\n- `NOT_APPLICABLE`: Throughput level is not applicable to this phone number.","enum":["STANDARD","HIGH","NOT_APPLICABLE"],"example":"HIGH","uniqueKey":"oneOf.2.whatsappPhoneNumber.throughputLevel","typeLabel":"enum\u003cstring>"}},"uniqueKey":"oneOf.2.whatsappPhoneNumber","typeLabel":"object"},"whatsappPayment":{"type":"object","description":"Included when `type` is `whatsapp.payment.updated`.","required":["wabaId","referenceId","status"],"properties":{"wabaId":{"type":"string","description":"WhatsApp Business Account ID.","isRequired":true,"uniqueKey":"oneOf.2.whatsappPayment.wabaId","typeLabel":"string"},"referenceId":{"type":"string","description":"Unique identifier for the payment provided by the business.\nIt is case sensitive and cannot be an empty string and can only contain English letters, numbers, underscores, dashes, or dots, and should not exceed 35 characters.","isRequired":true,"uniqueKey":"oneOf.2.whatsappPayment.referenceId","typeLabel":"string"},"status":{"type":"string","description":"Status of this payment.\n- `captured`: Indicates the payment is successfully completed.\n- `pending`: Indicates the user attempted but yet to receive success transactions signal.","enum":["captured","pending"],"isRequired":true,"uniqueKey":"oneOf.2.whatsappPayment.status","typeLabel":"enum\u003cstring>"},"transactions":{"type":"array","description":"Contains the latest transaction attempt for this payment.","items":{"type":"object","description":"Represents a transaction attempt for a payment.","required":["id","type","status","createdTimestamp","updatedTimestamp","amount","currency"],"properties":{"id":{"type":"string","description":"Transaction ID.","isRequired":true,"uniqueKey":"oneOf.2.whatsappPayment.transactions.items.[INDEX].id","typeLabel":"string"},"type":{"type":"string","description":"The payment type for this transactions. One of `billdesk`, `razorpay`, `payu`, or `zaakpay`.","enum":["billdesk","razorpay","payu","zaakpay"],"isRequired":true,"uniqueKey":"oneOf.2.whatsappPayment.transactions.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"status":{"type":"string","description":"The status of the transaction. One of `pending`, `success` or `failed`.","enum":["pending","success","failed"],"isRequired":true,"uniqueKey":"oneOf.2.whatsappPayment.transactions.items.[INDEX].status","typeLabel":"enum\u003cstring>"},"createdTimestamp":{"type":"integer","format":"int64","description":"Time when transaction was created in epoch milliseconds.","isRequired":true,"uniqueKey":"oneOf.2.whatsappPayment.transactions.items.[INDEX].createdTimestamp","typeLabel":"integer\u003cint64>"},"updatedTimestamp":{"type":"integer","format":"int64","description":"Time when transaction was last updated in epoch milliseconds.","isRequired":true,"uniqueKey":"oneOf.2.whatsappPayment.transactions.items.[INDEX].updatedTimestamp","typeLabel":"integer\u003cint64>"},"amount":{"type":"object","description":"Total amount that user has paid.","required":["offset","value"],"properties":{"offset":{"type":"integer","format":"int32","description":"Must be `100` for `INR`.","example":100,"isRequired":true,"uniqueKey":"oneOf.2.whatsappPayment.transactions.items.[INDEX].amount.offset","typeLabel":"integer\u003cint32>"},"value":{"type":"integer","format":"int32","description":"Positive integer representing the amount value multiplied by offset.\nFor example, ₹12.34 has value 1234.","example":1234,"isRequired":true,"uniqueKey":"oneOf.2.whatsappPayment.transactions.items.[INDEX].amount.value","typeLabel":"integer\u003cint32>"},"description":{"type":"string","description":"Use only for `tax`, `shipping`, or `discount`.\nDescription of the amount. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappPayment.transactions.items.[INDEX].amount.description","typeLabel":"string"},"discount_program_name":{"type":"string","description":"Use only for `discount`.\nText used for defining incentivised orders. If order is incentivised, the merchant needs to define this information. Max character limit is 60 characters.","maxLength":60,"uniqueKey":"oneOf.2.whatsappPayment.transactions.items.[INDEX].amount.discount_program_name","typeLabel":"string"}},"isRequired":true,"uniqueKey":"oneOf.2.whatsappPayment.transactions.items.[INDEX].amount","typeLabel":"object"},"currency":{"type":"string","description":"The currency for this payment.\nCurrently the only supported value is `INR`.","isRequired":true,"uniqueKey":"oneOf.2.whatsappPayment.transactions.items.[INDEX].currency","typeLabel":"string"},"methodType":{"type":"string","description":"Describes the type of payment method used by consumer to pay for the order. Can be one of `upi`, `card`, `wallet`, or `netbanking`.\nThe payment method information might not be available for failed payments.","example":"upi","uniqueKey":"oneOf.2.whatsappPayment.transactions.items.[INDEX].methodType","typeLabel":"string"},"error":{"type":"object","description":"The payment error details might not be available for all payments attempts.","required":["code","reason"],"properties":{"code":{"type":"string","description":"Describes the payment failure reason that generated by payment gateway and Meta transmits this to partners.","isRequired":true,"uniqueKey":"oneOf.2.whatsappPayment.transactions.items.[INDEX].error.code","typeLabel":"string"},"reason":{"type":"string","description":"Describes the payment failure reason in plain text that is generated by payment gateway and Meta transmits this to partners.","isRequired":true,"uniqueKey":"oneOf.2.whatsappPayment.transactions.items.[INDEX].error.reason","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappPayment.transactions.items.[INDEX].error","typeLabel":"object"}},"uniqueKey":"oneOf.2.whatsappPayment.transactions.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappPayment.transactions","typeLabel":"object[]"}},"uniqueKey":"oneOf.2.whatsappPayment","typeLabel":"object"},"whatsappTemplate":{"type":"object","description":"Included when `type` is `whatsapp.template.reviewed`, `whatsapp.template.quality_updated`, `whatsapp.template.category_updated`, or `whatsapp.template.correct_category_detection`.","required":["wabaId","name","language"],"properties":{"wabaId":{"type":"string","description":"WhatsApp Business Account ID.","example":"whatsapp-business-account-id","isRequired":true,"uniqueKey":"oneOf.2.whatsappTemplate.wabaId","typeLabel":"string"},"name":{"type":"string","description":"Name of the template.","maxLength":512,"pattern":"[a-z0-9]{1,512}","isRequired":true,"uniqueKey":"oneOf.2.whatsappTemplate.name","typeLabel":"string"},"language":{"type":"string","description":"Language code of the template. See [Supported Languages](https://developers.facebook.com/documentation/business-messaging/whatsapp/templates/supported-languages) for all codes.","example":"en_US","isRequired":true,"uniqueKey":"oneOf.2.whatsappTemplate.language","typeLabel":"string"},"officialTemplateId":{"type":"string","description":"Official template ID assigned by WhatsApp. This ID is used to identify the template in WhatsApp's system.","example":"official-template-id","uniqueKey":"oneOf.2.whatsappTemplate.officialTemplateId","typeLabel":"string"},"category":{"type":"string","description":"Category of WhatsApp templates.\n- `AUTHENTICATION`: Enable businesses to authenticate users with one-time passcodes, potentially at multiple steps in the login process (e.g., account verification, account recovery, integrity challenges).\n- `MARKETING`: Include promotions or offers, informational updates, or invitations for customers to respond / take action. Any conversation that does not qualify as utility or authentication is a marketing conversation.\n- `UTILITY`: Facilitate a specific, agreed-upon request or transaction or update to a customer about an ongoing transaction, including post-purchase notifications and recurring billing statements.","enum":["AUTHENTICATION","MARKETING","UTILITY"],"uniqueKey":"oneOf.2.whatsappTemplate.category","typeLabel":"enum\u003cstring>"},"subCategory":{"type":"string","description":"Subcategory of WhatsApp templates.\n- ORDER_STATUS: Order status template is categorized as `UTILITY` template and apart from name and language of choice, it has general template components such as `BODY`, `FOOTER` and additionally subcategory as `ORDER_STATUS`.","enum":["ORDER_STATUS"],"uniqueKey":"oneOf.2.whatsappTemplate.subCategory","typeLabel":"enum\u003cstring>"},"previousCategory":{"type":"string","description":"This field indicates the template's previous category (or `null`, for newly created templates after April 1, 2023). Compare this value to the template's `category` field value, which indicates the template's current category.","uniqueKey":"oneOf.2.whatsappTemplate.previousCategory","typeLabel":"string"},"messageSendTtlSeconds":{"type":"integer","format":"int32","description":"If we are unable to deliver a message for an amount of time that exceeds its time-to-live, we will stop retrying and drop the message.\nBy default, messages that use an authentication template have a default TTL of **10 minutes**, and messages that use a utility or marketing template have a default TTL of **30 days**.\nSet its value between `30` and `900` seconds (i.e., 30 seconds to 15 minutes) for authentication templates, or `30` and `43200` seconds (i.e., 30 seconds to 12 hours) for utility templates, or `43200` and `2592000` seconds (i.e., 12 hours to 30 days) for marketing templates. Alternatively, you can set this value to `-1`, which will set a custom TTL of 30 days for either type of template.\nWe encourage you to set a time-to-live for all of your authentication templates, preferably equal to or less than your code expiration time, to ensure your customers only get a message when a code is still usable.\nAuthentication templates created before October 23, 2024, have a default TTL of 30 days.","example":600,"uniqueKey":"oneOf.2.whatsappTemplate.messageSendTtlSeconds","typeLabel":"integer\u003cint32>"},"components":{"type":"array","description":"Template components. A template consists of `HEADER`, `BODY`, `FOOTER`, and `BUTTONS` components. `BODY` component is required, the other types are optional.","minItems":1,"items":{"type":"object","properties":{"type":{"type":"string","description":"**Required.** Template component type.\n- `BODY`: Body components are text-only components and are required by all templates. Templates are limited to one body component.\n- `HEADER`: Headers are optional components that appear at the top of template messages. Headers support text, media (images, gif, videos, documents). Templates are limited to one header component.\n- `FOOTER`: Footers are optional text-only components that appear immediately after the body component. Templates are limited to one footer component.\n- `BUTTONS`: Buttons are optional interactive components that perform specific actions when tapped.\n- `LIMITED_TIME_OFFER`: Use for limited-time offer templates. The delivered message can display an offer expiration details section with a heading, an optional expiration timer, and the offer code itself.\n- `CAROUSEL`: Carousel templates allow you to send a single text message (1), accompanied by a set of up to 10 carousel cards (2) in a horizontally scrollable view.","enum":["BODY","HEADER","FOOTER","BUTTONS","LIMITED_TIME_OFFER","CAROUSEL"],"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"format":{"type":"string","description":"**Required for type `HEADER`.**","enum":["TEXT","IMAGE","GIF","VIDEO","DOCUMENT","LOCATION"],"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].format","typeLabel":"enum\u003cstring>"},"text":{"type":"string","description":"For body text (type = `BODY`), maximum 1024 characters.\nFor header text (type = `HEADER`, format = `TEXT`), maximum 60 characters.\nFor footer text (type = `FOOTER`), maximum 60 characters.\nFor card body text (`CAROUSEL` card component type = `BODY`), maximum 160 characters.","maxLength":1024,"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].text","typeLabel":"string"},"buttons":{"type":"array","description":"**Required for type `BUTTONS`.**\nButtons are optional interactive components that perform specific actions when tapped. Templates can have a mixture of up to 10 button components total, although there are limits to individual buttons of the same type as well as combination limits.\nIf a template has more than three buttons, two buttons will appear in the delivered message and the remaining buttons will be replaced with a **See all options** button. Tapping the **See all options** button reveals the remaining buttons.","maxItems":10,"items":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Button type.\n- `PHONE_NUMBER`: Phone number buttons call the specified business phone number when tapped by the app user. Templates are limited to one phone number button.\n- `URL`: URL buttons load the specified URL in the device's default web browser when tapped by the app user. Templates are limited to two URL buttons.\n- `QUICK_REPLY`: Quick reply buttons are custom text-only buttons that immediately message you with the specified text string when tapped by the app user. Templates are limited to 10 quick reply buttons. If using quick reply buttons with other buttons, buttons must be organized into two groups: quick reply buttons and non-quick reply buttons.\n- `COPY_CODE`: Copy code buttons copy a text string (defined when the template is sent in a template message) to the device's clipboard when tapped by the app user. Templates are limited to one copy code button.\n- `OTP`: One-time password (OTP) buttons are a special type of URL button component used with authentication templates.\n- `CATALOG`: When a customer taps the **View catalog** button in a catalog template message, your product catalog appears within WhatsApp.\n- `MPM`: Customers can browse products and sections by tapping the **View items** button in a multi-product template message.\n- `FLOW`: Use this type to specify the [Flow](https://developers.facebook.com/docs/whatsapp/flows) to be sent with the template message.\n- `ORDER_DETAILS`: Provides a order details button with `Review and Pay` text.\n- `VOICE_CALL`: Triggers a WhatsApp call, when clicked by a WhatsApp customer.","enum":["PHONE_NUMBER","URL","QUICK_REPLY","COPY_CODE","OTP","CATALOG","MPM","FLOW","ORDER_DETAILS","VOICE_CALL"],"isRequired":true,"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"text":{"type":"string","description":"**Required for button type `PHONE_NUMBER` or `URL`.** Button text.\nFor `CODE_CODE` buttons, the text is a pre-set value and cannot be customized.\nFor `OTP` buttons, if omitted, the text will default to a pre-set value localized to the template's language. For example, `Copy Code` for English (US). If your template is using a one-tap autofill button and you supply this value, the authentication template message will display a copy code button with this text if we are unable to validate your [handshake](https://developers.facebook.com/docs/whatsapp/business-management-api/authentication-templates/autofill-button-authentication-templates#handshake). Maximum 25 characters.","maxLength":25,"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].text","typeLabel":"string"},"url":{"type":"string","description":"**Required for button type `URL`.** URL of website.\nThere can be at most 1 variable at the end of the URL. Example: `https://www.luckyshrub.com/shop?promo={{1}}`.\n2000 characters maximum.","maxLength":2000,"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].url","typeLabel":"string"},"phone_number":{"type":"string","description":"**Required for button type `PHONE_NUMBER`.**\nAlphanumeric string. Business phone number to be (display phone number) called when the user taps the button.\n20 characters maximum.","maxLength":20,"example":15550051310,"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].phone_number","typeLabel":"string"},"otp_type":{"type":"string","description":"**Required for button type `OTP`.**\nIndicates button OTP type.\nSet to `COPY_CODE` if you want the template to use a copy code button, `ONE_TAP` to have it use a one-tap autofill button, or `ZERO_TAP` to have no button at all.","enum":["COPY_CODE","ONE_TAP","ZERO_TAP"],"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].otp_type","typeLabel":"enum\u003cstring>"},"autofill_text":{"type":"string","description":"**One-tap and zero-tap buttons only.**\nOne-tap button text.\nMaximum 25 characters.","maxLength":25,"example":"Autofill","uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].autofill_text","typeLabel":"string"},"package_name":{"type":"string","description":"**One-tap and zero-tap buttons only.**\nYour Android app's package name.","example":"com.example.myapplication","uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].package_name","typeLabel":"string"},"signature_hash":{"type":"string","description":"**One-tap and zero-tap buttons only.**\nYour app signing key hash. See [App Signing Key Hash](https://developers.facebook.com/docs/whatsapp/business-management-api/authentication-templates/zero-tap-authentication-templates#app-signing-key-hash).","example":"K8a%2FAINcGX7","uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].signature_hash","typeLabel":"string"},"zero_tap_terms_accepted":{"type":"boolean","description":"**Zero-tap buttons only.**\nSet to `true` to indicate that you understand that your use of zero-tap authentication is subject to the WhatsApp Business Terms of Service, and that it's your responsibility to ensure your customers expect that the code will be automatically filled in on their behalf when they choose to receive the zero-tap code through WhatsApp.\nIf set to `false`, the template will not be created as you need to accept zero-tap terms before creating zero-tap enabled message templates.","uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].zero_tap_terms_accepted","typeLabel":"boolean"},"example":{"type":"array","description":"Sample full URL for a `URL` button with a variable.","items":{"type":"string","uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].example.items.[INDEX]","typeLabel":"string"},"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].example","typeLabel":"string[]"},"flow_id":{"type":"string","description":"**Conditionally required for button type `FLOW`.**\nThe unique ID of the Flow. Cannot be used if `flow_name` or `flow_json` parameters are provided. Only one of these parameters is allowed.","example":"1","uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].flow_id","typeLabel":"string"},"flow_name":{"type":"string","description":"**Conditionally required for button type `FLOW`.**\nThe name of the Flow. Cannot be used if `flow_id` or `flow_json` parameters are provided. Only one of these parameters is allowed. The Flow ID is stored in the message template, not the name, so changing the Flow name will not affect existing message templates.","uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].flow_name","typeLabel":"string"},"flow_json":{"type":"string","description":"**Conditionally required for button type `FLOW`.**\nThe Flow JSON encoded as string with escaping. The Flow JSON specifies the content of the Flow. Cannot be used if `flow_id` or `flow_name` parameters are provided. Only one of these parameters is allowed.","uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].flow_json","typeLabel":"string"},"flow_action":{"type":"string","description":"**Use for button type `FLOW`.**\nEither `navigate` or `data_exchange`. Defaults to `navigate`.","example":"navigate","uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].flow_action","typeLabel":"string"},"navigate_screen":{"type":"string","description":"**Required if `flow_action` is `navigate`.**\nThe unique ID of the Screen in the Flow.","example":"WELCOME_SCREEN","uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX].navigate_screen","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].buttons.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].buttons","typeLabel":"object[]"},"add_security_recommendation":{"type":"boolean","description":"**Optional. Only applicable in the `BODY` component of an AUTHENTICATION template.**\nSet to `true` if you want the template to include the string, *For your security, do not share this code.* Set to `false` to exclude the string.","uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].add_security_recommendation","typeLabel":"boolean"},"code_expiration_minutes":{"type":"integer","format":"int32","description":"**Optional. Only applicable in the `FOOTER` component of an AUTHENTICATION template.**\nIndicates number of minutes the password or code is valid.\nIf omitted, the code expiration warning will not be displayed in the delivered message.\nMinimum 1, maximum 90.","maximum":90,"minimum":1,"example":5,"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].code_expiration_minutes","typeLabel":"integer\u003cint32>"},"limited_time_offer":{"type":"object","description":"Use for `LIMITED_TIME_OFFER` components.","properties":{"text":{"type":"string","description":"**Required.**\nOffer details text.\nMaximum 16 characters.","maxLength":16,"example":"Expiring offer!","uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].limited_time_offer.text","typeLabel":"string"},"has_expiration":{"type":"boolean","description":"**Optional.**\nSet to `true` to have the [offer expiration details](https://developers.facebook.com/docs/whatsapp/business-management-api/message-templates/limited-time-offer-templates#offer-expiration-details) appear in the delivered message.\nIf set to `true`, the copy code button component must be included in the `buttons` array, and must appear first in the array.\nIf set to `false`, offer expiration details will not appear in the delivered message and the copy code button component is optional. If including the copy code button, it must appear first in the `buttons` array.","uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].limited_time_offer.has_expiration","typeLabel":"boolean"}},"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].limited_time_offer","typeLabel":"object"},"example":{"type":"object","description":"**Required** when:\n- `type` is `HEADER`, and `format` is one of `IMAGE`, `GIF`, `VIDEO`, or `DOCUMENT`. Provide a sample media URL in `header_url`.\n- `type` is `HEADER`, `format` is `TEXT`, and a variable is used in `text`. Provide a sample value for that variable in `header_text`. There can be at most 1 variable in `HEADER` text.\n- `type` is `BODY`, and variables are used in `text`. Provide sample values for those variables in `body_text`.","properties":{"body_text":{"type":"array","description":"Sample values for variables in `text` of a `BODY` component.","items":{"type":"array","items":{"type":"string","uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].example.body_text.items.[INDEX].items.[INDEX]","typeLabel":"string"},"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].example.body_text.items.[INDEX]","typeLabel":"string[]"},"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].example.body_text","typeLabel":"string[][]"},"header_text":{"type":"array","description":"Sample value for the variable in `text` of a `HEADER` component.","items":{"type":"string","uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].example.header_text.items.[INDEX]","typeLabel":"string"},"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].example.header_text","typeLabel":"string[]"},"header_url":{"type":"array","description":"Sample media URL for a `HEADER` component whose format is one of `IMAGE`, `GIF`, `VIDEO`, or `DOCUMENT`.\nSupported types:\n- For `IMAGE`, the URL must end with one of `.jpg`, `.jpeg`, or `.png`, size limit is 5MB.\n- For `GIF`, the URL must end with `.mp4`, size limit is 3.5MB.\n- For `VIDEO`, the URL must end with `.mp4`, size limit is 16MB.\n- For `DOCUMENT`, the URL must end with `.pdf`, size limit is 100MB.","items":{"type":"string","uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].example.header_url.items.[INDEX]","typeLabel":"string"},"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].example.header_url","typeLabel":"string[]"}},"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].example","typeLabel":"object"},"cards":{"type":"array","description":"**Required for type `CAROUSEL`.**\nCarousel templates support up to 10 carousel cards.","maxItems":10,"items":{"type":"object","description":"Carousel templates support up to 10 carousel cards. Cards must have a media header (image or video) and can optionally include body text and up to 2 quick reply buttons, phone number buttons, or URL buttons (button types can be mixed).","properties":{"components":{"type":"array","description":"**Required.**\nCard components.","items":{"type":"object","properties":{"type":{"type":"string","description":"**Required.**\nCard component type.\n- `BODY`: Body components are text-only components. Cards must have body text.\n- `HEADER`: Cards must have a media header (image or video).\n- `BUTTONS`: Buttons are interactive components that perform specific actions when tapped. Cards must have at least one button, up to 2 buttons.","enum":["BODY","HEADER","BUTTONS"],"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"format":{"type":"string","description":"**Required for type `HEADER`.**\nCards must have a media header (image or video).","enum":["IMAGE","VIDEO"],"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].format","typeLabel":"enum\u003cstring>"},"text":{"type":"string","description":"**Required for type `BODY`.**\nCard body text supports variables. Maximum 160 characters.","maxLength":160,"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].text","typeLabel":"string"},"buttons":{"type":"array","description":"**Required for type `BUTTONS`.**\nCards must have at least one button. Supports 2 buttons. Buttons can be the same or a mix of quick reply buttons, phone number buttons, or URL buttons.","minItems":1,"maxItems":2,"items":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Button type.\n- `PHONE_NUMBER`: Phone number buttons call the specified business phone number when tapped by the app user. Templates are limited to one phone number button.\n- `URL`: URL buttons load the specified URL in the device's default web browser when tapped by the app user. Templates are limited to two URL buttons.\n- `QUICK_REPLY`: Quick reply buttons are custom text-only buttons that immediately message you with the specified text string when tapped by the app user. Templates are limited to 10 quick reply buttons. If using quick reply buttons with other buttons, buttons must be organized into two groups: quick reply buttons and non-quick reply buttons.\n- `COPY_CODE`: Copy code buttons copy a text string (defined when the template is sent in a template message) to the device's clipboard when tapped by the app user. Templates are limited to one copy code button.\n- `OTP`: One-time password (OTP) buttons are a special type of URL button component used with authentication templates.\n- `CATALOG`: When a customer taps the **View catalog** button in a catalog template message, your product catalog appears within WhatsApp.\n- `MPM`: Customers can browse products and sections by tapping the **View items** button in a multi-product template message.\n- `FLOW`: Use this type to specify the [Flow](https://developers.facebook.com/docs/whatsapp/flows) to be sent with the template message.\n- `ORDER_DETAILS`: Provides a order details button with `Review and Pay` text.\n- `VOICE_CALL`: Triggers a WhatsApp call, when clicked by a WhatsApp customer.","enum":["PHONE_NUMBER","URL","QUICK_REPLY","COPY_CODE","OTP","CATALOG","MPM","FLOW","ORDER_DETAILS","VOICE_CALL"],"isRequired":true,"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"text":{"type":"string","description":"**Required for button type `PHONE_NUMBER` or `URL`.** Button text.\nFor `CODE_CODE` buttons, the text is a pre-set value and cannot be customized.\nFor `OTP` buttons, if omitted, the text will default to a pre-set value localized to the template's language. For example, `Copy Code` for English (US). If your template is using a one-tap autofill button and you supply this value, the authentication template message will display a copy code button with this text if we are unable to validate your [handshake](https://developers.facebook.com/docs/whatsapp/business-management-api/authentication-templates/autofill-button-authentication-templates#handshake). Maximum 25 characters.","maxLength":25,"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].text","typeLabel":"string"},"url":{"type":"string","description":"**Required for button type `URL`.** URL of website.\nThere can be at most 1 variable at the end of the URL. Example: `https://www.luckyshrub.com/shop?promo={{1}}`.\n2000 characters maximum.","maxLength":2000,"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].url","typeLabel":"string"},"phone_number":{"type":"string","description":"**Required for button type `PHONE_NUMBER`.**\nAlphanumeric string. Business phone number to be (display phone number) called when the user taps the button.\n20 characters maximum.","maxLength":20,"example":15550051310,"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].phone_number","typeLabel":"string"},"otp_type":{"type":"string","description":"**Required for button type `OTP`.**\nIndicates button OTP type.\nSet to `COPY_CODE` if you want the template to use a copy code button, `ONE_TAP` to have it use a one-tap autofill button, or `ZERO_TAP` to have no button at all.","enum":["COPY_CODE","ONE_TAP","ZERO_TAP"],"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].otp_type","typeLabel":"enum\u003cstring>"},"autofill_text":{"type":"string","description":"**One-tap and zero-tap buttons only.**\nOne-tap button text.\nMaximum 25 characters.","maxLength":25,"example":"Autofill","uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].autofill_text","typeLabel":"string"},"package_name":{"type":"string","description":"**One-tap and zero-tap buttons only.**\nYour Android app's package name.","example":"com.example.myapplication","uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].package_name","typeLabel":"string"},"signature_hash":{"type":"string","description":"**One-tap and zero-tap buttons only.**\nYour app signing key hash. See [App Signing Key Hash](https://developers.facebook.com/docs/whatsapp/business-management-api/authentication-templates/zero-tap-authentication-templates#app-signing-key-hash).","example":"K8a%2FAINcGX7","uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].signature_hash","typeLabel":"string"},"zero_tap_terms_accepted":{"type":"boolean","description":"**Zero-tap buttons only.**\nSet to `true` to indicate that you understand that your use of zero-tap authentication is subject to the WhatsApp Business Terms of Service, and that it's your responsibility to ensure your customers expect that the code will be automatically filled in on their behalf when they choose to receive the zero-tap code through WhatsApp.\nIf set to `false`, the template will not be created as you need to accept zero-tap terms before creating zero-tap enabled message templates.","uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].zero_tap_terms_accepted","typeLabel":"boolean"},"example":{"type":"array","description":"Sample full URL for a `URL` button with a variable.","items":{"type":"string","uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].example.items.[INDEX]","typeLabel":"string"},"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].example","typeLabel":"string[]"},"flow_id":{"type":"string","description":"**Conditionally required for button type `FLOW`.**\nThe unique ID of the Flow. Cannot be used if `flow_name` or `flow_json` parameters are provided. Only one of these parameters is allowed.","example":"1","uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].flow_id","typeLabel":"string"},"flow_name":{"type":"string","description":"**Conditionally required for button type `FLOW`.**\nThe name of the Flow. Cannot be used if `flow_id` or `flow_json` parameters are provided. Only one of these parameters is allowed. The Flow ID is stored in the message template, not the name, so changing the Flow name will not affect existing message templates.","uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].flow_name","typeLabel":"string"},"flow_json":{"type":"string","description":"**Conditionally required for button type `FLOW`.**\nThe Flow JSON encoded as string with escaping. The Flow JSON specifies the content of the Flow. Cannot be used if `flow_id` or `flow_name` parameters are provided. Only one of these parameters is allowed.","uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].flow_json","typeLabel":"string"},"flow_action":{"type":"string","description":"**Use for button type `FLOW`.**\nEither `navigate` or `data_exchange`. Defaults to `navigate`.","example":"navigate","uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].flow_action","typeLabel":"string"},"navigate_screen":{"type":"string","description":"**Required if `flow_action` is `navigate`.**\nThe unique ID of the Screen in the Flow.","example":"WELCOME_SCREEN","uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX].navigate_screen","typeLabel":"string"}},"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].buttons","typeLabel":"object[]"},"example":{"type":"object","description":"**Required** when:\n- `type` is `HEADER`, and `format` is one of `IMAGE`, `GIF`, `VIDEO`, or `DOCUMENT`. Provide a sample media URL in `header_url`.\n- `type` is `HEADER`, `format` is `TEXT`, and a variable is used in `text`. Provide a sample value for that variable in `header_text`. There can be at most 1 variable in `HEADER` text.\n- `type` is `BODY`, and variables are used in `text`. Provide sample values for those variables in `body_text`.","properties":{"body_text":{"type":"array","description":"Sample values for variables in `text` of a `BODY` component.","items":{"type":"array","items":{"type":"string","uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].example.body_text.items.[INDEX].items.[INDEX]","typeLabel":"string"},"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].example.body_text.items.[INDEX]","typeLabel":"string[]"},"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].example.body_text","typeLabel":"string[][]"},"header_text":{"type":"array","description":"Sample value for the variable in `text` of a `HEADER` component.","items":{"type":"string","uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].example.header_text.items.[INDEX]","typeLabel":"string"},"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].example.header_text","typeLabel":"string[]"},"header_url":{"type":"array","description":"Sample media URL for a `HEADER` component whose format is one of `IMAGE`, `GIF`, `VIDEO`, or `DOCUMENT`.\nSupported types:\n- For `IMAGE`, the URL must end with one of `.jpg`, `.jpeg`, or `.png`, size limit is 5MB.\n- For `GIF`, the URL must end with `.mp4`, size limit is 3.5MB.\n- For `VIDEO`, the URL must end with `.mp4`, size limit is 16MB.\n- For `DOCUMENT`, the URL must end with `.pdf`, size limit is 100MB.","items":{"type":"string","uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].example.header_url.items.[INDEX]","typeLabel":"string"},"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].example.header_url","typeLabel":"string[]"}},"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX].example","typeLabel":"object"}},"description":"Cards must have a media header (image or video) and can optionally include body text and up to 2 quick reply buttons, phone number buttons, or URL buttons (button types can be mixed).","uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX].components","typeLabel":"object[]"}},"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX].cards","typeLabel":"object[]"}},"uniqueKey":"oneOf.2.whatsappTemplate.components.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.whatsappTemplate.components","typeLabel":"object[]"},"status":{"type":"string","description":"The status of a WhatsApp template.\n- `PENDING`: The template is still under review. Review can take up to 24 hours.\n- `REJECTED`: The template has been rejected during review process.\n- `APPROVED`: The template is approved, and you may begin sending it to customers.\n- `PAUSED`: The template has been paused due to recurring negative feedback from customers. Message templates with this status cannot be sent to customers. See [Template Pausing](https://developers.facebook.com/docs/whatsapp/message-templates/guidelines#template-pausing).\n- `DISABLED`: The template has been disabled due to recurring negative feedback from customers or for violating one or more of our policies. Message templates with this status cannot be sent to customers. You may be able to edit a disabled message template and request an appeal. See [Appeals](https://developers.facebook.com/docs/whatsapp/message-templates/guidelines#appeals).\n- `ARCHIVED`: The template has been archived. Archived templates cannot be sent or edited.\n- `IN_APPEAL`: The template is in appeal. See also [Template Appeals](https://developers.facebook.com/docs/whatsapp/message-templates/guidelines#appeals).\n- `DELETED`: The template is deleted.","enum":["PENDING","REJECTED","APPROVED","PAUSED","DISABLED","ARCHIVED","IN_APPEAL","DELETED"],"example":"REJECTED","uniqueKey":"oneOf.2.whatsappTemplate.status","typeLabel":"enum\u003cstring>"},"qualityRating":{"type":"string","description":"Quality rating of WhatsApp template. One of `GREEN`, `YELLOW`, `RED`, or `UNKNOWN`. See also [Template Quality Rating](https://developers.facebook.com/docs/whatsapp/message-templates/guidelines/#quality-rating).\n- `GREEN`: High quality.\n- `YELLOW`: Medium quality.\n- `RED`: Low quality.\n- `UNKNOWN`: Unknown quality.","enum":["GREEN","YELLOW","RED","UNKNOWN"],"uniqueKey":"oneOf.2.whatsappTemplate.qualityRating","typeLabel":"enum\u003cstring>"},"reason":{"type":"string","description":"The reason why the template is rejected.","uniqueKey":"oneOf.2.whatsappTemplate.reason","typeLabel":"string"},"createTime":{"type":"string","format":"date-time","description":"The time at which this object is created, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2022-06-01T12:00:00.000Z","uniqueKey":"oneOf.2.whatsappTemplate.createTime","typeLabel":"string\u003cdate-time>"},"updateTime":{"type":"string","format":"date-time","description":"The time at which this object is updated, formatted in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). e.g., `2022-06-01T12:00:00.000Z`.","example":"2022-06-01T12:00:00.000Z","uniqueKey":"oneOf.2.whatsappTemplate.updateTime","typeLabel":"string\u003cdate-time>"},"statusUpdateEvent":{"type":"string","description":"The WhatsApp template status update event that caused this webhook. For `ARCHIVED`, the template `status` is `ARCHIVED`. For `UNARCHIVED`, the template `status` is the current status returned by Meta, for example `APPROVED`; it does not represent a new approval review.","enum":["PENDING","APPROVED","REJECTED","IN_APPEAL","PAUSED","FLAGGED","DISABLED","ARCHIVED","UNARCHIVED","REINSTATED","PENDING_DELETION"],"uniqueKey":"oneOf.2.whatsappTemplate.statusUpdateEvent","typeLabel":"enum\u003cstring>"},"disableDate":{"type":"string","description":"The date at which the template will be disabled. When a WhatsApp template `FLAGGED` event is received, this field is set.","example":"December 9, 2022","uniqueKey":"oneOf.2.whatsappTemplate.disableDate","typeLabel":"string"},"whatsappApiError":{"type":"object","description":"The original error object returned by WhatsApp. See [Handling Errors](https://developers.facebook.com/docs/graph-api/guides/error-handling), [Cloud API Error Codes](https://developers.facebook.com/docs/whatsapp/cloud-api/support/error-codes).","required":["message","code"],"properties":{"message":{"type":"string","description":"A human-readable description of the error.","example":"HSM Template creation failed","isRequired":true,"uniqueKey":"oneOf.2.whatsappTemplate.whatsappApiError.message","typeLabel":"string"},"code":{"type":"string","description":"An error code.","example":200002,"isRequired":true,"uniqueKey":"oneOf.2.whatsappTemplate.whatsappApiError.code","typeLabel":"string"},"type":{"type":"string","description":"Error type.","example":"OAuthException","uniqueKey":"oneOf.2.whatsappTemplate.whatsappApiError.type","typeLabel":"string"},"error_subcode":{"type":"string","description":"Additional code about the error.","example":2388109,"uniqueKey":"oneOf.2.whatsappTemplate.whatsappApiError.error_subcode","typeLabel":"string"},"error_user_msg":{"type":"string","description":"The message to display to the user. The language of the message is based on the locale of the API request.","example":"This message template cannot be created.","uniqueKey":"oneOf.2.whatsappTemplate.whatsappApiError.error_user_msg","typeLabel":"string"},"error_user_title":{"type":"string","description":"The title of the dialog, if shown. The language of the message is based on the locale of the API request.","example":"Message Cannot Be Submitted","uniqueKey":"oneOf.2.whatsappTemplate.whatsappApiError.error_user_title","typeLabel":"string"},"fbtrace_id":{"type":"string","description":"Internal support identifier. When reporting a bug related to a Graph API call, include the fbtrace_id to help us find log data for debugging.","example":"AVGjJ7ia2zJkrHG","uniqueKey":"oneOf.2.whatsappTemplate.whatsappApiError.fbtrace_id","typeLabel":"string"},"error_data":{"oneOf":[{"type":"string","description":"Additional data about the error. A string or map.\n- For template APIs, this field is a string describing the reason for the error.\n- For message APIs, this field is a map with property `details` describing the reason for the error.","uniqueKey":"oneOf.2.whatsappTemplate.whatsappApiError.error_data.oneOf.0","typeLabel":"string"},{"type":"object","description":"Additional data about the error. A string or map.\n- For template APIs, this field is a string describing the reason for the error.\n- For message APIs, this field is a map with property `details` describing the reason for the error.","additionalProperties":true,"uniqueKey":"oneOf.2.whatsappTemplate.whatsappApiError.error_data.oneOf.1","typeLabel":"object"}],"uniqueKey":"oneOf.2.whatsappTemplate.whatsappApiError.error_data","typeLabel":"string | object"}},"uniqueKey":"oneOf.2.whatsappTemplate.whatsappApiError","typeLabel":"object"}},"uniqueKey":"oneOf.2.whatsappTemplate","typeLabel":"object"},"callingConnect":{"type":"object","description":"Included when `type` is `whatsapp.call.connect`.","required":["id","wacid"],"properties":{"id":{"type":"string","description":"Unique ID for the call event.","example":"call_evt_123456789","isRequired":true,"uniqueKey":"oneOf.2.callingConnect.id","typeLabel":"string"},"wacid":{"type":"string","description":"The WhatsApp call ID. This ID uniquely identifies the call session.","example":"wacid.ABGGFjFVU2AfAgo6V-Hc5eCgK5Gh","isRequired":true,"uniqueKey":"oneOf.2.callingConnect.wacid","typeLabel":"string"},"phoneId":{"type":"string","description":"The WhatsApp Business phone number ID.","example":"436666719526789","uniqueKey":"oneOf.2.callingConnect.phoneId","typeLabel":"string"},"from":{"type":"string","description":"The caller's phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","uniqueKey":"oneOf.2.callingConnect.from","typeLabel":"string"},"fromUserId":{"type":"string","description":"The caller's WhatsApp Business-scoped user ID (BSUID) for customer-initiated calls.","example":"US.1234","uniqueKey":"oneOf.2.callingConnect.fromUserId","typeLabel":"string"},"fromParentUserId":{"type":"string","description":"The caller's parent WhatsApp Business-scoped user ID for customer-initiated calls.","example":"US.ENT.1234","uniqueKey":"oneOf.2.callingConnect.fromParentUserId","typeLabel":"string"},"to":{"type":"string","description":"The callee's phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551112","uniqueKey":"oneOf.2.callingConnect.to","typeLabel":"string"},"toUserId":{"type":"string","description":"The callee's WhatsApp Business-scoped user ID (BSUID) for business-initiated calls.","example":"US.1234","uniqueKey":"oneOf.2.callingConnect.toUserId","typeLabel":"string"},"toParentUserId":{"type":"string","description":"The callee's parent WhatsApp Business-scoped user ID for business-initiated calls.","example":"US.ENT.1234","uniqueKey":"oneOf.2.callingConnect.toParentUserId","typeLabel":"string"},"customerProfile":{"type":"object","description":"The customer's profile information, including WhatsApp username when available.","properties":{"name":{"type":"string","description":"Name of the WhatsApp account.","example":"John","uniqueKey":"oneOf.2.callingConnect.customerProfile.name","typeLabel":"string"},"username":{"type":"string","description":"WhatsApp username.","example":"john_doe","uniqueKey":"oneOf.2.callingConnect.customerProfile.username","typeLabel":"string"}},"uniqueKey":"oneOf.2.callingConnect.customerProfile","typeLabel":"object"},"direction":{"type":"string","description":"The direction of the call.\n- `USER_INITIATED`: Call initiated by the customer to the business.\n- `BUSINESS_INITIATED`: Call initiated by the business to the customer.","enum":["USER_INITIATED","BUSINESS_INITIATED"],"example":"USER_INITIATED","uniqueKey":"oneOf.2.callingConnect.direction","typeLabel":"enum\u003cstring>"},"sdpType":{"type":"string","description":"The SDP type for the WebRTC connection.","enum":["offer","answer"],"example":"offer","uniqueKey":"oneOf.2.callingConnect.sdpType","typeLabel":"enum\u003cstring>"},"sdp":{"type":"string","description":"The Session Description Protocol (SDP) information compliant with [RFC 8866](https://datatracker.ietf.org/doc/html/rfc8866).\nContains media session parameters for the WebRTC connection.","example":"v=0\r\no=- 123456789 987654321 IN IP4 192.168.1.1\r\ns=-\r\nt=0 0\r\n...","uniqueKey":"oneOf.2.callingConnect.sdp","typeLabel":"string"},"dialTime":{"type":"integer","format":"int64","description":"The time when the call was dialed, in Unix timestamp milliseconds.","example":1640995200000,"uniqueKey":"oneOf.2.callingConnect.dialTime","typeLabel":"integer\u003cint64>"}},"uniqueKey":"oneOf.2.callingConnect","typeLabel":"object"},"callingTerminate":{"type":"object","description":"Included when `type` is `whatsapp.call.terminate`.","required":["id","wacid"],"properties":{"id":{"type":"string","description":"Unique ID for the call event.","example":"call_evt_123456789","isRequired":true,"uniqueKey":"oneOf.2.callingTerminate.id","typeLabel":"string"},"wacid":{"type":"string","description":"The WhatsApp call ID. This ID uniquely identifies the call session.","example":"wacid.ABGGFjFVU2AfAgo6V-Hc5eCgK5Gh","isRequired":true,"uniqueKey":"oneOf.2.callingTerminate.wacid","typeLabel":"string"},"phoneId":{"type":"string","description":"The WhatsApp Business phone number ID.","example":"436666719526789","uniqueKey":"oneOf.2.callingTerminate.phoneId","typeLabel":"string"},"from":{"type":"string","description":"The caller's phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","uniqueKey":"oneOf.2.callingTerminate.from","typeLabel":"string"},"fromUserId":{"type":"string","description":"The caller's WhatsApp Business-scoped user ID (BSUID) for customer-initiated calls.","example":"US.1234","uniqueKey":"oneOf.2.callingTerminate.fromUserId","typeLabel":"string"},"fromParentUserId":{"type":"string","description":"The caller's parent WhatsApp Business-scoped user ID for customer-initiated calls.","example":"US.ENT.1234","uniqueKey":"oneOf.2.callingTerminate.fromParentUserId","typeLabel":"string"},"to":{"type":"string","description":"The callee's phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551112","uniqueKey":"oneOf.2.callingTerminate.to","typeLabel":"string"},"toUserId":{"type":"string","description":"The callee's WhatsApp Business-scoped user ID (BSUID) for business-initiated calls.","example":"US.1234","uniqueKey":"oneOf.2.callingTerminate.toUserId","typeLabel":"string"},"toParentUserId":{"type":"string","description":"The callee's parent WhatsApp Business-scoped user ID for business-initiated calls.","example":"US.ENT.1234","uniqueKey":"oneOf.2.callingTerminate.toParentUserId","typeLabel":"string"},"customerProfile":{"type":"object","description":"The customer's profile information, including WhatsApp username when available.","properties":{"name":{"type":"string","description":"Name of the WhatsApp account.","example":"John","uniqueKey":"oneOf.2.callingTerminate.customerProfile.name","typeLabel":"string"},"username":{"type":"string","description":"WhatsApp username.","example":"john_doe","uniqueKey":"oneOf.2.callingTerminate.customerProfile.username","typeLabel":"string"}},"uniqueKey":"oneOf.2.callingTerminate.customerProfile","typeLabel":"object"},"direction":{"type":"string","description":"The direction of the call.\n- `USER_INITIATED`: Call initiated by the customer to the business.\n- `BUSINESS_INITIATED`: Call initiated by the business to the customer.","enum":["USER_INITIATED","BUSINESS_INITIATED"],"example":"USER_INITIATED","uniqueKey":"oneOf.2.callingTerminate.direction","typeLabel":"enum\u003cstring>"},"startTime":{"type":"integer","format":"int64","description":"The time when the call started, in Unix timestamp milliseconds.","example":1640995200000,"uniqueKey":"oneOf.2.callingTerminate.startTime","typeLabel":"integer\u003cint64>"},"endTime":{"type":"integer","format":"int64","description":"The time when the call ended, in Unix timestamp milliseconds.","example":1640995320000,"uniqueKey":"oneOf.2.callingTerminate.endTime","typeLabel":"integer\u003cint64>"},"duration":{"type":"integer","format":"int64","description":"The duration of the call in seconds.","example":120,"uniqueKey":"oneOf.2.callingTerminate.duration","typeLabel":"integer\u003cint64>"},"status":{"type":"string","description":"The final status of the call.\n- `COMPLETED`: The call was successfully completed.\n- `FAILED`: The call failed due to an error.","enum":["COMPLETED","FAILED"],"example":"COMPLETED","uniqueKey":"oneOf.2.callingTerminate.status","typeLabel":"enum\u003cstring>"},"errorCode":{"type":"string","description":"Error code when the call status is `FAILED`. Numeric string representing the error.","example":"131000","uniqueKey":"oneOf.2.callingTerminate.errorCode","typeLabel":"string"}},"uniqueKey":"oneOf.2.callingTerminate","typeLabel":"object"},"callingStatusUpdated":{"type":"object","description":"Included when `type` is `whatsapp.call.status.updated`.","required":["wacid","status"],"properties":{"wacid":{"type":"string","description":"The WhatsApp call ID. This ID uniquely identifies the call session.","example":"wacid.HBgNNjI4MTM2MTkwNTEzMxUCABE","isRequired":true,"uniqueKey":"oneOf.2.callingStatusUpdated.wacid","typeLabel":"string"},"status":{"type":"string","description":"The current status of the call.\n- `RINGING`: Business initiated call is ringing the user.\n- `ACCEPTED`: Business initiated call is accepted by the user.\n- `REJECTED`: Business initiated call is rejected by the user.","enum":["RINGING","ACCEPTED","REJECTED"],"example":"RINGING","isRequired":true,"uniqueKey":"oneOf.2.callingStatusUpdated.status","typeLabel":"enum\u003cstring>"},"id":{"type":"string","description":"Unique ID for the call event (optional field, may not be present).","example":"call_evt_123456789","uniqueKey":"oneOf.2.callingStatusUpdated.id","typeLabel":"string"},"wabaId":{"type":"string","description":"WhatsApp Business Account ID.","example":"188234691048809","uniqueKey":"oneOf.2.callingStatusUpdated.wabaId","typeLabel":"string"},"phoneId":{"type":"string","description":"The WhatsApp Business phone number ID (optional field, may not be present).","example":"436666719526789","uniqueKey":"oneOf.2.callingStatusUpdated.phoneId","typeLabel":"string"},"recipientPhone":{"type":"string","description":"The recipient's phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+6281361905133","uniqueKey":"oneOf.2.callingStatusUpdated.recipientPhone","typeLabel":"string"},"recipientUserId":{"type":"string","description":"The recipient's WhatsApp Business-scoped user ID (BSUID).","example":"US.1234","uniqueKey":"oneOf.2.callingStatusUpdated.recipientUserId","typeLabel":"string"},"parentRecipientUserId":{"type":"string","description":"The recipient's parent WhatsApp Business-scoped user ID.","example":"US.ENT.1234","uniqueKey":"oneOf.2.callingStatusUpdated.parentRecipientUserId","typeLabel":"string"},"customerProfile":{"type":"object","description":"The customer's profile information, including WhatsApp username when available.","properties":{"name":{"type":"string","description":"Name of the WhatsApp account.","example":"John","uniqueKey":"oneOf.2.callingStatusUpdated.customerProfile.name","typeLabel":"string"},"username":{"type":"string","description":"WhatsApp username.","example":"john_doe","uniqueKey":"oneOf.2.callingStatusUpdated.customerProfile.username","typeLabel":"string"}},"uniqueKey":"oneOf.2.callingStatusUpdated.customerProfile","typeLabel":"object"}},"uniqueKey":"oneOf.2.callingStatusUpdated","typeLabel":"object"},"callingRecording":{"type":"object","additionalProperties":false,"description":"Included when `type` is `whatsapp.call.recording.updated`.","required":["wacid","phoneId","mediaAssetId","status"],"properties":{"wacid":{"type":"string","description":"WhatsApp call ID.","example":"wacid.HBgNNjI4MTM2MTkwNTEzMxUCABE","isRequired":true,"uniqueKey":"oneOf.2.callingRecording.wacid","typeLabel":"string"},"phoneId":{"type":"string","description":"WhatsApp business phone number ID used for authorized-asset delivery.","example":"461269257068832","isRequired":true,"uniqueKey":"oneOf.2.callingRecording.phoneId","typeLabel":"string"},"mediaAssetId":{"type":"string","description":"YCloud media asset ID used with the call media download API.","example":"66b1f0c2e4b05c2d8f1a3b47","isRequired":true,"uniqueKey":"oneOf.2.callingRecording.mediaAssetId","typeLabel":"string"},"status":{"type":"string","enum":["AVAILABLE","FAILED"],"example":"AVAILABLE","isRequired":true,"uniqueKey":"oneOf.2.callingRecording.status","typeLabel":"enum\u003cstring>"},"error":{"type":"object","additionalProperties":false,"description":"Present only when `status` is `FAILED`.","required":["code","retryable"],"properties":{"code":{"type":"string","description":"Stable failure code.","example":"CALLING_RECORDING_PROCESSING_FAILED","isRequired":true,"uniqueKey":"oneOf.2.callingRecording.error.code","typeLabel":"string"},"retryable":{"type":"boolean","description":"Whether retrying the upstream media operation may succeed.","example":false,"isRequired":true,"uniqueKey":"oneOf.2.callingRecording.error.retryable","typeLabel":"boolean"}},"uniqueKey":"oneOf.2.callingRecording.error","typeLabel":"object"}},"uniqueKey":"oneOf.2.callingRecording","typeLabel":"object"},"callingTranscription":{"type":"object","additionalProperties":false,"description":"Included when `type` is `whatsapp.call.transcription.updated`.","required":["wacid","phoneId","mediaAssetId","status"],"properties":{"wacid":{"type":"string","description":"WhatsApp call ID.","example":"wacid.HBgNNjI4MTM2MTkwNTEzMxUCABE","isRequired":true,"uniqueKey":"oneOf.2.callingTranscription.wacid","typeLabel":"string"},"phoneId":{"type":"string","description":"WhatsApp business phone number ID used for authorized-asset delivery.","example":"461269257068832","isRequired":true,"uniqueKey":"oneOf.2.callingTranscription.phoneId","typeLabel":"string"},"mediaAssetId":{"type":"string","description":"YCloud media asset ID used with the call media download API.","example":"66b1f0c2e4b05c2d8f1a3b47","isRequired":true,"uniqueKey":"oneOf.2.callingTranscription.mediaAssetId","typeLabel":"string"},"status":{"type":"string","enum":["AVAILABLE","FAILED"],"example":"AVAILABLE","isRequired":true,"uniqueKey":"oneOf.2.callingTranscription.status","typeLabel":"enum\u003cstring>"},"error":{"type":"object","additionalProperties":false,"description":"Present only when `status` is `FAILED`.","required":["code","retryable"],"properties":{"code":{"type":"string","description":"Stable failure code.","example":"CALLING_RECORDING_PROCESSING_FAILED","isRequired":true,"uniqueKey":"oneOf.2.callingTranscription.error.code","typeLabel":"string"},"retryable":{"type":"boolean","description":"Whether retrying the upstream media operation may succeed.","example":false,"isRequired":true,"uniqueKey":"oneOf.2.callingTranscription.error.retryable","typeLabel":"boolean"}},"uniqueKey":"oneOf.2.callingTranscription.error","typeLabel":"object"}},"uniqueKey":"oneOf.2.callingTranscription","typeLabel":"object"},"flowChanges":{"type":"object","description":"Included when `type` is `whatsapp.flow.status_change`.","required":["flowId","wabaId","newStatus"],"properties":{"flowId":{"type":"string","description":"The unique ID of the Flow.","example":"1097420589034000","isRequired":true,"uniqueKey":"oneOf.2.flowChanges.flowId","typeLabel":"string"},"wabaId":{"type":"string","description":"WhatsApp Business Account ID.","isRequired":true,"uniqueKey":"oneOf.2.flowChanges.wabaId","typeLabel":"string"},"newStatus":{"type":"string","description":"The new status of the flow.","example":"PUBLISHED","isRequired":true,"uniqueKey":"oneOf.2.flowChanges.newStatus","typeLabel":"string"},"message":{"type":"string","description":"The message ID of the flow status change.","example":"Flow Webhook 3 changed status from DRAFT to PUBLISHED","uniqueKey":"oneOf.2.flowChanges.message","typeLabel":"string"},"oldStatus":{"type":"string","description":"The old status of the flow.","example":"DRAFT","uniqueKey":"oneOf.2.flowChanges.oldStatus","typeLabel":"string"}},"uniqueKey":"oneOf.2.flowChanges","typeLabel":"object"},"whatsappUserPreference":{"properties":{"wabaId":{"type":"string","description":"WhatsApp Business Account ID.","example":1234123123,"uniqueKey":"oneOf.2.whatsappUserPreference.wabaId","typeLabel":"string"},"businessPhoneNumber":{"type":"string","description":"Phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","uniqueKey":"oneOf.2.whatsappUserPreference.businessPhoneNumber","typeLabel":"string"},"businessPhoneId":{"type":"string","description":"Phone number ID.","example":"1234567890123456","uniqueKey":"oneOf.2.whatsappUserPreference.businessPhoneId","typeLabel":"string"},"contactName":{"type":"string","description":"WhatsApp user name.","example":"John","uniqueKey":"oneOf.2.whatsappUserPreference.contactName","typeLabel":"string"},"contactPhoneNumber":{"type":"string","description":"WhatsApp user phone number. Phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format.","example":"+16315551111","uniqueKey":"oneOf.2.whatsappUserPreference.contactPhoneNumber","typeLabel":"string"},"userId":{"type":"string","description":"The WhatsApp user's Business-scoped user ID (BSUID).","example":"US.13491208655302741918","uniqueKey":"oneOf.2.whatsappUserPreference.userId","typeLabel":"string"},"parentUserId":{"type":"string","description":"The WhatsApp user's parent Business-scoped user ID. Omitted when parent BSUIDs are not enabled.","example":"US.ENT.11815799212886844830","uniqueKey":"oneOf.2.whatsappUserPreference.parentUserId","typeLabel":"string"},"detail":{"type":"string","description":"Description of marketing message preference.","example":"User requested to stop marketing messages","uniqueKey":"oneOf.2.whatsappUserPreference.detail","typeLabel":"string"},"category":{"type":"string","example":"marketing_messages","uniqueKey":"oneOf.2.whatsappUserPreference.category","typeLabel":"string"},"value":{"type":"string","description":"Marketing message preference.","example":"stop","uniqueKey":"oneOf.2.whatsappUserPreference.value","typeLabel":"string"},"timestamp":{"type":"string","description":"Unix timestamp indicating when the webhook was triggered.","example":"1739321024000","uniqueKey":"oneOf.2.whatsappUserPreference.timestamp","typeLabel":"string"}},"description":"Included when `type` is `whatsapp.user.preferences`.","type":"object","uniqueKey":"oneOf.2.whatsappUserPreference","typeLabel":"object"},"messengerInboundMessage":{"type":"object","description":"Included when `type` is `messenger.inbound_message.received` or `messenger.inbound_message.updated`. Editing keeps the same message IDs and original times; event createTime is the edit time for updated events.","required":["id","metaMessageId","from","to","type","text","sendTime","createTime"],"properties":{"id":{"type":"string","description":"YCloud inbound message ID as a decimal string.","isRequired":true,"uniqueKey":"oneOf.2.messengerInboundMessage.id","typeLabel":"string"},"metaMessageId":{"type":"string","description":"Meta message ID.","isRequired":true,"uniqueKey":"oneOf.2.messengerInboundMessage.metaMessageId","typeLabel":"string"},"from":{"type":"string","description":"Customer PSID scoped to the Facebook Page.","isRequired":true,"uniqueKey":"oneOf.2.messengerInboundMessage.from","typeLabel":"string"},"to":{"type":"string","description":"Facebook Page ID.","isRequired":true,"uniqueKey":"oneOf.2.messengerInboundMessage.to","typeLabel":"string"},"type":{"type":"string","enum":["text"],"isRequired":true,"uniqueKey":"oneOf.2.messengerInboundMessage.type","typeLabel":"enum\u003cstring>"},"text":{"type":"object","required":["body"],"properties":{"body":{"type":"string","minLength":1,"description":"Nonblank text. Leading and trailing spaces are preserved and included when comparing a repeated request.","isRequired":true,"uniqueKey":"oneOf.2.messengerInboundMessage.text.body","typeLabel":"string"}},"isRequired":true,"uniqueKey":"oneOf.2.messengerInboundMessage.text","typeLabel":"object"},"sendTime":{"type":"string","format":"date-time","description":"Saved source event time in UTC RFC 3339 with millisecond precision.","isRequired":true,"uniqueKey":"oneOf.2.messengerInboundMessage.sendTime","typeLabel":"string\u003cdate-time>"},"createTime":{"type":"string","format":"date-time","description":"Local persistence time in UTC RFC 3339 with millisecond precision.","isRequired":true,"uniqueKey":"oneOf.2.messengerInboundMessage.createTime","typeLabel":"string\u003cdate-time>"},"editCount":{"type":"integer","description":"Cumulative edit count supplied by Meta. Omitted before the first edit.","uniqueKey":"oneOf.2.messengerInboundMessage.editCount","typeLabel":"integer"},"editTime":{"type":"string","format":"date-time","description":"Saved platform edit time in UTC RFC 3339 with millisecond precision. Omitted before the first edit.","uniqueKey":"oneOf.2.messengerInboundMessage.editTime","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"oneOf.2.messengerInboundMessage","typeLabel":"object"},"messengerMessage":{"type":"object","required":["id","from","to","type","text","status","createTime","updateTime"],"properties":{"id":{"type":"string","description":"YCloud outbound ID, a decimal string; never serialize it as a JSON number.","isRequired":true,"uniqueKey":"oneOf.2.messengerMessage.id","typeLabel":"string"},"from":{"type":"string","description":"Facebook Page ID.","isRequired":true,"uniqueKey":"oneOf.2.messengerMessage.from","typeLabel":"string"},"to":{"type":"string","description":"Peer PSID for this Page.","isRequired":true,"uniqueKey":"oneOf.2.messengerMessage.to","typeLabel":"string"},"type":{"type":"string","enum":["text"],"isRequired":true,"uniqueKey":"oneOf.2.messengerMessage.type","typeLabel":"enum\u003cstring>"},"text":{"type":"object","required":["body"],"properties":{"body":{"type":"string","minLength":1,"description":"Nonblank text. Leading and trailing spaces are preserved and included when comparing a repeated request.","isRequired":true,"uniqueKey":"oneOf.2.messengerMessage.text.body","typeLabel":"string"}},"isRequired":true,"uniqueKey":"oneOf.2.messengerMessage.text","typeLabel":"object"},"status":{"type":"string","enum":["unknown","accepted","rejected","sent","delivered","read"],"description":"Current stored facts: read > delivered > sent > submission result.\nUnknown means unconfirmed or in progress, never a definitive failure.\nMissing receipts do not imply failure and no intermediate state is fabricated.\n","isRequired":true,"uniqueKey":"oneOf.2.messengerMessage.status","typeLabel":"enum\u003cstring>"},"createTime":{"type":"string","format":"date-time","description":"Local creation time in UTC RFC 3339 with millisecond precision.","isRequired":true,"uniqueKey":"oneOf.2.messengerMessage.createTime","typeLabel":"string\u003cdate-time>"},"updateTime":{"type":"string","format":"date-time","description":"Local update time in UTC RFC 3339 with millisecond precision.","isRequired":true,"uniqueKey":"oneOf.2.messengerMessage.updateTime","typeLabel":"string\u003cdate-time>"},"metaMessageId":{"type":"string","description":"Omitted when no Meta ID is confirmed.","uniqueKey":"oneOf.2.messengerMessage.metaMessageId","typeLabel":"string"},"reactions":{"type":"array","description":"Active reactions reconstructed when retrieving an outbound message. Returns [] when no\nsaved active reaction exists, including after withdrawal. Customer status webhooks omit\nthis field; receiving a reaction does not change the message delivery status or updateTime.\n","items":{"type":"object","description":"The latest active reaction from a user, reconstructed from saved interaction events.","required":["psid","updateTime"],"properties":{"psid":{"type":"string","description":"Page-scoped ID of the user who reacted.","isRequired":true,"uniqueKey":"oneOf.2.messengerMessage.reactions.items.[INDEX].psid","typeLabel":"string"},"updateTime":{"type":"string","format":"date-time","description":"Source interaction time in UTC RFC 3339 with millisecond precision; independent of the message updateTime.","example":"2026-10-16T10:00:04.000Z","isRequired":true,"uniqueKey":"oneOf.2.messengerMessage.reactions.items.[INDEX].updateTime","typeLabel":"string\u003cdate-time>"},"reaction":{"type":"string","description":"Provider reaction description, when available. Clients should tolerate new values.","example":"love","uniqueKey":"oneOf.2.messengerMessage.reactions.items.[INDEX].reaction","typeLabel":"string"},"emoji":{"type":"string","description":"Reaction emoji, when available.","example":"❤","uniqueKey":"oneOf.2.messengerMessage.reactions.items.[INDEX].emoji","typeLabel":"string"}},"uniqueKey":"oneOf.2.messengerMessage.reactions.items.[INDEX]","typeLabel":"object"},"uniqueKey":"oneOf.2.messengerMessage.reactions","typeLabel":"object[]"},"errorCode":{"type":"string","description":"Locally recorded submission error, when present. A confirmed rejection may be\nMESSENGER_MESSAGE_REJECTED(#100:2018276), MESSENGER_MESSAGE_REJECTED(#100),\nor the legacy MESSENGER_MESSAGE_REJECTED when diagnostics are unavailable.\nMESSENGER_MESSAGE_RESULT_UNKNOWN means the submission outcome is unconfirmed.\nNever contains the raw Meta error body or credentials.\n","uniqueKey":"oneOf.2.messengerMessage.errorCode","typeLabel":"string"},"sendTime":{"type":"string","format":"date-time","description":"Confirmed send time in UTC RFC 3339 with millisecond precision; omitted when unknown.","uniqueKey":"oneOf.2.messengerMessage.sendTime","typeLabel":"string\u003cdate-time>"},"deliverTime":{"type":"string","format":"date-time","description":"Confirmed delivery time in UTC RFC 3339 with millisecond precision; omitted when unknown.","uniqueKey":"oneOf.2.messengerMessage.deliverTime","typeLabel":"string\u003cdate-time>"},"readTime":{"type":"string","format":"date-time","description":"Confirmed read time in UTC RFC 3339 with millisecond precision; omitted when unknown.","uniqueKey":"oneOf.2.messengerMessage.readTime","typeLabel":"string\u003cdate-time>"}},"description":"Included when `type` is `messenger.message.updated`.","uniqueKey":"oneOf.2.messengerMessage","typeLabel":"object"},"messengerMessageReaction":{"type":"object","description":"Included when `type` is `messenger.message_reaction.updated`. Event createTime is the source interaction time.","required":["pageId","psid","metaMessageId","action"],"properties":{"pageId":{"type":"string","description":"Facebook Page ID that scopes this conversation.","isRequired":true,"uniqueKey":"oneOf.2.messengerMessageReaction.pageId","typeLabel":"string"},"psid":{"type":"string","description":"Page-scoped ID of the customer who reacted.","isRequired":true,"uniqueKey":"oneOf.2.messengerMessageReaction.psid","typeLabel":"string"},"metaMessageId":{"type":"string","description":"Meta ID of the message being reacted to.","isRequired":true,"uniqueKey":"oneOf.2.messengerMessageReaction.metaMessageId","typeLabel":"string"},"action":{"type":"string","enum":["react","unreact"],"description":"Use react to apply a reaction and unreact to withdraw it.","isRequired":true,"uniqueKey":"oneOf.2.messengerMessageReaction.action","typeLabel":"enum\u003cstring>"},"reaction":{"type":"string","description":"Reaction name when provided by Meta. May be omitted, including on withdrawal.","uniqueKey":"oneOf.2.messengerMessageReaction.reaction","typeLabel":"string"},"emoji":{"type":"string","description":"Reaction emoji when provided by Meta. May be omitted, including on withdrawal.","uniqueKey":"oneOf.2.messengerMessageReaction.emoji","typeLabel":"string"}},"uniqueKey":"oneOf.2.messengerMessageReaction","typeLabel":"object"}},"uniqueKey":"oneOf.2","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"examples":{"messenger_inbound_text":{"title":"messenger_inbound_text","description":"Use messengerInboundMessage.id to correlate repeated customer messages; preserve text whitespace.","value":{"id":"evt_0123456789abcdef01234567","type":"messenger.inbound_message.received","apiVersion":"v2","createTime":"2026-10-20T02:00:00.000Z","messengerInboundMessage":{"id":"1308528868252065793","metaMessageId":"m_EXAMPLE_IN_001","from":"100800000000000","to":"422500000000000","type":"text","text":{"body":" Hello "},"sendTime":"2026-10-20T02:00:00.000Z","createTime":"2026-10-20T02:00:00.100Z"}}},"messenger_inbound_edit":{"title":"messenger_inbound_edit","description":"The same saved message now carries the latest text and cumulative edit facts.","value":{"id":"evt_cdef0123456789abcdef0123","type":"messenger.inbound_message.updated","apiVersion":"v2","createTime":"2026-10-20T02:01:00.000Z","messengerInboundMessage":{"id":"1308528868252065793","metaMessageId":"m_EXAMPLE_IN_001","from":"100800000000000","to":"422500000000000","type":"text","text":{"body":" Hello, corrected "},"sendTime":"2026-10-20T02:00:00.000Z","createTime":"2026-10-20T02:00:00.100Z","editCount":2,"editTime":"2026-10-20T02:01:00.000Z"}}},"messenger_outbound_read":{"title":"messenger_outbound_read","description":"Use the message ID to correlate snapshots; unknown intermediate receipt times are omitted.","value":{"id":"evt_89abcdef0123456789abcdef","type":"messenger.message.updated","apiVersion":"v2","createTime":"2026-10-20T02:00:03.000Z","messengerMessage":{"id":"1308528868252065792","metaMessageId":"m_EXAMPLE_OUT_001","from":"422500000000000","to":"100800000000000","type":"text","text":{"body":"How can I help you?"},"status":"read","createTime":"2026-10-20T02:00:00.000Z","updateTime":"2026-10-20T02:00:03.000Z","readTime":"2026-10-20T02:00:03.000Z"}}},"messenger_message_reaction":{"title":"messenger_message_reaction","description":"The target Meta message need not have a local YCloud message record.","value":{"id":"evt_abcdef0123456789abcdef01","type":"messenger.message_reaction.updated","apiVersion":"v2","createTime":"2026-10-20T02:00:04.000Z","messengerMessageReaction":{"pageId":"422500000000000","psid":"100800000000000","metaMessageId":"m_EXAMPLE_OUT_001","action":"react","reaction":"love","emoji":"❤️"}}},"messenger_message_unreaction":{"title":"messenger_message_unreaction","description":"Withdrawals can omit the reaction name and emoji.","value":{"id":"evt_bcdef0123456789abcdef012","type":"messenger.message_reaction.updated","apiVersion":"v2","createTime":"2026-10-20T02:00:05.000Z","messengerMessageReaction":{"pageId":"422500000000000","psid":"100800000000000","metaMessageId":"m_EXAMPLE_OUT_001","action":"unreact"}}},"echo_text":{"title":"echo_text","description":"Store the text from whatsappMessage.text.body. id and wamid link subsequent status events.","value":{"id":"evt_example_echo_text","type":"whatsapp.echo_message.created","apiVersion":"v2","createTime":"2026-09-09T02:00:00.000Z","whatsappMessage":{"id":"MESSAGE_ID","wamid":"wamid.EXAMPLE","wabaId":"WABA_ID","from":"+12025550123","to":"+12025550124","recipientUserId":"GB.898232076600896","type":"text","text":{"body":"Hello! How can I help you?"},"status":"sent","createTime":"2026-09-09T02:00:00.000Z","sendTime":"2026-09-09T02:00:00.000Z"}}},"echo_image":{"title":"echo_image","description":"Message content varies by type. Treat media IDs as provider references, not public download URLs.","value":{"id":"evt_example_echo_image","type":"whatsapp.echo_message.created","apiVersion":"v2","createTime":"2026-09-09T02:00:00.000Z","whatsappMessage":{"id":"IMAGE_MESSAGE_ID","wamid":"wamid.IMAGE_EXAMPLE","wabaId":"WABA_ID","from":"+12025550123","to":"+12025550124","recipientUserId":"GB.898232076600896","type":"image","image":{"id":"MEDIA_ID","mime_type":"image/jpeg"},"status":"sent","createTime":"2026-09-09T02:00:00.000Z","sendTime":"2026-09-09T02:00:00.000Z"}}},"echo_delivered":{"title":"echo_delivered","description":"Correlate with the created event by id or wamid. Updated events omit message content and type.","value":{"id":"evt_example_echo_delivered","type":"whatsapp.echo_message.updated","apiVersion":"v2","createTime":"2026-09-09T02:00:03.000Z","whatsappMessage":{"id":"MESSAGE_ID","wamid":"wamid.EXAMPLE","wabaId":"WABA_ID","from":"+12025550123","to":"+12025550124","recipientUserId":"GB.898232076600896","status":"delivered","updateTime":"2026-09-09T02:00:01.000Z","deliverTime":"2026-09-09T02:00:01.000Z"}}},"echo_read":{"title":"echo_read","description":"Correlate with the created event by id or wamid. Updated events omit message content and type.","value":{"id":"evt_example_echo_read","type":"whatsapp.echo_message.updated","apiVersion":"v2","createTime":"2026-09-09T02:00:03.000Z","whatsappMessage":{"id":"MESSAGE_ID","wamid":"wamid.EXAMPLE","wabaId":"WABA_ID","from":"+12025550123","to":"+12025550124","recipientUserId":"GB.898232076600896","status":"read","updateTime":"2026-09-09T02:00:02.000Z","readTime":"2026-09-09T02:00:02.000Z"}}},"echo_sent":{"title":"echo_sent","description":"A lower-ranked source status can arrive after read. Record the event without downgrading your current message status.","value":{"id":"evt_example_echo_sent","type":"whatsapp.echo_message.updated","apiVersion":"v2","createTime":"2026-09-09T02:00:03.000Z","whatsappMessage":{"id":"MESSAGE_ID","wamid":"wamid.EXAMPLE","wabaId":"WABA_ID","from":"+12025550123","to":"+12025550124","recipientUserId":"GB.898232076600896","status":"sent","updateTime":"2026-09-09T02:00:00.000Z","sendTime":"2026-09-09T02:00:00.000Z"}}},"echo_failed":{"title":"echo_failed","description":"This is a separate failed message, not a transition from read. Failed updates include source error details when available.","value":{"id":"evt_example_echo_failed","type":"whatsapp.echo_message.updated","apiVersion":"v2","createTime":"2026-09-09T02:00:03.000Z","whatsappMessage":{"id":"FAILED_MESSAGE_ID","wamid":"wamid.FAILED_EXAMPLE","wabaId":"WABA_ID","from":"+12025550123","to":"+12025550124","recipientUserId":"GB.898232076600896","status":"failed","errorCode":"131000","errorMessage":"Provider failure","updateTime":"2026-09-09T02:00:03.000Z"}}},"agent_handover":{"title":"agent_handover","description":"APP_CONTROL_TAKEN reports control transfer, not an Inbox employee assignment or custom handoff message delivery. actor is the previous owner app ID in this example.","value":{"id":"evt_example_agent_handover","type":"whatsapp.meta_business_agent.handover.updated","apiVersion":"v2","createTime":"2026-09-09T02:00:04.000Z","whatsappMetaBusinessAgent":{"agentId":"00000000-0000-4000-8000-000000000001","metaAgentId":"META_AGENT_ID","phoneNumberId":"PHONE_NUMBER_ID","wabaId":"WABA_ID","consumerPhoneNumber":"+12025550124","controlState":"APP_CONTROL_TAKEN","actor":"PREVIOUS_OWNER_APP_ID","reason":"customer_request","timestamp":1788919204000}}},"whatsapp_business_account_deleted":{"title":"whatsapp_business_account_deleted","description":"Read whatsappBusinessAccount.id to identify the account. When present, removedReason, removedInitiatedBy, and removedTime describe the removal. Preserve unknown reason and initiator values.","value":{"id":"evt_business_account_deleted_123","type":"whatsapp.business_account.deleted","apiVersion":"v2","createTime":"2026-05-26T12:00:00.000Z","whatsappBusinessAccount":{"id":"whatsapp-business-account-id","name":"Example business","removedReason":"ACCOUNT_DISCONNECTED","removedInitiatedBy":"USER","removedTime":"2026-05-26T12:00:00.000Z"}}},"whatsapp_phone_number_quality_updated":{"title":"whatsapp_phone_number_quality_updated","description":"Read qualityRating and qualityUpdateEvent from whatsappPhoneNumber. messagingLimit describes the phone-number tier; whatsappBusinessManagerMessagingLimit describes the owning business portfolio's limit.","value":{"id":"evt_phone_number_quality_updated_123","type":"whatsapp.phone_number.quality_updated","apiVersion":"v2","createTime":"2026-05-26T12:00:00.000Z","whatsappPhoneNumber":{"id":"1234567890123456","phoneNumber":"+16315551111","displayPhoneNumber":"+1 631-555-1111","wabaId":"whatsapp-business-account-id","qualityRating":"GREEN","messagingLimit":"TIER_1K","whatsappBusinessManagerMessagingLimit":"TIER_2K","qualityUpdateEvent":"ONBOARDING"}}},"contact_attributes_changed":{"title":"contact_attributes_changed","description":"Example payload when contact attributes are changed","value":{"id":"evt_1234567890","type":"contact.attributes_changed","apiVersion":"v2","createTime":"2024-01-01T12:00:00.000Z","contactAttributesChanged":{"id":"1824266594102064128","updateTime":"2024-01-01T12:00:00.000Z","changedAttributes":{"remark_name":{"oldValue":"Standard customer","newValue":"Priority customer"},"email":{"oldValue":"john.doe@example.com","newValue":"johnny.doe@example.com"},"tags":{"oldValue":["premium","newsletter"],"newValue":["premium","newsletter","vip"],"extra":[{"action":"ADDED","id":"686dd294334be8606a5bf312","value":"vip"}]}}}}},"contact_created":{"title":"contact_created","description":"Example payload when a new contact is created","value":{"id":"evt_2345678901","type":"contact.created","apiVersion":"v2","createTime":"2024-01-01T12:00:00.000Z","contactCreated":{"id":"1824266594102064128","remarkName":"Priority customer","nickName":"John Doe","realName":"John Smith","phoneNumber":"+16315551111","countryCode":"US","countryName":"United States","email":"john.doe@example.com","sourceType":"api","sourceId":"import_batch_123","sourceUrl":"https://example.com/signup","lastSeen":"2024-01-01T11:59:00.000Z","lastConnectedNumber":"+16315552222","ownerEmail":"owner@example.com","tags":["premium","newsletter"],"createTime":"2024-01-01T12:00:00.000Z","updateTime":"2024-01-01T12:00:00.000Z","blocked":false,"customAttributes":{"attr1":"value1","attr2":"value2","attr3":123}}}},"contact_deleted":{"title":"contact_deleted","description":"Example payload when a contact is deleted","value":{"id":"evt_3456789012","type":"contact.deleted","apiVersion":"v2","createTime":"2024-01-01T12:00:00.000Z","contactDeleted":{"id":"1824266594102064128","remarkName":"Former customer","nickName":"John Doe","phoneNumber":"+16315551111","updateTime":"2024-01-01T12:00:00.000Z"}}},"contact_note_created":{"title":"contact_note_created","value":{"id":"evt_1234567890abcdef12345678","type":"contact.note.created","apiVersion":"v2","createTime":"2024-01-01T12:00:00.000Z","contactNote":{"id":"6a3de646e18f344f743aaa4d","contactId":"1824266594102064128","username":"alice_01","phoneNumber":"+16315551111","content":"Customer prefers follow-up in the morning.","createTime":"2024-01-01T12:00:00.000Z","updateTime":"2024-01-01T12:00:00.000Z"}}},"contact_note_updated":{"title":"contact_note_updated","value":{"id":"evt_2234567890abcdef12345678","type":"contact.note.updated","apiVersion":"v2","createTime":"2024-01-02T12:00:00.000Z","contactNote":{"id":"6a3de646e18f344f743aaa4d","contactId":"1824266594102064128","username":"alice_01","phoneNumber":"+16315551111","content":"Customer now prefers afternoon follow-up.","createTime":"2024-01-01T12:00:00.000Z","updateTime":"2024-01-02T12:00:00.000Z"}}},"contact_note_deleted":{"title":"contact_note_deleted","description":"Emitted only for an independent note deletion, not for contact deletion cascade.","value":{"id":"evt_3234567890abcdef12345678","type":"contact.note.deleted","apiVersion":"v2","createTime":"2024-01-03T12:00:00.000Z","contactNote":{"id":"6a3de646e18f344f743aaa4d","contactId":"1824266594102064128","username":"alice_01","phoneNumber":"+16315551111","content":"Customer now prefers afternoon follow-up.","createTime":"2024-01-01T12:00:00.000Z","updateTime":"2024-01-02T12:00:00.000Z"}}},"contact_unsubscribe_created":{"title":"contact_unsubscribe_created","description":"Example payload when a customer cancels subscription","value":{"id":"evt_3456789012","type":"contact.unsubscribe.created","apiVersion":"v2","createTime":"2024-01-01T12:00:00.000Z","unsubscriberChanged":{"phoneNumber":"+16315551111","source":"Whatsapp","updateTime":"2024-01-01T12:00:00.000Z"}}},"contact_unsubscribe_deleted":{"title":"contact_unsubscribe_deleted","description":"Example payload when a customer resumes subscription","value":{"id":"evt_3456789012","type":"contact.unsubscribe.deleted","apiVersion":"v2","createTime":"2024-01-01T12:00:00.000Z","unsubscriberChanged":{"phoneNumber":"+16315551111","source":"Whatsapp","updateTime":"2024-01-01T12:00:00.000Z"}}},"whatsapp_phone_number_business_username_updated":{"title":"whatsapp_phone_number_business_username_updated","description":"Example payload when a WhatsApp phone number Business Username becomes active","value":{"id":"evt_business_username_updated_123","type":"whatsapp.phone_number.business_username_updated","apiVersion":"v2","createTime":"2026-05-26T12:00:00.000Z","whatsappPhoneNumber":{"id":"1234567890123456","phoneNumber":"+16315551111","displayPhoneNumber":"+1 631-555-1111","wabaId":"whatsapp-business-account-id","businessUsername":"acme.support","businessUsernameStatus":"active","businessUsernameUpdatedAt":"2026-05-26T12:00:00.000Z"}}},"whatsapp_phone_number_business_username_reserved":{"title":"whatsapp_phone_number_business_username_reserved","description":"Example payload when a WhatsApp phone number has a reserved Business Username request","value":{"id":"evt_business_username_pending_123","type":"whatsapp.phone_number.business_username_updated","apiVersion":"v2","createTime":"2026-05-26T12:30:00.000Z","whatsappPhoneNumber":{"id":"1234567890123456","phoneNumber":"+16315551111","displayPhoneNumber":"+1 631-555-1111","wabaId":"whatsapp-business-account-id","businessUsername":"acme.support","businessUsernameStatus":"reserved","requestedBusinessUsername":"acme.help","businessUsernameUpdatedAt":"2026-05-26T12:30:00.000Z"}}},"whatsapp_template_correct_category_detection":{"title":"whatsapp_template_correct_category_detection","description":"Meta detected marketing content in a Utility Direct Send message. Subscribe to this event through the webhook endpoint API.","value":{"id":"evt_direct_send_category_123","type":"whatsapp.template.correct_category_detection","apiVersion":"v2","createTime":"2026-09-17T08:00:00.000Z","whatsappTemplate":{"officialTemplateId":"official-template-id","wabaId":"whatsapp-business-account-id","name":"auto_generated_sample","language":"en_US","category":"MARKETING","previousCategory":"UTILITY"}}},"whatsapp_direct_send_restricted":{"title":"whatsapp_direct_send_restricted","description":"Meta restricted Utility Direct Send for 7 days after repeated category misuse.","value":{"id":"evt_direct_send_restriction_123","type":"whatsapp.business_account.updated","apiVersion":"v2","createTime":"2026-09-17T08:00:00.000Z","whatsappBusinessAccount":{"id":"whatsapp-business-account-id","name":"Example business","updateEvent":"ACCOUNT_RESTRICTION","violationType":"DIRECT_SEND_UTILITY_CATEGORY_ABUSE_STRIKE_1","restrictions":[{"restrictionType":"RESTRICTED_DIRECT_SEND_UTILITY_TEMPLATES","expiration":"2026-09-24T08:00:00.000Z"}]}}},"whatsapp_template_archived":{"title":"whatsapp_template_archived","description":"Example payload when a WhatsApp template is archived","value":{"id":"evt_template_archived_123","type":"whatsapp.template.reviewed","apiVersion":"v2","createTime":"2024-01-01T12:00:00.000Z","whatsappTemplate":{"id":"template-id","officialTemplateId":"official-template-id","wabaId":"whatsapp-business-account-id","name":"sample_whatsapp_template","language":"en","category":"MARKETING","status":"ARCHIVED","statusUpdateEvent":"ARCHIVED","createTime":"2024-01-01T12:00:00.000Z","updateTime":"2024-01-01T12:00:00.000Z"}}},"whatsapp_template_unarchived":{"title":"whatsapp_template_unarchived","description":"Example payload when a WhatsApp template is unarchived. The template status is the current status returned by Meta and does not represent a new approval review.","value":{"id":"evt_template_unarchived_123","type":"whatsapp.template.reviewed","apiVersion":"v2","createTime":"2024-01-01T12:00:00.000Z","whatsappTemplate":{"id":"template-id","officialTemplateId":"official-template-id","wabaId":"whatsapp-business-account-id","name":"sample_whatsapp_template","language":"en","category":"MARKETING","status":"APPROVED","statusUpdateEvent":"UNARCHIVED","createTime":"2024-01-01T12:00:00.000Z","updateTime":"2024-01-01T12:00:00.000Z"}}},"whatsapp_call_connect":{"title":"whatsapp_call_connect","description":"Example payload when a WhatsApp call is connected","value":{"id":"evt_call_connect_123","type":"whatsapp.call.connect","apiVersion":"v2","createTime":"2024-01-01T12:00:00.000Z","callingConnect":{"id":"6757b723960b25543b9ecc66","wacid":"wacid.HBgNNjI4MTM2MTkwNTEzMxUCABIYIEF","phoneId":"461269257068832","from":"+6281361905133","to":"+6283138205150","direction":"USER_INITIATED","dialTime":1733826430000,"sdpType":"offer","sdp":"v=0\r\no=- 1732169627243 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE audio\r\na=msid-semantic: WMS af3b01e3-eb42-4244-812e-db903c062ae7\r\na=ice-lite\r\nm=audio 3480 UDP/TLS/RTP/SAVPF 111 126\r\nc=IN IP4 31.13.87.130\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=candidate:785588535 1 udp 2122260223 31.13.87.130 3480 typ host generation 0 network-cost 50\r\na=candidate:1906600321 1 udp 2122262783 2a03:2880:f217:d0:face:b00c:0:699c 3480 typ host generation 0 network-cost 50\r\na=ice-ufrag:CvRXRnInnWhQzLIE\r\na=ice-pwd:HGXUGAFI8wK6seuVknBT2Q==\r\na=fingerprint:sha-256 FB:56:A1:C5:37:35:6C:5C:1B:05:23:B0:DD:BB:2E:C9:5F:E4:70:61:7B:D9:1D:09:84:76:46:23:12:38:B7:01\r\na=setup:actpass\r\na=mid:audio\r\na=sendrecv\r\na=msid:af3b01e3-eb42-4244-812e-db903c062ae7 WhatsAppTrack1\r\na=rtcp-mux\r\na=rtpmap:111 opus/48000/2\r\na=rtcp-fb:111 transport-cc\r\na=fmtp:111 maxaveragebitrate=20000;maxplaybackrate=16000;minptime=20;sprop-maxcapturerate=16000;useinbandfec=1\r\na=rtpmap:126 telephone-event/8000\r\na=maxptime:20\r\na=ptime:20\r\na=ssrc:659928310 cname:WhatsAppAudioStream1\r\n"}}},"whatsapp_call_terminate":{"title":"whatsapp_call_terminate","description":"Example payload when a WhatsApp call is terminated","value":{"id":"evt_6757b889a5a42d369ef48481","type":"whatsapp.call.terminate","apiVersion":"v2","createTime":"2024-12-10T03:42:01.822Z","callingTerminate":{"id":"6757b889960b25543b9ecc67","wacid":"wacid.HBgNNjI4MTM2MTkwNTEzMxUCABIYIEFENjB","phoneId":"461269257068832","from":"+6281361905133","to":"+6283138205150","direction":"USER_INITIATED","startTime":1733734738000,"endTime":1733734771000,"duration":33,"status":"COMPLETED"}}},"whatsapp_call_status_updated":{"title":"whatsapp_call_status_updated","description":"Example payload when a WhatsApp call status is updated","value":{"id":"evt_676e5ab57a9cb742d02d7646","type":"whatsapp.call.status.updated","apiVersion":"v2","createTime":"2024-12-27T07:41:28.422Z","callingStatusUpdated":{"wabaId":"188234691048809","wacid":"wacid.HBgNNjI4MTM2MTkwNTEzMxUCABE","phoneId":"461269257068832","status":"RINGING","recipientPhone":"+6281361905133"}}},"whatsapp_call_recording_updated":{"title":"whatsapp_call_recording_updated","description":"Example payload when an API-sourced call recording becomes available","value":{"id":"evt_call_recording_01JZ8K4V7H3P6Q9R2T5W8X1Y4Z","type":"whatsapp.call.recording.updated","apiVersion":"v2","createTime":"2026-08-04T08:00:00.000Z","callingRecording":{"wacid":"wacid.HBgNNjI4MTM2MTkwNTEzMxUCABE","phoneId":"461269257068832","mediaAssetId":"66b1f0c2e4b05c2d8f1a3b47","status":"AVAILABLE"}}},"whatsapp_call_transcription_updated":{"title":"whatsapp_call_transcription_updated","description":"Example payload when an API-sourced call transcription permanently fails","value":{"id":"evt_call_transcription_01JZ8K5A9C4D7E0F3G6H9J2K5M","type":"whatsapp.call.transcription.updated","apiVersion":"v2","createTime":"2026-08-04T08:01:00.000Z","callingTranscription":{"wacid":"wacid.HBgNNjI4MTM2MTkwNTEzMxUCABE","phoneId":"461269257068832","mediaAssetId":"66b1f0d9e4b05c2d8f1a3b48","status":"FAILED","error":{"code":"CALLING_TRANSCRIPTION_PROCESSING_FAILED","retryable":false}}}},"whatsapp_group_lifecycle_update":{"title":"whatsapp_group_lifecycle_update","description":"Example payload when a WhatsApp group is created","value":{"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"}}},"whatsapp_group_participants_update":{"title":"whatsapp_group_participants_update","description":"Example payload when WhatsApp group participants are added","value":{"id":"evt_group_participants_123","type":"whatsapp.group.participants_update","apiVersion":"v2","createTime":"2026-05-13T00:00:00.000Z","whatsappGroup":{"wabaId":"123456789012345","field":"group_participants_update","type":"group_participants_add","status":"added","groupId":"120363345678901234@g.us","waId":"16315551111","recipientUserId":"US.1234","parentRecipientUserId":"US.parent123","customerProfile":{"name":"John Doe","username":"john_doe"},"addedParticipants":[{"input":"US.1234","waId":"16315551111","recipientUserId":"US.1234","parentRecipientUserId":"US.parent123","customerProfile":{"name":"John Doe","username":"john_doe"}}],"webhookTime":"2026-05-13T00:00:00.000Z"}}},"whatsapp_group_settings_update":{"title":"whatsapp_group_settings_update","description":"Example payload when WhatsApp group settings are updated","value":{"id":"evt_group_settings_123","type":"whatsapp.group.settings_update","apiVersion":"v2","createTime":"2026-05-13T00:00:00.000Z","whatsappGroup":{"wabaId":"123456789012345","field":"group_settings_update","type":"group_settings_update","requestId":"REQ_2","status":"updated","groupId":"120363345678901234@g.us","subject":"Updated Purchase Inquiry","description":"Updated group description.","settings":[{"name":"group_subject","text":"Updated Purchase Inquiry","updateSuccessful":true},{"name":"group_description","text":"Updated group description.","updateSuccessful":true}],"webhookTime":"2026-05-13T00:00:00.000Z"}}},"whatsapp_group_status_update":{"title":"whatsapp_group_status_update","description":"Example payload when a WhatsApp group suspension status changes","value":{"id":"evt_group_status_123","type":"whatsapp.group.status_update","apiVersion":"v2","createTime":"2026-05-13T00:00:00.000Z","whatsappGroup":{"wabaId":"123456789012345","field":"group_status_update","type":"group_suspend","status":"suspended","groupId":"120363345678901234@g.us","webhookTime":"2026-05-13T00:00:00.000Z"}}},"smb_message_created":{"title":"smb_message_created","description":"Read the outbound message from whatsappMessage. The message type selects its content object; this example contains text.","value":{"id":"evt_example_smb_created","type":"whatsapp.smb.message.created","apiVersion":"v2","createTime":"2026-10-09T08:00:00.000Z","whatsappMessage":{"id":"MESSAGE_ID","wamid":"wamid.EXAMPLE","wabaId":"WABA_ID","from":"+16315551111","to":"+16315552222","type":"text","text":{"body":"Your order is ready for pickup."},"status":"sent","createTime":"2026-10-08T12:00:00.000Z","sendTime":"2026-10-08T12:00:00.000Z"}}},"smb_message_echoes":{"title":"smb_message_echoes","description":"This event synchronizes a message sent from the WhatsApp Business app or a supported companion device. Read its content from whatsappMessage.","value":{"id":"evt_example_smb_echoes","type":"whatsapp.smb.message.echoes","apiVersion":"v2","createTime":"2026-10-09T08:00:00.000Z","whatsappMessage":{"id":"MESSAGE_ID","wamid":"wamid.EXAMPLE","wabaId":"WABA_ID","from":"+16315551111","to":"+16315552222","type":"text","text":{"body":"Your order is ready for pickup."},"status":"sent","createTime":"2026-10-08T12:00:00.000Z","sendTime":"2026-10-08T12:00:00.000Z","toUserId":"US.13491208655302741918","toParentUserId":"US.ENT.11815799212886844830","customerProfile":{"username":"example_customer"}}}},"smb_history_inbound":{"title":"smb_history_inbound","description":"An inbound history message uses whatsappInboundMessage. phase and progress report synchronization of the history chunk.","value":{"id":"evt_example_smb_history_inbound","type":"whatsapp.smb.history","apiVersion":"v2","createTime":"2026-10-09T08:00:00.000Z","phase":1,"progress":40,"whatsappInboundMessage":{"id":"INBOUND_MESSAGE_ID","wamid":"wamid.INBOUND_EXAMPLE","wabaId":"WABA_ID","from":"+16315552222","to":"+16315551111","type":"text","text":{"body":"What time can I collect my order?"},"customerProfile":{"name":"Example customer"},"sendTime":"2026-10-08T12:00:00.000Z"}}},"smb_history_outbound":{"title":"smb_history_outbound","description":"An outbound history message uses whatsappMessage. Do not route it as an inbound message.","value":{"id":"evt_example_smb_history_outbound","type":"whatsapp.smb.history","apiVersion":"v2","createTime":"2026-10-09T08:00:00.000Z","phase":1,"progress":60,"whatsappMessage":{"id":"MESSAGE_ID","wamid":"wamid.EXAMPLE","wabaId":"WABA_ID","from":"+16315551111","to":"+16315552222","type":"text","text":{"body":"Your order is ready for pickup."},"status":"sent","createTime":"2026-10-08T12:00:00.000Z","sendTime":"2026-10-08T12:00:00.000Z"}}},"smb_history_progress":{"title":"smb_history_progress","description":"A metadata-only history chunk reports phase and progress without either message object. Do not treat this shape as a message-created or message-echoes payload.","value":{"id":"evt_example_smb_history_progress","type":"whatsapp.smb.history","apiVersion":"v2","createTime":"2026-10-09T08:00:00.000Z","phase":1,"progress":73}}},"exampleType":"examples"}},"exampleType":"examples"},"responses":{"2be9be38-6829-40f7-8179-232a03f10be4":{"description":"The request is successfully accepted.","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}}},"security":{},"servers":{"b4f58450-c5db-43b6-969c-9c2cdd4836a5":{"url":"https://example.com","description":"Reserved placeholder for your webhook receiver"}}},"originalFileLocation":"openapi/webhooks/testing-webhooks.yaml"},"subdomain":"lchnan","siteName":"YCloud Docs","title":"测试 Webhook - YCloud Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/en/api-reference/webhooks/test-webhooks","matchLevel":1},"zh":{"href":"/zh/api-reference/webhooks/test-webhooks","matchLevel":0},"es":{"href":"/es/api-reference/webhooks/test-webhooks","matchLevel":1},"pt":{"href":"/pt/api-reference/webhooks/test-webhooks","matchLevel":1},"ru":{"href":"/ru/api-reference/webhooks/test-webhooks","matchLevel":1}}},"lastModified":"2026-10-13T14:42:24.283Z","originalFileLocation":"zh/api-reference/webhooks/test-webhooks.mdx","locale":"zh"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"发送示例 Webhook 载荷并检查事件架构 (schema)。\">\u003cmeta data-mint-head name=\"application-name\" content=\"YCloud Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/lchnan/g_kuIVCsIE9hrH5P/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/lchnan/g_kuIVCsIE9hrH5P/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/lchnan/g_kuIVCsIE9hrH5P/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/lchnan/g_kuIVCsIE9hrH5P/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/lchnan/g_kuIVCsIE9hrH5P/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/lchnan/g_kuIVCsIE9hrH5P/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/lchnan/g_kuIVCsIE9hrH5P/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/lchnan/g_kuIVCsIE9hrH5P/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/lchnan/g_kuIVCsIE9hrH5P/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"测试 Webhook - YCloud Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"发送示例 Webhook 载荷并检查事件架构 (schema)。\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"YCloud Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.ycloud.com/zh/api-reference/webhooks/test-webhooks\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://lchnan.mintlify.app/_mintlify/api/og/v2?division=Webhooks\u0026amp;title=%E6%B5%8B%E8%AF%95+Webhook\u0026amp;description=%E5%8F%91%E9%80%81%E7%A4%BA%E4%BE%8B+Webhook+%E8%BD%BD%E8%8D%B7%E5%B9%B6%E6%A3%80%E6%9F%A5%E4%BA%8B%E4%BB%B6%E6%9E%B6%E6%9E%84+%28schema%29%E3%80%82\u0026amp;theme=7e639de6347778391fbe3ad7\u0026amp;signature=38b82b9bc9063ac38660a8ded3cfecea3433a633f9349facff800f2329869130\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"测试 Webhook - YCloud Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"发送示例 Webhook 载荷并检查事件架构 (schema)。\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://lchnan.mintlify.app/_mintlify/api/og/v2?division=Webhooks\u0026amp;title=%E6%B5%8B%E8%AF%95+Webhook\u0026amp;description=%E5%8F%91%E9%80%81%E7%A4%BA%E4%BE%8B+Webhook+%E8%BD%BD%E8%8D%B7%E5%B9%B6%E6%A3%80%E6%9F%A5%E4%BA%8B%E4%BB%B6%E6%9E%B6%E6%9E%84+%28schema%29%E3%80%82\u0026amp;theme=7e639de6347778391fbe3ad7\u0026amp;signature=38b82b9bc9063ac38660a8ded3cfecea3433a633f9349facff800f2329869130\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/lchnan/g_kuIVCsIE9hrH5P/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"YCloud Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#602DED\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.ycloud.com/zh/api-reference/webhooks/test-webhooks\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/zh/api-reference/webhooks/test-webhooks.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"zh\" href=\"https://docs.ycloud.com/zh/api-reference/webhooks/test-webhooks\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://docs.ycloud.com/en/api-reference/webhooks/test-webhooks\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"es\" href=\"https://docs.ycloud.com/es/api-reference/webhooks/test-webhooks\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"pt\" href=\"https://docs.ycloud.com/pt/api-reference/webhooks/test-webhooks\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ru\" href=\"https://docs.ycloud.com/ru/api-reference/webhooks/test-webhooks\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://docs.ycloud.com/en/api-reference/webhooks/test-webhooks\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.ycloud.com/#organization\",\"name\":\"YCloud Docs\",\"url\":\"https://docs.ycloud.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/lchnan/AXn0jsI-c5aPnOMW/logo/light.png?fit=max\u0026auto=format\u0026n=AXn0jsI-c5aPnOMW\u0026q=85\u0026s=0865e4207d765d07a769c29bc819adbe\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.ycloud.com#website\",\"name\":\"YCloud Docs\",\"url\":\"https://docs.ycloud.com\",\"publisher\":{\"@id\":\"https://docs.ycloud.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.ycloud.com/zh/api-reference/webhooks/test-webhooks#webpage\",\"url\":\"https://docs.ycloud.com/zh/api-reference/webhooks/test-webhooks\",\"name\":\"测试 Webhook\",\"description\":\"发送示例 Webhook 载荷并检查事件架构 (schema)。\",\"dateModified\":\"2026-10-13T14:42:24.283Z\",\"isPartOf\":{\"@id\":\"https://docs.ycloud.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.ycloud.com/zh/api-reference/webhooks/test-webhooks#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.ycloud.com/zh/api-reference/webhooks/test-webhooks#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"YCloud Docs\",\"item\":\"https://docs.ycloud.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"测试 Webhook\",\"item\":\"https://docs.ycloud.com/zh/api-reference/webhooks/test-webhooks\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.ycloud.com/zh/api-reference/webhooks/test-webhooks#apireference\",\"headline\":\"测试 Webhook\",\"name\":\"测试 Webhook\",\"description\":\"发送示例 Webhook 载荷并检查事件架构 (schema)。\",\"url\":\"https://docs.ycloud.com/zh/api-reference/webhooks/test-webhooks\",\"mainEntityOfPage\":{\"@id\":\"https://docs.ycloud.com/zh/api-reference/webhooks/test-webhooks#webpage\"},\"dateModified\":\"2026-10-13T14:42:24.283Z\",\"publisher\":{\"@id\":\"https://docs.ycloud.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.ycloud.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"YCloud Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"YCloud Docs","nav":{"global":null,"languages":[{"language":"en","default":true,"pages":[{"title":"en","href":"/en/api-reference/webhooks/test-webhooks"}]},{"language":"zh","tabs":[{"tab":"产品文档","icon":"book-open","pages":[{"title":"产品文档","href":"/zh/documentation/overview"}]},{"tab":"API 参考","icon":"code","groups":[{"group":"开始使用","pages":[{"title":"YCloud API","href":"/zh/api-reference/getting-started/ycloud-api"},{"title":"快速入门","href":"/zh/api-reference/getting-started/quickstart"},{"title":"API 更新日志","href":"/zh/api-reference/getting-started/changelog"}]},{"group":"指南","pages":[{"title":"指南","href":"/zh/api-reference/guides/overview"},{"group":"API 基础","pages":[{"title":"身份验证","href":"/zh/api-reference/guides/api-fundamentals/authentication"},{"title":"错误处理","href":"/zh/api-reference/guides/api-fundamentals/handle-errors"},{"title":"速率限制","href":"/zh/api-reference/guides/api-fundamentals/rate-limits"},{"title":"分页","href":"/zh/api-reference/guides/api-fundamentals/pagination"},{"title":"API 版本控制与兼容性","href":"/zh/api-reference/guides/api-fundamentals/versioning"},{"title":"配置 Webhook","href":"/zh/api-reference/guides/api-fundamentals/configure-webhooks"},{"title":"实现 Webhook 接收器","href":"/zh/api-reference/guides/api-fundamentals/implement-a-webhook-receiver"}]},{"group":"WhatsApp 平台","pages":[{"group":"发送与接收","pages":[{"title":"发送 WhatsApp 消息","href":"/zh/api-reference/guides/whatsapp-platform/send-whatsapp-message"},{"title":"WhatsApp 错误代码","href":"/zh/api-reference/guides/whatsapp-platform/whatsapp-error-code"},{"title":"处理 WhatsApp 入站消息","href":"/zh/api-reference/guides/whatsapp-platform/handle-whatsapp-inbound-messages"},{"title":"上传 WhatsApp 媒体","href":"/zh/api-reference/guides/whatsapp-platform/upload-whatsapp-media"},{"title":"WhatsApp 消息定价接入指南","href":"/zh/api-reference/guides/whatsapp-platform/whatsapp-message-pricing-integration-guide"},{"title":"最高出价(Max Price)集成指南","href":"/zh/api-reference/guides/whatsapp-platform/max-price-integration-guide"}]},{"group":"最佳实践","pages":[{"title":"WhatsApp Messages API 最佳实践","href":"/zh/api-reference/guides/whatsapp-platform/whatsapp-messages-api-best-practices"},{"title":"Direct Send 最佳实践","href":"/zh/api-reference/guides/whatsapp-platform/best-practices/direct-send"}]},{"group":"商业账户","pages":[{"title":"管理 WhatsApp 商业账户","href":"/zh/api-reference/guides/whatsapp-platform/manage-whatsapp-business-accounts"},{"title":"管理 WhatsApp 电话号码","href":"/zh/api-reference/guides/whatsapp-platform/manage-whatsapp-phone-numbers"},{"title":"使用业务范围用户 ID","href":"/zh/api-reference/guides/whatsapp-platform/use-business-scoped-user-ids"}]},{"group":"模板与流程","pages":[{"title":"管理 WhatsApp 模板","href":"/zh/api-reference/guides/whatsapp-platform/manage-whatsapp-templates"},{"title":"支持的 WhatsApp 消息模板语言","href":"/zh/api-reference/guides/whatsapp-platform/supported-whatsapp-template-languages"},{"title":"管理 WhatsApp Flows","href":"/zh/api-reference/guides/whatsapp-platform/manage-whatsapp-flows"},{"title":"实现 WhatsApp Flow 端点","href":"/zh/api-reference/guides/whatsapp-platform/implement-a-whatsapp-flow-endpoint"}]},{"group":"通话与群组","pages":[{"title":"管理 WhatsApp 通话","href":"/zh/api-reference/guides/whatsapp-platform/manage-whatsapp-calls"},{"title":"管理 WhatsApp 群组","href":"/zh/api-reference/guides/whatsapp-platform/manage-whatsapp-groups"}]}]},{"group":"Meta 商业智能体","pages":[{"title":"Meta Business Agent 概述","href":"/zh/documentation/meta-business-agent/overview"},{"title":"准备并检查资格","href":"/zh/documentation/meta-business-agent/prepare-and-check-eligibility"},{"title":"接入与配置","href":"/zh/documentation/meta-business-agent/onboard-and-configure"},{"title":"测试与评估","href":"/zh/documentation/meta-business-agent/test-and-evaluate"},{"title":"安全发布","href":"/zh/documentation/meta-business-agent/roll-out-safely"},{"title":"操作与故障排除","href":"/zh/documentation/meta-business-agent/operate-and-troubleshoot"}]},{"group":"客户数据与运营","pages":[{"title":"查询账户余额","href":"/zh/api-reference/guides/customer-data-and-operations/check-account-balance"},{"title":"管理联系人","href":"/zh/api-reference/guides/customer-data-and-operations/manage-contacts"},{"title":"跟踪自定义事件","href":"/zh/api-reference/guides/customer-data-and-operations/track-custom-events"},{"title":"管理退订用户","href":"/zh/api-reference/guides/customer-data-and-operations/manage-unsubscribers"}]},{"group":"示例","pages":[{"title":"API 与 Webhook 示例","href":"/zh/api-reference/guides/examples/overview"},{"group":"API 示例","pages":[{"title":"WhatsApp 消息模板创建示例","href":"/zh/api-reference/guides/examples/api-examples/whatsapp-template-creation-examples"},{"title":"WhatsApp 消息发送示例","href":"/zh/api-reference/guides/examples/api-examples/whatsapp-messaging-examples"}]},{"group":"Webhook 示例","pages":[{"title":"Webhook 示例","href":"/zh/api-reference/guides/examples/webhook-examples/overview"},{"group":"消息","pages":[{"title":"消息状态 Webhook 示例","href":"/zh/api-reference/guides/examples/webhook-examples/whatsapp-message-updated-webhook-examples"},{"title":"入站消息和偏好 Webhook 示例","href":"/zh/api-reference/guides/examples/webhook-examples/whatsapp-inbound-message-webhook-examples"}]},{"group":"Meta Business Agent","pages":[{"title":"Meta Business Agent echo 消息已创建","sidebarTitle":"Echo 消息已创建","href":"/zh/api-reference/guides/examples/webhook-examples/whatsapp-echo-message-created"},{"title":"Meta Business Agent 回显消息已更新","sidebarTitle":"回显消息已更新","href":"/zh/api-reference/guides/examples/webhook-examples/whatsapp-echo-message-updated"},{"title":"Meta Business Agent 控制权移交","sidebarTitle":"控制权移交","href":"/zh/api-reference/guides/examples/webhook-examples/whatsapp-meta-business-agent-handover-updated"}]},{"group":"WhatsApp Business App","pages":[{"title":"WhatsApp Business App 历史消息 Webhook 示例","href":"/zh/api-reference/guides/examples/webhook-examples/whatsapp-business-app-history-message-webhook-examples"},{"title":"WhatsApp Business App 已发送消息同步 Webhook 示例","href":"/zh/api-reference/guides/examples/webhook-examples/whatsapp-business-app-sent-message-sync-webhook-examples"}]},{"group":"模板与账户","pages":[{"title":"WhatsApp 模板 Webhook 示例","href":"/zh/api-reference/guides/examples/webhook-examples/whatsapp-template-reviewed-webhook-examples"},{"title":"WhatsApp 账户和电话号码 Webhook 示例","href":"/zh/api-reference/guides/examples/webhook-examples/whatsapp-business-account-updated-webhook-examples"}]},{"group":"通话","pages":[{"title":"WhatsApp 呼叫连接 Webhook 示例","href":"/zh/api-reference/guides/examples/webhook-examples/whatsapp-calling-connect-webhook-examples"},{"title":"WhatsApp 通话状态更新 Webhook 示例","href":"/zh/api-reference/guides/examples/webhook-examples/whatsapp-calling-status-update-webhook-examples"},{"title":"WhatsApp 通话结束与捕获 Webhook 示例","href":"/zh/api-reference/guides/examples/webhook-examples/whatsapp-calling-terminate-webhook-examples"}]},{"group":"群组","pages":[{"title":"WhatsApp 群组生命周期更新 Webhook 示例","href":"/zh/api-reference/guides/examples/webhook-examples/whatsapp-group-lifecycle-update-webhook-examples"},{"title":"WhatsApp 群组成员更新 Webhook 示例","href":"/zh/api-reference/guides/examples/webhook-examples/whatsapp-group-participants-update-webhook-examples"},{"title":"WhatsApp 群组设置更新 Webhook 示例","href":"/zh/api-reference/guides/examples/webhook-examples/whatsapp-group-settings-update-webhook-examples"},{"title":"WhatsApp 群组状态更新 Webhook 示例","href":"/zh/api-reference/guides/examples/webhook-examples/whatsapp-group-status-update-webhook-examples"}]},{"group":"Flows","pages":[{"title":"WhatsApp Flow Webhook 示例","href":"/zh/api-reference/guides/examples/webhook-examples/whatsapp-flow-webhook-examples"}]},{"group":"支付","pages":[{"title":"WhatsApp 支付更新 Webhook 示例","href":"/zh/api-reference/guides/examples/webhook-examples/whatsapp-payment-updated-webhook-examples"}]},{"group":"联系人与退订","pages":[{"title":"联系人及备注创建 Webhook 示例","href":"/zh/api-reference/guides/examples/webhook-examples/contact-created-webhook-examples"},{"title":"联系人及备注删除 Webhook 示例","href":"/zh/api-reference/guides/examples/webhook-examples/contact-deleted-webhook-examples"},{"title":"联系人及便签更新 Webhook 示例","href":"/zh/api-reference/guides/examples/webhook-examples/contact-attributes-changed-webhook-examples"},{"title":"联系人退订创建 Webhook 示例","href":"/zh/api-reference/guides/examples/webhook-examples/contact-unsubscribe-created-webhook-examples"},{"title":"联系人退订删除 Webhook 示例","href":"/zh/api-reference/guides/examples/webhook-examples/contact-unsubscribe-deleted-webhook-examples"}]},{"title":"Webhook 载荷示例","href":"/zh/api-reference/guides/examples/webhook-examples/webhook-payload-examples"}]}]}]},{"group":"接口","pages":[{"group":"WhatsApp 业务账号","pages":[{"title":"List WABAs","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /whatsapp/businessAccounts","href":"/api-reference/whatsapp-business-accounts/list-wabas"},{"title":"Retrieve a WABA","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /whatsapp/businessAccounts/{id}","href":"/api-reference/whatsapp-business-accounts/retrieve-a-waba"},{"title":"Retrieve WABA automatic creative optimizations","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /whatsapp/businessAccounts/{wabaId}/automatic-creative-optimizations","href":"/api-reference/whatsapp-business-accounts/retrieve-waba-automatic-creative-optimizations"},{"title":"Update WABA automatic creative optimizations","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml patch /whatsapp/businessAccounts/{wabaId}/automatic-creative-optimizations","href":"/api-reference/whatsapp-business-accounts/update-waba-automatic-creative-optimizations"}]},{"group":"WhatsApp 入站消息","pages":[{"title":"Mark message as read","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /whatsapp/inboundMessages/{id}/markAsRead","href":"/api-reference/whatsapp-inbound-messages/mark-message-as-read"},{"title":"Mark message as read and display a typing indicator with a JSON response","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /whatsapp/inboundMessages/{id}/typing","href":"/api-reference/whatsapp-inbound-messages/mark-message-as-read-and-display-a-typing-indicator-with-a-json-response"}]},{"group":"WhatsApp 媒体","pages":[{"title":"Upload media","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /whatsapp/media/{phoneNumber}/upload","href":"/api-reference/whatsapp-media/upload-media"}]},{"group":"WhatsApp 消息","pages":[{"title":"Send a message directly","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /whatsapp/messages/sendDirectly","href":"/api-reference/whatsapp-messages/send-a-message-directly"},{"title":"Enqueue a message","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /whatsapp/messages","href":"/api-reference/whatsapp-messages/enqueue-a-message"},{"title":"Retrieve a message","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /whatsapp/messages/{id}","href":"/api-reference/whatsapp-messages/retrieve-a-message"},{"title":"Submit a Direct Send message sample","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /whatsapp/messages/{wabaId}/messageSamples","href":"/api-reference/whatsapp-messages/submit-a-direct-send-message-sample"}]},{"group":"Messenger 消息","pages":[{"title":"Send a Messenger text reply directly","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /messenger/messages/sendDirectly","href":"/api-reference/messenger-messages/send-a-messenger-text-reply-directly"},{"title":"Retrieve an outbound message by its YCloud ID","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /messenger/messages/{id}","href":"/api-reference/messenger-messages/retrieve-an-outbound-message-by-its-ycloud-id"},{"title":"Retrieve an outbound message by its Meta message ID","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /messenger/messages/retrieveByMetaMessageId","href":"/api-reference/messenger-messages/retrieve-an-outbound-message-by-its-meta-message-id"}]},{"group":"WhatsApp 屏蔽用户","pages":[{"title":"Block users","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /whatsapp/{businessPhoneNumber}/blockUsers","href":"/api-reference/whatsapp-blocked-users/block-users"},{"title":"Unblock users","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /whatsapp/{businessPhoneNumber}/unblockUsers","href":"/api-reference/whatsapp-blocked-users/unblock-users"},{"title":"List blocked users","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /whatsapp/{businessPhoneNumber}/blockedUsers","href":"/api-reference/whatsapp-blocked-users/list-blocked-users"}]},{"group":"WhatsApp 群组","pages":[{"title":"Create a group","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /whatsapp/{businessPhoneNumber}/groups","href":"/api-reference/whatsapp-groups/create-a-group"},{"title":"List groups","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /whatsapp/{businessPhoneNumber}/groups","href":"/api-reference/whatsapp-groups/list-groups"},{"title":"Retrieve a group","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /whatsapp/{businessPhoneNumber}/groups/{groupId}","href":"/api-reference/whatsapp-groups/retrieve-a-group"},{"title":"Delete a group","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml delete /whatsapp/{businessPhoneNumber}/groups/{groupId}","href":"/api-reference/whatsapp-groups/delete-a-group"},{"title":"Retrieve a group invite link","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /whatsapp/{businessPhoneNumber}/groups/{groupId}/inviteLink","href":"/api-reference/whatsapp-groups/retrieve-a-group-invite-link"},{"title":"Reset a group invite link","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /whatsapp/{businessPhoneNumber}/groups/{groupId}/inviteLink/reset","href":"/api-reference/whatsapp-groups/reset-a-group-invite-link"},{"title":"Send a group invite link message","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /whatsapp/{businessPhoneNumber}/groups/inviteLink/messages","href":"/api-reference/whatsapp-groups/send-a-group-invite-link-message"},{"title":"List group join requests","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /whatsapp/{businessPhoneNumber}/groups/{groupId}/joinRequests","href":"/api-reference/whatsapp-groups/list-group-join-requests"},{"title":"Approve group join requests","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /whatsapp/{businessPhoneNumber}/groups/{groupId}/joinRequests/approve","href":"/api-reference/whatsapp-groups/approve-group-join-requests"},{"title":"Reject group join requests","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /whatsapp/{businessPhoneNumber}/groups/{groupId}/joinRequests/reject","href":"/api-reference/whatsapp-groups/reject-group-join-requests"},{"title":"Remove group participants","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /whatsapp/groups/{groupId}/participants/remove","href":"/api-reference/whatsapp-groups/remove-group-participants"},{"title":"Update group settings","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml patch /whatsapp/{businessPhoneNumber}/groups/{groupId}/settings","href":"/api-reference/whatsapp-groups/update-group-settings"}]},{"group":"WhatsApp 语音通话","pages":[{"title":"Connect a call","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /whatsapp/calls/connect","href":"/api-reference/whatsapp-calling/connect-a-call"},{"title":"Pre-accept a call","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /whatsapp/calls/preAccept","href":"/api-reference/whatsapp-calling/pre-accept-a-call"},{"title":"Accept a call","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /whatsapp/calls/accept","href":"/api-reference/whatsapp-calling/accept-a-call"},{"title":"Terminate a call","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /whatsapp/calls/terminate","href":"/api-reference/whatsapp-calling/terminate-a-call"},{"title":"Reject a call","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /whatsapp/calls/reject","href":"/api-reference/whatsapp-calling/reject-a-call"},{"title":"Download call media","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /whatsapp/calls/media/{mediaAssetId}","href":"/api-reference/whatsapp-calling/download-call-media"}]},{"group":"WhatsApp 电话号码","pages":[{"title":"List phone numbers","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /whatsapp/phoneNumbers","href":"/api-reference/whatsapp-phone-numbers/list-phone-numbers"},{"title":"Retrieve a phone number","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /whatsapp/phoneNumbers/{wabaId}/{phoneNumber}","href":"/api-reference/whatsapp-phone-numbers/retrieve-a-phone-number"},{"title":"Retrieve a phone number profile","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /whatsapp/phoneNumbers/{wabaId}/{phoneNumber}/profile","href":"/api-reference/whatsapp-phone-numbers/retrieve-a-phone-number-profile"},{"title":"Update a phone number profile","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml patch /whatsapp/phoneNumbers/{wabaId}/{phoneNumber}/profile","href":"/api-reference/whatsapp-phone-numbers/update-a-phone-number-profile"},{"title":"Update a phone number display name","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml patch /whatsapp/phoneNumbers/{wabaId}/{phoneNumber}/displayName","href":"/api-reference/whatsapp-phone-numbers/update-a-phone-number-display-name"},{"title":"Retrieve commerce settings","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /whatsapp/phoneNumbers/{wabaId}/{phoneNumber}/whatsappCommerceSettings","href":"/api-reference/whatsapp-phone-numbers/retrieve-commerce-settings"},{"title":"Update commerce settings","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml patch /whatsapp/phoneNumbers/{wabaId}/{phoneNumber}/whatsappCommerceSettings","href":"/api-reference/whatsapp-phone-numbers/update-commerce-settings"},{"title":"Register a phone number","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /whatsapp/phoneNumbers/{wabaId}/{phoneNumber}/register","href":"/api-reference/whatsapp-phone-numbers/register-a-phone-number"},{"title":"Retrieve phone number settings","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /whatsapp/phoneNumbers/{wabaId}/{phoneNumber}/settings","href":"/api-reference/whatsapp-phone-numbers/retrieve-phone-number-settings"},{"title":"Save phone number settings","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /whatsapp/phoneNumbers/{wabaId}/{phoneNumber}/settings","href":"/api-reference/whatsapp-phone-numbers/save-phone-number-settings"},{"title":"Retrieve a phone number business username","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /whatsapp/phoneNumbers/{wabaId}/{phoneNumber}/businessUsername","href":"/api-reference/whatsapp-phone-numbers/retrieve-a-phone-number-business-username"},{"title":"Retrieve phone number business username suggestions","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /whatsapp/phoneNumbers/{wabaId}/{phoneNumber}/businessUsername/suggestions","href":"/api-reference/whatsapp-phone-numbers/retrieve-phone-number-business-username-suggestions"},{"title":"Update a phone number business username","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml patch /whatsapp/phoneNumbers/{wabaId}/{phoneNumber}/businessUsername","href":"/api-reference/whatsapp-phone-numbers/update-a-phone-number-business-username"},{"title":"Delete a phone number business username","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml delete /whatsapp/phoneNumbers/{wabaId}/{phoneNumber}/businessUsername","href":"/api-reference/whatsapp-phone-numbers/delete-a-phone-number-business-username"},{"title":"Delete a Meta contact book entry","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml delete /whatsapp/phoneNumbers/{wabaId}/{phoneNumber}/contactBook/{bsuid}","href":"/api-reference/whatsapp-phone-numbers/delete-a-meta-contact-book-entry"}]},{"group":"WhatsApp 模板","pages":[{"title":"Create a template","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /whatsapp/templates","href":"/api-reference/whatsapp-templates/create-a-template"},{"title":"List templates","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /whatsapp/templates","href":"/api-reference/whatsapp-templates/list-templates"},{"title":"Retrieve WhatsApp template analytics","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /whatsapp/templates/analytics","href":"/api-reference/whatsapp-templates/retrieve-whatsapp-template-analytics"},{"title":"Delete templates by name","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml delete /whatsapp/templates/{wabaId}/{name}","href":"/api-reference/whatsapp-templates/delete-templates-by-name"},{"title":"Delete a template","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml delete /whatsapp/templates/{wabaId}/{name}/{language}","href":"/api-reference/whatsapp-templates/delete-a-template"},{"title":"Edit a template","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml patch /whatsapp/templates/{wabaId}/{name}/{language}","href":"/api-reference/whatsapp-templates/edit-a-template"},{"title":"Retrieve a template","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /whatsapp/templates/{wabaId}/{name}/{language}","href":"/api-reference/whatsapp-templates/retrieve-a-template"}]},{"group":"WhatsApp Flows","pages":[{"title":"Create a flow","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /whatsapp/flows","href":"/api-reference/whatsapp-flows/create-a-flow"},{"title":"List flows","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /whatsapp/flows","href":"/api-reference/whatsapp-flows/list-flows"},{"title":"Update flow metadata","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml patch /whatsapp/flows/{flowId}/metadata","href":"/api-reference/whatsapp-flows/update-flow-metadata"},{"title":"Update flow structure","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml patch /whatsapp/flows/{flowId}/assets","href":"/api-reference/whatsapp-flows/update-flow-structure"},{"title":"Delete a flow","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml delete /whatsapp/flows/{flowId}","href":"/api-reference/whatsapp-flows/delete-a-flow"},{"title":"Retrieve a flow","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /whatsapp/flows/{flowId}","href":"/api-reference/whatsapp-flows/retrieve-a-flow"},{"title":"Publish a flow","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /whatsapp/flows/{flowId}/publish","href":"/api-reference/whatsapp-flows/publish-a-flow"},{"title":"Deprecate a flow","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /whatsapp/flows/{flowId}/deprecate","href":"/api-reference/whatsapp-flows/deprecate-a-flow"},{"title":"generate a web preview URL with this flow.","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /whatsapp/flows/{flowId}/preview","href":"/api-reference/whatsapp-flows/generate-a-web-preview-url-with-this-flow"}]},{"group":"余额","pages":[{"title":"Retrieve balance","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /balance","href":"/api-reference/balance/retrieve-balance"}]},{"group":"联系人","pages":[{"title":"Create a contact","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /contact/contacts","href":"/api-reference/contacts/create-a-contact"},{"title":"List contacts","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /contact/contacts","href":"/api-reference/contacts/list-contacts"},{"title":"Retrieve a contact","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /contact/contacts/{id}","href":"/api-reference/contacts/retrieve-a-contact"},{"title":"List contact notes","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /contact/contacts/{contactIdentifier}/notes","href":"/api-reference/contacts/list-contact-notes"},{"title":"Create a contact note","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /contact/contacts/{contactIdentifier}/notes","href":"/api-reference/contacts/create-a-contact-note"},{"title":"Update a contact note","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml patch /contact/notes/{noteId}","href":"/api-reference/contacts/update-a-contact-note"},{"title":"Delete a contact note","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml delete /contact/notes/{noteId}","href":"/api-reference/contacts/delete-a-contact-note"},{"title":"Update a contact","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml patch /contact/contacts/{id}","href":"/api-reference/contacts/update-a-contact"},{"title":"Delete a contact","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml delete /contact/contacts/{id}","href":"/api-reference/contacts/delete-a-contact"},{"title":"List contact attributes","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /contact/contacts/attributes","href":"/api-reference/contacts/list-contact-attributes"}]},{"group":"自定义事件","pages":[{"title":"Create an event definition","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /event/definitions","href":"/api-reference/custom-events/create-an-event-definition"},{"title":"Retrieve an event definition","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /event/definitions/{name}","href":"/api-reference/custom-events/retrieve-an-event-definition"},{"title":"Update an event definition","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml patch /event/definitions/{name}","href":"/api-reference/custom-events/update-an-event-definition"},{"title":"Create an event property definition","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /event/definitions/{name}/properties","href":"/api-reference/custom-events/create-an-event-property-definition"},{"title":"Update an event property definition","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml patch /event/definitions/{name}/properties/{propertyName}","href":"/api-reference/custom-events/update-an-event-property-definition"},{"title":"Delete an event property definition","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml delete /event/definitions/{name}/properties/{propertyName}","href":"/api-reference/custom-events/delete-an-event-property-definition"},{"title":"Send an event","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /event/events","href":"/api-reference/custom-events/send-an-event"}]},{"group":"邮件","pages":[{"title":"Send an email","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /emails","href":"/api-reference/emails/send-an-email"}]},{"group":"短信","pages":[{"title":"Send an SMS","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /sms","href":"/api-reference/sms/send-an-sms"},{"title":"List SMS records","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /sms","href":"/api-reference/sms/list-sms-records"}]},{"group":"退订用户","pages":[{"title":"Create an unsubscriber","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /unsubscribers","href":"/api-reference/unsubscribers/create-an-unsubscriber"},{"title":"List unsubscribers","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /unsubscribers","href":"/api-reference/unsubscribers/list-unsubscribers"},{"title":"List all unsubscribers by customer","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /unsubscribers/{customer}","href":"/api-reference/unsubscribers/list-all-unsubscribers-by-customer"},{"title":"Retrieve an unsubscriber","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /unsubscribers/{customer}/{channel}","href":"/api-reference/unsubscribers/retrieve-an-unsubscriber"},{"title":"Delete an unsubscriber","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml delete /unsubscribers/{customer}/{channel}","href":"/api-reference/unsubscribers/delete-an-unsubscriber"}]},{"group":"验证码","pages":[{"title":"Start a verification","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /verify/verifications","href":"/api-reference/verify/start-a-verification"},{"title":"Check a verification","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /verify/verificationChecks","href":"/api-reference/verify/check-a-verification"}]},{"group":"语音","pages":[{"title":"Send a voice code","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /voices","href":"/api-reference/voices/send-a-voice-code"},{"title":"List voice records","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /voices","href":"/api-reference/voices/list-voice-records"}]},{"group":"Webhook 端点","pages":[{"title":"Create a webhook endpoint","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /webhookEndpoints","href":"/api-reference/webhook-endpoints/create-a-webhook-endpoint"},{"title":"List webhook endpoints","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /webhookEndpoints","href":"/api-reference/webhook-endpoints/list-webhook-endpoints"},{"title":"Retrieve a webhook endpoint","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml get /webhookEndpoints/{id}","href":"/api-reference/webhook-endpoints/retrieve-a-webhook-endpoint"},{"title":"Update a webhook endpoint","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml patch /webhookEndpoints/{id}","href":"/api-reference/webhook-endpoints/update-a-webhook-endpoint"},{"title":"Delete a webhook endpoint","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml delete /webhookEndpoints/{id}","href":"/api-reference/webhook-endpoints/delete-a-webhook-endpoint"},{"title":"Rotate a webhook endpoint secret","deprecated":null,"version":null,"openapi":"/openapi/endpoints/ycloud-api-v2.yaml post /webhookEndpoints/{id}/rotateSecret","href":"/api-reference/webhook-endpoints/rotate-a-webhook-endpoint-secret"}]},{"group":"Meta 商业智能体","pages":[{"title":"Meta Business Agent 概述","href":"/zh/api-reference/meta-business-agents/overview"},{"group":"配置","pages":[{"group":"智能体知识:企业信息","pages":[{"title":"Get Business Info","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json get /metaBusinessAgents/{entityId}/businessInfo","href":"/api-reference/meta-business-agents/get-business-info"},{"title":"Replace Business Info","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json put /metaBusinessAgents/{entityId}/businessInfo","href":"/api-reference/meta-business-agents/replace-business-info"},{"title":"Delete Business Info","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json delete /metaBusinessAgents/{entityId}/businessInfo","href":"/api-reference/meta-business-agents/delete-business-info"}]},{"group":"智能体知识:常见问题","pages":[{"title":"List Faqs","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json get /metaBusinessAgents/{entityId}/faqs","href":"/api-reference/meta-business-agents/list-faqs"},{"title":"Create Faq","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json post /metaBusinessAgents/{entityId}/faqs","href":"/api-reference/meta-business-agents/create-faq"},{"title":"Get Faq","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json get /metaBusinessAgents/{entityId}/faqs/{faqId}","href":"/api-reference/meta-business-agents/get-faq"},{"title":"Update Faq","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json patch /metaBusinessAgents/{entityId}/faqs/{faqId}","href":"/api-reference/meta-business-agents/update-faq"},{"title":"Delete Faq","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json delete /metaBusinessAgents/{entityId}/faqs/{faqId}","href":"/api-reference/meta-business-agents/delete-faq"}]},{"group":"智能体知识:文件","pages":[{"title":"List Files","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json get /metaBusinessAgents/{entityId}/files","href":"/api-reference/meta-business-agents/list-files"},{"title":"Upload File","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json post /metaBusinessAgents/{entityId}/files","href":"/api-reference/meta-business-agents/upload-file"},{"title":"Get File","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json get /metaBusinessAgents/{entityId}/files/{fileId}","href":"/api-reference/meta-business-agents/get-file"},{"title":"Delete File","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json delete /metaBusinessAgents/{entityId}/files/{fileId}","href":"/api-reference/meta-business-agents/delete-file"}]},{"group":"智能体知识:网站","pages":[{"title":"List Websites","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json get /metaBusinessAgents/{entityId}/websites","href":"/api-reference/meta-business-agents/list-websites"},{"title":"Create Website","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json post /metaBusinessAgents/{entityId}/websites","href":"/api-reference/meta-business-agents/create-website"},{"title":"Get Website","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json get /metaBusinessAgents/{entityId}/websites/{websiteId}","href":"/api-reference/meta-business-agents/get-website"},{"title":"Update Website","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json patch /metaBusinessAgents/{entityId}/websites/{websiteId}","href":"/api-reference/meta-business-agents/update-website"},{"title":"Delete Website","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json delete /metaBusinessAgents/{entityId}/websites/{websiteId}","href":"/api-reference/meta-business-agents/delete-website"}]},{"group":"智能体技能","pages":[{"title":"List Skills","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json get /metaBusinessAgents/{entityId}/skills","href":"/api-reference/meta-business-agents/list-skills"},{"title":"Create Skill","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json post /metaBusinessAgents/{entityId}/skills","href":"/api-reference/meta-business-agents/create-skill"},{"title":"Get Skill","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json get /metaBusinessAgents/{entityId}/skills/{skillId}","href":"/api-reference/meta-business-agents/get-skill"},{"title":"Update Skill","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json patch /metaBusinessAgents/{entityId}/skills/{skillId}","href":"/api-reference/meta-business-agents/update-skill"},{"title":"Delete Skill","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json delete /metaBusinessAgents/{entityId}/skills/{skillId}","href":"/api-reference/meta-business-agents/delete-skill"}]},{"group":"界面技能","pages":[{"title":"List UI Skills","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json get /metaBusinessAgents/{entityId}/uiSkills","href":"/api-reference/meta-business-agents/list-ui-skills"},{"title":"Create UI Skill","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json post /metaBusinessAgents/{entityId}/uiSkills","href":"/api-reference/meta-business-agents/create-ui-skill"},{"title":"Get UI Skill","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json get /metaBusinessAgents/{entityId}/uiSkills/{skillId}","href":"/api-reference/meta-business-agents/get-ui-skill"},{"title":"Update UI Skill","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json patch /metaBusinessAgents/{entityId}/uiSkills/{skillId}","href":"/api-reference/meta-business-agents/update-ui-skill"},{"title":"Delete UI Skill","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json delete /metaBusinessAgents/{entityId}/uiSkills/{skillId}","href":"/api-reference/meta-business-agents/delete-ui-skill"}]},{"group":"连接器工具","pages":[{"title":"List Connector Tools","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json get /metaBusinessAgents/{entityId}/connectors/{connectorId}/tools","href":"/api-reference/meta-business-agents/list-connector-tools"},{"title":"Create Connector Tool","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json post /metaBusinessAgents/{entityId}/connectors/{connectorId}/tools","href":"/api-reference/meta-business-agents/create-connector-tool"},{"title":"Get Connector Tool","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json get /metaBusinessAgents/{entityId}/connectors/{connectorId}/tools/{toolId}","href":"/api-reference/meta-business-agents/get-connector-tool"},{"title":"Update Connector Tool","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json patch /metaBusinessAgents/{entityId}/connectors/{connectorId}/tools/{toolId}","href":"/api-reference/meta-business-agents/update-connector-tool"},{"title":"Delete Connector Tool","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json delete /metaBusinessAgents/{entityId}/connectors/{connectorId}/tools/{toolId}","href":"/api-reference/meta-business-agents/delete-connector-tool"},{"title":"Run Connector Tool","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json post /metaBusinessAgents/{entityId}/connectors/{connectorId}/tools/{toolId}/runs","href":"/api-reference/meta-business-agents/run-connector-tool"}]},{"group":"连接器","pages":[{"title":"List Connectors","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json get /metaBusinessAgents/{entityId}/connectors","href":"/api-reference/meta-business-agents/list-connectors"},{"title":"Create Connector","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json post /metaBusinessAgents/{entityId}/connectors","href":"/api-reference/meta-business-agents/create-connector"},{"title":"Get Connector","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json get /metaBusinessAgents/{entityId}/connectors/{connectorId}","href":"/api-reference/meta-business-agents/get-connector"},{"title":"Update Connector","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json patch /metaBusinessAgents/{entityId}/connectors/{connectorId}","href":"/api-reference/meta-business-agents/update-connector"},{"title":"Refresh MCP Connector Tools","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json post /metaBusinessAgents/{entityId}/connectors/{connectorId}/refreshMCPTools","href":"/api-reference/meta-business-agents/refresh-mcp-connector-tools"},{"title":"Delete Connector","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json delete /metaBusinessAgents/{entityId}/connectors/{connectorId}","href":"/api-reference/meta-business-agents/delete-connector"},{"title":"Upsert Connector Certificate","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json put /metaBusinessAgents/{entityId}/connectors/{connectorId}/credentials/certificate","href":"/api-reference/meta-business-agents/upsert-connector-certificate"},{"title":"Upsert Connector Api Key","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json put /metaBusinessAgents/{entityId}/connectors/{connectorId}/credentials/apiKey","href":"/api-reference/meta-business-agents/upsert-connector-api-key"},{"title":"Upsert Connector O Auth","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json put /metaBusinessAgents/{entityId}/connectors/{connectorId}/credentials/oauth","href":"/api-reference/meta-business-agents/upsert-connector-o-auth"},{"title":"List Connector Logs","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json get /metaBusinessAgents/{entityId}/connectors/{connectorId}/logs","href":"/api-reference/meta-business-agents/list-connector-logs"}]}]},{"group":"删除智能体","pages":[{"title":"Delete Agent","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json delete /metaBusinessAgents/{entityId}","href":"/api-reference/meta-business-agents/delete-agent"}]},{"group":"接入","pages":[{"group":"智能体白名单","pages":[{"title":"List Allowlist","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json get /metaBusinessAgents/{entityId}/allowListEntries","href":"/api-reference/meta-business-agents/list-allowlist"},{"title":"Create Allowlist Entry","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json post /metaBusinessAgents/{entityId}/allowListEntries","href":"/api-reference/meta-business-agents/create-allowlist-entry"},{"title":"Delete Allowlist Entry","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json delete /metaBusinessAgents/{entityId}/allowListEntries/{entryId}","href":"/api-reference/meta-business-agents/delete-allowlist-entry"}]},{"group":"智能体资格","pages":[{"title":"Check Eligibility","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json get /metaBusinessAgents/{entityId}/eligibility","href":"/api-reference/meta-business-agents/check-eligibility"}]},{"group":"智能体接入","pages":[{"title":"Onboard Agent","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json post /metaBusinessAgents/{entityId}/onboarding","href":"/api-reference/meta-business-agents/onboard-agent"}]},{"group":"智能体设置","pages":[{"title":"Get Settings","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json get /metaBusinessAgents/{entityId}/settings","href":"/api-reference/meta-business-agents/get-settings"},{"title":"Replace Settings","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json put /metaBusinessAgents/{entityId}/settings","href":"/api-reference/meta-business-agents/replace-settings"}]},{"group":"智能体预算","pages":[{"title":"Get Budgets","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json get /metaBusinessAgents/{entityId}/budgets","href":"/api-reference/meta-business-agents/get-budgets"},{"title":"Replace Budgets","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json put /metaBusinessAgents/{entityId}/budgets","href":"/api-reference/meta-business-agents/replace-budgets"}]}]},{"group":"运行","pages":[{"group":"智能体评估","pages":[{"title":"List Eval Cases","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json get /metaBusinessAgents/{entityId}/evalCases","href":"/api-reference/meta-business-agents/list-eval-cases"},{"title":"Get Eval Summary","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json get /metaBusinessAgents/{entityId}/evalSummaries","href":"/api-reference/meta-business-agents/get-eval-summary"},{"title":"Get Eval Details","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json get /metaBusinessAgents/{entityId}/evals","href":"/api-reference/meta-business-agents/get-eval-details"},{"title":"Get Eval Run Status","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json get /metaBusinessAgents/{entityId}/evalRuns/{jobId}","href":"/api-reference/meta-business-agents/get-eval-run-status"},{"title":"Submit Eval Run","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json post /metaBusinessAgents/{entityId}/evalRuns","href":"/api-reference/meta-business-agents/submit-eval-run"}]},{"group":"智能体事件","pages":[{"title":"Submit Agent Event","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json post /metaBusinessAgents/{entityId}/events","href":"/api-reference/meta-business-agents/submit-agent-event"},{"title":"Get Agent Event Status","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json get /metaBusinessAgents/{entityId}/events/{agentEventId}","href":"/api-reference/meta-business-agents/get-agent-event-status"}]},{"group":"智能体测试","pages":[{"title":"Test Agent","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json post /metaBusinessAgents/{entityId}/tests","href":"/api-reference/meta-business-agents/test-agent"}]},{"group":"对话轮次","pages":[{"title":"Get Conversation Turns","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json get /metaBusinessAgents/{entityId}/conversationTurns","href":"/api-reference/meta-business-agents/get-conversation-turns"}]},{"group":"会话控制(Cloud API)","pages":[{"title":"Control Thread","description":"Passes, releases, or takes control of a consumer thread. YCloud resolves the tenant and Meta credential.","deprecated":null,"version":null,"openapi":"/openapi/endpoints/meta-business-agent-public.openapi.json post /metaBusinessAgents/{entityId}/threadControl","href":"/api-reference/meta-business-agents/control-thread"}]}]}]}]},{"group":"Webhooks","pages":[{"title":"测试 Webhook","sidebarTitle":"测试 Webhook","openapi":"openapi/webhooks/testing-webhooks.yaml POST /webhooks/ycloud","playground":"interactive","href":"/zh/api-reference/webhooks/test-webhooks"}]}]},{"tab":"合作伙伴中心","icon":"handshake","pages":[{"title":"合作伙伴中心","href":"/zh/partner-center/overview"}]}]},{"language":"es","pages":[{"title":"es","href":"/es/api-reference/webhooks/test-webhooks"}]},{"language":"pt","pages":[{"title":"pt","href":"/pt/api-reference/webhooks/test-webhooks"}]},{"language":"ru","pages":[{"title":"ru","href":"/ru/api-reference/webhooks/test-webhooks"}]}]},"title":"测试 Webhook - YCloud Docs","buildId":"dpl_2xiSHD9XEvLsPGPcfoMtkLTB3dy9","deploymentId":"dpl_2xiSHD9XEvLsPGPcfoMtkLTB3dy9","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-DmVyH30O.js","utils-BHQqGGOd.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-CD-E4BIt.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-Bp5Lq9Ds.js","snippetPresets-C4xAVCFP.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-CgXVLxUC.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-BF8I5oUf.js","shallow-Byd0lWnC.js","getApiPlaygroundDisplay-BGOZG1OK.js","CodeSnippet-CpvQL0CY.js","CodeSnippets-B8wkBKXa.js","Page-CBCH2P7b.js","getPastedJson-Ry3scI3Y.js","icon-D7a9HcdD.js","MethodPill-CJ8pmHhz.js","DuplicateIcon-rh1HJF0t.js","createIcon-DvGznqYs.js","DynamicMarkdown-Cc6AuSHS.js","SectionHeading-B4A0S-ep.js","axios-vUo_bRtp.js","Markdown-Cc16CX65.js","clsx-Cs6nMGht.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-zbf22OZA.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-C_fs-y5n.js"]}