openapi: 3.1.0
servers:
- url: https://cal-test.adyen.com/cal/services/Notification/v6
info:
  version: '6'
  x-publicVersion: true
  title: Notification Configuration API
  description: "This API is used for the classic integration. If you are just starting\
    \ your implementation, refer to our [new integration guide](https://docs.adyen.com/adyen-for-platforms-model)\
    \ instead.\n\nThe Notification Configuration API provides endpoints for setting\
    \ up and testing notifications that inform you of events on your platform, for\
    \ example when a verification check or a payout has been completed.\n\nFor more\
    \ information, refer to our [documentation](https://docs.adyen.com/classic-platforms/notifications).\n\
    ## Authentication\nYour Adyen contact will provide your API credential and an\
    \ API key. To connect to the API, add an `X-API-Key` header with the API key as\
    \ the value, for example:\n\n ```\ncurl\n-H \"Content-Type: application/json\"\
    \ \\\n-H \"X-API-Key: YOUR_API_KEY\" \\\n...\n```\n\nAlternatively, you can use\
    \ the username and password to connect to the API using basic authentication.\
    \ For example:\n\n```\ncurl\n-U \"ws@MarketPlace.YOUR_PLATFORM_ACCOUNT\":\"YOUR_WS_PASSWORD\"\
    \ \\\n-H \"Content-Type: application/json\" \\\n...\n```\nWhen going live, you\
    \ need to generate new web service user credentials to access the [live endpoints](https://docs.adyen.com/development-resources/live-endpoints).\n\
    \n## Versioning\nThe Notification Configuration API supports [versioning](https://docs.adyen.com/development-resources/versioning)\
    \ using a version suffix in the endpoint URL. This suffix has the following format:\
    \ \"vXX\", where XX is the version number.\n\nFor example:\n```\nhttps://cal-test.adyen.com/cal/services/Notification/v6/createNotificationConfiguration\n\
    ```"
  termsOfService: https://www.adyen.com/legal/terms-and-conditions
  contact:
    name: Adyen Developer Experience team
    url: https://github.com/Adyen/adyen-openapi
