Skip to main content

crewai-zillapi

CrewAI tools for Zillapi, a REST API for Zillow property data.

Give a CrewAI agent the ability to look up a property by address, zpid or Zillow URL, pull valuations, price history, tax history, schools, photos and comparable homes, and search for sale, for rent or sold listings inside a geographic area.

Install

pip install crewai-zillapi

Get an API key

Create a key at zillapi.com. You get 100 credits at signup, no card, one time. Paid plans start at $5 per month. See pricing.

Set the key in your environment:

export ZILLAPI_KEY="zk_your_key_here"

Quick start

from crewai import Agent
from crewai_zillapi import (
    ZillapiPropertyByAddressTool,
    ZillapiPropertyDetailTool,
    ZillapiListingSearchTool,
)

analyst = Agent(
    role="Real estate analyst",
    goal="Answer questions about properties and local markets with real data",
    backstory="You research homes and neighborhoods using live Zillow data.",
    tools=[
        ZillapiPropertyByAddressTool(),
        ZillapiPropertyDetailTool(),
        ZillapiListingSearchTool(),
    ],
)

Use a single tool directly:

import json
from crewai_zillapi import ZillapiPropertyByAddressTool

result = json.loads(
    ZillapiPropertyByAddressTool().run(address="350 5th Ave, New York NY 10118")
)
print(result["data"]["zpid"])

Tools

Tool What it does Credit cost
ZillapiPropertyByAddressTool Resolve a street address to a full property record 3 per successful call
ZillapiPropertyByZpidTool Full property record for a known zpid 1 per successful call
ZillapiPropertyDetailTool One detail section for a zpid 1 per successful call
ZillapiPropertyByUrlTool Resolve a Zillow URL to a property or building 1 per record returned
ZillapiListingSearchTool Search listings inside a bounding box 1 per listing returned
ZillapiJobTool Poll an async job and read its results 0, free
ZillapiAccountTool Plan, remaining credit balance, recent usage 0, free

Failed calls are never charged.

ZillapiPropertyDetailTool sections: zestimate, price-history, tax-history, schools, photos, agent, nearby, open-houses, facts.

Searching an area

A listing search needs a real bounding box in decimal degrees. A place name on its own is not accepted, so convert the place to coordinates first.

import json
from crewai_zillapi import ZillapiListingSearchTool

result = json.loads(
    ZillapiListingSearchTool().run(
        west=-73.99, south=40.74, east=-73.98, north=40.75,
        status="for_sale", beds_min=2, price_max=2_000_000, max_items=25,
    )
)

Because a search costs 1 credit per listing returned, keep max_items tight. Asking for more than 50 listings runs the search asynchronously and returns a job_id, which you poll with ZillapiJobTool until its status is succeeded, then read with action="results".

Response shape

Every tool returns a JSON string with a stable envelope, and the tools never raise from execution. An agent can always parse the result.

{
  "success": true,
  "data": { "zpid": "1234567", "price": 1250000 },
  "request_id": "req_abc123"
}
{ "success": false, "error": { "code": "invalid_filters", "message": "..." } }

data is the payload itself, so you never have to reach through a second wrapper. request_id is worth logging if you need to ask about a specific call. List endpoints also return a meta object alongside data.

Match on code, never on message.

Code Meaning
missing_api_key ZILLAPI_KEY is not set
invalid_api_key The key was rejected
out_of_credits No credits left, top up to continue
invalid_filters A search was sent without a bounding box
invalid_search_url The Zillow search URL was not usable
missing_input A required argument was absent
not_found Nothing matched the address, zpid or URL
job_not_ready The async job has not finished yet
rate_limited Too many requests, respect Retry-After
service_unavailable The data provider is temporarily unavailable
timeout The request timed out
network The API could not be reached

Coverage

These tools cover the synchronous, agent friendly surface of the API. The full REST API also offers batch property jobs, chained search with details, building unit extraction and outbound webhooks. See the API documentation and the OpenAPI spec.

Zillapi is also available as an MCP server for MCP compatible clients.

Notes

Zillapi is an independent service and is not affiliated with, endorsed by, or sponsored by Zillow, Inc. Zillow is a trademark of its respective owner. Use of the data is subject to the Zillapi terms.

License

MIT

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

crewai_zillapi-0.1.0.tar.gz (13.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

crewai_zillapi-0.1.0-py3-none-any.whl (12.2 kB view details)

Uploaded Python 3

File details

Details for the file crewai_zillapi-0.1.0.tar.gz.

File metadata

  • Download URL: crewai_zillapi-0.1.0.tar.gz
  • Upload date:
  • Size: 13.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.3

File hashes

Hashes for crewai_zillapi-0.1.0.tar.gz
Algorithm Hash digest
SHA256 ea0174592a194eca47f8faebe5918bfaac98c54b2a311ab5c4b45278a2da312e
MD5 089b7fcaaf9d55f07b74566cb9909833
BLAKE2b-256 c15f62b31dd08d91866b7a8129247811744c7b5d7394e48fc4c00931d5b3503a

See more details on using hashes here.

File details

Details for the file crewai_zillapi-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: crewai_zillapi-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 12.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.3

File hashes

Hashes for crewai_zillapi-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2d6f705c53c244e926f6070d96c03630ae5355e6c116e67ad29a8cfb55bc22d3
MD5 a3d798afb7c52e4dcd2bfbf07628d431
BLAKE2b-256 be862170116c28ce724f0efc5e9f15fc1358e2c6596f49a7fbb611c7725c09f6

See more details on using hashes here.

Release history Release notifications | RSS feed

0.1.1

2 files

This release

0.1.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page