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

# Send a marketing message

> **Protocols:** Meta Cloud API

**Required scope:** `messages:write`

Requires an explicit STRICT product policy. The connected Meta account must independently meet Marketing Messages eligibility and terms requirements. A simulated Number cannot send this request.

Send a marketing template through a connected Official API Number with a credential
that has `messages:write`. Meta must allow that account to use its Marketing
Messages API and accept the required terms. This request does not enroll an
account or accept terms for it. A simulated Number cannot send it.

Set `product_policy` to `STRICT` explicitly. The endpoint rejects a missing
policy or `CLOUD_API_FALLBACK`. Include the recipient, a template name, and a
deterministic language code:

```json theme={null}
{
  "messaging_product": "whatsapp",
  "recipient_type": "individual",
  "to": "15551234567",
  "type": "template",
  "template": {
    "name": "YOUR_APPROVED_TEMPLATE",
    "language": { "policy": "deterministic", "code": "en_US" }
  },
  "product_policy": "STRICT"
}
```

When you provide `template.components`, use the shapes in the API reference.
Carousel components accept 1 to 10 cards with zero-based `card_index` values from 0 to 9.
For a date-time body parameter, include `fallback_value`; you may also send
`year`, `month`, `day_of_month`, `hour`, `minute`, `day_of_week`, and `calendar`
as structured values supported by Meta.
For a limited-time offer template, send one `limited_time_offer` component
with one `limited_time_offer` parameter whose `expiration_time_ms` is the
offer's expiration as a Unix timestamp in milliseconds:

```json theme={null}
{
  "type": "limited_time_offer",
  "parameters": [
    {
      "type": "limited_time_offer",
      "limited_time_offer": { "expiration_time_ms": 1767225600000 }
    }
  ]
}
```

Buttons accept the `quick_reply`, `url`, `catalog`, and `copy_code` subtypes.
The endpoint rejects other button subtypes, such as Flow or multi-product
buttons.

Send the body as `Content-Type: application/json`. The endpoint validates the
whole request before sending it to Meta. A `400` response names the field that
failed validation. For a component, it reports the field within the component
matching your `type` and `sub_type`, or reports an unsupported component when
none matches.

Meta returns the send response and remains the authority for account
eligibility, template approval, message status, and any charge. This endpoint
does not switch a Campaign send to Marketing Messages. After an uncertain
response, reconcile the message with Meta and your status webhooks before
deciding whether to send again. Do not replay the request blindly.

Set `message_activity_sharing` only after establishing the required permission
for that recipient and account. Direct Graph requests do not perform Campaign
audience suppression and opt-out checks; use the Campaign workflow when those
controls are required.

