logo
Welcome
Overview
Getting Started
Data Formats
Examples
API Reference
Precipitation Data
Daily Precipitation Data
Hourly Precipitation Data
Last 48 Hours Precipitation Data
Recent Rain Event
Soil Data
Soil Moisture
Soil Temperature
Map Services
Esri Image Server Integration
Map Layer Tiles
Query
Embed Widgets
Embeddable HTML UI
MCP Server
powered by zuplo
Sign in

Precipitation & Weather Data API

An API for accessing extremely accurate precipitation, soil moisture, and weather data. Provides historical observations and forecasts with flexible geographic and temporal querying capabilities.

BASE URL
https://api.precip.ai

Precipitation Data

Endpoints for retrieving precipitation measurements and forecasts

ENDPOINTS
GET/api/v1/daily
GET/api/v1/hourly
GET/api/v1/last-48
GET/api/v1/recent-rain

Map Services

Map tile and visualization services

ENDPOINTS
GET/api/v1/map/:serviceName/ImageServer
GET/api/v1/map/:serviceName/ImageServer/tile/:z/:y/:x
GET/api/v1/map/:serviceName/ImageServer/getSamples

Soil Data

Endpoints for soil moisture and temperature data

ENDPOINTS
GET/api/v1/soil-moisture-daily
GET/api/v1/temp-0-10cm-hourly

Embed Widgets

Embeddable UI components for web integration

ENDPOINTS
GET/embed/location

Daily Precipitation Data

Returns comprehensive daily precipitation data for the given time range and location(s). Each day includes precipitation amount, type (rain/snow/mixed), probability (for forecasts), and data source. Seamlessly combines historical observations with forecast data depending on the requested time range.

Headers

Authorization

required, string

The Authorization header is used to authenticate with the API using your API key. Value is of the format Bearer YOUR_KEY_HERE.

Query Parameters

start

required, string

ISO 8601 date %Y-%m-%d or datetime %Y-%m-%dT%H:%M:%S

end

required, string

ISO 8601 date %Y-%m-%d or datetime %Y-%m-%dT%H:%M:%S

longitude

required, string

comma separated list of longitudes

latitude

required, string

comma separated list of latitudes

timeZoneId

optional, string

IANA timezone identifier e.g. America/Chicago

format

optional, default: geojson

Output format: geojson, json or csv

GET
/api/v1/daily
1

Hourly Precipitation Data

Returns comprehensive hourly precipitation data for the given time range and location(s). Each hour includes precipitation amount, type (rain/snow/mixed), probability (for forecasts), and data source. Seamlessly combines historical observations with forecast data depending on the requested time range.

Headers

Authorization

required, string

The Authorization header is used to authenticate with the API using your API key. Value is of the format Bearer YOUR_KEY_HERE.

Query Parameters

start

required, string

ISO 8601 date %Y-%m-%d or datetime %Y-%m-%dT%H:%M:%S

end

required, string

ISO 8601 date %Y-%m-%d or datetime %Y-%m-%dT%H:%M:%S

longitude

required, string

comma separated list of longitudes

latitude

required, string

comma separated list of latitudes

timeZoneId

optional, string

IANA timezone identifier e.g. America/Chicago

format

optional, default: geojson

Output format: geojson, json or csv

GET
/api/v1/hourly
1

Last 48 Hours Precipitation Data

Total precipitation in the last 48 hours for the given location(s).

Headers

Authorization

required, string

The Authorization header is used to authenticate with the API using your API key. Value is of the format Bearer YOUR_KEY_HERE.

Query Parameters

longitude

required, string

comma separated list of longitudes

latitude

required, string

comma separated list of latitudes

timeZoneId

optional, string

IANA timezone identifier e.g. America/Chicago

format

optional, default: geojson

Output format: geojson, json or csv

GET
/api/v1/last-48
1

Recent Rain Event

Returns detailed information about the most recent precipitation event for the given location(s), including total amounts, precipitation type (rain/snow), timing, and how long ago it occurred. A rain event is defined as more than 1/10 inch (2.5mm) of precipitation with less than a 24-hour gap between occurrences.

Headers

Authorization

required, string

The Authorization header is used to authenticate with the API using your API key. Value is of the format Bearer YOUR_KEY_HERE.

Query Parameters

longitude

required, string

comma separated list of longitudes

latitude

required, string

comma separated list of latitudes

timeZoneId

optional, string

IANA timezone identifier e.g. America/Chicago

format

optional, default: geojson

Output format: geojson, json or csv

