Akoya Notifications API OpenAPI specification

By hovering on the code, a clipboard icon will appear on the top right. Use it to copy the code. Then paste into your favorite text or code editor and save as a YAML file.

openapi: 3.1.0
x-stoplight:
  id: 64j3rq2ryj8m6
info:
  version: 1.1.0
  title: Akoya Notifications API v1.1.0
  description: |
    **Updates**

    - v1.1.0
        - February 11, 2025
            - Bugfixes - removed body params from GET requests
            - Added sample responses
        - October 31, 2024
            - Updated response payload for Send sandbox test event
    - v1.0.1
        - July 1, 2024
            - Added sandbox API server
            - Added sandbox test event endpoint

    Event notifications.

    To use this API, first subscribe to the category and types of notifications you'd like to receive. Each subscription has an identification number so that you may maintain your subscriptions.
  contact:
    name: Akoya
    url: 'https://www.akoya.com/'
    email: [email protected]
  license:
    name: Akoya Terms of Use
    url: 'https://recipient.ddp.akoya.com/terms-of-use'
servers:
  - url: 'https://sandbox-api.akoya.com'
    description: Sandbox Notifications API server
  - url: 'https://api.akoya.com'
    description: Notifications API server
tags:
  - name: Event Notifications
    description: Manage Event Notifications
security:
  - bearerAuth: []
