Logo

API Documentation

Foreca Weather API

Foreca Weather API standard package includes access to point forecasts and weather maps.

API add-ons (Warning API, Marine API, Climate API, Ski API) can be added to the service for an additional fee. If you are interested in API add-ons, please contact our sales team for more information.

Learn more about Foreca’s different weather solutions at corporate.foreca.com.


Attribution

Customer shall display in its weather service the Foreca logo. In case displaying the logo is not possible due to technical reasons, the text ”Foreca” shall be displayed in customer’s weather service in connection with the content referring to the source of information. Customer agrees to cease use of the logo and name ”Foreca” in case requested by Foreca, and also to follow Foreca’s reasonable instructions in using the logo, trade name or other trademarks of Foreca.

https://corporate.foreca.com/en/logo

Third Party Attributions

Customer’s application must show attribution as given in API response. For example, the Capabilities endpoint in Weather Map API responds with layer info telling the required attribution text.

Currently the following organisations must be attributed if their data is used:

Radar data: Aemet, BOM, DMI, DWD, EC, FMI, InMet, JMA, KMI, KNMI, MET, Eireann, MeteoSchweiz, MF, Met Office, MET Norway, NWS, Protezione Civile, SMHI, SMN, ZAMG

Satellite data: EUMETSAT


Authorization

Fetch tokens for API access. Tokens can be self-expiring or non-expiring.

Token

Create an expiring or non-expiring token (API key).

  • user

    Application key username

  • password

    Application key password

  • expire_hours (optional)

    Expiry time in hours (default 1, maximum 168). If given expiry time is -1, a non-expiring token is created.

POST
/authorize/token
{
  "access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC9mbnc2LmZvcmVjYS5jb21cL2F1dGhvcml6ZVwvdG9rZW4iLCJpYXQiOjE1MjYzMDAzODAsImV4cCI6MTUyNjMwMzk4MCwibmJmIjoxNTI2MzAwMzgwLCJqdGkiOiJxSXl3WVlQNjc1NkczejBEIiwic3ViIjoibFFHa1Y4Z2pIeGUyZU1ibndUUUs4NktqVTY3RXJlS2htenY1IiwicHJ2IjoiYWY3YTAzOThkZGNiNWE3YTUzN2Q3YzdkMjU2NWEyZjgxZGM4ZTQxNCJ9.V8xg6L9yrY9__VH-jdrL_CqXisEpgcfdUa0NoxlGz0k",
  "expires_in": 3600,
  "token_type": "bearer"
}

Keys

Fetch a list of API keys (non-expiring tokens).

  • user

    Application key username

  • password

    Application key password

POST
/authorize/key
[
  {
    "access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC9mbnc2LmZvcmVjYS5jb21cL2F1dGhvcml6ZVwvdG9rZW4iLCJpYXQiOjE1MjYzMDAzODAsImV4cCI6MTUyNjMwMzk4MCwibmJmIjoxNTI2MzAwMzgwLCJqdGkiOiJxSXl3WVlQNjc1NkczejBEIiwic3ViIjoibFFHa1Y4Z2pIeGUyZU1ibndUUUs4NktqVTY3RXJlS2htenY1IiwicHJ2IjoiYWY3YTAzOThkZGNiNWE3YTUzN2Q3YzdkMjU2NWEyZjgxZGM4ZTQxNCJ9.V8xg6L9yrY9__VH-jdrL_CqXisEpgcfdUa0NoxlGz0k",
    "key": "23j98rfsnldkvf3w49hg"
  }
]

Delete Key

Delete non-expiring token using its key.

  • user

    Application key username

  • password

    Application key password

DELETE
/authorize/key/:key

Forecasts

Global weather point forecasts.

Location search

Locations and associated identifiers matching a search query. Can be used as alternatives to coordinates.

  • query

    Search query

  • lang (optional)

    Language (ISO 639-1 codes). Options: de, en, es, fr, it, pl, ru, fi, sv, nl, ko, pt, th, tr, zh, zh_TW (Chinese in Taiwan), zh_CN (Chinese in China). (default en)

  • country (optional)

    Limit search to a given country (ISO 3166-1 alpha-2 codes)

