OpenWeatherMap One Call API

Unified timeline API with current, forecast, and historical weather plus alerts.

Operations 6

GET /current Current Weather From One Call #
GET /timeline/1min One Minute Timeline #
GET /timeline/15min Fifteen Minute Timeline #
GET /timeline/1h Hourly Timeline With History #
GET /timeline/1day Daily Timeline With Aggregates #
GET /alert/{alert_id} Weather Alert Detail #

Documentation

Specifications

Schemas & Data

Other Resources

🔗
Examples
https://raw.githubusercontent.com/api-evangelist/openweathermap/refs/heads/main/examples/current-weather-example.json
🔗
GraphQL
https://raw.githubusercontent.com/api-evangelist/openweathermap/refs/heads/main/graphql/openweathermap-graphql.md
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/openweathermap/refs/heads/main/examples/forecast-five-day-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/openweathermap/refs/heads/main/examples/one-call-current-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/openweathermap/refs/heads/main/examples/air-pollution-current-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/openweathermap/refs/heads/main/examples/geocoding-direct-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/openweathermap/refs/heads/main/examples/history-city-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/openweathermap/refs/heads/main/examples/statistical-month-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/openweathermap/refs/heads/main/examples/accumulated-temperature-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/openweathermap/refs/heads/main/examples/solar-irradiance-interval-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/openweathermap/refs/heads/main/examples/road-risk-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/openweathermap/refs/heads/main/examples/weather-stations-create-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/openweathermap/refs/heads/main/examples/weather-maps-tile-example.json

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/openweathermap-one-call-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

openweathermap-one-call-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: OpenWeatherMap API 4.0 One Call API
  version: 4.0.0
  description: OpenWeather One Call API 4.0 provides a unified weather timeline including current conditions, hourly, daily, 1-minute precipitation, 15-minute forecasts, government weather alerts, and 47+ years of historical data accessible through pay-per-call pricing.
  contact:
    name: OpenWeather
    url: https://openweathermap.org/api/one-call-4
  license:
    name: Creative Commons Attribution-ShareAlike 4.0 International
    url: https://creativecommons.org/licenses/by-sa/4.0/
servers:
- url: https://api.openweathermap.org/data/4.0/onecall
  description: One Call API 4.0 base URL
security:
- appid: []
tags:
- name: One Call
  description: Unified timeline API with current, forecast, and historical weather plus alerts.
