MoEngage Reports API

Operations related to generating usage reports for coupon lists.

Operations 1

POST /coupon-list/{coupon_list_id}/usage-report Generate Usage Report #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/moengage-reports-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

moengage-reports-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Coupon List API 🏷️ Reports API
  description: 'API for managing coupon lists within the MoEngage system. This includes creating, fetching, updating, activating, archiving lists, uploading coupon files, managing files, and generating usage reports.

    Authentication is via Basic Auth using your **Workspace ID** as username and an **API Key** as password.

    '
  version: '1.0'
servers:
- url: https://api-{dc}.moengage.com/v1
  description: The MoEngage Coupon Management API endpoint. The **X** in the URL is replaced by the data center number (e.g., 01, 02, 03).
  variables:
    dc:
      default: '01'
      description: The ‘dc’ in the API Endpoint URL refers to the MoEngage Data Center (DC). MoEngage hosts each customer in a different DC. You can find your DC number and replace the value of ‘dc’ in the URL by referring to the DC and API endpoint mapping [here](/api/introduction#data-centers). Your MoEngage Data Center (DC) can be 01, 02, 03, 04, 05, 06, or 101.
security:
- basicAuth: []
tags:
- name: Reports
  description: Operations related to generating usage reports for coupon lists.
paths:
  /coupon-list/{coupon_list_id}/usage-report:
    post:
      tags:
      - Reports
      summary: Generate Usage Report
      operationId: generateUsageReport
      description: 'This API produces a detailed usage report for a specific coupon list, providing details on which user received which coupon from which locale or variation of which campaign at what time. After it is generated, this report is delivered directly to the requested email addresses. Using this API, you can conduct a comprehensive analysis of critical data and coupon usage trends efficiently.

        '
      x-mint:
        content: '#### Rate Limit

          You can generate:

          * 5 usage reports of coupon list per minute or

          * 50 usage reports of coupon list per day

          '
      parameters:
      - $ref: '#/components/parameters/AppKeyHeader'
      - $ref: '#/components/parameters/CouponListIdPath'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - start_date
              - end_date
              - email_subscribers
              properties:
                start_date:
                  type: string
                  format: date
                  description: This field consists of the start date of the coupon list usage report in `yyyy-mm-dd` format.
                end_date:
                  type: string
                  format: date
                  description: This field consists of the end date of the coupon list usage report in `yyyy-mm-dd` format.
                email_subscribers:
                  type: array
                  items:
                    type: string
                    format: email
                  description: This field consists of the email address of the coupon list subscribers who will receive the report.
            examples: {}
      responses:
        '200':
          description: 'Success

            Indicates that the request is successful and the coupon list usage report request is accepted.

            '
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    description: The following is the success message indicating the report is being processed.
              example:
                message: The usage report for the {{coupon list name}} coupons is being processed and will be sent to email alert subscribers shortly.
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                start_date_invalid:
                  summary: Start Date Invalid
                  value:
                    error:
                      code: invalid-request
                      message: The start date cannot be earlier than the coupon list creation date. Please verify your dates and try again.
                end_date_invalid:
                  summary: End Date Invalid
                  value:
                    error:
                      code: invalid-request
                      message: The end date cannot be set in the future. Please verify the dates and try again.
        '401':
          description: Unauthenticated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: request-unauthenticated
                  message: Your request is unauthorized. Please verify your credentials and try again.
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: request-forbidden
                  message: Your account does not have access to the Coupon Management features. Please contact the MoEngage team for further assistance.
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: coupon-list-not-found
                  message: The specified coupon list ID was not found. Please verify the ID and try again.
        '429':
          description: 'Too Many Requests - The rate limit for the API has been exceeded.


            The following headers are returned in case of rate-limit breach:

            * `x-ratelimit-limit` (integer): The maximum number of requests that the consumer is permitted to make in a given time window.

            * `x-ratelimit-remaining` (integer): The number of requests remaining in the current rate limit window.

            * `x-ratelimit-reset` (integer): The time at which the current rate limit window resets in UTC epoch seconds.

            '
          headers:
            x-ratelimit-limit:
              schema:
                type: integer
              description: The maximum number of requests that the consumer is permitted to make in a given time window.
            x-ratelimit-remaining:
              schema:
                type: integer
              description: The number of requests remaining in the current rate limit window.
            x-ratelimit-reset:
              schema:
                type: integer
              description: The time at which the current rate limit window resets in UTC epoch seconds.
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: unexpected-error
                  message: Something went wrong with your request. Please contact the MoEngage team for further assistance.
components:
  parameters:
    CouponListIdPath:
      name: coupon_list_id
      in: path
      required: true
      description: The unique identifier for the coupon list.
      schema:
        type: string
    AppKeyHeader:
      name: MOE-APPKEY
      in: header
      required: true
      description: 'This is the Workspace ID of your MoEngage account that must be passed with the request. You can find it in the MoEngage dashboard at **Settings** > **Account** > **APIs** > **Workspace ID (earlier app id)**.

        '
      schema:
        type: string
  schemas:
    ErrorResponse:
      type: object
      properties:
        error:
          $ref: '#/components/schemas/Error'
    Error:
      type: object
      properties:
        code:
          type: string
          description: Each error codes are unique and serve as a shorthand representation for the type of error, providing a quick reference that can be used to diagnose, troubleshoot, and address the problem based on a predefined set of error conditions.
        message:
          type: string
          description: Along with the error code, a detailed message is also provided in the response, describing the specifics of the request failure and the nature of the error.
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: 'Authentication is done via Basic Auth. This requires a base64-encoded string of your credentials in the format ''username:password''.


        - **Username**: Use your MoEngage workspace ID (also known as the App ID). You can find it in the MoEngage dashboard at **Settings** > **Account** > **APIs** > **Workspace ID (earlier app id)**.

        - **Password**: Use your API Key, which you can find within the **Campaign report/Business events/Custom templates/Catalog API/Inform Report** tile.


        For more information on authentication and getting your credentials, refer [here](https://www.moengage.com/docs/api/introduction#getting-your-credentials).

        '