Leaf Agriculture Weather API

The Weather API from Leaf Agriculture — 8 operation(s) for weather.

Operations 8

GET /services/weather/api/users/{leafUserId}/weather/forecast/field/{fieldId}/daily Daily forecast by field #
GET /services/weather/api/users/{leafUserId}/weather/forecast/field/{fieldId}/hourly Hourly forecast by field #
GET /services/weather/api/weather/forecast/daily/{lat},{lon} Daily forecast by lat/lon #
GET /services/weather/api/weather/forecast/hourly/{lat},{lon} Hourly forecast by lat/lon #
GET /services/weather/api/users/{leafUserId}/weather/historical/field/{fieldId}/daily Daily historical by field #
GET /services/weather/api/users/{leafUserId}/weather/historical/field/{fieldId}/hourly Hourly historical by field #
GET /services/weather/api/weather/historical/daily/{lat},{lon} Daily historical by lat/lon #
GET /services/weather/api/weather/historical/hourly/{lat},{lon} Hourly historical by lat/lon #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/leaf-agriculture:leaf-agriculture-weather-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

leaf-agriculture-weather-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Leaf Weather API
  description: Food and Agriculture developers use Leaf's API to access clean, standardized, and aggregated Farm data from all major sources.
  version: 1.0.0
servers:
- url: https://api.withleaf.io
security:
- bearerAuth: []
tags:
- name: Weather
paths:
  /services/weather/api/users/{leafUserId}/weather/forecast/field/{fieldId}/daily:
    get:
      tags:
      - Weather
      summary: Daily forecast by field
      operationId: getDailyForecastByField
      security:
      - bearerAuth: []
      parameters:
      - name: leafUserId
        in: path
        required: true
        schema:
          type: string
      - name: fieldId
        in: path
        required: true
        schema:
          type: string
      - name: endTime
        in: query
        schema:
          type: string
      - name: startTime
        in: query
        schema:
          type: string
      - name: model
        in: query
        schema:
          type: string
      - name: units
        in: query
        schema:
          type: string
      responses:
        '200':
          description: OK
  /services/weather/api/users/{leafUserId}/weather/forecast/field/{fieldId}/hourly:
    get:
      tags:
      - Weather
      summary: Hourly forecast by field
      operationId: getHourlyForecastByField
      security:
      - bearerAuth: []
      parameters:
      - name: leafUserId
        in: path
        required: true
        schema:
          type: string
      - name: fieldId
        in: path
        required: true
        schema:
          type: string
      - name: endTime
        in: query
        schema:
          type: string
      - name: startTime
        in: query
        schema:
          type: string
      - name: model
        in: query
        schema:
          type: string
      - name: units
        in: query
        schema:
          type: string
      responses:
        '200':
          description: OK
  /services/weather/api/weather/forecast/daily/{lat},{lon}:
    get:
      tags:
      - Weather
      summary: Daily forecast by lat/lon
      operationId: getDailyForecastByLatLon
      security:
      - bearerAuth: []
      parameters:
      - name: lat
        in: path
        required: true
        schema:
          type: number
      - name: lon
        in: path
        required: true
        schema:
          type: number
      - name: endTime
        in: query
        schema:
          type: string
      - name: startTime
        in: query
        schema:
          type: string
      - name: model
        in: query
        schema:
          type: string
      - name: units
        in: query
        schema:
          type: string
      responses:
        '200':
          description: OK
  /services/weather/api/weather/forecast/hourly/{lat},{lon}:
    get:
      tags:
      - Weather
      summary: Hourly forecast by lat/lon
      operationId: getHourlyForecastByLatLon
      security:
      - bearerAuth: []
      parameters:
      - name: lat
        in: path
        required: true
        schema:
          type: number
      - name: lon
        in: path
        required: true
        schema:
          type: number
      - name: endTime
        in: query
        schema:
          type: string
      - name: startTime
        in: query
        schema:
          type: string
      - name: model
        in: query
        schema:
          type: string
      - name: units
        in: query
        schema:
          type: string
      responses:
        '200':
          description: OK
  /services/weather/api/users/{leafUserId}/weather/historical/field/{fieldId}/daily:
    get:
      tags:
      - Weather
      summary: Daily historical by field
      operationId: getDailyHistoricalByField
      security:
      - bearerAuth: []
      parameters:
      - name: leafUserId
        in: path
        required: true
        schema:
          type: string
      - name: fieldId
        in: path
        required: true
        schema:
          type: string
      - name: endTime
        in: query
        schema:
          type: string
      - name: startTime
        in: query
        schema:
          type: string
      - name: model
        in: query
        schema:
          type: string
      - name: units
        in: query
        schema:
          type: string
      responses:
        '200':
          description: OK
  /services/weather/api/users/{leafUserId}/weather/historical/field/{fieldId}/hourly:
    get:
      tags:
      - Weather
      summary: Hourly historical by field
      operationId: getHourlyHistoricalByField
      security:
      - bearerAuth: []
      parameters:
      - name: leafUserId
        in: path
        required: true
        schema:
          type: string
      - name: fieldId
        in: path
        required: true
        schema:
          type: string
      - name: endTime
        in: query
        schema:
          type: string
      - name: startTime
        in: query
        schema:
          type: string
      - name: model
        in: query
        schema:
          type: string
      - name: units
        in: query
        schema:
          type: string
      responses:
        '200':
          description: OK
  /services/weather/api/weather/historical/daily/{lat},{lon}:
    get:
      tags:
      - Weather
      summary: Daily historical by lat/lon
      operationId: getDailyHistoricalByLatLon
      security:
      - bearerAuth: []
      parameters:
      - name: lat
        in: path
        required: true
        schema:
          type: number
      - name: lon
        in: path
        required: true
        schema:
          type: number
      - name: endTime
        in: query
        schema:
          type: string
      - name: startTime
        in: query
        schema:
          type: string
      - name: model
        in: query
        schema:
          type: string
      - name: units
        in: query
        schema:
          type: string
      responses:
        '200':
          description: OK
  /services/weather/api/weather/historical/hourly/{lat},{lon}:
    get:
      tags:
      - Weather
      summary: Hourly historical by lat/lon
      operationId: getHourlyHistoricalByLatLon
      security:
      - bearerAuth: []
      parameters:
      - name: lat
        in: path
        required: true
        schema:
          type: number
      - name: lon
        in: path
        required: true
        schema:
          type: number
      - name: endTime
        in: query
        schema:
          type: string
      - name: startTime
        in: query
        schema:
          type: string
      - name: model
        in: query
        schema:
          type: string
      - name: units
        in: query
        schema:
          type: string
      responses:
        '200':
          description: OK
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
x-provenance:
  method: harvested
  publisher: Leaf Agriculture
  source: https://docs.withleaf.io/openapi.yaml
  note: split by refine-openapis from the provider's own published document, verified by fetch (openapi/_original/*.fetch.json);
    stamped by stamp-openapi-provenance.py (roadmap#793)