---
title: "Weather webhook delivery"
method: POST
path: "weatherEvent"
tags: ["Webhooks"]
---

# Weather webhook delivery

`POST weatherEvent` (webhook)

Sent to your HTTPS endpoint when a weather alert is issued for the location or a condition you set becomes true or clears. Set up on https://www.weatherapi.com/my/webhooks (Pro+: 5, Business: 20, High Volume and Enterprise: 50). Header `X-WeatherAPI-Signature: t=<unix>,v1=<hex HMAC-SHA256 of t + "." + raw body with the webhook secret>`; `X-WeatherAPI-Event` and `X-WeatherAPI-Delivery` carry the type and event id. Answer 2xx within 10 seconds; otherwise retried after 1, 5, 15, 60 and 180 minutes.

## Payload

- WebhookEvent: Body of a webhook delivery.
  - `id` string
  - `type` 'weather.alert' | 'weather.condition' | 'weather.condition.cleared' | 'ping'
  - `created` string, date-time
  - `webhook` object
    - `id` integer
    - `name` string
    - `trigger` string
  - `location` Location: Location metadata returned with every weather response.
    - `name` string: Location name
    - `region` string: Region or state
    - `country` string: Country name
    - `lat` number, float: Latitude
    - `lon` number, float: Longitude
    - `tz_id` string: IANA timezone ID, e.g. Europe/London
    - `localtime_epoch` integer: Local time as Unix epoch
    - `localtime` string: Local date and time string
  - `alert` object: weather.alert only: the alert, as in alerts.json, plus alert_id.
    - `headline` string
    - `msgtype` string
    - `severity` string
    - `urgency` string
    - `areas` string
    - `category` string
    - `certainty` string
    - `event` string
    - `note` string
    - `effective` string
    - `expires` string
    - `desc` string
    - `instruction` string
    - `alert_id` string
  - `condition` object: weather.condition and weather.condition.cleared only.
    - `metric` string
    - `label` string
    - `unit` string
    - `operator` '>' | '>=' | '<' | '<='
    - `threshold` number
    - `window_hours` 0 | 1 | 3 | 6 | 12 | 24 | 48 | 72
    - `value` number
    - `at` string: Local time of the value.
    - `source` 'current' | 'forecast'
  - `data` object: ping only.
    - `message` string

## Acknowledgement `200`

Any 2xx acknowledges the delivery.

---

[API](https://skmtc.dev/weatherapi/apis/weatherapi-com.md) - [All operations](https://skmtc.dev/weatherapi/apis/weatherapi-com/llms.txt) - [OpenAPI document](https://skmtc.dev/weatherapi/apis/weatherapi-com/revisions/26c06925a7e0?raw)
