Network Calendar
Network Calendar webhooks (NETWORK_CALENDAR) notify you about network releases and upgrades from the Spectrum network calendar. They fire when an approved calendar entry is created or changed, and again as a reminder before the entry’s date.
Unlike Address Activity and Contract Events, a Network Calendar webhook does not watch a chain. One webhook can cover many networks, and deliveries are not tied to a block.
Actions
Every Network Calendar webhook receives all three actions. Each delivery carries one action:
| Action | When it fires |
|---|---|
created | A new entry is approved on the calendar. |
updated | An entry’s network, date, description, chain type, or event type changes. |
upcoming | The entry’s date falls inside your upcoming window. |
Only entries dated now or later produce deliveries. Edits to an event that has already passed are not sent, but rescheduling a past entry to a future date sends updated. Removing an entry from the calendar does not send a delivery.
Filters
Networks
Choose the networks you want calendar entries for. The list shows the networks from your Spectrum services; search it, or use Select all to receive entries for every network. At least one network must be selected.
If a selected network is later removed from your services, the webhook settings show it with a Decommissioned badge and a warning that you will not receive updates for it.
Chain types
Choose Mainnet, Testnet, Devnet, or any combination. All three are selected by default, and at least one must stay selected.
Upcoming window
The upcoming window sets how far ahead of an entry’s date the upcoming reminder is sent. Set it in Days (1–7) or Hours (1–23). The default is 1 day. Calendar entry dates are in UTC.
Each entry sends one reminder per date, so a rescheduled entry gets a new reminder for its new date. If a new entry is already inside your upcoming window when it is approved, you receive only the upcoming reminder, not a separate created. If the entry is further away than your window, you receive created now and upcoming later.
The delivery payload
Each delivery carries a single calendar entry. The entry object has the same shape as an entry returned by getNetworkCalendar.
{
"id": "whevt_a1b2c3d4e5f6",
"type": "NETWORK_CALENDAR",
"webhookId": "wh_4dbc2155930fa7054493aed0",
"createdAt": "2026-10-31T09:00:00Z",
"event": {
"action": "upcoming",
"entry": {
"id": 42,
"chain": "ethereum",
"date": "2026-11-01T00:00:00Z",
"description": "Mainnet network upgrade",
"chainType": "mainnet",
"eventType": "upgrade"
}
}
}| Field | Description |
|---|---|
event.action | created, updated, or upcoming. |
event.entry.id | Calendar entry id. Stable across actions for the same entry. |
event.entry.chain | Network slug. |
event.entry.date | Scheduled date and time (RFC3339, UTC). |
event.entry.description | Entry description. May be empty. |
event.entry.chainType | mainnet, testnet, or devnet. |
event.entry.eventType | release or upgrade. |
Calendar deliveries have no blockHash, blockNumber, or removed field and are never rolled back. Headers, signing, retries, and idempotency work the same as for other webhook types; see Delivery & Retries.
Slack and Telegram destinations receive a summary showing the action, event type, network, chain type, date, and description, followed by the event JSON.
Timing
Spectrum checks the calendar every few minutes, so a newly approved or edited entry is delivered shortly after the change rather than instantly.