Api Endpoint

Tanod weatherpeek

Get the weather forecast for a city or coordinates: up to 48 hourly rows. Input: place or lat and lon, hours. Returns temperature, humidity, wind, cloud, precipitation (MET Norway, GeoNames, CC BY 4.0; not for safety-critical use). Use when an agent needs an hourly forecast.

Open interactive test console

Offering

Provider
tanod.dev
Method
POST
Offering type
Api Endpoint
Transport type
http
Category
Weather And Environment
Delivery
Not provided
Pricing model
Not provided
x402 version
2

Endpoint context

URL
https://tanod.dev/v1/weather
MIME type
application/json
First seen
2026-10-16T01:51:02.144Z
Last seen
Tags
weather, forecast, hourly-weather, temperature, weatherpeek, met-norway, geonames

Payment pricing

x402 payment terms are the authoritative price for calling this endpoint.

Payment option 1
0.002 USDC
Atomic price: 2000 · Network: eip155:8453 · Asset: USDC · Scheme: exact
Payment option 2
0.002 USDC
Atomic price: 2000 · Network: eip155:137 · Asset: USDC · Scheme: exact
Payment option 3
0.002 USDC
Atomic price: 2000 · Network: solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp · Asset: USDC · Scheme: exact
Payment option 4
0.002 USDC
Atomic price: 2000000000000000 · Network: eip155:56 · Asset: USDC · Scheme: exact
Payment option 5
0.002 USDC
Atomic price: 2000 · Network: eip155:42161 · Asset: USDC · Scheme: exact
Payment option 6
0.002 USDC
Atomic price: 2000 · Network: eip155:8453 · Asset: USDC · Scheme: exact
Payment option 7
0.002 USDC
Atomic price: 2000 · Network: eip155:137 · Asset: USDC · Scheme: exact
Raw x402 terms
[
  {
    "scheme": "exact",
    "network": "eip155:8453",
    "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "amount": "2000",
    "payTo": "0x593857A4a4F619543ea12394137C3004ce841720"
  },
  {
    "scheme": "exact",
    "network": "eip155:137",
    "asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
    "amount": "2000",
    "payTo": "0x593857A4a4F619543ea12394137C3004ce841720"
  },
  {
    "scheme": "exact",
    "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
    "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
    "amount": "2000",
    "payTo": "RMk9k3VC8dr4hhjgFh88rGhjAbzfBzHxJJ5n2fTcqus"
  },
  {
    "scheme": "exact",
    "network": "eip155:56",
    "asset": "0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d",
    "amount": "2000000000000000",
    "payTo": "0x593857A4a4F619543ea12394137C3004ce841720"
  },
  {
    "scheme": "exact",
    "network": "eip155:42161",
    "asset": "0xaf88d065e77c8cC2239327C5EDb3A432268e5831",
    "amount": "2000",
    "payTo": "0x593857A4a4F619543ea12394137C3004ce841720"
  },
  {
    "scheme": "exact",
    "network": "eip155:8453",
    "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "amount": "2000",
    "payTo": "0x593857A4a4F619543ea12394137C3004ce841720"
  },
  {
    "scheme": "exact",
    "network": "eip155:137",
    "asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
    "amount": "2000",
    "payTo": "0x593857A4a4F619543ea12394137C3004ce841720"
  }
]

Observed health

Status
Healthy
Latest latency
900 ms
Average latency
1021 ms
HTTP status
204
Last checked
Reachability
100% over 10 checks

Latency is measured to the first response headers. A reachable result does not verify response accuracy or merchant identity.

Input schema

