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

# Trigger Business Event

> This API triggers a business event in MoEngage. You can set up campaigns to be executed when these events are triggered.


#### Rate Limit

For Campaigns:

* You can send a maximum of 200 triggers per day
* You can send a maximum of 50 triggers per hour.

For Flows:

* You can trigger a maximum of 3 Business Trigger flows per hour.
* You can trigger a maximum of 10 Business Trigger flows per day.


## OpenAPI

````yaml /api/business-events/business-events.yaml post /business_event/trigger
openapi: 3.0.3
info:
  title: MoEngage Business Events API
  description: >
    API for creating, triggering, and searching business events in MoEngage.


    You can use these events to trigger campaigns whenever they occur. For
    example, you can create business events for various situations, such as when
    new episodes of an OTT series become available, when there is a flight
    delay, or when there is a price drop on an item in a cart.


    **Postman Collections**

    We have made it easy for you to test the APIs. [View in
    Postman](https://www.postman.com/moengage-dev/workspace/api-docs/collection/3182294-38587f83-f039-46f3-b86e-10af2c918053).
  version: '1.0'
servers:
  - url: https://api-{dc}.moengage.com/v1.0
    description: MoEngage 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: Business Events
    description: Manage and trigger business events.
paths:
  /business_event/trigger:
    post:
      tags:
        - Business Events
      summary: Trigger Business Event
      description: >
        This API triggers a business event in MoEngage. You can set up campaigns
        to be executed when these events are triggered.
      operationId: triggerBusinessEvent
      requestBody:
        description: Event to trigger.
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - event_name
                - event_attributes
              properties:
                event_name:
                  type: string
                  description: The name of the business event to be triggered.
                  example: Series_Name
                event_attributes:
                  type: object
                  description: >
                    This field contains the event attributes with which the
                    business event will be triggered.


                    **Structure:** "event_attributes": { "attribute_name1":
                    "<attribute value>", ... }


                    Every attribute contains the following information:

                    *attribute_name* - This field contains the name of the
                    business event attribute for which the value is being sent
                    in the request. The attribute_name is a String.


                    **Example:** "attribute_name": "season"
                  additionalProperties: true
                  example:
                    season: Season 1
                    episodes: 12
                    cast:
                      - John Doe
                      - Jane Doe
                    date: 11/11/2023
                triggered_by:
                  type: string
                  format: email
                  description: Information about who triggered the business event.
                  example: john.doe@example.com
            example:
              event_name: Series_Name
              event_attributes:
                season: Season 1
                episodes: 12
                cast:
                  - John Doe
                  - Jane Doe
                date: 11/11/2023
              triggered_by: john.doe@example.com
      responses:
        '200':
          description: >-
            This response is returned when the request is processed
            successfully.
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    example: The business event has been triggered
        '400':
          description: >-
            This response is returned when the required parameters are missing
            from the request or when the provided parameters are invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                eventNotFound:
                  summary: Event does not exist
                  value:
                    error:
                      code: 400 Bad Request
                      message: Business event does not exists
                      details:
                        - code: InvalidValue
                          target: event_name
                          message: Business event does not exist
                      request_id: 64a54cf9633fda13b668132f
                wrongAttribute:
                  summary: Wrong Attribute
                  value:
                    error:
                      code: 400 Bad Request
                      message: Wrong business event attribute passed in api request
                      details:
                        - code: InvalidValue
                          target: rating1
                          message: Wrong business event attribute passed in api request
                      request_id: 64a54b0f633fda13b6681259
                noActiveCampaign:
                  summary: No active campaign found
                  value:
                    error:
                      code: 400 Bad Request
                      message: No active campaign found for business event name
                      details:
                        - code: InvalidValue
                          target: event_name
                          message: No active campaign found for business event name
                      request_id: 64a54dbf633fda13b668142d
                invalidEmail:
                  summary: Invalid Email
                  value:
                    error:
                      code: 400 Bad Request
                      message: Business event does not exists
                      details:
                        - code: MissingValue
                          target: triggered_by
                          message: 'triggered_by - Invalid email address : ''abc'''
                      request_id: 64a54dec633fda13b668142f
        '401':
          description: >-
            This response is returned when the authorization parameters are
            missing or incorrect in the HTTP Auth Header.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: 401 Authentication error
                  message: Authentication required
                  details:
                    - code: InvalidValue
                      target: Authorization
                      message:
                        code: MissingValue
                        target: Authorization
                        message: >-
                          APP_ID and APP_SECRET_KEY is missing in Authorization
                          Header.
                  request_id: 64a54e0e633fda13b6681430
        '429':
          description: >-
            This response is returned when the number of requests has exceeded
            the rate limit.
          content:
            application/json:
              schema:
                type: object
              example:
                status: error
                data:
                  code: 429
                  title: rate limiter exception
                  description: Exceeded rate limit for this app
        '500':
          description: >-
            This response is returned when the system runs into an unexpected
            error.
          content:
            application/json:
              schema:
                type: object
              example:
                title: Internal Server Error
                message: >-
                  An unexpected error was encountered while processing this
                  request. Please contact MoEngage Team
components:
  schemas:
    ErrorResponse:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              description: This field contains the error code.
              example: 400 Bad Request
            message:
              type: string
              description: This field contains the error message.
              example: Bad request
            details:
              type: array
              description: >-
                This array contains the specifics and describes the error in
                detail.
              items:
                type: object
                properties:
                  code:
                    type: string
                    example: InvalidValue
                  target:
                    oneOf:
                      - type: string
                      - type: array
                        items:
                          type: string
                    example: event_name
                  message:
                    oneOf:
                      - type: string
                      - type: object
                      - type: array
                    example: Business event does not exist
            request_id:
              type: string
              description: This field contains the request ID of the failed request.
              example: 64a54cf9633fda13b668132f
  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).

````