GET
/api/v1/location/search/:query
{
  "locations": [
    {
      "id": 102643743,
      "name": "London",
      "country": "United Kingdom",
      "timezone": "Europe/London",
      "adminArea": "England",
      "lon": -0.125532746,
      "lat": 51.508415222
    },
    {
      "id": 103458449,
      "name": "Londrina",
      "country": "Brazil",
      "timezone": "America/Sao_Paulo",
      "adminArea": "Estado do Parana",
      "lon": -51.162776947,
      "lat": -23.310277939
    },
    {
      "id": 106058560,
      "name": "London",
      "country": "Canada",
      "timezone": "America/Toronto",
      "adminArea": "Ontario",
      "lon": -81.233039856,
      "lat": 42.983390808
    }
  ]
}
  • idnumber

    Identifier to be used with weather queries

  • namestring

    Location name eg. London

  • countrystring

    Location country name eg. United Kingdom

  • statestring

    U.S. state abbreviation (if applicable)

  • timezonestring

    Location timezone eg. Europe/London

  • adminAreastring

    Administrative region name (if applicable)

  • lonnumber

    Location longitude

  • latnumber

    Location latitude


  • Location info

    Location metadata.

    • location

      "Longitude,latitude" or location identifier (id) from the location endpoint

    • lang (optional)

      Language (ISO 639-1 codes). Options: de, en, es, fr, it, pl, ru, fi, sv, nl, ko, pt, th, tr, zh, zh_TW (Chinese in Taiwan), zh_CN (Chinese in China). (default en)

    GET
    /api/v1/location/:location
    {
      "id": 102643743,
      "name": "London",
      "country": "United Kingdom",
      "timezone": "Europe/London",
      "adminArea": "England",
      "lon": -0.125532746,
      "lat": 51.508415222
    }
  • idnumber

    Identifier to be used with weather queries

  • namestring

    Location name eg. London

  • countrystring

    Location country name eg. United Kingdom

  • statestring

    U.S. state abbreviation (if applicable)

  • adminAreastring

    Administrative region name (if applicable)

  • timezonestring

    Location timezone eg. Europe/London

  • lonnumber

    Location longitude

  • latnumber

    Location latitude


  • Observations

    Observations from a nearby representative weather station.

    • location

      "Longitude,latitude" or location identifier (id) from the location endpoint

    • tz (optional)

      Time zone of returned times (IANA time zone database names)

    • stations (optional)

      Amount of stations (default 3, maximum 6)

    • tempunit (optional)

      Temperature unit: "C", "F" (default "C")

    • windunit (optional)

      Wind unit: "MS" (m/s), "KTS" (knots), "KMH" (km/h), or "MPH" (mph) (default m/s)

    GET
    /api/v1/observation/latest/:location
    {
      "observations": [
        {
          "station": "Espoo Tapiola",
          "distance": "21 km N",
          "time": "2020-03-16T14:30:00+02:00",
          "temperature": 5,
          "feelsLikeTemp": 2,
          "symbol": "d400",
          "windDirString": "NW",
          "windDir": 315,
          "windSpeed": 4,
          "windGust": 6,
          "pressure": 1007.9,
          "relHumidity": 80,
          "visibility": 48992
        },
        {
          "station": "Helsinki Kaisaniemi",
          "distance": "24 km NE",
          "time": "2020-03-16T14:30:00+02:00",
          "temperature": 5,
          "feelsLikeTemp": 2,
          "symbol": "d400",
          "windDirString": "NW",
          "windDir": 336,
          "windSpeed": 4,
          "windGust": 6,
          "pressure": 1007.8,
          "relHumidity": 77,
          "visibility": 50000
        }
      ]
    }
  • stationstring

    Name of the obsveration station

  • distancestring

    Distance from the location to the station eg. 13 km E

  • timestring

    ISO 8601 date and time for the observation parameters

  • temperaturenumber

    Temperature (°C or requested unit)

  • feelsLikeTempnumber

    Feels like temperature (°C or requested unit)

  • symbolstring

    Weather symbol code

  • windDirStringstring

    Wind direction (N, NE, E, SE, S, SW, W, NW)

  • windDirnumber

    Wind direction in degrees

  • windSpeednumber

    Wind speed (m/s or requested unit)

  • windGustnumber

    Wind gust speed (m/s or requested unit)

  • pressurenumber

    Atmospheric pressure normalized to sea level (hPa)

  • relHumiditynumber

    Relative humidity (%)

  • visibilitynumber

    visibility in meters, e.g. "10000" for 10 km


  • Current

    Current weather estimate.

    • location

      "Longitude,latitude" or location identifier (id) from the location endpoint

    • alt (optional)

      Altitude in meters

    • tempunit (optional)

      Temperature unit

    • windunit (optional)

      Wind unit: "MS" (m/s), "KTS" (knots), "KMH" (km/h), or "MPH" (mph) (default m/s)

    • tz (optional)

      Time zone of returned times (IANA time zone database names)

    • lang (optional)

      Language (ISO 639-1 codes). Options: de, en, es, fr, it, pl, ru, fi, sv, nl, ko, pt, th, tr, zh, zh_TW (Chinese in Taiwan), zh_CN (Chinese in China). (default en)

    GET
    /api/v1/current/:location
    {
      "current": {
        "time": "2020-06-02T04:17-06:00",
        "symbol": "n200",
        "symbolPhrase": "partly cloudy",
        "temperature": 19,
        "feelsLikeTemp": 19,
        "relHumidity": 50,
        "dewPoint": 8,
        "windSpeed": 1,
        "windDirString": "SW",
        "windGust": 4,
        "precipProb": 1,
        "precipRate": 0,
        "cloudiness": 61,
        "thunderProb": 0,
        "uvIndex": 0,
        "pressure": 1011.46,
        "visibility": 33516
      }
    }
  • timestring

    ISO 8601 date and time

  • symbolstring

    Weather symbol code

  • symbolPhrasestring

    Description of weather symbol

  • temperaturenumber

    Temperature (°C or requested unit)

  • feelsLikeTempnumber

    Feels like temperature (°C or requested unit)

  • relHumiditynumber

    Relative humidity (%)

  • dewPointnumber

    Dew point (°C or requested unit)

  • windSpeednumber

    Wind speed (m/s or requested unit)

  • windDirStringstring

    Wind direction (N, NE, E, SE, S, SW, W, NW)

  • windGustnumber

    Wind gust (m/s or requested unit)

  • precipProbnumber

    Probability of precipitation (%)

  • precipRatenumber

    Intensity of precipitation rate (mm/h)

  • cloudinessnumber

    Cloudiness (%)

  • thunderProbnumber

    Probability of thunder nearby (%)

  • uvIndexnumber

    UV index

  • pressurenumber

    Atmospheric pressure normalized to sea level (hPa)

  • visibilitynumber

    Visibility (m)


  • Nowcast

    3-hour forecast in 15-minute time steps. The values represent the conditions at the associated timestamp unless otherwise specified.

    • location

      "Longitude,latitude" or location identifier (id) from the location endpoint

    • periods (optional)

      Number of time steps (default 8, maximum 12)

    • alt (optional)

      Altitude in meters

    • tempunit (optional)

      Temperature unit: "C", "F" (default "C")

    • windunit (optional)

      Wind unit: "MS" (m/s), "KTS" (knots), "KMH" (km/h), or "MPH" (mph) (default m/s)

    • tz (optional)

      Time zone of returned times (IANA time zone database names)

    • dataset (optional)

      Variable set: "standard" or "full" (default "standard")

    GET
    /api/v1/forecast/15minutely/:location
    {
      "forecast": [
        {
          "time": "2021-11-10T03:45-04:00",
          "symbol": "n100",
          "symbolPhrase": "mostly clear",
          "temperature": 19,
          "feelsLikeTemp": 19,
          "relHumidity": 76,
          "dewPoint": 15,
          "windDir": 22,
          "windSpeed": 6,
          "windGust": 10,
          "windDirString": "N",
          "precipProb": 2,
          "precipRate": 0,
          "cloudiness": 27,
          "thunderProb": 0,
          "uvIndex": 0,
          "pressure": 1021.31
        },
        {
          "time": "2021-11-10T04:00-04:00",
          "symbol": "n000",
          "symbolPhrase": "clear",
          "temperature": 19,
          "feelsLikeTemp": 19,
          "relHumidity": 76,
          "dewPoint": 15,
          "windDir": 21,
          "windSpeed": 5,
          "windGust": 10,
          "windDirString": "N",
          "precipProb": 2,
          "precipRate": 0,
          "cloudiness": 17,
          "thunderProb": 0,
          "uvIndex": 0,
          "pressure": 1021.27
        }
      ]
    }
  • timestring

    ISO 8601 date and time

  • symbolstring

    Weather symbol code

  • symbolPhrasestring

    Weather description

  • temperaturenumber

    Temperature (°C)

  • feelsLikeTempnumber

    Feels like temperature (°C)

  • relHumiditynumber

    Relative humidity (%) (dataset=full)

  • windDirnumber

    Wind direction in degrees

  • windGustnumber

    Wind gust speed (m/s or requested unit)

  • windSpeednumber

    Wind speed (m/s or requested unit)

  • windDirStringstring

    Wind direction (N, NE, E, SE, S, SW, W, NW)

  • precipProbnumber

    Probability of precipitation (%)

  • precipRatenumber

    Intensity of precipitation rate (mm/h)

  • cloudinessnumber

    Cloudiness (%)

  • thunderProbnumber

    Thunder probability (%)

  • uvIndexnumber

    Ultraviolet index

  • pressurenumber

    Atmospheric pressure extrapolated to sea level (%)


  • Hourly

    Hourly forecasts, up to 7 days. The values represent the conditions at the associated timestamp unless otherwise specified.

    • location

      "Longitude,latitude" or location identifier (id) from the location endpoint

    • periods (optional)

      Number of time steps (default 24, maximum 168)

    • alt (optional)

      Altitude in meters

    • tempunit (optional)

      Temperature unit: "C", "F" (default "C")

    • windunit (optional)

      Wind unit: "MS" (m/s), "KTS" (knots), "KMH" (km/h), or "MPH" (mph) (default m/s)

    • tz (optional)

      Time zone of returned times (IANA time zone database names)

    • dataset (optional)

      Variable set: "standard" or "full" (default "standard")

    • history (optional)

      History: whether to include past 24 hours (1 or 0, default 0)

    GET
    /api/v1/forecast/hourly/:location
    {
      "forecast": [
        {
          "time": "2021-11-10T09:00+02:00",
          "symbol": "d300",
          "symbolPhrase": "cloudy",
          "temperature": 15,
          "feelsLikeTemp": 15,
          "relHumidity": 93,
          "dewPoint": 14,
          "windDir": 87,
          "windSpeed": 4,
          "windGust": 8,
          "windDirString": "E",
          "precipProb": 2,
          "precipAccum": 0,
          "cloudiness": 78,
          "thunderProb": 0,
          "uvIndex": 1,
          "pressure": 1021.01,
          "visibility": 18865
        },
        {
          "time": "2021-11-10T10:00+02:00",
          "symbol": "d300",
          "symbolPhrase": "cloudy",
          "temperature": 17,
          "feelsLikeTemp": 17,
          "relHumidity": 86,
          "dewPoint": 15,
          "windDir": 93,
          "windSpeed": 5,
          "windGust": 9,
          "windDirString": "E",
          "precipProb": 2,
          "precipAccum": 0,
          "cloudiness": 78,
          "thunderProb": 0,
          "uvIndex": 2,
          "pressure": 1021.45,
          "visibility": 23934
        }
      ]
    }
  • timestring

    ISO 8601 date and time

  • symbolstring

    Weather symbol code

  • symbolPhrasestring

    Description of weather (dataset=full)

  • temperaturenumber

    Temperature (°C or requested unit)

  • feelsLikeTempnumber

    Feels like temperature (°C or requested unit)

  • relHumiditynumber

    Relative humidity (%) (dataset=full)

  • dewPointnumber

    Dew point (°C or requested unit) (dataset=full)

  • windSpeednumber

    Wind speed (m/s or requested unit)

  • windGustnumber

    Wind gust speed (m/s or requested unit)

  • windDirnumber

    Wind direction in degrees

  • windDirStringstring

    Wind direction (N, NE, E, SE, S, SW, W, NW)

  • precipProbnumber

    Probability of precipitation in the 1 hour period ending at the timestamp (%)

  • precipAccumnumber

    Accumulated 1 hour precipitation up until the timestamp (as liquid water, mm).

  • cloudinessnumber

    Cloudiness (%) (dataset=full)

  • thunderProbnumber

    Thunder probability (%) (dataset=full)

  • uvIndexnumber

    Ultraviolet index (dataset=full)

  • pressurestring

    Pressure (hPa) (dataset=full)

  • visibilitynumber

    Visibility (m) (dataset=full)


  • Three-hourly

    Forecast at 3 hour intervals, up to 14 days. The values represent the conditions at the associated timestamp unless otherwise specified. Precipitation sums are for three-hour periods.

    • location

      "Longitude,latitude" or location identifier (id) from the location endpoint

    • periods (optional)

      Number of time steps (default 24, maximum 168)

    • alt (optional)

      Altitude in meters

    • tempunit (optional)

      Temperature unit: "C", "F" (default "C")

    • windunit (optional)

      Wind unit: "MS" (m/s), "KTS" (knots), "KMH" (km/h), or "MPH" (mph) (default m/s)

    • tz (optional)

      Time zone of returned times (IANA time zone database names)

    • dataset (optional)

      Variable set: "standard" or "full" (default "standard")

    • history (optional)

      History: whether to include past 24 hours (1 or 0, default 0)

    GET
    /api/v1/forecast/3hourly/:location
    {
      "forecast": [
        {
          "time": "2021-11-10T08:00+02:00",
          "symbol": "d300",
          "symbolPhrase": "cloudy",
          "temperature": 14,
          "feelsLikeTemp": 14,
          "relHumidity": 96,
          "dewPoint": 13,
          "windDir": 80,
          "windSpeed": 4,
          "windGust": 7,
          "windDirString": "E",
          "precipProb": 2,
          "precipAccum": 0,
          "cloudiness": 75,
          "thunderProb": 0,
          "uvIndex": 0,
          "pressure": 1020.56,
          "visibility": 18848
        },
        {
          "time": "2021-11-10T11:00+02:00",
          "symbol": "d300",
          "symbolPhrase": "cloudy",
          "temperature": 19,
          "feelsLikeTemp": 19,
          "relHumidity": 73,
          "dewPoint": 14,
          "windDir": 101,
          "windSpeed": 5,
          "windGust": 9,
          "windDirString": "E",
          "precipProb": 2,
          "precipAccum": 0,
          "cloudiness": 76,
          "thunderProb": 0,
          "uvIndex": 2,
          "pressure": 1021.9,
          "visibility": 25204
        }
      ]
    }
  • timestring

    ISO 8601 date and time

  • symbolstring

    Weather symbol code

  • symbolPhrasestring

    Description of weather (dataset=full)

  • temperaturenumber

    Temperature (°C or requested unit)

  • feelsLikeTempnumber

    Feels like temperature (°C or requested unit)

  • relHumiditynumber

    Relative humidity (%) (dataset=full)

  • dewPointnumber

    Dew point (°C or requested unit) (dataset=full)

  • windSpeednumber

    Wind speed (m/s or requested unit)

  • windGustnumber

    Wind gust speed (m/s or requested unit)

  • windDirnumber

    Wind direction in degrees

  • windDirStringstring

    Wind direction (N, NE, E, SE, S, SW, W, NW)

  • precipProbnumber

    Probability of precipitation in the 3 hour period ending at the timestamp (%)

  • precipAccumnumber

    Accumulated 3 hour precipitation up until the timestamp (as liquid water, mm).

  • cloudinessnumber

    Cloudiness (%) (dataset=full)

  • thunderProbnumber

    Thunder probability (%) (dataset=full)

  • uvIndexnumber

    Ultraviolet index (dataset=full)

  • pressurestring

    Pressure (hPa) (dataset=full)

  • visibilitynumber

    Visibility (m) (dataset=full)


  • Daily

    Daily forecasts, up to 14 days.

    • location

      "Longitude,latitude" or location identifier (id) from the location endpoint

    • periods (optional)

      Number of time steps (default 7, maximum 14)

    • alt (optional)

      Altitude in meters

    • tempunit (optional)

      Temperature unit: "C", "F" (default "C")

    • windunit (optional)

      Wind unit: "MS" (m/s), "KTS" (knots), "KMH" (km/h), or "MPH" (mph) (default m/s)

    • dataset (optional)

      Variable set: "standard" or "full" (default "standard")

    GET
    /api/v1/forecast/daily/:location
    {
      "forecast": [
        {
          "date": "2021-11-10",
          "symbol": "d300",
          "symbolPhrase": "cloudy",
          "maxTemp": 23,
          "minTemp": 13,
          "maxFeelsLikeTemp": 23,
          "minFeelsLikeTemp": 13,
          "maxRelHumidity": 97,
          "minRelHumidity": 44,
          "maxDewPoint": 15,
          "minDewPoint": 12,
          "precipAccum": 0,
          "maxWindSpeed": 6,
          "windDir": 106,
          "maxWindGust": 10,
          "precipProb": 2,
          "cloudiness": 76,
          "sunrise": "07:00:12",
          "sunset": "17:39:14",
          "sunriseEpoch": 1636520412,
          "sunsetEpoch": 1636558754,
          "moonrise": "12:54:06",
          "moonset": "23:12:12",
          "moonPhase": 74,
          "uvIndex": 2,
          "minVisibility": 11409,
          "pressure": 1020.41
        },
        {
          "date": "2021-11-11",
          "symbol": "d100",
          "symbolPhrase": "mostly clear",
          "maxTemp": 23,
          "minTemp": 13,
          "maxFeelsLikeTemp": 23,
          "minFeelsLikeTemp": 13,
          "maxRelHumidity": 98,
          "minRelHumidity": 42,
          "maxDewPoint": 15,
          "minDewPoint": 11,
          "precipAccum": 0,
          "maxWindSpeed": 5,
          "windDir": 113,
          "maxWindGust": 8,
          "precipProb": 2,
          "cloudiness": 44,
          "sunrise": "07:01:05",
          "sunset": "17:38:34",
          "sunriseEpoch": 1636606865,
          "sunsetEpoch": 1636645114,
          "moonrise": "13:38:18",
          "moonset": null,
          "moonPhase": 87,
          "uvIndex": 3,
          "minVisibility": 14091,
          "pressure": 1019
        }
      ]
    }
  • datestring

    ISO 8601 date

  • symbolstring

    Weather symbol code representing daytime conditions (7am to 7pm local time)

  • symbolPhrasestring

    Description of weather during the day (dataset=full)

  • maxTempnumber

    24h maximum temperature (°C)

  • minTempnumber

    24h minimum temperature (°C)

  • maxFeelsLikeTempnumber

    24h maximum feels-like temperature (°C) (dataset=full)

  • minFeelsLikeTempnumber

    24h minimum feels-like temperature (°C) (dataset=full)

  • maxRelHumiditynumber

    24h maximum relative humidity (°C) (dataset=full)

  • minRelHumiditynumber

    24h minimum relative humidity (°C) (dataset=full)

  • maxDewPointnumber

    maximum dew point (°C) (dataset=full)

  • minDewPointnumber

    minimum dew point (°C) (dataset=full)

  • precipAccumnumber

    Accumulated precipitation (as liquid water, mm)

  • maxWindSpeednumber

    Maximum wind speed (m/s or requested unit)

  • windDirnumber

    Wind direction at maximum wind speed (degrees)

  • maxWindGustnumber

    Maximum wind gust speed (m/s or requested unit) (dataset=full)

  • precipProbnumber

    Precipitation probability during the day (%) (dataset=full)

  • cloudinessnumber

    Daytime cloudiness average (%) (dataset=full)

  • sunrisestring

    Sunrise time of day in local time (dataset=full)

  • sunsetstring

    Sunset time of day in local time (dataset=full)

  • sunriseEpochnumber

    Sunrise time in Unix time (dataset=full)

  • sunsetEpochnumber

    Sunset time in Unix time (dataset=full)

  • moonrisestring

    Moonrise time of day in local time (dataset=full)

  • moonsetstring

    Moonset time of day in local time (dataset=full)

  • moonPhasenumber

    Phase of moon at midday (degrees) (dataset=full)

  • uvIndexnumber

    Maximum ultraviolet index (dataset=full)

  • minVisibilitynumber

    Minimum visibility (m) (dataset=full)

  • pressurenumber

    Daytime average sea level pressure (hPa) (dataset=full)


  • Maps

    Weather Map API provides global weather forecast, radar and satellite data as map tiles compatible with commonly used map services such as Open Street Maps or Google Maps. All required and optional parameters are given as path and query parameters respectively. To obtain images one must first request an access token using valid credentials. The access token can then be used to fetch capabilities-response, which contains information on how to fetch images.

    Capabilities

    Capabilities endpoint is used to fetch layer metadata. This metadata is used to perform image queries. Capabilities-response provides layer information such as description, temporal and spatial extents as well as available color schemes. Images are layers renderable to image formats such as png or svg. The current data property in time element is the index to the most recent available time. Image products may have additional color schemes which can be optionally specified.

    • token

      Access token as provided by authorization endpoint

    GET
    /api/v1/capabilities
    {
      "images": [
        {
          "title": "Cell simulated precipitation",
          "description": "Precipitation with more intricate convection visualization",
          "formats": [
            "image/png"
          ],
          "colorschemes": [
            "default",
            "csdata-blue"
          ],
          "extent": {
            "minLat": -79.171,
            "maxLat": 79.171,
            "minLon": -180,
            "maxLon": 180,
            "maxZoom": 11,
            "minZoom": 3
          },
          "times": {
            "updated": "2017-01-01T00:00:00Z",
            "available": [
              "2017-09-01T03:00:00Z",
              "2017-09-01T06:00:00Z"
            ],
            "current": 1
          },
          "id": 1
        },
        {
          "title": "Wind symbol",
          "description": "Traditional wind symbol",
          "formats": [
            "image/svg+xml"
          ],
          "colorschemes": [
            "default",
            "data-pt"
          ],
          "extent": {
            "minLat": -79.171,
            "maxLat": 79.171,
            "minLon": -180,
            "maxLon": 180,
            "maxZoom": 11,
            "minZoom": 3
          },
          "times": {
            "updated": "2017-01-01T00:00:00Z",
            "available": [
              "2017-09-18T06:00:00Z",
              "2017-09-18T07:00:00Z"
            ],
            "current": 0
          },
          "id": 2
        }
      ]
    }

    Tile

    Tile endpoint is used to obtain weather map tiles for the given layer and color scheme

    • id

      Layer id

    • x

      X index of the requested tile

    • y

      Y index of the requested tile

    • z

      Zoom level of the requested tile

    • time

      UTC timestamp value for the data to retrieve in ISO 8601 format. Must appear in the available times list

    • token

      Access token as provided by authorization endpoint

    • colorscheme (optional)

      Layer color scheme. Must appear in the color scheme list returned by capabilities endpoint

    GET
    /api/v1/image/tile/:z/:x/:y/:time/:id
    tile_example.png

    Legend

    Legend endpoint is used to obtain legend image for a color scheme

    • colorscheme

      Color scheme id. Must appear in the color scheme list returned by capabilities endpoint

    • id

      Layer id

    • token

      Access token as provided by authorization endpoint

    GET
    /api/v1/legend/:colorscheme/:id
    legend_example.png

    Climate

    Add-on

    Weather statistics.

    Monthly climate

    Averages and other summary weather statistics, by month. The values are based on a 30-year period 1991--2020.

    • location

      "Longitude,latitude" or location identifier (id) from the location endpoint

    • tempunit (optional)

      Temperature unit: "C", "F" (default "C")

    GET
    /api/v1/climate/monthly/:location
    {
      "climate": [
        {
          "month": "01",
          "dayMaxTemp": -0.76,
          "dayMinTemp": -5.68,
          "dayAvgTemp": -3.2,
          "precipSum": 55.17,
          "dailyPrecip": 1.78,
          "rainDays": 19.09,
          "frostDays": 26.42
        },
        {
          "month": "02",
          "dayMaxTemp": -1.09,
          "dayMinTemp": -6.64,
          "dayAvgTemp": -3.86,
          "precipSum": 38.34,
          "dailyPrecip": 1.37,
          "rainDays": 14.62,
          "frostDays": 24.6
        },
        {
          "month": "03",
          "dayMaxTemp": 2.62,
          "dayMinTemp": -4.01,
          "dayAvgTemp": -0.69,
          "precipSum": 37.21,
          "dailyPrecip": 1.2,
          "rainDays": 13.68,
          "frostDays": 24.75
        }
      ]
    }
  • monthstring

    Month of year

  • dayMaxTempnumber

    Daily maximum temperature

  • dayMinTempnumber

    Daily minimum temperature

  • dayAvgTempnumber

    Daily average temperature

  • precipSumnumber

    Precipitation sum (mm/h)

  • dailyPrecipnumber

    Precipitation accumulation during a day (mm/h)

  • rainDaysnumber

    Number of rain days in month (≥0.1 mm of precipitation)

  • frostDaysnumber

    Number of frost days in month


  • Warnings

    Add-on

    Governmental severe weather warnings are currently delivered from: Australia, Austria, Belgium, Canada, Denmark, Estonia, Finland, France, Germany, Ireland, Italy, Japan, Latvia, Luxembourg, Netherlands, Norway, Poland, Portugal, Spain, Sweden, Switzerland, United Kingdom and United States.

    Point warnings

    • location

      "Longitude,latitude" or location identifier (id) from the location endpoint

    • future (optional)

      Whether to return warnings starting more than 24 hours from now (boolean: default 0)

    GET
    /api/v1/warning/:location
    {
      "warnings": [
        {
          "type": "FO",
          "significance": "Y",
          "attribution": null,
          "validFrom": "2021-01-08T10:17:00Z",
          "validUntil": "2021-01-08T17:00:00Z",
          "description": [
            {
              "lang": "en",
              "text": "Dense Fog Advisory issued January 08 at 4:17AM CST until January 08 at 11:00AM CST by NWS Minneapolis&10;&10;Anoka; Benton; Blue Earth; Brown; Carver; Chippewa; Chisago; Douglas; Hennepin; Isanti; Kanabec; Kandiyohi; Lac Qui Parle; Le Sueur; Martin; McLeod; Meeker; Mille Lacs; Morrison; Nicollet; Pope; Ramsey; Redwood; Renville; Scott; Sherburne; Sibley; Stearns; Stevens; Swift; Todd; Watonwan; Wright; Yellow Medicine&10;&10;...DENSE FOG ADVISORY REMAINS IN EFFECT UNTIL 11 AM CST THIS&10;MORNING...&10;* WHAT...Visibility one quarter mile or less in dense fog.&10;* WHERE...Portions of central, east central, south central,&10;southwest and west central Minnesota.&10;* WHEN...Until 11 AM CST Friday.&10;* IMPACTS...Hazardous driving conditions due to low visibility.&10;* ADDITIONAL DETAILS...Slick spots on roads, overpasses, and&10;sidewalks are also possible as the fog freezes on exposed&10;surfaces.&10;&10;If driving, slow down, use your headlights, and leave plenty of&10;distance ahead of you."
            }
          ],
          "attributionUrl": null,
          "link": "https://alerts.weather.gov/cap/wwacapget.php?x=MN126188507444.DenseFogAdvisory.126188517F10MN.MPXNPWMPX.6f0fa4bac3937d8409b5648ff85e9eea",
          "sent": "2021-01-08T10:17:00Z",
          "name": "Fog",
          "significanceDescription": "Potentially dangerous"
        }
      ]
    }
  • typestring

    Warning ID

  • significancestring

    One of: Y (yellow), O (orange), R (red), P (purple)

  • attributionstring

    Attribution: organization abbreviations

  • attributionUrlstring

    Attribution URL

  • validFromstring

    ISO 8601 date and time

  • validUntilstring

    ISO 8601 date and time

  • langstring

    Language of warning description (ISO 639-1 codes)

  • textstring

    Description of the particular warning in the associated language

  • significanceDescriptionstring

    Description of significance level

  • linkstring

    Link to warning description provided by source (if applicable)

  • sentstring

    ISO 8601 date and time of warning sent


  • Warning type names

    Metadata for all warning types.

      GET
      /api/v1/warning/types
      {
        "AQ": {
          "name": "Air quality"
        },
        "AS": {
          "name": "Volcanic ashfall"
        },
        "AV": {
          "name": "Avalanche"
        },
        "CD": {
          "name": "Civil danger"
        },
        "CE": {
          "name": "Coastal event"
        }
      }
    • namestring

      Name of warning type


    • Marine

      Add-on

      Marine forecasts of waves and sea temperatures.

      Hourly

      Hourly marine forecasts.

      • location

        "Longitude,latitude" or location identifier (id) from the location endpoint

      • periods (optional)

        Number of time steps (default 24, maximum 168)

      • tempunit (optional)

        Temperature unit: "C", "F" (default "C")

      • tz (optional)

        Time zone of returned times (IANA time zone database names)

      GET
      /api/v1/marine/forecast/hourly/:location
      {
        "forecast": [
          {
            "time": "2020-07-03T11:00",
            "sigWaveHeight": 0.95,
            "waveDir": 225,
            "sigSwellHeight": 0.02,
            "seaTemp": 18,
            "swimTemp": 18
          },
          {
            "time": "2020-07-03T12:00",
            "sigWaveHeight": 1.01,
            "waveDir": 225,
            "sigSwellHeight": 0.02,
            "seaTemp": 18,
            "swimTemp": 18
          },
          {
            "time": "2020-07-03T13:00",
            "sigWaveHeight": 1,
            "waveDir": 225,
            "sigSwellHeight": 0.02,
            "seaTemp": 18,
            "swimTemp": 18
          }
        ]
      }
    • timestring

      ISO 8601 date and time

    • sigWaveHeightnumber

      Significant wave height (m)

    • waveDirnumber

      Mean wave direction (degrees)

    • sigSwellHeightnumber

      Significant swell wave height (m)

    • seaTempnumber

      Sea temperature

    • swimTempnumber

      Sea temperature in swimming locations


    • Daily

      Daily marine forecasts.

      • location

        "Longitude,latitude" or location identifier (id) from the location endpoint

      • periods (optional)

        Number of time steps (default 24, maximum 168)

      • tempunit (optional)

        Temperature unit: "C", "F" (default "C")

      GET
      /api/v1/marine/forecast/daily/:location
      {
        "forecast": [
          {
            "date": "2020-07-03",
            "maxSigWaveHeight": 1.01,
            "maxSwellHeight": 0.05,
            "maxSeaTemp": 19,
            "maxSwimTemp": 18
          },
          {
            "date": "2020-07-04",
            "maxSigWaveHeight": 1.18,
            "maxSwellHeight": 0.18,
            "maxSeaTemp": 18,
            "maxSwimTemp": 17
          },
          {
            "date": "2020-07-05",
            "maxSigWaveHeight": 0.99,
            "maxSwellHeight": 0.99,
            "maxSeaTemp": 18,
            "maxSwimTemp": 18
          }
        ]
      }
    • datestring

      ISO 8601 date

    • maxSigWaveHeightnumber

      Maximum significant wave height (m)

    • maxSwellHeightnumber

      Maximum swell wave height (m)

    • maxSeaTempnumber

      Maximum sea temperature

    • maxSwimTempnumber

      Maximum sea temperature in swimming locations


    • Ski

      Add-on

      Ski resort weather conditions and site information.

      Current

      Ski resort conditions.

      • location

        "Longitude,latitude" or location identifier (id) from the location endpoint

      • sites (optional)

        Number of ski sites (default 1, maximum 5)

      • radius (optional)

        Maximum distance to ski site (default 500 km)

      GET
      /api/v1/ski/current/:location
      {
        "locations": [
          {
            "name": "Lake Louise",
            "countryCode": "ca",
            "countryName": "Canada",
            "state": "Alberta",
            "city": "Lake Louise, AB",
            "postalCode": "T0L 1E0",
            "street": "Banff National Park",
            "houseNumber": null,
            "address": "Banff National Park, Lake Louise, AB, T0L 1E0",
            "longitude": -116.159228,
            "latitude": 51.439332,
            "openFrom": "08:30",
            "openUntil": "16:00",
            "isOpen": true,
            "altitudeBase": 1646,
            "altitudePeak": 2637,
            "primarySurfaceCondition": "Gripping snow",
            "liftsOpen": 2,
            "lifts": 7,
            "hasSkiing": true,
            "kmNordic": null,
            "kmPistes": 139,
            "kmOpen": 7,
            "hasValleyRun": true,
            "valleyRunOpen": "true",
            "hasTobogganRuns": false,
            "kmTobogganRuns": null,
            "lastSnowDate": "2020-11-01",
            "lastSnowAmount": null,
            "nightSkiing": false,
            "snowDepthPeak": 52,
            "snowDepthBase": 43,
            "hasFunPark": true,
            "funParkOpen": true,
            "updated": "2020-11-05T00:00:00Z"
          },
          {
            "name": "Sunshine Village",
            "countryCode": "ca",
            "countryName": "Canada",
            "state": "Alberta",
            "city": "Banff",
            "postalCode": "T0L 0C0",
            "street": "Banff-Nationalpark",
            "houseNumber": null,
            "address": "Banff-Nationalpark, Banff, T0L 0C0",
            "longitude": -115.761005,
            "latitude": 51.113248,
            "openFrom": "08:30",
            "openUntil": "16:00",
            "isOpen": false,
            "altitudeBase": 1660,
            "altitudePeak": 2730,
            "primarySurfaceCondition": null,
            "liftsOpen": 0,
            "lifts": 10,
            "hasSkiing": false,
            "kmNordic": null,
            "kmPistes": 109,
            "kmOpen": 0,
            "hasValleyRun": true,
            "valleyRunOpen": "false",
            "hasTobogganRuns": true,
            "kmTobogganRuns": null,
            "lastSnowDate": null,
            "lastSnowAmount": null,
            "nightSkiing": false,
            "snowDepthPeak": null,
            "snowDepthBase": null,
            "hasFunPark": true,
            "funParkOpen": false,
            "updated": "2020-11-05T00:00:00Z"
          }
        ]
      }
    • namestring

      Site name

    • countryCodestring

      Country code (ISO 3166-1 alpha-2)

    • countryNamestring

      Country name

    • statestring

      State (if applicable)

    • citystring

      City

    • postalCodestring

      Postal code

    • streetstring

      Street

    • houseNumberstring

      House number

    • addressstring

      Address

    • longitudestring

      longitude

    • latitudestring

      latitude

    • openFromstring

      Opening time (HH:MM)

    • openUntilstring

      Open until time of day (HH:MM)

    • isOpenboolean

      Open status

    • altitudeBasenumber

      Altitude at base

    • altitudePeakstring

      Altitude at peak

    • primarySurfaceConditionstring

      Surface condition description

    • liftsOpennumber

      Number of lifts open

    • liftsnumber

      Total number of lifts

    • hasSkiingboolean

      Skiing available

    • kmNordicnumber

      Nordic skiing length (km)

    • kmPistesnumber

      Pistes length (km)

    • kmOpennumber

      Total open (km)

    • hasValleyRunboolean

      Valley run available

    • valleyRunOpenstring

      Valley run status ("true", "false", "conditional")

    • hasTobogganRunsboolean

      Toboggan runs available

    • kmTobogganRunsnumber

      Length of toboggan runs

    • lastSnowDatestring

      Date of last new snow

    • lastSnowAmountstring

      Amount of new snow last time

    • nightSkiingboolean

      Night skiing available

    • snowDepthPeaknumber

      Depth of snow at peak

    • snowDepthBasenumber

      Depth of snow at base

    • hasFunParkboolean

      Fun park available

    • funParkOpenboolean

      Fun park open

    • updatedstring

      Date and time of last update (ISO 8601)


    • Usage

      Monitor your API usage.

      Month's usage

      Given month's hit sums by API

      • month

        Month (e.g. "2020-03")

      • user

        Username

      • password

        Administrative password

      GET
      /usage/month/:month
      {
        "apis": [
          {
            "name": "Weather API",
            "hits": 3252
          },
          {
            "name": "Map API",
            "hits": 2
          },
          {
            "name": "Administrative",
            "hits": 136
          }
        ],
        "hits": 3390
      }

      Day's usage

      Given day's hit sums by API

      • day

        Day (e.g. "2020-03-15")

      • user

        Username

      • password

        Administrative password

      GET
      /usage/day/:day
      {
        "apis": [
          {
            "name": "Weather API",
            "hits": 156
          },
          {
            "name": "Map API",
            "hits": 2
          },
          {
            "name": "Administrative",
            "hits": 0
          }
        ],
        "hits": 158
      }