Node.js
import { Rewrite } from '@rewritetoday/sdk';
const rewrite = new Rewrite(process.env.REWRITE_API_KEY!);
const { data, error, cursor } = await rewrite.deliveries.byWebhook(
'748395130237498750',
{
type: 'message.sent',
status: 'SUCCESS',
limit: 25,
},
);
if (error) throw error;{
"ok": true,
"data": [
{
"id": "748395130237498880",
"url": "https://example.com/rewrite/webhooks",
"type": "message.sent",
"code": 200,
"error": null,
"status": "SUCCESS",
"attempt": 1,
"latency": 182,
"retryAt": null,
"createdAt": "2026-03-20T14:22:31.562Z",
"messageId": "748395130237498412",
"sandbox": false
}
],
"cursor": {
"persist": true,
"after": "748395130237498414"
}
}Deliveries
List deliveries for a webhook
List delivery attempts for one webhook, with filters for event type, HTTP code, delivery status, attempt number and message ID.
GET
/
webhooks
/
{id}
/
deliveries
Node.js
import { Rewrite } from '@rewritetoday/sdk';
const rewrite = new Rewrite(process.env.REWRITE_API_KEY!);
const { data, error, cursor } = await rewrite.deliveries.byWebhook(
'748395130237498750',
{
type: 'message.sent',
status: 'SUCCESS',
limit: 25,
},
);
if (error) throw error;{
"ok": true,
"data": [
{
"id": "748395130237498880",
"url": "https://example.com/rewrite/webhooks",
"type": "message.sent",
"code": 200,
"error": null,
"status": "SUCCESS",
"attempt": 1,
"latency": 182,
"retryAt": null,
"createdAt": "2026-03-20T14:22:31.562Z",
"messageId": "748395130237498412",
"sandbox": false
}
],
"cursor": {
"persist": true,
"after": "748395130237498414"
}
}Authorizations
Send your API key as Authorization: Bearer rw_....
Required scope: project:write.
Path Parameters
Webhook identifier returned by Rewrite.
Example:
"748395130237498412"
Query Parameters
Cursor for forward pagination. Send exactly one of after or before when paginating.
Example:
"748395130237498412"
Cursor for backward pagination. Send exactly one of after or before when paginating.
Example:
"748395130237498412"
Page size. Backend cursor schemas validate this between 2 and the route-specific maximum.
Required range:
2 <= x <= 100Filter by webhook event type.
Available options:
sms.otp, message.sent, message.batch, message.queued, message.failed, message.canceled, message.delivered, message.received, message.scheduled Filter by webhook delivery status.
Available options:
FAILED, SUCCESS Filter by HTTP status code.
Required range:
100 <= x <= 600Filter by delivery attempt number.
Required range:
1 <= x <= 5Filter by message identifier.
Example:
"748395130237498412"