80trust / 100

Weather Forecast

by FiatDock in Weather & location

x402 APIPassing, checked 2 h ago

The weather forecast for any point on Earth from MET Norway: current conditions, hourly rows (1 h steps for ~2.5 days, then 6 h) and up to 9 daily rows (UTC days) with min/max temperature, total precipitation and the main condition. A forecast, not observations; no air quality, no alerts. Send {} for the published example point. An answer it cannot produce is not charged. Pay-per-call via x402.

POST https://fiatdock.com/v1/weather/forecast

Last 30 days

All checks passedSome failedAll failedNot checked
Uptime
100%
Response time
164 ms typical, 189 ms slowest 5%
Last check
2 h ago
Next check
any minute now

How to call it

# See the payment challenge (nothing is charged)
curl -i -X POST "https://fiatdock.com/v1/weather/forecast" \
  -H "content-type: application/json" \
  -d '{"days":2,"hours":3,"lat":24.7136,"lon":46.6753}'
import { wrapFetchWithPayment } from "@x402/fetch";
import { x402Client } from "@x402/core/client";
import { ExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";

const client = new x402Client().register(
  "eip155:8453",
  new ExactEvmScheme(privateKeyToAccount(process.env.AGENT_KEY)),
);
const pay = wrapFetchWithPayment(fetch, client);

// Not sure it's safe to pay? Preflight it first for $0.005:
// GET https://toolvet.app/api/v1/check?url=https%3A%2F%2Ffiatdock.com%2Fv1%2Fweather%2Fforecast
const res = await pay("https://fiatdock.com/v1/weather/forecast", {
  method: "POST",
  headers: { "content-type": "application/json" },
  body: JSON.stringify({"days":2,"hours":3,"lat":24.7136,"lon":46.6753}),
});
console.log(await res.json());

Example input

{
  "days": 2,
  "hours": 3,
  "lat": 24.7136,
  "lon": 46.6753
}

Example output

{
  "asOf": "2026-10-08T16:15:52.847Z",
  "attribution": "Weather forecast data from MET Norway (the Norwegian Meteorological Institute), https://api.met.no/ — licensed under CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/) and NLOD 2.0 (https://data.norge.no/nlod/en/2.0). Changed by FiatDock: reformatted, and the daily rows are computed from MET's forecast.",
  "current": {
    "airTemperatureC": 36.7,
    "cloudCoverPct": 0,
    "precipitationNext1hMm": 0,
    "relativeHumidityPct": 10.1,
    "symbol": "clearsky_night",
    "time": "2026-10-08T16:00:00Z",
    "windFromDeg": 68.4,
    "windSpeedMs": 2.9
  },
  "daily": [
    {
      "date": "2026-10-08",
      "hoursCovered": 8,
      "maxTempC": 36.7,
      "minTempC": 29.6,
      "precipitationMm": 0,
      "symbol": "clearsky"
    },
    {
      "date": "2026-10-09",
      "hoursCovered": 24,
      "maxTempC": 39.3,
      "minTempC": 27.7,
      "precipitationMm": 0,
      "symbol": "clearsky"
    }
  ],
  "forecastEndsAt": "2026-10-18T00:00:00Z",
  "hourly": [
    {
      "airTemperatureC": 36.7,
      "periodHours": 1,
      "precipitationMm": 0,
      "symbol": "clearsky_night",
      "time": "2026-10-08T16:00:00Z",
      "windSpeedMs": 2.9
    },
    {
      "airTemperatureC": 35.9,
      "periodHours": 1,
      "precipitationMm": 0,
      "symbol": "clearsky_night",
      "time": "2026-10-08T17:00:00Z",
      "windSpeedMs": 2.7
    },
    {
      "airTemperatureC": 35.1,
      "periodHours": 1,
      "precipitationMm": 0,
      "symbol": "clearsky_night",
      "time": "2026-10-08T18:00:00Z",
      "windSpeedMs": 2.5
    }
  ],
  "location": {
    "elevationM": 628,
    "lat": 24.7136,
    "lon": 46.6753
  },
  "modelUpdatedAt": "2026-10-08T13:16:55Z",
  "note": "A forecast, not an observation. All times are UTC. Daily rows are UTC calendar days, not local days; the first starts at the current hour.",
  "source": "MET Norway Locationforecast 2.0 (api.met.no, complete product)",
  "units": {
    "airTemperature": "°C",
    "cloudCover": "%",
    "precipitation": "mm",
    "relativeHumidity": "%",
    "windFromDirection": "degrees (where the wind blows FROM; 0 = north, 90 = east)",
    "windSpeed": "m/s"
  }
}

Security scan

  • No findings. We scan names, descriptions and tool definitions for hidden instructions and other prompt-injection patterns.

Recent checks

WhenResultHTTPTimePrice
2 h agoPassed402158 ms$0.0018
6 h agoPassed40242 ms$0.0018
9 h agoPassed402164 ms$0.0018
13 h agoPassed402189 ms$0.0018
17 h agoPassed402234 ms$0.0018