GET
/api/v1/recent-rain
1

Esri Image Server Integration

Image Service compatible with Esri products. This url eg https://api.precip.ai/api/v1/map/last-48/ImageServer can be added to ArcGIS Online, ArcGIS Pro or QGIS to load raster tiles for the last 48 hours of precipitation data.

Path Parameters

serviceName

required, string

The layer or service name.

  • last-48 - total precipitation in the last 48 hours
  • hourly - total hourly precipitation
  • wind-speed-hourly - average hourly wind speed
  • wind-direction-hourly - average hourly wind direction
  • temperature-hourly - average hourly temperature
GET
/api/v1/map/:serviceName/ImageServer
1

Map Layer Tiles

Map tiles compatible with most web mapping or GIS tools. Software such as Mapbox, Google Maps, ArcGIS, Leaflet, OpenLayers or QGIS will require an x/y/z url eg https://api.precip.ai/api/v1/map/last-48/ImageServer/tile/{z}/{y}/{x}. See the examples for more details.

Headers

Authorization

required, string

The Authorization header is used to authenticate with the API using your API key. Value is of the format Bearer YOUR_KEY_HERE.

Query Parameters

time

optional, string

<start timestamp>,<end timestamp>

Path Parameters

serviceName

required, string

The layer or service name.

  • last-48 - total precipitation in the last 48 hours
  • hourly - total hourly precipitation
  • wind-speed-hourly - average hourly wind speed
  • wind-direction-hourly - average hourly wind direction
  • temperature-hourly - average hourly temperature

x

required, integer

map tile id x

y

required, integer

map tile id y

z

required, integer

map tile id z

GET
/api/v1/map/:serviceName/ImageServer/tile/:z/:y/:x
1

Query

Query value of map tiles at point(s).

Query Parameters

geometry

required, object

points to query

geometryType

required, string

time

optional, string

<start timestamp>,<end timestamp>

Path Parameters

serviceName

required, string

The layer or service name.

  • last-48 - total precipitation in the last 48 hours
  • hourly - total hourly precipitation
  • wind-speed-hourly - average hourly wind speed
  • wind-direction-hourly - average hourly wind direction
  • temperature-hourly - average hourly temperature
GET
/api/v1/map/:serviceName/ImageServer/getSamples
1

Soil Moisture

The soil moisture percentage relative to holding capacity

Headers

Authorization

required, string

The Authorization header is used to authenticate with the API using your API key. Value is of the format Bearer YOUR_KEY_HERE.

Query Parameters

start

required, string

ISO 8601 date %Y-%m-%d or datetime %Y-%m-%dT%H:%M:%S

end

required, string

ISO 8601 date %Y-%m-%d or datetime %Y-%m-%dT%H:%M:%S

longitude

required, string

comma separated list of longitudes

latitude

required, string

comma separated list of latitudes

timeZoneId

optional, string

IANA timezone identifier e.g. America/Chicago

format

optional, default: geojson

Output format: geojson, json or csv

GET
/api/v1/soil-moisture-daily
1

Soil Temperature

Hourly soil temperature data at 0-10cm depth

Headers

Authorization

required, string

The Authorization header is used to authenticate with the API using your API key. Value is of the format Bearer YOUR_KEY_HERE.

GET
/api/v1/temp-0-10cm-hourly
1

Embeddable HTML UI

Returns a complete, HTML page displaying comprehensive weather data for a specific location. See the examples page for more details.

Authorization headers set automatically from query parameters on this endpoint.

Headers

Authorization

required, string

The Authorization header is used to authenticate with the API using your API key. Value is of the format Bearer YOUR_KEY_HERE.

Query Parameters

lat

required, number, maximum value of 90, minimum value of -90

Latitude coordinate (-90 to 90) for the location center of the precipitation widget

lon

required, number, maximum value of 180, minimum value of -180

Longitude coordinate (-180 to 180) for the location center of the precipitation widget

apiKey

required, string

Your API key for authentication. Gets automatically applied as header.

units

optional, string enum, default: metric

Unit system for displaying precipitation amounts and temperatures. 'metric' shows mm and °C, 'imperial' shows inches and °F.

Possible Enum Values

metric

imperial

widgets

optional, string

Comma-separated list of widget keys to display.

Available options: current, event, calendar, cumulative, total, precip, table, wind, temp, soiltemp, soilmoisture, snow

When not provided, shows all widgets.

GET
/embed/location
1

MCP Server

Model Context Protocol server endpoint for AI tool integration

POST
/mcp
1