forked from open-meteo/open-meteo
-
Notifications
You must be signed in to change notification settings - Fork 0
/
openapi_historical_weather_api.yml
198 lines (198 loc) · 7.41 KB
/
openapi_historical_weather_api.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
openapi: 3.0.0
info:
title: Open-Meteo Historical Weather API
description: 'The Historical Weather API is based on reanalysis datasets and uses a combination of weather station, aircraft, buoy, radar, and satellite observations to create a comprehensive record of past weather conditions.'
version: '1.0'
contact:
name: Open-Meteo
url: https://open-meteo.com
email: [email protected]
license:
name: Attribution 4.0 International (CC BY 4.0)
url: https://creativecommons.org/licenses/by/4.0/
termsOfService: https://open-meteo.com/en/features#terms
paths:
/v1/archive:
servers:
- url: https://archive-api.open-meteo.com
get:
tags:
- Historical Weather API
summary: 60 years of accurate weather, anywhere with up to 5 km resolution
description: 'The Historical Weather API is based on reanalysis datasets and uses a combination of weather station, aircraft, buoy, radar, and satellite observations to create a comprehensive record of past weather conditions.'
parameters:
- name: start_date
in: query
required: true
description: "The time interval to get weather data. A day must be specified as an ISO8601 date (e.g. 2022-01-01)."
schema:
type: string
format: date
- name: end_date
in: query
required: true
description: "The time interval to get weather data. A day must be specified as an ISO8601 date (e.g. 2022-12-31)."
schema:
type: string
format: date
- name: hourly
in: query
explode: false
schema:
type: array
items:
type: string
enum:
- temperature_2m
- relative_humidity_2m
- dew_point_2m
- apparent_temperature
- pressure_msl
- cloud_cover
- cloud_cover_low
- cloud_cover_mid
- cloud_cover_high
- wind_speed_10m
- wind_speed_100m
- wind_direction_10m
- wind_direction_100m
- wind_gusts_10m
- shortwave_radiation
- direct_radiation
- direct_normal_irradiance
- diffuse_radiation
- vapour_pressure_deficit
- et0_fao_evapotranspiration
- precipitation
- rain
- weather_code
- snowfall
- soil_temperature_0_to_7cm
- soil_temperature_7_to_28cm
- soil_temperature_28_to_100cm
- soil_temperature_100_to_255cm
- soil_moisture_0_to_7cm
- soil_moisture_7_to_28cm
- soil_moisture_28_to_100cm
- soil_moisture_100_to_255cm
- name: daily
in: query
schema:
type: array
items:
type: string
enum:
- temperature_2m_max
- temperature_2m_min
- apparent_temperature_max
- apparent_temperature_min
- precipitation_sum
- precipitation_hours
- weather_code
- sunrise
- sunset
- wind_speed_10m_max
- wind_gusts_10m_max
- wind_direction_10m_dominant
- shortwave_radiation_sum
- et0_fao_evapotranspiration
- name: latitude
in: query
required: true
description: "WGS84 coordinate"
schema:
type: number
format: float
- name: longitude
in: query
required: true
description: "WGS84 coordinate"
schema:
type: number
format: float
- name: temperature_unit
in: query
schema:
type: string
default: celsius
enum:
- celsius
- fahrenheit
- name: wind_speed_unit
in: query
schema:
type: string
default: kmh
enum:
- kmh
- ms
- mph
- kn
- name: timeformat
in: query
description: If format `unixtime` is selected, all time values are returned in UNIX epoch time in seconds. Please not that all time is then in GMT+0! For daily values with unix timestamp, please apply `utc_offset_seconds` again to get the correct date.
schema:
type: string
default: iso8601
enum:
- iso8601
- unixtime
- name: timezone
in: query
description: If `timezone` is set, all timestamps are returned as local-time and data is returned starting at 0:00 local-time. Any time zone name from the [time zone database](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) is supported.
schema:
type: string
responses:
200:
description: OK
content:
application/json:
schema:
type: object
properties:
latitude:
type: number
example: 52.52
description: WGS84 of the center of the weather grid-cell which was used to generate this forecast. This coordinate might be up to 5 km away.
longitude:
type: number
example: 13.419.52
description: WGS84 of the center of the weather grid-cell which was used to generate this forecast. This coordinate might be up to 5 km away.
elevation:
type: number
example: 44.812
description: The elevation in meters of the selected weather grid-cell. In mountain terrain it might differ from the location you would expect.
generationtime_ms:
type: number
example: 2.2119
description: Generation time of the weather forecast in milli seconds. This is mainly used for performance monitoring and improvements.
utc_offset_seconds:
type: integer
example: 3600
description: Applied timezone offset from the &timezone= parameter.
hourly:
type: object
description: For each selected weather variable, data will be returned as a floating point array. Additionally a `time` array will be returned with ISO8601 timestamps.
hourly_units:
type: object
description: For each selected weather variable, the unit will be listed here.
daily:
type: object
description: For each selected daily weather variable, data will be returned as a floating point array. Additionally a `time` array will be returned with ISO8601 timestamps.
daily_units:
type: object
description: For each selected daily weather variable, the unit will be listed here.
400:
description: Bad Request
content:
application/json:
schema:
type: object
properties:
error:
type: boolean
description: Always set true for errors
reason:
type: string
description: Description of the error
example: "Latitude must be in range of -90 to 90°. Given: 300"