Changelog

This page lists notable changes to the service. If the service behaves in new or unexpected ways, the changelog might give a hint as to what has recently been changed in the code base.

DateDescription of change
2022-11-08 Due to a last minute move to a new platform we no longer support TLS protocols 1.0/1.1. TLS 1.2 and 1.3 are the recomended supported versions.
2022-08-31 Statistical rainfall IDF (Intensity-Duration-Frequency) values have been updated. The update includes more years of data and improved methodology. More information is available at Norsk klimaservicesenter in Norwegian or English.
2022-01-19 A range of normal values and anomaly values for temperature and precipitation have been added to the list of available elements. All of these are calculated from gridded data and are valid for regions and not specific stations. Some of this data has been available in other elements, and will therefore have a change in elementid. The rest are new.

Metadata about the regions will be made available at a later time.

1. Change of Element IDs for gridded data elements to better reflect the content:

Old element IDNew element ID
sum(precipitation_amount_anomaly P1Y 1961_1990)region_sum(precipitation_amount_anomaly P1Y 1961_1990)
sum(precipitation_amount_anomaly P3M 1961_1990)region_sum(precipitation_amount_anomaly P3M 1961_1990)
sum(precipitation_amount_anomaly P1M 1961_1990)region_sum(precipitation_amount_anomaly P1M 1961_1990)
sum(precipitation_amount_anomaly P1M 1971_2000)region_sum(precipitation_amount_anomaly P1M 1971_2000)
mean(air_temperature_anomaly P1Y 1961_1990)region_mean(air_temperature_anomaly P1Y 1961_1990)
mean(air_temperature_anomaly P3M 1961_1990)region_mean(air_temperature_anomaly P3M 1961_1990)
mean(air_temperature_anomaly P1M 1961_1990)region_mean(air_temperature_anomaly P1M 1961_1990)
mean(air_temperature_anomaly P1M 1971_2000)region_mean(air_temperature_anomaly P1M 1971_2000)


2. For some dataseries the gridded data had been mistakenly added to the point data elements. These will be moved to the correct (new) elementid:

Old element IDNew element ID
mean(air_temperature P1Y)region_mean(air_temperature P1Y 1961_1990)
mean(air_temperature P3M)region_mean(air_temperature P3M 1961_1990)
mean(air_temperature P1M)region_mean(air_temperature P1M 1961_1990)
sum(precipitation_amount P1Y)region_sum(precipitation_amount P1Y 1961_1990)
sum(precipitation_amount P3M)region_sum(precipitation_amount P3M 1961_1990)
sum(precipitation_amount P1M)region_sum(precipitation_amount P1M 1961_1990)


3. New element ids:

New element ID
region_mean(air_temperature_anomaly P1Y 1991_2020)
region_mean(air_temperature_anomaly P3M 1991_2020)
region_mean(air_temperature_anomaly P1M 1991_2020)
region_mean(air_temperature P1Y 1991_2020)
region_mean(air_temperature P3M 1991_2020)
region_mean(air_temperature P1M 1991_2020)
region_sum(precipitation_amount_anomaly P1Y 1991_2020)
region_sum(precipitation_amount_anomaly P3M 1991_2020)
region_sum(precipitation_amount_anomaly P1M 1991_2020)
region_sum(precipitation_amount P1Y 1991_2020)
region_sum(precipitation_amount P3M 1991_2020)
region_sum(precipitation_amount P1M 1991_202)0
2021-12-01 Change of element IDs. The following element IDs have been updated to better reflect the data behind them. Some of the changes are to fix nomenclature errors.

Old element IDNew element ID
volume_fraction_of_oxygen_in_sea_waterfractional_saturation_of_oxygen_in_sea_water
sea_water_flourescenceflourescence_of_chlorophyl_a_in_sea_water


Change of element IDs. The following element IDs have been simplified to remove unnecessary metadata information from the element ID and to combine different element IDs that cover the same type of data. Several of these Element IDs will change status to CF-compatible.

