API Reference

Programmatic access to Viadomus real estate market intelligence. Available on the Executive plan.

Authentication

All API requests require an API key passed as a Bearer token in the Authorization header.

Authorization: Bearer vd_your_api_key

Generate your API key in Settings → API Access. Executive plan required.

Base URL

https://viadomus.io

Rate Limits

500

per month

Market Report

200

per month

Deal Analyser

100

per month

Market Search

unlimited

National Data

Limits reset on the 1st of each month. Each response includes _meta.calls_used and _meta.calls_limit so you can track usage programmatically.

Endpoints

GET/api/v1/market500 calls/month

Market Report

Full market intelligence report for any US zip code. Returns price trends, rent data, vacancy, employment, walkability, crime, permits, and investment analysis.

Parameters

zipstring · required5-digit US zip code
aiboolean · optionalInclude AI narrative analysis. Default: true

Example Request

curl -X GET "https://viadomus.io/api/v1/market?zip=78701" \
  -H "Authorization: Bearer vd_your_api_key"

Example Response

{
  "zip": "78701",
  "city": "Austin",
  "state": "TX",
  "zhvi_value": 725000,
  "zhvi_value_yoy_pct": 0,
  "zori_rent": 2800,
  "zori_rent_yoy_pct": 0.94,
  "gross_yield": 4.63,
  "vacancy_rate": 9.0,
  "unemployment_rate": 3.1,
  "walk_score": 99,
  "violent_crime_rate": 36.8,
  "median_rent_1bed": 2100,
  "median_rent_2bed": 2800,
  "days_on_market": 73,
  "active_listings": 191,
  "ai_sentiment": "neutral",
  "ai_headline": "...",
  "ai_verdict": "...",
  "_meta": { "calls_used": 1, "calls_limit": 500 }
}
POST/api/v1/deal200 calls/month

Deal Analyser

Analyse a rental property investment. Returns cashflow, cap rate, cash-on-cash return, DSCR, 5-year projection, and a BUY / HOLD / PASS verdict.

Parameters

addressstring · requiredFull property address
purchase_pricenumber · requiredPurchase price in USD
down_payment_pctnumber · optionalDown payment %. Default: 20
interest_ratenumber · optionalAnnual interest rate %. Default: current 30yr rate
loan_term_yearsnumber · optionalLoan term. Default: 30
bedroomsnumber · optionalNumber of bedrooms for rent estimate

Example Request

curl -X POST "https://viadomus.io/api/v1/deal" \
  -H "Authorization: Bearer vd_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "address": "123 Main St, Austin, TX 78701",
    "purchase_price": 450000,
    "down_payment_pct": 25,
    "bedrooms": 2
  }'

Example Response

{
  "address": "123 Main St, Austin, TX 78701",
  "purchase_price": 450000,
  "monthly_cashflow": 142,
  "annual_cashflow": 1704,
  "cap_rate": 5.2,
  "cash_on_cash": 3.8,
  "dscr": 1.12,
  "gross_yield": 4.63,
  "ai_recommendation": "negotiate",
  "ai_verdict": "...",
  "_meta": { "calls_used": 1, "calls_limit": 200 }
}
POST/api/v1/search100 calls/month

Market Search

Search and rank US real estate markets using natural language or structured filters. Returns matching zip codes ranked by yield, rent, or value.

Parameters

querystring · requiredNatural language search query
limitnumber · optionalMax results to return. Default: 10, max: 50

Example Request

curl -X POST "https://viadomus.io/api/v1/search" \
  -H "Authorization: Bearer vd_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "query": "High yield Sun Belt markets under $200K home value",
    "limit": 10
  }'

Example Response

{
  "markets": [
    {
      "zip": "30315",
      "city": "Atlanta",
      "state": "GA",
      "zhvi_value": 185000,
      "zori_rent": 1650,
      "gross_yield": 10.7
    }
  ],
  "total": 10,
  "ranked_by": "gross_yield",
  "_meta": { "calls_used": 1, "calls_limit": 100 }
}
GET/api/v1/nationalUnlimited

National Benchmarks

Current US national real estate benchmarks including median home value, median rent, vacancy rate, unemployment, and mortgage rates.

Example Request

curl -X GET "https://viadomus.io/api/v1/national" \
  -H "Authorization: Bearer vd_your_api_key"

Example Response

{
  "median_home_value": 366019,
  "value_yoy": 0.4,
  "median_rent": 1910,
  "rent_yoy": 1.8,
  "vacancy_rate": 7.2,
  "unemployment_rate": 4.1,
  "avg_walk_score": 48,
  "_meta": { "note": "National benchmarks — no call limit" }
}

Error Codes

400Bad RequestMissing or invalid parameters
401UnauthorizedMissing, invalid, or expired API key
403ForbiddenAPI access requires Executive plan
429Too Many RequestsMonthly API limit reached. Resets on the 1st.
500Server ErrorInternal error. Contact support if persistent.