Node.js
import { Rewrite } from '@rewritetoday/sdk';
const rewrite = new Rewrite(process.env.REWRITE_API_KEY!);
const { data, error, cursor } = await rewrite.webhooks.list({
limit: 20,
});
if (error) throw error;{
"ok": true,
"data": [
{
"id": "748395130237498750",
"name": "delivery-events",
"events": [
"message.sent",
"message.failed",
"message.received",
"sms.otp"
],
"isEnabled": true,
"sandbox": false,
"endpoint": "https://example.com/rewrite/webhooks",
"retries": 2,
"timeout": 3000,
"lastDeliveryAt": "2026-03-20T14:22:39.914Z",
"createdAt": "2026-03-20T14:22:31.562Z"
}
],
"cursor": {
"persist": false
}
}Webhooks
List webhooks
List webhooks configured for the current project. Results are paginated with a top-level cursor.
GET
/
webhooks
Node.js
import { Rewrite } from '@rewritetoday/sdk';
const rewrite = new Rewrite(process.env.REWRITE_API_KEY!);
const { data, error, cursor } = await rewrite.webhooks.list({
limit: 20,
});
if (error) throw error;{
"ok": true,
"data": [
{
"id": "748395130237498750",
"name": "delivery-events",
"events": [
"message.sent",
"message.failed",
"message.received",
"sms.otp"
],
"isEnabled": true,
"sandbox": false,
"endpoint": "https://example.com/rewrite/webhooks",
"retries": 2,
"timeout": 3000,
"lastDeliveryAt": "2026-03-20T14:22:39.914Z",
"createdAt": "2026-03-20T14:22:31.562Z"
}
],
"cursor": {
"persist": false
}
}Authorizations
Send your API key as Authorization: Bearer rw_....
Required scope: project:webhooks:read.
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 <= 100