Żądanie danych pogodowych w czasie rzeczywistym i prognozowanych przy użyciu usług pogodowych Azure Maps

Azure Maps Usługi pogodowe to zestaw interfejsów API RESTful, które umożliwiają deweloperom integrację wysoce dynamicznych danych historycznych, w czasie rzeczywistym oraz prognozowanych danych pogodowych i wizualizacji w swoich rozwiązaniach.

W tym artykule pokazano, jak zażądać zarówno danych pogodowych w czasie rzeczywistym, jak i prognozowanych:

Ten film wideo zawiera przykłady wykonywania wywołań REST w usłudze Azure Maps Weather Services.



Wymagania wstępne

W tym samouczku jest używana aplikacja Postman , ale możesz wybrać inne środowisko deweloperskie interfejsu API.

Żądanie danych pogodowych w czasie rzeczywistym

Interfejs API Get Current Conditions zwraca szczegółowe warunki pogodowe, takie jak opady, temperatura i wiatr dla danej lokalizacji współrzędnych. Ponadto można pobrać obserwacje z ostatnich 6 lub 24 godzin dla określonej lokalizacji. Odpowiedź zawiera szczegółowe informacje, takie jak data i godzina obserwacji, opis warunków pogodowych, ikona pogody, flagi wskaźnika opadów i temperatura. Zwracany jest również indeks Temperatury RealFeel™ i ultrafioletu (UV).

W tym przykładzie użyjesz interfejsu API Pobierz bieżące warunki , aby pobrać bieżące warunki pogodowe na współrzędnych znajdujących się w Seattle w usłudze WA.

  1. Otwórz aplikację Postman. Wybierz pozycję Nowy , aby utworzyć żądanie. W oknie Tworzenie nowego wybierz pozycję Żądanie HTTP. Wprowadź nazwę żądania dla żądania.

  2. Wybierz metodę GET HTTP na karcie konstruktora i wprowadź następujący adres URL. W przypadku tego żądania i innych żądań wymienionych w tym artykule zastąp ciąg {Your-Azure-Maps-Subscription-key} kluczem subskrypcji Azure Maps.

    https://atlas.microsoft.com/weather/currentConditions/json?api-version=1.0&query=47.60357,-122.32945&subscription-key={Your-Azure-Maps-Subscription-key}
    
  3. Wybierz niebieski przycisk Wyślij . Treść odpowiedzi zawiera bieżące informacje o pogodzie.

    {
    "results": [
        {
            "dateTime": "2020-10-19T20:39:00+00:00",
            "phrase": "Cloudy",
            "iconCode": 7,
            "hasPrecipitation": false,
            "isDayTime": true,
            "temperature": {
                "value": 12.4,
                "unit": "C",
                "unitType": 17
            },
            "realFeelTemperature": {
                "value": 13.7,
                "unit": "C",
                "unitType": 17
            },
            "realFeelTemperatureShade": {
                "value": 13.7,
                "unit": "C",
                "unitType": 17
            },
            "relativeHumidity": 87,
            "dewPoint": {
                "value": 10.3,
                "unit": "C",
                "unitType": 17
            },
            "wind": {
                "direction": {
                    "degrees": 23.0,
                    "localizedDescription": "NNE"
                },
                "speed": {
                    "value": 4.5,
                    "unit": "km/h",
                    "unitType": 7
                }
            },
            "windGust": {
                "speed": {
                    "value": 9.0,
                    "unit": "km/h",
                    "unitType": 7
                }
            },
            "uvIndex": 1,
            "uvIndexPhrase": "Low",
            "visibility": {
                "value": 9.7,
                "unit": "km",
                "unitType": 6
            },
            "obstructionsToVisibility": "",
            "cloudCover": 100,
            "ceiling": {
                "value": 1494.0,
                "unit": "m",
                "unitType": 5
            },
            "pressure": {
                "value": 1021.2,
                "unit": "mb",
                "unitType": 14
            },
            "pressureTendency": {
                "localizedDescription": "Steady",
                "code": "S"
            },
            "past24HourTemperatureDeparture": {
                "value": -2.1,
                "unit": "C",
                "unitType": 17
            },
            "apparentTemperature": {
                "value": 15.0,
                "unit": "C",
                "unitType": 17
            },
            "windChillTemperature": {
                "value": 12.2,
                "unit": "C",
                "unitType": 17
            },
            "wetBulbTemperature": {
                "value": 11.3,
                "unit": "C",
                "unitType": 17
            },
            "precipitationSummary": {
                "pastHour": {
                    "value": 0.0,
                    "unit": "mm",
                    "unitType": 3
                },
                "past3Hours": {
                    "value": 0.0,
                    "unit": "mm",
                    "unitType": 3
                },
                "past6Hours": {
                    "value": 0.0,
                    "unit": "mm",
                    "unitType": 3
                },
                "past9Hours": {
                    "value": 0.0,
                    "unit": "mm",
                    "unitType": 3
                },
                "past12Hours": {
                    "value": 0.0,
                    "unit": "mm",
                    "unitType": 3
                },
                "past18Hours": {
                    "value": 0.0,
                    "unit": "mm",
                    "unitType": 3
                },
                "past24Hours": {
                    "value": 0.4,
                    "unit": "mm",
                    "unitType": 3
                }
            },
            "temperatureSummary": {
                "past6Hours": {
                    "minimum": {
                        "value": 12.2,
                        "unit": "C",
                        "unitType": 17
                    },
                    "maximum": {
                        "value": 14.0,
                        "unit": "C",
                        "unitType": 17
                    }
                },
                "past12Hours": {
                    "minimum": {
                        "value": 12.2,
                        "unit": "C",
                        "unitType": 17
                    },
                    "maximum": {
                        "value": 14.0,
                        "unit": "C",
                        "unitType": 17
                    }
                },
                "past24Hours": {
                    "minimum": {
                        "value": 12.2,
                        "unit": "C",
                        "unitType": 17
                    },
                    "maximum": {
                        "value": 15.6,
                        "unit": "C",
                        "unitType": 17
                    }
                }
            }
        }
    ]
    }
    