Old element IDNew element ID
from_direction_of_mean(sea_surface_primary_wave PT20M)sea_surface_primary_wave_from_direction
sea_surface_primary_wave_from_mean_direction_from_radarsea_surface_primary_wave_from_direction
sea_surface_wave_period_at_variance_spectral_density_second_maximum_from_radar sea_surface_wave_period_at_variance_spectral_density_second_maximum
max(sea_surface_wave_period PT20M)sea_surface_wave_maximum_period
sea_surface_wave_mean_steepness_externally_controlledsea_surface_wave_mean_steepness
sea_surface_wave_maximum_steepness_externally_controlledsea_surface_wave_maximum_steepness
sea_surface_wave_steepness_of_highest_wave_externally_controlledsea_surface_wave_steepness_of_highest_wave
sea_surface_wave_height_of_steepest_wave_externally_controlledsea_surface_wave_height_of_steepest_wave
sea_surface_wave_significant_height_from_spectrum_from_radarsea_surface_wave_significant_height
sea_surface_low_frequency_wave_from_mean_direction_at_variance_spectral_density_maximum_externally_controlled sea_surface_swell_wave_from_mean_direction_of_total_energy
sea_surface_high_frequency_wave_from_mean_direction_at_variance_spectral_density_maximum_externally_controlled sea_surface_wind_wave_from_mean_direction_of_total_energy
sea_surface_wave_mean_height_externally_controlledsea_surface_wave_mean_height
2021-10-11 The derivation of the quality code number has been generalized and slightly modified. See the data clarifications page for more information.
2021-09-22 Change of Element IDs. The following Element IDs have been updated to better reflect the data behind them. Some of the changes are to fix nomenclature errors.

Old element IDNew element ID
integral_of_deficit(mean(air_temperature PT1H) P1D 17.0)integral_of_deficit(mean(air_temperature P1D) P1D 17.0)
max(sea_surface_wave_period P1D)max(sea_surface_wave_mean_period P1D)
max(sea_surface_wave_period P1M)max(sea_surface_wave_mean_period P1M)
max(sea_surface_wave_period PT20M)sea_surface_wave_maximum_period
mean(sea_surface_wave_period P1D)mean(sea_surface_wave_mean_period P1D)
mean(sea_surface_wave_period P1M)mean(sea_surface_wave_mean_period P1M)
min(sea_surface_wave_period P1D)min(sea_surface_wave_mean_period P1D)
min(sea_surface_wave_period P1M)min(sea_surface_wave_mean_period P1M)
over_time(precipitation_type_primary_significance P1D)over_time(precipitation_type P1D)
over_time(weather_class1_primary_significance PT24H)over_time(weather_class1_primary_significance P1D)
over_time(weather_type_additional1 PT6H)over_time(weather_type_additional1)
over_time(weather_type_additional2 PT6H)over_time(weather_type_additional2)
over_time(weather_type_additional3 PT6H)over_time(weather_type_additional3)


