---
updatedAt: 2026-08-17T21:20:55.000Z
agentTools:
  projectIndex: https://developer.paze.com/public/llms.txt
---

# Messages

Retrieves a list of merchant marketing messages that are eligible for display in the requested placement location. Each message includes unique identifiers, start and end timestamps, and content in both HTML and JSON. Merchant asserts identity using the access token.

# OpenAPI definition

```json
{
  "openapi": "3.0.3",
  "info": {
    "description": "Retrieves active merchant messages and Paze-specific display content for configured merchant placements.",
    "title": "Messages",
    "version": "v2"
  },
  "servers": [
    {
      "url": "https://api.paze.com",
      "description": "Paze production mobile api host"
    },
    {
      "url": "https://mobile-east.wallet.cat.earlywarning.io",
      "description": "Paze CAT mobile api host"
    }
  ],
  "security": [
    {
      "bearerAuth": []
    }
  ],
  "paths": {
    "/marketing/v2/messages": {
      "get": {
        "summary": "Messages",
        "description": "Retrieves a list of merchant marketing messages that are eligible for display in the requested placement location. Each message includes unique identifiers, start and end timestamps, and content in both HTML and JSON. Merchant asserts identity using the access token.",
        "tags": [
          "offer-messages"
        ],
        "operationId": "GetMerchantMessagesV2",
        "parameters": [
          {
            "$ref": "#/components/parameters/merchantIdQueryParam"
          },
          {
            "$ref": "#/components/parameters/profileIdParam"
          },
          {
            "$ref": "#/components/parameters/messagePlacementParam"
          },
          {
            "$ref": "#/components/parameters/nextTokenParam"
          },
          {
            "$ref": "#/components/parameters/limitParam"
          },
          {
            "$ref": "#/components/parameters/activeParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginatedOfferMessageV2DTOResponse"
                },
                "examples": {
                  "success": {
                    "summary": "Paginated offer messages response",
                    "value": {
                      "count": 2,
                      "limit": 10,
                      "nextToken": "next-token-hash",
                      "data": [
                        {
                          "merchantId": "merchant-uuid-1",
                          "messageId": "550e8400-e29b-41d4-a716-446655440001",
                          "startTimestamp": "2025-12-01T00:00:00Z",
                          "endTimestamp": "2026-01-01T00:00:00Z",
                          "messagePlacement": "checkout",
                          "contentHtml": "<div data-paze-message-id=\"550e8400-e29b-41d4-a716-446655440001\">Save $10 When You Spend $10 With Paze<sup>®</sup></div>",
                          "contentNodes": [
                            {
                              "type": "TEXT",
                              "content": "Save $10 When You Spend $10 With Paze"
                            },
                            {
                              "type": "SUPERSCRIPT",
                              "content": "®"
                            }
                          ]
                        },
                        {
                          "merchantId": "merchant-uuid-1",
                          "messageId": "550e8400-e29b-41d4-a716-446655440002",
                          "startTimestamp": "2025-12-01T00:00:00Z",
                          "endTimestamp": "2026-01-01T00:00:00Z",
                          "messagePlacement": "checkout",
                          "contentHtml": "<div data-paze-message-id=\"550e8400-e29b-41d4-a716-446655440002\"><strong>Save $30 With Paze<sup>®</sup> and Merchant1</strong><img src=\"https://www.paze.com/sites/default/files/2024-09/convenient.png\"/><br/>Find terms and conditions here: <a href=\"https://www.paze.com\" target=\"_blank\">Learn More</a></div>",
                          "contentNodes": [
                            {
                              "type": "HEADER",
                              "children": [
                                {
                                  "type": "STRONG",
                                  "children": [
                                    {
                                      "type": "TEXT",
                                      "content": "Save $30 With Paze"
                                    },
                                    {
                                      "type": "SUPERSCRIPT",
                                      "content": "®"
                                    },
                                    {
                                      "type": "TEXT",
                                      "content": " and Merchant1!"
                                    }
                                  ]
                                }
                              ]
                            },
                            {
                              "type": "IMAGE",
                              "attributes": {
                                "src": "https://www.paze.com/sites/default/files/2024-09/convenient.png"
                              }
                            },
                            {
                              "type": "SUBTEXT",
                              "children": [
                                {
                                  "type": "TEXT",
                                  "content": "Find terms and conditions here: "
                                },
                                {
                                  "type": "ANCHOR",
                                  "attributes": {
                                    "href": "https://www.paze.com",
                                    "target": "_blank"
                                  },
                                  "content": "Learn More"
                                }
                              ]
                            }
                          ]
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                },
                "examples": {
                  "validationFailure": {
                    "summary": "Request validation failed",
                    "value": {
                      "error": {
                        "statusCode": "1003",
                        "statusText": "Record validation failure due to one or more fields in error"
                      },
                      "ewSID": "96354a87-02b9-4d83-85e1-16cca4eb99b8"
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnauthorizedErrorResponse"
                },
                "examples": {
                  "serverError": {
                    "summary": "Authentication failure",
                    "value": {
                      "error": "server_error"
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorResponse"
                },
                "examples": {
                  "internalServerError": {
                    "summary": "Unexpected server error",
                    "value": {
                      "error": {
                        "statusCode": "5000",
                        "statusText": "An unexpected error occurred while processing the request."
                      },
                      "ewSID": "96354a87-02b9-4d83-85e1-16cca4eb99b8"
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "securitySchemes": {
      "bearerAuth": {
        "type": "http",
        "scheme": "bearer",
        "bearerFormat": "JWT"
      }
    },
    "parameters": {
      "merchantIdQueryParam": {
        "in": "query",
        "name": "merchantId",
        "required": false,
        "schema": {
          "type": "string",
          "pattern": "^[a-zA-Z0-9_-]*$",
          "maxLength": 100,
          "minLength": 0
        },
        "description": "The Paze merchant identifier"
      },
      "profileIdParam": {
        "in": "query",
        "name": "profileId",
        "required": false,
        "schema": {
          "type": "string",
          "maxLength": 50,
          "minLength": 0,
          "pattern": "^[a-zA-Z0-9_-]*$"
        },
        "description": "Filters the message by profile Id."
      },
      "messagePlacementParam": {
        "in": "query",
        "name": "messagePlacement",
        "schema": {
          "type": "string",
          "enum": [
            "checkout",
            "checkoutPage",
            "checkoutMobile",
            "product",
            "productPage",
            "productMobile",
            "cart",
            "cartPage",
            "cartMobile",
            "autoInitiate"
          ]
        },
        "description": "Filters by message placement."
      },
      "limitParam": {
        "in": "query",
        "name": "limit",
        "required": false,
        "schema": {
          "type": "integer",
          "default": 20,
          "maximum": 20
        },
        "description": "Limit for the number of records returned. Max is 20"
      },
      "nextTokenParam": {
        "in": "query",
        "name": "nextToken",
        "required": false,
        "schema": {
          "type": "string",
          "maxLength": 1024,
          "minLength": 0,
          "pattern": "^[A-Za-z0-9_-]+={0,2}$"
        },
        "description": "Cursor token for retrieving the next set of messages. If including this query parameter, the other query parameters should match those of the previous request."
      },
      "activeParam": {
        "in": "query",
        "name": "active",
        "required": false,
        "schema": {
          "type": "string",
          "default": "true"
        },
        "description": "Searches for active or inactive messages"
      }
    },
    "schemas": {
      "PaginatedOfferMessageV2DTOResponse": {
        "type": "object",
        "properties": {
          "count": {
            "type": "integer",
            "description": "The number of messages returned."
          },
          "data": {
            "type": "array",
            "description": "The list of messages",
            "items": {
              "$ref": "#/components/schemas/OfferMessageV2DTO"
            }
          },
          "limit": {
            "type": "integer",
            "description": "Query parameter for the number of messages requested."
          },
          "nextToken": {
            "type": "string",
            "description": "Token to send on a future query to receive the next set of offer messages."
          }
        }
      },
      "OfferMessageV2DTO": {
        "type": "object",
        "properties": {
          "merchantId": {
            "type": "string",
            "description": "EWS merchant Id.",
            "pattern": "^[a-zA-Z0-9_-]*$"
          },
          "profileId": {
            "type": "string",
            "description": "Profile Id for the merchant.",
            "pattern": "^[a-zA-Z0-9_-]*$"
          },
          "messageId": {
            "type": "string",
            "format": "uuid",
            "description": "Unique identifier for the message.",
            "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
          },
          "startTimestamp": {
            "type": "string",
            "description": "ISO-8601 datetime with offset. Controls when the message should start being displayed.",
            "format": "date-time"
          },
          "endTimestamp": {
            "type": "string",
            "description": "ISO-8601 datetime with offset. Controls when the message should stop being displayed",
            "format": "date-time"
          },
          "messagePlacement": {
            "type": "string",
            "description": "Indicates where the message should be displayed."
          },
          "contentHtml": {
            "type": "string",
            "description": "The message in HTML structure."
          },
          "contentNodes": {
            "type": "array",
            "description": "The message in JSON structure.",
            "items": {
              "$ref": "#/components/schemas/ContentNode"
            }
          }
        }
      },
      "ContentNode": {
        "type": "object",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/ContentNodeType"
          },
          "attributes": {
            "$ref": "#/components/schemas/Attribute"
          },
          "content": {
            "type": "string",
            "description": "Text content for the content node."
          },
          "children": {
            "type": "array",
            "description": "Nested content nodes.",
            "items": {
              "$ref": "#/components/schemas/NestedContentNode"
            }
          }
        },
        "required": [
          "type"
        ]
      },
      "NestedContentNode": {
        "type": "object",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/ContentNodeType"
          },
          "attributes": {
            "$ref": "#/components/schemas/Attribute"
          },
          "content": {
            "type": "string",
            "description": "Text content for the nested content node."
          },
          "children": {
            "type": "array",
            "description": "Leaf content nodes.",
            "items": {
              "$ref": "#/components/schemas/LeafContentNode"
            }
          }
        },
        "required": [
          "type"
        ]
      },
      "LeafContentNode": {
        "type": "object",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/ContentNodeType"
          },
          "attributes": {
            "$ref": "#/components/schemas/Attribute"
          },
          "content": {
            "type": "string",
            "description": "Text content for the leaf content node."
          }
        },
        "required": [
          "type"
        ]
      },
      "ContentNodeType": {
        "type": "string",
        "description": "Content node type.",
        "minLength": 1,
        "enum": [
          "HEADER",
          "SUBTEXT",
          "STRONG",
          "EMPHASIS",
          "ANCHOR",
          "IMAGE",
          "TEXT",
          "SUPERSCRIPT",
          "SUBSCRIPT",
          "STRIKETHROUGH"
        ]
      },
      "Attribute": {
        "type": "object",
        "properties": {
          "href": {
            "type": "string",
            "format": "uri"
          },
          "target": {
            "type": "string"
          },
          "src": {
            "type": "string",
            "format": "uri"
          }
        }
      },
      "ErrorResponse": {
        "type": "object",
        "properties": {
          "ewSID": {
            "type": "string",
            "format": "uuid"
          },
          "error": {
            "$ref": "#/components/schemas/ErrorStatusResponse"
          }
        }
      },
      "UnauthorizedErrorResponse": {
        "type": "object",
        "properties": {
          "error": {
            "type": "string",
            "description": "Authentication error code returned by the server.",
            "example": "server_error"
          }
        },
        "required": [
          "error"
        ]
      },
      "ErrorStatusResponse": {
        "type": "object",
        "properties": {
          "statusCode": {
            "type": "string"
          },
          "statusText": {
            "type": "string"
          }
        }
      }
    }
  }
}
```