paths:
  '/notifications/{version}/subscriptions':
    post:
      summary: Create notification subscription
      operationId: createNotificationSubscription
      description: "Creates a notification subscription.\r\n> \U0001F4D8 Note\r\n>\r\n> This endpoint is supported in sandbox (`https://sandbox-api.akoya.com`) and production (`https://api.akoya.com`)\r\n\r\n> \U0001F6D1 The *service token* should be used as the bearer token with this call."
      tags:
        - Event Notifications
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/notificationSubscription'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/notificationSubscription'
                  - type: object
                    properties:
                      subscriptionId:
                        type: string
                        description: id
                        x-stoplight:
                          id: v730yvuoyspgh
        '400':
          description: Input sent by client does not satisfy API specification
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
              examples:
                Invalid Input:
                  value:
                    code: '401'
                    message: Invalid Input
                    debugMessage: Provider custom developer-level error details for troubleshooting
        '401':
          description: Unauthorized to create a notification subscription
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
              examples:
                Unauthorized:
                  value:
                    code: '1205'
                    message: Unauthorized
                    debugMessage: Provider custom developer-level error details for troubleshooting
        '405':
          description: Method Not Allowed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
              examples:
                Method Not Allowed:
                  value:
                    code: '1206'
                    message: Method Not Allowed
                    debugMessage: Provider custom developer-level error details for troubleshooting
        '429':
          description: Too Many Requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
              examples:
                Too Many Requests:
                  value:
                    code: '1207'
                    message: Too Many Requests
                    debugMessage: Provider custom developer-level error details for troubleshooting
        '500':
          $ref: '#/components/responses/500'
        '501':
          $ref: '#/components/responses/501'
        '503':
          $ref: '#/components/responses/503'
      x-internal: false
      x-stoplight:
        id: qyaww7cjxyay5
    get:
      summary: List notification subscriptions
      operationId: get-notification-subscriptions
      tags:
        - Event Notifications
      description: "List your notification subscriptions.\r\n> \U0001F4D8 Note\r\n>\r\n> This endpoint is supported in sandbox (`https://sandbox-api.akoya.com`) and production (`https://api.akoya.com`)\r\n\r\n> \U0001F6D1 The *service token* should be used as the bearer token with this call."
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/notificationSubscription'
                    x-stoplight:
                      id: dmzkb49uenvov
                  - type: object
                    x-stoplight:
                      id: xkmjf1z7vh5ub
                    properties:
                      subscriptionId:
                        type: string
                        x-stoplight:
                          id: vsguy07ncravl
                        description: id
        '401':
          description: Unauthorized to create a notification subscription
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                  debugMessage:
                    type: string
                x-examples:
                  Example 1:
                    code: '1205'
                    message: Unauthorized
                    debugMessage: Provider custom developer-level error details for troubleshooting
              examples:
                Unauthorized:
                  value:
                    code: '1205'
                    message: Unauthorized
                    debugMessage: Provider custom developer-level error details for troubleshooting
        '405':
          description: Method Not Allowed
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                  debugMessage:
                    type: string
                x-examples:
                  Example 1:
                    code: '1206'
                    message: Method Not Allowed
                    debugMessage: Provider custom developer-level error details for troubleshooting
              examples:
                Method not Allowed:
                  value:
                    code: '1206'
                    message: Method Not Allowed
                    debugMessage: Provider custom developer-level error details for troubleshooting
        '429':
          description: Too Many Requests
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                  debugMessage:
                    type: string
                x-examples:
                  Example 1:
                    code: '1207'
                    message: Too Many Requests
                    debugMessage: Provider custom developer-level error details for troubleshooting
              examples:
                Too Many Requests:
                  value:
                    code: '1207'
                    message: Too Many Requests
                    debugMessage: Provider custom developer-level error details for troubleshooting
        '500':
          description: Catch all exception where request was not processed due to an internal outage/issue.
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                  debugMessage:
                    type: string
                x-examples:
                  Example 1:
                    code: '500'
                    message: Internal server error
                    debugMessage: Provider custom developer-level error details for troubleshooting
              examples:
                Internal Server Error:
                  value:
                    code: '500'
                    message: Internal server error
                    debugMessage: Provider custom developer-level error details for troubleshooting
        '501':
          description: FDX version not supported or implemented.
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                  debugMessage:
                    type: string
                x-examples:
                  Example 1:
                    code: '1106'
                    message: FdxVersion not supported or not implemented
                    debugMessage: Provider custom developer-level error details for troubleshooting
              examples:
                FDX Version not Supported or Implemented:
                  value:
                    code: '1106'
                    message: FdxVersion not supported or not implemented
                    debugMessage: Provider custom developer-level error details for troubleshooting
        '503':
          description: Service Unavailable
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                  debugMessage:
                    type: string
                x-examples:
                  Example 1:
                    code: '503'
                    message: Scheduled Maintenance
                    debugMessage: Provider custom developer-level error details for troubleshooting
              examples:
                Scheduled Maintenance:
                  value:
                    code: '503'
                    message: Scheduled Maintenance
                    debugMessage: Provider custom developer-level error details for troubleshooting
      requestBody:
        content: {}
      x-stoplight:
        id: 7s5q5ea4mpapq
      x-internal: false
    parameters:
      - $ref: '#/components/parameters/version'
  '/notifications/{version}/subscriptions/{subscriptionId}':
    parameters:
      - $ref: '#/components/parameters/subscriptionIdPath'
      - $ref: '#/components/parameters/version'
    get:
      summary: Get notification subscription by Id
      operationId: getNotificationSubscription
      description: "Call to get notification subscription by Id.\n> \U0001F4D8 Note\n>\n> This endpoint is supported in sandbox (`https://sandbox-api.akoya.com`) and production (`https://api.akoya.com`)\n\n> \U0001F6D1 The *service token* should be used as the bearer token with this call.\n"
      tags:
        - Event Notifications
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/notificationSubscription'
                  - type: object
                    properties:
                      subscriptionId:
                        type: string
                        description: id
              examples:
                Successful response:
                  value:
                    category: MAINTENANCE
                    type: PLANNED_OUTAGE
                    callbackUrl: 'https://example.com/notifications'
                    effectiveDate: '2024-07-15'
                    callbackEmail: [email protected]
                    subscriptionId: 7aeeaa24-4114-11ee-be56-0242ac120002
        '400':
          description: Input sent by client does not satisfy API specification
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
              examples:
                Invalid Input:
                  value:
                    code: '401'
                    message: Invalid Input
                    debugMessage: Provider custom developer-level error details for troubleshooting
        '401':
          description: Unauthorized to create a notification subscription
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
              examples:
                Unauthorized:
                  value:
                    code: '1205'
                    message: Unauthorized
                    debugMessage: Provider custom developer-level error details for troubleshooting
        '405':
          description: Method Not Allowed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
              examples:
                Method Not Allowed:
                  value:
                    code: '1206'
                    message: Method Not Allowed
                    debugMessage: Provider custom developer-level error details for troubleshooting
        '429':
          description: Too Many Requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
              examples:
                Too Many Requests:
                  value:
                    code: '1207'
                    message: Too Many Requests
                    debugMessage: Provider custom developer-level error details for troubleshooting
        '500':
          $ref: '#/components/responses/500'
        '501':
          $ref: '#/components/responses/501'
        '503':
          $ref: '#/components/responses/503'
      x-stoplight:
        id: 56tsgm1ajv1ww
      x-internal: false
    delete:
      summary: Delete notification subscription
      operationId: deleteNotificationSubscription
      description: "Delete a notification subscription. A \"204 - No Content\" is expected with a successful response.\r\n\r\n> \U0001F4D8 Note\r\n>\r\n> This endpoint is supported in sandbox (`https://sandbox-api.akoya.com`) and production (`https://api.akoya.com`)\r\n\r\n> \U0001F6D1 The *service token* should be used as the bearer token with this call."
      tags:
        - Event Notifications
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                x-examples:
                  Example 1:
                    status: success
              examples:
                Successful Response:
                  value:
                    status: success
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                  debugMessage:
                    type: string
                x-examples:
                  Example 1:
                    code: '401'
                    message: Invalid Input
                    debugMessage: The subscriptionId was not found.
              examples:
                Invalid Input:
                  value:
                    code: '401'
                    message: Invalid Input
                    debugMessage: The subscriptionId was not found.
        '401':
          description: Unauthorized to create a notification subscription
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
              examples:
                Unauthorized:
                  value:
                    code: '1205'
                    message: Unauthorized
                    debugMessage: Provider custom developer-level error details for troubleshooting
        '405':
          description: Method Not Allowed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
              examples:
                Method Not Allowed:
                  value:
                    code: '1206'
                    message: Method Not Allowed
                    debugMessage: Provider custom developer-level error details for troubleshooting
        '429':
          description: Too Many Requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
              examples:
                Too Many Requests:
                  value:
                    code: '1207'
                    message: Too Many Requests
                    debugMessage: Provider custom developer-level error details for troubleshooting
        '500':
          $ref: '#/components/responses/500'
        '501':
          $ref: '#/components/responses/501'
        '503':
          $ref: '#/components/responses/503'
      x-internal: false
      x-stoplight:
        id: pyx1aozlymc31
    patch:
      summary: Update notification subscription
      operationId: patch-notifications-version-subscriptions-subscriptionId
      tags:
        - Event Notifications
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/notificationSubscription'
                  - type: object
                    properties:
                      subscriptionId:
                        type: string
                        description: id
        '400':
          description: Input sent by client does not satisfy API specification
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
              examples:
                Provider Custom Error:
                  value:
                    code: '401'
                    message: Invalid Input
                    debugMessage: Provider custom developer-level error details for troubleshooting
                Empty Update Request Body:
                  value:
                    code: '401'
                    message: Invalid Input
                    debugMessage: Empty Update Request Body
                Invalid Callback URL:
                  value:
                    code: '401'
                    message: Invalid Input
                    debugMessage: Invalid Callback URL
                Invalid Callback Email:
                  value:
                    code: '401'
                    message: Invalid Input
                    debugMessage: Invalid Callback Email
                Invalid Effective Date:
                  value:
                    code: '401'
                    message: Invalid Input
                    debugMessage: Invalid Effective Date
        '401':
          description: Unauthorized to create a notification subscription
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
              examples:
                Unauthorized:
                  value:
                    code: '1205'
                    message: Unauthorized
                    debugMessage: Provider custom developer-level error details for troubleshooting
        '405':
          description: Method Not Allowed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
              examples:
                Method Not Allowed:
                  value:
                    code: '1206'
                    message: Method Not Allowed
                    debugMessage: Provider custom developer-level error details for troubleshooting
        '429':
          description: Too Many Requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
              examples:
                Too Many Requests:
                  value:
                    code: '1207'
                    message: Too Many Requests
                    debugMessage: Provider custom developer-level error details for troubleshooting
        '500':
          $ref: '#/components/responses/500'
        '501':
          $ref: '#/components/responses/501'
        '503':
          $ref: '#/components/responses/503'
      x-stoplight:
        id: dwgcqs1orfp5z
      description: "Update the `callbackUrl`, `effectiveDate`, or `callbackEmail` of a notification subscription. All request body params are optional, but you must send at least one.\r\n\r\n> \U0001F4D8 Note\r\n>\r\n> This endpoint is supported in sandbox (`https://sandbox-api.akoya.com`) and production (`https://api.akoya.com`)\r\n\r\n> \U0001F6D1 The *service token* should be used as the bearer token with this call."
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                callbackUrl:
                  type: string
                  description: Callback URL. Previous callback URL will be updated with latest.
                  example: 'https://abc.com/notification'
                effectiveDate:
                  description: Effective date of notification
                  type: string
                  format: date
                  maxLength: 10
                  example: '2021-07-15'
                callbackEmail:
                  type: string
                  description: 'Optional. Captured for future implementation, which will be in an upcoming release.'
            examples:
              Example 1:
                value:
                  category: MAINTENANCE
                  type: PLANNED_OUTAGE
                  callbackUrl: 'https://example.com/notifications'
                  effectiveDate: '2024-07-15'
                  callbackEmail: [email protected]
                  subscriptionId: 7aeeaa24-4114-11ee-be56-0242ac120002
        description: ''
      x-internal: false
  '/notifications/{version}/maintenance/{notificationPayloadId}':
    parameters:
      - $ref: '#/components/parameters/notificationPayloadId'
      - $ref: '#/components/parameters/version'
    get:
      summary: Maintenance notification details
      tags:
        - Event Notifications
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                  category:
                    type: string
                  type:
                    type: string
                  institutionId:
                    type: string
                  startTime:
                    type: string
                  endTime:
                    type: string
                  title:
                    type: string
                  message:
                    type: string
                  impactedService:
                    type: array
                    items:
                      type: string
                x-examples:
                  Example 1:
                    id: d1c8260a-edd9-5cd0-9ebf-ad4c3dd29b01
                    category: MAINTENANCE
                    type: PLANNED_OUTAGE
                    institutionId: mikomo
                    startTime: '2000-01-26T00:00:00Z'
                    endTime: '2000-08-20T00:00:00Z'
                    title: Akoya Support - Maintenance Outage
                    message: 'There''s unplanned maintenance scheduled with mikomo for an API you have access to. Mikomo will be performing maintenance on PAYMENTS API in the production environment. The following APIs will be impacted: Payments; Given the nature of this impact, services may unavailable while the maintenance is occurring. Please contact us if you have any questions about this maintenance. To report a production issue with your API integration, log into the Akoya Support Portal to submit a support ticket.'
                    impactedService:
                      - payments
              examples:
                Maintenance Notification:
                  value:
                    id: d1c8260a-edd9-5cd0-9ebf-ad4c3dd29b01
                    category: MAINTENANCE
                    type: PLANNED_OUTAGE
                    institutionId: mikomo
                    startTime: '2000-01-26T00:00:00Z'
                    endTime: '2000-08-20T00:00:00Z'
                    title: Akoya Support - Maintenance Outage
                    message: 'There''s unplanned maintenance scheduled with mikomo for an API you have access to. Mikomo will be performing maintenance on PAYMENTS API in the production environment. The following APIs will be impacted: Payments; Given the nature of this impact, services may unavailable while the maintenance is occurring. Please contact us if you have any questions about this maintenance. To report a production issue with your API integration, log into the Akoya Support Portal to submit a support ticket.'
                    impactedService:
                      - payments
        '400':
          description: Invalid Notification Payload ID
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: integer
                  message:
                    type: string
                x-examples:
                  Example 1:
                    code: 401
                    message: Invalid input
              examples:
                Invalid Notification Payload ID:
                  value:
                    code: 401
                    message: Invalid input
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                x-examples:
                  Example 1:
                    code: NotFound
                    message: resource not found
              examples:
                Not Found:
                  value:
                    code: NotFound
                    message: resource not found
        '405':
          description: Method Not Allowed
          content:
            text/plain:
              schema:
                type: string
              examples:
                Method Not Allowed:
                  value: Method Not Allowed
        '500':
          description: Catch all exception where request was not processed due to an internal outage/issue.
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                  debugMessage:
                    type: string
                x-examples:
                  Example 1:
                    code: '500'
                    message: Internal server error
                    debugMessage: Provider custom developer-level error details for troubleshooting
              examples:
                Internal Server Error:
                  value:
                    code: '500'
                    message: Internal server error
                    debugMessage: Provider custom developer-level error details for troubleshooting
        '501':
          description: FDX version not supported or implemented.
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                  debugMessage:
                    type: string
                x-examples:
                  Example 1:
                    code: '1106'
                    message: FdxVersion not supported or not implemented
                    debugMessage: Provider custom developer-level error details for troubleshooting
              examples:
                FDX version not supported or implemented.:
                  value:
                    code: '1106'
                    message: FdxVersion not supported or not implemented
                    debugMessage: Provider custom developer-level error details for troubleshooting
        '503':
          description: System is down for maintenance
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                  debugMessage:
                    type: string
                x-examples:
                  Example 1:
                    code: '503'
                    message: Scheduled Maintenance
                    debugMessage: Provider custom developer-level error details for troubleshooting
              examples:
                Scheduled Maintenance:
                  value:
                    code: '503'
                    message: Scheduled Maintenance
                    debugMessage: Provider custom developer-level error details for troubleshooting
      operationId: get-notifications-maintenance
      x-stoplight:
        id: 5hosqfc4yxayj
      description: "The maintenance notification details that inform you on impacted service and when it will be resolved.\r\nThe notification payload id is required for this call. This id is returned in the notification sent to your webhook.\r\n\r\n> \U0001F4D8 Note\r\n>\r\n> This endpoint is supported in sandbox (`https://sandbox-api.akoya.com`) and production (`https://api.akoya.com`)\r\n\r\n> \U0001F6D1 The *service token* should be used as the bearer token with this call."
  '/notifications/{version}/test':
    parameters:
      - schema:
          type: string
          default: v1
        name: version
        in: path
        required: true
        description: version of endpoint.
    servers:
      - url: 'https://sandbox-api.akoya.com'
        description: Sandbox Notifications API Server
    post:
      summary: Send sandbox test event
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  notificationId:
                    type: string
                  sentOn:
                    type: string
                  subscriber:
                    type: object
                    properties:
                      name:
                        type: string
                      type:
                        type: string
                      registry:
                        type: string
                      registeredEntityId:
                        type: string
                  publisher:
                    type: object
                    properties:
                      name:
                        type: string
                      type:
                        type: string
                      registry:
                        type: string
                      registeredEntityId:
                        type: string
                  category:
                    type: string
                  type:
                    type: string
                  notificationPayload:
                    type: object
                    properties:
                      id:
                        type: string
                      idType:
                        type: string
                      customFields:
                        type: array
                        items:
                          type: object
                          properties:
                            name:
                              type: string
                            value:
                              type: string
                  url:
                    type: object
                    properties:
                      href:
                        type: string
                      action:
                        type: string
                x-examples:
                  Example 1:
                    notificationId: string
                    sentOn: string
                    subscriber:
                      name: string
                      type: string
                      registry: string
                      registeredEntityId: string
                    publisher:
                      name: string
                      type: string
                      registry: string
                      registeredEntityId: string
                    category: string
                    type: string
                    notificationPayload:
                      id: string
                      idType: string
                      customFields:
                        - name: string
                          value: string
                    url:
                      href: string
                      action: string
              examples:
                Successful Response:
                  value:
                    notificationId: string
                    sentOn: string
                    subscriber:
                      name: string
                      type: string
                      registry: string
                      registeredEntityId: string
                    publisher:
                      name: string
                      type: string
                      registry: string
                      registeredEntityId: string
                    category: string
                    type: string
                    notificationPayload:
                      id: string
                      idType: string
                      customFields:
                        - name: string
                          value: string
                    url:
                      href: string
                      action: string
        '400':
          description: Input sent by client does not satisfy API specification.
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                  debugMessage:
                    type: string
                x-examples:
                  Example 1:
                    code: '401'
                    message: Invalid Input
                    debugMessage: Provider custom developer-level error details for troubleshooting
              examples:
                Invalid Input:
                  value:
                    code: '401'
                    message: Invalid Input
                    debugMessage: Provider custom developer-level error details for troubleshooting
        '401':
          description: Unauthorized to create a notification subscription.
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                  debugMessage:
                    type: string
                x-examples:
                  Example 1:
                    code: '1205'
                    message: Unauthorized
                    debugMessage: Provider custom developer-level error details for troubleshooting
              examples:
                Unauthorized:
                  value:
                    code: '1205'
                    message: Unauthorized
                    debugMessage: Provider custom developer-level error details for troubleshooting
        '405':
          description: Method Not Allowed
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                  debugMessage:
                    type: string
                x-examples:
                  Example 1:
                    code: '1206'
                    message: Method Not Allowed
                    debugMessage: Provider custom developer-level error details for troubleshooting
              examples:
                Method not Allowed:
                  value:
                    code: '1206'
                    message: Method Not Allowed
                    debugMessage: Provider custom developer-level error details for troubleshooting
        '429':
          description: Too Many Requests
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                  debugMessage:
                    type: string
                x-examples:
                  Example 1:
                    code: '1207'
                    message: Too Many Requests
                    debugMessage: Provider custom developer-level error details for troubleshooting
              examples:
                Too Many Requests:
                  value:
                    code: '1207'
                    message: Too Many Requests
                    debugMessage: Provider custom developer-level error details for troubleshooting
        '500':
          description: Catch all exception where request was not processed due to an internal outage/issue.
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                  debugMessage:
                    type: string
                x-examples:
                  Example 1:
                    code: '500'
                    message: Internal server error
                    debugMessage: Provider custom developer-level error details for troubleshooting
              examples:
                Internal Server Error:
                  value:
                    code: '500'
                    message: Internal server error
                    debugMessage: Provider custom developer-level error details for troubleshooting
        '501':
          description: FDX version not supported or implemented.
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                  debugMessage:
                    type: string
                x-examples:
                  Example 1:
                    code: '1106'
                    message: FdxVersion not supported or not implemented
                    debugMessage: Provider custom developer-level error details for troubleshooting
              examples:
                FDX Version not supported or not implemented:
                  value:
                    code: '1106'
                    message: FdxVersion not supported or not implemented
                    debugMessage: Provider custom developer-level error details for troubleshooting
        '503':
          description: System is down for maintenance
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                  debugMessage:
                    type: string
                x-examples:
                  Example 1:
                    code: '503'
                    message: Scheduled Maintenance
                    debugMessage: Provider custom developer-level error details for troubleshooting
              examples:
                Scheduled Maintenance:
                  value:
                    code: '503'
                    message: Scheduled Maintenance
                    debugMessage: Provider custom developer-level error details for troubleshooting
      operationId: post-notifications-version-test
      x-stoplight:
        id: vir4gpr2cftjt
      description: "Validate that your server can handle incoming webhook payloads from Akoya.\r\n\r\n> \U0001F4D8 Note\r\n>\r\n> This endpoint is only supported in sandbox (`https://sandbox-api.akoya.com`)"
      requestBody:
        content:
          application/json:
            schema:
              type: object
              x-examples:
                Example 1:
                  id: 4
              required:
                - id
              properties:
                id:
                  type: string
                  description: A valid sandbox notification subscription ID. The triggered test event will be pushed to the callback URL associated with this subscription.
      tags:
        - Event Notifications
