• Welcome
  • API Reference
Forecast
    Weather Forecastget
Precipitation Data
    Daily Precipitation DatagetHourly Precipitation DatagetMinutely Precipitation RategetLast N Hours Precipitation DatagetRecent Rain Eventget
Soil Data
    Daily Soil MoisturegetHourly Soil MoisturegetSoil TemperaturegetSnow Depthget
Atmospheric Data
    Air TemperaturegetSpecific HumiditygetRelative HumiditygetSurface PressuregetWind SpeedgetWind GustsgetWind DirectiongetCloud CovergetSolar Radiationget
Bulk Export
    Create Bulk Exportpost
Map Services
    Esri Image Server IntegrationgetMap Layer TilesgetQueryget
Embed Widgets
    Embeddable HTML UIget
Saved Locations
    List Saved LocationsgetSave a Locationpost
MCP Servers
    MCP ServerpostMCP Server (x402 Pay-per-use)post
Other endpoints
    MCP protected resource metadatagetMCP protected resource metadata for /mcpgetChatGPT plugin domain verificationgetRedirect to Dev PortalgetRedirect to new Dev PortalgetHourly Precipitation Data (x402)getMinutely Precipitation Rate (x402)getLast N Hours Precipitation Data (x402)getRecent Rain Event (x402)getDaily Soil Moisture (x402)getHourly Soil Moisture (x402)getHourly Soil Temperature 0-10cm (x402)getHourly Air Temperature (x402)getHourly Specific Humidity (x402)getHourly Relative Humidity (x402)getHourly Surface Pressure (x402)getHourly Wind Speed (x402)getHourly Wind Gust Speed (x402)getHourly Wind Direction (x402)getHourly Cloud Cover (x402)getHourly Solar Radiation (x402)getx402 (GET) via Orthogonalgetx402 (POST) via Orthogonalpost
Schemas
powered by Zuplo
Precipitation & Weather Data API
Precipitation & Weather Data API

Atmospheric Data

Endpointhttps://api.precip.ai

Endpoints for hourly atmospheric variables: temperature, humidity, pressure, wind, clouds


Air Temperature

GET
https://api.precip.ai
/api/v1/temperature-hourly

Hourly near-surface air temperature in Celsius (°C)

Air Temperature › query Parameters

start
​string · required

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

Example: 2025-06-01
Default: 2025-06-01
end
​string · required

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

