MoEngage Get Campaign Details API

The Get Campaign Details API from MoEngage — 6 operation(s) for get campaign details.

Operations 6

GET /v5/campaigns/{campaign_id} Get Campaign (V5) #
POST /v5/campaigns/search Search Campaigns (V5) #
POST /v5/campaigns/meta Get Campaign Meta (V5) #
POST /campaigns/search Search Campaigns #
POST /campaigns/meta Get Campaign Meta (V1 — Legacy) #
POST /campaigns/{parent_campaign_id}/executions Get Child Campaigns #

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-get-campaign-details-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-get-campaign-details-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Moengage Get Campaign Details API
  version: '2025-11-20'
  contact:
    name: MoEngage Developer Team
    email: support@moengage.com
    url: https://developers.moengage.com
  description: 'Operations tagged Get Campaign Details across 2 of this provider''s published API definitions: moengage-campaign-draft-openapi.yml, moengage-campaigns-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api-{dc}.moengage.com/
  description: MoEngage Campaigns API Server
  variables:
    dc:
      default: '01'
      description: Data center (DC) segment in the hostname. Replace `OX` with your workspace DC (01–06 or 101). See [Data centers](/api/introduction#data-centers).
- url: https://api-{dc}.moengage.com/core-services/v1
  description: MoEngage Campaigns API Server
  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: Get Campaign Details
paths:
  /v5/campaigns/{campaign_id}:
    get:
      operationId: get_single_campaign_v5
      summary: Get Campaign (V5)
      description: 'Returns the full configuration and current status of a single campaign by its ID.

        '
      x-mint:
        content: '<Note>

          **SMS campaigns:** SMS campaigns are returned by this endpoint; the response `channel` field will be `SMS`. The `connector` and `sender_name` fields carry SMS-specific details. SMS campaigns can be retrieved but must be created and managed through the MoEngage dashboard or V1 APIs in the interim.

          </Note>


          #### Rate Limits


          | Rate Limit Name | Rate Limit |

          | :--- | :--- |

          | Get campaign per second | The total number of get campaign requests per second per client allowed is 10. |

          | Get campaign per minute | The total number of get campaign requests per minute per client allowed is 100. |

          | Get campaign per hour | The total number of get campaign requests per hour per client allowed is 6000. |


          <Note>

          **Notes**

          * Breaching the limits will reject the request.

          * Per-hour limits use a rolling window of the last 1 hour.

          </Note>

          '
      x-codeSamples:
      - lang: Shell
        label: Get campaign by ID (cURL)
        source: "curl -X GET 'https://api-{dc}.moengage.com/v5/campaigns/{{campaign_id}}' \\\n  -H 'Authorization: Basic {{auth_token}}' \\\n  -H 'MOE-APPKEY: {{workspace_id}}' \\\n  -H 'X-MOE-Request-Id: {{request_id}}'\n"
      - lang: Shell
        label: Get an SMS campaign (cURL)
        source: "curl -X GET 'https://api-{dc}.moengage.com/v5/campaigns/{{sms_campaign_id}}' \\\n  -H 'Authorization: Basic {{auth_token}}' \\\n  -H 'MOE-APPKEY: {{workspace_id}}' \\\n  -H 'X-MOE-Request-Id: {{request_id}}'    \n"
      tags:
      - Get Campaign Details
      parameters:
      - $ref: '#/components/parameters/MOE-APPKEY'
      - $ref: '#/components/parameters/X-MOE-Request-Id'
      - name: campaign_id
        in: path
        required: true
        description: Raw 24-char ObjectId of the campaign to retrieve.
        schema:
          type: string
        examples:
          get_campaign_by_id:
            summary: Get campaign by ID
            value: '{{campaign_id}}'
          get_sms_campaign:
            summary: Get an SMS campaign
            value: '{{sms_campaign_id}}'
      responses:
        '200':
          description: Campaign details retrieved successfully.
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/V5SuccessEnvelope'
                - type: object
                  properties:
                    data:
                      $ref: '#/components/schemas/CampaignDetailsResponse'
              examples:
                scheduled_push_campaign:
                  summary: Scheduled one-time Push campaign (Android + iOS)
                  value:
                    response_id: abc-100
                    type: campaign
                    data:
                      id: 64a1b2c3d4e5f6a7b8c9d0e1
                      campaign_id: 64a1b2c3d4e5f6a7b8c9d0e1
                      status: SCHEDULED
                      channel: PUSH
                      campaign_delivery_type: ONE_TIME
                      created_by: marketer@example.com
                      updated_by: marketer@example.com
                      created_at: '2024-07-04 08:00:54.847000'
                      updated_at: '2024-07-04 09:15:00.000000'
                      basic_details:
                        name: Summer Sale Push
                        platforms:
                        - ANDROID
                        - IOS
                        tags:
                        - promotional
                        - seasonal
                        team: Growth Team
                      campaign_content:
                        content:
                          push:
                            android:
                              template_type: BASIC
                              basic_details:
                                title: Summer Sale — Up to 50% off
                                message: Shop now before the sale ends.
                                default_click_action: DEEPLINKING
                                default_click_action_value: https://example.com/sale
                            ios:
                              template_type: BASIC
                              basic_details:
                                title: Summer Sale — Up to 50% off
                                message: Shop now before the sale ends.
                                default_click_action: DEEPLINKING
                                default_click_action_value: https://example.com/sale
                      scheduling_details:
                        delivery_type: SCHEDULED
                        schedule_time: '2024-11-28T12:00:00'
                        time_zone: UTC
                      segmentation_details:
                        included_filters:
                          filter_operator: and
                          filters:
                          - filter_type: custom_segments
                            name: segment
                            id: seg_abc123
                      delivery_controls:
                        bypass_dnd: false
                        ignore_frequency_capping: false
                      utm_params:
                        utm_source: moengage
                        utm_medium: push
                        utm_campaign: summer_sale_2024
                active_email_campaign:
                  summary: Active periodic Email campaign (promotional)
                  value:
                    response_id: abc-101
                    type: campaign
                    data:
                      id: 64a1b2c3d4e5f6a7b8c9d0e2
                      campaign_id: 64a1b2c3d4e5f6a7b8c9d0e2
                      status: ACTIVE
                      channel: EMAIL
                      campaign_delivery_type: PERIODIC
                      created_by: marketer@example.com
                      updated_by: marketer@example.com
                      created_at: '2024-01-01 08:00:00.000000'
                      updated_at: '2024-06-15 10:30:00.000000'
                      basic_details:
                        name: Weekly Newsletter
                        content_type: PROMOTIONAL
                        subscription_category: newsletter
                        user_attribute_identifier: Email (Standard)
                        tags:
                        - newsletter
                        team: Retention Team
                      connector:
                        connector_type: SENDGRID
                        connector_name: SendgridPrimary
                      campaign_content:
                        content:
                          email:
                            subject: Your weekly digest is here
                            preview_text: See what's new this week
                            sender_name: MoEngage Team
                            from_address: hello@example.com
                            reply_to_address: support@example.com
                      scheduling_details:
                        delivery_type: PERIODIC
                        frequency: WEEKLY
                        schedule_time: 09:00:00
                        time_zone: America/New_York
                      segmentation_details:
                        included_filters:
                          filter_operator: and
                          filters:
                          - filter_type: custom_segments
                            name: segment
                            id: seg_xyz789
                      utm_params:
                        utm_source: moengage
                        utm_medium: email
                        utm_campaign: weekly_newsletter
                      campaign_audience_limit:
                        is_campaign_audience_limit_enabled: false
        '400':
          $ref: '#/components/responses/V5ValidationError'
        '401':
          $ref: '#/components/responses/V5Unauthorized'
        '404':
          description: The requested campaign does not exist or does not belong to the authenticated workspace.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V5ErrorEnvelope'
              example:
                response_id: abc-404
                error:
                  code: NOT_FOUND
                  message: Campaign not found.
                  details: []
        '500':
          $ref: '#/components/responses/V5InternalError'
    servers:
    - url: https://api-{dc}.moengage.com/
      description: MoEngage Campaigns API Server
      variables:
        dc:
          default: '01'
          description: Data center (DC) segment in the hostname. Replace `OX` with your workspace DC (01–06 or 101). See [Data centers](/api/introduction#data-centers).
  /v5/campaigns/search:
    post:
      operationId: search_campaigns_v5
      summary: Search Campaigns (V5)
      description: 'Returns the full V5 campaign payload for all campaigns that match the specified filters.

        Supports pagination and filtering by channel, status, tags, name, IDs, dates, delivery

        type, and creator.

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


          | Rate Limit Name | Rate Limit |

          | :--- | :--- |

          | Search campaign per second | The total number of search campaign requests per second per client allowed is 10. |

          | Search campaign per minute | The total number of search campaign requests per minute per client allowed is 100. |

          | Search campaign per hour | The total number of search campaign requests per hour per client allowed is 6000. |


          <Note>

          **Notes**

          * Breaching the limits will reject the request.

          * Per-hour and per-day limits use a rolling window of the last 1 hour and last 24 hours respectively.

          </Note>

          '
      tags:
      - Get Campaign Details
      parameters:
      - $ref: '#/components/parameters/MOE-APPKEY'
      - $ref: '#/components/parameters/X-MOE-Request-Id'
      - $ref: '#/components/parameters/Idempotency-Key-Required'
      requestBody:
        description: 'Provide the search criteria and pagination parameters for finding campaigns.

          '
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SearchV5Request'
            examples:
              filter_by_channel:
                summary: Filter by channel
                value:
                  request_id: '{{request_id}}'
                  limit: 15
                  page: 1
                  campaign_fields:
                    channels:
                    - EMAIL
              filter_by_delivery_type:
                summary: Filter by delivery type
                value:
                  request_id: '{{request_id}}'
                  limit: 15
                  page: 1
                  campaign_fields:
                    campaign_delivery_type:
                    - ONE_TIME
              filter_by_creation_date_range:
                summary: Filter by creation date range
                value:
                  request_id: '{{request_id}}'
                  limit: 15
                  page: 1
                  campaign_fields:
                    created_date:
                      from_date: '{{from_date}}'
                      to_date: '{{to_date}}'
              filter_by_campaign_id:
                summary: Filter by campaign ID
                value:
                  request_id: '{{request_id}}'
                  limit: 1
                  page: 1
                  campaign_fields:
                    ids:
                    - '{{campaign_id}}'
              filter_by_campaign_name:
                summary: Filter by campaign name
                value:
                  request_id: '{{request_id}}'
                  limit: 15
                  page: 1
                  campaign_fields:
                    name: '{{campaign_name_partial}}'
              filter_by_creator:
                summary: Filter by creator
                value:
                  request_id: '{{request_id}}'
                  limit: 15
                  page: 1
                  campaign_fields:
                    created_by:
                    - '{{creator_email}}'
              filter_multiple:
                summary: Filter with multiple fields combined
                value:
                  request_id: '{{request_id}}'
                  limit: 15
                  page: 1
                  campaign_fields:
                    channels:
                    - PUSH
                    campaign_delivery_type:
                    - ONE_TIME
                    status:
                    - ACTIVE
                    - SCHEDULED
                    created_by:
                    - '{{creator_email}}'
                    created_date:
                      from_date: '{{from_date}}'
                      to_date: '{{to_date}}'
                    tags:
                    - '{{tag_name}}'
              include_archived:
                summary: Include archived campaigns
                value:
                  request_id: '{{request_id}}'
                  limit: 15
                  page: 1
                  campaign_fields:
                    channels:
                    - PUSH
                    - EMAIL
                  include_archive_campaigns: true
      responses:
        '200':
          description: Campaigns matching the filter criteria.
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/V5SuccessEnvelope'
                - type: object
                  properties:
                    data:
                      $ref: '#/components/schemas/CampaignSearchResponseData'
              examples:
                push_results:
                  summary: Push campaign results
                  value:
                    response_id: resp-search-001
                    type: campaign
                    data:
                      campaigns:
                      - id: 64a1b2c3d4e5f6a7b8c9d0e1
                        campaign_id: 64a1b2c3d4e5f6a7b8c9d0e1
                        status: ACTIVE
                        channel: PUSH
                        campaign_delivery_type: PERIODIC
                        created_by: marketer@example.com
                        created_at: '2024-01-01 08:00:00.000000'
                        updated_at: '2024-06-01 10:00:00.000000'
                        basic_details:
                          name: Weekly Engagement Push
                          platforms:
                          - ANDROID
                          - IOS
                          tags:
                          - engagement
                          team: Growth Team
                email_results:
                  summary: Email campaign results
                  value:
                    response_id: resp-search-002
                    type: campaign
                    data:
                      campaigns:
                      - id: 64a1b2c3d4e5f6a7b8c9d0e2
                        campaign_id: 64a1b2c3d4e5f6a7b8c9d0e2
                        status: SCHEDULED
                        channel: EMAIL
                        campaign_delivery_type: ONE_TIME
                        created_by: marketer@example.com
                        created_at: '2024-07-04 08:00:54.847000'
                        updated_at: '2024-07-04 09:15:00.000000'
                        basic_details:
                          name: Summer Sale Email
                          content_type: PROMOTIONAL
                          subscription_category: promotions
                          user_attribute_identifier: Email (Standard)
                          tags:
                          - promotional
                          - seasonal
                        connector:
                          connector_type: SENDGRID
                          connector_name: SendgridPrimary
        '400':
          $ref: '#/components/responses/V5ValidationError'
        '401':
          $ref: '#/components/responses/V5Unauthorized'
        '500':
          $ref: '#/components/responses/V5InternalError'
    servers:
    - url: https://api-{dc}.moengage.com/
      description: MoEngage Campaigns API Server
      variables:
        dc:
          default: '01'
          description: Data center (DC) segment in the hostname. Replace `OX` with your workspace DC (01–06 or 101). See [Data centers](/api/introduction#data-centers).
  /v5/campaigns/meta:
    post:
      operationId: get_campaign_meta_v5
      summary: Get Campaign Meta (V5)
      description: 'Returns lightweight metadata for one or more campaigns without loading their full configuration.

        '
      x-mint:
        content: '#### Supported Channels

          - Email

          - Push

          - SMS

          - WhatsApp

          - Facebook

          - Google Ads

          - Connectors


          #### Reachability Information

          - Available only for **scheduled** campaigns (one-time, business event-triggered, and event-triggered).

          - Provides estimated user count that will receive the campaign.

          - Calculated once daily and cached for 24 hours. Multiple API calls within the same day return the cached value.

          - May vary due to app installations/uninstalls or subscription changes.


          #### Rate Limits


          | Rate Limit Name | Rate Limit |

          | :--- | :--- |

          | get campaign meta per second | The total number of get campaign meta requests per second per client allowed is 10. |

          | get campaign meta per minute | The total number of get campaign meta requests per minute per client allowed is 100. |

          | get campaign meta per hour | The total number of get campaign meta requests per hour per client allowed is 6000. |


          <Note>

          **Notes**

          * Breaching the limits will reject the request.

          * Per-hour and per-day limits use a rolling window of the last 1 hour and last 24 hours respectively.

          </Note>

          '
      tags:
      - Get Campaign Details
      parameters:
      - $ref: '#/components/parameters/MOE-APPKEY'
      - $ref: '#/components/parameters/X-MOE-Request-Id'
      - $ref: '#/components/parameters/Idempotency-Key-Required'
      requestBody:
        description: 'Provide the search criteria for retrieving campaign metadata and reachability information.

          '
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MetaV5Request'
            examples:
              filter_by_id_and_status:
                summary: Filter by ID and status
                value:
                  request_id: '{{request_id}}'
                  limit: 15
                  page: 1
                  campaign_fields:
                    id: '{{campaign_id}}'
                    status:
                    - SCHEDULED
                    - ACTIVE
                    - PAUSED
                    - DRAFT
              filter_by_channel_and_date:
                summary: Filter by channel and date range
                value:
                  request_id: '{{request_id}}'
                  limit: 15
                  page: 1
                  campaign_fields:
                    channels:
                    - PUSH
                    - EMAIL
                    created_date:
                      from_date: '2024-01-01T00:00:00'
                      to_date: '2024-12-31T23:59:59'
              filter_by_delivery_type_and_creator:
                summary: Filter by delivery type and creator
                value:
                  request_id: '{{request_id}}'
                  limit: 15
                  page: 1
                  campaign_fields:
                    delivery_type: ONE_TIME
                    created_by:
                    - '{{creator_email}}'
                    name: '{{campaign_name_partial}}'
                    tags:
                    - promotional
                  include_child_campaigns: false
              with_child_counts:
                summary: With child campaign counts
                value:
                  request_id: '{{request_id}}'
                  limit: 15
                  page: 1
                  campaign_fields:
                    channels:
                    - PUSH
                    - EMAIL
                    campaign_delivery_type:
                    - PERIODIC
                    - BUSINESS_EVENT_TRIGGERED
                  include_child_campaigns: true
              reachability:
                summary: Reachability for a scheduled campaign
                value:
                  request_id: '{{request_id}}'
                  limit: 1
                  page: 1
                  campaign_fields:
                    id: '{{campaign_id}}'
                    status:
                    - SCHEDULED
              filter_sms_whatsapp:
                summary: Filter SMS and WhatsApp
                value:
                  request_id: '{{request_id}}'
                  limit: 15
                  page: 1
                  campaign_fields:
                    channels:
                    - SMS
                    - WHATSAPP
                    status:
                    - ACTIVE
      responses:
        '200':
          description: Campaign meta rows
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/V5SuccessEnvelope'
                - type: object
                  properties:
                    data:
                      $ref: '#/components/schemas/CampaignMetaListResponseData'
              examples:
                scheduled_push_with_reachability:
                  summary: Scheduled Push campaign with reachability details
                  value:
                    response_id: resp-meta-001
                    type: campaign
                    data:
                      campaigns:
                      - campaign_id: 64a1b2c3d4e5f6a7b8c9d0e1
                        channel: PUSH
                        platform:
                        - ANDROID
                        - IOS
                        created_by: marketer@example.com
                        campaign_delivery_type: ONE_TIME
                        campaign_name: Summer Sale Campaign
                        campaign_team: Growth Team
                        campaign_tags:
                        - promotional
                        - seasonal
                        campaign_status: SCHEDULED
                        campaign_start_time: '2024-11-28T12:18:00'
                        reachability_details:
                          count: 18182
                          last_updated_time: '2024-11-27T09:05:42.661000'
                periodic_with_child_campaigns:
                  summary: Periodic campaign with child campaign counts
                  value:
                    response_id: resp-meta-002
                    type: campaign
                    data:
                      campaigns:
                      - campaign_id: 64a1b2c3d4e5f6a7b8c9d0e2
                        channel: EMAIL
                        platform: []
                        created_by: marketer@example.com
                        campaign_delivery_type: PERIODIC
                        campaign_name: Weekly Newsletter
                        campaign_team: Retention Team
                        campaign_tags:
                        - newsletter
                        campaign_status: ACTIVE
                        campaign_start_time: '2024-01-01T08:00:00'
                        total_child_campaigns: 12
                        reachability_details: null
        '400':
          description: Request failed schema or field validation.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V5ErrorEnvelope'
              examples:
                missing_request_id:
                  summary: Missing request_id
                  value:
                    response_id: resp-meta-400-a
                    error:
                      code: VALIDATION_FAILED
                      message: One or more fields failed validation.
                      request_id: ''
                      details:
                      - target: request_id
                        message: request_id is required.
                missing_limit:
                  summary: Missing limit
                  value:
                    response_id: resp-meta-400-b
                    error:
                      code: VALIDATION_FAILED
                      message: One or more fields failed validation.
                      request_id: '{{request_id}}'
                      details:
                      - target: limit
                        message: limit is required.
                missing_page:
                  summary: Missing page
                  value:
                    response_id: resp-meta-400-c
                    error:
                      code: VALIDATION_FAILED
                      message: One or more fields failed validation.
                      request_id: '{{request_id}}'
                      details:
                      - target: page
                        message: page is required.
                feature_not_enabled:
                  summary: Feature not enabled for workspace
                  value:
                    response_id: resp-meta-400-d
                    error:
                      code: VALIDATION_FAILED
                      message: Campaign metadata API is not enabled for this workspace.
                      request_id: '{{request_id}}'
                      details: []
        '401':
          $ref: '#/components/responses/V5Unauthorized'
        '500':
          $ref: '#/components/responses/V5InternalError'
    servers:
    - url: https://api-{dc}.moengage.com/
      description: MoEngage Campaigns API Server
      variables:
        dc:
          default: '01'
          description: Data center (DC) segment in the hostname. Replace `OX` with your workspace DC (01–06 or 101). See [Data centers](/api/introduction#data-centers).
  /campaigns/search:
    post:
      operationId: search_campaigns
      summary: Search Campaigns
      description: 'This API fetches a list of Push, Email, or SMS campaigns with all current fields and status. You can pass multiple filters to find specific campaigns.

        '
      x-mint:
        content: "\n#### Search Capabilities\n- Filter by channel, delivery type, status, tags, name, ID, created by, created date\n- Include child campaigns (flow nodes, periodic children)\n- Include archived campaigns\n- Paginated results (max 15 per page)\n\n<Note>\n**Differences in V5**\n\nThe V5 Search Campaigns API (`POST /v5/campaigns/search`) introduces the following behavioral changes:\n\n- **Single-campaign retrieval** is no longer handled by the search endpoint. Use `GET /v5/campaigns/{campaign_id}` instead.\n- The `campaign_fields.id` field (string) is renamed to `campaign_fields.ids` (array of strings) in V5.\n- The `campaign_fields.delivery_type` field is renamed to `campaign_fields.campaign_delivery_type` in V5. Sending the V1 field name returns zero results with no error.\n- `request_id` is required in V1. In V5, it is optional.\n- The response identifier field `campaign_id` is renamed to `id` in V5.\n\nFor a full comparison, see [V1 vs. V5 Search Campaigns: Behavioral Differences](/api/campaigns/search-campaigns-v5-migration).\n</Note>\n\n\n #### Rate Limits\n\n| Rate Limit Name | Rate Limit |\n| :--- | :--- |\n| Search campaign per second | The total number of search campaign requests per second per client allowed is 10. |\n| Search campaign per minute | The total number of search campaign requests per minute per client allowed is 100. |\n| Search campaign per hour | The total number of search campaign requests per hour per client allowed is 6000. | \n\n<Note>\n  **Notes**\n  * Breaching the limits will reject the request.\n  * Per hour and per day limits will consider the calculation based on the last hour and last 24 hrs respectively.\n</Note>\n"
      tags:
      - Get Campaign Details
      parameters:
      - $ref: '#/components/parameters/MOE-APPKEY_2'
      requestBody:
        description: 'Provide the search criteria and pagination parameters for finding campaigns.

          '
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CampaignSearchRequest'
            examples:
              search_by_channel_email:
                summary: Search by Channel (Email)
                value:
                  request_id: search_req_12345
                  campaign_fields:
                    channels:
                    - EMAIL
                  limit: 15
                  page: 1
              search_by_channel_push:
                summary: Search by Channel (Push)
                value:
                  request_id: search_req_67890
                  campaign_fields:
                    channels:
                    - PUSH
                  limit: 15
                  page: 1
              search_by_channel_sms:
                summary: Search by Channel (SMS)
                value:
                  request_id: search_req_sms
                  campaign_fields:
                    channels:
                    - SMS
                  limit: 15
                  page: 1
              search_by_delivery_type:
                summary: Search by Delivery Type
                value:
                  request_id: search_req_periodic
                  campaign_fields:
                    delivery_type:
                    - PERIODIC
                  limit: 15
                  page: 1
              search_by_created_date:
                summary: Search by Created Date
                value:
                  request_id: search_req_date
                  campaign_fields:
                    created_date:
                      from_date: '2024-06-16'
                      to_date: '2024-06-21'
                  limit: 10
                  page: 1
              search_by_campaign_name:
                summary: Search by Campaign Name
                value:
                  request_id: search_req_name
                  campaign_fields:
                    name: Summer Sale Campaign
                  limit: 5
                  page: 1
              search_by_campaign_id:
                summary: Search by Campaign ID
                value:
                  request_id: search_req_id
                  campaign_fields:
                    id: camp_abc123xyz
                  limit: 1
             

# --- truncated at 32 KB (185 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/moengage/refs/heads/main/openapi/moengage-get-campaign-details-api-openapi.yml