Webhooks
Webhooks allow your applications to receive real-time notifications from Digital River whenever certain events occur in your account. By configuring webhook URLs, your systems can be automatically alerted with detailed information, enabling timely and efficient responses to significant activities without continuous polling. This capability ensures your application remains in sync with account events, enhancing integration and operational workflow.
Get all webhooks.
A string containing a specific webhook endpoint name, or a group of events using * as a wildcard. The list will be filtered to include only webhooks with a matching webhook property.
An array of up to 20 strings containing specific event names. The list will be filtered to include only events with a matching event property. You may pass either type or types, but not both.
200 OK. A dictionary with a data property that contains an array of up to limit webhooks. Each entry in the array is a separate webhook object. If no more webhooks are available, the resulting array will be empty. This request should never return an error.
400 Bad Request
401 Unauthorized
403 Forbidden
405 Method Not Allowed
406 Not Acceptable
408 Request Timeout
429 Too Many Requests
500 Internal Server Error
502 Bad Gateway Error
503 Service Unavailable Error
504 Gateway Timeout Error
GET /webhooks HTTP/1.1
Host: api.digitalriver.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
[
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"createdTime": {
"offset": {
"totalSeconds": 0,
"id": "Z",
"rules": {
"fixedOffset": true,
"transitions": [],
"transitionRules": []
}
},
"nano": 1000000,
"year": 2018,
"monthValue": 8,
"dayOfMonth": 29,
"hour": 9,
"minute": 12,
"second": 33,
"dayOfWeek": "WEDNESDAY",
"dayOfYear": 241,
"month": "AUGUST"
},
"updatedTime": {
"offset": {
"totalSeconds": 0,
"id": "Z",
"rules": {
"fixedOffset": true,
"transitions": [],
"transitionRules": []
}
},
"nano": 1000000,
"year": 2018,
"monthValue": 8,
"dayOfMonth": 29,
"hour": 9,
"minute": 12,
"second": 33,
"dayOfWeek": "WEDNESDAY",
"dayOfYear": 241,
"month": "AUGUST"
},
"types": [
"order.created"
],
"apiVersion": "default",
"enabled": true,
"address": "https://company.com",
"transportType": "HTTP",
"oauth": {
"tokenEndPoint": "text",
"userName": "text",
"password": "text",
"clientID": "text",
"clientSecret": "text",
"grantType": "password"
},
"authentication": {
"username": "text",
"password": "text"
}
}
]
Creates a new webhook
Each element of the array represents the name of an event type.
order.created
Indicates whether to use the current default version of the API or the latest version of the API.
default
Example: default
Possible values: Indicates whether the webhook is enabled and receives notifications.
true
Example: true
URL of the webhook endpoint on your server you have set up to receive webhook notifications. Webhook data is sent as JSON in the POST request body. The full event details are included and can be used directly, after parsing the JSON into an Event object.
https://company.com
HTTP
Possible values: 201 Created
400 Bad Request
401 Unauthorized
403 Forbidden
405 Method Not Allowed
406 Not Acceptable
408 Request Timeout
409 Conflict
429 Too Many Requests
500 Internal Server Error
502 Bad Gateway Error
503 Service Unavailable Error
504 Gateway Timeout Error
POST /webhooks HTTP/1.1
Host: api.digitalriver.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 307
{
"types": [
"order.created"
],
"apiVersion": "default",
"enabled": true,
"address": "https://company.com",
"transportType": "HTTP",
"oauth": {
"tokenEndPoint": "text",
"userName": "text",
"password": "text",
"clientID": "text",
"clientSecret": "text",
"grantType": "password"
},
"authentication": {
"username": "text",
"password": "text"
}
}
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"createdTime": {
"offset": {
"totalSeconds": 0,
"id": "Z",
"rules": {
"fixedOffset": true,
"transitions": [],
"transitionRules": []
}
},
"nano": 1000000,
"year": 2018,
"monthValue": 8,
"dayOfMonth": 29,
"hour": 9,
"minute": 12,
"second": 33,
"dayOfWeek": "WEDNESDAY",
"dayOfYear": 241,
"month": "AUGUST"
},
"updatedTime": {
"offset": {
"totalSeconds": 0,
"id": "Z",
"rules": {
"fixedOffset": true,
"transitions": [],
"transitionRules": []
}
},
"nano": 1000000,
"year": 2018,
"monthValue": 8,
"dayOfMonth": 29,
"hour": 9,
"minute": 12,
"second": 33,
"dayOfWeek": "WEDNESDAY",
"dayOfYear": 241,
"month": "AUGUST"
},
"types": [
"order.created"
],
"apiVersion": "default",
"enabled": true,
"address": "https://company.com",
"transportType": "HTTP",
"oauth": {
"tokenEndPoint": "text",
"userName": "text",
"password": "text",
"clientID": "text",
"clientSecret": "text",
"grantType": "password"
},
"authentication": {
"username": "text",
"password": "text"
}
}
Retrieves the details of a webhook endpoint. Supply the unique identifier of the webhook endpoint.
Webhook ID
200 OK. Returns an event object if a valid identifier was provided. All events share a common structure. The only property that will differ is the data property. The data dictionary's values will be the same as retrieving the same object directly from the API. For example, a charge.created event will have the same information as retrieving the relevant charge would.
400 Bad Request
401 Unauthorized
403 Forbidden
404 Not Found
405 Method Not Allowed
406 Not Acceptable
408 Request Timeout
429 Too Many Requests
500 Internal Server Error
502 Bad Gateway Error
503 Service Unavailable Error
504 Gateway Timeout Error
GET /webhooks/{id} HTTP/1.1
Host: api.digitalriver.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"createdTime": {
"offset": {
"totalSeconds": 0,
"id": "Z",
"rules": {
"fixedOffset": true,
"transitions": [],
"transitionRules": []
}
},
"nano": 1000000,
"year": 2018,
"monthValue": 8,
"dayOfMonth": 29,
"hour": 9,
"minute": 12,
"second": 33,
"dayOfWeek": "WEDNESDAY",
"dayOfYear": 241,
"month": "AUGUST"
},
"updatedTime": {
"offset": {
"totalSeconds": 0,
"id": "Z",
"rules": {
"fixedOffset": true,
"transitions": [],
"transitionRules": []
}
},
"nano": 1000000,
"year": 2018,
"monthValue": 8,
"dayOfMonth": 29,
"hour": 9,
"minute": 12,
"second": 33,
"dayOfWeek": "WEDNESDAY",
"dayOfYear": 241,
"month": "AUGUST"
},
"types": [
"order.created"
],
"apiVersion": "default",
"enabled": true,
"address": "https://company.com",
"transportType": "HTTP",
"oauth": {
"tokenEndPoint": "text",
"userName": "text",
"password": "text",
"clientID": "text",
"clientSecret": "text",
"grantType": "password"
},
"authentication": {
"username": "text",
"password": "text"
}
}
Permanently deletes a webhook endpoint. Supply the unique identifier of the webhook.
Webhook ID
204 No Content
400 Bad Request
401 Unauthorized
403 Forbidden
401 Not Found
405 Method Not Allowed
406 Not Acceptable
408 Request Timeout
409 Conflict
429 Too Many Requests
500 Internal Server Error
502 Bad Gateway Error
503 Service Unavailable Error
504 Gateway Timeout Error
DELETE /webhooks/{id} HTTP/1.1
Host: api.digitalriver.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
No content
Updates a existing webhook endpoint.
Webhook ID.
The name of the event type.
order.created
Indicates whether to use the current default version of the API or the latest version of the API
default
Example: default
Possible values: Indicate that webhook is enabled and receives notifications or is not enabled and does not receive notifications
true
Example: true
URL of the webhook endpoint on your server you have set up to receive webhook notifications. Webhook data is sent as JSON in the POST request body. The full event details are included and can be used directly, after parsing the JSON into an Event object.
https://company.com
HTTP
Possible values: 200 OK
400 Bad Request
401 Unauthorized
403 Forbidden
401 Not Found
405 Method Not Allowed
406 Not Acceptable
408 Request Timeout
409 Conflict
429 Too Many Requests
500 Internal Server Error
502 Bad Gateway Error
503 Service Unavailable Error
504 Gateway Timeout Error
PATCH /webhooks/{id} HTTP/1.1
Host: api.digitalriver.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 307
{
"types": [
"order.created"
],
"apiVersion": "default",
"enabled": true,
"address": "https://company.com",
"transportType": "HTTP",
"oauth": {
"tokenEndPoint": "text",
"userName": "text",
"password": "text",
"clientID": "text",
"clientSecret": "text",
"grantType": "password"
},
"authentication": {
"username": "text",
"password": "text"
}
}
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"createdTime": {
"offset": {
"totalSeconds": 0,
"id": "Z",
"rules": {
"fixedOffset": true,
"transitions": [],
"transitionRules": []
}
},
"nano": 1000000,
"year": 2018,
"monthValue": 8,
"dayOfMonth": 29,
"hour": 9,
"minute": 12,
"second": 33,
"dayOfWeek": "WEDNESDAY",
"dayOfYear": 241,
"month": "AUGUST"
},
"updatedTime": {
"offset": {
"totalSeconds": 0,
"id": "Z",
"rules": {
"fixedOffset": true,
"transitions": [],
"transitionRules": []
}
},
"nano": 1000000,
"year": 2018,
"monthValue": 8,
"dayOfMonth": 29,
"hour": 9,
"minute": 12,
"second": 33,
"dayOfWeek": "WEDNESDAY",
"dayOfYear": 241,
"month": "AUGUST"
},
"types": [
"order.created"
],
"apiVersion": "default",
"enabled": true,
"address": "https://company.com",
"transportType": "HTTP",
"oauth": {
"tokenEndPoint": "text",
"userName": "text",
"password": "text",
"clientID": "text",
"clientSecret": "text",
"grantType": "password"
},
"authentication": {
"username": "text",
"password": "text"
}
}
Last updated