# StationFX Housing Starts (New Privately-Owned Units Started)

> StationFX Housing Starts (New Privately-Owned Units Started) is a paid API for AI agents from stationfx.com, paid per call via x402, $0.005/call, status unknown (last checked 2026-10-02).

Returns monthly U.S. new residential construction starts data with derived metrics including MoM/YoY changes, z-scores, percentile ranks, and rolling averages.

## Facts

- Endpoint: GET https://stationfx.com/economic-data/housing/new-privately-owned-housing-units-started-total-units?utm_source=zero.xyz
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-02
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/stationfx-housing-starts-new-privately-owned-units-started-30494cb0
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_s136JEZ_AoVe_U-YmH0Oi

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 stationfx-housing-starts-new-privately-owned-units-started-30494cb0
```

Example prompt: Pull the StationFX housing starts data for the past 12 months — I want the raw value, year-over-year percent change, and the 5-year z-score for each month, formatted as JSON.

## When to prefer this

Choose this endpoint when you need U.S. residential construction starts data enriched with pre-computed momentum metrics (MoM, YoY, z-scores, rolling averages) rather than raw series data alone. Ideal for economic analysis agents, real estate market monitors, or macro dashboards that need to contextualize housing supply trends without performing their own statistical derivations.

## Known failure modes

- Invalid date format returns a 400 error
- date_from after date_to returns empty or error response
- Requesting future dates returns no data or partial results
- Invalid field names in the fields parameter may return nulls or errors
- Payment failure (x402) if USDC balance is insufficient

## How this service works

Number of new residential construction projects begun. Measures actual housing supply entering the pipeline. Sensitive to mortgage rates, builder confidence, and economic conditions. Monthly frequency with full derived metrics.

## Output

Returns a JSON array of monthly observations, each containing the observation date, raw housing starts value (in units), and a full suite of derived metrics: month-over-month and year-over-year absolute and percent changes, 12-month and 5-year z-scores, 5-year percentile rank, 3-month and 12-month rolling averages, and a binary above-trend flag.

## 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",
     "description": "Always \"http\" for HTTP endpoints"
    },
    "method": {
     "enum": [
      "GET",
      "HEAD",
      "DELETE"
     ],
     "type": "string",
     "description": "HTTP method. Always GET for StationFX query endpoints"
    },
    "queryParams": {
     "type": "object",
     "properties": {
      "fmt": {
       "enum": [
        "json",
        "toon"
       ],
       "type": "string",
       "description": "Response format. Use toon for compact agent-friendly output."
      },
      "fields": {
       "type": "string",
       "description": "Comma-separated metric names"
      },
      "date_to": {
       "type": "string",
       "description": "End date YYYY-MM-DD"
      },
      "date_from": {
       "type": "string",
       "description": "Start date YYYY-MM-DD"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string",
     "description": "Response format. Always \"json\" (or \"toon\" if fmt=toon was requested)"
    },
    "example": {
     "type": "object",
     "properties": {
      "data": {
       "type": "array",
       "items": {
        "type": "object",
        "properties": {
         "date": {
          "type": "string",
          "description": "Observation date YYYY-MM-DD"
         },
         "value": {
          "type": "number",
          "description": "Raw observed value in series units"
         },
         "mom_pct": {
          "type": "number",
          "description": "Month-over-month % change"
         },
         "yoy_pct": {
          "type": "number",
          "description": "Year-over-year % change"
         },
         "zscore_5y": {
          "type": "number",
          "description": "Z-score relative to trailing 5 years"
         },
         "mom_change": {
          "type": "number",
          "description": "Month-over-month absolute change"
         },
         "yoy_change": {
          "type": "number",
          "description": "Year-over-year absolute change"
         },
         "zscore_12m": {
          "type": "number",
          "description": "Z-score relative to trailing 12
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "schema": {
  "type": "object",
  "properties": {
   "data": {
    "type": "array",
    "items": {
     "type": "object",
     "properties": {
      "date": {
       "type": "string",
       "description": "Observation date YYYY-MM-DD"
      },
      "value": {
       "type": "number",
       "description": "Raw observed value in series units"
      },
      "mom_pct": {
       "type": "number",
       "description": "Month-over-month % change"
      },
      "yoy_pct": {
       "type": "number",
       "description": "Year-over-year % change"
      },
      "zscore_5y": {
       "type": "number",
       "description": "Z-score relative to trailing 5 years"
      },
      "mom_change": {
       "type": "number",
       "description": "Month-over-month absolute change"
      },
      "yoy_change": {
       "type": "number",
       "description": "Year-over-year absolute change"
      },
      "zscore_12m": {
       "type": "number",
       "description": "Z-score relative to trailing 12 months"
      },
      "above_trend": {
       "type": "integer",
       "description": "1 if value is above long-run trend, else 0"
      },
      "pct_rank_5y": {
       "type": "number",
       "description": "Percentile rank over trailing 5 years (0-100)"
      },
      "rolling_3m_avg": {
       "type": "number",
       "description": "3-month rolling average"
      },
      "rolling_12m_avg": {
       "type": "number",
       "description": "12-month rolling average"
      },
      "trend_direction": {
       "type": "integer",
       "description": "Trend: 1 rising, -1 falling, 0 flat"
      }
     }
    },
    "description": "Observations ordered by date ascending"
   },
   "meta": {
    "type": "object",
    "description": "Series metadata: source_key (FRED series ID), units, frequency (D/W/M/Q/A), date_from, date_to, fields"
   }
  },
  "description": "Station f(x) response with metadata and pre-computed derived metrics"
 },
 "example": {
  "data": [
   {
    "date": "2024-01-01",
    "value": 5.33,
    "mom_pct": 0,
    "yoy_change": 0.5,
    "zscore_12m": 1.2,
    "trend_direction": 1
   }
  ],
  "meta": {
   "frequency": "M",
   "source_key": "HOUST"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/stationfx-housing-starts-new-privately-owned-units-started-30494cb0/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from stationfx.com](https://www.zero.xyz/host/stationfx.com/llms.txt)
