Payabli Notificationlogs API

The Notificationlogs API from Payabli — 4 operation(s) for notificationlogs.

OpenAPI Specification

payabli-notificationlogs-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: API reference Bill Notificationlogs API
  version: 1.0.0
servers:
- url: https://api-sandbox.payabli.com/api
  description: Sandbox
- url: https://api.payabli.com/api
  description: Production
tags:
- name: Notificationlogs
paths:
  /v2/notificationlogs:
    post:
      operationId: searchNotificationLogs
      summary: Search Notification Logs
      description: "Search notification logs with filtering and pagination.\n  - Start date and end date cannot be more than 30 days apart\n  - Either `orgId` or `paypointId` must be provided\n\nThis endpoint requires the `notifications_create` OR `notifications_read` permission."
      tags:
      - Notificationlogs
      parameters:
      - name: PageSize
        in: query
        description: Number of records on each response page.
        required: false
        schema:
          $ref: '#/components/schemas/Pagesize'
      - name: Page
        in: query
        description: The page number to retrieve. Defaults to 1 if not provided.
        required: false
        schema:
          type: integer
      - name: Authorization
        in: header
        description: 'OAuth2 Bearer access token from the client-credentials flow. See [OAuth authentication](/developers/oauth-authentication).

          '
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/NotificationLog'
        '400':
          description: Bad request / invalid data.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '401':
          description: Unauthorized request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '503':
          description: Database connection error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NotificationLogSearchRequest'
  /v2/notificationlogs/{uuid}:
    get:
      operationId: getNotificationLog
      summary: Get Notification Log
      description: 'Get detailed information for a specific notification log entry.

        This endpoint requires the `notifications_create` OR `notifications_read` permission.'
      tags:
      - Notificationlogs
      parameters:
      - name: uuid
        in: path
        description: The notification log entry.
        required: true
        schema:
          type: string
          format: uuid
      - name: Authorization
        in: header
        description: 'OAuth2 Bearer access token from the client-credentials flow. See [OAuth authentication](/developers/oauth-authentication).

          '
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotificationLogDetail'
        '400':
          description: Bad request / invalid data.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '401':
          description: Unauthorized request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '503':
          description: Database connection error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
  /v2/notificationlogs/{uuid}/retry:
    get:
      operationId: retryNotificationLog
      summary: Retry Notification Log
      description: 'Retry sending a specific notification.


        **Permissions:** notifications_create'
      tags:
      - Notificationlogs
      parameters:
      - name: uuid
        in: path
        description: Unique id
        required: true
        schema:
          type: string
          format: uuid
      - name: Authorization
        in: header
        description: 'OAuth2 Bearer access token from the client-credentials flow. See [OAuth authentication](/developers/oauth-authentication).

          '
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotificationLogDetail'
        '400':
          description: Bad request / invalid data.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '401':
          description: Unauthorized request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
        '503':
          description: Database connection error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayabliErrorBody'
  /v2/notificationlogs/retry:
    post:
      operationId: bulkRetryNotificationLogs
      summary: Bulk Retry Notification Logs
      description: 'Retry sending multiple notifications (maximum 50 IDs).

        This is an async process, so use the search endpoint again to check the notification status.


        This endpoint requires the `notifications_create` permission.'
      tags:
      - Notificationlogs
      parameters:
      - name: Authorization
        in: header
        description: 'OAuth2 Bearer access token from the client-credentials flow. See [OAuth authentication](/developers/oauth-authentication).

          '
        required: true
        schema:
          type: string
      responses:
        '201':
          description: A success response indicating the notifications are being retried. This is an async process, so refresh the search to see updated status.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/notificationlogs_bulkRetryNotificationLogs_Response_201'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BulkRetryRequest'
