{"openapi":"3.1.2","info":{"title":"meteoblue Domains API","description":"# Overview\n\nThe meteoblue Domains API provides access to the list of\navailable weather model domains supported across meteoblue APIs. It\nenables developers to discover valid domain identifiers that can be\nused when requesting model-specific weather data, hecking geographic\navailability and identifying domains for multimodel requests.","version":"1.0.0","x-logo":{"url":"https://static.meteoblue.com/assets/images/logo/meteoblue_logo_v2.0.png","backgroundColor":"hsl(210deg, 40%, 98%)","altText":"meteoblue","href":"https://docs.meteoblue.com/en/weather-apis/introduction/overview"}},"tags":[{"name":"Domains API"}],"servers":[{"url":"https://my.meteoblue.com"}],"security":[{"apikey":[]}],"paths":{"/meta/domains/fullList":{"parameters":[{"name":"lat","in":"query","schema":{"type":"number","description":"A Latitude value in degrees (WGS 84) between `-90.0` and `90.0`.","examples":[47.5596],"maximum":90.0,"minimum":-90.0},"description":"The latitude for the location of interest."},{"name":"lon","in":"query","schema":{"type":"number","description":"A Longitude value in degrees (WGS 84) between `-180.0` and `180.0`.","examples":[7.5886],"maximum":180.0,"minimum":-180.0},"description":"The longitude for the location of interest."}],"get":{"tags":["Domains API"],"summary":"Get All Domains","description":"Retrieves the complete list of weather model domains supported\nby meteoblue APIs. The response includes all available domain\nidentifiers and related metadata that can be used to request\nmodel-specific weather data.\n\nWhen coordinates are provided, the response indicates whether\neach domain is available at that location.","responses":{"200":{"description":"OK","headers":{"MB-Credits-Accounted":{"$ref":"#/components/headers/accounting-header"}},"content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","description":"Designation of the domain.","examples":["NEMSGLOBAL"],"minLength":1},"temporalResolution":{"type":"string","enum":["static","none","1min","5min","10min","15min","30min","hourly","3hourly","6hourly","halfDay","daily","7 days","weekly52","monthly","yearly","total"],"description":"Interval between timesteps."},"spatialResolution":{"type":"string","description":"Size of grid cells in kilometres.","examples":["30.0 km"],"minLength":1},"historyDataStart":{"type":"string","description":"First timestep for which historical data is available.","examples":["20181231T2359"],"pattern":"\\d\\d\\d\\d\\d\\d\\d\\dT\\d\\d\\d\\d"},"historyDataFinalRun":{"type":"string","description":"Last model run (only for discontinued domains)","examples":["20181231T2359"],"pattern":"\\d\\d\\d\\d\\d\\d\\d\\dT\\d\\d\\d\\d"},"modelInit":{"type":"string","description":"Most recent model run's initialisation time.","examples":["20181231T2359"],"pattern":"\\d\\d\\d\\d\\d\\d\\d\\dT\\d\\d\\d\\d"},"modelName":{"type":"string","description":"Designation of the model.","examples":["NEMS-30"],"minLength":1},"updateTimeUtc":{"type":"integer","description":"Most recent update in Coordinated Universal Time."},"firstForecastHourUtc":{"type":"integer","description":"Most recent update's first timestep."},"lastForecastHourUtc":{"type":"integer","description":"Most recent update's last timestep."},"region":{"type":"string","description":"Name of the area for which this domain is available.","examples":["Global"],"minLength":1},"source":{"type":"string","description":"Designation of the domain's provider.","examples":["meteoblue"],"minLength":1},"sourceUrl":{"type":"string","description":"URL to the website of the domain's provider.","examples":["https://www.meteoblue.com/"],"minLength":1},"modelColor":{"type":"string","description":"Model's color in the MultiModel display.","examples":["#53ad38"],"minLength":1},"updateFrequencyInSeconds":{"type":"integer","description":"Interval between updates."},"gridPoint":{"type":"integer"}},"required":["name","temporalResolution","spatialResolution","historyDataStart","modelName","region","source","sourceUrl","modelColor"]},"minItems":1}}}},"400":{"$ref":"#/components/responses/error-response","description":"Bad Request"},"401":{"$ref":"#/components/responses/error-response","description":"Unauthorized"},"403":{"$ref":"#/components/responses/error-response","description":"Forbidden"},"429":{"$ref":"#/components/responses/error-response","description":"Too Many Requests"}},"x-codeSamples":[{"lang":"JavaScript","source":"fetch(\"https://my.meteoblue.com/meta/domains/fullList?apikey=YOUR_APIKEY\")\n.then(res => res.json())\n.then(console.log);"},{"lang":"Python","source":"import requests\n\nurl = f\"https://my.meteoblue.com/meta/domains/fullList?apikey=YOUR_APIKEY\"\nresponse = requests.get(url)\nprint(response.json())"},{"lang":"Shell","source":"curl \"https://my.meteoblue.com/meta/domains/fullList?apikey=YOUR_APIKEY\""},{"lang":"Java","source":"import java.net.*;\nimport java.io.*;\n\npublic class Main {\n    public static void main(String[] args) throws Exception {\n        String url = \"https://my.meteoblue.com/meta/domains/fullList?apikey=YOUR_APIKEY\";\n        HttpURLConnection conn = (HttpURLConnection) new URL(url).openConnection();\n        conn.setRequestMethod(\"GET\");\n\n        try (BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream()))) {\n            String line;\n            while ((line = in.readLine()) != null) {\n                System.out.println(line);\n            }\n        }\n    }\n}"}]}},"/meta/domains/select":{"parameters":[{"name":"domain","in":"query","required":true,"schema":{"type":"string","examples":["NEMSGLOBAL"],"minLength":1},"description":"Domain to retrieve data from."}],"get":{"tags":["Domains API"],"summary":"Get Domain Details","description":"Retrieves detailed information for a specific weather model\ndomain identified by its ID. Use this endpoint to obtain\nmetadata for a single domain when validating or configuring\nmodel-specific API requests.","responses":{"200":{"description":"OK","headers":{"MB-Credits-Accounted":{"$ref":"#/components/headers/accounting-header"}},"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","description":"Designation of the domain.","examples":["NEMSGLOBAL"],"minLength":1},"temporalResolution":{"type":"string","enum":["static","none","1min","5min","10min","15min","30min","hourly","3hourly","6hourly","halfDay","daily","7 days","weekly52","monthly","yearly","total"],"description":"Interval between timesteps."},"spatialResolution":{"type":"string","description":"Size of grid cells in kilometres.","examples":["30.0 km"],"minLength":1},"historyDataStart":{"type":"string","description":"First timestep for which historical data is available.","examples":["20181231T2359"],"pattern":"\\d\\d\\d\\d\\d\\d\\d\\dT\\d\\d\\d\\d"},"historyDataFinalRun":{"type":"string","description":"Last model run (only for discontinued domains)","examples":["20181231T2359"],"pattern":"\\d\\d\\d\\d\\d\\d\\d\\dT\\d\\d\\d\\d"},"modelInit":{"type":"string","description":"Most recent model run's initialisation time.","examples":["20181231T2359"],"pattern":"\\d\\d\\d\\d\\d\\d\\d\\dT\\d\\d\\d\\d"},"modelName":{"type":"string","description":"Designation of the model.","examples":["NEMS-30"],"minLength":1},"updateTimeUtc":{"type":"integer","description":"Most recent update in Coordinated Universal Time."},"firstForecastHourUtc":{"type":"integer","description":"Most recent update's first timestep."},"lastForecastHourUtc":{"type":"integer","description":"Most recent update's last timestep."},"region":{"type":"string","description":"Name of the area for which this domain is available.","examples":["Global"],"minLength":1},"source":{"type":"string","description":"Designation of the domain's provider.","examples":["meteoblue"],"minLength":1},"sourceUrl":{"type":"string","description":"URL to the website of the domain's provider.","examples":["https://www.meteoblue.com/"],"minLength":1},"modelColor":{"type":"string","description":"Model's color in the MultiModel display.","examples":["#53ad38"],"minLength":1},"updateFrequencyInSeconds":{"type":"integer","description":"Interval between updates."},"gridPoint":{"type":"integer"}},"required":["name","temporalResolution","spatialResolution","historyDataStart","modelName","region","source","sourceUrl","modelColor"]}}}},"400":{"$ref":"#/components/responses/error-response","description":"Bad Request"},"401":{"$ref":"#/components/responses/error-response","description":"Unauthorized"},"403":{"$ref":"#/components/responses/error-response","description":"Forbidden"},"429":{"$ref":"#/components/responses/error-response","description":"Too Many Requests"}},"x-codeSamples":[{"lang":"JavaScript","source":"fetch(\"https://my.meteoblue.com/meta/domains/select?domain=NEMSGLOBAL&apikey=YOUR_APIKEY\")\n.then(res => res.json())\n.then(console.log);"},{"lang":"Python","source":"import requests\n\nurl = f\"https://my.meteoblue.com/meta/domains/select?domain=NEMSGLOBAL&apikey=YOUR_APIKEY\"\nresponse = requests.get(url)\nprint(response.json())"},{"lang":"Shell","source":"curl \"https://my.meteoblue.com/meta/domains/select?domain=NEMSGLOBAL&apikey=YOUR_APIKEY\""},{"lang":"Java","source":"import java.net.*;\nimport java.io.*;\n\npublic class Main {\n    public static void main(String[] args) throws Exception {\n        String url = \"https://my.meteoblue.com/meta/domains/select?domain=NEMSGLOBAL&apikey=YOUR_APIKEY\";\n        HttpURLConnection conn = (HttpURLConnection) new URL(url).openConnection();\n        conn.setRequestMethod(\"GET\");\n\n        try (BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream()))) {\n            String line;\n            while ((line = in.readLine()) != null) {\n                System.out.println(line);\n            }\n        }\n    }\n}"}]}},"/meta/domains/multimodel":{"parameters":[{"name":"lat","in":"query","required":true,"schema":{"type":"number","description":"A Latitude value in degrees (WGS 84) between `-90.0` and `90.0`.","examples":[47.5596],"maximum":90.0,"minimum":-90.0},"description":"The latitude for the location of interest."},{"name":"lon","in":"query","required":true,"schema":{"type":"number","description":"A Longitude value in degrees (WGS 84) between `-180.0` and `180.0`.","examples":[7.5886],"maximum":180.0,"minimum":-180.0},"description":"The longitude for the location of interest."}],"get":{"tags":["Domains API"],"summary":"Get Multimodel Domains","description":"Retrieves the list of weather model domains available for\nmultimodel forecast requests for the provided coordinates. The\nresponse identifies the domains that can be used with\nmeteoblue's multimodel forecasting capabilities.","responses":{"200":{"description":"OK","headers":{"MB-Credits-Accounted":{"$ref":"#/components/headers/accounting-header"}},"content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","description":"Designation of the domain.","examples":["NEMSGLOBAL"],"minLength":1},"temporalResolution":{"type":"string","enum":["static","none","1min","5min","10min","15min","30min","hourly","3hourly","6hourly","halfDay","daily","7 days","weekly52","monthly","yearly","total"],"description":"Interval between timesteps."},"spatialResolution":{"type":"string","description":"Size of grid cells in kilometres.","examples":["30.0 km"],"minLength":1},"historyDataStart":{"type":"string","description":"First timestep for which historical data is available.","examples":["20181231T2359"],"pattern":"\\d\\d\\d\\d\\d\\d\\d\\dT\\d\\d\\d\\d"},"historyDataFinalRun":{"type":"string","description":"Last model run (only for discontinued domains)","examples":["20181231T2359"],"pattern":"\\d\\d\\d\\d\\d\\d\\d\\dT\\d\\d\\d\\d"},"modelInit":{"type":"string","description":"Most recent model run's initialisation time.","examples":["20181231T2359"],"pattern":"\\d\\d\\d\\d\\d\\d\\d\\dT\\d\\d\\d\\d"},"modelName":{"type":"string","description":"Designation of the model.","examples":["NEMS-30"],"minLength":1},"updateTimeUtc":{"type":"integer","description":"Most recent update in Coordinated Universal Time."},"supportsSounding":{"type":"boolean","description":"Whether this domain can provide sounding data."},"supportsMultimodel":{"type":"boolean","description":"Whether this domain can be used as part of a MultiModel."},"availableAtPoint":{"type":"boolean","description":"Whether this domain is available at specified coordinates."},"firstForecastHourUtc":{"type":"integer","description":"Most recent update's first timestep."},"lastForecastHourUtc":{"type":"integer","description":"Most recent update's last timestep."},"region":{"type":"string","description":"Name of the area for which this domain is available.","examples":["Global"],"minLength":1},"source":{"type":"string","description":"Designation of the domain's provider.","examples":["meteoblue"],"minLength":1},"sourceUrl":{"type":"string","description":"URL to the website of the domain's provider.","examples":["https://www.meteoblue.com/"],"minLength":1},"modelColor":{"type":"string","description":"Model's color in the MultiModel display.","examples":["#53ad38"],"minLength":1},"updateFrequencyInSeconds":{"type":"integer","description":"Interval between updates."},"gridPoint":{"type":"integer"}},"required":["name","temporalResolution","spatialResolution","historyDataStart","modelName","region","source","sourceUrl","modelColor"]},"minItems":1}}}},"400":{"$ref":"#/components/responses/error-response","description":"Bad Request"},"401":{"$ref":"#/components/responses/error-response","description":"Unauthorized"},"403":{"$ref":"#/components/responses/error-response","description":"Forbidden"},"429":{"$ref":"#/components/responses/error-response","description":"Too Many Requests"}},"x-codeSamples":[{"lang":"JavaScript","source":"fetch(\"https://my.meteoblue.com/meta/domains/multimodel?lat=45&lon=8&apikey=YOUR_APIKEY\")\n.then(res => res.json())\n.then(console.log);"},{"lang":"Python","source":"import requests\n\nurl = f\"https://my.meteoblue.com/meta/domains/multimodel?lat=45&lon=8&apikey=YOUR_APIKEY\"\nresponse = requests.get(url)\nprint(response.json())"},{"lang":"Shell","source":"curl \"https://my.meteoblue.com/meta/domains/multimodel?lat=45&lon=8&apikey=YOUR_APIKEY\""},{"lang":"Java","source":"import java.net.*;\nimport java.io.*;\n\npublic class Main {\n    public static void main(String[] args) throws Exception {\n        String url = \"https://my.meteoblue.com/meta/domains/multimodel?lat=45&lon=8&apikey=YOUR_APIKEY\";\n        HttpURLConnection conn = (HttpURLConnection) new URL(url).openConnection();\n        conn.setRequestMethod(\"GET\");\n\n        try (BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream()))) {\n            String line;\n            while ((line = in.readLine()) != null) {\n                System.out.println(line);\n            }\n        }\n    }\n}"}]}}},"components":{"responses":{"error-response":{"description":"Error","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"boolean","const":true,"description":"Flag indicating that an error has occurred."},"error_message":{"type":"string","description":"Message describing the error."}},"required":["error","error_message"]},"examples":{"Error Message Example":{"summary":"Example Error","description":"Example of a possible error message","value":{"error":true,"error_message":"Message describing the error."}}}}}}},"headers":{"accounting-header":{"schema":{"type":"integer","examples":[0],"minimum":0},"description":"The total number of credits which were accounted from the user of the apikey for the made request."}},"securitySchemes":{"apikey":{"description":"A meteoblue API access key","type":"apiKey","name":"apikey","in":"query"}}}}