# ScrapeMole Pulse – Weather Forecast

> ScrapeMole Pulse – Weather Forecast is a paid API for AI agents from pulse.scrapemole.workers.dev, paid per call via x402, $0.002/call, status unknown (last checked 2026-10-13).

Returns current conditions and hourly/daily weather forecasts for any location by coordinates or place name, sourced from MET Norway

## Facts

- Endpoint: GET https://pulse.scrapemole.workers.dev/v1/weather?utm_source=zero.xyz
- Price: $0.002/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-13
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/scrapemole-pulse-weather-forecast-5e0c31a1
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_BM_pJj1eGYFtm5V4c9AwD

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability scrapemole-pulse-weather-forecast-5e0c31a1
```

Example prompt: What's the current weather and 24-hour forecast for Vilnius? Give me temperature, wind, and whether it's going to rain.

## When to prefer this

Choose this endpoint when you need real-time or short-range weather forecasts (current conditions plus up to 48 hourly points) sourced from a trusted meteorological institution (MET Norway) with proper CC BY 4.0 attribution included in every response. It is ideal for AI agents that need live weather data without managing API keys or accounts — paying $0.002 USDC per call via x402. Prefer it over general-purpose weather APIs when data provenance and license clarity matter, or when integrating with a broader ScrapeMole Pulse workflow that also needs FX rates, time zones, or Hacker News.

## Known failure modes

- Invalid or out-of-range coordinates (lat outside -90..90 or lon outside -180..180) returns a 400 error
- Unresolvable place name (not found in Wikidata) returns a 404 or error response
- Hours parameter outside 1-48 range is rejected with a validation error
- Payment not provided or insufficient USDC results in HTTP 402 before any forecast data is returned
- MET Norway upstream unavailable may cause 502/503 responses

## How this service works

Pay-per-call "state of the world" lookups that language models cannot know on their own: official ECB exchange rates (latest, historical, conversion), the current time and DST-aware time-zone conversion for scheduling, global weather forecasts (MET Norway, by coordinates or place name) and the live Hacker News front page. Public, non-personal data with sources and licences in every response. USDC via x402, no accounts.

Payments: x402 v2, scheme "exact", USDC on Base (eip155:8453). The payment is verified before the work and settled only when the response is 200. Terms: https://pulse.scrapemole.workers.dev/terms

## Output

Returns a JSON object with: current conditions (time, weather symbol, wind speed in m/s, cloud cover %, humidity %, temperature in Celsius), an array of hourly forecasts (up to 48 points with symbol, temperature, precipitation), a daily summary array (date, min/max temp, dominant symbol, precipitation), resolved location info (lat, lon, name, Wikidata ID), data freshness timestamp, and full CC BY 4.0 attribution to MET Norway.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [],
     "properties": {
      "lat": {
       "type": "string",
       "description": "Latitude -90..90."
      },
      "lon": {
       "type": "string",
       "description": "Longitude -180..180."
      },
      "hours": {
       "type": "string",
       "default": "24",
       "description": "Hourly points to return (1-48)."
      },
      "place": {
       "type": "string",
       "examples": [
        "Vilnius"
       ],
       "description": "Place name (city, landmark), resolved via Wikidata. Give place or lat+lon."
      }
     },
     "additionalProperties": false
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "now": {
   "time": "2026-10-12T07:00:00Z",
   "symbol": "cloudy",
   "windMs": 3.1,
   "cloudPct": 95,
   "humidityPct": 88,
   "temperatureC": 7.4
  },
  "daily": [
   {
    "date": "2026-10-12",
    "maxC": 11.2,
    "minC": 5.1,
    "symbol": "partlycloudy_day",
    "precipitationMm": 0.4
   }
  ],
  "units": {
   "wind": "m/s",
   "temperature": "celsius",
   "precipitation": "mm"
  },
  "hourly": [
   {
    "time": "2026-10-12T08:00:00Z",
    "symbol": "cloudy",
    "temperatureC": 8,
    "precipitationMm": 0
   }
  ],
  "location": {
   "lat": 54.6872,
   "lon": 25.2797,
   "name": "Vilnius",
   "wikidataId": "Q216"
  },
  "updatedAt": "2026-10-12T06:29:36Z",
  "attribution": {
   "credit": "Weather data from MET Norway",
   "source": "MET Norway Locationforecast 2.0 (https://api.met.no)",
   "license": "CC BY 4.0 (data: The Norwegian Meteorological Institute)",
   "licenseUrl": "https://creativecommons.org/licenses/by/4.0/"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/scrapemole-pulse-weather-forecast-5e0c31a1/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from pulse.scrapemole.workers.dev](https://www.zero.xyz/host/pulse.scrapemole.workers.dev/llms.txt)
