Technical documentation

Introduction

This dataset contains the maritime forecasts as published multiple times a day by the KNMI for the Dutch coastal districts, the North Sea districts and the Dutch Continental Shelf districts.

The available parameters in the dataset depend on the selected domain. Forecasts may include variables such as wind, wind gusts, precipitation, cloud coverage, visibility, significant wave height, seiches, water temperature, and air temperature.

The forecasts are published as machine-readable JSON and represent structured forecast information per coastal district.

Filename structure

The filename follows a structured convention. Example:

20260225T1200-MARITIEM_DOMEIN_KUST-159-updated-20260225T1122-version-ff5c6ac1.json

Where:

  • 20260225T1200 – start time of the forecast block (UTC). The forecast consists of time blocks for which the conditions apply. See the dataset structure for more details on the forecast block periods.
  • MARITIEM_DOMEIN_KUST – product domain (maritime forecasts for the Dutch coastal districts)
  • 159 – internal product identifier
  • updated-20260225T1122 – timestamp of the most recent update
  • version-ff5c6ac1 – internal version or hash of the generated product

Issuance times and validity

The maritime forecasts are issued at fixed times during the day. Coastal district forecasts are published every 6 hours, North Sea and Continental Shelf forecasts are published every 12 hours. If required, updates may also be issued between these scheduled publication times.

Each publication represents the current forecast state at the time of issuance. Consumers should therefore treat every publication as a complete snapshot of the forecast.

All times in the dataset are expressed in UTC.

Scope of the dataset

The maritime warning datasets:

  • describe forecast-based warnings, not observations
  • are issued for predefined, fixed geographical areas (maritime districts)
How to use this dataset

This dataset contains the maritime forecasts as published multiple times a day by the KNMI for the Dutch coastal districts, the North Sea districts and the Dutch Continental Shelf districts.

The available parameters in the dataset depend on the selected domain. Forecasts may include variables such as wind, wind gusts, precipitation, cloud coverage, visibility, significant wave height, seiches, water temperature, and air temperature.

The forecasts are published as machine-readable JSON and represent structured forecast information per coastal district.

Important notes:

  • Each publication represents the complete current state of the dataset; consumers should process the entire dataset rather than assuming incremental updates
  • Area identifiers are stable (fixed areas) and suitable for caching
  • All times in the dataset are UTC
Dataset structure

Top-level keys:

  • meta
  • publication

meta

The meta object contains metadata describing the structure and context of the dataset. It provides reference information required to correctly interpret the forecast data contained in the publication section.

The following elements are included in meta:

  • component_periods (required, object[string → integer]) - Mapping between forecast component identifiers and the forecast period to which the component belongs.
  • locations (required, object[string → string]) - Mapping between internal location identifiers and the corresponding geographic area name.
  • periods (required, object[string → object]) - Definitions of the forecast periods used in the dataset. Each period contains:
    • name (string, required) – logical name of the period
    • publication_name (string, required) – name used in forecast output (e.g. 0-12, +1)
  • time_slot (required, object) - Describes the forecast cycle for which the dataset was produced and the time span during which this publication is the forecast to use:
    • id (integer, required) – identifier of the forecast cycle
    • start_datetime (string, date-time, required)
    • end_datetime (string, date-time, required)
  • created (required, string, date-time) - Timestamp indicating when this dataset publication was generated.
  • units (required, object[string → string]) - Defines the measurement units used for each forecast parameter (e.g. Beaufort, °C, km).
  • schema (string, optional, default = 1.0.0) - Version of the dataset schema used to structure this publication.

publication

The publication object contains the actual forecast content of the dataset.

The following elements are included in publication:

  • id (required, integer) - Unique identifier of the publication.
  • version (required, string) - Version identifier of this publication.
  • initially_published_at (required, string, date-time) - Timestamp indicating when this forecast cycle was first published.
  • last_updated_at (required, string, date-time) - Timestamp indicating when this publication was last updated.
  • locations (required, object[string → object]) - Additional metadata for locations used in this publication. Each location contains:
    • display_name_nl (string, required)
    • display_name_en (string, required)
    • type (string, required)
  • maritime_domain (required, string) - Identifier of the maritime domain. Allowed values:
    • MARITIEM_DOMEIN_KUST
    • MARITIEM_DOMEIN_NOORDZEE
    • MARITIEM_DOMEIN_NEDERLANDS_CONTINENTAAL_PLAT
  • next_forecast_at (required, string, date-time) - Timestamp indicating when the next forecast cycle is expected.
  • forecast (required, object) - Container for forecast data. It contains:
    • is_active_from (required, string, date-time) - Timestamp from which this forecast becomes operationally valid.
    • status (required, string) - Publication status. Allowed values:
    • PUBLISHED
    • CORRECTED
    • components (required, array) - List of forecast components. Each component contains:
    • id (integer, required) - Unique identifier of the component.
    • phenomenon (string, required) - The forecast parameter being described.
    • location (string, required) - Reference to a location defined in publication.locations.
    • period_name (string, required) - Human-readable identifier (e.g. 0-12, +1).
    • period (object, required) - Time span of the forecast:
      • start (string, date-time, required)
      • end (string, date-time, required)
    • data (object, required) - Object containing the actual forecast values or messages. The structure of this object depends on the phenomenon and the selected domain.
  • sun_times (optional, array | null) - Sunrise and sunset data per location. Each entry contains:
    • location (string, required)
    • sunrise (string, date-time, required)
    • sunset (string, date-time, required)
JSON Schema

The JSON Schema for this dataset is provided as a separate file.