tags:
- name: General
paths:
  /createNotificationConfiguration:
    post:
      tags:
      - General
      summary: Subscribe to notifications
      description: Creates a subscription to notifications informing you of events
        on your platform. After the subscription is created, the events specified
        in the configuration will be sent to the URL specified in the configuration.
        Subscriptions must be configured on a per-event basis (as opposed to, for
        example, a per-account holder basis), so all event notifications of a marketplace
        and of a given type will be sent to the same endpoint(s). A marketplace may
        have multiple endpoints if desired; an event notification may be sent to as
        many or as few different endpoints as configured.
      operationId: post-createNotificationConfiguration
      x-sortIndex: 1
      x-methodName: createNotificationConfiguration
      security:
      - BasicAuth: []
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              basic:
                $ref: '#/components/examples/post-createNotificationConfiguration-basic'
            schema:
              $ref: '#/components/schemas/CreateNotificationConfigurationRequest'
      responses:
        '200':
          content:
            application/json:
              examples:
                basic:
                  $ref: '#/components/examples/post-createNotificationConfiguration-basic-200'
              schema:
                $ref: '#/components/schemas/GetNotificationConfigurationResponse'
          description: OK - the request has succeeded.
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Bad Request - a problem reading or understanding the request.
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unauthorized - authentication required.
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Forbidden - insufficient permissions to process the request.
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unprocessable Entity - a request validation error.
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Internal Server Error - the server could not process the request.
  /deleteNotificationConfigurations:
    post:
      tags:
      - General
      summary: Delete a notification subscription configuration
      description: Deletes an existing notification subscription configuration. After
        the subscription is deleted, no further event notifications will be sent to
        the URL defined in the subscription.
      operationId: post-deleteNotificationConfigurations
      x-sortIndex: 6
      x-methodName: deleteNotificationConfigurations
      security:
      - BasicAuth: []
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              basic:
                $ref: '#/components/examples/post-deleteNotificationConfigurations-basic'
            schema:
              $ref: '#/components/schemas/DeleteNotificationConfigurationRequest'
      responses:
        '200':
          content:
            application/json:
              examples:
                basic:
                  $ref: '#/components/examples/post-deleteNotificationConfigurations-basic-200'
              schema:
                $ref: '#/components/schemas/GenericResponse'
          description: OK - the request has succeeded.
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Bad Request - a problem reading or understanding the request.
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unauthorized - authentication required.
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Forbidden - insufficient permissions to process the request.
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unprocessable Entity - a request validation error.
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Internal Server Error - the server could not process the request.
  /getNotificationConfiguration:
    post:
      tags:
      - General
      summary: Get a notification subscription configuration
      description: Returns the details of the configuration of a notification subscription.
      operationId: post-getNotificationConfiguration
      x-sortIndex: 2
      x-methodName: getNotificationConfiguration
      security:
      - BasicAuth: []
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              basic:
                $ref: '#/components/examples/post-getNotificationConfiguration-basic'
            schema:
              $ref: '#/components/schemas/GetNotificationConfigurationRequest'
      responses:
        '200':
          content:
            application/json:
              examples:
                basic:
                  $ref: '#/components/examples/post-getNotificationConfiguration-basic-200'
              schema:
                $ref: '#/components/schemas/GetNotificationConfigurationResponse'
          description: OK - the request has succeeded.
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Bad Request - a problem reading or understanding the request.
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unauthorized - authentication required.
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Forbidden - insufficient permissions to process the request.
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unprocessable Entity - a request validation error.
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Internal Server Error - the server could not process the request.
  /getNotificationConfigurationList:
    post:
      tags:
      - General
      summary: Get a list of notification subscription configurations
      description: Returns the details of the configurations of all of the notification
        subscriptions in the platform of the executing user.
      operationId: post-getNotificationConfigurationList
      x-sortIndex: 3
      x-methodName: getNotificationConfigurationList
      security:
      - BasicAuth: []
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              basic:
                $ref: '#/components/examples/post-getNotificationConfigurationList-basic'
            schema:
              $ref: '#/components/schemas/EmptyRequest'
      responses:
        '200':
          content:
            application/json:
              examples:
                basic:
                  $ref: '#/components/examples/post-getNotificationConfigurationList-basic-200'
              schema:
                $ref: '#/components/schemas/GetNotificationConfigurationListResponse'
          description: OK - the request has succeeded.
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Bad Request - a problem reading or understanding the request.
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unauthorized - authentication required.
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Forbidden - insufficient permissions to process the request.
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unprocessable Entity - a request validation error.
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Internal Server Error - the server could not process the request.
  /testNotificationConfiguration:
    post:
      tags:
      - General
      summary: Test a notification configuration
      description: Tests an existing notification subscription configuration. For
        each event type specified, a test notification will be generated and sent
        to the URL configured in the subscription specified.
      operationId: post-testNotificationConfiguration
      x-sortIndex: 4
      x-methodName: testNotificationConfiguration
      security:
      - BasicAuth: []
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              basic:
                $ref: '#/components/examples/post-testNotificationConfiguration-basic'
            schema:
              $ref: '#/components/schemas/TestNotificationConfigurationRequest'
      responses:
        '200':
          content:
            application/json:
              examples:
                basic:
                  $ref: '#/components/examples/post-testNotificationConfiguration-basic-200'
              schema:
                $ref: '#/components/schemas/TestNotificationConfigurationResponse'
          description: OK - the request has succeeded.
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Bad Request - a problem reading or understanding the request.
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unauthorized - authentication required.
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Forbidden - insufficient permissions to process the request.
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unprocessable Entity - a request validation error.
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Internal Server Error - the server could not process the request.
  /updateNotificationConfiguration:
    post:
      tags:
      - General
      summary: Update a notification subscription configuration
      description: Updates an existing notification subscription configuration. If
        you are updating the event types, you must provide all event types, otherwise
        the previous event type configuration will be overwritten.
      operationId: post-updateNotificationConfiguration
      x-sortIndex: 5
      x-methodName: updateNotificationConfiguration
      security:
      - BasicAuth: []
      - ApiKeyAuth: []
      requestBody:
        content:
          application/json:
            examples:
              basic:
                $ref: '#/components/examples/post-updateNotificationConfiguration-basic'
            schema:
              $ref: '#/components/schemas/UpdateNotificationConfigurationRequest'
      responses:
        '200':
          content:
            application/json:
              examples:
                basic:
                  $ref: '#/components/examples/post-updateNotificationConfiguration-basic-200'
              schema:
                $ref: '#/components/schemas/GetNotificationConfigurationResponse'
          description: OK - the request has succeeded.
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Bad Request - a problem reading or understanding the request.
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unauthorized - authentication required.
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Forbidden - insufficient permissions to process the request.
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Unprocessable Entity - a request validation error.
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceError'
          description: Internal Server Error - the server could not process the request.
