{"componentChunkName":"component---src-templates-docs-js","path":"/whatsapp/messaging/interactive","result":{"data":{"site":{"siteMetadata":{"title":"broadcaster","docsLocation":"https://github.com","docsLocationType":"github","editable":false}},"mdx":{"fields":{"id":"8e5971c1-efc5-53e5-bb5c-600fa1ccf15d","title":"Interactive messages","slug":"/whatsapp/messaging/interactive"},"body":"function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsx mdx */\nvar _frontmatter = {\n  \"title\": \"Interactive messages\",\n  \"order\": 4\n};\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, [\"components\"]);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(\"p\", null, \"Interactive messages give users buttons, lists and other controls so they can respond to a business more easily.\"), mdx(\"blockquote\", null, mdx(\"p\", {\n    parentName: \"blockquote\"\n  }, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Integration summary\")), mdx(\"ul\", {\n    parentName: \"blockquote\"\n  }, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Endpoint:\"), \" \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"POST https://{{url}}/whatsapp-bsp-api-endpoint-ws/services/v1/messaging\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Token:\"), \" messaging token, in the \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"Authorization: Bearer {{wa-msg-api-token}}\"), \" header (\", mdx(\"a\", {\n    href: \"/whatsapp/authentication_token\"\n  }, \"how to generate it\"), \")\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Common fields:\"), \" \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"from\"), \", \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"to\"), \" (phone number or BSUID) and \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"type\"), \" (\", mdx(\"a\", {\n    href: \"/whatsapp/messaging/http#h-commonfields\"\n  }, \"details\"), \")\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Response:\"), \" the same for every message (\", mdx(\"a\", {\n    href: \"/whatsapp/messaging/http#h-response\"\n  }, \"see response\"), \")\"))), mdx(\"p\", null, \"Interactive messages let you:\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Help your users easily find and select what they're looking for from a business on WhatsApp.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Offer a simpler, more consistent format for people to find and choose what they want from a business.\")), mdx(\"p\", null, \"The available interactive messages are:\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    href: \"/whatsapp/messaging/interactive/flows\"\n  }, \"Flows\"), \": Messages that open a WhatsApp Flow. To create and manage Flows, see the \", mdx(\"a\", {\n    href: \"/whatsapp/administration/flows\"\n  }, \"Flows\"), \" section.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    href: \"/whatsapp/messaging/interactive/lists\"\n  }, \"List messages\"), \": Messages that include a menu of up to 10 options. This message type gives users a simpler, more consistent way to make a selection when interacting with a business.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    href: \"/whatsapp/messaging/interactive/reply_buttons\"\n  }, \"Reply buttons\"), \": Messages that include up to 3 options, each shown as a button. This message type gives users a faster way to pick from a menu when interacting with a business. They can also include up to 2 buttons that open a URL.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    href: \"/whatsapp/messaging/interactive/cta_url\"\n  }, \"Call to action (URL)\"), \": Messages with a button that opens a URL. They let you send users to a website without showing the full URL in the message text.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    href: \"/whatsapp/messaging/interactive/request_contact_info\"\n  }, \"Contact information request\"), \": Messages with a button that lets users share their contact information with the business.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    href: \"/whatsapp/messaging/interactive/location_request\"\n  }, \"Location request\"), \": Messages with a button that asks the user to share their location.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"a\", {\n    href: \"/whatsapp/messaging/interactive/voice_call\"\n  }, \"Call button (voice call)\"), \": Messages with a button that lets the user start a WhatsApp call to the business.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Multi-product messages: See the \", mdx(\"a\", {\n    href: \"/whatsapp/c-commerce/messaging\"\n  }, \"C-Commerce\"), \" section.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Single-product messages: See the \", mdx(\"a\", {\n    href: \"/whatsapp/c-commerce/messaging\"\n  }, \"C-Commerce\"), \" section.\")), mdx(\"p\", null, \"You can combine interactive messages within the same flow.\"), mdx(\"p\", null, \"All are sent with \", mdx(\"a\", {\n    href: \"/whatsapp/messaging/http\"\n  }, \"POST /v1/messaging\"), \"; headers, common fields and the response are in \", mdx(\"a\", {\n    href: \"/whatsapp/messaging/http\"\n  }, \"HTTP connection\"), \".\"), mdx(\"section\", {\n    \"id\": \"generalstructure\"\n  }, mdx(\"h2\", {\n    parentName: \"section\"\n  }, \"General structure\"), mdx(\"p\", {\n    parentName: \"section\"\n  }, \"All interactive messages use the \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"type\"), \" field with the value \\\"interactive\\\" and one of the following objects:\"), mdx(\"table\", {\n    parentName: \"section\"\n  }, mdx(\"thead\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"thead\"\n  }, mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Name\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Description\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Type\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Requirements\"))), mdx(\"tbody\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"a\", {\n    href: \"/whatsapp/messaging/interactive/lists#h-listmessagesobject\"\n  }, \"listMessages\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Object with the list message. Send only one: listMessages, replyButtons or flow (or another interactive message type).\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Object\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Conditional\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"a\", {\n    href: \"/whatsapp/messaging/interactive/reply_buttons#h-replybuttonsobject\"\n  }, \"replyButtons\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Object with the reply buttons. Send only one: listMessages, replyButtons or flow (or another interactive message type).\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Object\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Conditional\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"a\", {\n    href: \"/whatsapp/messaging/interactive/flows#h-flowobject\"\n  }, \"flow\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Object with the WhatsApp Flow. Send only one: listMessages, replyButtons or flow (or another interactive message type).\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Object\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Conditional\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"a\", {\n    href: \"/whatsapp/messaging/interactive/cta_url#h-calltoactionurlobject\"\n  }, \"call_to_action_url\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Object for sending a message with a button that opens a URL.\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Object\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Required if you're sending a call to action (URL) message.\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"a\", {\n    href: \"/whatsapp/messaging/interactive/request_contact_info#h-requestcontactinfoobject\"\n  }, \"request_contact_info\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Object for asking the user to share their contact information.\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Object\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Required if you're sending a contact information request.\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"a\", {\n    href: \"/whatsapp/c-commerce/messaging\"\n  }, \"singleProductMessage\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Single product message.\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Object\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Conditional\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"a\", {\n    href: \"/whatsapp/c-commerce/messaging\"\n  }, \"multiProductMessage\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Multi-product message.\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Object\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Conditional\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"a\", {\n    href: \"/whatsapp/messaging/interactive/location_request#h-sendlocationrequestobject\"\n  }, \"send_location_request\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Location request from the user.\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Object\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Conditional\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"call_permission_request\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Call permission request. See \", mdx(\"a\", {\n    href: \"/whatsapp/calling_api/call_permissions\"\n  }, \"Call permissions\"), \".\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Object\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Conditional\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"a\", {\n    href: \"/whatsapp/messaging/interactive/voice_call#h-voicecallobject\"\n  }, \"voice_call\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Call button (voice call) message.\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Object\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Conditional\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"order_details\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Order details message (Payments Brazil).\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Object\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Conditional\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"order_status\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Order status message (Payments Brazil).\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Object\"), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Conditional\"))))));\n}\n;\nMDXContent.isMDXComponent = true;","tableOfContents":{"items":[{"url":"#general-structure","title":"General structure"}]},"timeToRead":1,"parent":{"__typename":"File","relativePath":"whatsapp/messaging/interactive.md","fields":{"gitLogLatestAuthorName":"Irais Aguirre","gitLogLatestAuthorEmail":"irais.aguirre@conceptomovil.com","gitLogLatestDate":"6 hours ago"}},"frontmatter":{"metaTitle":null,"showMetadata":null,"editable":null,"showPreviousNext":null,"showToc":null}},"gitBranch":{"name":"20211019-2FACTOR_AUTH"},"gitCommit":{"hash":"9713e1925aeb8cad930f91b6bf05d0b5937b2bb5","date":"2026-11-13 06:39"}},"pageContext":{"id":"8e5971c1-efc5-53e5-bb5c-600fa1ccf15d"}},"staticQueryHashes":["12478684","12478684","2882937274","2882937274","353167761","353167761"]}