{
  "opencollection": "1.0.0",
  "info": {
    "name": "Zillapi: Zillow property data Search API",
    "version": "1.0.0"
  },
  "request": {
    "auth": {
      "type": "bearer",
      "token": "{{bearerToken}}"
    }
  },
  "items": [
    {
      "info": {
        "name": "Search",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Search listings with filters",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.zillapi.com/v1/search",
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Structured listing search using normalized filters (option A) or a pre-built Zillow searchQueryState URL (option B). A `bbox` or `searchUrls` is REQUIRED — a free-text location alone is rejected with 400 invalid_filters and never hits upstream. Sync when maxItems ≤ 50, async (202/job) otherwise. Billed at 1 credit per result returned; failed calls are free."
        },
        {
          "info": {
            "name": "Search then enrich with details",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://api.zillapi.com/v1/search/with-details",
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Run a search and enrich every matched zpid with the full property-detail record in one chained async job. Always async; the results returned by GET /v1/jobs/{id}/results are detail rows (Property shape), not search rows. Billed per stage: 1 credit per search result plus 1 credit per detail record. Failed calls are free."
        }
      ]
    }
  ],
  "bundled": true
}