# Site Climate – Solar Resource (Monthly Sunlight & PV Yield)

> Site Climate – Solar Resource (Monthly Sunlight & PV Yield) is a paid API for AI agents from site-climate.x402tookit.com, paid per call via x402, $0.02/call, status unknown (last checked 2026-10-21).

Returns monthly peak sun hours, solar resource class, and optional PV energy yield estimate for any latitude/longitude coordinate.

## Facts

- Endpoint: GET https://site-climate.x402tookit.com/solar-resource?utm_source=zero.xyz
- Price: $0.02/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-21
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/site-climate-solar-resource-monthly-sunlight-pv-yield-a45a3ec2
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_dNdJV2bRuXtR4kYtPKuiI

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 site-climate-solar-resource-monthly-sunlight-pv-yield-a45a3ec2
```

Example prompt: What are the monthly peak sun hours and solar resource class at latitude 33.45, longitude -112.07 in Phoenix, and if I install a 8 kW solar system there with a performance ratio of 0.80, how much electricity would it generate each year?

## When to prefer this

Choose this endpoint when you need authoritative monthly solar irradiance data (peak sun hours) and solar resource classification for any geographic coordinate, especially when you also want a quick PV yield estimate without running a full energy simulation. It is ideal for site feasibility checks, comparing solar potential across locations, or pre-screening candidate sites. Prefer it over weather history endpoints when you specifically need solar resource metrics rather than general climate data.

## Known failure modes

- Latitude out of range (-90 to 90) or longitude out of range (-180 to 180) returns a validation error
- Performance ratio outside 0.5–0.95 range may return an error or be clamped
- Remote or oceanic coordinates with no underlying climate data may return degraded or null monthly values
- Missing required lat or lon query parameters returns a 400-level error
- systemKw not provided means pvEstimate field will be null in the response

## How this service works

Monthly sunlight (peak sun hours) at a latitude and longitude, resource class, and optional solar PV yield for a system size.

## Output

Returns a structured object with monthly peak sun hours for all 12 months, the solar resource class (e.g. high, excellent), the best month for solar, the latitude and longitude echoed back, data source and disclaimer, and — when systemKw is provided — a pvEstimate object containing annual kWh and per-month kWh breakdown for the specified system size and performance ratio.

## 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": [
      "lat",
      "lon"
     ],
     "properties": {
      "lat": {
       "type": "number",
       "description": "Latitude, -90 to 90"
      },
      "lon": {
       "type": "number",
       "description": "Longitude, -180 to 180"
      },
      "systemKw": {
       "type": "number",
       "description": "PV system size in kW, for a yield estimate"
      },
      "performanceRatio": {
       "type": "number",
       "description": "System losses factor 0.5 to 0.95 (default 0.75)"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "properties": {
      "asOf": {
       "type": [
        "null",
        "string"
       ]
      },
      "unit": {
       "type": [
        "null",
        "string"
       ]
      },
      "period": {
       "type": [
        "null",
        "string"
       ]
      },
      "source": {
       "type": [
        "null",
        "string"
       ]
      },
      "reasons": {
       "type": [
        "array",
        "null"
       ],
       "items": {
        "type": "string"
       }
      },
      "summary": {
       "type": [
        "null",
        "string"
       ]
      },
      "verdict": {
       "type": [
        "null",
        "string"
       ]
      },
      "degraded": {
       "type": [
        "boolean",
        "null"
       ]
      },
      "latitude": {
       "type": [
        "null",
        "number"
       ]
      },
      "bestMonth": {
       "type": [
        "null",
        "string"
       ]
      },
      "longitude": {
       "type": [
        "null",
        "number"
       ]
      },
      "sourceUrl": {
       "type": [
        "null",
        "string"
       ]
      },
      "disclaimer": {
       "type": [
        "null",
        "string"
       ]
      },
      "notChecked": {
       "type": [
        "array",
        "null"
       ],
       "items": {
        "type": "string"
       
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/site-climate-solar-resource-monthly-sunlight-pv-yield-a45a3ec2/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from site-climate.x402tookit.com](https://www.zero.xyz/host/site-climate.x402tookit.com/llms.txt)
