# Site Climate – Heating & Cooling Degree Days

> Site Climate – Heating & Cooling Degree Days 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 estimated monthly heating degree days (HDD) and cooling degree days (CDD) for any lat/lon, derived from NASA temperature normals, in both Celsius and Fahrenheit.

## Facts

- Endpoint: GET https://site-climate.x402tookit.com/degree-days?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-heating-cooling-degree-days-2930879b
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_Ii0hYdYPgjg06oAYYF-fb

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-heating-cooling-degree-days-2930879b
```

Example prompt: What are the monthly heating and cooling degree days at latitude 40.71, longitude -74.01, using the standard 18.3°C balance point? I need annual HDD and CDD totals in both Celsius and Fahrenheit.

## When to prefer this

Choose this endpoint when you need pre-computed monthly heating and cooling degree day data sourced from NASA climatological normals for any global coordinate, especially for HVAC design, building energy modeling, or site feasibility studies. It is ideal when you need both Celsius and Fahrenheit outputs simultaneously, or when you want to use a custom balance-point temperature. Prefer it over weather history endpoints when you need long-run normals rather than specific observed dates.

## Known failure modes

- Missing or out-of-range lat/lon (−90 to 90, −180 to 180) returns an error
- NASA data unavailable for remote oceanic locations may return degraded or null months
- Invalid baseTempC values may cause unexpected or empty results
- Network timeout or upstream NASA data service outage
- Payment failure via x402 protocol prevents response

## How this service works

Estimated heating and cooling degree days by month for a location from NASA temperature normals, in Celsius and Fahrenheit.

## Output

A JSON object containing: monthly array with month label, mean temperature (°C), HDD and CDD in Celsius; annual totals for HDD and CDD in both Celsius and Fahrenheit; dominant climate label (heating or cooling dominated); a plain-language summary; the balance-point temperature used; data source URL and attribution; and optional degraded/disclaimer flags if data quality is reduced.

## 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"
      },
      "baseTempC": {
       "type": "number",
       "description": "Balance-point temperature in C, default 18.3 (65 F)"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "properties": {
      "asOf": {
       "type": [
        "null",
        "string"
       ]
      },
      "months": {
       "type": [
        "array",
        "null"
       ],
       "items": {
        "type": "object",
        "properties": {
         "cddC": {
          "type": [
           "null",
           "number"
          ]
         },
         "hddC": {
          "type": [
           "null",
           "number"
          ]
         },
         "month": {
          "type": [
           "null",
           "string"
          ]
         },
         "meanTempC": {
          "type": [
           "null",
           "number"
          ]
         }
        }
       }
      },
      "source": {
       "type": [
        "null",
        "string"
       ]
      },
      "reasons": {
       "type": [
        "array",
        "null"
       ],
       "items": {
        "type": "string"
       }
      },
      "summary": {
       "type": [
        "null",
        "string"
       ]
      },
      "verdict": {
       "type": [
        "null",
        "string"
       ]
      },
      "degraded": {
       "type": [
        "boolean",
        "null"
       ]
      },
      "dominant": {
       "type": [
        "null",
        "string"
       ]
      },
      "latitude": {
       "type": [
        "null",
        "number"
       ]
      },
      "baseTempC": {
       "type": [
        "null",
        "number"
       ]
      },
      "longitude": 
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/site-climate-heating-cooling-degree-days-2930879b/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)