[Read the WABA's Marketing Messages status](/api-reference/graph/marketing/get-marketing-status?playground=open)
to see the raw fields Meta exposes. Those fields do not establish eligibility
or accepted terms for a send.


## OpenAPI

````yaml api-reference/features/campaigns-graph.json POST /graph/whatsapp/{version}/{phoneNumberId}/marketing_messages
openapi: 3.0.3
info:
  title: Campaigns Polymorfa Graph API methods
  version: 1.0.0
  description: Task-focused campaigns methods exposed by the Polymorfa Graph API.
servers: []
security: []
paths:
  /graph/whatsapp/{version}/{phoneNumberId}/marketing_messages:
    post:
      tags:
        - Marketing
      summary: Send a marketing message
      description: >-
        **Protocols:** Meta Cloud API


        **Required scope:** `messages:write`


        Requires an explicit STRICT product policy. The connected Meta account
        must independently meet Marketing Messages eligibility and terms
        requirements. A simulated Number cannot send this request.
      operationId: graphMarketingSend
      parameters:
        - schema:
            type: string
            example: v26.0
          required: true
          name: version
          in: path
          description: Specifies version for this path parameter.
        - schema:
            type: string
            example: '123456789012345'
          required: true
          name: phoneNumberId
          in: path
          description: Identifier for the phone number.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/graph__GraphMarketingSendRequest'
      responses:
        '200':
          description: Meta's response to the marketing message request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/graph__GraphMarketingSendResponse'
          headers:
            X-RateLimit-Limit:
              $ref: '#/components/headers/graph__X-RateLimit-Limit'
            X-RateLimit-Remaining:
              $ref: '#/components/headers/graph__X-RateLimit-Remaining'
            X-RateLimit-Reset:
              $ref: '#/components/headers/graph__X-RateLimit-Reset'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/graph__GraphError'
          headers:
            X-RateLimit-Limit:
              $ref: '#/components/headers/graph__X-RateLimit-Limit'
            X-RateLimit-Remaining:
              $ref: '#/components/headers/graph__X-RateLimit-Remaining'
            X-RateLimit-Reset:
              $ref: '#/components/headers/graph__X-RateLimit-Reset'
        '401':
          description: Unauthenticated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/graph__GraphError'
          headers:
            X-RateLimit-Limit:
              $ref: '#/components/headers/graph__X-RateLimit-Limit'
            X-RateLimit-Remaining:
              $ref: '#/components/headers/graph__X-RateLimit-Remaining'
            X-RateLimit-Reset:
              $ref: '#/components/headers/graph__X-RateLimit-Reset'
        '403':
          description: Permission error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/graph__GraphError'
          headers:
            X-RateLimit-Limit:
              $ref: '#/components/headers/graph__X-RateLimit-Limit'
            X-RateLimit-Remaining:
              $ref: '#/components/headers/graph__X-RateLimit-Remaining'
            X-RateLimit-Reset:
              $ref: '#/components/headers/graph__X-RateLimit-Reset'
        '404':
          description: Object does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/graph__GraphError'
          headers:
            X-RateLimit-Limit:
              $ref: '#/components/headers/graph__X-RateLimit-Limit'
            X-RateLimit-Remaining:
              $ref: '#/components/headers/graph__X-RateLimit-Remaining'
            X-RateLimit-Reset:
              $ref: '#/components/headers/graph__X-RateLimit-Reset'
        '429':
          description: Rate limited
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/graph__GraphError'
          headers:
            X-RateLimit-Limit:
              $ref: '#/components/headers/graph__X-RateLimit-Limit'
            X-RateLimit-Remaining:
              $ref: '#/components/headers/graph__X-RateLimit-Remaining'
            X-RateLimit-Reset:
              $ref: '#/components/headers/graph__X-RateLimit-Reset'
        '500':
          description: Internal error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/graph__GraphError'
          headers:
            X-RateLimit-Limit:
              $ref: '#/components/headers/graph__X-RateLimit-Limit'
            X-RateLimit-Remaining:
              $ref: '#/components/headers/graph__X-RateLimit-Remaining'
            X-RateLimit-Reset:
              $ref: '#/components/headers/graph__X-RateLimit-Reset'
      security:
        - graph__BearerAuth: []
      servers:
        - url: https://api.polymorfa.com
components:
  schemas:
    graph__GraphMarketingSendRequest:
      type: object
      properties:
        messaging_product:
          type: string
          enum:
            - whatsapp
          description: |-
            Messaging product associated with this Graph API object.

            <!-- polymorfa-input-table -->
            **Allowed values**
            | Value | Meaning |
            | --- | --- |
            | `whatsapp` | Whatsapp. |
        recipient_type:
          type: string
          enum:
            - individual
          description: |-
            Category assigned to recipient.

            <!-- polymorfa-input-table -->
            **Allowed values**
            | Value | Meaning |
            | --- | --- |
            | `individual` | Individual. |
        to:
          type: string
          minLength: 1
          description: |-
            Specifies to for this graph graph marketing send request.

            <!-- polymorfa-input-table -->
            **Value constraints**
            | Constraint | Accepted input |
            | --- | --- |
            | String length | At least `1` characters |
        type:
          type: string
          enum:
            - template
          description: |-
            Type discriminator for this object.

            <!-- polymorfa-input-table -->
            **Allowed values**
            | Value | Meaning |
            | --- | --- |
            | `template` | Template. |
        template:
          type: object
          properties:
            name:
              type: string
              minLength: 1
              description: |-
                Human-readable name for this resource.

                <!-- polymorfa-input-table -->
                **Value constraints**
                | Constraint | Accepted input |
                | --- | --- |
                | String length | At least `1` characters |
            language:
              type: object
              properties:
                policy:
                  type: string
                  enum:
                    - deterministic
                  description: |-
                    Specifies policy for this language.

                    <!-- polymorfa-input-table -->
                    **Allowed values**
                    | Value | Meaning |
                    | --- | --- |
                    | `deterministic` | Deterministic. |
                code:
                  type: string
                  minLength: 1
                  description: |-
                    Stable machine-readable code for this result.

                    <!-- polymorfa-input-table -->
                    **Value constraints**
                    | Constraint | Accepted input |
                    | --- | --- |
                    | String length | At least `1` characters |
              required:
                - policy
                - code
              additionalProperties: false
              description: Language or locale code used for this content.
            components:
              type: array
              items:
                anyOf:
                  - type: object
                    properties:
                      type:
                        type: string
                        enum:
                          - header
                        description: |-
                          Type discriminator for this object.

                          <!-- polymorfa-input-table -->
                          **Allowed values**
                          | Value | Meaning |
                          | --- | --- |
                          | `header` | Header. |
                      parameters:
                        type: array
                        items:
                          oneOf:
                            - type: object
                              properties:
                                type:
                                  type: string
                                  enum:
                                    - text
                                  description: |-
                                    Type discriminator for this object.

                                    <!-- polymorfa-input-table -->
                                    **Allowed values**
                                    | Value | Meaning |
                                    | --- | --- |
                                    | `text` | Text. |
                                text:
                                  type: string
                                  maxLength: 32768
                                  description: >-
                                    Text content carried by this object.


                                    <!-- polymorfa-input-table -->

                                    **Value constraints**

                                    | Constraint | Accepted input |

                                    | --- | --- |

                                    | String length | At most `32768` characters
                                    |
                                parameter_name:
                                  type: string
                                  description: >-
                                    Human-readable parameter name for this one
                                    of.
                              required:
                                - type
                                - text
                              additionalProperties: false
                            - type: object
                              properties:
                                type:
                                  type: string
                                  enum:
                                    - location
                                  description: |-
                                    Type discriminator for this object.

                                    <!-- polymorfa-input-table -->
                                    **Allowed values**
                                    | Value | Meaning |
                                    | --- | --- |
                                    | `location` | Location. |
                                location:
                                  type: object
                                  properties:
                                    latitude:
                                      type: number
                                      description: Latitude in decimal degrees.
                                    longitude:
                                      type: number
                                      description: Longitude in decimal degrees.
                                    name:
                                      type: string
                                      description: Human-readable name for this resource.
                                    address:
                                      type: string
                                      description: Specifies address for this location.
                                  required:
                                    - latitude
                                    - longitude
                                  additionalProperties: false
                                  description: Structured location values for this one of.
                              required:
                                - type
                                - location
                              additionalProperties: false
                            - type: object
                              properties:
                                type:
                                  type: string
                                  enum:
                                    - image
                                  description: |-
                                    Type discriminator for this object.

                                    <!-- polymorfa-input-table -->
                                    **Allowed values**
                                    | Value | Meaning |
                                    | --- | --- |
                                    | `image` | Image. |
                                image:
                                  anyOf:
                                    - type: object
                                      properties:
                                        id:
                                          type: string
                                          minLength: 1
                                          description: >-
                                            Identifier for this resource.


                                            <!-- polymorfa-input-table -->

                                            **Value constraints**

                                            | Constraint | Accepted input |

                                            | --- | --- |

                                            | String length | At least `1`
                                            characters |
                                      required:
                                        - id
                                      additionalProperties: false
                                    - type: object
                                      properties:
                                        link:
                                          type: string
                                          format: uri
                                          description: |-
                                            Link associated with this resource.

                                            <!-- polymorfa-input-table -->
                                            **Value constraints**
                                            | Constraint | Accepted input |
                                            | --- | --- |
                                            | Format | `uri` |
                                      required:
                                        - link
                                      additionalProperties: false
                                  description: >-
                                    Image attached to or representing this
                                    resource.


                                    <!-- polymorfa-input-table -->

                                    **Accepted alternatives**

                                    | Alternative | Accepted input |

                                    | --- | --- |

                                    | Alternative 1 | Type: `object`; Required
                                    fields: `id` |

                                    | Alternative 2 | Type: `object`; Required
                                    fields: `link` |
                              required:
                                - type
                                - image
                              additionalProperties: false
                            - type: object
                              properties:
                                type:
                                  type: string
                                  enum:
                                    - video
                                  description: |-
                                    Type discriminator for this object.

                                    <!-- polymorfa-input-table -->
                                    **Allowed values**
                                    | Value | Meaning |
                                    | --- | --- |
                                    | `video` | Video. |
                                video:
                                  anyOf:
                                    - type: object
                                      properties:
                                        id:
                                          type: string
                                          minLength: 1
                                          description: >-
                                            Identifier for this resource.


                                            <!-- polymorfa-input-table -->

                                            **Value constraints**

                                            | Constraint | Accepted input |

                                            | --- | --- |

                                            | String length | At least `1`
                                            characters |
                                      required:
                                        - id
                                      additionalProperties: false
                                    - type: object
                                      properties:
                                        link:
                                          type: string
                                          format: uri
                                          description: |-
                                            Link associated with this resource.

                                            <!-- polymorfa-input-table -->
                                            **Value constraints**
                                            | Constraint | Accepted input |
                                            | --- | --- |
                                            | Format | `uri` |
                                      required:
                                        - link
                                      additionalProperties: false
                                  description: >-
                                    Specifies video for this one of.


                                    <!-- polymorfa-input-table -->

                                    **Accepted alternatives**

                                    | Alternative | Accepted input |

                                    | --- | --- |

                                    | Alternative 1 | Type: `object`; Required
                                    fields: `id` |

                                    | Alternative 2 | Type: `object`; Required
                                    fields: `link` |
                              required:
                                - type
                                - video
                              additionalProperties: false
                            - type: object
                              properties:
                                type:
                                  type: string
                                  enum:
                                    - document
                                  description: |-
                                    Type discriminator for this object.

                                    <!-- polymorfa-input-table -->
                                    **Allowed values**
                                    | Value | Meaning |
                                    | --- | --- |
                                    | `document` | Document. |
                                document:
                                  anyOf:
                                    - type: object
                                      properties:
                                        id:
                                          type: string
                                          minLength: 1
                                          description: >-
                                            Identifier for this resource.


                                            <!-- polymorfa-input-table -->

                                            **Value constraints**

                                            | Constraint | Accepted input |

                                            | --- | --- |

                                            | String length | At least `1`
                                            characters |
                                        filename:
                                          type: string
                                          description: >-
                                            Filename presented for the media
                                            attachment.
                                      required:
                                        - id
                                      additionalProperties: false
                                    - type: object
                                      properties:
                                        link:
                                          type: string
                                          format: uri
                                          description: |-
                                            Link associated with this resource.

                                            <!-- polymorfa-input-table -->
                                            **Value constraints**
                                            | Constraint | Accepted input |
                                            | --- | --- |
                                            | Format | `uri` |
                                        filename:
                                          type: string
                                          description: >-
                                            Filename presented for the media
                                            attachment.
                                      required:
                                        - link
                                      additionalProperties: false
                                  description: >-
                                    Specifies document for this one of.


                                    <!-- polymorfa-input-table -->

                                    **Accepted alternatives**

                                    | Alternative | Accepted input |

                                    | --- | --- |

                                    | Alternative 1 | Type: `object`; Required
                                    fields: `id` |

                                    | Alternative 2 | Type: `object`; Required
                                    fields: `link` |
                              required:
                                - type
                                - document
                              additionalProperties: false
                        minItems: 1
                        description: >-
                          Parameters associated with this any of.


                          <!-- polymorfa-input-table -->

                          **Accepted alternatives**

                          | Item alternative | Accepted input |

                          | --- | --- |

                          | Item alternative 1 | Type: `object`; Field `type`:
                          `text`; Required fields: `type`, `text` |

                          | Item alternative 2 | Type: `object`; Field `type`:
                          `location`; Required fields: `type`, `location` |

                          | Item alternative 3 | Type: `object`; Field `type`:
                          `image`; Required fields: `type`, `image` |

                          | Item alternative 4 | Type: `object`; Field `type`:
                          `video`; Required fields: `type`, `video` |

                          | Item alternative 5 | Type: `object`; Field `type`:
                          `document`; Required fields: `type`, `document` |


                          **Value constraints**

                          | Constraint | Accepted input |

                          | --- | --- |

                          | Array size | At least `1` items |
                    required:
                      - type
                      - parameters
                    additionalProperties: false
                  - type: object
                    properties:
                      type:
                        type: string
                        enum:
                          - body
                        description: |-
                          Type discriminator for this object.

                          <!-- polymorfa-input-table -->
                          **Allowed values**
                          | Value | Meaning |
                          | --- | --- |
                          | `body` | Body. |
                      parameters:
                        type: array
                        items:
                          oneOf:
                            - type: object
                              properties:
                                type:
                                  type: string
                                  enum:
                                    - text
                                  description: |-
                                    Type discriminator for this object.

                                    <!-- polymorfa-input-table -->
                                    **Allowed values**
                                    | Value | Meaning |
                                    | --- | --- |
                                    | `text` | Text. |
                                text:
                                  type: string
                                  maxLength: 32768
                                  description: >-
                                    Text content carried by this object.


                                    <!-- polymorfa-input-table -->

                                    **Value constraints**

                                    | Constraint | Accepted input |

                                    | --- | --- |

                                    | String length | At most `32768` characters
                                    |
                                parameter_name:
                                  type: string
                                  description: >-
                                    Human-readable parameter name for this one
                                    of.
                              required:
                                - type
                                - text
                              additionalProperties: false
                            - type: object
                              properties:
                                type:
                                  type: string
                                  enum:
                                    - currency
                                  description: |-
                                    Type discriminator for this object.

                                    <!-- polymorfa-input-table -->
                                    **Allowed values**
                                    | Value | Meaning |
                                    | --- | --- |
                                    | `currency` | Currency. |
                                currency:
                                  type: object
                                  properties:
                                    fallback_value:
                                      type: string
                                      description: >-
                                        Specifies fallback value for this
                                        currency.
                                    code:
                                      type: string
                                      description: >-
                                        Stable machine-readable code for this
                                        result.
                                    amount_1000:
                                      type: integer
                                      description: Specifies amount 1000 for this currency.
                                  required:
                                    - fallback_value
                                    - code
                                    - amount_1000
                                  additionalProperties: false
                                  description: ISO 4217 currency code.
                              required:
                                - type
                                - currency
                              additionalProperties: false
                            - type: object
                              properties:
                                type:
                                  type: string
                                  enum:
                                    - date_time
                                  description: |-
                                    Type discriminator for this object.

                                    <!-- polymorfa-input-table -->
                                    **Allowed values**
                                    | Value | Meaning |
                                    | --- | --- |
                                    | `date_time` | Date time. |
                                date_time:
                                  type: object
                                  properties:
                                    fallback_value:
                                      type: string
                                      description: >-
                                        Specifies fallback value for this date
                                        time.
                                    year:
                                      type: integer
                                      description: Specifies year for this date time.
                                    month:
                                      type: integer
                                      description: Specifies month for this date time.
                                    day_of_month:
                                      type: integer
                                      description: >-
                                        Specifies day of month for this date
                                        time.
                                    hour:
                                      type: integer
                                      description: Specifies hour for this date time.
                                    minute:
                                      type: integer
                                      description: Specifies minute for this date time.
                                    day_of_week:
                                      type: integer
                                      description: >-
                                        Specifies day of week for this date
                                        time.
                                    calendar:
                                      type: string
                                      description: Specifies calendar for this date time.
                                  required:
                                    - fallback_value
                                  additionalProperties: false
                                  description: Structured date time values for this one of.
                              required:
                                - type
                                - date_time
                              additionalProperties: false
                        description: >-
                          Parameters associated with this any of.


                          <!-- polymorfa-input-table -->

                          **Accepted alternatives**

                          | Item alternative | Accepted input |

                          | --- | --- |

                          | Item alternative 1 | Type: `object`; Field `type`:
                          `text`; Required fields: `type`, `text` |

                          | Item alternative 2 | Type: `object`; Field `type`:
                          `currency`; Required fields: `type`, `currency` |

                          | Item alternative 3 | Type: `object`; Field `type`:
                          `date_time`; Required fields: `type`, `date_time` |
                    required:
                      - type
                      - parameters
                    additionalProperties: false
                  - type: object
                    properties:
                      type:
                        type: string
                        enum:
                          - button
                        description: |-
                          Type discriminator for this object.

                          <!-- polymorfa-input-table -->
                          **Allowed values**
                          | Value | Meaning |
                          | --- | --- |
                          | `button` | Button. |
                      sub_type:
                        type: string
                        enum:
                          - quick_reply
                        description: |-
                          Category assigned to sub.

                          <!-- polymorfa-input-table -->
                          **Allowed values**
                          | Value | Meaning |
                          | --- | --- |
                          | `quick_reply` | Quick reply. |
                      index:
                        anyOf:
                          - type: string
                            enum:
                              - '0'
                              - '1'
                              - '2'
                              - '3'
                              - '4'
                              - '5'
                              - '6'
                              - '7'
                              - '8'
                              - '9'
                          - type: integer
                            minimum: 0
                            maximum: 9
                        description: >-
                          Specifies index for this any of.


                          <!-- polymorfa-input-table -->

                          **Accepted alternatives**

                          | Alternative | Accepted input |

                          | --- | --- |

                          | Alternative 1 | Type: `string`; Value `0` or `1` or
                          `2` or `3` or `4` or `5` or `6` or `7` or `8` or `9` |

                          | Alternative 2 | Type: `integer`; Numeric value: `0`
                          through `9` (inclusive) |
                      parameters:
                        type: array
                        items:
                          type: object
                          properties:
                            type:
                              type: string
                              enum:
                                - payload
                              description: |-
                                Type discriminator for this object.

                                <!-- polymorfa-input-table -->
                                **Allowed values**
                                | Value | Meaning |
                                | --- | --- |
                                | `payload` | Payload. |
                            payload:
                              type: string
                              description: >-
                                Structured payload carried by this event or
                                operation.
                          required:
                            - type
                            - payload
                          additionalProperties: false
                        minItems: 1
                        description: |-
                          Parameters associated with this any of.

                          <!-- polymorfa-input-table -->
                          **Value constraints**
                          | Constraint | Accepted input |
                          | --- | --- |
                          | Array size | At least `1` items |
                    required:
                      - type
                      - sub_type
                      - index
                      - parameters
                    additionalProperties: false
                  - type: object
                    properties:
                      type:
                        type: string
                        enum:
                          - button
                        description: |-
                          Type discriminator for this object.

                          <!-- polymorfa-input-table -->
                          **Allowed values**
                          | Value | Meaning |
                          | --- | --- |
                          | `button` | Button. |
                      sub_type:
                        type: string
                        enum:
                          - url
                        description: |-
                          Category assigned to sub.

                          <!-- polymorfa-input-table -->
                          **Allowed values**
                          | Value | Meaning |
                          | --- | --- |
                          | `url` | Url. |
                      index:
                        anyOf:
                          - type: string
                            enum:
                              - '0'
                              - '1'
                              - '2'
                              - '3'
                              - '4'
                              - '5'
                              - '6'
                              - '7'
                              - '8'
                              - '9'
                          - type: integer
                            minimum: 0
                            maximum: 9
                        description: >-
                          Specifies index for this any of.


                          <!-- polymorfa-input-table -->

                          **Accepted alternatives**

                          | Alternative | Accepted input |

                          | --- | --- |

                          | Alternative 1 | Type: `string`; Value `0` or `1` or
                          `2` or `3` or `4` or `5` or `6` or `7` or `8` or `9` |

                          | Alternative 2 | Type: `integer`; Numeric value: `0`
                          through `9` (inclusive) |
                      parameters:
                        type: array
                        items:
                          type: object
                          properties:
                            type:
                              type: string
                              enum:
                                - text
                              description: |-
                                Type discriminator for this object.

                                <!-- polymorfa-input-table -->
                                **Allowed values**
                                | Value | Meaning |
                                | --- | --- |
                                | `text` | Text. |
                            text:
                              type: string
                              description: Text content carried by this object.
                          required:
                            - type
                            - text
                          additionalProperties: false
                        minItems: 1
                        description: |-
                          Parameters associated with this any of.

                          <!-- polymorfa-input-table -->
                          **Value constraints**
                          | Constraint | Accepted input |
                          | --- | --- |
                          | Array size | At least `1` items |
                    required:
                      - type
                      - sub_type
                      - index
                      - parameters
                    additionalProperties: false
                  - type: object
                    properties:
                      type:
                        type: string
                        enum:
                          - button
                        description: |-
                          Type discriminator for this object.

                          <!-- polymorfa-input-table -->
                          **Allowed values**
                          | Value | Meaning |
                          | --- | --- |
                          | `button` | Button. |
                      sub_type:
                        type: string
                        enum:
                          - catalog
                          - CATALOG
                        description: |-
                          Category assigned to sub.

                          <!-- polymorfa-input-table -->
                          **Allowed values**
                          | Value | Meaning |
                          | --- | --- |
                          | `catalog` | Catalog. |
                          | `CATALOG` | Catalog. |
                      index:
                        anyOf:
                          - type: string
                            enum:
                              - '0'
                              - '1'
                              - '2'
                              - '3'
                              - '4'
                              - '5'
                              - '6'
                              - '7'
                              - '8'
                              - '9'
                          - type: integer
                            minimum: 0
                            maximum: 9
                        description: >-
                          Specifies index for this any of.


                          <!-- polymorfa-input-table -->

                          **Accepted alternatives**

                          | Alternative | Accepted input |

                          | --- | --- |

                          | Alternative 1 | Type: `string`; Value `0` or `1` or
                          `2` or `3` or `4` or `5` or `6` or `7` or `8` or `9` |

                          | Alternative 2 | Type: `integer`; Numeric value: `0`
                          through `9` (inclusive) |
                      parameters:
                        type: array
                        items:
                          type: object
                          properties:
                            type:
                              type: string
                              enum:
                                - action
                              description: |-
                                Type discriminator for this object.

                                <!-- polymorfa-input-table -->
                                **Allowed values**
                                | Value | Meaning |
                                | --- | --- |
                                | `action` | Action. |
                            action:
                              type: object
                              properties:
                                thumbnail_product_retailer_id:
                                  type: string
                                  minLength: 1
                                  description: >-
                                    Identifier for the thumbnail product
                                    retailer.


                                    <!-- polymorfa-input-table -->

                                    **Value constraints**

                                    | Constraint | Accepted input |

                                    | --- | --- |

                                    | String length | At least `1` characters |
                              required:
                                - thumbnail_product_retailer_id
                              additionalProperties: false
                              description: Action represented by this parameter.
                          required:
                            - type
                            - action
                          additionalProperties: false
                        minItems: 1
                        description: |-
                          Parameters associated with this any of.

                          <!-- polymorfa-input-table -->
                          **Value constraints**
                          | Constraint | Accepted input |
                          | --- | --- |
                          | Array size | At least `1` items |
                    required:
                      - type
                      - sub_type
                      - index
                      - parameters
                    additionalProperties: false
                  - type: object
                    properties:
                      type:
                        type: string
                        enum:
                          - button
                        description: |-
                          Type discriminator for this object.

                          <!-- polymorfa-input-table -->
                          **Allowed values**
                          | Value | Meaning |
                          | --- | --- |
                          | `button` | Button. |
                      sub_type:
                        type: string
                        enum:
                          - copy_code
                        description: |-
                          Category assigned to sub.

                          <!-- polymorfa-input-table -->
                          **Allowed values**
                          | Value | Meaning |
                          | --- | --- |
                          | `copy_code` | Copy code. |
                      index:
                        anyOf:
                          - type: string
                            enum:
                              - '0'
                              - '1'
                              - '2'
                              - '3'
                              - '4'
                              - '5'
                              - '6'
                              - '7'
                              - '8'
                              - '9'
                          - type: integer
                            minimum: 0
                            maximum: 9
                        description: >-
                          Specifies index for this any of.


                          <!-- polymorfa-input-table -->

                          **Accepted alternatives**

                          | Alternative | Accepted input |

                          | --- | --- |

                          | Alternative 1 | Type: `string`; Value `0` or `1` or
                          `2` or `3` or `4` or `5` or `6` or `7` or `8` or `9` |

                          | Alternative 2 | Type: `integer`; Numeric value: `0`
                          through `9` (inclusive) |
                      parameters:
                        type: array
                        items:
                          type: object
                          properties:
                            type:
                              type: string
                              enum:
                                - coupon_code
                              description: |-
                                Type discriminator for this object.

                                <!-- polymorfa-input-table -->
                                **Allowed values**
                                | Value | Meaning |
                                | --- | --- |
                                | `coupon_code` | Coupon code. |
                            coupon_code:
                              type: string
                              description: Machine-readable coupon code for this parameter.
                          required:
                            - type
                            - coupon_code
                          additionalProperties: false
                        minItems: 1
                        description: |-
                          Parameters associated with this any of.

                          <!-- polymorfa-input-table -->
                          **Value constraints**
                          | Constraint | Accepted input |
                          | --- | --- |
                          | Array size | At least `1` items |
                    required:
                      - type
                      - sub_type
                      - index
                      - parameters
                    additionalProperties: false
                  - type: object
                    properties:
                      type:
                        type: string
                        enum:
                          - limited_time_offer
                        description: |-
                          Type discriminator for this object.

                          <!-- polymorfa-input-table -->
                          **Allowed values**
                          | Value | Meaning |
                          | --- | --- |
                          | `limited_time_offer` | Limited time offer. |
                      parameters:
                        type: array
                        items:
                          type: object
                          properties:
                            type:
                              type: string
                              enum:
                                - limited_time_offer
                              description: |-
                                Type discriminator for this object.

                                <!-- polymorfa-input-table -->
                                **Allowed values**
                                | Value | Meaning |
                                | --- | --- |
                                | `limited_time_offer` | Limited time offer. |
                            limited_time_offer:
                              type: object
                              properties:
                                expiration_time_ms:
                                  type: integer
                                  minimum: 0
                                  description: >-
                                    Offer expiration as a Unix timestamp in
                                    milliseconds.


                                    <!-- polymorfa-input-table -->

                                    **Value constraints**

                                    | Constraint | Accepted input |

                                    | --- | --- |

                                    | Numeric value | `0` or greater |
                              required:
                                - expiration_time_ms
                              additionalProperties: false
                              description: Limited-time offer values for this parameter.
                          required:
                            - type
                            - limited_time_offer
                          additionalProperties: false
                        minItems: 1
                        maxItems: 1
                        description: |-
                          Parameters associated with this any of.

                          <!-- polymorfa-input-table -->
                          **Value constraints**
                          | Constraint | Accepted input |
                          | --- | --- |
                          | Array size | `1` through `1` items |
                    required:
                      - type
                      - parameters
                    additionalProperties: false
                  - type: object
                    properties:
                      type:
                        type: string
                        enum:
                          - carousel
                        description: |-
                          Type discriminator for this object.

                          <!-- polymorfa-input-table -->
                          **Allowed values**
                          | Value | Meaning |
                          | --- | --- |
                          | `carousel` | Carousel. |
                      cards:
                        type: array
                        items:
                          type: object
                          properties:
                            card_index:
                              type: integer
                              minimum: 0
                              maximum: 9
                              description: |-
                                Specifies card index for this card.

                                <!-- polymorfa-input-table -->
                                **Value constraints**
                                | Constraint | Accepted input |
                                | --- | --- |
                                | Numeric value | `0` through `9` (inclusive) |
                            components:
                              type: array
                              items:
                                anyOf:
                                  - type: object
                                    properties:
                                      type:
                                        type: string
                                        enum:
                                          - header
                                        description: |-
                                          Type discriminator for this object.

                                          <!-- polymorfa-input-table -->
                                          **Allowed values**
                                          | Value | Meaning |
                                          | --- | --- |
                                          | `header` | Header. |
                                      parameters:
                                        type: array
                                        items:
                                          oneOf:
                                            - type: object
                                              properties:
                                                type:
                                                  type: string
                                                  enum:
                                                    - text
                                                  description: |-
                                                    Type discriminator for this object.

                                                    <!-- polymorfa-input-table -->
                                                    **Allowed values**
                                                    | Value | Meaning |
                                                    | --- | --- |
                                                    | `text` | Text. |
                                                text:
                                                  type: string
                                                  maxLength: 32768
                                                  description: >-
                                                    Text content carried by this object.


                                                    <!-- polymorfa-input-table -->

                                                    **Value constraints**

                                                    | Constraint | Accepted input |

                                                    | --- | --- |

                                                    | String length | At most `32768`
                                                    characters |
                                                parameter_name:
                                                  type: string
                                                  description: >-
                                                    Human-readable parameter name for this
                                                    one of.
                                              required:
                                                - type
                                                - text
                                              additionalProperties: false
                                            - type: object
                                              properties:
                                                type:
                                                  type: string
                                                  enum:
                                                    - location
                                                  description: |-
                                                    Type discriminator for this object.

                                                    <!-- polymorfa-input-table -->
                                                    **Allowed values**
                                                    | Value | Meaning |
                                                    | --- | --- |
                                                    | `location` | Location. |
                                                location:
                                                  type: object
                                                  properties:
                                                    latitude:
                                                      type: number
                                                      description: Latitude in decimal degrees.
                                                    longitude:
                                                      type: number
                                                      description: Longitude in decimal degrees.
                                                    name:
                                                      type: string
                                                      description: Human-readable name for this resource.
                                                    address:
                                                      type: string
                                                      description: Specifies address for this location.
                                                  required:
                                                    - latitude
                                                    - longitude
                                                  additionalProperties: false
                                                  description: >-
                                                    Structured location values for this one
                                                    of.
                                              required:
                                                - type
                                                - location
                                              additionalProperties: false
                                            - type: object
                                              properties:
                                                type:
                                                  type: string
                                                  enum:
                                                    - image
                                                  description: |-
                                                    Type discriminator for this object.

                                                    <!-- polymorfa-input-table -->
                                                    **Allowed values**
                                                    | Value | Meaning |
                                                    | --- | --- |
                                                    | `image` | Image. |
                                                image:
                                                  anyOf:
                                                    - type: object
                                                      properties:
                                                        id:
                                                          type: string
                                                          minLength: 1
                                                          description: >-
                                                            Identifier for this resource.


                                                            <!-- polymorfa-input-table -->

                                                            **Value constraints**

                                                            | Constraint | Accepted input |

                                                            | --- | --- |

                                                            | String length | At least `1`
                                                            characters |
                                                      required:
                                                        - id
                                                      additionalProperties: false
                                                    - type: object
                                                      properties:
                                                        link:
                                                          type: string
                                                          format: uri
                                                          description: |-
                                                            Link associated with this resource.

                                                            <!-- polymorfa-input-table -->
                                                            **Value constraints**
                                                            | Constraint | Accepted input |
                                                            | --- | --- |
                                                            | Format | `uri` |
                                                      required:
                                                        - link
                                                      additionalProperties: false
                                                  description: >-
                                                    Image attached to or representing this
                                                    resource.


                                                    <!-- polymorfa-input-table -->

                                                    **Accepted alternatives**

                                                    | Alternative | Accepted input |

                                                    | --- | --- |

                                                    | Alternative 1 | Type: `object`;
                                                    Required fields: `id` |

                                                    | Alternative 2 | Type: `object`;
                                                    Required fields: `link` |
                                              required:
                                                - type
                                                - image
                                              additionalProperties: false
                                            - type: object
                                              properties:
                                                type:
                                                  type: string
                                                  enum:
                                                    - video
                                                  description: |-
                                                    Type discriminator for this object.

                                                    <!-- polymorfa-input-table -->
                                                    **Allowed values**
                                                    | Value | Meaning |
                                                    | --- | --- |
                                                    | `video` | Video. |
                                                video:
                                                  anyOf:
                                                    - type: object
                                                      properties:
                                                        id:
                                                          type: string
                                                          minLength: 1
                                                          description: >-
                                                            Identifier for this resource.


                                                            <!-- polymorfa-input-table -->

                                                            **Value constraints**

                                                            | Constraint | Accepted input |

                                                            | --- | --- |

                                                            | String length | At least `1`
                                                            characters |
                                                      required:
                                                        - id
                                                      additionalProperties: false
                                                    - type: object
                                                      properties:
                                                        link:
                                                          type: string
                                                          format: uri
                                                          description: |-
                                                            Link associated with this resource.

                                                            <!-- polymorfa-input-table -->
                                                            **Value constraints**
                                                            | Constraint | Accepted input |
                                                            | --- | --- |
                                                            | Format | `uri` |
                                                      required:
                                                        - link
                                                      additionalProperties: false
                                                  description: >-
                                                    Specifies video for this one of.


                                                    <!-- polymorfa-input-table -->

                                                    **Accepted alternatives**

                                                    | Alternative | Accepted input |

                                                    | --- | --- |

                                                    | Alternative 1 | Type: `object`;
                                                    Required fields: `id` |

                                                    | Alternative 2 | Type: `object`;
                                                    Required fields: `link` |
                                              required:
                                                - type
                                                - video
                                              additionalProperties: false
                                            - type: object
                                              properties:
                                                type:
                                                  type: string
                                                  enum:
                                                    - document
                                                  description: |-
                                                    Type discriminator for this object.

                                                    <!-- polymorfa-input-table -->
                                                    **Allowed values**
                                                    | Value | Meaning |
                                                    | --- | --- |
                                                    | `document` | Document. |
                                                document:
                                                  anyOf:
                                                    - type: object
                                                      properties:
                                                        id:
                                                          type: string
                                                          minLength: 1
                                                          description: >-
                                                            Identifier for this resource.


                                                            <!-- polymorfa-input-table -->

                                                            **Value constraints**

                                                            | Constraint | Accepted input |

                                                            | --- | --- |

                                                            | String length | At least `1`
                                                            characters |
                                                        filename:
                                                          type: string
                                                          description: >-
                                                            Filename presented for the media
                                                            attachment.
                                                      required:
                                                        - id
                                                      additionalProperties: false
                                                    - type: object
                                                      properties:
                                                        link:
                                                          type: string
                                                          format: uri
                                                          description: |-
                                                            Link associated with this resource.

                                                            <!-- polymorfa-input-table -->
                                                            **Value constraints**
                                                            | Constraint | Accepted input |
                                                            | --- | --- |
                                                            | Format | `uri` |
                                                        filename:
                                                          type: string
                                                          description: >-
                                                            Filename presented for the media
                                                            attachment.
                                                      required:
                                                        - link
                                                      additionalProperties: false
                                                  description: >-
                                                    Specifies document for this one of.


                                                    <!-- polymorfa-input-table -->

                                                    **Accepted alternatives**

                                                    | Alternative | Accepted input |

                                                    | --- | --- |

                                                    | Alternative 1 | Type: `object`;
                                                    Required fields: `id` |

                                                    | Alternative 2 | Type: `object`;
                                                    Required fields: `link` |
                                              required:
                                                - type
                                                - document
                                              additionalProperties: false
                                        minItems: 1
                                        description: >-
                                          Parameters associated with this any of.


                                          <!-- polymorfa-input-table -->

                                          **Accepted alternatives**

                                          | Item alternative | Accepted input |

                                          | --- | --- |

                                          | Item alternative 1 | Type: `object`;
                                          Field `type`: `text`; Required fields:
                                          `type`, `text` |

                                          | Item alternative 2 | Type: `object`;
                                          Field `type`: `location`; Required
                                          fields: `type`, `location` |

                                          | Item alternative 3 | Type: `object`;
                                          Field `type`: `image`; Required fields:
                                          `type`, `image` |

                                          | Item alternative 4 | Type: `object`;
                                          Field `type`: `video`; Required fields:
                                          `type`, `video` |

                                          | Item alternative 5 | Type: `object`;
                                          Field `type`: `document`; Required
                                          fields: `type`, `document` |


                                          **Value constraints**

                                          | Constraint | Accepted input |

                                          | --- | --- |

                                          | Array size | At least `1` items |
                                    required:
                                      - type
                                      - parameters
                                    additionalProperties: false
                                  - type: object
                                    properties:
                                      type:
                                        type: string
                                        enum:
                                          - body
                                        description: |-
                                          Type discriminator for this object.

                                          <!-- polymorfa-input-table -->
                                          **Allowed values**
                                          | Value | Meaning |
                                          | --- | --- |
                                          | `body` | Body. |
                                      parameters:
                                        type: array
                                        items:
                                          oneOf:
                                            - type: object
                                              properties:
                                                type:
                                                  type: string
                                                  enum:
                                                    - text
                                                  description: |-
                                                    Type discriminator for this object.

                                                    <!-- polymorfa-input-table -->
                                                    **Allowed values**
                                                    | Value | Meaning |
                                                    | --- | --- |
                                                    | `text` | Text. |
                                                text:
                                                  type: string
                                                  maxLength: 32768
                                                  description: >-
                                                    Text content carried by this object.


                                                    <!-- polymorfa-input-table -->

                                                    **Value constraints**

                                                    | Constraint | Accepted input |

                                                    | --- | --- |

                                                    | String length | At most `32768`
                                                    characters |
                                                parameter_name:
                                                  type: string
                                                  description: >-
                                                    Human-readable parameter name for this
                                                    one of.
                                              required:
                                                - type
                                                - text
                                              additionalProperties: false
                                            - type: object
                                              properties:
                                                type:
                                                  type: string
                                                  enum:
                                                    - currency
                                                  description: |-
                                                    Type discriminator for this object.

                                                    <!-- polymorfa-input-table -->
                                                    **Allowed values**
                                                    | Value | Meaning |
                                                    | --- | --- |
                                                    | `currency` | Currency. |
                                                currency:
                                                  type: object
                                                  properties:
                                                    fallback_value:
                                                      type: string
                                                      description: >-
                                                        Specifies fallback value for this
                                                        currency.
                                                    code:
                                                      type: string
                                                      description: >-
                                                        Stable machine-readable code for this
                                                        result.
                                                    amount_1000:
                                                      type: integer
                                                      description: Specifies amount 1000 for this currency.
                                                  required:
                                                    - fallback_value
                                                    - code
                                                    - amount_1000
                                                  additionalProperties: false
                                                  description: ISO 4217 currency code.
                                              required:
                                                - type
                                                - currency
                                              additionalProperties: false
                                            - type: object
                                              properties:
                                                type:
                                                  type: string
                                                  enum:
                                                    - date_time
                                                  description: |-
                                                    Type discriminator for this object.

                                                    <!-- polymorfa-input-table -->
                                                    **Allowed values**
                                                    | Value | Meaning |
                                                    | --- | --- |
                                                    | `date_time` | Date time. |
                                                date_time:
                                                  type: object
                                                  properties:
                                                    fallback_value:
                                                      type: string
                                                      description: >-
                                                        Specifies fallback value for this date
                                                        time.
                                                    year:
                                                      type: integer
                                                      description: Specifies year for this date time.
                                                    month:
                                                      type: integer
                                                      description: Specifies month for this date time.
                                                    day_of_month:
                                                      type: integer
                                                      description: >-
                                                        Specifies day of month for this date
                                                        time.
                                                    hour:
                                                      type: integer
                                                      description: Specifies hour for this date time.
                                                    minute:
                                                      type: integer
                                                      description: Specifies minute for this date time.
                                                    day_of_week:
                                                      type: integer
                                                      description: >-
                                                        Specifies day of week for this date
                                                        time.
                                                    calendar:
                                                      type: string
                                                      description: Specifies calendar for this date time.
                                                  required:
                                                    - fallback_value
                                                  additionalProperties: false
                                                  description: >-
                                                    Structured date time values for this one
                                                    of.
                                              required:
                                                - type
                                                - date_time
                                              additionalProperties: false
                                        description: >-
                                          Parameters associated with this any of.


                                          <!-- polymorfa-input-table -->

                                          **Accepted alternatives**

                                          | Item alternative | Accepted input |

                                          | --- | --- |

                                          | Item alternative 1 | Type: `object`;
                                          Field `type`: `text`; Required fields:
                                          `type`, `text` |

                                          | Item alternative 2 | Type: `object`;
                                          Field `type`: `currency`; Required
                                          fields: `type`, `currency` |

                                          | Item alternative 3 | Type: `object`;
                                          Field `type`: `date_time`; Required
                                          fields: `type`, `date_time` |
                                    required:
                                      - type
                                      - parameters
                                    additionalProperties: false
                                  - type: object
                                    properties:
                                      type:
                                        type: string
                                        enum:
                                          - button
                                        description: |-
                                          Type discriminator for this object.

                                          <!-- polymorfa-input-table -->
                                          **Allowed values**
                                          | Value | Meaning |
                                          | --- | --- |
                                          | `button` | Button. |
                                      sub_type:
                                        type: string
                                        enum:
                                          - quick_reply
                                        description: |-
                                          Category assigned to sub.

                                          <!-- polymorfa-input-table -->
                                          **Allowed values**
                                          | Value | Meaning |
                                          | --- | --- |
                                          | `quick_reply` | Quick reply. |
                                      index:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - '0'
                                              - '1'
                                              - '2'
                                              - '3'
                                              - '4'
                                              - '5'
                                              - '6'
                                              - '7'
                                              - '8'
                                              - '9'
                                          - type: integer
                                            minimum: 0
                                            maximum: 9
                                        description: >-
                                          Specifies index for this any of.


                                          <!-- polymorfa-input-table -->

                                          **Accepted alternatives**

                                          | Alternative | Accepted input |

                                          | --- | --- |

                                          | Alternative 1 | Type: `string`; Value
                                          `0` or `1` or `2` or `3` or `4` or `5`
                                          or `6` or `7` or `8` or `9` |

                                          | Alternative 2 | Type: `integer`;
                                          Numeric value: `0` through `9`
                                          (inclusive) |
                                      parameters:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            type:
                                              type: string
                                              enum:
                                                - payload
                                              description: |-
                                                Type discriminator for this object.

                                                <!-- polymorfa-input-table -->
                                                **Allowed values**
                                                | Value | Meaning |
                                                | --- | --- |
                                                | `payload` | Payload. |
                                            payload:
                                              type: string
                                              description: >-
                                                Structured payload carried by this event
                                                or operation.
                                          required:
                                            - type
                                            - payload
                                          additionalProperties: false
                                        minItems: 1
                                        description: |-
                                          Parameters associated with this any of.

                                          <!-- polymorfa-input-table -->
                                          **Value constraints**
                                          | Constraint | Accepted input |
                                          | --- | --- |
                                          | Array size | At least `1` items |
                                    required:
                                      - type
                                      - sub_type
                                      - index
                                      - parameters
                                    additionalProperties: false
                                  - type: object
                                    properties:
                                      type:
                                        type: string
                                        enum:
                                          - button
                                        description: |-
                                          Type discriminator for this object.

                                          <!-- polymorfa-input-table -->
                                          **Allowed values**
                                          | Value | Meaning |
                                          | --- | --- |
                                          | `button` | Button. |
                                      sub_type:
                                        type: string
                                        enum:
                                          - url
                                        description: |-
                                          Category assigned to sub.

                                          <!-- polymorfa-input-table -->
                                          **Allowed values**
                                          | Value | Meaning |
                                          | --- | --- |
                                          | `url` | Url. |
                                      index:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - '0'
                                              - '1'
                                              - '2'
                                              - '3'
                                              - '4'
                                              - '5'
                                              - '6'
                                              - '7'
                                              - '8'
                                              - '9'
                                          - type: integer
                                            minimum: 0
                                            maximum: 9
                                        description: >-
                                          Specifies index for this any of.


                                          <!-- polymorfa-input-table -->

                                          **Accepted alternatives**

                                          | Alternative | Accepted input |

                                          | --- | --- |

                                          | Alternative 1 | Type: `string`; Value
                                          `0` or `1` or `2` or `3` or `4` or `5`
                                          or `6` or `7` or `8` or `9` |

                                          | Alternative 2 | Type: `integer`;
                                          Numeric value: `0` through `9`
                                          (inclusive) |
                                      parameters:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            type:
                                              type: string
                                              enum:
                                                - text
                                              description: |-
                                                Type discriminator for this object.

                                                <!-- polymorfa-input-table -->
                                                **Allowed values**
                                                | Value | Meaning |
                                                | --- | --- |
                                                | `text` | Text. |
                                            text:
                                              type: string
                                              description: Text content carried by this object.
                                          required:
                                            - type
                                            - text
                                          additionalProperties: false
                                        minItems: 1
                                        description: |-
                                          Parameters associated with this any of.

                                          <!-- polymorfa-input-table -->
                                          **Value constraints**
                                          | Constraint | Accepted input |
                                          | --- | --- |
                                          | Array size | At least `1` items |
                                    required:
                                      - type
                                      - sub_type
                                      - index
                                      - parameters
                                    additionalProperties: false
                                  - type: object
                                    properties:
                                      type:
                                        type: string
                                        enum:
                                          - button
                                        description: |-
                                          Type discriminator for this object.

                                          <!-- polymorfa-input-table -->
                                          **Allowed values**
                                          | Value | Meaning |
                                          | --- | --- |
                                          | `button` | Button. |
                                      sub_type:
                                        type: string
                                        enum:
                                          - catalog
                                          - CATALOG
                                        description: |-
                                          Category assigned to sub.

                                          <!-- polymorfa-input-table -->
                                          **Allowed values**
                                          | Value | Meaning |
                                          | --- | --- |
                                          | `catalog` | Catalog. |
                                          | `CATALOG` | Catalog. |
                                      index:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - '0'
                                              - '1'
                                              - '2'
                                              - '3'
                                              - '4'
                                              - '5'
                                              - '6'
                                              - '7'
                                              - '8'
                                              - '9'
                                          - type: integer
                                            minimum: 0
                                            maximum: 9
                                        description: >-
                                          Specifies index for this any of.


                                          <!-- polymorfa-input-table -->

                                          **Accepted alternatives**

                                          | Alternative | Accepted input |

                                          | --- | --- |

                                          | Alternative 1 | Type: `string`; Value
                                          `0` or `1` or `2` or `3` or `4` or `5`
                                          or `6` or `7` or `8` or `9` |

                                          | Alternative 2 | Type: `integer`;
                                          Numeric value: `0` through `9`
                                          (inclusive) |
                                      parameters:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            type:
                                              type: string
                                              enum:
                                                - action
                                              description: |-
                                                Type discriminator for this object.

                                                <!-- polymorfa-input-table -->
                                                **Allowed values**
                                                | Value | Meaning |
                                                | --- | --- |
                                                | `action` | Action. |
                                            action:
                                              type: object
                                              properties:
                                                thumbnail_product_retailer_id:
                                                  type: string
                                                  minLength: 1
                                                  description: >-
                                                    Identifier for the thumbnail product
                                                    retailer.


                                                    <!-- polymorfa-input-table -->

                                                    **Value constraints**

                                                    | Constraint | Accepted input |

                                                    | --- | --- |

                                                    | String length | At least `1`
                                                    characters |
                                              required:
                                                - thumbnail_product_retailer_id
                                              additionalProperties: false
                                              description: Action represented by this parameter.
                                          required:
                                            - type
                                            - action
                                          additionalProperties: false
                                        minItems: 1
                                        description: |-
                                          Parameters associated with this any of.

                                          <!-- polymorfa-input-table -->
                                          **Value constraints**
                                          | Constraint | Accepted input |
                                          | --- | --- |
                                          | Array size | At least `1` items |
                                    required:
                                      - type
                                      - sub_type
                                      - index
                                      - parameters
                                    additionalProperties: false
                                  - type: object
                                    properties:
                                      type:
                                        type: string
                                        enum:
                                          - button
                                        description: |-
                                          Type discriminator for this object.

                                          <!-- polymorfa-input-table -->
                                          **Allowed values**
                                          | Value | Meaning |
                                          | --- | --- |
                                          | `button` | Button. |
                                      sub_type:
                                        type: string
                                        enum:
                                          - copy_code
                                        description: |-
                                          Category assigned to sub.

                                          <!-- polymorfa-input-table -->
                                          **Allowed values**
                                          | Value | Meaning |
                                          | --- | --- |
                                          | `copy_code` | Copy code. |
                                      index:
                                        anyOf:
                                          - type: string
                                            enum:
                                              - '0'
                                              - '1'
                                              - '2'
                                              - '3'
                                              - '4'
                                              - '5'
                                              - '6'
                                              - '7'
                                              - '8'
                                              - '9'
                                          - type: integer
                                            minimum: 0
                                            maximum: 9
                                        description: >-
                                          Specifies index for this any of.


                                          <!-- polymorfa-input-table -->

                                          **Accepted alternatives**

                                          | Alternative | Accepted input |

                                          | --- | --- |

                                          | Alternative 1 | Type: `string`; Value
                                          `0` or `1` or `2` or `3` or `4` or `5`
                                          or `6` or `7` or `8` or `9` |

                                          | Alternative 2 | Type: `integer`;
                                          Numeric value: `0` through `9`
                                          (inclusive) |
                                      parameters:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            type:
                                              type: string
                                              enum:
                                                - coupon_code
                                              description: |-
                                                Type discriminator for this object.

                                                <!-- polymorfa-input-table -->
                                                **Allowed values**
                                                | Value | Meaning |
                                                | --- | --- |
                                                | `coupon_code` | Coupon code. |
                                            coupon_code:
                                              type: string
                                              description: >-
                                                Machine-readable coupon code for this
                                                parameter.
                                          required:
                                            - type
                                            - coupon_code
                                          additionalProperties: false
                                        minItems: 1
                                        description: |-
                                          Parameters associated with this any of.

                                          <!-- polymorfa-input-table -->
                                          **Value constraints**
                                          | Constraint | Accepted input |
                                          | --- | --- |
                                          | Array size | At least `1` items |
                                    required:
                                      - type
                                      - sub_type
                                      - index
                                      - parameters
                                    additionalProperties: false
                              description: >-
                                Structured components that make up this message
                                or template.


                                <!-- polymorfa-input-table -->

                                **Accepted alternatives**

                                | Item alternative | Accepted input |

                                | --- | --- |

                                | Item alternative 1 | Type: `object`; Field
                                `type`: `header`; Required fields: `type`,
                                `parameters` |

                                | Item alternative 2 | Type: `object`; Field
                                `type`: `body`; Required fields: `type`,
                                `parameters` |

                                | Item alternative 3 | Type: `object`; Field
                                `type`: `button`; Field `sub_type`:
                                `quick_reply`; Required fields: `type`,
                                `sub_type`, `index`, `parameters` |

                                | Item alternative 4 | Type: `object`; Field
                                `type`: `button`; Field `sub_type`: `url`;
                                Required fields: `type`, `sub_type`, `index`,
                                `parameters` |

                                | Item alternative 5 | Type: `object`; Field
                                `type`: `button`; Field `sub_type`: `catalog` or
                                `CATALOG`; Required fields: `type`, `sub_type`,
                                `index`, `parameters` |

                                | Item alternative 6 | Type: `object`; Field
                                `type`: `button`; Field `sub_type`: `copy_code`;
                                Required fields: `type`, `sub_type`, `index`,
                                `parameters` |
                          required:
                            - card_index
                            - components
                          additionalProperties: false
                        minItems: 1
                        maxItems: 10
                        description: |-
                          Cards associated with this any of.

                          <!-- polymorfa-input-table -->
                          **Value constraints**
                          | Constraint | Accepted input |
                          | --- | --- |
                          | Array size | `1` through `10` items |
                    required:
                      - type
                      - cards
                    additionalProperties: false
              description: >-
                Structured components that make up this message or template.


                <!-- polymorfa-input-table -->

                **Accepted alternatives**

                | Item alternative | Accepted input |

                | --- | --- |

                | Item alternative 1 | Type: `object`; Field `type`: `header`;
                Required fields: `type`, `parameters` |

                | Item alternative 2 | Type: `object`; Field `type`: `body`;
                Required fields: `type`, `parameters` |

                | Item alternative 3 | Type: `object`; Field `type`: `button`;
                Field `sub_type`: `quick_reply`; Required fields: `type`,
                `sub_type`, `index`, `parameters` |

                | Item alternative 4 | Type: `object`; Field `type`: `button`;
                Field `sub_type`: `url`; Required fields: `type`, `sub_type`,
                `index`, `parameters` |

                | Item alternative 5 | Type: `object`; Field `type`: `button`;
                Field `sub_type`: `catalog` or `CATALOG`; Required fields:
                `type`, `sub_type`, `index`, `parameters` |

                | Item alternative 6 | Type: `object`; Field `type`: `button`;
                Field `sub_type`: `copy_code`; Required fields: `type`,
                `sub_type`, `index`, `parameters` |

                | Item alternative 7 | Type: `object`; Field `type`:
                `limited_time_offer`; Required fields: `type`, `parameters` |

                | Item alternative 8 | Type: `object`; Field `type`: `carousel`;
                Required fields: `type`, `cards` |
          required:
            - name
            - language
          additionalProperties: false
          description: >-
            Structured template values for this graph graph marketing send
            request.
        product_policy:
          type: string
          enum:
            - STRICT
          description: >-
            Specifies product policy for this graph graph marketing send
            request.


            <!-- polymorfa-input-table -->

            **Allowed values**

            | Value | Meaning |

            | --- | --- |

            | `STRICT` | Strict. |
        message_activity_sharing:
          type: boolean
          description: Whether message activity sharing.
      required:
        - messaging_product
        - recipient_type
        - to
        - type
        - template
        - product_policy
      additionalProperties: false
    graph__GraphMarketingSendResponse:
      nullable: true
    graph__GraphError:
      type: object
      properties:
        error:
          type: object
          properties:
            message:
              type: string
              description: Human-readable message associated with this result.
            type:
              type: string
              description: Type discriminator for this object.
            code:
              type: number
              description: Stable machine-readable code for this result.
            error_subcode:
              type: number
              description: Machine-readable error subcode for this error.
            error_data:
              nullable: true
              description: |-
                Specifies error data for this error.

                <!-- polymorfa-input-table -->
                **Accepted alternatives**
                | Alternative | Accepted input |
                | --- | --- |
                | Alternative 1 | Any JSON value matching this alternative |
                | Alternative 2 | `null` |
            fbtrace_id:
              type: string
              description: Identifier for the fbtrace.
          required:
            - message
            - type
            - code
            - fbtrace_id
          description: Error details returned when the operation fails.
      required:
        - error
  headers:
    graph__X-RateLimit-Limit:
      description: >-
        Team request quota per rolling minute, when the per-team request limiter
        applies.
      schema:
        type: integer
        minimum: 1
    graph__X-RateLimit-Remaining:
      description: >-
        Requests left in the per-team quota; zero when this limiter rejects the
        request.
      schema:
        type: integer
        minimum: 0
    graph__X-RateLimit-Reset:
      description: >-
        Unix timestamp in seconds when the oldest counted request leaves the
        rolling window, when the per-team request limiter applies. Follow
        Retry-After on a rejected request.
      schema:
        type: integer
        minimum: 0
  securitySchemes:
    graph__BearerAuth:
      type: http
      scheme: bearer
      description: >-
        Polymorfa organization key (pmfa_ prefix) or project token (pmfa_pt_
        prefix). Client tokens are not accepted by Graph operations.

````

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