Żądanie poważnych alertów pogodowych

Azure Maps Interfejs API Uzyskiwanie poważnych alertów pogodowych zwraca poważne alerty pogodowe dostępne na całym świecie zarówno z oficjalnych rządowych agencji meteorologicznych, jak i wiodących globalnych dla regionalnych dostawców alertów pogodowych. Usługa zwraca szczegóły, takie jak typ alertu, kategoria, poziom. Usługa zwraca również szczegółowe opisy dotyczące aktywnych poważnych alertów dla żądanej lokalizacji, takich jak huragany, burze, pioruny, fale upałów lub pożary lasów. Na przykład menedżerowie logistyki mogą wizualizować poważne warunki pogodowe na mapie wraz z lokalizacjami biznesowymi i planowanymi trasami oraz koordynować dalsze działania z kierowcami i lokalnymi pracownikami.

W tym przykładzie użyjesz interfejsu API Get Severe Weather Alerts (Uzyskiwanie poważnych alertów pogodowych), aby pobrać bieżące warunki pogodowe na współrzędnych znajdujących się w Cheyenne w stanie WY.

Uwaga

W tym przykładzie są pobierane poważne alerty pogodowe w momencie pisania tego artykułu. Prawdopodobnie nie ma już żadnych poważnych alertów pogodowych w żądanej lokalizacji. Aby pobrać rzeczywiste poważne dane alertów podczas uruchamiania tego przykładu, musisz pobrać dane w innej lokalizacji współrzędnej.

  1. W aplikacji Postman wybierz pozycję Nowy , aby utworzyć żądanie. W oknie Tworzenie nowego wybierz pozycję Żądanie HTTP. Wprowadź nazwę żądania dla żądania.

  2. Wybierz metodę GET HTTP na karcie konstruktora i wprowadź następujący adres URL. W przypadku tego żądania i innych żądań wymienionych w tym artykule zastąp ciąg {Your-Azure-Maps-Subscription-key} kluczem subskrypcji Azure Maps.

    https://atlas.microsoft.com/weather/severe/alerts/json?api-version=1.0&query=41.161079,-104.805450&subscription-key={Your-Azure-Maps-Subscription-key}
    
  3. Wybierz niebieski przycisk Wyślij . Jeśli nie ma poważnych alertów pogodowych, treść odpowiedzi zawiera pustą results[] tablicę. Jeśli istnieją poważne alerty pogodowe, treść odpowiedzi zawiera odpowiedź podobną do następującej odpowiedzi JSON:

    {
    "results": [
        {
            "countryCode": "US",
            "alertId": 2194734,
            "description": {
                "localized": "Red Flag Warning",
                "english": "Red Flag Warning"
            },
            "category": "FIRE",
            "priority": 54,
            "source": "U.S. National Weather Service",
            "sourceId": 2,
            "alertAreas": [
                {
                    "name": "Platte/Goshen/Central and Eastern Laramie",
                    "summary": "Red Flag Warning in effect until 7:00 PM MDT.  Source: U.S. National Weather Service",
                    "startTime": "2020-10-05T15:00:00+00:00",
                    "endTime": "2020-10-06T01:00:00+00:00",
                    "latestStatus": {
                        "localized": "Continue",
                        "english": "Continue"
                    },
                    "alertDetails": "...RED FLAG WARNING REMAINS IN EFFECT FROM 9 AM THIS MORNING TO\n7 PM MDT THIS EVENING FOR STRONG GUSTY WINDS AND LOW HUMIDITY...\n\n* WHERE...Fire weather zones 303, 304, 305, 306, 307, 308, 309,\n  and 310 in southeast Wyoming. Fire weather zone 313 in Nebraska.\n\n* WIND...West to northwest 15 to 30 MPH with gusts around 40 MPH.\n\n* HUMIDITY...10 to 15 percent.\n\n* IMPACTS...Any fires that develop will likely spread rapidly.\n  Outdoor burning is not recommended.\n\nPRECAUTIONARY/PREPAREDNESS ACTIONS...\n\nA Red Flag Warning means that critical fire weather conditions\nare either occurring now...or will shortly. A combination of\nstrong winds...low relative humidity...and warm temperatures can\ncontribute to extreme fire behavior.\n\n&&",
                    "alertDetailsLanguageCode": "en"
                }
            ]
            },...
        ]
    }
    