components:
  schemas:
    CreateNotificationConfigurationRequest:
      additionalProperties: false
      properties:
        configurationDetails:
          description: Details of the prospective notification subscription configuration.
          $ref: '#/components/schemas/NotificationConfigurationDetails'
      required:
      - configurationDetails
      type: object
    DeleteNotificationConfigurationRequest:
      additionalProperties: false
      properties:
        notificationIds:
          description: A list of IDs of the notification subscription configurations
            to be deleted.
          items:
            format: int64
            type: integer
          type: array
      required:
      - notificationIds
      type: object
    EmptyRequest:
      additionalProperties: false
      type: object
    ErrorFieldType:
      additionalProperties: false
      properties:
        errorCode:
          description: The validation error code.
          format: int32
          type: integer
        errorDescription:
          description: A description of the validation error.
          type: string
        fieldType:
          description: The type of error field.
          $ref: '#/components/schemas/FieldType'
      type: object
    ExchangeMessage:
      additionalProperties: false
      properties:
        messageCode:
          type: string
        messageDescription:
          type: string
      type: object
    FieldType:
      additionalProperties: false
      properties:
        field:
          description: The full name of the property.
          type: string
        fieldName:
          description: The type of the field.
          enum:
          - accountCode
          - accountHolderCode
          - accountHolderDetails
          - accountNumber
          - accountStateType
          - accountStatus
          - accountType
          - address
          - balanceAccount
          - balanceAccountActive
          - balanceAccountCode
          - balanceAccountId
          - bankAccount
          - bankAccountCode
          - bankAccountName
          - bankAccountUUID
          - bankBicSwift
          - bankCity
          - bankCode
          - bankName
          - bankStatement
          - branchCode
          - businessContact
          - cardToken
          - checkCode
          - city
          - companyRegistration
          - constitutionalDocument
          - controller
          - country
          - countryCode
          - currency
          - currencyCode
          - dateOfBirth
          - description
          - destinationAccountCode
          - document
          - documentContent
          - documentExpirationDate
          - documentIssuerCountry
          - documentIssuerState
          - documentName
          - documentNumber
          - documentType
          - doingBusinessAs
          - drivingLicence
          - drivingLicenceBack
          - drivingLicenceFront
          - drivingLicense
          - email
          - firstName
          - formType
          - fullPhoneNumber
          - gender
          - hopWebserviceUser
          - houseNumberOrName
          - iban
          - idCard
          - idCardBack
          - idCardFront
          - idNumber
          - identityDocument
          - individualDetails
          - infix
          - jobTitle
          - lastName
          - lastReviewDate
          - legalArrangement
          - legalArrangementCode
          - legalArrangementEntity
          - legalArrangementEntityCode
          - legalArrangementLegalForm
          - legalArrangementMember
          - legalArrangementMembers
          - legalArrangementName
          - legalArrangementReference
          - legalArrangementRegistrationNumber
          - legalArrangementTaxNumber
          - legalArrangementType
          - legalBusinessName
          - legalEntity
          - legalEntityType
          - linkedViasVirtualAccount
          - logo
          - merchantAccount
          - merchantCategoryCode
          - merchantHouseNumber
          - merchantReference
          - microDeposit
          - name
          - nationality
          - originalReference
          - ownerCity
          - ownerCountryCode
          - ownerDateOfBirth
          - ownerHouseNumberOrName
          - ownerName
          - ownerPostalCode
          - ownerState
          - ownerStreet
          - passport
          - passportNumber
          - payoutMethod
          - payoutMethodCode
          - payoutSchedule
          - pciSelfAssessment
          - personalData
          - phoneCountryCode
          - phoneNumber
          - postalCode
          - primaryCurrency
          - reason
          - registrationNumber
          - returnUrl
          - schedule
          - shareholder
          - shareholderCode
          - shareholderCodeAndSignatoryCode
          - shareholderCodeOrSignatoryCode
          - shareholderType
          - shareholderTypes
          - shopperInteraction
          - signatory
          - signatoryCode
          - socialSecurityNumber
          - sourceAccountCode
          - splitAccount
          - splitConfigurationUUID
          - splitCurrency
          - splitValue
          - splits
          - stateOrProvince
          - status
          - stockExchange
          - stockNumber
          - stockTicker
          - store
          - storeDetail
          - storeName
          - storeReference
          - street
          - taxId
          - tier
          - tierNumber
          - transferCode
          - ultimateParentCompany
          - ultimateParentCompanyAddressDetails
          - ultimateParentCompanyAddressDetailsCountry
          - ultimateParentCompanyBusinessDetails
          - ultimateParentCompanyBusinessDetailsLegalBusinessName
          - ultimateParentCompanyBusinessDetailsRegistrationNumber
          - ultimateParentCompanyCode
          - ultimateParentCompanyStockExchange
          - ultimateParentCompanyStockNumber
          - ultimateParentCompanyStockNumberOrStockTicker
          - ultimateParentCompanyStockTicker
          - unknown
          - value
          - verificationType
          - virtualAccount
          - visaNumber
          - webAddress
          - year
          type: string
        shareholderCode:
          description: The code of the shareholder that the field belongs to. If empty,
            the field belongs to an account holder.
          type: string
      type: object
    GenericResponse:
      additionalProperties: false
      properties:
        invalidFields:
          x-addedInVersion: '5'
          description: Contains field validation errors that would prevent requests
            from being processed.
          items:
            $ref: '#/components/schemas/ErrorFieldType'
          type: array
        pspReference:
          description: The reference of a request. Can be used to uniquely identify
            the request.
          type: string
        resultCode:
          description: The result code.
          type: string
      type: object
    GetNotificationConfigurationListResponse:
      additionalProperties: false
      properties:
        configurations:
          description: Details of the notification subscription configurations.
          items:
            $ref: '#/components/schemas/NotificationConfigurationDetails'
          type: array
        invalidFields:
          x-addedInVersion: '5'
          description: Contains field validation errors that would prevent requests
            from being processed.
          items:
            $ref: '#/components/schemas/ErrorFieldType'
          type: array
        pspReference:
          description: The reference of a request. Can be used to uniquely identify
            the request.
          type: string
        resultCode:
          description: The result code.
          type: string
      type: object
    GetNotificationConfigurationRequest:
      additionalProperties: false
      properties:
        notificationId:
          description: The ID of the notification subscription configuration whose
            details are to be retrieved.
          format: int64
          type: integer
      required:
      - notificationId
      type: object
    GetNotificationConfigurationResponse:
      additionalProperties: false
      properties:
        configurationDetails:
          description: Details of the notification subscription configuration.
          $ref: '#/components/schemas/NotificationConfigurationDetails'
        invalidFields:
          x-addedInVersion: '5'
          description: Contains field validation errors that would prevent requests
            from being processed.
          items:
            $ref: '#/components/schemas/ErrorFieldType'
          type: array
        pspReference:
          description: The reference of a request. Can be used to uniquely identify
            the request.
          type: string
        resultCode:
          description: The result code.
          type: string
      required:
      - configurationDetails
      type: object
    NotificationConfigurationDetails:
      additionalProperties: false
      properties:
        active:
          description: Indicates whether the notification subscription is active.
          type: boolean
        apiVersion:
          description: The version of the notification to which you are subscribing.
            To make sure that your integration can properly process the notification,
            subscribe to the same version as the API that you're using.
          format: int32
          type: integer
        description:
          description: A description of the notification subscription configuration.
          type: string
        eventConfigs:
          description: Contains objects that define event types and their subscription
            settings.
          items:
            $ref: '#/components/schemas/NotificationEventConfiguration'
          type: array
        hmacSignatureKey:
          x-addedInVersion: '5'
          description: 'A string with which to salt the notification(s) before hashing.
            If this field is provided, a hash value will be included under the notification
            header `HmacSignature` and the hash protocol will be included under the
            notification header `Protocol`. A notification body along with its `hmacSignatureKey`
            and `Protocol` can be used to calculate a hash value; matching this hash
            value with the `HmacSignature` will ensure that the notification body
            has not been tampered with or corrupted.


            >Must be a 32-byte hex-encoded string (i.e. a string containing 64 hexadecimal
            characters; e.g. "b0ea55c2fe60d4d1d605e9c385e0e7f7e6cafbb939ce07010f31a327a0871f27").


            The omission of this field will preclude the provision of the `HmacSignature`
            and `Protocol` headers in notification(s).'
          type: string
        notificationId:
          description: Adyen-generated ID for the entry, returned in the response
            when you create a notification configuration. Required when updating an
            existing configuration using [`/updateNotificationConfiguration`](https://docs.adyen.com/api-explorer/#/NotificationConfigurationService/latest/post/updateNotificationConfiguration).
          format: int64
          type: integer
        notifyPassword:
          description: The password to use when accessing the notifyURL with the specified
            username.
          type: string
        notifyURL:
          description: The URL to which the notifications are to be sent.
          type: string
        notifyUsername:
          description: The username to use when accessing the notifyURL.
          type: string
        sslProtocol:
          description: 'The SSL protocol employed by the endpoint.

            >Permitted values: `TLSv12`, `TLSv13`.'
          enum:
          - TLSv12
          - TLSv13
          type: string
      type: object
    NotificationEventConfiguration:
      additionalProperties: false
      properties:
        eventType:
          description: 'The type of event.


            Possible values: **ACCOUNT_CLOSED**, **ACCOUNT_CREATED**, **ACCOUNT_FUNDS_BELOW_THRESHOLD**,
            **ACCOUNT_HOLDER_CREATED**, **ACCOUNT_HOLDER_LIMIT_REACHED**, **ACCOUNT_HOLDER_PAYOUT**,
            **ACCOUNT_HOLDER_STATUS_CHANGE**, **ACCOUNT_HOLDER_STORE_STATUS_CHANGE**,
            **ACCOUNT_HOLDER_UPCOMING_DEADLINE**, **ACCOUNT_HOLDER_UPDATED**, **ACCOUNT_HOLDER_VERIFICATION**,
            **ACCOUNT_UPDATED**, **BENEFICIARY_SETUP**, **COMPENSATE_NEGATIVE_BALANCE**,
            **DIRECT_DEBIT_INITIATED**, **PAYMENT_FAILURE**, **REFUND_FUNDS_TRANSFER**,
            **REPORT_AVAILABLE**, **SCHEDULED_REFUNDS**, **TRANSFER_FUNDS**.'
          enum:
          - ACCOUNT_CLOSED
          - ACCOUNT_CREATED
          - ACCOUNT_FUNDS_BELOW_THRESHOLD
          - ACCOUNT_HOLDER_CREATED
          - ACCOUNT_HOLDER_LIMIT_REACHED
          - ACCOUNT_HOLDER_MIGRATED
          - ACCOUNT_HOLDER_PAYOUT
          - ACCOUNT_HOLDER_STATUS_CHANGE
          - ACCOUNT_HOLDER_STORE_STATUS_CHANGE
          - ACCOUNT_HOLDER_UPCOMING_DEADLINE
          - ACCOUNT_HOLDER_UPDATED
          - ACCOUNT_HOLDER_VERIFICATION
          - ACCOUNT_UPDATED
          - BENEFICIARY_SETUP
          - COMPENSATE_NEGATIVE_BALANCE
          - DIRECT_DEBIT_INITIATED
          - FUNDS_MIGRATED
          - PAYMENT_FAILURE
          - PENDING_CREDIT
          - REFUND_FUNDS_TRANSFER
          - REPORT_AVAILABLE
          - SCHEDULED_REFUNDS
          - SCORE_SIGNAL_TRIGGERED
          - TRANSFER_FUNDS
          - TRANSFER_NOT_PAIDOUT_TRANSFERS
          type: string
        includeMode:
          description: 'Indicates whether the specified `eventType` is sent to your
            webhook endpoint.

            Possible values:

            * **INCLUDE**: Send the specified `eventType`.

            * **EXCLUDE**: Send all event types except the specified `eventType` and
            other event types with the `includeMode` set to **EXCLUDE**.'
          enum:
          - EXCLUDE
          - INCLUDE
          type: string
      required:
      - eventType
      - includeMode
      type: object
    ServiceError:
      additionalProperties: false
      properties:
        errorCode:
          description: The error code mapped to the error message.
          type: string
        errorType:
          description: The category of the error.
          type: string
        message:
          description: A short explanation of the issue.
          type: string
        pspReference:
          description: The PSP reference of the payment.
          type: string
        status:
          description: The HTTP response status.
          format: int32
          type: integer
      type: object
    TestNotificationConfigurationRequest:
      additionalProperties: false
      properties:
        eventTypes:
          description: 'The event types to test.  If left blank, then all of the configured
            event types will be tested.

            >Permitted values: `ACCOUNT_HOLDER_CREATED`, `ACCOUNT_CREATED`, `ACCOUNT_UPDATED`,
            `ACCOUNT_HOLDER_UPDATED`, `ACCOUNT_HOLDER_STATUS_CHANGE`, `ACCOUNT_HOLDER_STORE_STATUS_CHANGE`
            `ACCOUNT_HOLDER_VERIFICATION`, `ACCOUNT_HOLDER_LIMIT_REACHED`, `ACCOUNT_HOLDER_PAYOUT`,
            `PAYMENT_FAILURE`, `SCHEDULED_REFUNDS`, `REPORT_AVAILABLE`, `TRANSFER_FUNDS`,
            `BENEFICIARY_SETUP`, `COMPENSATE_NEGATIVE_BALANCE`.'
          items:
            enum:
            - ACCOUNT_CLOSED
            - ACCOUNT_CREATED
            - ACCOUNT_FUNDS_BELOW_THRESHOLD
            - ACCOUNT_HOLDER_CREATED
            - ACCOUNT_HOLDER_LIMIT_REACHED
            - ACCOUNT_HOLDER_MIGRATED
            - ACCOUNT_HOLDER_PAYOUT
            - ACCOUNT_HOLDER_STATUS_CHANGE
            - ACCOUNT_HOLDER_STORE_STATUS_CHANGE
            - ACCOUNT_HOLDER_UPCOMING_DEADLINE
            - ACCOUNT_HOLDER_UPDATED
            - ACCOUNT_HOLDER_VERIFICATION
            - ACCOUNT_UPDATED
            - BENEFICIARY_SETUP
            - COMPENSATE_NEGATIVE_BALANCE
            - DIRECT_DEBIT_INITIATED
            - FUNDS_MIGRATED
            - PAYMENT_FAILURE
            - PENDING_CREDIT
            - REFUND_FUNDS_TRANSFER
            - REPORT_AVAILABLE
            - SCHEDULED_REFUNDS
            - SCORE_SIGNAL_TRIGGERED
            - TRANSFER_FUNDS
            - TRANSFER_NOT_PAIDOUT_TRANSFERS
            type: string
          type: array
        notificationId:
          description: The ID of the notification subscription configuration to be
            tested.
          format: int64
          type: integer
      required:
      - notificationId
      type: object
    TestNotificationConfigurationResponse:
      additionalProperties: false
      properties:
        errorMessages:
          description: Any error messages encountered.
          items:
            type: string
          type: array
        eventTypes:
          description: 'The event types that were tested.

            >Permitted values: `ACCOUNT_HOLDER_CREATED`, `ACCOUNT_CREATED`, `ACCOUNT_UPDATED`,
            `ACCOUNT_HOLDER_UPDATED`, `ACCOUNT_HOLDER_STATUS_CHANGE`, `ACCOUNT_HOLDER_STORE_STATUS_CHANGE`
            `ACCOUNT_HOLDER_VERIFICATION`, `ACCOUNT_HOLDER_LIMIT_REACHED`, `ACCOUNT_HOLDER_PAYOUT`,
            `PAYMENT_FAILURE`, `SCHEDULED_REFUNDS`, `REPORT_AVAILABLE`, `TRANSFER_FUNDS`,
            `BENEFICIARY_SETUP`, `COMPENSATE_NEGATIVE_BALANCE`.'
          items:
            enum:
            - ACCOUNT_CLOSED
            - ACCOUNT_CREATED
            - ACCOUNT_FUNDS_BELOW_THRESHOLD
            - ACCOUNT_HOLDER_CREATED
            - ACCOUNT_HOLDER_LIMIT_REACHED
            - ACCOUNT_HOLDER_MIGRATED
            - ACCOUNT_HOLDER_PAYOUT
            - ACCOUNT_HOLDER_STATUS_CHANGE
            - ACCOUNT_HOLDER_STORE_STATUS_CHANGE
            - ACCOUNT_HOLDER_UPCOMING_DEADLINE
            - ACCOUNT_HOLDER_UPDATED
            - ACCOUNT_HOLDER_VERIFICATION
            - ACCOUNT_UPDATED
            - BENEFICIARY_SETUP
            - COMPENSATE_NEGATIVE_BALANCE
            - DIRECT_DEBIT_INITIATED
            - FUNDS_MIGRATED
            - PAYMENT_FAILURE
            - PENDING_CREDIT
            - REFUND_FUNDS_TRANSFER
            - REPORT_AVAILABLE
            - SCHEDULED_REFUNDS
            - SCORE_SIGNAL_TRIGGERED
            - TRANSFER_FUNDS
            - TRANSFER_NOT_PAIDOUT_TRANSFERS
            type: string
          type: array
        exchangeMessages:
          description: The notification message and related response messages.
          items:
            $ref: '#/components/schemas/ExchangeMessage'
          type: array
        invalidFields:
          x-addedInVersion: '5'
          description: Contains field validation errors that would prevent requests
            from being processed.
          items:
            $ref: '#/components/schemas/ErrorFieldType'
          type: array
        notificationId:
          description: The ID of the notification subscription configuration.
          format: int64
          type: integer
        okMessages:
          description: A list of messages describing the testing steps.
          items:
            type: string
          type: array
        pspReference:
          description: The reference of a request. Can be used to uniquely identify
            the request.
          type: string
        resultCode:
          description: The result code.
          type: string
      required:
      - notificationId
      type: object
    UpdateNotificationConfigurationRequest:
      additionalProperties: false
      properties:
        configurationDetails:
          description: Details of the notification subscription configuration to be
            updated.
          $ref: '#/components/schemas/NotificationConfigurationDetails'
      required:
      - configurationDetails
      type: object
  securitySchemes:
    ApiKeyAuth:
      in: header
      name: X-API-Key
      type: apiKey
    BasicAuth:
      scheme: basic
      type: http
  examples:
    post-createNotificationConfiguration-basic:
      summary: Create a notification configuration
      value:
        configurationDetails:
          active: true
          description: Unique description 123
          eventConfigs:
          - eventType: ACCOUNT_HOLDER_VERIFICATION
            includeMode: INCLUDE
          notifyURL: https://www.adyen.com/notification-handler
          notifyUsername: testUserName
          notifyPassword: testPassword
          sslProtocol: TLSv13
    post-createNotificationConfiguration-basic-200:
      summary: Example response for request 'basic'
      value:
        pspReference: '8516178952380553'
        configurationDetails:
          active: true
          description: Unique description 123
          eventConfigs:
          - eventType: ACCOUNT_HOLDER_VERIFICATION
            includeMode: INCLUDE
          notificationId: 28468
          notifyURL: https://www.adyen.com/notification-handler
          sslProtocol: TLSv13
    post-deleteNotificationConfigurations-basic:
      summary: Delete a notification configuration
      description: Deletes an existing notification subscription configuration
      value:
        notificationIds:
        - 27891
    post-deleteNotificationConfigurations-basic-200:
      summary: Delete a notification configuration
      description: Example response of deleting a notification configuration
      value:
        pspReference: '8516480472498802'
    post-getNotificationConfiguration-basic:
      summary: Get a notification configuration
      description: Returns the details of the configuration of a notification subscription
      value:
        notificationId: 21259
    post-getNotificationConfiguration-basic-200:
      summary: Get a notification configuration
      description: Example response with a notification configuration
      value:
        pspReference: '8616480378704419'
        configurationDetails:
          active: true
          apiVersion: 5
          description: test
          eventConfigs:
          - eventType: ACCOUNT_HOLDER_VERIFICATION
            includeMode: INCLUDE
          notificationId: 50054
          notifyURL: https://www.adyen.com/notification-handler
          sslProtocol: TLSv13
    post-getNotificationConfigurationList-basic:
      summary: Get a list of configurations
      description: Returns the details of the configurations of all of the notification
        subscriptions in the platform of the executing user.
      value: {}
    post-getNotificationConfigurationList-basic-200:
      summary: Get a list of configuration
      description: Example response with a list of notification configurations for
        the executing user
      value:
        pspReference: '8516480437185726'
        configurations:
        - active: true
          description: Unique description 12223
          eventConfigs:
          - eventType: ACCOUNT_HOLDER_VERIFICATION
            includeMode: INCLUDE
          notificationId: 27893
          notifyURL: https://www.adyen.com/notification-handler
          sslProtocol: TLSv13
        - active: true
          description: just testing things
          eventConfigs:
          - eventType: ACCOUNT_HOLDER_VERIFICATION
            includeMode: INCLUDE
          notificationId: 25032
          notifyURL: https://www.adyen.com/notification-handler
          sslProtocol: TLSv13
    post-testNotificationConfiguration-basic:
      summary: Test a notification configuration
      description: Returns the test result for a notification subscription
      value:
        eventTypes:
        - ACCOUNT_HOLDER_VERIFICATION
        notificationId: 25032
    post-testNotificationConfiguration-basic-200:
      summary: Test a notification configuration
      description: Example response of a test notification configuration request
      value:
        pspReference: '8616480452462678'
        errorMessages:
        - The server did not respond with HTTP 2XX
        eventTypes:
        - ACCOUNT_HOLDER_VERIFICATION
        exchangeMessages:
        - messageCode: Number
          messageDescription: '1'
        - messageCode: Title
          messageDescription: 'Test 1: 8616480452462678'
        notificationId: 25032
        okMessages:
        - '...'
        - 'ResponseTime_ms: 262'
        - 'ResponseCode: 404'
    post-updateNotificationConfiguration-basic:
      summary: Update notification configurations
      value:
        configurationDetails:
          active: false
          description: Test notif config 756
          eventConfigs:
          - eventType: ACCOUNT_HOLDER_CREATED
            includeMode: EXCLUDE
          - eventType: ACCOUNT_CREATED
            includeMode: INCLUDE
          notificationId: 21259
          notifyPassword: testPassword2
          notifyURL: https://www.adyen.com/notification-handler
          notifyUsername: testUserName2
          sslProtocol: TLSv13
    post-updateNotificationConfiguration-basic-200:
      summary: Example response for request 'basic'
      value:
        pspReference: '8516178952580574'
        configurationDetails:
          active: false
          description: Test notif config 756
          eventConfigs:
          - eventType: ACCOUNT_CREATED
            includeMode: INCLUDE
          - eventType: ACCOUNT_HOLDER_CREATED
            includeMode: EXCLUDE
          notificationId: 21259
          notifyURL: https://www.adyen.com/notification-handler
          sslProtocol: TLSv13
