Getting a notification

When you get a notification

If an event occurs, you will receive a notification that an event with the category and type of your subscription has occurred. The notice will include a URL that includes more details.

You may get the details of the notification in one of two ways.

  1. Use the url.href and url.action method provided in the notification.
  2. Make a direct call to the associated API (such as Notifications API or Consent API)

Example Notifications

Maintenance

If you've subscribed to the category MAINTENANCE with type PLANNED_OUTAGE and an event occurs, you'll receive a notification similar to this example:

{
    "notificationId": "{notificationId}",
    "sentOn": "2024-10-03T12:50:11.255016895Z",
    "subscriber": {
        "name": "Paprika",
        "type": "DATA_RECIPIENT",
        "registry": "PRIVATE",
        "registeredEntityId": "paprika_rec"
    },
    "publisher": {
        "name": "Mikomo",
        "type": "DATA_PROVIDER",
        "registry": "PRIVATE",
        "registeredEntityId": "mikomo"
    },
  "category": "MAINTENANCE",
  "type": "PLANNED_OUTAGE",
  "notificationPayload": {
    "id":"d1c8260a-edd9-5cd0-9ebf-ad4c3dd29b01",
    "idType":"MAINTENANCE",
    "customFields":[{
      "name": "PROVIDER",
      "value": "mikomo"
    }]
  },
  "url": {
    "href": "https://api.akoya.com/notifications/v1/maintenance/d1c8260a-edd9-5cd0-9ebf-ad4c3dd29b01",
    "action": "GET"
  }
}

Consent

If you've subscribed to the category CONSENT with type CONSENT_UPDATED and an event occurs, you'll receive a notification similar to this example:

{
    "notificationId": "{notificationId}",
    "sentOn": "2024-10-03T12:50:11.255016895Z",
    "subscriber": {
        "name": "Paprika",
        "type": "DATA_RECIPIENT",
        "registry": "PRIVATE",
        "registeredEntityId": "paprika_rec"
    },
    "publisher": {
        "name": "Mikomo",
        "type": "DATA_PROVIDER",
        "registry": "PRIVATE",
        "registeredEntityId": "mikomo"
    },
    "category": "CONSENT",
    "type": "CONSENT_UPDATED",
    "notificationPayload": {
        "id": "{consentId}",
        "idType": "CONSENT",
        "customFields": [
            {
                "name": "INITIATOR",
                "value": "INDIVIDUAL"
            }
        ]
    },
    "url": {
        "href": "https://api.akoya.com/consents/v1/{consentId}",
        "action": "GET"
    }
}

url.href and url.action

To use this method, simply use the url.href provided in the notificationPayload with your service token. You'll receive a JSON object as a response (example below).

Direct call to associated API

You may also make a call to the associated API to get the notification details.

For details related to a MAINTENANCE event, use the GET Maintenance notification details endpoint with the id received in the notificationPayload:

MAINTENANCE example response

{
  "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"]
},

for details related to a CONSENT event, use the GET Consent Grant endpoint (link) with the id received in the notificationPayload.

CONSENT event example response:

{
  "id": "{consentId}",
  "status": "ACTIVE",
   "parties": [
    {
      "name": "Mikomo",
      "type": "DATA_PROVIDER",
      "registeredEntityId": "mikomo"
    },
    {
      "name": "Akoya",
      "type": "DATA_ACCESS_PLATFORM",
      "registeredEntityId": "akoya"
    },
    {
      "name": "Paprika LLC",
      "type": "DATA_RECIPIENT",
      "registeredEntityId": "paprika_rec"
    },
    {
      "name": "Paprika App",
      "type": "DATA_RECIPIENT",
      "registeredEntityId": "paprika"
    }
  ],
  "createdTime": "2024-02-15T14:19:41.346046Z",
  "resources": [
    {
      "resourceType": "ACCOUNT",
      "resourceId": "1239098123",
      "dataClusters": [
        "balances",
        "customers",
        "statements",
        "account_info",
        "transactions",
        "investments",
        "payments"
      ]
    }
  ]
}

Notification errors

CodeDescription
400Bad Request
401Unauthorized to create a notification subscription
405Method Not Allowed


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.