The forecast cycle is complete when every expected forecast hour for a model run is available. The payload includes the model, initialization time, and forecast zero.
Within a filter, an event matches any value in the array. When multiple filters are set, the event must match every filter.
| Filter | Type | Description |
|---|---|---|
| model | string | string[] | Model runs to match. Use the same identifiers as the forecast API: wm-6 or wm-6-3km . An array matches any listed model. Leave unselected to receive both supported models. |
| Name | Type | Description |
|---|---|---|
| id | string | Stable identifier for this forecast event. Reused across delivery retries and also sent in the Webhook-Id header; use it to deduplicate processing. |
| type | string | The subscription type. Always initialization_time.available for this payload. |
| subscription_id | integer | Identifier of the subscription that matched this model run. |
| webhook_id | integer | Identifier of the webhook that received this delivery. |
| version | integer | Version of the webhook payload schema. |
| occurred_at | string | ISO 8601 timestamp when the forecast cycle became complete. |
| data | object | Details of the completed forecast cycle. |
| model | string | Model associated with the completed forecast cycle. |
| initialization_time | string | ISO 8601 initialization time that identifies the model run. |
| forecast_zero | string | ISO 8601 timestamp corresponding to forecast hour 0. |
| webhook_note | string | Optional webhook note. Omitted when the webhook has no note. |
| subscription_note | string | Optional subscription note. Omitted when the subscription has no note. |