Żądanie codziennych danych prognozy pogody

Interfejs API Get Daily Forecast zwraca szczegółową prognozę pogody dziennej, taką jak temperatura i wiatr. Żądanie może określić liczbę dni do zwrócenia: 1, 5, 10, 15, 25 lub 45 dni dla danej lokalizacji współrzędnej. Odpowiedź zawiera szczegółowe informacje, takie jak temperatura, wiatr, opady, jakość powietrza i indeks UV. W tym przykładzie żądamy przez pięć dni, ustawiając wartość duration=5.

Ważne

W warstwie cenowej S0 możesz zażądać dziennej prognozy dla następnych 1, 5, 10 i 15 dni. W warstwie cenowej Gen1 (S1) lub Gen2 możesz zażądać prognozy dziennej przez następne 25 dni i 45 dni.

wycofanie warstwy cenowej Azure Maps Gen1

Warstwa cenowa Gen1 jest teraz przestarzała i zostanie wycofana w dniu 9/15/26. Warstwa cenowa Gen2 zastępuje warstwę cenową Gen1 (zarówno S0, jak i S1). Jeśli konto Azure Maps ma wybraną warstwę cenową Gen1, możesz przełączyć się na cennik gen2 przed wycofaniem, w przeciwnym razie zostanie automatycznie zaktualizowany. Aby uzyskać więcej informacji, zobacz Zarządzanie warstwą cenową konta Azure Maps.

W tym przykładzie użyjesz interfejsu API Get Daily Forecast, aby pobrać pięciodniową prognozę pogody dla współrzędnych znajdujących się w Seattle, WA.

  1. W aplikacji Postman wybierz pozycję Nowy , aby utworzyć żądanie. W oknie Tworzenie nowego wybierz pozycję Żądanie HTTP. Wprowadź nazwę żądania dla żądania.

  2. Wybierz metodę GET HTTP na karcie konstruktora i wprowadź następujący adres URL. W przypadku tego żądania i innych żądań wymienionych w tym artykule zastąp ciąg {Your-Azure-Maps-Subscription-key} kluczem subskrypcji Azure Maps.

    https://atlas.microsoft.com/weather/forecast/daily/json?api-version=1.0&query=47.60357,-122.32945&duration=5&subscription-key={Your-Azure-Maps-Subscription-key}
    
  3. Wybierz niebieski przycisk Wyślij . Treść odpowiedzi zawiera pięciodniowe dane prognozy pogody. Ze względu na zwięzłość następująca odpowiedź JSON pokazuje prognozę pierwszego dnia.

    {
    "summary": {
        "startDate": "2020-10-18T17:00:00+00:00",
        "endDate": "2020-10-19T23:00:00+00:00",
        "severity": 2,
        "phrase": "Snow, mixed with rain at times continuing through Monday evening and a storm total of 3-6 cm",
        "category": "snow/rain"
    },
    "forecasts": [
        {
            "date": "2020-10-19T04:00:00+00:00",
            "temperature": {
                "minimum": {
                    "value": -1.1,
                    "unit": "C",
                    "unitType": 17
                },
                "maximum": {
                    "value": 1.3,
                    "unit": "C",
                    "unitType": 17
                }
            },
            "realFeelTemperature": {
                "minimum": {
                    "value": -6.0,
                    "unit": "C",
                    "unitType": 17
                },
                "maximum": {
                    "value": 0.5,
                    "unit": "C",
                    "unitType": 17
                }
            },
            "realFeelTemperatureShade": {
                "minimum": {
                    "value": -6.0,
                    "unit": "C",
                    "unitType": 17
                },
                "maximum": {
                    "value": 0.7,
                    "unit": "C",
                    "unitType": 17
                }
            },
            "hoursOfSun": 1.8,
            "degreeDaySummary": {
                "heating": {
                    "value": 18.0,
                    "unit": "C",
                    "unitType": 17
                },
                "cooling": {
                    "value": 0.0,
                    "unit": "C",
                    "unitType": 17
                }
            },
            "airAndPollen": [
                {
                    "name": "AirQuality",
                    "value": 23,
                    "category": "Good",
                    "categoryValue": 1,
                    "type": "Ozone"
                },
                {
                    "name": "Grass",
                    "value": 0,
                    "category": "Low",
                    "categoryValue": 1
                },
                {
                    "name": "Mold",
                    "value": 0,
                    "category": "Low",
                    "categoryValue": 1
                },
                {
                    "name": "Ragweed",
                    "value": 0,
                    "category": "Low",
                    "categoryValue": 1
                },
                {
                    "name": "Tree",
                    "value": 0,
                    "category": "Low",
                    "categoryValue": 1
                },
                {
                    "name": "UVIndex",
                    "value": 0,
                    "category": "Low",
                    "categoryValue": 1
                }
            ],
            "day": {
                "iconCode": 22,
                "iconPhrase": "Snow",
                "hasPrecipitation": true,
                "precipitationType": "Mixed",
                "precipitationIntensity": "Light",
                "shortPhrase": "Chilly with snow, 2-4 cm",
                "longPhrase": "Chilly with snow, accumulating an additional 2-4 cm",
                "precipitationProbability": 90,
                "thunderstormProbability": 0,
                "rainProbability": 54,
                "snowProbability": 85,
                "iceProbability": 8,
                "wind": {
                    "direction": {
                        "degrees": 36.0,
                        "localizedDescription": "NE"
                    },
                    "speed": {
                        "value": 9.3,
                        "unit": "km/h",
                        "unitType": 7
                    }
                },
                "windGust": {
                    "direction": {
                        "degrees": 70.0,
                        "localizedDescription": "ENE"
                    },
                    "speed": {
                        "value": 25.9,
                        "unit": "km/h",
                        "unitType": 7
                    }
                },
                "totalLiquid": {
                    "value": 4.3,
                    "unit": "mm",
                    "unitType": 3
                },
                "rain": {
                    "value": 0.5,
                    "unit": "mm",
                    "unitType": 3
                },
                "snow": {
                    "value": 2.72,
                    "unit": "cm",
                    "unitType": 4
                },
                "ice": {
                    "value": 0.0,
                    "unit": "mm",
                    "unitType": 3
                },
                "hoursOfPrecipitation": 9.0,
                "hoursOfRain": 1.0,
                "hoursOfSnow": 9.0,
                "hoursOfIce": 0.0,
                "cloudCover": 96
            },
            "night": {
                "iconCode": 29,
                "iconPhrase": "Rain and snow",
                "hasPrecipitation": true,
                "precipitationType": "Mixed",
                "precipitationIntensity": "Light",
                "shortPhrase": "Showers of rain and snow",
                "longPhrase": "A couple of showers of rain or snow this evening; otherwise, cloudy; storm total snowfall 1-3 cm",
                "precipitationProbability": 65,
                "thunderstormProbability": 0,
                "rainProbability": 60,
                "snowProbability": 54,
                "iceProbability": 4,
                "wind": {
                    "direction": {
                        "degrees": 16.0,
                        "localizedDescription": "NNE"
                    },
                    "speed": {
                        "value": 16.7,
                        "unit": "km/h",
                        "unitType": 7
                    }
                },
                "windGust": {
                    "direction": {
                        "degrees": 1.0,
                        "localizedDescription": "N"
                    },
                    "speed": {
                        "value": 35.2,
                        "unit": "km/h",
                        "unitType": 7
                    }
                },
                "totalLiquid": {
                    "value": 4.3,
                    "unit": "mm",
                    "unitType": 3
                },
                "rain": {
                    "value": 3.0,
                    "unit": "mm",
                    "unitType": 3
                },
                "snow": {
                    "value": 0.79,
                    "unit": "cm",
                    "unitType": 4
                },
                "ice": {
                    "value": 0.0,
                    "unit": "mm",
                    "unitType": 3
                },
                "hoursOfPrecipitation": 4.0,
                "hoursOfRain": 1.0,
                "hoursOfSnow": 3.0,
                "hoursOfIce": 0.0,
                "cloudCover": 94
            },
            "sources": [
                "AccuWeather"
            ]
        },...
    ]
    }
    

Żądanie danych prognozy pogody godzinowej

Interfejs API Get Hourly Forecast zwraca szczegółową prognozę pogody według godziny dla następnych 1, 12, 24 (1 dzień), 72 (3 dni), 120 (5 dni) i 240 godzin (10 dni) dla danej lokalizacji współrzędnych. Interfejs API zwraca szczegóły, takie jak temperatura, wilgotność, wiatr, opady i indeks UV.

Ważne

W warstwie cenowej Gen1 (S0) możesz zażądać prognozy godzinowej dla następnych 1, 12, 24 godzin (1 dzień) i 72 godzin (3 dni). W warstwie cenowej Gen1 (S1) lub Gen2 możesz zażądać prognozy godzinowej dla następnych 120 (5 dni) i 240 godzin (10 dni).

W tym przykładzie użyjesz interfejsu API Pobierz prognozę godzinną , aby pobrać prognozę pogody godzinowej dla najbliższych 12 godzin na współrzędnych znajdujących się w Seattle, WA.

  1. W aplikacji Postman wybierz pozycję Nowy , aby utworzyć żądanie. W oknie Tworzenie nowego wybierz pozycję Żądanie HTTP. Wprowadź nazwę żądania dla żądania.

  2. Wybierz metodę GET HTTP na karcie konstruktora i wprowadź następujący adres URL. W przypadku tego żądania i innych żądań wymienionych w tym artykule zastąp ciąg {Your-Azure-Maps-Subscription-key} kluczem subskrypcji Azure Maps.

    https://atlas.microsoft.com/weather/forecast/hourly/json?api-version=1.0&query=47.60357,-122.32945&duration=12&subscription-key={Your-Azure-Maps-Subscription-key}
    
  3. Wybierz niebieski przycisk Wyślij . Treść odpowiedzi zawiera dane prognozy pogody w ciągu najbliższych 12 godzin. Ze względu na zwięzłość następująca odpowiedź JSON pokazuje prognozę na pierwszą godzinę.

    {
    "forecasts": [
        {
            "date": "2020-10-19T21:00:00+00:00",
            "iconCode": 12,
            "iconPhrase": "Showers",
            "hasPrecipitation": true,
            "precipitationType": "Rain",
            "precipitationIntensity": "Light",
            "isDaylight": true,
            "temperature": {
                "value": 14.7,
                "unit": "C",
                "unitType": 17
            },
            "realFeelTemperature": {
                "value": 13.3,
                "unit": "C",
                "unitType": 17
            },
            "wetBulbTemperature": {
                "value": 12.0,
                "unit": "C",
                "unitType": 17
            },
            "dewPoint": {
                "value": 9.5,
                "unit": "C",
                "unitType": 17
            },
            "wind": {
                "direction": {
                    "degrees": 242.0,
                    "localizedDescription": "WSW"
                },
                "speed": {
                    "value": 9.3,
                    "unit": "km/h",
                    "unitType": 7
                }
            },
            "windGust": {
                "speed": {
                    "value": 14.8,
                    "unit": "km/h",
                    "unitType": 7
                }
            },
            "relativeHumidity": 71,
            "visibility": {
                "value": 9.7,
                "unit": "km",
                "unitType": 6
            },
            "cloudCover": 100,
            "ceiling": {
                "value": 1128.0,
                "unit": "m",
                "unitType": 5
            },
            "uvIndex": 1,
            "uvIndexPhrase": "Low",
            "precipitationProbability": 51,
            "rainProbability": 51,
            "snowProbability": 0,
            "iceProbability": 0,
            "totalLiquid": {
                "value": 0.3,
                "unit": "mm",
                "unitType": 3
            },
            "rain": {
                "value": 0.3,
                "unit": "mm",
                "unitType": 3
            },
            "snow": {
                "value": 0.0,
                "unit": "cm",
                "unitType": 4
            },
            "ice": {
                "value": 0.0,
                "unit": "mm",
                "unitType": 3
            }
        }...
    ]
    }
    

Żądanie danych prognozy pogody minutowo-minutowej

Interfejs API prognozy get minute zwraca prognozy minut po minutach dla danej lokalizacji przez następne 120 minut. Użytkownicy mogą żądać prognoz pogody w odstępach 1, 5 i 15 minut. Odpowiedź zawiera szczegółowe informacje, takie jak typ opadów (w tym deszcz, śnieg lub mieszanka obu), godzina rozpoczęcia i wartość intensywności opadów (dBZ).

W tym przykładzie użyjesz interfejsu API prognozy minuty , aby pobrać prognozę pogody minut po minucie na współrzędnych znajdujących się w Seattle, WA. Prognoza pogody jest podawana przez następne 120 minut. Nasze zapytanie żąda, że prognoza jest podawana w 15-minutowych odstępach czasu, ale można dostosować parametr do wartości 1 lub 5 minut.

  1. W aplikacji Postman wybierz pozycję Nowy , aby utworzyć żądanie. W oknie Tworzenie nowego wybierz pozycję Żądanie HTTP. Wprowadź nazwę żądania dla żądania.

  2. Wybierz metodę GET HTTP na karcie konstruktora i wprowadź następujący adres URL. W przypadku tego żądania i innych żądań wymienionych w tym artykule zastąp ciąg {Your-Azure-Maps-Subscription-key} kluczem subskrypcji Azure Maps.

    https://atlas.microsoft.com/weather/forecast/minute/json?api-version=1.0&query=47.60357,-122.32945&interval=15&subscription-key={Your-Azure-Maps-Subscription-key}
    
  3. Wybierz niebieski przycisk Wyślij . Treść odpowiedzi zawiera dane prognozy pogody w ciągu najbliższych 120 minut w 15-minutowych odstępach czasu.

    {
    "summary": {
        "briefPhrase60": "No precipitation for at least 60 min",
        "shortPhrase": "No precip for 120 min",
        "briefPhrase": "No precipitation for at least 120 min",
        "longPhrase": "No precipitation for at least 120 min",
        "iconCode": 7
    },
    "intervalSummaries": [
        {
            "startMinute": 0,
            "endMinute": 119,
            "totalMinutes": 120,
            "shortPhrase": "No precip for %MINUTE_VALUE min",
            "briefPhrase": "No precipitation for at least %MINUTE_VALUE min",
            "longPhrase": "No precipitation for at least %MINUTE_VALUE min",
            "iconCode": 7
        }
    ],
    "intervals": [
        {
            "startTime": "2020-10-19T20:51:00+00:00",
            "minute": 0,
            "dbz": 0.0,
            "shortPhrase": "No Precipitation",
            "iconCode": 7,
            "cloudCover": 100
        },
        {
            "startTime": "2020-10-19T21:06:00+00:00",
            "minute": 15,
            "dbz": 0.0,
            "shortPhrase": "No Precipitation",
            "iconCode": 7,
            "cloudCover": 100
        },
        {
            "startTime": "2020-10-19T21:21:00+00:00",
            "minute": 30,
            "dbz": 0.0,
            "shortPhrase": "No Precipitation",
            "iconCode": 7,
            "cloudCover": 100
        },
        {
            "startTime": "2020-10-19T21:36:00+00:00",
            "minute": 45,
            "dbz": 0.0,
            "shortPhrase": "No Precipitation",
            "iconCode": 7,
            "cloudCover": 100
        },
        {
            "startTime": "2020-10-19T21:51:00+00:00",
            "minute": 60,
            "dbz": 0.0,
            "shortPhrase": "No Precipitation",
            "iconCode": 7,
            "cloudCover": 100
        },
        {
            "startTime": "2020-10-19T22:06:00+00:00",
            "minute": 75,
            "dbz": 0.0,
            "shortPhrase": "No Precipitation",
            "iconCode": 7,
            "cloudCover": 100
        },
        {
            "startTime": "2020-10-19T22:21:00+00:00",
            "minute": 90,
            "dbz": 0.0,
            "shortPhrase": "No Precipitation",
            "iconCode": 7,
            "cloudCover": 100
        },
        {
            "startTime": "2020-10-19T22:36:00+00:00",
            "minute": 105,
            "dbz": 0.0,
            "shortPhrase": "No Precipitation",
            "iconCode": 7,
            "cloudCover": 100
        }
        ]
    }
    

Następne kroki