Appearance
Are you an LLM? You can read better optimized documentation at /guide/webhooks/retry.md for this page in Markdown format
Retry webhooks
Treezor provides a series of endpoins to resend webhooks.
Feature activation – Configuration required
Please contact Treezor to benefit from the retry webhooks feature.
Resending webhooks is a 3-step process:
- Generate webhook history CSV file for a given time frame.
- Request execution of the file to resend the events contained generated .CSV file (up to 20,000 events).
- Retrieve the execution status of the resent events batch.
Information – The {webhooksBaseUrl}
variable isn't your {baseUrl}
https://webhook.sandbox.treezor.co
in Sandboxhttps://webhook.api.treezor.co
in Production
Generate webhook history CSV
You first need to generate the .CSV file containing the webhook events you wish to resend.
Parameters
Attribute | Type | Description |
---|---|---|
startAt | string | The date and time from which to retrieve the webhooks. Format: RFC3339. |
endAt | string | The date and time up to which to retrieve the webhooks. Format: RFC3339. |
webhook | string | Filter for a specific event, if need be. Example: wallet.create . See the Events description article for the list of events. |
Request example
bash
curl -X POST '{webhooksBaseUrl}/retry/query' \
--header 'authorization: Bearer {accessToken}' \
--header 'Content-Type: application/json' \
-d '{payload}'
1
2
3
4
2
3
4
Here is an example of {payload}
.
json
{
"startAt": "2025-06-10T12:10:00+02:00",
"endAt": "2025-07-08T00:00:00+02:00",
"webhook": "merchantIdGroup.create"
}
1
2
3
4
5
2
3
4
5
Returns the following object:
json
{
"queryId":"2bd5740a-528d-451d-a726-7f57c6d82008",
"link": "https://your.csv.link",
"expireIn": 300
}
1
2
3
4
5
2
3
4
5
If the .CSV file contains more than 20,000 events, you must adjust the time frame until you reach 20,000 or lower in order to move to step 2.
Resend events batch
Now that a .CSV file with a maximum number of 20,000 events has been generated, you can use the execution endpoint to resend all the events contained in the file.
Parameters
Attribute | Type | Description |
---|---|---|
queryId | string | The unique identifier of the query obtained in the first step. |
delay | integer | The time between each webhook retry attempts in seconds, in order to not overload your servers. Can't exceed 1 hour (3600 ). |
Request example
bash
curl -X POST '{webhooksBaseUrl}/retry/exec' \
--header 'authorization: Bearer {accessToken}' \
--header 'Content-Type: application/json' \
-d '{payload}'
1
2
3
4
2
3
4
Here is an example of {payload}
.
json
{
"queryId":"2bd5740a-528d-451d-a726-7f57c6d82008",
"delay": 10
}
1
2
3
4
2
3
4
Returns the following object:
json
{
"executionId":"12345678-1234-1234-1234-123456789abc",
"status": "IN_PROGRESS"
}
1
2
3
4
2
3
4
Retrieve the execution status
You can check whether the resend batch is completed using the dedicated request below with the executionId
from the previous step.
Request example
bash
curl -X GET '{webhooksBaseUrl}/retry/exec/{executionId}' \
--header 'authorization: Bearer {accessToken}'
1
2
2
Returns the following object, with the status
valued to either IN_PROGRESS
or DONE
.
json
{
"executionId":"12345678-1234-1234-1234-123456789abc",
"status": "DONE",
"lastEventAt": "2025-04-23T10:30:00Z"
}
1
2
3
4
5
2
3
4
5