Change of Element IDs. The following Element IDs have been simplified to remove unnecessary metadata information from the element ID and to combine different element IDs that cover the same type of data. Several of these Element IDs will change status to CF-compatible.
Old element IDNew element ID
over_time(weather_type_primary_significance PT3H)over_time(weather_type_primary_significance)
over_time(weather_type_primary_significance PT6H)over_time(weather_type_primary_significance)
sum_over_undefined_period(precipitation_amount P1D)sum_over_undefined_period(precipitation_amount)
sum_over_undefined_period(precipitation_amount P1M)sum_over_undefined_period(precipitation_amount)
sum_over_undefined_period(precipitation_amount PT1H)sum_over_undefined_period(precipitation_amount)
sea_surface_wave_from_mean_direction_of_total_energy_from_radarsea_surface_wave_from_direction
sea_surface_wave_from_mean_direction_of_total_energysea_surface_wave_from_direction
sea_surface_wave_from_mean_direction_of_total_energy_from_radar_externally_controlledsea_surface_wave_from_direction
from_direction_of_mean(sea_surface_wave_total_energy PT10M)sea_surface_wave_from_direction
from_direction_of_mean(sea_surface_wave_total_energy PT20M)sea_surface_wave_from_direction
sea_surface_primary_wave_from_direction_at_variance_spectral_density_maximum_from_radar_externally_controlledsea_surface_primary_wave_from_direction_at_variance_spectral_density_maximum
sea_surface_primary_wave_from_direction_at_variance_spectral_density_maximum_from_radarsea_surface_primary_wave_from_direction_at_variance_spectral_density_maximum
from_direction_of_peak(sea_surface_primary_wave)sea_surface_primary_wave_from_direction_at_variance_spectral_density_maximum
from_direction_of_peak(sea_surface_primary_wave PT20M)sea_surface_primary_wave_from_direction_at_variance_spectral_density_maximum
sea_surface_secondary_wave_from_direction_at_variance_spectral_density_maximum_from_radarsea_surface_secondary_wave_from_direction_at_variance_spectral_density_maximum
from_direction_of_peak(sea_surface_secondary_wave PT10M)sea_surface_secondary_wave_from_direction_at_variance_spectral_density_maximum
from_direction_of_mean(sea_surface_secondary_wave PT20M)sea_surface_secondary_wave_from_direction
sea_surface_secondary_wave_from_mean_direction_from_radarsea_surface_secondary_wave_from_direction
sea_surface_wave_from_direction_at_variance_spectral_density_maximum_of_total_energy_from_radarsea_surface_wave_from_direction_at_variance_spectral_density_maximum
from_direction_of_peak(sea_surface_wave_total_energy PT10M)sea_surface_wave_from_direction_at_variance_spectral_density_maximum
sea_surface_wave_energy_at_variance_spectral_density_maximum_from_radar_externally_controlledsea_surface_wave_energy_at_variance_spectral_density_maximum
sea_surface_primary_wave_spectral_densitysea_surface_wave_energy_at_variance_spectral_density_maximum
sea_surface_wave_directional_spread_of_total_energy_from_radar_externally_controlledsea_surface_wave_directional_spread_of_total_energy
directional_spread(sea_surface_wave_total_energy PT20M)sea_surface_wave_directional_spread_of_total_energy
sea_surface_wave_directional_spread_of_peak_period_externally_controlledsea_surface_wave_directional_spread_of_peak_period
sea_surface_wave_from_mean_direction_at_variance_spectral_density_maximum_externally_controlledsea_surface_wave_from_mean_direction_at_variance_spectral_density_maximum
mean(sea_surface_wave_from_direction_of_spectral_peak_period PT20M)sea_surface_wave_from_mean_direction_at_variance_spectral_density_maximum


Change in timeoffset of some Element IDs. The following Element IDs will change timeoffset from PT0H to PT18H.
  • mean(wind_speed_of_gust P1M)
  • min(wind_speed_of_gust P1M)
  • max(wind_speed_of_gust P1M)
  • mean(max(wind_speed P1D) P1M)
  • min(max(wind_speed P1D) P1M)
  • max(max(wind_speed P1D) P1M)
2021-08-03 These duplicate time series for RRA and TAMA elements will be removed from frost 04.08.2021:
elem_codeelement_id
RRAsum(precipitation_amount_anomaly P1M 1961_1990)
RRAsum(precipitation_amount_anomaly P3M 1961_1990)
RRA sum(precipitation_amount_anomaly P6M 1961_1990)
RRAsum(precipitation_amount_anomaly P1Y 1961_1990)
TAMAmean(air_temperature_anomaly P1M 1961_1990)
TAMAmean(air_temperature_anomaly P3M 1961_1990)
TAMAmean(air_temperature_anomaly P6M 1961_1990)
TAMAmean(air_temperature_anomaly P1Y 1961_1990)

The valid time series to be continued are:
elem_codeelement_id
RRA_6190sum(precipitation_amount_anomaly P1M 1961_1990)
RRA_6190sum(precipitation_amount_anomaly P1Y 1961_1990)
RRA_6190sum(precipitation_amount_anomaly P3M 1961_1990)
RRA_6190sum(precipitation_amount_anomaly P6M 1961_1990)
TAMA_6190mean(air_temperature_anomaly P1M 1961_1990)
TAMA_6190mean(air_temperature_anomaly P3M 1961_1990)
TAMA_6190mean(air_temperature_anomaly P6M 1961_1990)
TAMA_6190mean(air_temperature_anomaly P1Y 1961_1990)
2021-06-01 Some of the time series have had misleading and wrong element IDs and are moved from these old element IDs to new element IDs:

