Cancel Notification
❌ Cancel Notification API
The Cancel Notification API (cancelRVN) allows an enterprise to revoke or cancel a previously sent Ditto ID notification. Once cancelled, the notification becomes inactive, and the user can no longer respond to it.
This is useful for scenarios where:
- The transaction was aborted by the user.
- A timeout occurred at the enterprise end.
- Duplicate notifications were sent and need to be invalidated.
🔗 Endpoint
POST https://<REL-ID-VERIFY-SERVER>:<VERIFY-PORT>/cancelRVN.htm
🔐 Authentication
Supports:
- Basic Auth (
Authorization: Basic <base64-encoded-credentials>) - Bearer Token (
Authorization: Bearer <access_token>)
📥 Request Parameters
Content-Type: application/json
{
"notification_uuid": "03f67f9e-ec4f-11e6-b006-92361f002671"
}| Parameter | Type | Required | Description |
|---|---|---|---|
notification_uuid | string | ✅ | UUID of the notification to cancel. Must be from a valid active notification. This is the UUID of the notification returned in generateRVN |
✅ Success Response
{
"user_id": "u1",
"notification_uuid": "03f67f9e-ec4f-11e6-b006-92361f002671",
"action_response": "NONE",
"status": "CANCELLED",
"msg_id": "txn_12345",
"delivery_status": "NOTIFIED",
"is_ds_verified": false,
"create_ts": "2024-06-01T10:00:00Z",
"expiry_timestamp": "2024-06-01T10:05:00Z",
"response_code": 0
}❌ Failure Response
{
"response_code": 1,
"error_code": 3620,
"error_message": "Notification already updated, notification status is CANCELLED"
}📘 Field Descriptions
| Field | Description |
|---|---|
user_id | Ditto ID user associated with the cancelled notification |
notification_uuid | The UUID of the notification being cancelled |
action_response | Will be NONE as user did not act |
status | Always CANCELLED on success |
msg_id | The original message ID from the enterprise |
delivery_status | Delivery status of the push notification |
is_ds_verified | False (no signing happens on cancelled notification) |
create_ts | When the notification was originally created |
expiry_timestamp | When the notification was meant to expire |
response_code | 0 for success, 1 for failure |
🚚 Values of delivery_status Attribute in the Success Response
delivery_status Attribute in the Success ResponseNONE: Ditto ID is attempting to deliver the notification on user's device(s).PARTIALLY_NOTIFIED: Google/Apple Push Notification Service accepted request to send notification on at least one device.NOTIFIED: Google/Apple Push Notification Service accepted request to send notification on all devices registered by the user.FAILED_TO_NOTIFY: Google/Apple Push Notification Service did not accept any request to send push notification to devices registered by the user.
🚫 Error Codes
| Code | Message | Scenario |
|---|---|---|
| 2600 | Invalid Request URI | URI is malformed |
| 2607 | Invalid HTTP request | Malformed JSON or method |
| 2699 | Internal Server error | Server exception during cancellation |
| 3502 | Invalid Notification Request Data | Empty or bad request body |
| 3593 | Regex validation failed | Invalid UUID format |
| 3620 | Notification already updated | Notification is already expired, updated or cancelled |
| 3621 | Notification not present | UUID not found or archived |
| 3623 | Notification cannot be cancelled | System-generated (ISA/Auth) notifications |
| 7002 | Invalid HTTP method | Only POST is allowed |
| 7003 | Content size should be greater than zero | Empty body |
| 7014 | Invalid request | Required parameter missing |
| 7019 | IPAddress is not whitelisted | Unauthorized IP making request |
🧠 Notes
- This API is idempotent – repeated calls with same UUID will return same result if already cancelled.
- Cancelled notifications cannot be re-enabled or reused.
- Call
getRVNStatuspost-cancellation to confirm its status.
Use this API to gracefully terminate notifications when the underlying transaction is no longer valid, enhancing trust and reducing user confusion.
Updated 10 months ago
Did this page help you?
