API overview
Rain Monitoring API
Current precipitation data for a location and radius.
Query rain intensity from radar and satellite and check data availability for use in applications, monitoring systems, and operational workflows. Coverage is available in selected countries and regions.
The minimum monthly commitment of US$1,000 includes 2.5 million API requests per month. Access is reserved for larger commercial customers and projects, with scope and expected usage agreed individually.
- Interface
- HTTPS · GET / POST
- Response format
- JSON
- Authentication
- API key
- Optional integration
- MCP support
API reference
Query precipitation within a radius around a coordinate. The standard response describes radar and satellite coverage, maximum rain intensity, and the timestamp of the underlying precipitation data.
Request parameters
All four parameters are required. Send them as query parameters with GET, or as application/x-www-form-urlencoded parameters with POST.
| Parameter / type | Definition |
|---|---|
api_keystring |
API key assigned to your integration.Example: YOUR_API_KEY |
latnumber |
Latitude of the search centre in decimal degrees.Example: 45.5152 |
lonnumber |
Longitude of the search centre in decimal degrees.Range: −180 to 180, inclusive. Example: -122.6784 |
radiusnumber · km |
Search radius around the coordinate.Greater than 0, up to 501 km. Example: 20 |
curl --get \
'https://app.rain-alarm.com/api/v1/rain' \
--data-urlencode 'api_key=YOUR_API_KEY' \
--data-urlencode 'lat=45.5152' \
--data-urlencode 'lon=-122.6784' \
--data-urlencode 'radius=20'
This example queries a 20 km radius around Portland, Oregon. Replace YOUR_API_KEY with your assigned key.
400- A coordinate or radius is missing, invalid, or outside the accepted range.
403- The API key is missing or invalid.
Response fields
A successful request returns 200 OK and a JSON object. Data availability and source coverage are reported separately in coverage.
| Field / type | Definition |
|---|---|
coverageinteger · always |
Data availability and source coverage within the requested radius.
|
intensityinteger · conditional |
Maximum rain-intensity level within the search radius, from 0 to 12.Included when coverage is 1, 2, or 3 (coverage > 0). Level 0 means no precipitation detected; levels 1–12 follow the intensity scale. |
updatedinteger · always |
Timestamp of the underlying precipitation data, in milliseconds since the Unix epoch.Use this timestamp to assess the age of the data, and coverage to check its availability. |
For coverage: 0 or coverage: -1, intensity is omitted. A missing field must not be treated as intensity: 0. Codes 1, 2, and 3 identify available sources within the radius; they do not guarantee coverage of every point in the search area.
{
"coverage": 1,
"intensity": 7,
"updated": 1783778400000
}
Data temporarily unavailable
{
"coverage": 0,
"updated": 1783778400000
}
Location outside coverage
{
"coverage": -1,
"updated": 1783778400000
}
Illustrative responses. The available-data example reports intensity level 7, corresponding to an estimated rain rate above 12 mm/h.
Optional response data
By agreementThe following data can be included in a tailored integration. These are additional response fields, separate from the four required request parameters.
| Additional data | Description |
|---|---|
| Distance to precipitation | Distance from the requested location to the nearest detected precipitation within the search radius. |
| Precipitation-covered area | Approximate area affected by precipitation within the search radius. |
| Precipitation types | Types detected within the radius: rain, mixed precipitation, snow, or freezing rain. |
These fields are not part of the standard response above. Field names, units, and availability are specified for each integration.
Intensity scale
Level 0 means no precipitation detected. Levels 1–12 correspond to the following approximate minimum rain rates.
- 1> 0.2 mm/h
- 2> 0.3 mm/h
- 3> 0.6 mm/h
- 4> 1.3 mm/h
- 5> 3 mm/h
- 6> 6 mm/h
- 7> 12 mm/h
- 8> 24 mm/h
- 9> 50 mm/h
- 10> 100 mm/h
- 11> 205 mm/h
- 12> 420 mm/h
Coverage and data availability
See the map at www.rain-alarm.com for current precipitation coverage. We will confirm coverage for your intended locations during integration planning.
Data sources and interruptions
Radar observations are supplied by national and regional meteorological services and supplemented by satellite precipitation estimates. Update frequency and geographic coverage vary by source.
Maintenance, transmission problems, and source delays can temporarily affect data availability. API availability and precipitation-data availability are separate.
Integration options
Use the JSON API to query individual locations or monitor them periodically. Request volume, update frequency, and support requirements are agreed for each integration.
Typical applications include dispatch and logistics, outdoor site monitoring, events, and fleet operations.
Access and contact
Access is limited to larger commercial customers and projects with substantial usage requirements. The API is not available for personal use or small-scale projects.
Include your project scope, intended locations, and expected usage when contacting us. We review each request individually to confirm eligibility, coverage, update frequency, and pricing.
US$1,000 per month includes 2.5 million API requests. This is the minimum monthly commitment, excluding applicable VAT and sales taxes. Higher request volumes and additional requirements are priced individually.
mdiener@mdiener.itWrite directly or use the form to prepare an email request.