Download OpenAPI specification:Download
This API is for RSPs and SPs to subscribe to notifications for a variety of Tuatahi events.
In order to start receiving notifications, the consumer must choose a suitable notification channel. Following notification channels are supported:
Gets all the subscriptions associated with the given consumer. Consumer is identified through the partyId
claim in the access token.
[- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "eventType": "string",
- "filters": {
- "target": "my",
- "attributes": [
- { }
]
}, - "contactEmails": [
- {
- "email": "user@example.com"
}
], - "expiresOn": "2019-08-24",
- "clientId": "string",
- "organisation": "string",
- "partyIds": [
- "string"
], - "notificationChannels": {
- "email": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": [
- {
- "email": "user@example.com"
}
]
}
], - "webhook": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "webhook": [
- {
- "callbackUri": "string",
- "errorStrategy": "ignore",
- "auth": {
- "username": "string",
- "password": "string"
}
}
]
}
]
}
}
]
Creates new subscription for a specified Event type. Subscription is linked to the consumer which is identified through the partyId
claim provided in the access token
eventType required | string Value: "ONTActivation" The type of event to subscribe to |
object The scope of what events to receive | |
required | Array of objects The emails to send any updates about subscriptions to. E.g. when a subscription is about to expire |
expiresOn | string <date> The date the subscription expires in ISO 8601, e.g. |
object |
{- "eventType": "ONTActivation",
- "filters": {
- "target": "my",
- "attributes": [
- {
- "status": "Success",
- "errorCode": "string",
- "errorDetails": "string",
- "errorTitle": "string",
- "error": "string",
- "orderID": "ORD12345",
- "ontSerialNumber": "string",
- "opticalStatus": "string",
- "__not__": {
- "status": "Success",
- "errorCode": "string",
- "errorDetails": "string",
- "errorTitle": "string",
- "error": "string",
- "orderID": "ORD12345",
- "ontSerialNumber": "string",
- "opticalStatus": "string"
}
}
]
}, - "contactEmails": [
- {
- "email": "user@example.com"
}
], - "expiresOn": "2019-08-24",
- "notificationChannels": {
- "email": [
- {
- "email": "user@example.com"
}
], - "webhook": [
- {
- "callbackUri": "string",
- "errorStrategy": "ignore",
- "auth": {
- "username": "string",
- "password": "string"
}
}
]
}
}
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "eventType": "string",
- "filters": {
- "target": "my",
- "attributes": [
- { }
]
}, - "contactEmails": [
- {
- "email": "user@example.com"
}
], - "expiresOn": "2019-08-24",
- "clientId": "string",
- "organisation": "string",
- "partyIds": [
- "string"
], - "notificationChannels": {
- "email": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": [
- {
- "email": "user@example.com"
}
]
}
], - "webhook": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "webhook": [
- {
- "callbackUri": "string",
- "errorStrategy": "ignore",
- "auth": {
- "username": "string",
- "password": "string"
}
}
]
}
]
}
}
Partially updates an existing subscription referenced by its unique ID. Subscription is linked to the consumer which is identified through the partyId
claim provided in the access token
id required | string <uuid> Unique ID of an existing subscription |
Subscription properties that currently support partial updates. At least one property must be set
expiresOn | string <date> The date the subscription expires in ISO 8601, e.g. |
{- "expiresOn": "2019-08-24"
}
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "eventType": "string",
- "filters": {
- "target": "my",
- "attributes": [
- { }
]
}, - "contactEmails": [
- {
- "email": "user@example.com"
}
], - "expiresOn": "2019-08-24",
- "clientId": "string",
- "organisation": "string",
- "partyIds": [
- "string"
], - "notificationChannels": {
- "email": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": [
- {
- "email": "user@example.com"
}
]
}
], - "webhook": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "webhook": [
- {
- "callbackUri": "string",
- "errorStrategy": "ignore",
- "auth": {
- "username": "string",
- "password": "string"
}
}
]
}
]
}
}
Gets the subscription
subscriptionId required | string <uuid> Unique ID of the subscription |
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "eventType": "string",
- "filters": {
- "target": "my",
- "attributes": [
- { }
]
}, - "contactEmails": [
- {
- "email": "user@example.com"
}
], - "expiresOn": "2019-08-24",
- "clientId": "string",
- "organisation": "string",
- "partyIds": [
- "string"
], - "notificationChannels": {
- "email": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": [
- {
- "email": "user@example.com"
}
]
}
], - "webhook": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "webhook": [
- {
- "callbackUri": "string",
- "errorStrategy": "ignore",
- "auth": {
- "username": "string",
- "password": "string"
}
}
]
}
]
}
}
Enables the ability to bulk replay notifications by a query specification.
id | string <uuid> Optional filter to a specific notification identifier. |
status | string Enum: "sent" "fail" Optional filter to notifications in the specified status. Omitting this will result in a default value of 'fail'. |
object Optional filter to attributes describing the source event | |
limit required | number >= 1 Required parameter which limits the number of notifications that will be sent. The maximum number of notifications that can be replayed at once is set by TFF at the system level. |
clientId | string Optional filter to notifications for a specific clientId. Omitting this will result in the service using the clientId from your token. |
organisation | string Optional filter to notifications for a specific organisation. Omitting this will result in the service using the organisation from your token. |
dryRun required | boolean Required parameter which allows for a dry-run without the commitment of actually executing notifications. Note: Due to notifications being in a constant state of change, there is no guarantee that the same request, with 'dryRun: false', would replay the same notifications. |
Illustrates how to identify the number of failed notifications without committing to a replay. It is a safe way to test the potential impact of a given request. Note: Due to notifications being in a constant state of change, there is no guarantee that the same request, with 'dryRun: false', would replay the same notifications.
{- "status": "fail",
- "limit": 1000,
- "dryRun": true
}
An example of a dry-run result. It indicates that 1 notification would be sent.
{- "id": "2f31838e-d24f-4af1-bc43-c3af992da39e",
- "request": {
- "status": "fail",
- "event": {
- "createdFrom": "2024-04-16T00:00:00.000Z"
}, - "limit": 1000,
- "clientId": "0oaq03fyzKRVQPo2o2l9",
- "organisation": "SpeedyFastInternet",
- "dryRun": true
}, - "results": {
- "sent": 1,
- "errored": 0,
- "notifications": [
- {
- "id": "745ad5ed-0560-4c9a-bf09-6fa894808117",
- "status": "DryRun"
}
]
}
}
Enables the ability to bulk replay notifications by a notification ID. Useful if you know if a specific notification that you want to replay.
id required | string <uuid> Example: 322e1915-768d-48a9-8b3b-4332317b1107 |
An example of a date range result which also provides surface-level information for tracing. The sample indicates only 1 notification in the time range was found, and therefore only 1 was queued for sending successfully.
{- "id": "745ad5ed-0560-4c9a-bf09-6fa894808117",
- "replayId": "0d5cc1a1-fd6f-40b1-9fbf-46e483869cd7",
- "status": "Queued"
}