components:
  parameters:
    subscriptionIdPath:
      name: subscriptionId
      in: path
      description: ID of notification subscription
      required: true
      schema:
        type: string
        maxLength: 256
    version:
      name: version
      in: path
      required: true
      schema:
        type: string
        default: v1
        enum:
          - v1
      description: version of endpoint.
    notificationPayloadId:
      name: notificationPayloadId
      in: path
      required: true
      schema:
        type: string
  schemas:
    notification:
      title: Notification entity
      type: object
      description: Provides the base fields of a notification. Clients will read the `type` property to determine the expected notification payload
      x-stoplight:
        id: g5uoy468o2lxx
      properties:
        category:
          $ref: '#/components/schemas/notificationCategory'
          description: Category of notification
        type:
          $ref: '#/components/schemas/notificationType'
          description: Type of notification
        notificationPayload:
          $ref: '#/components/schemas/notificationPayload'
          description: Notification-specific key-value paired data
      required:
        - category
        - type
        - notificationPayload
    notificationPayload:
      title: Notification Payload entity
      type: object
      description: Custom key-value pairs payload for a notification
      x-stoplight:
        id: 87xohzet4683z
      properties:
        id:
          type: string
          description: ID for the origination entity related to the notification
        idType:
          description: Type of entity causing origination of the notification with the given ID
          type: string
          enum:
            - MAINTENANCE
            - CONSENT
        customFields:
          $ref: '#/components/schemas/fiAttribute'
          description: Custom key-value pairs for a notification
        url:
          $ref: '#/components/schemas/hateoasLink'
          x-stoplight:
            id: 0e4mciqcdc43l
    notificationSubscription:
      title: Notification Subscription entity
      type: object
      description: Provides the fields of a notification subscription
      x-stoplight:
        id: 48gwhfspxnz4b
      required:
        - category
        - type
        - callbackUrl
      properties:
        category:
          $ref: '#/components/schemas/notificationCategory'
          description: Category of notification
        type:
          $ref: '#/components/schemas/notificationType'
          description: Type of notification
        callbackUrl:
          type: string
          description: The URL to receive webhooks from Akoya. Must be HTTPS.
          x-stoplight:
            id: xf6mmka9vkl13
          example: 'https://abc.com/notification'
        effectiveDate:
          description: Effective date of notification
          type: string
          format: date
          maxLength: 10
          example: '2021-07-15'
        callbackEmail:
          type: string
          x-stoplight:
            id: kylx4d7suajq4
          description: 'Optional. Captured for future implementation, which will be in an upcoming release.'
    notificationCategory:
      type: string
      title: Notification Category
      enum:
        - MAINTENANCE
        - CONSENT
      description: Category of Notification
      x-stoplight:
        id: nf02ha5z3h6mw
    notificationType:
      type: string
      title: Notification Type
      enum:
        - SERVICE
        - PLANNED_OUTAGE
        - CONSENT_UPDATED
        - CONSENT_REVOKED
      description: Type of Notification
      x-stoplight:
        id: bdj3f2tql5gci
    error:
      title: Error
      description: An error entity which can be used at the API level for error responses or at the account level to indicate a problem specific to a particular account
      type: object
      properties:
        code:
          type: string
          description: Long term persistent identifier which can be used to trace error condition back to log information
        message:
          type: string
          description: End user displayable information which might help the customer diagnose an error
        debugMessage:
          type: string
          description: Message used to debug the root cause of the error. Contents should not be used in consumer's business logic. Can change at any time and should only be used for consumer to communicate with the data provider about an issue. Provider can include an error GUID in message for their use.
      x-stoplight:
        id: 5rn9u0rrics5q
    fiAttribute:
      title: FI Attribute entity
      description: Financial Institution provider-specific attribute
      type: object
      properties:
        name:
          type: string
          description: Name of attribute
        value:
          type: string
          description: Value of attribute
      x-stoplight:
        id: inyk3kgy5dlls
    hateoasLink:
      title: HATEOAS Link
      description: REST application constraint (Hypermedia As The Engine Of Application State)
      type: object
      properties:
        href:
          type: string
          format: uri-reference
          description: URL to invoke the action on the resource
          example: 'https://api.akoya.com/notifications/v1/maintenance/6a402d29-0a72-47e5-af5d-75b1c1c10150'
        action:
          type: string
          enum:
            - GET
            - POST
            - PATCH
            - DELETE
            - PUT
          description: HTTP Method to use for the request
        rel:
          description: 'Relation of this link to its containing entity, as defined by and with many example relation values at [IETF RFC5988](https://datatracker.ietf.org/doc/html/rfc5988)'
          type: string
      required:
        - href
      x-stoplight:
        id: 0i0u2r3txy783
  responses:
    '500':
      description: Catch all exception where request was not processed due to an internal outage/issue.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/error'
          examples:
            Internal Server Error:
              value:
                code: '500'
                message: Internal server error
                debugMessage: Provider custom developer-level error details for troubleshooting
    '501':
      description: FDX version not supported or implemented.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/error'
          examples:
            FDX Version Not Supported or Not Implemented:
              value:
                code: '1106'
                message: FdxVersion not supported or not implemented
                debugMessage: Provider custom developer-level error details for troubleshooting
    '503':
      description: System is down for maintenance
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/error'
          examples:
            Scheduled Maintenance:
              value:
                code: '503'
                message: Scheduled Maintenance
                debugMessage: Provider custom developer-level error details for troubleshooting
  securitySchemes:
    bearerAuth:
      description: Your service token should be used in the header of this call.
      type: http
      scheme: bearer
      bearerFormat: JWT
x-internal: true
x-readme:
  explorer-enabled: true
  proxy-enabled: true

Change log

DateUpdate
2024-Sept-11Original.

Need help?

Check out our Developer Community, or visit the Support Center in the Data Recipient Hub.

Looking for provider nuance documentation?

All provider nuance documentation is available in the Data providers section in the Data Recipient Hub.

Still stuck?

For all production issues, submit a support ticket through the Data Recipient Hub. Our support team is standing by 24/7. Questions and non-production issues will be answered during business hours.