Old element IDNew element ID
cloud_type_icao1cloud_type1
cloud_type_icao2cloud_type2
cloud_type_icao3cloud_type3
2021-06-01 Removal of period from the element ID of some time series, where period varies as time since last main observation time: 00, 06, 12, and 18 UTC.

Some of the time series that used to have one of the following element IDs:
  • max(wind_speed PT10M)
  • max(wind_speed PT6H)
  • max(wind_speed PT3H)
will have their element ID renamed to just max(wind_speed).
2021-04-19 Updated element IDs:

Old element IDNew element IDOld convention element code
sea_surface_wind_wave_mean_periodsea_surface_wave_mean_periodPWA
sea_surface_wind_wave_mean_heightsea_surface_wave_significant_heightHWA
min(sea_surface_wind_wave_mean_period P1D)min(sea_surface_wave_mean_period P1D) PWAN_d
max(sea_surface_wind_wave_mean_period P1D)max(sea_surface_wave_mean_period P1D)PWAX_d
mean(sea_surface_wind_wave_mean_period P1D)mean(sea_surface_wave_mean_period P1D)PWAM_d
min(sea_surface_wind_wave_mean_height P1D)min(sea_surface_wave_significant_height P1D)HWAN_d
max(sea_surface_wind_wave_mean_height P1D)max(sea_surface_wave_significant_height P1D)HWAX_d
mean(sea_surface_wind_wave_mean_height P1D)mean(sea_surface_wave_significant_height P1D)HWAM_d
min(sea_surface_wind_wave_mean_period P1M)min(sea_surface_wave_mean_period P1M)PWAN_m
max(sea_surface_wind_wave_mean_period P1M)max(sea_surface_wave_mean_period P1M)PWAX_m
mean(sea_surface_wind_wave_mean_period P1M)mean(sea_surface_wave_mean_period P1M)PWAM_m
min(sea_surface_wind_wave_mean_height P1D)min(sea_surface_wave_significant_height P1D)HWAN_m
max(sea_surface_wind_wave_mean_height P1D)max(sea_surface_wave_significant_height P1D)HWAX_m
mean(sea_surface_wind_wave_mean_height P1D)mean(sea_surface_wave_significant_height P1D)HWAM_m
2019-09-23 Bug fix: When specifying referencetime=latest in the observations endpoint, the limit parameter now applies to reference times, not observations. When specifying for example limit=2, the output now contains all observations at the two most recent observation times for any given source/element combination. Note in particular that the output may contain more than one observation even when specifying limit=1. Observations for the same time will differ in some other meta attribute than source or element, like sensor level or time resolution.
2019-07-10 A new filtering feature has been made for the observations and availableTimeSeries endpoints. It is now possible to specify levels=default and timeoffsets=default. See the concepts page for more information.
2019-07-01 The exposure and perfomance category values are now being inserted from the metadata database, and should more correctly represent the stations that are less trustworthy.
2019-06-17 In the sources/ endpoint, the query parameter elements has been added as an additional filter. If specified, only station (sensor system) sources matching these elements may appear in the output.
2019-04-14 The value of the max-age header in the response from the observations endpoint now shows the actual remaining period (in seconds) during which Frost will reply with the same response to this request. There is no point in resending the request during this period and the traffic can be saved.
  • Note: New observations relevant to the response may or may not arrive in backend database during the max-age period.
  • A max-age value of -1 means that the value is undefined or n/a, for example if the response is not cached internally at all by Frost.
