> ## Documentation Index
> Fetch the complete documentation index at: https://api-reference.hyperswitch.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Events - List

> List all Events associated with a Merchant Account or Profile.



## OpenAPI

````yaml post /events/{merchant_id}
openapi: 3.0.3
info:
  title: Hyperswitch - API Documentation
  description: >

    ## Get started


    Hyperswitch provides a collection of APIs that enable you to process and
    manage payments.

    Our APIs accept and return JSON in the HTTP body, and return standard HTTP
    response codes.


    You can consume the APIs directly using your favorite HTTP/REST library.


    We have a testing environment referred to "sandbox", which you can setup to
    test API calls without

    affecting production data.

    Currently, our sandbox environment is live while our production environment
    is under development

    and will be available soon.

    You can sign up on our Dashboard to get API keys to access Hyperswitch API.


    ### Environment


    Use the following base URLs when making requests to the APIs:


    | Environment   |  Base URL                          |

    |---------------|------------------------------------|

    | Sandbox       | <https://sandbox.hyperswitch.io>   |

    | Production    | <https://api.hyperswitch.io>       |


    ## Authentication


    When you sign up on our [dashboard](https://app.hyperswitch.io) and create a
    merchant

    account, you are given a secret key (also referred as api-key) and a
    publishable key.

    You may authenticate all API requests with Hyperswitch server by providing
    the appropriate key in

    the request Authorization header.


    | Key             | 
    Description                                                                                 
    |

    |-----------------|-----------------------------------------------------------------------------------------------|

    | api-key         | Private key. Used to authenticate all API requests from
    your merchant server                  |

    | publishable key | Unique identifier for your account. Used to authenticate
    API requests from your app's client  |


    Never share your secret api keys. Keep them guarded and secure.
  contact:
    name: Hyperswitch Support
    url: https://hyperswitch.io
    email: support.global@juspay.io
  license:
    name: Apache-2.0
  version: 0.1.0
servers:
  - url: https://sandbox.hyperswitch.io
    description: Sandbox Environment
security: []
tags:
  - name: Merchant Account
    description: Create and manage merchant accounts
  - name: Profile
    description: Create and manage profiles
  - name: Merchant Connector Account
    description: Create and manage merchant connector accounts
  - name: Payments
    description: Create and manage one-time payments, recurring payments and mandates
  - name: Refunds
    description: Create and manage refunds for successful payments
  - name: Mandates
    description: Manage mandates
  - name: Customers
    description: Create and manage customers
  - name: Payment Methods
    description: Create and manage payment methods of customers
  - name: Disputes
    description: Manage disputes
  - name: API Key
    description: Create and manage API Keys
  - name: Payouts
    description: Create and manage payouts
  - name: payment link
    description: Create payment link
  - name: Routing
    description: Create and manage routing configurations
  - name: Event
    description: Manage events
  - name: Authentication
    description: Create and manage authentication
  - name: Subscriptions
    description: Subscription management and billing endpoints
  - name: Card Issuer
    description: Create and manage card issuers
paths:
  /events/{merchant_id}:
    post:
      tags:
        - Event
      summary: Events - List
      description: List all Events associated with a Merchant Account or Profile.
      operationId: List all Events associated with a Merchant Account or Profile
      parameters:
        - name: merchant_id
          in: path
          description: The unique identifier for the Merchant Account.
          required: true
          schema:
            type: string
      requestBody:
        description: The constraints that can be applied when listing Events.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EventListConstraints'
            examples:
              example:
                value:
                  created_after: '2023-01-01T00:00:00'
                  created_before: '2023-01-31T23:59:59'
                  event_classes:
                    - payments
                    - refunds
                  event_types:
                    - payment_succeeded
                  is_delivered: true
                  limit: 5
                  object_id: '{{object_id}}'
                  offset: 0
                  profile_id: '{{profile_id}}'
        required: true
      responses:
        '200':
          description: List of Events retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TotalEventsResponse'
      security:
        - admin_api_key: []
components:
  schemas:
    EventListConstraints:
      type: object
      description: The constraints to apply when filtering events.
      properties:
        created_after:
          type: string
          format: date-time
          description: Filter events created after the specified time.
          nullable: true
        created_before:
          type: string
          format: date-time
          description: Filter events created before the specified time.
          nullable: true
        limit:
          type: integer
          format: int32
          description: Include at most the specified number of events.
          nullable: true
          minimum: 0
        offset:
          type: integer
          format: int32
          description: Include events after the specified offset.
          nullable: true
          minimum: 0
        object_id:
          type: string
          description: >-
            Filter all events associated with the specified object identifier
            (Payment Intent ID,

            Refund ID, etc.)
          nullable: true
        event_id:
          type: string
          description: Filter all events associated with the specified Event_id
          nullable: true
        profile_id:
          type: string
          description: Filter all events associated with the specified business profile ID.
          nullable: true
        event_classes:
          type: array
          items:
            $ref: '#/components/schemas/EventClass'
          description: Filter events by their class.
          uniqueItems: true
          nullable: true
        event_types:
          type: array
          items:
            $ref: '#/components/schemas/EventType'
          description: Filter events by their type.
          uniqueItems: true
          nullable: true
        is_delivered:
          type: boolean
          description: >-
            Filter all events by `is_overall_delivery_successful` field of the
            event.
          nullable: true
    TotalEventsResponse:
      type: object
      description: The response body of list initial delivery attempts api call.
      required:
        - events
        - total_count
      properties:
        events:
          type: array
          items:
            $ref: '#/components/schemas/EventListItemResponse'
          description: The list of events
        total_count:
          type: integer
          format: int64
          description: Count of total events
    EventClass:
      type: string
      enum:
        - payments
        - refunds
        - disputes
        - mandates
        - payouts
        - subscriptions
    EventType:
      type: string
      enum:
        - payment_succeeded
        - payment_failed
        - payment_processing
        - payment_cancelled
        - payment_cancelled_post_capture
        - payment_authorized
        - payment_partially_authorized
        - payment_captured
        - payment_expired
        - action_required
        - refund_succeeded
        - refund_failed
        - dispute_opened
        - dispute_expired
        - dispute_accepted
        - dispute_cancelled
        - dispute_challenged
        - dispute_won
        - dispute_lost
        - mandate_active
        - mandate_revoked
        - payout_success
        - payout_failed
        - payout_initiated
        - payout_processing
        - payout_cancelled
        - payout_expired
        - payout_reversed
        - invoice_paid
    EventListItemResponse:
      type: object
      description: The response body for each item when listing events.
      required:
        - event_id
        - merchant_id
        - profile_id
        - object_id
        - event_type
        - event_class
        - initial_attempt_id
        - created
      properties:
        event_id:
          type: string
          description: The identifier for the Event.
          example: evt_018e31720d1b7a2b82677d3032cab959
          maxLength: 64
        merchant_id:
          type: string
          description: The identifier for the Merchant Account.
          example: y3oqhf46pyzuxjbcn2giaqnb44
          maxLength: 64
        profile_id:
          type: string
          description: The identifier for the Business Profile.
          example: SqB0zwDGR5wHppWf0bx7GKr1f2
          maxLength: 64
        object_id:
          type: string
          description: The identifier for the object (Payment Intent ID, Refund ID, etc.)
          example: QHrfd5LUDdZaKtAjdJmMu0dMa1
          maxLength: 64
        event_type:
          $ref: '#/components/schemas/EventType'
        event_class:
          $ref: '#/components/schemas/EventClass'
        is_delivery_successful:
          type: boolean
          description: Indicates whether the webhook was ultimately delivered or not.
          nullable: true
        initial_attempt_id:
          type: string
          description: >-
            The identifier for the initial delivery attempt. This will be the
            same as `event_id` for

            the initial delivery attempt.
          example: evt_018e31720d1b7a2b82677d3032cab959
          maxLength: 64
        created:
          type: string
          format: date-time
          description: Time at which the event was created.
          example: '2022-09-10T10:11:12Z'
  securitySchemes:
    admin_api_key:
      type: apiKey
      in: header
      name: api-key
      description: >-
        Admin API keys allow you to perform some privileged actions such as
        creating a merchant account and Merchant Connector account.

````