Example: 2025-06-30
Default: 2025-06-30
longitude
​string · pattern: ^-?\d+(\.\d+)?(,-?\d… · required

Longitude (WGS84). Personal API: one value. Commercial keys may pass a comma-separated list.

Default: -122.42616
latitude
​string · pattern: ^-?\d+(\.\d+)?(,-?\d… · required

Latitude (WGS84). Personal API: one value. Commercial keys may pass a comma-separated list.

Default: 37.75750
timeZoneId
​string · pattern: ^[A-Za-z_]+/[A-Za-z_…

IANA timezone identifier for localizing timestamps

Default: America/Chicago
format
​string · enum

Output format: geojson, json or csv

Output format: geojson, json or csv

Enum values:
geojson
json
csv
Default: json

Air Temperature › Headers

Authorization
​string · required

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

Air Temperature › Responses

Successful Response

type
​string · enum · required
Enum values:
FeatureCollection
​object[] · required
GET/api/v1/temperature-hourly
curl --request GET \ --url 'https://api.precip.ai/api/v1/temperature-hourly?start=2025-06-01&end=2025-06-30&longitude=-122.42616&latitude=37.75750' \ --header 'Authorization: <string>'
shell
Example Responses
{ "type": "FeatureCollection", "features": [ { "type": "Feature", "properties": { "hours": [ { "temperature": 12.71, "startTime": "2024-10-09T00:00:00+0000" }, { "temperature": 11.75, "startTime": "2024-10-09T01:00:00+0000" } ], "timeZoneId": "GMT" }, "geometry": { "type": "Point", "coordinates": [ -83.791929211, 42.378447032 ] } } ] }
json
application/json

Specific Humidity

GET
https://api.precip.ai
/api/v1/specific-humidity-hourly

Hourly specific humidity (kg/kg)

Specific Humidity › query Parameters

start
​string · required

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

Example: 2025-06-01
Default: 2025-06-01
end
​string · required

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

Example: 2025-06-30
Default: 2025-06-30
longitude
​string · pattern: ^-?\d+(\.\d+)?(,-?\d… · required

Longitude (WGS84). Personal API: one value. Commercial keys may pass a comma-separated list.

Default: -122.42616
latitude
​string · pattern: ^-?\d+(\.\d+)?(,-?\d… · required

Latitude (WGS84). Personal API: one value. Commercial keys may pass a comma-separated list.

Default: 37.75750
timeZoneId
​string · pattern: ^[A-Za-z_]+/[A-Za-z_…

IANA timezone identifier for localizing timestamps

Default: America/Chicago
format
​string · enum

Output format: geojson, json or csv

Enum values:
geojson
json
csv
Default: json

Specific Humidity › Headers

Authorization
​string · required

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

Specific Humidity › Responses

Successful Response

type
​string · enum · required
Enum values:
FeatureCollection
​object[] · required
GET/api/v1/specific-humidity-hourly
curl --request GET \ --url 'https://api.precip.ai/api/v1/specific-humidity-hourly?start=2025-06-01&end=2025-06-30&longitude=-122.42616&latitude=37.75750' \ --header 'Authorization: <string>'
shell
Example Responses
{ "type": "FeatureCollection", "features": [ { "type": "Feature", "properties": { "hours": [ { "specific_humidity": 0.005086, "startTime": "2024-10-09T00:00:00+0000" }, { "specific_humidity": 0.005194, "startTime": "2024-10-09T01:00:00+0000" } ], "timeZoneId": "GMT" }, "geometry": { "type": "Point", "coordinates": [ -83.791929211, 42.378447032 ] } } ] }
json
application/json

Relative Humidity

GET
https://api.precip.ai
/api/v1/relative-humidity-hourly

Hourly relative humidity as a percentage (0-100%)

Relative Humidity › query Parameters

start
​string · required

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

Example: 2025-10-01
Default: 2025-10-01
end
​string · required

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

Example: 2025-10-31
Default: 2025-10-31
longitude
​string · pattern: ^-?\d+(\.\d+)?(,-?\d… · required

Longitude (WGS84). Personal API: one value. Commercial keys may pass a comma-separated list.

Default: -122.42616
latitude
​string · pattern: ^-?\d+(\.\d+)?(,-?\d… · required

Latitude (WGS84). Personal API: one value. Commercial keys may pass a comma-separated list.

Default: 37.75750
timeZoneId
​string · pattern: ^[A-Za-z_]+/[A-Za-z_…

IANA timezone identifier for localizing timestamps

Default: America/Chicago
format
​string · enum

Output format: geojson, json or csv

Output format: geojson, json or csv

Enum values:
geojson
json
csv
Default: json

Relative Humidity › Headers

Authorization
​string · required

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

Relative Humidity › Responses

Successful Response

type
​string · enum · required
Enum values:
FeatureCollection
​object[] · required
GET/api/v1/relative-humidity-hourly
curl --request GET \ --url 'https://api.precip.ai/api/v1/relative-humidity-hourly?start=2025-10-01&end=2025-10-31&longitude=-122.42616&latitude=37.75750' \ --header 'Authorization: <string>'
shell
Example Responses
{ "type": "FeatureCollection", "features": [ { "type": "Feature", "properties": { "hours": [ { "relative_humidity": 65.3, "startTime": "2025-10-09T00:00:00+0000" }, { "relative_humidity": 68.7, "startTime": "2025-10-09T01:00:00+0000" } ], "timeZoneId": "GMT" }, "geometry": { "type": "Point", "coordinates": [ -83.791929211, 42.378447032 ] } } ] }
json
application/json

Surface Pressure

GET
https://api.precip.ai
/api/v1/pressure-hourly

Hourly station-level surface pressure in pascals (Pa)

Surface Pressure › query Parameters

start
​string · required

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

Example: 2025-10-01
Default: 2025-10-01
end
​string · required

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

Example: 2025-10-31
Default: 2025-10-31
longitude
​string · pattern: ^-?\d+(\.\d+)?(,-?\d… · required

Longitude (WGS84). Personal API: one value. Commercial keys may pass a comma-separated list.

Default: -122.42616
latitude
​string · pattern: ^-?\d+(\.\d+)?(,-?\d… · required

Latitude (WGS84). Personal API: one value. Commercial keys may pass a comma-separated list.

Default: 37.75750
timeZoneId
​string · pattern: ^[A-Za-z_]+/[A-Za-z_…

IANA timezone identifier for localizing timestamps

Default: America/Chicago
format
​string · enum

Output format: geojson, json or csv

Output format: geojson, json or csv

Enum values:
geojson
json
csv
Default: json

Surface Pressure › Headers

Authorization
​string · required

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

Surface Pressure › Responses

Successful Response

type
​string · enum · required
Enum values:
FeatureCollection
​object[] · required
GET/api/v1/pressure-hourly
curl --request GET \ --url 'https://api.precip.ai/api/v1/pressure-hourly?start=2025-10-01&end=2025-10-31&longitude=-122.42616&latitude=37.75750' \ --header 'Authorization: <string>'
shell
Example Responses
{ "type": "FeatureCollection", "features": [ { "type": "Feature", "properties": { "hours": [ { "pressure": 101325, "startTime": "2025-10-09T00:00:00+0000" }, { "pressure": 101180, "startTime": "2025-10-09T01:00:00+0000" } ], "timeZoneId": "GMT" }, "geometry": { "type": "Point", "coordinates": [ -83.791929211, 42.378447032 ] } } ] }
json
application/json

Wind Speed

GET
https://api.precip.ai
/api/v1/wind-speed-hourly

Hourly near-surface wind speed in meters per second (m/s)

Wind Speed › query Parameters

start
​string · required

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

Example: 2025-06-01
Default: 2025-06-01
end
​string · required

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

Example: 2025-06-30
Default: 2025-06-30
longitude
​string · pattern: ^-?\d+(\.\d+)?(,-?\d… · required

Longitude (WGS84). Personal API: one value. Commercial keys may pass a comma-separated list.

Default: -122.42616
latitude
​string · pattern: ^-?\d+(\.\d+)?(,-?\d… · required

Latitude (WGS84). Personal API: one value. Commercial keys may pass a comma-separated list.

Default: 37.75750
timeZoneId
​string · pattern: ^[A-Za-z_]+/[A-Za-z_…

IANA timezone identifier for localizing timestamps

Default: America/Chicago
format
​string · enum

Output format: geojson, json or csv

Output format: geojson, json or csv

Enum values:
geojson
json
csv
Default: json

Wind Speed › Headers

Authorization
​string · required

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

Wind Speed › Responses

Successful Response

type
​string · enum · required
Enum values:
FeatureCollection
​object[] · required
GET/api/v1/wind-speed-hourly
curl --request GET \ --url 'https://api.precip.ai/api/v1/wind-speed-hourly?start=2025-06-01&end=2025-06-30&longitude=-122.42616&latitude=37.75750' \ --header 'Authorization: <string>'
shell
Example Responses
{ "type": "FeatureCollection", "features": [ { "type": "Feature", "properties": { "hours": [ { "wind_speed": 3.2, "startTime": "2025-10-09T00:00:00+0000" }, { "wind_speed": 3.8, "startTime": "2025-10-09T01:00:00+0000" } ], "timeZoneId": "GMT" }, "geometry": { "type": "Point", "coordinates": [ -83.791929211, 42.378447032 ] } } ] }
json
application/json

Wind Gusts

GET
https://api.precip.ai
/api/v1/wind-speed-gust-hourly

Hourly wind gust speed in meters per second (m/s)

Wind Gusts › query Parameters

start
​string · required

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

Example: 2025-06-01
Default: 2025-06-01
end
​string · required

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

Example: 2025-06-30
Default: 2025-06-30
longitude
​string · pattern: ^-?\d+(\.\d+)?(,-?\d… · required

Longitude (WGS84). Personal API: one value. Commercial keys may pass a comma-separated list.

Default: -122.42616
latitude
​string · pattern: ^-?\d+(\.\d+)?(,-?\d… · required

Latitude (WGS84). Personal API: one value. Commercial keys may pass a comma-separated list.

Default: 37.75750
timeZoneId
​string · pattern: ^[A-Za-z_]+/[A-Za-z_…

IANA timezone identifier for localizing timestamps

Default: America/Chicago
format
​string · enum

Output format: geojson, json or csv

Output format: geojson, json or csv

Enum values:
geojson
json
csv
Default: json

Wind Gusts › Headers

Authorization
​string · required

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

Wind Gusts › Responses

Successful Response

type
​string · enum · required
Enum values:
FeatureCollection
​object[] · required
GET/api/v1/wind-speed-gust-hourly
curl --request GET \ --url 'https://api.precip.ai/api/v1/wind-speed-gust-hourly?start=2025-06-01&end=2025-06-30&longitude=-122.42616&latitude=37.75750' \ --header 'Authorization: <string>'
shell
Example Responses
{ "type": "FeatureCollection", "features": [ { "type": "Feature", "properties": { "hours": [ { "wind_gust": 7.5, "startTime": "2025-10-09T00:00:00+0000" }, { "wind_gust": 8.1, "startTime": "2025-10-09T01:00:00+0000" } ], "timeZoneId": "GMT" }, "geometry": { "type": "Point", "coordinates": [ -83.791929211, 42.378447032 ] } } ] }
json
application/json

Wind Direction

GET
https://api.precip.ai
/api/v1/wind-direction-hourly

Hourly wind direction in compass degrees (0-360)

Wind Direction › query Parameters

start
​string · required

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

Example: 2025-06-01
Default: 2025-06-01
end
​string · required

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

Example: 2025-06-30
Default: 2025-06-30
longitude
​string · pattern: ^-?\d+(\.\d+)?(,-?\d… · required

Longitude (WGS84). Personal API: one value. Commercial keys may pass a comma-separated list.

Default: -122.42616
latitude
​string · pattern: ^-?\d+(\.\d+)?(,-?\d… · required

Latitude (WGS84). Personal API: one value. Commercial keys may pass a comma-separated list.

Default: 37.75750
timeZoneId
​string · pattern: ^[A-Za-z_]+/[A-Za-z_…

IANA timezone identifier for localizing timestamps

Default: America/Chicago
format
​string · enum

Output format: geojson, json or csv

Output format: geojson, json or csv

Enum values:
geojson
json
csv
Default: json

Wind Direction › Headers

Authorization
​string · required

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

Wind Direction › Responses

Successful Response

type
​string · enum · required
Enum values:
FeatureCollection
​object[] · required
GET/api/v1/wind-direction-hourly
curl --request GET \ --url 'https://api.precip.ai/api/v1/wind-direction-hourly?start=2025-06-01&end=2025-06-30&longitude=-122.42616&latitude=37.75750' \ --header 'Authorization: <string>'
shell
Example Responses
{ "type": "FeatureCollection", "features": [ { "type": "Feature", "properties": { "hours": [ { "wind_direction": 12.2, "startTime": "2025-10-09T00:00:00+0000" }, { "wind_direction": 319.9, "startTime": "2025-10-09T01:00:00+0000" } ], "timeZoneId": "GMT" }, "geometry": { "type": "Point", "coordinates": [ -83.791929211, 42.378447032 ] } } ] }
json
application/json

Cloud Cover

GET
https://api.precip.ai
/api/v1/cloud-cover-hourly

Hourly cloud cover fraction (0-1, where 0 is clear and 1 is overcast)

Cloud Cover › query Parameters

start
​string · required

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

Example: 2025-10-01
Default: 2025-10-01
end
​string · required

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

Example: 2025-10-31
Default: 2025-10-31
longitude
​string · pattern: ^-?\d+(\.\d+)?(,-?\d… · required

Longitude (WGS84). Personal API: one value. Commercial keys may pass a comma-separated list.

Default: -122.42616
latitude
​string · pattern: ^-?\d+(\.\d+)?(,-?\d… · required

Latitude (WGS84). Personal API: one value. Commercial keys may pass a comma-separated list.

Default: 37.75750
timeZoneId
​string · pattern: ^[A-Za-z_]+/[A-Za-z_…

IANA timezone identifier for localizing timestamps

Default: America/Chicago
format
​string · enum

Output format: geojson, json or csv

Output format: geojson, json or csv

Enum values:
geojson
json
csv
Default: json

Cloud Cover › Headers

Authorization
​string · required

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

Cloud Cover › Responses

Successful Response

type
​string · enum · required
Enum values:
FeatureCollection
​object[] · required
GET/api/v1/cloud-cover-hourly
curl --request GET \ --url 'https://api.precip.ai/api/v1/cloud-cover-hourly?start=2025-10-01&end=2025-10-31&longitude=-122.42616&latitude=37.75750' \ --header 'Authorization: <string>'
shell
Example Responses
{ "type": "FeatureCollection", "features": [ { "type": "Feature", "properties": { "hours": [ { "cloud_cover": 0.42, "startTime": "2025-10-09T00:00:00+0000" }, { "cloud_cover": 0.38, "startTime": "2025-10-09T01:00:00+0000" } ], "timeZoneId": "GMT" }, "geometry": { "type": "Point", "coordinates": [ -83.791929211, 42.378447032 ] } } ] }
json
application/json

Solar Radiation

GET
https://api.precip.ai
/api/v1/solar-radiation-hourly

Hourly downward short-wave radiation flux in watts per square meter (W/m²)

Solar Radiation › query Parameters

start
​string · required

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

Example: 2025-10-15
Default: 2025-10-15
end
​string · required

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

Example: 2025-10-31
Default: 2025-10-31
longitude
​string · pattern: ^-?\d+(\.\d+)?(,-?\d… · required

Longitude (WGS84). Personal API: one value. Commercial keys may pass a comma-separated list.

Default: -122.42616
latitude
​string · pattern: ^-?\d+(\.\d+)?(,-?\d… · required

Latitude (WGS84). Personal API: one value. Commercial keys may pass a comma-separated list.

Default: 37.75750
timeZoneId
​string · pattern: ^[A-Za-z_]+/[A-Za-z_…

IANA timezone identifier for localizing timestamps

Default: America/Chicago
format
​string · enum

Output format: geojson, json or csv

Output format: geojson, json or csv

Enum values:
geojson
json
csv
Default: json

Solar Radiation › Headers

Authorization
​string · required

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

Solar Radiation › Responses

Successful Response

type
​string · enum · required
Enum values:
FeatureCollection
​object[] · required
GET/api/v1/solar-radiation-hourly
curl --request GET \ --url 'https://api.precip.ai/api/v1/solar-radiation-hourly?start=2025-10-15&end=2025-10-31&longitude=-122.42616&latitude=37.75750' \ --header 'Authorization: <string>'
shell
Example Responses
{ "type": "FeatureCollection", "features": [ { "type": "Feature", "properties": { "hours": [ { "DSWRF": 450.2, "startTime": "2025-10-09T00:00:00+0000" }, { "DSWRF": 520.8, "startTime": "2025-10-09T01:00:00+0000" } ], "timeZoneId": "GMT" }, "geometry": { "type": "Point", "coordinates": [ -83.791929211, 42.378447032 ] } } ] }
json
application/json

Soil DataBulk Export