components:
  schemas:
    Pagesize:
      type: integer
      description: Number of records on each response page.
      title: Pagesize
    BulkRetryRequest:
      type: array
      items:
        type: string
        format: uuid
      description: A list of notification log IDs to retry. The maximum number of IDs that can be retried in a single request is 50.
      title: BulkRetryRequest
    PayabliErrorBody:
      type: object
      properties:
        isSuccess:
          type: boolean
          description: Always `false` for error responses.
        responseCode:
          type: integer
          description: 'Code for the response. Learn more in

            [API Response Codes](/developers/api-reference/api-responses).

            '
        responseText:
          type: string
          description: Error text describing what went wrong.
        responseData:
          $ref: '#/components/schemas/PayabliErrorBodyResponseData'
          description: Object with detailed error context.
      required:
      - isSuccess
      - responseText
      description: 'Shape returned by every Payabli API error response. The `responseData`

        object carries human-readable error context.

        '
      title: PayabliErrorBody
    PayabliErrorBodyResponseData:
      type: object
      properties:
        explanation:
          type: string
          description: Human-readable explanation of what happened.
        todoAction:
          type: string
          description: Suggested resolution.
      description: Object with detailed error context.
      title: PayabliErrorBodyResponseData
    KeyValueArray:
      type: object
      properties:
        key:
          type: string
        value:
          type: array
          items:
            type: string
      title: KeyValueArray
    NotificationLogDetail:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: The unique identifier for the notification.
        orgId:
          type:
          - integer
          - 'null'
          format: int64
          description: The ID of the organization that the notification belongs to.
        paypointId:
          type:
          - integer
          - 'null'
          format: int64
          description: The ID of the paypoint that the notification is related to.
        notificationEvent:
          type:
          - string
          - 'null'
          description: The event that triggered the notification.
        target:
          type:
          - string
          - 'null'
          description: The target URL for the notification.
        responseStatus:
          type:
          - string
          - 'null'
          description: The HTTP response status of the notification.
        success:
          type: boolean
          description: Indicates whether the notification was successful.
        jobData:
          type:
          - string
          - 'null'
          description: Contains the body of the notification.
        createdDate:
          type: string
          format: date-time
          description: The date and time when the notification was created.
        successDate:
          type:
          - string
          - 'null'
          format: date-time
          description: The date and time when the notification was successfully delivered.
        lastFailedDate:
          type:
          - string
          - 'null'
          format: date-time
          description: The date and time when the notification last failed.
        isInProgress:
          type: boolean
          description: Indicates whether the notification is currently in progress.
        webHeaders:
          type: array
          items:
            $ref: '#/components/schemas/StringStringKeyValuePair'
        responseHeaders:
          type: array
          items:
            $ref: '#/components/schemas/KeyValueArray'
        responseContent:
          type: string
      required:
      - id
      - orgId
      - paypointId
      - notificationEvent
      - target
      - responseStatus
      - success
      - jobData
      - createdDate
      - successDate
      - lastFailedDate
      - isInProgress
      title: NotificationLogDetail
    StringStringKeyValuePair:
      type: object
      properties:
        key:
          type: string
        value:
          type: string
      title: StringStringKeyValuePair
    NotificationLog:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: The unique identifier for the notification.
        orgId:
          type:
          - integer
          - 'null'
          format: int64
          description: The ID of the organization that the notification belongs to.
        paypointId:
          type:
          - integer
          - 'null'
          format: int64
          description: The ID of the paypoint that the notification is related to.
        notificationEvent:
          type:
          - string
          - 'null'
          description: The event that triggered the notification.
        target:
          type:
          - string
          - 'null'
          description: The target URL for the notification.
        responseStatus:
          type:
          - string
          - 'null'
          description: The HTTP response status of the notification.
        success:
          type: boolean
          description: Indicates whether the notification was successful.
        jobData:
          type:
          - string
          - 'null'
          description: Contains the body of the notification.
        createdDate:
          type: string
          format: date-time
          description: The date and time when the notification was created.
        successDate:
          type:
          - string
          - 'null'
          format: date-time
          description: The date and time when the notification was successfully delivered.
        lastFailedDate:
          type:
          - string
          - 'null'
          format: date-time
          description: The date and time when the notification last failed.
        isInProgress:
          type: boolean
          description: Indicates whether the notification is currently in progress.
      required:
      - id
      - orgId
      - paypointId
      - notificationEvent
      - target
      - responseStatus
      - success
      - jobData
      - createdDate
      - successDate
      - lastFailedDate
      - isInProgress
      title: NotificationLog
    NotificationLogSearchRequest:
      type: object
      properties:
        startDate:
          type: string
          format: date-time
          description: The start date for the search.
        endDate:
          type: string
          format: date-time
          description: The end date for the search.
        notificationEvent:
          type: string
          description: The type of notification event to filter by.
        succeeded:
          type: boolean
          description: Indicates whether the notification was successful.
        orgId:
          type: integer
          format: int64
          description: The ID of the organization to filter by.
        paypointId:
          type: integer
          format: int64
          description: The ID of the paypoint to filter by.
      required:
      - startDate
      - endDate
      title: NotificationLogSearchRequest
    notificationlogs_bulkRetryNotificationLogs_Response_201:
      type: object
      properties: {}
      description: Empty response body
      title: notificationlogs_bulkRetryNotificationLogs_Response_201
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: 'OAuth2 Bearer access token from the client-credentials flow. See [OAuth authentication](/developers/oauth-authentication).

        '
    APIKeyAuth:
      type: apiKey
      in: header
      name: requestToken
      description: 'Long-lived API token sent in the `requestToken` header. See [API token authentication](/developers/api-tokens).

        '