paths:
  /current:
    get:
      operationId: getOneCallCurrent
      summary: Current Weather From One Call
      description: Returns a single record with current conditions including temperature, humidity, pressure, wind, UV index, sunrise and sunset times, and weather descriptions for the supplied coordinates.
      tags:
      - One Call
      parameters:
      - $ref: '#/components/parameters/Lat'
      - $ref: '#/components/parameters/Lon'
      - $ref: '#/components/parameters/Units'
      - $ref: '#/components/parameters/Lang'
      - $ref: '#/components/parameters/Appid'
      responses:
        '200':
          description: One Call current weather response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OneCallCurrentResponse'
        '400':
          description: Invalid request parameters.
        '401':
          description: Unauthorized.
        '429':
          description: Too many requests.
  /timeline/1min:
    get:
      operationId: getOneCallTimelineOneMinute
      summary: One Minute Timeline
      description: Returns up to 60 records covering precipitation forecasts and government weather alerts at one-minute granularity.
      tags:
      - One Call
      parameters:
      - $ref: '#/components/parameters/Lat'
      - $ref: '#/components/parameters/Lon'
      - $ref: '#/components/parameters/Units'
      - $ref: '#/components/parameters/Lang'
      - $ref: '#/components/parameters/Appid'
      responses:
        '200':
          description: One Call one-minute timeline response.
        '400':
          description: Invalid request parameters.
        '401':
          description: Unauthorized.
        '429':
          description: Too many requests.
  /timeline/15min:
    get:
      operationId: getOneCallTimelineFifteenMinute
      summary: Fifteen Minute Timeline
      description: Returns up to 50 records at 15-minute intervals including temperature, precipitation probability, and weather details.
      tags:
      - One Call
      parameters:
      - $ref: '#/components/parameters/Lat'
      - $ref: '#/components/parameters/Lon'
      - $ref: '#/components/parameters/Units'
      - $ref: '#/components/parameters/Lang'
      - $ref: '#/components/parameters/Appid'
      responses:
        '200':
          description: One Call 15-minute timeline response.
        '400':
          description: Invalid request parameters.
        '401':
          description: Unauthorized.
        '429':
          description: Too many requests.
  /timeline/1h:
    get:
      operationId: getOneCallTimelineHour
      summary: Hourly Timeline With History
      description: Returns up to 20 records spanning 47 years of historical data and the next 48 hours of forecast at hourly granularity.
      tags:
      - One Call
      parameters:
      - $ref: '#/components/parameters/Lat'
      - $ref: '#/components/parameters/Lon'
      - $ref: '#/components/parameters/Units'
      - $ref: '#/components/parameters/Lang'
      - $ref: '#/components/parameters/Appid'
      responses:
        '200':
          description: One Call hourly timeline response.
        '400':
          description: Invalid request parameters.
        '401':
          description: Unauthorized.
        '429':
          description: Too many requests.
  /timeline/1day:
    get:
      operationId: getOneCallTimelineDay
      summary: Daily Timeline With Aggregates
      description: Returns up to 10 records of daily aggregated weather data including moon phase, sunrise, sunset, and per-day summaries.
      tags:
      - One Call
      parameters:
      - $ref: '#/components/parameters/Lat'
      - $ref: '#/components/parameters/Lon'
      - $ref: '#/components/parameters/Units'
      - $ref: '#/components/parameters/Lang'
      - $ref: '#/components/parameters/Appid'
      responses:
        '200':
          description: One Call daily timeline response.
        '400':
          description: Invalid request parameters.
        '401':
          description: Unauthorized.
        '429':
          description: Too many requests.
  /alert/{alert_id}:
    get:
      operationId: getOneCallAlert
      summary: Weather Alert Detail
      description: Returns a single weather alert record with event name, timing, description, and originating agency.
      tags:
      - One Call
      parameters:
      - name: alert_id
        in: path
        required: true
        description: Alert identifier returned by other One Call endpoints.
        schema:
          type: string
      - $ref: '#/components/parameters/Appid'
      responses:
        '200':
          description: Alert detail response.
        '400':
          description: Invalid request parameters.
        '401':
          description: Unauthorized.
        '404':
          description: Alert not found.
        '429':
          description: Too many requests.
components:
  parameters:
    Lon:
      name: lon
      in: query
      required: true
      description: Longitude in decimal degrees, range -180 to 180.
      schema:
        type: number
        format: float
    Lang:
      name: lang
      in: query
      required: false
      description: Localization language code.
      schema:
        type: string
    Appid:
      name: appid
      in: query
      required: true
      description: OpenWeather API key.
      schema:
        type: string
    Lat:
      name: lat
      in: query
      required: true
      description: Latitude in decimal degrees, range -90 to 90.
      schema:
        type: number
        format: float
    Units:
      name: units
      in: query
      required: false
      description: Units of measurement. standard, metric, or imperial.
      schema:
        type: string
        enum:
        - standard
        - metric
        - imperial
  schemas:
    OneCallCurrentResponse:
      type: object
      properties:
        lat:
          type: number
          format: float
        lon:
          type: number
          format: float
        timezone:
          type: string
        timezone_offset:
          type: integer
        current:
          type: object
          properties:
            dt:
              type: integer
              format: int64
            sunrise:
              type: integer
              format: int64
            sunset:
              type: integer
              format: int64
            temp:
              type: number
              format: float
            feels_like:
              type: number
              format: float
            pressure:
              type: integer
            humidity:
              type: integer
            dew_point:
              type: number
              format: float
            uvi:
              type: number
              format: float
            clouds:
              type: integer
            visibility:
              type: integer
            wind_speed:
              type: number
              format: float
            wind_deg:
              type: integer
            weather:
              type: array
              items:
                type: object
                properties:
                  id:
                    type: integer
                  main:
                    type: string
                  description:
                    type: string
                  icon:
                    type: string
  securitySchemes:
    appid:
      type: apiKey
      in: query
      name: appid