Skip to content

Instantly share code, notes, and snippets.

@Morstis
Created April 28, 2024 07:42
Show Gist options
  • Save Morstis/685d43bcd8305669f14a335467b7e910 to your computer and use it in GitHub Desktop.
Save Morstis/685d43bcd8305669f14a335467b7e910 to your computer and use it in GitHub Desktop.
openapi: 3.0.0
info:
title: Open Meteo API
version: 1.0.0
servers:
- url: https://api.open-meteo.com/v1
paths:
/forecast:
get:
summary: Get weather forecast data
parameters:
- name: latitude
in: query
required: true
schema:
type: number
format: float
description: Latitude coordinate
- name: longitude
in: query
required: true
schema:
type: number
format: float
description: Longitude coordinate
- name: current
in: query
schema:
type: array
items:
type: string
enum: [temperature_2m,relative_humidity_2m,apparent_temperature,is_day,precipitation,rain,showers,snowfall,weather_code,cloud_cover,pressure_msl,surface_pressure,wind_speed_10m,wind_direction_10m,wind_gusts_10m]
description: Comma-separated list of current weather parameters
- name: minutely_15
in: query
schema:
type: array
items:
type: string
enum: [temperature_2m,relative_humidity_2m,dew_point_2m,apparent_temperature,precipitation,rain,snowfall,snowfall_height,freezing_level_height,sunshine_duration,weather_code,wind_speed_10m,wind_speed_80m,wind_direction_10m,wind_direction_80m,wind_gusts_10m,visibility,cape,lightning_potential,is_day,shortwave_radiation,direct_radiation,diffuse_radiation,direct_normal_irradiance,global_tilted_irradiance,terrestrial_radiation,shortwave_radiation_instant,direct_radiation_instant,diffuse_radiation_instant,direct_normal_irradiance_instant,global_tilted_irradiance_instant,terrestrial_radiation_instant]
description: Comma-separated list of minutely weather parameters
- name: hourly
in: query
schema:
type: array
items:
type: string
enum: [temperature_2m,relative_humidity_2m,dew_point_2m,apparent_temperature,precipitation_probability,precipitation,rain,showers,snowfall,snow_depth,weather_code,pressure_msl,surface_pressure,cloud_cover,cloud_cover_low,cloud_cover_mid,cloud_cover_high,visibility,evapotranspiration,et0_fao_evapotranspiration,vapour_pressure_deficit,wind_speed_10m,wind_speed_80m,wind_speed_120m,wind_speed_180m,wind_direction_10m,wind_direction_80m,wind_direction_120m,wind_direction_180m,wind_gusts_10m,temperature_80m,temperature_120m,temperature_180m,soil_temperature_0cm,soil_temperature_6cm,soil_temperature_18cm,soil_temperature_54cm,soil_moisture_0_to_1cm,soil_moisture_1_to_3cm,soil_moisture_3_to_9cm,soil_moisture_9_to_27cm,soil_moisture_27_to_81cm,uv_index,uv_index_clear_sky,is_day,cape,freezing_level_height,sunshine_duration,shortwave_radiation,direct_radiation,diffuse_radiation,direct_normal_irradiance,global_tilted_irradiance,terrestrial_radiation,shortwave_radiation_instant,direct_radiation_instant,diffuse_radiation_instant,direct_normal_irradiance_instant,global_tilted_irradiance_instant,terrestrial_radiation_instant]
description: Comma-separated list of hourly weather parameters
- name: daily
in: query
schema:
type: array
items:
type: string
enum: [weather_code,temperature_2m_max,temperature_2m_min,apparent_temperature_max,apparent_temperature_min,sunrise,sunset,daylight_duration,sunshine_duration,uv_index_max,uv_index_clear_sky_max,precipitation_sum,rain_sum,showers_sum,snowfall_sum,precipitation_hours,precipitation_probability_max,wind_speed_10m_max,wind_gusts_10m_max,wind_direction_10m_dominant,shortwave_radiation_sum,et0_fao_evapotranspiration]
description: Comma-separated list of daily weather parameters
- name: temperature_unit
in: query
schema:
type: string
enum: [fahrenheit, celsius]
description: Unit for temperature (e.g., "fahrenheit")
- name: wind_speed_unit
in: query
schema:
type: string
enum: [ms, mph, kn,kmh]
description: Unit for wind speed (e.g., "ms")
- name: precipitation_unit
in: query
schema:
type: string
enum: [inch, mm]
description: Unit for precipitation (e.g., "inch")
- name: timeformat
in: query
schema:
type: string
enum: [unixtime,iso8601]
description: Format for time (e.g., "unixtime")
- name: timezone
in: query
schema:
type: string
description: Timezone (e.g., "Europe/Berlin")
- name: past_hours
in: query
schema:
type: integer
description: Number of past hours to include
- name: past_minutely_15
in: query
schema:
type: integer
description: Number of past 15-minutely intervals to include
- name: forecast_hours
in: query
schema:
type: integer
description: Number of forecast hours to include
- name: forecast_minutely_15
in: query
schema:
type: integer
description: Number of forecast 15-minutely intervals to include
- name: tilt
in: query
schema:
type: integer
description: Tilt parameter
- name: azimuth
in: query
schema:
type: integer
description: Azimuth parameter
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/SampleOutput'
components:
schemas:
SampleOutput:
type: object
properties:
current:
$ref: '#/components/schemas/Current'
current_units:
$ref: '#/components/schemas/CurrentUnits'
daily:
$ref: '#/components/schemas/Daily'
daily_units:
$ref: '#/components/schemas/DailyUnits'
elevation:
type: integer
generationtime_ms:
type: number
hourly:
$ref: '#/components/schemas/Hourly'
hourly_units:
$ref: '#/components/schemas/HourlyUnits'
latitude:
type: number
format: float
longitude:
type: number
format: float
minutely_15:
$ref: '#/components/schemas/Minutely_15'
minutely_15_units:
$ref: '#/components/schemas/Minutely_15Units'
timezone:
type: string
timezone_abbreviation:
type: string
utc_offset_seconds:
type: integer
Current:
type: object
properties:
apparent_temperature:
type: number
format: float
cloud_cover:
type: integer
interval:
type: integer
is_day:
type: integer
precipitation:
type: integer
pressure_msl:
type: number
format: float
rain:
type: integer
relative_humidity_2m:
type: integer
showers:
type: integer
snowfall:
type: integer
surface_pressure:
type: number
format: float
temperature_2m:
type: number
format: float
time:
type: string
weather_code:
type: integer
wind_direction_10m:
type: integer
wind_gusts_10m:
type: number
format: float
wind_speed_10m:
type: number
format: float
CurrentUnits:
type: object
properties:
apparent_temperature:
type: string
cloud_cover:
type: string
interval:
type: string
is_day:
type: string
precipitation:
type: string
pressure_msl:
type: string
rain:
type: string
relative_humidity_2m:
type: string
showers:
type: string
snowfall:
type: string
surface_pressure:
type: string
temperature_2m:
type: string
time:
type: string
weather_code:
type: string
wind_direction_10m:
type: string
wind_gusts_10m:
type: string
wind_speed_10m:
type: string
Daily:
type: object
properties:
apparent_temperature_max:
type: array
items:
type: number
format: float
apparent_temperature_min:
type: array
items:
type: number
format: float
daylight_duration:
type: array
items:
type: number
format: float
et0_fao_evapotranspiration:
type: array
items:
type: number
format: float
precipitation_hours:
type: array
items:
type: integer
precipitation_probability_max:
type: array
items:
type: integer
precipitation_sum:
type: array
items:
type: integer
rain_sum:
type: array
items:
type: integer
shortwave_radiation_sum:
type: array
items:
type: number
format: float
showers_sum:
type: array
items:
type: integer
snowfall_sum:
type: array
items:
type: integer
sunrise:
type: array
items:
type: string
sunset:
type: array
items:
type: string
sunshine_duration:
type: array
items:
type: number
format: float
temperature_2m_max:
type: array
items:
type: number
format: float
temperature_2m_min:
type: array
items:
type: number
format: float
time:
type: array
items:
type: string
uv_index_clear_sky_max:
type: array
items:
type: number
format: float
uv_index_max:
type: array
items:
type: number
format: float
weather_code:
type: array
items:
type: integer
wind_direction_10m_dominant:
type: array
items:
type: integer
wind_gusts_10m_max:
type: array
items:
type: integer
wind_speed_10m_max:
type: array
items:
type: number
format: float
DailyUnits:
type: object
properties:
apparent_temperature_max:
type: string
apparent_temperature_min:
type: string
daylight_duration:
type: string
et0_fao_evapotranspiration:
type: string
precipitation_hours:
type: string
precipitation_probability_max:
type: string
precipitation_sum:
type: string
rain_sum:
type: string
shortwave_radiation_sum:
type: string
showers_sum:
type: string
snowfall_sum:
type: string
sunrise:
type: string
sunset:
type: string
sunshine_duration:
type: string
temperature_2m_max:
type: string
temperature_2m_min:
type: string
time:
type: string
uv_index_clear_sky_max:
type: string
uv_index_max:
type: string
weather_code:
type: string
wind_direction_10m_dominant:
type: string
wind_gusts_10m_max:
type: string
wind_speed_10m_max:
type: string
Hourly:
type: object
properties:
apparent_temperature:
type: array
items:
type: number
format: float
cape:
type: array
items:
type: integer
cloud_cover:
type: array
items:
type: integer
cloud_cover_high:
type: array
items:
type: integer
cloud_cover_low:
type: array
items:
type: integer
cloud_cover_mid:
type: array
items:
type: integer
dew_point_2m:
type: array
items:
type: number
format: float
diffuse_radiation:
type: array
items:
type: integer
diffuse_radiation_instant:
type: array
items:
type: integer
direct_normal_irradiance:
type: array
items:
type: integer
direct_normal_irradiance_instant:
type: array
items:
type: integer
direct_radiation:
type: array
items:
type: integer
direct_radiation_instant:
type: array
items:
type: integer
et0_fao_evapotranspiration:
type: array
items:
type: number
format: float
evapotranspiration:
type: array
items:
type: number
format: float
freezing_level_height:
type: array
items:
type: integer
global_tilted_irradiance:
type: array
items:
type: integer
global_tilted_irradiance_instant:
type: array
items:
type: integer
is_day:
type: array
items:
type: integer
precipitation:
type: array
items:
type: integer
precipitation_probability:
type: array
items:
type: integer
pressure_msl:
type: array
items:
type: number
format: float
rain:
type: array
items:
type: integer
relative_humidity_2m:
type: array
items:
type: integer
shortwave_radiation:
type: array
items:
type: integer
shortwave_radiation_instant:
type: array
items:
type: integer
showers:
type: array
items:
type: integer
snow_depth:
type: array
items:
type: integer
snowfall:
type: array
items:
type: integer
soil_moisture_0_to_1cm:
type: array
items:
type: number
format: float
soil_moisture_1_to_3cm:
type: array
items:
type: number
format: float
soil_moisture_27_to_81cm:
type: array
items:
type: number
format: float
soil_moisture_3_to_9cm:
type: array
items:
type: number
format: float
soil_moisture_9_to_27cm:
type: array
items:
type: number
format: float
soil_temperature_0cm:
type: array
items:
type: number
format: float
soil_temperature_18cm:
type: array
items:
type: number
format: float
soil_temperature_54cm:
type: array
items:
type: number
format: float
soil_temperature_6cm:
type: array
items:
type: number
format: float
sunshine_duration:
type: array
items:
type: integer
surface_pressure:
type: array
items:
type: integer
temperature_120m:
type: array
items:
type: number
format: float
temperature_180m:
type: array
items:
type: number
format: float
temperature_2m:
type: array
items:
type: number
format: float
temperature_80m:
type: array
items:
type: number
format: float
terrestrial_radiation:
type: array
items:
type: integer
terrestrial_radiation_instant:
type: array
items:
type: integer
time:
type: array
items:
type: string
uv_index:
type: array
items:
type: integer
uv_index_clear_sky:
type: array
items:
type: integer
vapour_pressure_deficit:
type: array
items:
type: number
format: float
visibility:
type: array
items:
type: integer
weather_code:
type: array
items:
type: integer
wind_direction_10m:
type: array
items:
type: integer
wind_direction_120m:
type: array
items:
type: integer
wind_direction_180m:
type: array
items:
type: integer
wind_direction_80m:
type: array
items:
type: integer
wind_gusts_10m:
type: array
items:
type: number
format: float
wind_speed_10m:
type: array
items:
type: number
format: float
wind_speed_120m:
type: array
items:
type: number
format: float
wind_speed_180m:
type: array
items:
type: number
format: float
wind_speed_80m:
type: array
items:
type: number
format: float
HourlyUnits:
type: object
properties:
apparent_temperature:
type: string
cape:
type: string
cloud_cover:
type: string
cloud_cover_high:
type: string
cloud_cover_low:
type: string
cloud_cover_mid:
type: string
dew_point_2m:
type: string
diffuse_radiation:
type: string
diffuse_radiation_instant:
type: string
direct_normal_irradiance:
type: string
direct_normal_irradiance_instant:
type: string
direct_radiation:
type: string
direct_radiation_instant:
type: string
et0_fao_evapotranspiration:
type: string
evapotranspiration:
type: string
freezing_level_height:
type: string
global_tilted_irradiance:
type: string
global_tilted_irradiance_instant:
type: string
is_day:
type: string
precipitation:
type: string
precipitation_probability:
type: string
pressure_msl:
type: string
rain:
type: string
relative_humidity_2m:
type: string
shortwave_radiation:
type: string
shortwave_radiation_instant:
type: string
showers:
type: string
snow_depth:
type: string
snowfall:
type: string
soil_moisture_0_to_1cm:
type: string
soil_moisture_1_to_3cm:
type: string
soil_moisture_27_to_81cm:
type: string
soil_moisture_3_to_9cm:
type: string
soil_moisture_9_to_27cm:
type: string
soil_temperature_0cm:
type: string
soil_temperature_18cm:
type: string
soil_temperature_54cm:
type: string
soil_temperature_6cm:
type: string
sunshine_duration:
type: string
surface_pressure:
type: string
temperature_120m:
type: string
temperature_180m:
type: string
temperature_2m:
type: string
temperature_80m:
type: string
terrestrial_radiation:
type: string
terrestrial_radiation_instant:
type: string
time:
type: string
uv_index:
type: string
uv_index_clear_sky:
type: string
vapour_pressure_deficit:
type: string
visibility:
type: string
weather_code:
type: string
wind_direction_10m:
type: string
wind_direction_120m:
type: string
wind_direction_180m:
type: string
wind_direction_80m:
type: string
wind_gusts_10m:
type: string
wind_speed_10m:
type: string
wind_speed_120m:
type: string
wind_speed_180m:
type: string
wind_speed_80m:
type: string
Minutely_15:
type: object
properties:
apparent_temperature:
type: array
items:
type: number
format: float
cape:
type: array
items:
type: integer
dew_point_2m:
type: array
items:
type: number
format: float
diffuse_radiation:
type: array
items:
type: integer
diffuse_radiation_instant:
type: array
items:
type: integer
direct_normal_irradiance:
type: array
items:
type: integer
direct_normal_irradiance_instant:
type: array
items:
type: integer
direct_radiation:
type: array
items:
type: integer
direct_radiation_instant:
type: array
items:
type: integer
freezing_level_height:
type: array
items:
type: integer
global_tilted_irradiance:
type: array
items:
type: integer
global_tilted_irradiance_instant:
type: array
items:
type: integer
is_day:
type: array
items:
type: integer
lightning_potential:
type: array
items:
type: integer
precipitation:
type: array
items:
type: integer
rain:
type: array
items:
type: integer
relative_humidity_2m:
type: array
items:
type: integer
shortwave_radiation:
type: array
items:
type: integer
shortwave_radiation_instant:
type: array
items:
type: integer
snowfall:
type: array
items:
type: integer
snowfall_height:
type: array
items:
type: integer
sunshine_duration:
type: array
items:
type: integer
temperature_2m:
type: array
items:
type: number
format: float
terrestrial_radiation:
type: array
items:
type: integer
terrestrial_radiation_instant:
type: array
items:
type: integer
time:
type: array
items:
type: string
visibility:
type: array
items:
type: integer
weather_code:
type: array
items:
type: integer
wind_direction_10m:
type: array
items:
type: integer
wind_gusts_10m:
type: array
items:
type: number
format: float
wind_speed_10m:
type: array
items:
type: number
format: float
Minutely_15Units:
type: object
properties:
apparent_temperature:
type: string
cape:
type: string
dew_point_2m:
type: string
diffuse_radiation:
type: string
diffuse_radiation_instant:
type: string
direct_normal_irradiance:
type: string
direct_normal_irradiance_instant:
type: string
direct_radiation:
type: string
direct_radiation_instant:
type: string
freezing_level_height:
type: string
global_tilted_irradiance:
type: string
global_tilted_irradiance_instant:
type: string
is_day:
type: string
lightning_potential:
type: string
precipitation:
type: string
rain:
type: string
relative_humidity_2m:
type: string
shortwave_radiation:
type: string
shortwave_radiation_instant:
type: string
snowfall:
type: string
snowfall_height:
type: string
sunshine_duration:
type: string
temperature_2m:
type: string
terrestrial_radiation:
type: string
terrestrial_radiation_instant:
type: string
time:
type: string
visibility:
type: string
weather_code:
type: string
wind_direction_10m:
type: string
wind_gusts_10m:
type: string
wind_speed_10m:
type: string
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment