Homecastr Benchmarks API

Public benchmark catalogs, forecast vintages, score tables, and provenance manifests

GitHub OpenAPI

Operations 4

GET /api/v1/benchmarks/catalog List benchmark and public-data assets #
GET /api/v1/benchmarks/vintages Retrieve validated public forecast vintages #
GET /api/v1/benchmarks/backtests Retrieve public-safe benchmark score tables #
GET /api/v1/benchmarks/sources Retrieve provenance manifests and source catalogs #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/homecastr-com:homecastr-com-benchmarks-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

homecastr-com-benchmarks-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Homecastr Benchmarks API
  version: 1.12.0
  description: Probabilistic home value forecasts and canonical public-data resources for US addresses and geographies. Public read endpoints allow anonymous demo access. An API key provides higher limits and account features. Catalog records distinguish metadata, samples, queryable rows, bulk downloads, restricted assets, and unavailable assets.
  contact:
    name: Homecastr Support
    url: https://www.homecastr.com/support
    email: support@homecastr.com
  termsOfService: https://www.homecastr.com/legal
  license:
    name: Proprietary
    url: https://www.homecastr.com/legal
servers:
- url: https://www.homecastr.com
  description: Production
tags:
- name: Benchmarks
  description: Public benchmark catalogs, forecast vintages, score tables, and provenance manifests
