# NovaPath Community Indicator Comparator

> NovaPath Community Indicator Comparator is a paid API for AI agents from instructional-decision-engine-x402.vercel.app, paid per call via x402, $0.25/call, status unknown (last checked 2026-10-31).

Compares two community indicators for definitional consistency, population alignment, geographic boundary compatibility, reference period overlap, unit equivalence, and statistical uncertainty before yielding or withholding a comparison result.

## Facts

- Endpoint: POST https://instructional-decision-engine-x402.vercel.app/research/indicator-compare?utm_source=zero.xyz
- Price: $0.25/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-31
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/novapath-community-indicator-comparator-3605137d
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_bE9yVcXMfo-H-75LN1LFt

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 novapath-community-indicator-comparator-3605137d -d '<json body>'
```

Example prompt: Can you check whether these two poverty estimates are actually comparable — the left is an ACS 5-year estimate for county 06037 with boundary year 2020, covering all people, from 2019-01-01 to 2023-12-31, expressed as a percent, with an estimate of 14.2, margin of error 1.1, and 90% confidence; the right is an ACS 1-year estimate for the same county, boundary year 2020, all people, from 2023-01-01 to 2023-12-31, percent, estimate 13.8, margin of error 2.3, 90% confidence — run a cross_section comparison and tell me if any differences would be misleading.

## When to prefer this

Choose this endpoint when you need to programmatically guard against apples-to-oranges comparisons of community statistics before publishing, reporting, or feeding data into downstream models. It is especially valuable when combining data from different Census Bureau products (ACS 1-year vs 5-year vs decennial), different geographic vintages, or mixing administrative records with survey estimates — situations where naive subtraction or ratio calculations would mislead. Prefer it over manual review when margin-of-error preservation and boundary-year compatibility checking are required for statistical rigor.

## Known failure modes

- Mismatched indicator enums (e.g. 'poverty' vs 'unemployment') cause an immediate incompatibility result rather than an error
- Invalid GEOID format (must match state/county/tract digit pattern) returns a 400-level validation error
- Unsupported source enum value causes schema rejection
- MOE provided as negative number fails schema minimum validation
- Reference period end before start may cause logic rejection
- Boundary year outside 1900–2100 range fails validation
- Unknown confidence level ('unknown') may reduce the informativeness of the uncertainty assessment but is accepted

## How this service works

Compare two community indicators for consistent definitions, populations, boundaries, reference periods, units and uncertainty. Withholds misleading differences and preserves source-specific margins of error.

## Output

Returns a structured assessment indicating whether the two submitted indicators are methodologically comparable, itemizing which dimensions (definition, population, geography/boundary, reference period, unit, statistical uncertainty) are consistent or problematic. Misleading comparisons are withheld with an explanation; valid comparisons include source-specific margins of error preserved for downstream use.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "left": {
   "type": "object",
   "required": [
    "indicator",
    "population",
    "geographyLevel",
    "geoid",
    "boundaryYear",
    "source",
    "start",
    "end",
    "unit",
    "estimate",
    "moe",
    "confidence"
   ],
   "properties": {
    "end": {
     "type": "string",
     "pattern": "^20[0-9]{2}-[0-9]{2}-[0-9]{2}$"
    },
    "moe": {
     "anyOf": [
      {
       "type": "number",
       "maximum": 1000000000,
       "minimum": 0
      },
      {
       "type": "null"
      }
     ]
    },
    "unit": {
     "enum": [
      "percent",
      "count",
      "usd"
     ],
     "type": "string"
    },
    "geoid": {
     "type": "string",
     "pattern": "^[0-9]{2}(?:[0-9]{3}(?:[0-9]{6})?)?$"
    },
    "start": {
     "type": "string",
     "pattern": "^20[0-9]{2}-[0-9]{2}-[0-9]{2}$"
    },
    "source": {
     "enum": [
      "acs_1_year",
      "acs_5_year",
      "decennial",
      "administrative",
      "local_survey"
     ],
     "type": "string"
    },
    "estimate": {
     "type": "number",
     "maximum": 1000000000,
     "minimum": 0
    },
    "indicator": {
     "enum": [
      "poverty",
      "unemployment",
      "child_population",
      "housing_cost_burden",
      "other"
     ],
     "type": "string"
    },
    "confidence": {
     "enum": [
      "90",
      "95",
      "99",
      "unknown"
     ],
     "type": "string"
    },
    "population": {
     "enum": [
      "all_people",
      "children_under_5",
      "households",
      "labor_force",
      "other"
     ],
     "type": "string"
    },
    "boundaryYear": {
     "type": "integer",
     "maximum": 2100,
     "minimum": 1900
    },
    "geographyLevel": {
     "enum": [
      "state",
      "county",
      "tract"
     ],
     "type": "string"
    }
   },
   "additionalProperties": false
  },
  "mode": {
   "enum": [
    "cross_section",
    "change"
   ],
   "type": "string"
  },
  "right": {
   "type": "object",
   "required": [
    "indicator",
    "population",
    "geographyLevel",
    "geoid",
    "boundaryYear",
    "source",
    "start",
    "end",
    "unit",
    "estimate",
    "moe",
    "confidence"
   ],
   "properties": {
    "end": {
     "type": "string",
     "pattern": "^20[0-9]{2}-[0-9]{2}-[0-9]{2}$"
    },
    "moe": {
     "anyOf": [
      {
       "type": "number",
       "maximum": 1000000000,
       "minimum": 0
      },
      {
       "type": "null"
      }
     ]
    },
    "unit": {
   
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/novapath-community-indicator-comparator-3605137d/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from instructional-decision-engine-x402.vercel.app](https://www.zero.xyz/host/instructional-decision-engine-x402.vercel.app/llms.txt)
