cURL
curl --request GET \
--url https://sahabah-prod.devops.arabiaweather.com/api/weather/archives/models/{model}/tiles/{z}/{x}/{y} \
--header 'x-api-key: <x-api-key>'import requests
url = "https://sahabah-prod.devops.arabiaweather.com/api/weather/archives/models/{model}/tiles/{z}/{x}/{y}"
headers = {"x-api-key": "<x-api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<x-api-key>'}};
fetch('https://sahabah-prod.devops.arabiaweather.com/api/weather/archives/models/{model}/tiles/{z}/{x}/{y}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://sahabah-prod.devops.arabiaweather.com/api/weather/archives/models/{model}/tiles/{z}/{x}/{y}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <x-api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://sahabah-prod.devops.arabiaweather.com/api/weather/archives/models/{model}/tiles/{z}/{x}/{y}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<x-api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://sahabah-prod.devops.arabiaweather.com/api/weather/archives/models/{model}/tiles/{z}/{x}/{y}")
.header("x-api-key", "<x-api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://sahabah-prod.devops.arabiaweather.com/api/weather/archives/models/{model}/tiles/{z}/{x}/{y}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<x-api-key>'
response = http.request(request)
puts response.read_bodyWeather
Get apiweatherarchivesmodels tiles
Render XYZ tile for a model from archive (MAMS) using provided query and style
GET
/
api
/
weather
/
archives
/
models
/
{model}
/
tiles
/
{z}
/
{x}
/
{y}
cURL
curl --request GET \
--url https://sahabah-prod.devops.arabiaweather.com/api/weather/archives/models/{model}/tiles/{z}/{x}/{y} \
--header 'x-api-key: <x-api-key>'import requests
url = "https://sahabah-prod.devops.arabiaweather.com/api/weather/archives/models/{model}/tiles/{z}/{x}/{y}"
headers = {"x-api-key": "<x-api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<x-api-key>'}};
fetch('https://sahabah-prod.devops.arabiaweather.com/api/weather/archives/models/{model}/tiles/{z}/{x}/{y}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://sahabah-prod.devops.arabiaweather.com/api/weather/archives/models/{model}/tiles/{z}/{x}/{y}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <x-api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://sahabah-prod.devops.arabiaweather.com/api/weather/archives/models/{model}/tiles/{z}/{x}/{y}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<x-api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://sahabah-prod.devops.arabiaweather.com/api/weather/archives/models/{model}/tiles/{z}/{x}/{y}")
.header("x-api-key", "<x-api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://sahabah-prod.devops.arabiaweather.com/api/weather/archives/models/{model}/tiles/{z}/{x}/{y}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<x-api-key>'
response = http.request(request)
puts response.read_bodyHeaders
API key for authentication
Path Parameters
Weather model ID (e.g., gfs, ec25, icon, gem)
Zoom level
Required range:
x >= 0Tile X coordinate
Required range:
x >= 0Tile Y coordinate
Required range:
x >= 0Query Parameters
Timestamp for forecast data (Unix timestamp)
Model run timestamp (required for archive)
Field expression to render
Style object as JSON (all keys optional)
Response
Archive weather tile rendered successfully
⌘I

