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

# Send WhatsApp template message

> Send a single or multiple template messages to one or more recipients. Template messages can be sent and delivered at anytime. Each template needs to be registered and pre-approved by WhatsApp. <br/> The API response will not contain the final delivery status, use [Delivery Reports](#channels/whatsapp/receive-whatsapp-delivery-reports) instead.

**Required scope:** Enable one of: `message:send`, `whatsapp:message:send`, `whatsapp:manage`.



## OpenAPI

````yaml /openapi/phonovation-whatsapp.json post /whatsapp/1/message/template
openapi: 3.1.0
info:
  title: Phonovation Messaging APIs
  description: >-
    OpenAPI specification for Phonovation messaging, customer engagement, and
    platform APIs.
  contact:
    name: Phonovation support
    email: support@phonovation.com
  version: 3.250.0
  x-generatedAt: '2026-10-15T11:28:56.135064395Z'
servers:
  - url: https://api.messaging.phonovation.com
    description: Phonovation Messaging API production server
security: []
tags:
  - name: customer-engagement
    description: >
      Complete solutions that will help you drive better outcomes for your
      customers and business across the entire customer journey.
    x-type: category
    x-displayName: Customer Engagement
  - name: people
    description: >
      Build rich profiles for each person to create audience segments for more
      precise targeting. Manage duplicates and import your data over API.


      Events reflect actions that end users take on your website or in your
      mobile application.


      Events API is a robust way to send those events to Phonovation. Event can
      be sent only to an existing person in People module and an event
      definition should be created beforehand to describe contents of the event.


      Other events tracking options:

      * [ JavaScript SDK ](https://github.com/phonovation/people-web-sdk)

      * [iOS
      SDK](https://github.com/phonovation/mobile-messaging-sdk-ios/wiki/Events)

      * [Android
      SDK](https://github.com/phonovation/mobile-messaging-sdk-android/wiki/Events)
    x-type: product
    x-displayName: People
  - name: person-profile
    description: ''
    x-type: section
    x-displayName: Person profile
  - name: company-profile
    description: ''
    x-type: section
    x-displayName: Company profile
  - name: tags
    description: ''
    x-type: section
    x-displayName: Tags
  - name: custom-attributes
    description: ''
    x-type: section
    x-displayName: Custom attributes
  - name: custom-attributes-lists
    description: ''
    x-type: section
    x-displayName: 'Custom attributes: Lists'
  - name: contact-information:-push
    description: ''
    x-type: section
    x-displayName: 'Contact Information: Push'
  - name: events
    description: ''
    x-type: section
    x-displayName: Events
  - name: segments
    description: ''
    x-type: section
    x-displayName: Segments
  - name: moments
    description: >
      Use Moments to set up and manage automated messaging campaigns with your
      customers by building conversation workflows.
    x-type: product
    x-displayName: Moments
  - name: flow
    description: >
      [Flow](https://www.phonovation.com/docs/moments/manage-flow) is the
      Phonovation communication builder that helps you create and manage
      messaging campaigns. The Flows API allows you to add or remove people from
      communication programmatically for flows with an [active
      status](https://www.phonovation.com/docs/moments/manage-flow#launch-create).


      Use the Add Participants to flow endpoint to a person or batches of
      persons (between 1-1000 persons). The method works asynchronously to queue
      and process participants at a rate of 10 requests per second. For
      reporting of operation results, use the notifyUrl  field to provide a URL
      of your callback server that will receive a status report or use the Get a
      report on participants added to Flow endpoint.
    x-type: module
    x-displayName: Flow
  - name: conversations
    description: >-
      Conversations is a solution that allows Enterprises to engage in
      conversations with their customers over multiple channels. The solution is
      available either as a web-based cloud platform web interface or over HTTP
      API for 2-way messaging over SMS, WhatsApp, Viber, and Facebook messenger.
      It supports conversation threading, conversation management including
      queues and routing, agent assignment, resolution management and
      conversation history overview.
    x-type: product
    x-displayName: Conversations
  - name: conversation-management
    description: ''
    x-type: section
    x-displayName: Conversation management
  - name: conversation-tags
    description: ''
    x-type: section
    x-displayName: Conversation tags
  - name: conversation-messages
    description: ''
    x-type: section
    x-displayName: Conversation messages
  - name: conversation-events
    description: ''
    x-type: section
    x-displayName: Conversation events
  - name: conversation-notes
    description: ''
    x-type: section
    x-displayName: Conversation notes
  - name: conversation-agents
    description: ''
    x-type: section
    x-displayName: Conversation agents
  - name: conversation-queues
    description: ''
    x-type: section
    x-displayName: Conversation queues
  - name: conversation-routing
    description: ''
    x-type: section
    x-displayName: Conversation routing
  - name: bots
    description: ''
    x-type: section
    x-displayName: Bots
  - name: metadata
    description: ''
    x-type: section
    x-displayName: Metadata
  - name: templates
    description: ''
    x-type: section
    x-displayName: Templates
  - name: conversation-forms
    description: ''
    x-type: section
    x-displayName: Conversation forms
  - name: account-configuration
    description: ''
    x-type: section
    x-displayName: Account Configuration
  - name: agent-configuration-calls
    description: ''
    x-type: section
    x-displayName: Agent Configuration (Calls)
  - name: outbound-call-conversation-calls
    description: ''
    x-type: section
    x-displayName: Outbound Call Conversation (Calls)
  - name: waiting-strategies-calls
    description: ''
    x-type: section
    x-displayName: Waiting Strategies (Calls)
  - name: recording-configuration-calls
    description: ''
    x-type: section
    x-displayName: Recording Configuration (Calls)
  - name: recording-metadata-calls
    description: ''
    x-type: section
    x-displayName: Recording metadata (Calls)
  - name: recording-calls
    description: ''
    x-type: section
    x-displayName: Recording (Calls)
  - name: wrap-up-configuration-calls
    description: ''
    x-type: section
    x-displayName: Wrap Up Configuration (Calls)
  - name: wrap-up-time-calls
    description: ''
    x-type: section
    x-displayName: Wrap Up Time (Calls)
  - name: transfers-calls
    description: ''
    x-type: section
    x-displayName: Transfers (Calls)
  - name: transfer-to-external-number-configuration-calls
    description: ''
    x-type: section
    x-displayName: Transfer to External Number Configuration (Calls)
  - name: transfer-strategy-calls
    description: ''
    x-type: section
    x-displayName: Transfer Strategy (Calls)
  - name: call-hold-calls
    description: ''
    x-type: section
    x-displayName: Call Hold (Calls)
  - name: hold-configuration-calls
    description: ''
    x-type: section
    x-displayName: Hold Configuration (Calls)
  - name: call-timeout-calls
    description: ''
    x-type: section
    x-displayName: Call Timeout (Calls)
  - name: working-hours
    description: ''
    x-type: section
    x-displayName: Working Hours
  - name: tts-options-calls
    description: ''
    x-type: section
    x-displayName: TTS options (Calls)
  - name: away-audio-messages
    description: ''
    x-type: section
    x-displayName: Away Audio Messages
  - name: web-forms
    description: ''
    x-type: section
    x-displayName: Web Forms
  - name: answers
    description: >
      Answers is the Phonovation fully-encompassed chatbot building platform
      that enables you to build, test, and deploy highly customized chatbots of
      different types. Multiple channels are supported on Answers like WhatsApp,
      Facebook Messenger, Live Chat, Apple Business Chat, Viber, Google Business
      Messaging and other. Communication with Bot is achieved through existing
      Conversations solution infrastructure which enables integration and
      switching between communicating with bot and a live agent. Processing can
      start by receiving MO message or by receiving a trigger event. Users can
      manage bots (create, update, delete, start and stop bots) through a web
      interface. For more details, visit the [Answers
      documentation](https://www.phonovation.com/docs/answers).


      Answers API is in Early access stage.
    x-type: product
    x-displayName: Answers
  - name: answers-testing-start-test
    description: ''
    x-type: section
    x-displayName: Start Answers test
  - name: answers-testing-stop-test
    description: ''
    x-type: section
    x-displayName: Stop Answers test
  - name: answers-testing-send-message
    description: ''
    x-type: section
    x-displayName: Send inbound message to test
  - name: common-assets
    description: >
      Reuse assets created on Phonovation SaaS products in order to recreate
      configuration more easily on a single or across multiple accounts. Export
      or share Moments flows, Answers chatbots or other SaaS assets from your
      account and import it on another one.  


      This feature is in Early access stage.
    x-type: product
    x-displayName: Common Assets
  - name: saas-resource-export
    description: ''
    x-type: section
    x-displayName: Export resource
  - name: saas-resource-import
    description: ''
    x-type: section
    x-displayName: Import resource
  - name: saas-resource-share
    description: ''
    x-type: section
    x-displayName: Share resource
  - name: saas-status-request
    description: ''
    x-type: section
    x-displayName: Get SaaS request status
  - name: knowledge-base
    description: >-
      Knowledge Base is a centralized content management system for creating,
      organizing, and retrieving articles, attachments, and structured content.
      Content is organized into categories, folders, and a hierarchical content
      tree. Articles support draft and published workflow statuses, tagging,
      commenting, and file attachments.
    x-type: product
    x-displayName: Knowledge Base
  - name: knowledge-base-search
    description: ''
    x-type: section
    x-displayName: Search
  - name: knowledge-base-articles
    description: ''
    x-type: section
    x-displayName: Articles
  - name: knowledge-base-categories
    description: ''
    x-type: section
    x-displayName: Categories
  - name: knowledge-base-folders
    description: ''
    x-type: section
    x-displayName: Folders
  - name: knowledge-base-content-tree
    description: ''
    x-type: section
    x-displayName: Content Tree
  - name: knowledge-base-tags
    description: ''
    x-type: section
    x-displayName: Tags
  - name: knowledge-base-attachments
    description: ''
    x-type: section
    x-displayName: Attachments
  - name: ai-hub
    description: >
      AI-powered tools and services to help you create smarter and more
      personalized customer experiences.
    x-type: category
    x-displayName: AI Hub
  - name: ai-assistants
    description: >
      Phonovation AI assistant is a retrieval-augmented generation (RAG)
      solution that performs tasks based on documents and

      instructions you specify. This means the AI draws answers directly from
      your documents, resulting in more accurate

      and relevant responses. For more information on use cases and how to build
      AI assistants, visit our

      [AI Assistant](https://www.phonovation.com/docs/ai-hub/ai-assistant)
      product documentation.


      With AI Assistants API, you can:

      * Query your existing AI assistants created via [Phonovation
      Portal](https://www.phonovation.com/docs/ai-hub/ai-assistant/create-ai-assistant)

      * Retrieve context the AI assistant uses to answer your queries
    x-type: product
    x-displayName: AI Assistants
  - name: channels
    description: >
      Create a perfect customer experience by using the channels your customer
      already use and love.
    x-type: category
    x-displayName: Channels
  - name: sms
    description: >
      SMS (Short Message Service) is the most extensive messaging service
      available in terms of reach and coverage. A SMS can be sent to and from
      any mobile device in the world and does not necessarily require a data
      connection.


      Phonovation SMS API allows you to send and receive text messages (SMS),
      fetch or receive delivery reports on your endpoint in real time, and see
      message logs. You can send messages in different languages, schedule your
      messages, define delivery time window, and much more.


      To utilize SMS in combination with other channels, check out [Messages
      API](https://www.phonovation.com/docs/api/platform/messages-api).
    x-type: product
    x-displayName: SMS
  - name: outbound-sms
    description: >
      When you send an SMS to a phone number belonging to an end user's device
      you are sending an Outbound SMS. Historically, this was and still is
      referred to as a Mobile Terminated (MT) SMS, though nowadays an SMS is not
      always sent to a mobile device. In an Outbound SMS you can set the From or
      Sender field with whatever you have registered or purchased with
      Phonovation, either a Long Number, Short Code, or text based Sender.
    x-type: module
    x-displayName: Outbound SMS
  - name: send-message
    description: ''
    x-type: section
    x-displayName: Send a message
  - name: manage-scheduled-sms-messages
    description: ''
    x-type: section
    x-displayName: Manage Scheduled SMS Messages
  - name: confirm-conversion
    description: ''
    x-type: section
    x-displayName: Confirm conversion
  - name: inbound-sms
    description: >
      When an end user sends an SMS from their device to a Phone Number or Short
      Code they have sent an Inbound SMS. The Inbound SMS is routed to the
      Phonovation Platform and Phonovation in turn routes the SMS to its
      Customer who has purchased that Phone Number or Short Code. Inbound SMS,
      for historical reasons, are referred to as Mobile Originated (MO) SMS.
    x-type: module
    x-displayName: Inbound SMS
  - name: logs-and-status-reports
    description: >
      Status Reports tell you what happened to the SMS you sent, whether it was
      successfully delivered or failed to be delivered.

      They also provide timestamps, network information if available, and on SMS
      delivery failure, a status code indicating the reason. 

      Status Reports can be pushed in real-time to a Customer's webhook or can
      be retrieved by an API call. 

      Logs provide similar information to Status Reports but are available to
      query for 48hrs.
    x-type: module
    x-displayName: Logs and Status Reports
  - name: whatsapp
    description: >
      With 2 billion users, WhatsApp is the most used application worldwide. It
      enables you to reach more customers, sharing important and timely
      notifications, as well as provide real-time customer support. Phonovation
      is an official WhatsApp Business solution provider. Send and manage
      WhatsApp messages over Phonovation's WhatsApp API.


      To utilize WhatsApp in combination with other channels, check out
      [Messages
      API](https://www.phonovation.com/docs/api/platform/messages-api).


      [Learn more about WhatsApp channel and use
      cases](https://www.phonovation.com/docs/whatsapp).
    x-type: product
    x-displayName: WhatsApp
  - name: whatsapp-outbound-messages
    description: >
      When you send a WhatsApp message to a phone number belonging to an end
      user's device you are sending an outbound WhatsApp message. 

      There are several types of WhatsApp messages:
        - Template message – use a pre-defined template to send text, images, videos, share location, documents, attach buttons, and configure SMS failover.
        - Free-form text or media – use it only when contacted by the end user within a certain timeframe to send text, images, audio, video, stickers, share location, or contacts.
        - Interactive messages – send a message that your end user can interact with, such as interactive buttons, lists, or product messages.
    x-type: module
    x-displayName: Outbound messages
  - name: whatsapp-template-message
    description: ''
    x-type: section
    x-displayName: Template Message
  - name: whatsapp-text-and-media-messages
    description: ''
    x-type: section
    x-displayName: Text and media messages
  - name: send-whatsapp-interactive-messages
    description: ''
    x-type: section
    x-displayName: Interactive messages
  - name: whatsapp-events
    description: ''
    x-type: section
    x-displayName: Events
  - name: whatsapp-inbound-messages
    description: >
      When the end user sends a WhatsApp from their device to a phone number,
      they have sent an inbound WhatsApp message. 

      The inbound message is routed to the Phonovation Platform and Phonovation
      in turn routes the message to its customer who has registered the WhatsApp
      sender.

      Typical supporting features you’d use with inbound messages are:
        - Marking messages as read to communicate to the end user that you have read their message.
        - Downloading media and its metadata sent over by the end user.
    x-type: module
    x-displayName: Inbound messages
  - name: whatsapp-receive-inbound-message
    description: ''
    x-type: section
    x-displayName: Receive inbound message
  - name: whatsapp-get-inbound-media
    description: ''
    x-type: section
    x-displayName: Get inbound media
  - name: whatsapp-mark-message-as-read
    description: ''
    x-type: section
    x-displayName: Mark message as read
  - name: whatsapp-message-status-reports
    description: >
      Status Reports tell you what happened to the WhatsApp message you sent,
      whether it was successfully delivered or failed to be delivered, whether
      it’s been seen. 

      Status Reports can be pushed in real time to a customer's webhook or can
      be retrieved by an API call. 

      Logs provide similar information to Status Reports but are only available
      to query for 48hrs.

      There are a few reports you can set up for your WhatsApp messaging:
        - Delivery Reports - In case of a failure, you’ll receive a timestamp with a delivery failure message and a status code indicating the reason behind it.
        - Seen Reports – In case the message has been delivered successfully to the end user, this report will additionally inform you whether the message has been seen.
        - Payments - It provides all updates to your payment transaction in real time. It's also possible to fetch current state of the payment transaction in any time.
    x-type: module
    x-displayName: Message Status Reports
  - name: whatsapp-status-reports
    description: ''
    x-type: section
    x-displayName: Status Reports
  - name: whatsapp-payments
    description: ''
    x-type: section
    x-displayName: Payments
  - name: whatsapp-marketing-update
    description: ''
    x-type: section
    x-displayName: Marketing Update
  - name: whatsapp-service-management
    description: >
      As opposed to free-form messages, template messages can be sent and
      delivered at any time. 

      Here, you can manage your templates, from template registration,
      retrieving template statuses, to deleting existing templates.

      With each WhatsApp message, you can send various types of media. Here, you
      can manage your media and configure additional feature enhancing their
      functionality.

      Moreover you can fetch quality and business info of your senders.
    x-type: module
    x-displayName: Service Management
  - name: whatsapp-template-management
    description: ''
    x-type: section
    x-displayName: Template Management
  - name: whatsapp-flow-management
    description: ''
    x-type: section
    x-displayName: Flow Management
  - name: whatsapp-media-management
    description: ''
    x-type: section
    x-displayName: Media Management
  - name: whatsapp-sender-management
    description: ''
    x-type: section
    x-displayName: Sender Management
  - name: whatsapp-bulk-sender-registration
    description: ''
    x-type: section
    x-displayName: Bulk Sender Registration
  - name: whatsapp-identity-management
    description: >
      Set up identity change, an add-on available for senders hosted by
      Phonovation. This is supported for interactive buttons, interactive lists,
      or an interactive product message. 

      Identity change allows you to increase your security by preventing
      messages from being sent to unverified end users. 

      Once enabled for a sender, you would receive notifications when an end
      user's WhatsApp account (MSISDN) has potentially been transferred to a
      different user. 

      When a potential identity change has been detected, the outbound traffic
      towards that end user is blocked until you verify the user outside the
      channel and acknowledge the change.

      Contact your Account Executive for more information.
    x-type: module
    x-displayName: Identity Management
  - name: whatsapp-ad-conversions
    description: >
      The Conversions API for Business Messaging enables advertisers to
      consolidate web, app, physical store, and business messaging events into a
      single endpoint for Meta. With Phonovation, you can submit Purchase or
      LeadSubmitted conversion events for WhatsApp.
    x-type: module
    x-displayName: Ad Conversions
  - name: platform
    description: |
      Modular tools to scale and automate your business.
    x-type: category
    x-displayName: Platform
  - name: subscriptions-api
    description: >
      Subscriptions are a way to manage notifications sent to your webhooks by
      Phonovation.

      It is a useful feature if you want to narrow down the list of events to be
      notified about or specify different webhooks for different use cases.

      It will also allow you to set up authentication settings for your
      endpoint.


      If you want to use mutual TLS for the webhook that receives notification
      events from Phonovation, you can upload and manage a TLS certificate that
      Phonovation will use when connecting to your server. The certificate
      allows your server to verify that the request is really coming from
      Phonovation. For details, see [Create and Manage
      Certificates](https://www.phonovation.com/docs/cpaas-x/subscriptions-management/create-manage-subscriptions#create-and-manage-certificates).
    x-type: product
    x-displayName: Subscriptions Management
  - name: subscription
    description: ''
    x-type: section
    x-displayName: Subscription
  - name: profile
    description: ''
    x-type: section
    x-displayName: Profile
  - name: security
    description: ''
    x-type: section
    x-displayName: Security
  - name: certificate
    description: ''
    x-type: section
    x-displayName: Certificate
paths:
  /whatsapp/1/message/template:
    post:
      tags:
        - channels
        - whatsapp
        - whatsapp-outbound-messages
        - whatsapp-template-message
      summary: Send WhatsApp template message
      description: >-
        Send a single or multiple template messages to one or more recipients.
        Template messages can be sent and delivered at anytime. Each template
        needs to be registered and pre-approved by WhatsApp. <br/> The API
        response will not contain the final delivery status, use [Delivery
        Reports](#channels/whatsapp/receive-whatsapp-delivery-reports) instead.


        **Required scope:** Enable one of: `message:send`,
        `whatsapp:message:send`, `whatsapp:manage`.
      operationId: send-whatsapp-template-message
      requestBody:
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.BulkMessage
            examples:
              Body template message:
                summary: Body template message
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders:
                              - Placeholder Value 1
                              - Placeholder Value 2
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Text header template message:
                summary: Text header template message
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders: []
                          header:
                            type: TEXT
                            placeholder: placeholder value
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Document header template message:
                summary: Document header template message
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders: []
                          header:
                            type: DOCUMENT
                            mediaUrl: http://example.com/document
                            filename: document.pdf
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Image header template message:
                summary: Image header template message
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders: []
                          header:
                            type: IMAGE
                            mediaUrl: http://example.com/image
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Video header template message:
                summary: Video header template message
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders: []
                          header:
                            type: VIDEO
                            mediaUrl: http://example.com/video
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Location header template message:
                summary: Location header template message
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders: []
                          header:
                            type: LOCATION
                            latitude: 45.79359
                            longitude: 15.94613
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Quick reply button template message:
                summary: Quick reply button template message
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders: []
                          buttons:
                            - type: QUICK_REPLY
                              parameter: 'Yes'
                            - type: QUICK_REPLY
                              parameter: 'No'
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Coupon template message:
                summary: Coupon template message
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders: []
                          buttons:
                            - type: COPY_CODE
                              parameter: exampleCode
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Dynamic URL button template message:
                summary: Dynamic URL button template message
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders: []
                          buttons:
                            - type: URL
                              parameter: docs
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Static URL button template message:
                summary: Static URL button template message
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders:
                              - Placeholder Value 1
                          buttons: []
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Template message with SMS failover:
                summary: Template message with SMS failover
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders:
                              - Placeholder Value 1
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
                      smsFailover:
                        from: InfoSMS
                        text: >-
                          SMS message to be sent if WhatsApp template message
                          could not be delivered.
              Bulk template messages:
                summary: Bulk template messages
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders:
                              - Placeholder Value 1
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
                    - from: '353861234583'
                      to: '353861234585'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381db
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders:
                              - Placeholder Value 1
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
                  bulkId: BULK-ID-123-xyz
              Authentication with one-tap button template message:
                summary: Authentication with one-tap button template message
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders:
                              - Authentication Code Value
                          buttons:
                            - type: URL
                              parameter: Authentication Code Value
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Authentication with copy code button template message:
                summary: Authentication with copy code button template message
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders:
                              - Authentication Code Value
                          buttons:
                            - type: URL
                              parameter: Authentication Code Value
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Carousel message:
                summary: Carousel message
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders: []
                          carousel:
                            cards:
                              - header:
                                  type: IMAGE
                                  mediaUrl: http://example.com/image
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Carousel message with buttons in card:
                summary: Carousel message with buttons in card
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders: []
                          carousel:
                            cards:
                              - header:
                                  type: IMAGE
                                  mediaUrl: http://example.com/image
                                buttons:
                                  - type: QUICK_REPLY
                                    parameter: 'Yes'
                                  - type: QUICK_REPLY
                                    parameter: 'No'
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Limited-time offer without expiration time:
                summary: Limited-time offer without expiration time
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders:
                              - Placeholder Value 1
                          buttons:
                            - type: URL
                              parameter: docs
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Limited-time offer with expiration time:
                summary: Limited-time offer with expiration time
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders:
                              - Placeholder Value 1
                          buttons:
                            - type: COPY_CODE
                              parameter: exampleCode
                            - type: URL
                              parameter: docs
                          limitedTimeOffer:
                            expirationTime: '2030-01-01T10:00:00.000Z'
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Flow button template message:
                summary: Flow button template message
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders: []
                          buttons:
                            - type: FLOW
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Flow button with flow token and data template message:
                summary: Flow button with flow token and data template message
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders: []
                          buttons:
                            - type: FLOW
                              flowToken: Flow token
                              data:
                                key: value
                                key2: value2
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Catalog button template message:
                summary: Catalog button template message
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders: []
                          buttons:
                            - type: CATALOG
                              thumbnailProductRetailerId: qihxicpdu3
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Catalog button template message without optional fields:
                summary: Catalog button template message without optional fields
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders: []
                          buttons:
                            - type: CATALOG
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Multi Product button template message:
                summary: Multi Product button template message
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders: []
                          buttons:
                            - type: MULTI_PRODUCT
                              thumbnailProductRetailerId: qihxicpdu3
                              sections:
                                - title: Title
                                  productRetailerIds:
                                    - '1'
                                    - '2'
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Multi Product button template message without optional fields:
                summary: Multi Product button template message without optional fields
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders: []
                          buttons:
                            - type: MULTI_PRODUCT
                              sections:
                                - title: Title
                                  productRetailerIds:
                                    - '1'
                                    - '2'
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Order Details for Brazil Pix DC button template message:
                summary: Order Details for Brazil Pix DC button template message
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders: []
                          buttons:
                            - type: ORDER_DETAILS
                              action:
                                payment:
                                  type: BRAZIL_PIX_DC
                                  id: fd3e847h2
                                  code: 00020101021226900014br.gov.bcb.pix2568pix
                                  merchantName: Company Name
                                  keyType: CNPJ
                                  key: '01234567891234'
                                orderCurrency: BRL
                                orderType: DIGITAL_GOODS
                                totalAmount:
                                  value: 21000
                                order:
                                  catalogId: '1'
                                  items:
                                    - retailerId: '1'
                                      name: discounted product
                                      amount:
                                        value: 10000
                                      saleAmount:
                                        value: 5000
                                      quantity: 2
                                    - retailerId: '2'
                                      name: product
                                      amount:
                                        value: 10000
                                      quantity: 1
                                  subtotal:
                                    value: 20000
                                  tax:
                                    value: 1000
                                    description: tax included
                                  shipping:
                                    value: 1000
                                    description: shipping cost
                                  discount:
                                    amount:
                                      value: 1000
                                      description: discount
                                    programName: membership discount
                                  orderExpiration:
                                    expirationSeconds: 500
                                    description: limited offer
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Order Details for Brazil Link button template message:
                summary: Order Details for Brazil Link button template message
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders: []
                          buttons:
                            - type: ORDER_DETAILS
                              action:
                                payment:
                                  type: BRAZIL_LINK
                                  id: fd3e847h2
                                  paymentLink: https://example.com/payment-link
                                orderCurrency: BRL
                                orderType: DIGITAL_GOODS
                                totalAmount:
                                  value: 21000
                                order:
                                  catalogId: '1'
                                  items:
                                    - retailerId: '1'
                                      name: discounted product
                                      amount:
                                        value: 10000
                                      saleAmount:
                                        value: 5000
                                      quantity: 2
                                    - retailerId: '2'
                                      name: product
                                      amount:
                                        value: 10000
                                      quantity: 1
                                  subtotal:
                                    value: 20000
                                  tax:
                                    value: 1000
                                    description: tax included
                                  shipping:
                                    value: 1000
                                    description: shipping cost
                                  discount:
                                    amount:
                                      value: 1000
                                      description: discount
                                    programName: membership discount
                                  orderExpiration:
                                    expirationSeconds: 500
                                    description: limited offer
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Order Details for Brazil Boleto button template message:
                summary: Order Details for Brazil Boleto button template message
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders: []
                          buttons:
                            - type: ORDER_DETAILS
                              action:
                                payment:
                                  type: BRAZIL_BOLETO
                                  id: fd3e847h2
                                  code: >-
                                    03399026944140000002628346101018898510000008848
                                orderCurrency: BRL
                                orderType: DIGITAL_GOODS
                                totalAmount:
                                  value: 21000
                                order:
                                  catalogId: '1'
                                  items:
                                    - retailerId: '1'
                                      name: discounted product
                                      amount:
                                        value: 10000
                                      saleAmount:
                                        value: 5000
                                      quantity: 2
                                    - retailerId: '2'
                                      name: product
                                      amount:
                                        value: 10000
                                      quantity: 1
                                  subtotal:
                                    value: 20000
                                  tax:
                                    value: 1000
                                    description: tax included
                                  shipping:
                                    value: 1000
                                    description: shipping cost
                                  discount:
                                    amount:
                                      value: 1000
                                      description: discount
                                    programName: membership discount
                                  orderExpiration:
                                    expirationSeconds: 500
                                    description: limited offer
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Order Details for Brazil Payments button template message:
                summary: Order Details for Brazil Payments button template message
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders: []
                          buttons:
                            - type: ORDER_DETAILS
                              action:
                                payment:
                                  type: BRAZIL_PAYMENTS
                                  payments:
                                    - type: BRAZIL_PIX_DC
                                      id: fd3e847h2
                                      code: >-
                                        00020101021226900014br.gov.bcb.pix2568pix
                                      merchantName: Company Name
                                      keyType: CNPJ
                                      key: '01234567891234'
                                    - type: BRAZIL_BOLETO
                                      id: fd3e847h2
                                      code: >-
                                        03399026944140000002628346101018898510000008848
                                orderCurrency: BRL
                                orderType: DIGITAL_GOODS
                                totalAmount:
                                  value: 21000
                                order:
                                  catalogId: '1'
                                  items:
                                    - retailerId: '1'
                                      name: discounted product
                                      amount:
                                        value: 10000
                                      saleAmount:
                                        value: 5000
                                      quantity: 2
                                    - retailerId: '2'
                                      name: product
                                      amount:
                                        value: 10000
                                      quantity: 1
                                  subtotal:
                                    value: 20000
                                  tax:
                                    value: 1000
                                    description: tax included
                                  shipping:
                                    value: 1000
                                    description: shipping cost
                                  discount:
                                    amount:
                                      value: 1000
                                      description: discount
                                    programName: membership discount
                                  orderExpiration:
                                    expirationSeconds: 500
                                    description: limited offer
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Order Details for PG PayU button template message:
                summary: Order Details for PG PayU button template message
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders: []
                          buttons:
                            - type: ORDER_DETAILS
                              action:
                                payment:
                                  type: PG_PAYU
                                  id: fd3e847h2
                                  beneficiary:
                                    name: John Smith
                                    firstAddressLine: address line
                                    secondAddressLine: address line
                                    city: city
                                    state: state
                                    country: INDIA
                                    postalCode: '123456'
                                  callbackData:
                                    - customData1
                                    - customData2
                                    - customData3
                                    - customData4
                                orderCurrency: INR
                                orderType: DIGITAL_GOODS
                                totalAmount:
                                  value: 21000
                                order:
                                  catalogId: '1'
                                  items:
                                    - retailerId: '1'
                                      name: discounted product
                                      amount:
                                        value: 10000
                                      saleAmount:
                                        value: 5000
                                      quantity: 2
                                    - retailerId: '2'
                                      name: product
                                      amount:
                                        value: 10000
                                      quantity: 1
                                  subtotal:
                                    value: 20000
                                  tax:
                                    value: 1000
                                    description: tax included
                                  shipping:
                                    value: 1000
                                    description: shipping cost
                                  discount:
                                    amount:
                                      value: 1000
                                      description: discount
                                    programName: membership discount
                                  orderExpiration:
                                    expirationSeconds: 500
                                    description: limited offer
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Order Details for PG Razorpay button template message:
                summary: Order Details for PG Razorpay button template message
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders: []
                          buttons:
                            - type: ORDER_DETAILS
                              action:
                                payment:
                                  type: PG_RAZORPAY
                                  id: fd3e847h2
                                  beneficiary:
                                    name: John Smith
                                    firstAddressLine: address line
                                    secondAddressLine: address line
                                    city: city
                                    state: state
                                    country: INDIA
                                    postalCode: '123456'
                                  callbackData:
                                    key0: customData1
                                    key1: customData2
                                    key2: customData3
                                    key3: customData4
                                    key4: customData5
                                    key5: customData6
                                    key6: customData7
                                    key7: customData8
                                    key8: customData9
                                    key9: customData10
                                    key10: customData11
                                    key11: customData12
                                    key12: customData13
                                    key13: customData14
                                    key14: customData15
                                orderCurrency: INR
                                orderType: DIGITAL_GOODS
                                totalAmount:
                                  value: 21000
                                order:
                                  catalogId: '1'
                                  items:
                                    - retailerId: '1'
                                      name: discounted product
                                      amount:
                                        value: 10000
                                      saleAmount:
                                        value: 5000
                                      quantity: 2
                                    - retailerId: '2'
                                      name: product
                                      amount:
                                        value: 10000
                                      quantity: 1
                                  subtotal:
                                    value: 20000
                                  tax:
                                    value: 1000
                                    description: tax included
                                  shipping:
                                    value: 1000
                                    description: shipping cost
                                  discount:
                                    amount:
                                      value: 1000
                                      description: discount
                                    programName: membership discount
                                  orderExpiration:
                                    expirationSeconds: 500
                                    description: limited offer
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Order Details for UPI Intent Link button template message:
                summary: Order Details for UPI Intent Link button template message
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders: []
                          buttons:
                            - type: ORDER_DETAILS
                              action:
                                payment:
                                  type: UPI_INTENT
                                  id: fd3e847h2
                                  beneficiary:
                                    name: John Smith
                                    firstAddressLine: address line
                                    secondAddressLine: address line
                                    city: city
                                    state: state
                                    country: INDIA
                                    postalCode: '123456'
                                  format:
                                    type: LINK
                                    paymentLink: >-
                                      upi://pay?pa=example@upi&pn=Example%20Merchant&mc=4722&&tr=1234567890
                                orderCurrency: INR
                                orderType: DIGITAL_GOODS
                                totalAmount:
                                  value: 21000
                                order:
                                  catalogId: '1'
                                  items:
                                    - retailerId: '1'
                                      name: discounted product
                                      amount:
                                        value: 10000
                                      saleAmount:
                                        value: 5000
                                      quantity: 2
                                    - retailerId: '2'
                                      name: product
                                      amount:
                                        value: 10000
                                      quantity: 1
                                  subtotal:
                                    value: 20000
                                  tax:
                                    value: 1000
                                    description: tax included
                                  shipping:
                                    value: 1000
                                    description: shipping cost
                                  discount:
                                    amount:
                                      value: 1000
                                      description: discount
                                    programName: membership discount
                                  orderExpiration:
                                    expirationSeconds: 500
                                    description: limited offer
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Order Details for UPI Link button template message:
                summary: Order Details for UPI Link button template message
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders: []
                          buttons:
                            - type: ORDER_DETAILS
                              action:
                                payment:
                                  type: UPI_LINK
                                  id: fd3e847h2
                                  beneficiary:
                                    name: John Smith
                                    firstAddressLine: address line
                                    secondAddressLine: address line
                                    city: city
                                    state: state
                                    country: INDIA
                                    postalCode: '123456'
                                  paymentLink: https://payment.example.com/upi-link
                                orderCurrency: INR
                                orderType: DIGITAL_GOODS
                                totalAmount:
                                  value: 21000
                                order:
                                  catalogId: '1'
                                  items:
                                    - retailerId: '1'
                                      name: discounted product
                                      amount:
                                        value: 10000
                                      saleAmount:
                                        value: 5000
                                      quantity: 2
                                    - retailerId: '2'
                                      name: product
                                      amount:
                                        value: 10000
                                      quantity: 1
                                  subtotal:
                                    value: 20000
                                  tax:
                                    value: 1000
                                    description: tax included
                                  shipping:
                                    value: 1000
                                    description: shipping cost
                                  discount:
                                    amount:
                                      value: 1000
                                      description: discount
                                    programName: membership discount
                                  orderExpiration:
                                    expirationSeconds: 500
                                    description: limited offer
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Order Status template message:
                summary: Order Status template message
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders: []
                          orderStatus:
                            orderStatuses:
                              - type: ORDER_STATUS
                                payment:
                                  type: UPI_INTENT
                                  id: paymentId
                                status: PROCESSING
                                description: Order status description
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Voice call button template message:
                summary: Voice call button template message
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: POSITIONAL_PARAMETERS
                            placeholders: []
                          buttons:
                            - type: VOICE_CALL
                              callValidityPeriod: 1440
                              callContextPayload: context-payload
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
              Named parameters template message:
                summary: Named parameters template message
                value:
                  messages:
                    - from: '353861234583'
                      to: '353861234584'
                      messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                      content:
                        templateName: template_name
                        templateData:
                          body:
                            type: NAMED_PARAMETERS
                            namedParameters:
                              - parameterName: customer_name
                                text: FooBar
                              - parameterName: order_id
                                text: '123'
                          header:
                            type: TEXT_NAMED_PARAMETERS
                            parameterName: sale_start_date
                            text: today
                        language: en_GB
                      callbackData: Callback data
                      notifyUrl: https://www.example.com/whatsapp
                      urlOptions:
                        shortenUrl: true
                        trackClicks: true
                        trackingUrl: https://example.com/click-report
                        removeProtocol: true
        required: true
      responses:
        '200':
          description: Message accepted for delivery
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.BulkMessageInfo
              examples:
                Success Response:
                  summary: Success Response
                  value:
                    messages:
                      - to: '353861234584'
                        messageCount: 1
                        messageId: a28dd97c-1ffb-4fcf-99f1-0b557ed381da
                        status:
                          groupId: 1
                          groupName: PENDING
                          id: 7
                          name: PENDING_ENROUTE
                          description: Message sent to next instance
                    bulkId: '2034072219640523073'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/a0adf300db6deef82e7c0136cd925a42b10c902181badc6843c98dba155015cc.ApiException
              examples:
                Extra whitespaces error response:
                  summary: Extra whitespaces error response
                  value:
                    requestError:
                      serviceException:
                        messageId: BAD_REQUEST
                        text: Bad request
                        validationErrors:
                          content.templateData.header.placeholder:
                            - >-
                              cannot have new-line/tab characters or more than 4
                              consecutive spaces
                Url validation error response:
                  summary: Url validation error response
                  value:
                    requestError:
                      serviceException:
                        messageId: BAD_REQUEST
                        text: Bad request
                        validationErrors:
                          content.templateData.header.mediaUrl:
                            - size must be between 1 and 2048
                            - is not a valid url
                            - must not be blank
                Filename validation error response:
                  summary: Filename validation error response
                  value:
                    requestError:
                      serviceException:
                        messageId: BAD_REQUEST
                        text: Bad request
                        validationErrors:
                          content.templateData.header.filename:
                            - size must be between 1 and 240
                Bad request:
                  summary: Bad request
                  value:
                    requestError:
                      serviceException:
                        messageId: BAD_REQUEST
                        text: Bad request
        '401':
          $ref: '#/components/responses/ApiException401'
        '403':
          $ref: '#/components/responses/ApiException403'
        '429':
          $ref: '#/components/responses/ApiException429'
        '500':
          $ref: '#/components/responses/ApiException500'
      security:
        - APIKeyHeader: []
      externalDocs:
        description: Learn more about WhatsApp channel and use cases
        url: https://www.phonovation.com/docs/whatsapp
components:
  schemas:
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.BulkMessage:
      type: object
      properties:
        messages:
          type: array
          description: An array of messages being sent.
          items:
            $ref: >-
              #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.FailoverMessage
          minItems: 1
        bulkId:
          type: string
          description: >-
            The ID that uniquely identifies the request. Bulk ID will be
            received only when you send a message to more than one destination
            address.
          maxLength: 100
          minLength: 0
      required:
        - messages
      title: BulkMessage
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.BulkMessageInfo:
      type: object
      properties:
        messages:
          type: array
          description: Array of sent message objects, one object per every message.
          items:
            $ref: >-
              #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.SingleMessageInfo
        bulkId:
          type: string
          description: >-
            The ID that uniquely identifies the request. Bulk ID will be
            received only when you send a message to more than one destination
            address.
          example: '2034072219640523073'
      title: BulkMessageInfo
    a0adf300db6deef82e7c0136cd925a42b10c902181badc6843c98dba155015cc.ApiException:
      type: object
      properties:
        requestError:
          $ref: '#/components/schemas/ApiRequestError'
      title: ApiException
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.FailoverMessage:
      type: object
      description: An array of messages being sent.
      properties:
        from:
          type: string
          description: >-
            Registered WhatsApp sender number. Must be in international format
            and comply with [WhatsApp's
            requirements](https://www.phonovation.com/docs/whatsapp/get-started/sender-registration#phone-number-what-you-need-to-know).
          maxLength: 24
          minLength: 1
        to:
          type: string
          description: >-
            Message recipient number in international format or WhatsApp
            business-scoped user ID.
          maxLength: 150
          minLength: 1
        messageId:
          type: string
          description: The ID that uniquely identifies the message sent.
          maxLength: 200
          minLength: 0
        content:
          $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateContent
        callbackData:
          type: string
          description: >-
            Custom client data that will be included in a [Delivery
            Report](#channels/whatsapp/receive-whatsapp-delivery-reports).
          maxLength: 4000
          minLength: 0
        notifyUrl:
          type: string
          description: >-
            The URL on your callback server to which delivery and seen reports
            will be sent. [Delivery report
            format](#channels/whatsapp/receive-whatsapp-delivery-reports), [Seen
            report format](#channels/whatsapp/receive-whatsapp-seen-reports).
          maxLength: 2048
          minLength: 0
          pattern: ''
        urlOptions:
          $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.UrlOptions
        smsFailover:
          $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.Failover
        entityId:
          type: string
          description: >-
            Required for entity use in a send request for outbound traffic.
            Returned in notification events. For more details, see our
            [documentation](https://www.phonovation.com/docs/cpaas-x/application-and-entity-management).
          maxLength: 255
          minLength: 0
        applicationId:
          type: string
          description: >-
            Required for application use in a send request for outbound traffic.
            Returned in notification events. For more details, see our
            [documentation](https://www.phonovation.com/docs/cpaas-x/application-and-entity-management).
          maxLength: 255
          minLength: 0
        context:
          $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.MessageContext
      required:
        - content
        - from
        - to
      title: FailoverMessage
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.SingleMessageInfo:
      type: object
      properties:
        to:
          type: string
          description: The destination address of the message.
          example: '353861234572'
        messageCount:
          type: integer
          format: int32
          description: Number of messages required to deliver.
          example: 1
        messageId:
          type: string
          description: >-
            The ID that uniquely identifies the message sent. If not passed, it
            will be automatically generated and returned in a response.
          example: 06df139a-7eb5-4a6e-902e-40e892210455
        status:
          $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.SingleMessageStatus
      title: SingleMessageInfo
    ApiRequestError:
      type: object
      properties:
        serviceException:
          $ref: '#/components/schemas/ApiRequestErrorDetails'
      title: ApiRequestError
    ApiException:
      type: object
      properties:
        requestError:
          $ref: '#/components/schemas/ApiRequestError'
      title: ApiException
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateContent:
      type: object
      description: The content object to build a message that will be sent.
      properties:
        templateName:
          type: string
          description: >-
            Template name. Should only contain lowercase alphanumeric characters
            and underscores.
          maxLength: 512
          minLength: 1
          pattern: '[a-z0-9_]+$'
        templateData:
          $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateDataContent
        language:
          type: string
          description: >-
            The code of language or locale to use. Must be the same code used
            when registering the template.
          minLength: 1
      required:
        - language
        - templateData
        - templateName
      title: TemplateContent
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.UrlOptions:
      type: object
      description: >-
        Sets up [URL
        shortening](https://www.phonovation.com/docs/url-shortening) and
        tracking feature.
      properties:
        shortenUrl:
          type: boolean
          default: true
          description: >-
            Enable shortening of the URLs within a message. Set this to `true`,
            if you want to set up other URL options.
        trackClicks:
          type: boolean
          default: true
          description: >-
            Enable tracking of short URL clicks within a message: which URL was
            clicked, how many times, and by whom.
        trackingUrl:
          type: string
          description: >-
            The URL of your callback server on to which the Click report will be
            sent.
        removeProtocol:
          type: boolean
          default: false
          description: >-
            Remove a protocol, such as `https://`, from links to shorten a
            message. Note that some mobiles may not recognize such links as a
            URL.
        customDomain:
          type: string
          description: >-
            Select a predefined custom domain to use when generating a short
            URL.
      title: UrlOptions
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.Failover:
      type: object
      description: >-
        SMS message to be sent if the WhatsApp template message could not be
        delivered.
      properties:
        from:
          type: string
          description: SMS sender number. Must be in international format.
          maxLength: 24
          minLength: 1
        text:
          type: string
          description: Content of the SMS that will be sent.
          maxLength: 4096
          minLength: 1
      required:
        - from
        - text
      title: Failover
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.MessageContext:
      type: object
      description: Context object to define WhatsApp-specific metadata about a message.
      properties:
        replyToMessageId:
          type: string
          description: >-
            Inbound message ID used for a reply. Contextual bubble will not
            appear for template messages.
          minLength: 1
      required:
        - replyToMessageId
      title: MessageContext
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.SingleMessageStatus:
      type: object
      description: >-
        Indicates the
        [status](https://www.phonovation.com/docs/essentials/response-status-and-error-codes#api-status-codes)
        of the message and how to recover from an error should there be any.
      properties:
        groupId:
          type: integer
          format: int32
          description: Status group ID.
          example: 1
        groupName:
          type: string
          description: Status group name.
          example: PENDING
        id:
          type: integer
          format: int32
          description: Status ID.
          example: 7
        name:
          type: string
          description: Status name.
          example: PENDING_ENROUTE
        description:
          type: string
          description: Human-readable description of the status.
          example: Message sent to next instance
        action:
          type: string
          description: Action that should be taken to eliminate the error.
      title: SingleMessageStatus
    ApiRequestErrorDetails:
      type: object
      properties:
        messageId:
          type: string
          description: Identifier of the error.
        text:
          type: string
          description: Detailed error description.
        validationErrors:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
              description: Validation errors.
          description: Validation errors.
      title: ApiRequestErrorDetails
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateDataContent:
      type: object
      description: Template data. Values have to be set as registered in the template.
      properties:
        body:
          $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateBodyContent
        header:
          $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateHeaderContent
        buttons:
          type: array
          description: >-
            Template buttons. Should be defined in the correct order, only if
            `quick reply`, `dynamic URL`, `copy code` or `flow`  buttons have
            been registered. It can have up to ten buttons including a maximum
            of two `dynamic URL` buttons, one `copy code` button and one `flow`
            button. When `catalog`, `multi product` or `order details` button is
            used it needs to be the only button.
          items:
            $ref: >-
              #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateButtonContent
        carousel:
          $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateCarouselContent
        limitedTimeOffer:
          $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateLimitedTimeOfferContent
        orderStatus:
          $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateOrderStatusContent
      required:
        - body
      title: TemplateDataContent
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateBodyContent:
      type: object
      description: Template body.
      discriminator:
        propertyName: type
        mapping:
          POSITIONAL_PARAMETERS: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplatePositionalBodyContent
          NAMED_PARAMETERS: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateNamedBodyContent
      properties:
        type:
          type: string
      required:
        - type
      title: TemplateBodyContent
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateHeaderContent:
      type: object
      description: >-
        Template header. Should be defined, only if placeholders or media have
        been registered in the template's header.
      discriminator:
        propertyName: type
        mapping:
          TEXT: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateTextHeaderContent
          DOCUMENT: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateDocumentHeaderContent
          IMAGE: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateImageHeaderContent
          VIDEO: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateVideoHeaderContent
          GIF: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateGifHeaderContent
          LOCATION: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateLocationHeaderContent
          TEXT_NAMED_PARAMETERS: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateTextNamedParametersHeaderContent
      properties:
        type:
          type: string
      required:
        - type
      title: TemplateHeaderContent
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateButtonContent:
      type: object
      description: >-
        Template buttons. Should be defined in the correct order, only if `quick
        reply` or `dynamic URL` buttons have been registered. It can have up to
        ten buttons including a maximum of two `dynamic URL` buttons.
      discriminator:
        propertyName: type
        mapping:
          QUICK_REPLY: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateQuickReplyButtonContent
          URL: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateUrlButtonContent
          COPY_CODE: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateCopyCodeButtonContent
          FLOW: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateFlowButtonContent
          CATALOG: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateCatalogButtonContent
          MULTI_PRODUCT: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateMultiProductButtonContent
          ORDER_DETAILS: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateOrderDetailsButtonContent
          VOICE_CALL: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateVoiceCallButtonContent
      properties:
        type:
          type: string
      required:
        - type
      title: TemplateButtonContent
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateCarouselContent:
      type: object
      description: >-
        Template carousel. Should be defined only when template contains
        carousel.
      properties:
        cards:
          type: array
          description: >-
            Carousel cards. Should be defined in the correct order. It can have
            between one and ten cards.
          items:
            $ref: >-
              #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateCardContent
          maxItems: 10
          minItems: 1
      required:
        - cards
      title: TemplateCarouselContent
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateLimitedTimeOfferContent:
      type: object
      description: >-
        Template limited-time offer. Should be defined, only if template
        contains limited-time offer.
      properties:
        expirationTime:
          type: string
          format: date-time
          description: >-
            Offer code expiration time. Has the following format:
            `yyyy-MM-dd'T'HH:mm:ss.SSSZ`.
          example: '2030-01-01T10:00:00Z'
          pattern: >-
            \d{4}-((0[1,3-9]|1[0-2])-(0[1-9]|[12]\d|3[01])|02-(0[1-9]|[12]\d))T([01]\d|2[0-3]):([0-5]\d|60):([0-5]\d|60).\d{3}(Z|([+-]\d{2}:?\d{2}))
      required:
        - expirationTime
      title: TemplateLimitedTimeOfferContent
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateOrderStatusContent:
      type: object
      description: >-
        Template order status. Should be defined, only if template contains
        order status.
      properties:
        orderStatuses:
          type: array
          description: Array of order statuses information.
          items:
            $ref: >-
              #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.OrderStatusContent
      required:
        - orderStatuses
      title: TemplateOrderStatusContent
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplatePositionalBodyContent:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateBodyContent
        - type: object
          properties:
            placeholders:
              type: array
              description: >-
                Template's parameter values submitted in the same order as in
                the registered template. The value must not be null, but it can
                be an empty array, if the template was registered without
                placeholders. Values within the array must not be null or empty.
              items:
                type: string
                description: >-
                  Template's parameter values submitted in the same order as in
                  the registered template. The value must not be null, but it
                  can be an empty array, if the template was registered without
                  placeholders. Values within the array must not be null or
                  empty.
                minLength: 1
      required:
        - placeholders
      title: TemplatePositionalBodyContent
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateNamedBodyContent:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateBodyContent
        - type: object
          properties:
            namedParameters:
              type: array
              description: >-
                Template's named parameter values. Must contain at least one
                entry.
              items:
                $ref: >-
                  #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateNamedBodyParameter
              minItems: 1
      required:
        - namedParameters
      title: TemplateNamedBodyContent
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateTextHeaderContent:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateHeaderContent
        - type: object
          properties:
            placeholder:
              type: string
              description: Value of a placeholder in the text header.
              minLength: 1
      required:
        - placeholder
      title: TemplateTextHeaderContent
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateDocumentHeaderContent:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateHeaderContent
        - type: object
          properties:
            mediaUrl:
              type: string
              description: >-
                URL of a document sent in the header. It is expected to be a
                valid URL starting with `https://` or `http://`. Supported
                document type is `PDF`. Maximum document size is 100MB.
              maxLength: 2048
              minLength: 1
              pattern: >-
                (http|https)://(\w+:?\w*@)?(\S+)(:[0-9]+)?(/|/([\w#!:.?+=&%@!\-/]))?
            filename:
              type: string
              description: Filename of the document.
              maxLength: 240
              minLength: 1
      required:
        - filename
        - mediaUrl
      title: TemplateDocumentHeaderContent
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateImageHeaderContent:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateHeaderContent
        - type: object
          properties:
            mediaUrl:
              type: string
              description: >-
                URL of an image sent in the header. It is expected to be a valid
                URL starting with `https://` or `http://`. Supported image types
                are `JPG`, `JPEG`, `PNG`. Maximum image size is 5MB.
              maxLength: 2048
              minLength: 1
              pattern: >-
                (http|https)://(\w+:?\w*@)?(\S+)(:[0-9]+)?(/|/([\w#!:.?+=&%@!\-/]))?
      required:
        - mediaUrl
      title: TemplateImageHeaderContent
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateVideoHeaderContent:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateHeaderContent
        - type: object
          properties:
            mediaUrl:
              type: string
              description: >-
                URL of a video sent in the header. It is expected to be a valid
                URL starting with `https://` or `http://`. Supported video types
                are `MP4`, `3GPP`. Maximum video size is 16MB.
              maxLength: 2048
              minLength: 1
              pattern: >-
                (http|https)://(\w+:?\w*@)?(\S+)(:[0-9]+)?(/|/([\w#!:.?+=&%@!\-/]))?
      required:
        - mediaUrl
      title: TemplateVideoHeaderContent
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateGifHeaderContent:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateHeaderContent
        - type: object
          properties:
            mediaUrl:
              type: string
              description: >-
                URL of a GIF sent in the header. Must be an MP4 file. It is
                expected to be a valid URL starting with `https://` or
                `http://`. Maximum GIF size is 3.5MB. Files larger than 3.5MB
                are delivered as video messages. Only available for MM API
                (Marketing Messages).
              maxLength: 2048
              minLength: 1
              pattern: >-
                (http|https)://(\w+:?\w*@)?(\S+)(:[0-9]+)?(/|/([\w#!:.?+=&%@!\-/]))?
      required:
        - mediaUrl
      title: TemplateGifHeaderContent
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateLocationHeaderContent:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateHeaderContent
        - type: object
          properties:
            latitude:
              type: number
              format: double
              description: Latitude of a location sent in the header.
              maximum: 90
              minimum: -90
            longitude:
              type: number
              format: double
              description: Longitude of a location sent in the header.
              maximum: 180
              minimum: -180
      required:
        - latitude
        - longitude
      title: TemplateLocationHeaderContent
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateTextNamedParametersHeaderContent:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateHeaderContent
        - type: object
          properties:
            parameterName:
              type: string
              description: Name of the parameter as defined in the template's header.
              minLength: 1
            text:
              type: string
              description: Value of the named parameter in the text header.
              minLength: 1
      required:
        - parameterName
        - text
      title: TemplateTextNamedParametersHeaderContent
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateQuickReplyButtonContent:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.CardAllowedTemplateButtonContent
        - type: object
          properties:
            parameter:
              type: string
              description: Payload of a `quick reply` button.
              maxLength: 128
              minLength: 1
      required:
        - parameter
      title: TemplateQuickReplyButtonContent
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateUrlButtonContent:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.CardAllowedTemplateButtonContent
        - type: object
          properties:
            parameter:
              type: string
              description: >-
                URL extension of a `dynamic URL` defined in the registered
                template. Learn more about [URL
                buttons](https://www.phonovation.com/docs/whatsapp/whatsapp-over-api#dynamic-template-button-urls-with-shortening-and-tracking).
              minLength: 1
      required:
        - parameter
      title: TemplateUrlButtonContent
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateCopyCodeButtonContent:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateButtonContent
        - type: object
          properties:
            parameter:
              type: string
              description: Code.
              maxLength: 20
              minLength: 1
              pattern: ^[a-z0-9A-Z]*$
      required:
        - parameter
      title: TemplateCopyCodeButtonContent
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateFlowButtonContent:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateButtonContent
        - type: object
          properties:
            flowToken:
              type: string
              description: Flow token.
              maxLength: 3000
              minLength: 0
            data:
              type: object
              additionalProperties:
                type: object
              description: >-
                Message action payload data. JSON object with the data payload
                for the first screen.
      title: TemplateFlowButtonContent
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateCatalogButtonContent:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateButtonContent
        - type: object
          properties:
            thumbnailProductRetailerId:
              type: string
              description: >-
                Product-unique identifier, as defined in catalog. If omitted,
                the image of the first item in your catalog will be used.
              maxLength: 3000
              minLength: 0
      title: TemplateCatalogButtonContent
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateMultiProductButtonContent:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateButtonContent
        - type: object
          properties:
            thumbnailProductRetailerId:
              type: string
              description: >-
                Product-unique identifier, as defined in catalog. If omitted,
                the image of the first item in your catalog will be used.
              maxLength: 3000
              minLength: 0
            sections:
              type: array
              description: An array of multi product sections.
              items:
                $ref: >-
                  #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.MultiProductSectionContent
              maxItems: 10
              minItems: 1
      required:
        - sections
      title: TemplateMultiProductButtonContent
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateOrderDetailsButtonContent:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateButtonContent
        - type: object
          properties:
            action:
              $ref: >-
                #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateOrderDetailsActionContent
      required:
        - action
      title: TemplateOrderDetailsButtonContent
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateVoiceCallButtonContent:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateButtonContent
        - type: object
          properties:
            callValidityPeriod:
              type: integer
              format: int32
              description: >-
                Time to live for the voice call button in minutes. Must be
                between 1 and 43200 (30 days). Default value is 10080 (7 days).
              maximum: 43200
              minimum: 1
            callContextPayload:
              type: string
              description: >-
                Payload data sent with the button. Can be retrieved from the
                call webhook.
              maxLength: 512
              minLength: 1
      title: TemplateVoiceCallButtonContent
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateCardContent:
      type: object
      description: >-
        Carousel cards. Should be defined in the correct order. It can have
        between one and ten cards.
      properties:
        header:
          $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateHeaderContent
        body:
          $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateBodyContent
        buttons:
          type: array
          description: >-
            Card buttons. Define buttons only for `quick reply` or `dynamic URL`
            buttons (in the required order). For static URL button, omit the
            buttons section.
          items:
            $ref: >-
              #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.CardAllowedTemplateButtonContent
          maxItems: 2
          minItems: 1
      required:
        - header
      title: TemplateCardContent
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.OrderStatusContent:
      type: object
      description: Array of order statuses information.
      discriminator:
        propertyName: type
        mapping:
          ORDER_STATUS: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateOrderStatusActionContent
      properties:
        type:
          type: string
      required:
        - type
      title: OrderStatusContent
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateNamedBodyParameter:
      type: object
      description: Template's named parameter values. Must contain at least one entry.
      properties:
        parameterName:
          type: string
          description: Name of the parameter as defined in the template.
          minLength: 1
        text:
          type: string
          description: Text value of the parameter.
          minLength: 1
      required:
        - parameterName
        - text
      title: TemplateNamedBodyParameter
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.CardAllowedTemplateButtonContent:
      type: object
      description: >-
        Card buttons. Define buttons only for `quick reply` or `dynamic URL`
        buttons (in the required order). For static URL button, omit the buttons
        section.
      discriminator:
        propertyName: type
        mapping:
          QUICK_REPLY: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateQuickReplyButtonContent
          URL: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateUrlButtonContent
      properties:
        type:
          type: string
      required:
        - type
      title: CardAllowedTemplateButtonContent
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.MultiProductSectionContent:
      type: object
      description: An array of multi product sections.
      properties:
        title:
          type: string
          description: Title of the section.
          maxLength: 24
          minLength: 0
        productRetailerIds:
          type: array
          description: >-
            An array of product-unique identifiers as defined in the
            [catalog](https://www.phonovation.com/docs/whatsapp/manage-integration#enable-meta-catalog-for-product-based-messaging).
            If product retailer ID doesn't exist in your catalog, the product
            won't be displayed.
          items:
            type: string
            description: >-
              An array of product-unique identifiers as defined in the
              [catalog](https://www.phonovation.com/docs/whatsapp/manage-integration#enable-meta-catalog-for-product-based-messaging).
              If product retailer ID doesn't exist in your catalog, the product
              won't be displayed.
            maxLength: 3000
            minLength: 0
          minItems: 1
      required:
        - productRetailerIds
        - title
      title: MultiProductSectionContent
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateOrderDetailsActionContent:
      type: object
      description: Allows you to specify order details.
      properties:
        payment:
          $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateAllowedOrderPaymentDetails
        paymentConfiguration:
          type: string
          description: >-
            Name of the WhatsApp payment configuration to be used for this
            order. Can be omitted for Brazil PIX, UPI Link and must be omitted
            for Brazil link, Brazil Boleto, Brazil Payments and UPI Intent
            payment.
          maxLength: 60
          minLength: 1
        orderCurrency:
          $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.OrderCurrency
        orderType:
          $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.OrderType
        totalAmount:
          $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderDetailsAmount
        order:
          $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderDetailsOrder
      required:
        - order
        - orderCurrency
        - orderType
        - payment
        - totalAmount
      title: TemplateOrderDetailsActionContent
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateOrderStatusActionContent:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.OrderStatusContent
        - type: object
          properties:
            payment:
              $ref: >-
                #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderPaymentStatus
            status:
              $ref: >-
                #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.OrderStatus
            description:
              type: string
              description: Description of the order status.
              maxLength: 120
              minLength: 0
      required:
        - payment
        - status
      title: TemplateOrderStatusActionContent
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateAllowedOrderPaymentDetails:
      type: object
      description: Payment of the order.
      discriminator:
        propertyName: type
        mapping:
          BRAZIL_PIX_DC: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderBrazilPixDcPaymentDetails
          BRAZIL_LINK: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderBrazilLinkPaymentDetails
          BRAZIL_BOLETO: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderBrazilBoletoPaymentDetails
          BRAZIL_PAYMENTS: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderBrazilPaymentsDetails
          PG_PAYU: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderUPIPGPayUPaymentDetails
          PG_RAZORPAY: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderUPIPGRazorpayPaymentDetails
          UPI_INTENT: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderUPIIntentPaymentDetails
          UPI_LINK: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderUPILinkPaymentDetails
      properties:
        type:
          type: string
      required:
        - type
      title: TemplateAllowedOrderPaymentDetails
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.OrderCurrency:
      type: string
      description: Order currency.
      enum:
        - INR
        - BRL
      title: OrderCurrency
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.OrderType:
      type: string
      description: Type of the goods offered in the order.
      enum:
        - PHYSICAL_GOODS
        - DIGITAL_GOODS
      title: OrderType
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderDetailsAmount:
      type: object
      properties:
        value:
          type: integer
          format: int32
          description: Value multiplied by the offset (100 for INR and BRL).
          minimum: 0
      required:
        - value
      title: InteractiveOrderDetailsAmount
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderDetailsOrder:
      type: object
      description: The order details.
      properties:
        catalogId:
          type: string
          description: >-
            The ID that uniquely identifies the
            [catalog](https://www.phonovation.com/docs/whatsapp/manage-integration#enable-meta-catalog-for-product-based-messaging)
            registered with Facebook and connected to the WhatsApp Business
            Account the sender belongs to.
        items:
          type: array
          description: An array of items in the order.
          items:
            $ref: >-
              #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderDetailsOrderItem
          minItems: 1
        subtotal:
          $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderDetailsAmount
        tax:
          $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderDetailsDescriptiveAmount
        shipping:
          $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderDetailsDescriptiveAmount
        discount:
          $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderDetailsDiscount
        orderExpiration:
          $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderDetailsOrderExpiration
        orderDetailsType:
          $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.OrderDetailsType
      required:
        - items
        - subtotal
        - tax
      title: InteractiveOrderDetailsOrder
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderPaymentStatus:
      type: object
      description: Payment of the order.
      discriminator:
        propertyName: type
        mapping:
          UPI_PAYU: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderUPIPayUPaymentStatus
          BRAZIL: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderBrazilPaymentStatus
          BRAZIL_PIX_DC: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderBrazilPixDcPaymentStatus
          PG_PAYU: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderUPIPGPayUPaymentStatus
          PG_RAZORPAY: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderUPIPGRazorpayPaymentStatus
          BRAZIL_LINK: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderBrazilLinkPaymentStatus
          BRAZIL_BOLETO: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderBrazilBoletoPaymentStatus
          UPI_INTENT: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderUPIIntentPaymentStatus
          UPI_LINK: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderUPILinkPaymentStatus
      properties:
        type:
          type: string
      required:
        - type
      title: InteractiveOrderPaymentStatus
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.OrderStatus:
      type: string
      description: Status of the order.
      enum:
        - PENDING
        - PROCESSING
        - PARTIALLY_SHIPPED
        - SHIPPED
        - COMPLETED
        - CANCELED
      title: OrderStatus
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderBrazilPixDcPaymentDetails:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateAllowedOrderPaymentDetails
        - type: object
          properties:
            id:
              type: string
              description: Unique identifier of the payment.
              pattern: '[A-Za-z0-9\-_.]{1,35}'
            code:
              type: string
              description: Dynamic Pix code which will be copied by the buyer.
              minLength: 1
            merchantName:
              type: string
              description: Pix account holder name.
              minLength: 1
            keyType:
              $ref: >-
                #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.PixKeyType
            key:
              type: string
              description: Key to identify the pix user’s account.
              minLength: 1
            flowType:
              $ref: >-
                #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.PixFlowType
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveAllowedOrderPaymentDetails
      required:
        - code
        - id
        - key
        - keyType
        - merchantName
      title: InteractiveOrderBrazilPixDcPaymentDetails
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderBrazilLinkPaymentDetails:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateAllowedOrderPaymentDetails
        - type: object
          properties:
            id:
              type: string
              description: Unique identifier of the payment.
              minLength: 1
              pattern: '[A-Za-z0-9\-_.]{1,35}'
            paymentLink:
              type: string
              description: Payment link.
              minLength: 1
              pattern: >-
                (http|https)://(\w+:?\w*@)?(\S+)(:[0-9]+)?(/|/([\w#!:.?+=&%@!\-/]))?
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveAllowedOrderPaymentDetails
      required:
        - id
        - paymentLink
      title: InteractiveOrderBrazilLinkPaymentDetails
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderBrazilBoletoPaymentDetails:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateAllowedOrderPaymentDetails
        - type: object
          properties:
            id:
              type: string
              description: Unique identifier of the payment.
              minLength: 1
              pattern: '[A-Za-z0-9\-_.]{1,35}'
            code:
              type: string
              description: Boleto code.
              minLength: 1
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveAllowedOrderPaymentDetails
      required:
        - code
        - id
      title: InteractiveOrderBrazilBoletoPaymentDetails
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderBrazilPaymentsDetails:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateAllowedOrderPaymentDetails
        - type: object
          properties:
            payments:
              type: array
              description: >-
                List of payments. Each payment must have same ID. Maximum 2
                payments allowed.
              items:
                $ref: >-
                  #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveAllowedOrderBrazilPaymentsDetails
              maxItems: 2
              minItems: 1
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveAllowedOrderPaymentDetails
      required:
        - payments
      title: InteractiveOrderBrazilPaymentsDetails
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderUPIPGPayUPaymentDetails:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateAllowedOrderPaymentDetails
        - type: object
          properties:
            id:
              type: string
              description: Unique identifier of the payment.
              minLength: 1
              pattern: '[A-Za-z0-9\-_.]{1,35}'
            beneficiary:
              $ref: >-
                #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.Beneficiary
            callbackData:
              type: array
              description: List of custom parameters corresponding to the transaction.
              items:
                type: string
                description: List of custom parameters corresponding to the transaction.
                maxLength: 255
                minLength: 1
              maxItems: 4
              minItems: 0
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveAllowedOrderPaymentDetails
      required:
        - id
      title: InteractiveOrderUPIPGPayUPaymentDetails
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderUPIPGRazorpayPaymentDetails:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateAllowedOrderPaymentDetails
        - type: object
          properties:
            id:
              type: string
              description: Unique identifier of the payment.
              minLength: 1
              pattern: '[A-Za-z0-9\-_.]{1,35}'
            beneficiary:
              $ref: >-
                #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.Beneficiary
            callbackData:
              type: object
              additionalProperties:
                type: string
              description: >-
                Object with key value pairs containing custom parameters
                corresponding to the transaction.
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveAllowedOrderPaymentDetails
      required:
        - id
      title: InteractiveOrderUPIPGRazorpayPaymentDetails
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderUPIIntentPaymentDetails:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateAllowedOrderPaymentDetails
        - type: object
          properties:
            id:
              type: string
              description: Unique identifier of the payment.
              minLength: 1
              pattern: '[A-Za-z0-9\-_.]{1,35}'
            beneficiary:
              $ref: >-
                #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.Beneficiary
            format:
              $ref: >-
                #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.UPIIntentPaymentFormat
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveAllowedOrderPaymentDetails
      required:
        - format
        - id
      title: InteractiveOrderUPIIntentPaymentDetails
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderUPILinkPaymentDetails:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.TemplateAllowedOrderPaymentDetails
        - type: object
          properties:
            id:
              type: string
              description: Unique identifier of the payment.
              minLength: 1
              pattern: '[A-Za-z0-9\-_.]{1,35}'
            beneficiary:
              $ref: >-
                #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.Beneficiary
            paymentLink:
              type: string
              description: Payment link.
              minLength: 1
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveAllowedOrderPaymentDetails
      required:
        - id
        - paymentLink
      title: InteractiveOrderUPILinkPaymentDetails
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderDetailsOrderItem:
      type: object
      description: An array of items in the order.
      properties:
        retailerId:
          type: string
          description: Product-unique identifier, as defined in catalog.
          minLength: 1
        name:
          type: string
          description: Name of the item.
          maxLength: 60
          minLength: 1
        amount:
          $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderDetailsAmount
        saleAmount:
          $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderDetailsAmount
        quantity:
          type: integer
          format: int32
          description: The number of items.
          exclusiveMinimum: 0
          minimum: 0
        originCountry:
          type: string
          description: >-
            Country of origin. Required when catalogId is not provided. It's
            supported only for UPI PayU payments.
        importerName:
          type: string
          description: >-
            Importer name. Required when catalogId is not provided. It's
            supported only for UPI PayU payments.
        importerAddress:
          $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderDetailsImporterAddress
      required:
        - amount
        - name
        - quantity
        - retailerId
      title: InteractiveOrderDetailsOrderItem
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderDetailsDescriptiveAmount:
      type: object
      properties:
        value:
          type: integer
          format: int32
          description: Value multiplied by the offset (100 for INR and BRL).
          minimum: 0
        description:
          type: string
          description: Description of the value.
          maxLength: 60
          minLength: 0
      required:
        - value
      title: InteractiveOrderDetailsDescriptiveAmount
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderDetailsDiscount:
      type: object
      description: Discount of the order.
      properties:
        amount:
          $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderDetailsDescriptiveAmount
        programName:
          type: string
          description: Discount program name.
          maxLength: 60
          minLength: 0
      required:
        - amount
      title: InteractiveOrderDetailsDiscount
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderDetailsOrderExpiration:
      type: object
      description: Expiration of the order.
      properties:
        expirationSeconds:
          type: integer
          format: int64
          description: Order expiration time in seconds, at least 360.
          minimum: 360
        description:
          type: string
          description: Text explanation of expiration.
          maxLength: 120
          minLength: 0
      required:
        - description
        - expirationSeconds
      title: InteractiveOrderDetailsOrderExpiration
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.OrderDetailsType:
      type: string
      description: >-
        A quick payment option bypassing the review step. Applicable for PG PayU
        and PG Razorpay.
      enum:
        - QUICK_PAY
      title: OrderDetailsType
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderUPIPayUPaymentStatus:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderPaymentStatus
        - type: object
          properties:
            id:
              type: string
              description: Unique identifier of the payment.
              maxLength: 25
              minLength: 1
      required:
        - id
      title: InteractiveOrderUPIPayUPaymentStatus
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderBrazilPaymentStatus:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderPaymentStatus
        - type: object
          properties:
            id:
              type: string
              description: Unique identifier of the payment.
              pattern: '[A-Za-z0-9\-_.]{1,35}'
      required:
        - id
      title: InteractiveOrderBrazilPaymentStatus
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderBrazilPixDcPaymentStatus:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderPaymentStatus
        - type: object
          properties:
            id:
              type: string
              description: Unique identifier of the payment.
              pattern: '[A-Za-z0-9\-_.]{1,35}'
      required:
        - id
      title: InteractiveOrderBrazilPixDcPaymentStatus
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderUPIPGPayUPaymentStatus:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderPaymentStatus
        - type: object
          properties:
            id:
              type: string
              description: Unique identifier of the payment.
              pattern: '[A-Za-z0-9\-_.]{1,35}'
      required:
        - id
      title: InteractiveOrderUPIPGPayUPaymentStatus
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderUPIPGRazorpayPaymentStatus:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderPaymentStatus
        - type: object
          properties:
            id:
              type: string
              description: Unique identifier of the payment.
              pattern: '[A-Za-z0-9\-_.]{1,35}'
      required:
        - id
      title: InteractiveOrderUPIPGRazorpayPaymentStatus
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderBrazilLinkPaymentStatus:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderPaymentStatus
        - type: object
          properties:
            id:
              type: string
              description: Unique identifier of the payment.
              pattern: '[A-Za-z0-9\-_.]{1,35}'
      required:
        - id
      title: InteractiveOrderBrazilLinkPaymentStatus
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderBrazilBoletoPaymentStatus:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderPaymentStatus
        - type: object
          properties:
            id:
              type: string
              description: Unique identifier of the payment.
              pattern: '[A-Za-z0-9\-_.]{1,35}'
      required:
        - id
      title: InteractiveOrderBrazilBoletoPaymentStatus
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderUPIIntentPaymentStatus:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderPaymentStatus
        - type: object
          properties:
            id:
              type: string
              description: Unique identifier of the payment.
              pattern: '[A-Za-z0-9\-_.]{1,35}'
      required:
        - id
      title: InteractiveOrderUPIIntentPaymentStatus
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderUPILinkPaymentStatus:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderPaymentStatus
        - type: object
          properties:
            id:
              type: string
              description: Unique identifier of the payment.
              pattern: '[A-Za-z0-9\-_.]{1,35}'
      required:
        - id
      title: InteractiveOrderUPILinkPaymentStatus
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.PixKeyType:
      type: string
      description: Key type to identify the pix user’s account.
      enum:
        - CPF
        - CNPJ
        - EMAIL
        - PHONE
        - EVP
      title: PixKeyType
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.PixFlowType:
      type: string
      description: Pix payment flow type.
      enum:
        - REDIRECT
        - COPYPASTE
        - APPSWITCH
      title: PixFlowType
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveAllowedOrderPaymentDetails:
      type: object
      description: Payment of the order.
      discriminator:
        propertyName: type
        mapping:
          UPI_PAYU: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderUPIPayUPaymentDetails
          BRAZIL: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderBrazilPaymentDetails
          BRAZIL_PIX_DC: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderBrazilPixDcPaymentDetails
          BRAZIL_LINK: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderBrazilLinkPaymentDetails
          BRAZIL_BOLETO: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderBrazilBoletoPaymentDetails
          BRAZIL_PAYMENTS: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderBrazilPaymentsDetails
          PG_PAYU: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderUPIPGPayUPaymentDetails
          PG_RAZORPAY: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderUPIPGRazorpayPaymentDetails
          UPI_INTENT: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderUPIIntentPaymentDetails
          UPI_LINK: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderUPILinkPaymentDetails
      properties:
        type:
          type: string
      required:
        - type
      title: InteractiveAllowedOrderPaymentDetails
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveAllowedOrderBrazilPaymentsDetails:
      type: object
      description: >-
        List of payments. Each payment must have same ID. Maximum 2 payments
        allowed.
      discriminator:
        propertyName: type
        mapping:
          BRAZIL_PIX_DC: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderBrazilPixDcPaymentDetails
          BRAZIL_BOLETO: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderBrazilBoletoPaymentDetails
          BRAZIL_LINK: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderBrazilLinkPaymentDetails
      properties:
        id:
          type: string
        type:
          type: string
      required:
        - id
        - type
      title: InteractiveAllowedOrderBrazilPaymentsDetails
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.Beneficiary:
      type: object
      description: Beneficiary of the payment.
      properties:
        name:
          type: string
          description: Beneficiary's name.
          maxLength: 200
          minLength: 0
        firstAddressLine:
          type: string
          description: First address.
          maxLength: 100
          minLength: 0
        secondAddressLine:
          type: string
          description: Second address.
          maxLength: 100
          minLength: 0
        city:
          type: string
          description: City name.
        state:
          type: string
          description: State name.
        country:
          $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.BeneficiaryCountry
        postalCode:
          type: string
          description: Zip code value.
          pattern: ^[0-9]{6}$
      required:
        - country
        - firstAddressLine
        - name
      title: Beneficiary
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.UPIIntentPaymentFormat:
      type: object
      description: Format of the payment.
      discriminator:
        propertyName: type
        mapping:
          LINK: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.UPIIntentPaymentLinkFormat
      properties:
        type:
          $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.UPIIntentPaymentFormatType
      title: UPIIntentPaymentFormat
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderDetailsImporterAddress:
      type: object
      description: >-
        Importer address. Required when catalogId is not provided. It's
        supported only for UPI PayU payments.
      properties:
        firstAddressLine:
          type: string
          description: First line of the address.
        secondAddressLine:
          type: string
          description: Second line of the address.
        city:
          type: string
          description: City.
        zoneCode:
          type: string
          description: Zone code.
        postalCode:
          type: string
          description: Postal code.
        countryCode:
          type: string
          description: Country code.
      title: InteractiveOrderDetailsImporterAddress
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderUPIPayUPaymentDetails:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveAllowedOrderPaymentDetails
        - type: object
          properties:
            id:
              type: string
              description: Unique identifier of the payment.
              maxLength: 25
              minLength: 1
            productDescription:
              type: string
              description: Brief description of products in this order.
              maxLength: 100
              minLength: 1
            customerFirstName:
              type: string
              description: Customer's first name.
              maxLength: 60
              minLength: 1
            customerLastName:
              type: string
              description: Customer's last name.
              maxLength: 20
              minLength: 0
            customerEmail:
              type: string
              format: email
              description: Customer's email.
              maxLength: 50
              minLength: 1
            callbackData:
              type: array
              description: List of custom parameters corresponding to the transaction.
              items:
                type: string
                description: List of custom parameters corresponding to the transaction.
                maxLength: 255
                minLength: 0
              maxItems: 5
              minItems: 0
      required:
        - customerEmail
        - customerFirstName
        - id
        - productDescription
      title: InteractiveOrderUPIPayUPaymentDetails
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveOrderBrazilPaymentDetails:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.InteractiveAllowedOrderPaymentDetails
        - type: object
          properties:
            id:
              type: string
              description: Unique identifier of the payment.
              pattern: '[A-Za-z0-9\-_.]{1,35}'
      required:
        - id
      title: InteractiveOrderBrazilPaymentDetails
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.BeneficiaryCountry:
      type: string
      description: Country name.
      enum:
        - INDIA
      title: BeneficiaryCountry
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.UPIIntentPaymentLinkFormat:
      type: object
      allOf:
        - $ref: >-
            #/components/schemas/f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.UPIIntentPaymentFormat
        - type: object
          properties:
            paymentLink:
              type: string
              description: Payment link.
              minLength: 1
      required:
        - paymentLink
      title: UPIIntentPaymentLinkFormat
    f30d78c250ad1209aef755ddde02bb131e1749b705985f0e9f1b007c900b98e2.UPIIntentPaymentFormatType:
      type: string
      enum:
        - LINK
      title: UPIIntentPaymentFormatType
  responses:
    ApiException401:
      description: Unauthorized
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiException'
          example:
            requestError:
              serviceException:
                messageId: UNAUTHORIZED
                text: Unauthorized
        application/xml:
          schema:
            $ref: '#/components/schemas/ApiException'
          example: |
            <?xml version="1.0" encoding="UTF-8"?><ApiException>
              <requestError>
                <serviceException>
                  <messageId>UNAUTHORIZED</messageId>
                  <text>Unauthorized</text>
                </serviceException>
              </requestError>
            </ApiException>
    ApiException403:
      description: Forbidden
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiException'
          example:
            requestError:
              serviceException:
                messageId: FORBIDDEN
                text: Forbidden
        application/xml:
          schema:
            $ref: '#/components/schemas/ApiException'
          example: |
            <?xml version="1.0" encoding="UTF-8"?><ApiException>
              <requestError>
                <serviceException>
                  <messageId>FORBIDDEN</messageId>
                  <text>Forbidden</text>
                </serviceException>
              </requestError>
            </ApiException>
    ApiException429:
      description: Too Many Requests
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiException'
          example:
            requestError:
              serviceException:
                messageId: TOO_MANY_REQUESTS
                text: Too many requests
        application/xml:
          schema:
            $ref: '#/components/schemas/ApiException'
          example: |
            <?xml version="1.0" encoding="UTF-8"?><ApiException>
              <requestError>
                <serviceException>
                  <messageId>TOO_MANY_REQUESTS</messageId>
                  <text>Too many requests</text>
                </serviceException>
              </requestError>
            </ApiException>
    ApiException500:
      description: Internal Server Error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiException'
          example:
            requestError:
              serviceException:
                messageId: GENERAL_ERROR
                text: Something went wrong. Please contact support.
        application/xml:
          schema:
            $ref: '#/components/schemas/ApiException'
          example: |
            <?xml version="1.0" encoding="UTF-8"?><ApiException>
              <requestError>
                <serviceException>
                  <messageId>GENERAL_ERROR</messageId>
                  <text>Something went wrong. Please contact support.</text>
                </serviceException>
              </requestError>
            </ApiException>
  securitySchemes:
    APIKeyHeader:
      type: apiKey
      description: >
        This is the most secure authorization type and the one with the most
        flexibility.


        API keys can be generated by calling the dedicated API method.
        Furthermore, API keys can have a limited scope and cover only some API
        methods. Lastly, they can

        be revoked at any time. This range of possibilities makes API keys well
        suited for separating the API access rights across multiple applications
        or use cases.

        Finally, the loss of an API key is easily manageable.


        You can manage your API keys from
        [GUI](https://portal.phonovation.com/settings/accounts/api-keys), or
        programmatically

        with [dedicated API](#platform-&-connectivity/settings).


        API key Authorization header example:


        ```shell

        Authorization: App
        003026bbc133714df1834b8638bb496e-8f4b3d9a-e931-478d-a994-28a725159ab9

        ```
      name: Authorization
      in: header
      x-default: 'App '

````

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