# Guide

The Future Radar API provides weather map forecast overlay tiles extrapolated from radar data, for layering on top of existing maps.

For full request and response field details, see [Future Radar Parameters](/developers/maps/future-radar-parameters).

:::note{title="Base URLs"}

- **Production:** api.accuweather.com
- **Development:** apidev.accuweather.com

Examples below use the production host. Swap in apidev.accuweather.com for development.

:::

### Product requests

| Endpoint | Description |
|---|---|
| [List available products](#list-available-products) | List all available future radar products |
| [List active products](#list-active-products) | List currently active future radar products |
| [Request frames for products](#request-frames-for-products) | Get time frames for specific products |
| [Request frames for box](#request-frames-for-box) | Get frames within a bounding box |
| [Request products for tiles](#request-products-for-tiles) | Get products available for specific tiles |

### Tile requests

| Endpoint | Description |
|---|---|
| [ZXY format](#zxy-format) | Request tiles by coordinates |
| [Quadkey format](#quadkey-format) | Request tiles by unique quadkey code |
| [Blank tiles](#blank-tiles) | Request blank/empty tiles |

---

## Product requests

### List available products

Returns a list of available products within Future Radar. This function can be used to move the map to a specific product. The correct URL formatting is shown below.

```
https://api.accuweather.com/maps/v1/radar/futureSIR/request_products?apikey={your key}&locations={boolean}
```

Setting *locations* to *true* will return an extra object within each product that provides a bounding box for that product.

#### Example

```
https://api.accuweather.com/maps/v1/radar/futureSIR/request_products?apikey={your key}&locations=true
```

**Response:**

```json
{
  "products": [
    {
      "color": "#9c1a08",
      "location": {
        "east": 149.99978637695,
        "north": 48.000007629395,
        "south": 19.999971389771,
        "west": 118.00008392334
      },
      "major": 53,
      "minor": 1100,
      "name": "asia_pacific_future"
    },
    {
      "color": "#4c7502",
      "location": {
        "east": 37.000007629395,
        "north": 72,
        "south": 33.000022888184,
        "west": -17.000001907349
      },
      "major": 16,
      "minor": 1100,
      "name": "europe_future"
    },
    {
      "color": "#7ccc07",
      "location": {
        "east": -50.000019073486,
        "north": 54.999851226807,
        "south": 19.999971389771,
        "west": -130.00010681152
      },
      "major": 51,
      "minor": 1100,
      "name": "united_states_future"
    }
  ],
  "url": "https://api.accuweather.com/maps/v1/radar/futureSIR/"
}
```

### List active products

Returns a list of products within the current map bounding box. The correct URL formatting is shown below.

```
https://api.accuweather.com/maps/v1/radar/futureSIR/preferred_box_products?apikey={your key}&toplat={north latitude}&bottomlat={southern latitude}&rightlon={eastern longitude}&leftlon={western longitude}&zoom={zoom level}&attribute={boolean}
```

#### Example

```
https://api.accuweather.com/maps/v1/radar/futureSIR/preferred_box_products?apikey={your key}&toplat=66&bottomlat=-22&rightlon=95&leftlon=-55&zoom=3&attribute=true
```

**Response:**

```json
{
  "products": [
    {
      "color": "#4c7502",
      "major": 16,
      "minor": 1100,
      "name": "europe_future"
    },
    {
      "color": "#7ccc07",
      "major": 51,
      "minor": 1100,
      "name": "united_states_future"
    }
  ],
  "url": "https://api.accuweather.com/maps/v1/radar/futureSIR/"
}
```

### Request frames for products

Returns a list of mutual frames for all listed products. The correct URL formatting is shown below.

```
https://api.accuweather.com/maps/v1/radar/futureSIR/preferred_product_frames?apikey={your key}&products={major}-{minor},{major}-{minor},...&attribute={boolean}
```

#### Example

```
https://api.accuweather.com/maps/v1/radar/futureSIR/preferred_product_frames?apikey={your key}&products=16-1004,16-1005,16-1001,16-1002,16-1003&attribute=true
```

**Response:**

```json
{
  "frames": [
    "2019-10-31T14:00:00Z",
    "2019-10-31T14:05:00Z",
    "2019-10-31T14:10:00Z",
    "2019-10-31T14:15:00Z",
    "2019-10-31T14:20:00Z",
    "2019-10-31T14:25:00Z",
    "2019-10-31T14:30:00Z",
    "2019-10-31T14:35:00Z",
    "2019-10-31T14:40:00Z",
    "2019-10-31T14:45:00Z",
    "2019-10-31T14:50:00Z",
    "2019-10-31T14:55:00Z",
    "2019-10-31T15:00:00Z",
    "2019-10-31T15:05:00Z",
    "2019-10-31T15:10:00Z",
    "2019-10-31T15:15:00Z",
    "2019-10-31T15:20:00Z",
    "2019-10-31T15:25:00Z",
    "2019-10-31T15:30:00Z",
    "2019-10-31T15:35:00Z",
    "2019-10-31T15:40:00Z",
    "2019-10-31T15:45:00Z",
    "2019-10-31T15:50:00Z",
    "2019-10-31T15:55:00Z",
    "2019-10-31T16:00:00Z",
    "2019-10-31T16:05:00Z",
    "2019-10-31T16:10:00Z",
    "2019-10-31T16:15:00Z",
    "2019-10-31T16:20:00Z",
    "2019-10-31T16:25:00Z",
    "2019-10-31T16:30:00Z",
    "2019-10-31T16:35:00Z",
    "2019-10-31T16:40:00Z",
    "2019-10-31T16:45:00Z",
    "2019-10-31T16:50:00Z",
    "2019-10-31T16:55:00Z",
    "2019-10-31T17:00:00Z"
  ],
  "url": "https://api.accuweather.com/maps/v1/radar/futureSIR/"
}
```

### Request frames for box

Returns a list of frames within the current map bounding box. The response includes attributions. The correct URL formatting is shown below.

```
https://api.accuweather.com/maps/v1/radar/futureSIR/preferred_box_frames?apikey={your key}&toplat={north latitude}&bottomlat={southern latitude}&rightlon={eastern longitude}&leftlon={western longitude}&zoom={zoom level}&attribute={boolean}
```

#### Example

```
https://api.accuweather.com/maps/v1/radar/futureSIR/preferred_product_frames?apikey={your key}&toplat=49&bottomlat=28&rightlon=17&leftlon=-20&zoom=5&attribute=true
```

**Response:**

```json
{
  "frames": [
    "2019-10-31T14:05:00Z",
    "2019-10-31T14:10:00Z",
    "2019-10-31T14:15:00Z",
    "2019-10-31T14:20:00Z",
    "2019-10-31T14:25:00Z",
    "2019-10-31T14:30:00Z",
    "2019-10-31T14:35:00Z",
    "2019-10-31T14:40:00Z",
    "2019-10-31T14:45:00Z",
    "2019-10-31T14:50:00Z",
    "2019-10-31T14:55:00Z",
    "2019-10-31T15:00:00Z",
    "2019-10-31T15:05:00Z",
    "2019-10-31T15:10:00Z",
    "2019-10-31T15:15:00Z",
    "2019-10-31T15:20:00Z",
    "2019-10-31T15:25:00Z",
    "2019-10-31T15:30:00Z",
    "2019-10-31T15:35:00Z",
    "2019-10-31T15:40:00Z",
    "2019-10-31T15:45:00Z",
    "2019-10-31T15:50:00Z",
    "2019-10-31T15:55:00Z",
    "2019-10-31T16:00:00Z",
    "2019-10-31T16:05:00Z",
    "2019-10-31T16:10:00Z",
    "2019-10-31T16:15:00Z",
    "2019-10-31T16:20:00Z",
    "2019-10-31T16:25:00Z",
    "2019-10-31T16:30:00Z",
    "2019-10-31T16:35:00Z",
    "2019-10-31T16:40:00Z",
    "2019-10-31T16:45:00Z",
    "2019-10-31T16:50:00Z",
    "2019-10-31T16:55:00Z",
    "2019-10-31T17:00:00Z",
    "2019-10-31T17:05:00Z",
    "2019-10-31T17:10:00Z"
  ],
  "url": "https://api.accuweather.com/maps/v1/radar/futureSIR/"
}
```

### Request products for tiles

Returns a list of products within a specified map bounding box. The top left corner of the box is defined by X1, Y1 and the bottom right corner of the box is defined by X2, Y2. The correct URL formatting is shown below.

```
https://api.accuweather.com/maps/v1/radar/futureSIR/preferred_tile_products?apikey={your key}&x1={top left x coordinate}&y1={top left y coordinate}&x2={bottom right x coordinate}&y2={bottom right y coordinate}&z={zoom level}&attribute={boolean}
```

#### Example

```
https://api.accuweather.com/maps/v1/radar/futureSIR/preferred_tile_products?apikey={your key}&x1=6&y1=5&x2=8&y2=6&z=4&attribute=true
```

**Response:**

```json
{
  "products": [
    {
      "color": "#4c7502",
      "major": 16,
      "minor": 1100,
      "name": "europe_future"
    }
  ],
  "url": "https://api.accuweather.com/maps/v1/radar/futureSIR/"
}
```

---

## Tile requests

There are multiple methods for requesting tiles from Future Radar. ZXY format provides a means of identifying tiles directly by coordinates, while quadkey identifies tiles by a unique code. Tile requests that yield no graphical data will redirect to a blank tile. See [Blank Tiles](#blank-tiles) below for details.

### ZXY format

The ZXY URL format is a standard Google format. It requires the zoom level (z), the x coordinate (x), the y coordinate (y), and a time and date for the requested weather data. These four variables determine which tile the call returns and what information it contains.

```
https://api.accuweather.com/maps/v1/radar/futureSIR/zxy/{yyyy-mm-dd}T{hh:mm:ss}Z/{zoom}/{x}/{y}.png?apikey={your key}&display_mode={display mode}
```

#### Example

A search for a specific tile with a zoom level of 3, at coordinates X=2 and Y=2 at 15:50 on October 17th, 2019 will look like this:

```
https://api.accuweather.com/maps/v1/radar/futureSIR/zxy/2019-10-17T15:50:00Z/3/2/2.png?apikey={your key}
```

### Quadkey format

This method gets tiles using Microsoft's quadtree key (quadkey) format. Quadkey is an alternative method for identifying individual tiles in a map grid. Instead of separating values, it combines all identifying factors into a solid numerical string. The correct URL formatting is shown below.

```
https://api.accuweather.com/maps/v1/radar/futureSIR/quadkey/{yyyy-mm-dd}T{hh:mm:ss}Z/{quadkey value}.png?apikey={your key}&display_mode={display mode}
```

#### Example

```
https://api.accuweather.com/maps/v1/radar/futureSIR/quadkey/03133.png?apikey={your key}
```

### Blank tiles

If a tile request yields no graphical data, the API returns a generic blank tile. The URL redirects to a static address that contains the blank tile. The correct URL formatting is shown below.

```
https://api.accuweather.com/maps/v1/radar/futureSIR/blank.png?apikey={your key}&display_mode={display mode}
```