paths:
  /api/v1/benchmarks/catalog:
    get:
      operationId: listBenchmarkDatasets
      summary: List benchmark and public-data assets
      description: Catalog of public-safe benchmark and public-data assets, including release phase, support level, benchmark role, and recommended surface.
      security: []
      tags:
      - Benchmarks
      parameters:
      - name: asset_id
        in: query
        required: false
        schema:
          type: string
        example: backtest.public_vintage_oeo_maricopa_2022
      - name: asset_class
        in: query
        required: false
        schema:
          type: string
        example: backtest_vintage_outputs
      - name: phase
        in: query
        required: false
        schema:
          type: string
        example: phase_1
      - name: public_readiness
        in: query
        required: false
        schema:
          type: string
        example: launch
      - name: format
        in: query
        required: false
        schema:
          type: string
          enum:
          - json
          - csv
        example: json
      responses:
        '200':
          description: Benchmark catalog
          content:
            application/json:
              schema:
                type: object
                properties:
                  dataset_count:
                    type: integer
                  launch_ready_count:
                    type: integer
                  filters:
                    type: object
                  datasets:
                    type: array
                    items:
                      $ref: '#/components/schemas/BenchmarkCatalogEntry'
                  _links:
                    type: object
            text/csv:
              schema:
                type: string
        '404':
          description: Unknown asset_id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /api/v1/benchmarks/vintages:
    get:
      operationId: getBenchmarkVintages
      summary: Retrieve validated public forecast vintages
      description: Validated public-vintage rows with provenance-heavy fields such as vintage_id, publication_date, support_level, benchmark_role, and license_note.
      security: []
      tags:
      - Benchmarks
      parameters:
      - name: vintage_id
        in: query
        required: false
        schema:
          type: string
        example: az_oeo_maricopa_medium_2022_report
      - name: support_level
        in: query
        required: false
        schema:
          type: string
        example: county
      - name: target
        in: query
        required: false
        schema:
          type: string
        example: total_population
      - name: format
        in: query
        required: false
        schema:
          type: string
          enum:
          - json
          - csv
        example: json
      responses:
        '200':
          description: Public forecast vintage rows
          content:
            application/json:
              schema:
                type: object
                properties:
                  vintage_count:
                    type: integer
                  row_count:
                    type: integer
                  filters:
                    type: object
                  records:
                    type: array
                    items:
                      $ref: '#/components/schemas/PublicForecastVintageRecord'
                  _links:
                    type: object
            text/csv:
              schema:
                type: string
        '404':
          description: Unknown vintage_id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /api/v1/benchmarks/backtests:
    get:
      operationId: getBenchmarkBacktests
      summary: Retrieve public-safe benchmark score tables
      description: Public-safe benchmark score summaries such as model-vs-persistence tables. Payloads carry asset IDs, artifact IDs, model version labels, and per-target score rows.
      security: []
      tags:
      - Benchmarks
      parameters:
      - name: benchmark_id
        in: query
        required: false
        schema:
          type: string
        example: acs_cutoff2016_horizon8_maricopa_realized_acs
      - name: target
        in: query
        required: false
        schema:
          type: string
        example: total_population
      - name: format
        in: query
        required: false
        schema:
          type: string
          enum:
          - json
          - csv
        example: json
      responses:
        '200':
          description: Benchmark score tables
          content:
            application/json:
              schema:
                type: object
                properties:
                  benchmark_count:
                    type: integer
                  filters:
                    type: object
                  benchmarks:
                    type: array
                    items:
                      $ref: '#/components/schemas/BenchmarkBacktestResult'
                  _links:
                    type: object
            text/csv:
              schema:
                type: string
        '404':
          description: Unknown benchmark_id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /api/v1/benchmarks/sources:
    get:
      operationId: getBenchmarkSources
      summary: Retrieve provenance manifests and source catalogs
      description: Source catalogs, archive ledgers, and benchmark registry metadata with provenance-heavy fields. Use include_details=true to expand nested source lists.
      security: []
      tags:
      - Benchmarks
      parameters:
      - name: asset_id
        in: query
        required: false
        schema:
          type: string
        example: provenance.arizona_archive_status_ledger
      - name: include_details
        in: query
        required: false
        schema:
          type: boolean
          default: false
      - name: format
        in: query
        required: false
        schema:
          type: string
          enum:
          - json
          - csv
        example: json
      responses:
        '200':
          description: Benchmark source manifests
          content:
            application/json:
              schema:
                type: object
                properties:
                  manifest_count:
                    type: integer
                  filters:
                    type: object
                  manifests:
                    type: array
                    items:
                      $ref: '#/components/schemas/BenchmarkSourceManifest'
                  _links:
                    type: object
            text/csv:
              schema:
                type: string
        '404':
          description: Unknown asset_id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  schemas:
    ErrorResponse:
      type: object
      properties:
        error:
          type: string
        tip:
          type: string
        example:
          type: string
      required:
      - error
    BenchmarkBacktestResult:
      type: object
      required:
      - asset_id
      - benchmark_id
      - benchmark_role
      - support_level
      - origin_year
      - horizon_years
      - metric
      - data_snapshot_id
      - license_note
      - training_eligibility
      - rows
      properties:
        asset_id:
          type: string
        benchmark_id:
          type: string
        benchmark_role:
          type: string
        support_level:
          type: string
        origin_year:
          type: integer
        horizon_years:
          type: array
          items:
            type: integer
        metric:
          type: string
        publication_date:
          type:
          - string
          - 'null'
          format: date
        retrieval_date:
          type:
          - string
          - 'null'
          format: date
        data_snapshot_id:
          type: string
        model_version:
          type:
          - string
          - 'null'
        license_note:
          type: string
        training_eligibility:
          type: string
          enum:
          - benchmark_only
          - consumer_feed
          - training_candidate
          - holdback
        interpretation:
          type: string
        rows:
          type: array
          items:
            $ref: '#/components/schemas/BenchmarkBacktestScoreRow'
        _links:
          type: object
          additionalProperties:
            type: string
    PublicForecastVintageRecord:
      type: object
      required:
      - asset_id
      - vintage_id
      - source
      - support_level
      - benchmark_role
      - comparison_method
      - geography
      - target
      - scenario
      - year
      - data_snapshot_id
      - license_note
      - training_eligibility
      properties:
        asset_id:
          type: string
        vintage_id:
          type: string
        source:
          type: string
        publication_date:
          type:
          - string
          - 'null'
          format: date
        retrieval_date:
          type:
          - string
          - 'null'
          format: date
        support_level:
          type: string
        benchmark_role:
          type: string
        comparison_method:
          type: string
        geography:
          type: string
        target:
          type: string
        scenario:
          type: string
        year:
          type: integer
        value:
          type:
          - number
          - 'null'
        notes:
          type: string
        source_url:
          type:
          - string
          - 'null'
          format: uri
        source_file:
          type:
          - string
          - 'null'
        data_snapshot_id:
          type: string
        model_version:
          type:
          - string
          - 'null'
        license_note:
          type: string
        training_eligibility:
          type: string
          enum:
          - benchmark_only
          - consumer_feed
          - training_candidate
          - holdback
        _links:
          type: object
          additionalProperties:
            type: string
    BenchmarkBacktestScoreRow:
      type: object
      required:
      - target
      - h0_model
      - h0_persistence
      - h0_improvement_vs_persistence_pp
      - h7_model
      - h7_persistence
      - h7_improvement_vs_persistence_pp
      properties:
        target:
          type: string
        h0_model:
          type: number
        h0_persistence:
          type: number
        h0_improvement_vs_persistence_pp:
          type: number
        h7_model:
          type: number
        h7_persistence:
          type: number
        h7_improvement_vs_persistence_pp:
          type: number
    BenchmarkCatalogEntry:
      type: object
      required:
      - asset_id
      - asset_class
      - support_level
      - license_status
      - sensitivity
      - public_readiness
      - phase
      - benchmark_role
      - license_note
      - data_snapshot_id
      - training_eligibility
      - formats
      - endpoint_family
      properties:
        asset_id:
          type: string
        asset_class:
          type: string
        current_surface:
          type: string
        support_level:
          type: string
        target_family:
          type: string
        source_family:
          type: string
        license_status:
          type: string
        sensitivity:
          type: string
          enum:
          - low
          - medium
          - high
        public_readiness:
          type: string
          enum:
          - launch
          - draft
          - hold
        recommended_surface:
          type: string
        phase:
          type: string
        blockers:
          type: string
        next_step:
          type: string
        title:
          type: string
        description:
          type: string
        benchmark_role:
          type: string
        license_note:
          type: string
        data_snapshot_id:
          type: string
        model_version:
          type:
          - string
          - 'null'
        publication_date:
          type:
          - string
          - 'null'
          format: date
        retrieval_date:
          type:
          - string
          - 'null'
          format: date
        training_eligibility:
          type: string
          enum:
          - benchmark_only
          - consumer_feed
          - training_candidate
          - holdback
        formats:
          type: array
          items:
            type: string
        endpoint_family:
          type: string
          enum:
          - catalog
          - vintages
          - backtests
          - sources
          - forecast
          - download
          - none
        example_path:
          type:
          - string
          - 'null'
        _links:
          type: object
          additionalProperties:
            type: string
    BenchmarkSourceManifest:
      type: object
      required:
      - asset_id
      - manifest_type
      - title
      - support_level
      - benchmark_role
      - license_note
      - data_snapshot_id
      - training_eligibility
      - summary
      properties:
        asset_id:
          type: string
        manifest_type:
          type: string
        title:
          type: string
        support_level:
          type: string
        benchmark_role:
          type: string
        license_note:
          type: string
        publication_date:
          type:
          - string
          - 'null'
          format: date
        retrieval_date:
          type:
          - string
          - 'null'
          format: date
        data_snapshot_id:
          type: string
        model_version:
          type:
          - string
          - 'null'
        training_eligibility:
          type: string
          enum:
          - benchmark_only
          - consumer_feed
          - training_candidate
          - holdback
        summary:
          type: object
        details:
          type: object
        _links:
          type: object
          additionalProperties:
            type: string
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: Include your Homecastr API key. Omit (or use `hc_demo_public_readonly`) for the free demo tier (50 req/hr per IP). Get a free key and integration docs at https://www.homecastr.com/docs