AccuWeather’s Global Radar API provides subscribers access to a weather map overlay service via a simple RESTful web interface. This radar service does not include a map of any type. It returns a series of graphics in square tiles for layering on top of an existing map to illustrate weather conditions. Therefore, Global Radar is not a stand-alone service but is intended to be paired with a Mercator projection mapping service such as Bing Maps or Google Maps. Tiles are returned one at a time in PNG format.
Different regions of the world have different systems and methods for gathering weather data. Because of this, the different regions all provide weather data at different intervals. The United States, for example, provides weather data in five-minute intervals. That means the weather graphics for the US will appear to change or move for every five minutes of time. However, the European Union only provides weather data at thirty-minute intervals. That means the weather graphics for the EU will appear to change or move for every thirty minutes of time.
If a user has the map zoomed out far enough that they can see both the United States and the European Union at the same time, the weather graphics for the US will appear to be moving quickly and in a smooth fashion, while the EU’s weather graphics will appear to “jump” every few frames, while the US data continuously moves with each successive frame.
To remedy this situation our Global Radar system will examine each region of the world (called products) based on various properties. In our scenario it would be most helpful to identify all the products displayed on the user’s map. Once those products have been identified, the Global Radar system can determine which product has the slowest data refresh rate, and then match all the faster products to that slower rate. In other words, the US portion of the map would only display one out of every six tile updates. This way the US will refresh at the same rate as the EU on the user’s map. The result is a cohesive and graceful view of the world’s weather.
Each product has a unique code that consists of two numbers separated by a dash. The first number is called the major value, and the second is the minor value. Both numbers are provided by any API response that identifies one or more products.
Some endpoints will return a list of frames. Each frame has a temporal value and defines one set of radar tiles to be returned. The total time span encompassed by these frames will vary between products and are subject to change for each individual product. Global Radar will match all products within the viewing area to the time span of the product with the shortest time span. For example, the US might have a time span of one hour and fifteen minutes, while the EU might only have a time span of one hour. When the user has both the US and the EU within their viewing area, Global Radar will cut down the US frames to only cover one hour so the weather data for both regions will match.