2019-02-20 The maximum total number of observations that can be asked for in one request has been lowered to 100,000.
2019-02-08 In the sources/ endpoint, the query parameter externalid has been renamed to externalids and allows a comma-separated list of values.
2019-01-25 The term CF status has been renamed to CF version to reflect precisely what this attribute represents. Usually it will be an integer value, such as 44.
2018-11-29 When using repeating intervals for the time specification, a check is now made to ensure that the number of intervals is at least 2. Note: R1/from/to and R1/from/to/duration are both equivalent to just from/to.
2018-11-05 There is a new filter field in the observations/ endpoint, which allows you to request only certain qualities of data. For example you can request only the best qualities 0 and 1 by writing 0,1 in the qualites field. If you do not write anything in the field you will get all the qualities of data. Please be aware that some types of data (such as averages over time) do not have qualities, and so if you try to filter on quality you will get no data returned. You can read more about about what the quality codes mean in availableQualityCodes/.
2018-08-28 When using the nearest() function for geometry in the sources/ endpoint, an arbitrary number of sources (limited by nearestmaxcount) may now be returned. Distances from the reference point are included in the output. Note that the geometry feature currently applies to point sources only (i.e. weather stations, prefixed with 'SN').
2018-07-23 The request for observations now return status code 503 (Service unavailable) when there are to many requests in progress. Retry-After is set to the number of seconds to wait before retrying the request.
2018-06-25 As part of improving the overall resource allocation in Frost, a request for observations will be rejected if the response may result in more than 1000000 individual values. Moreover, it will not be possible to specify more than 1000 interval repetitions for the referencetime (e.g. R1001/2018-.../2018-... will be rejected). A request that exceeds any of these limits will be rejected with 403 Forbidden.
2018-04-30 When specifying referencetime=latest in a request for observations, the Cache-Control/max-age in the HTTP response header is set to the minimum value of the normal update periods of any of the following elements occurring in the request:
  • air_temperature (3600)
  • wind_speed (600)
  • wind_from_direction (600)
If none of these elements are requested, the default value is 3600.
2018-04-26 Added maxage and limit to reduce response time when specifying referencetime=latest in a request for observations.
  • maxage: don't retrieve observations older than this duration
  • limit: return values for at most limit observation times for each source/element combination, counting from the most recent time
2018-03-22 Updated IDs of elements and code tables:

Old element IDNew element IDOld convention element code
over_time(precipitation_type_primary_significance PT6H)over_time(weather_class1_primary_significance PT6H)V4
over_time(precipitation_type_primary_significance_intensity P1D)over_time(weather_class1_primary_significance_intensity PT6H)V4S
over_time(precipitation_type_secondary_significance P1D)over_time(weather_class1_secondary_significance PT6H)V5
over_time(precipitation_type_secondary_significance PT6H)over_time(weather_class1_secondary_significance PT6H)V5
over_time(precipitation_type_secondary_significance_intensity P1D)over_time(weather_class1_secondary_significance_intensity PT6H)V5S
over_time(precipitation_type_tertiary_significance PT6H)over_time(weather_class1_tertiary_significance PT6H)V6
over_time(precipitation_type_tertiary_significance P1D)over_time(weather_class1_tertiary_significance PT6H)V6
over_time(precipitation_type_tertiary_significance_intensity P1D)over_time(weather_class1_tertiary_significance_intensity PT6H)V6S
over_time(precipitation_type_quaternary_significance PT6H)over_time(weather_class1_quaternary_significance PT6H)V7

Old code table IDNew code table ID
precipitation_type_significanceweather_class1_significance
precipitation_type_intensityweather_class1_intensity
2018-03-19 Removed leading zeros from a couple of time offset values:
  • PT00HPT0H
  • PT06HPT6H
2018-03-17 Updated element IDs that previously matched one the following patterns:
  • *sea_surface*
  • *precipitation_type*
  • humidity_mixing_ratio
2018-03-09
  • In the observations/ endpoint, the referencetime parameter now accepts the word 'latest' to specify the latest available observation.
  • If 'latest' is specified for referencetime, the response header for now contains max-age=3600 as the value of Cache-Control. This will be fine for most elements. At a later point, the value of max-age may depend on the element in the request that is expected to be updated most frequently.
2018-03-06 Starting point.