{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "const": "http"
    },
    "method": {
      "type": "string",
      "enum": [
        "POST"
      ]
    },
    "bodyType": {
      "type": "string",
      "enum": [
        "json",
        "form-data",
        "text"
      ]
    },
    "body": {
      "additionalProperties": false,
      "properties": {
        "lat": {
          "anyOf": [
            {
              "maximum": 90,
              "minimum": -90,
              "type": "number"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Latitude in degrees (-90..90); give lat and lon together, or place."
        },
        "lon": {
          "anyOf": [
            {
              "maximum": 180,
              "minimum": -180,
              "type": "number"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Longitude in degrees (-180..180); give lat and lon together, or place."
        },
        "place": {
          "anyOf": [
            {
              "maxLength": 120,
              "minLength": 1,
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "City name, optionally \", CC\" with an ISO country code (e.g. \"Manila, PH\"); cities with 15,000+ people. Give place alone, or lat and lon."
        },
        "hours": {
          "default": 24,
          "description": "Hourly rows to return, from the current hour (1-48, default 24).",
          "maximum": 48,
          "minimum": 1,
          "type": "integer"
        }
      },
      "type": "object"
    }
  },
  "required": [
    "type",
    "method",
    "bodyType",
    "body"
  ],
  "additionalProperties": false
}

Output schema

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {
    "input": {
      "additionalProperties": false,
      "properties": {
        "body": {
          "additionalProperties": false,
          "properties": {
            "hours": {
              "default": 24,
              "description": "Hourly rows to return, from the current hour (1-48, default 24).",
              "maximum": 48,
              "minimum": 1,
              "type": "integer"
            },
            "lat": {
              "anyOf": [
                {
                  "maximum": 90,
                  "minimum": -90,
                  "type": "number"
                },
                {
                  "type": "null"
                }
              ],
              "default": null,
              "description": "Latitude in degrees (-90..90); give lat and lon together, or place."
            },
            "lon": {
              "anyOf": [
                {
                  "maximum": 180,
                  "minimum": -180,
                  "type": "number"
                },
                {
                  "type": "null"
                }
              ],
              "default": null,
              "description": "Longitude in degrees (-180..180); give lat and lon together, or place."
            },
            "place": {
              "anyOf": [
                {
                  "maxLength": 120,
                  "minLength": 1,
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "default": null,
              "description": "City name, optionally \", CC\" with an ISO country code (e.g. \"Manila, PH\"); cities with 15,000+ people. Give place alone, or lat and lon."
            }
          },
          "type": "object"
        },
        "bodyType": {
          "enum": [
            "json",
            "form-data",
            "text"
          ],
          "type": "string"
        },
        "method": {
          "enum": [
            "POST"
          ],
          "type": "string"
        },
        "type": {
          "const": "http",
          "type": "string"
        }
      },
      "required": [
        "type",
        "method",
        "bodyType",
        "body"
      ],
      "type": "object"
    },
    "output": {
      "properties": {
        "example": {
          "properties": {
            "attribution": {
              "properties": {
                "license": {
                  "type": "string"
                },
                "places": {
                  "type": "string"
                },
                "weather": {
                  "type": "string"
                }
              },
              "required": [
                "weather",
                "license",
                "places"
              ],
              "type": "object"
            },
            "cached": {
              "type": "boolean"
            },
            "hourly": {
              "items": {
                "properties": {
                  "air_temperature": {
                    "type": [
                      "number",
                      "null"
                    ]
                  },
                  "cloud_area_fraction": {
                    "type": [
                      "number",
                      "null"
                    ]
                  },
                  "precipitation_amount": {
                    "type": [
                      "number",
                      "null"
                    ]
                  },
                  "relative_humidity": {
                    "type": [
                      "number",
                      "null"
                    ]
                  },
                  "symbol_code": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "time": {
                    "type": "string"
                  },
                  "wind_from_direction": {
                    "type": [
                      "number",
                      "null"
                    ]
                  },
                  "wind_speed": {
                    "type": [
                      "number",
                      "null"
                    ]
                  }
                },
                "required": [
                  "time"
                ],
                "type": "object"
              },
              "type": "array"
            },
            "hours": {
              "type": "integer"
            },
            "location": {
              "properties": {
                "lat": {
                  "type": "number"
                },
                "lon": {
                  "type": "number"
                },
                "place": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              },
              "required": [
                "lat",
                "lon",
                "place"
              ],
              "type": "object"
            },
            "units": {
              "type": "object"
            },
            "updated_at": {
              "type": [
                "string",
                "null"
              ]
            }
          },
          "required": [
            "location",
            "updated_at",
            "units",
            "hours",
            "hourly",
            "cached",
            "attribution"
          ],
          "type": "object"
        },
        "type": {
          "type": "string"
        }
      },
      "required": [
        "type"
      ],
      "type": "object"
    }
  },
  "required": [
    "input"
  ],
  "type": "object"
}