AI voice agents for inbound property inquiries answer calls about a specific listing from the agency's own listing feed, CRM or Knowledge Base. They find the property first, read only the fields your data returns, record the caller's contact details and interest, and pass negotiation, legal, school, neighborhood and safety questions to a person.
Key Takeaways
- Confirm the exact listing first; the wrong property makes every answer wrong.
- The agent reads only the fields your listing data returns, never from memory.
- Negotiation, legal, school, neighborhood and safety questions always go to a person.
This post is part of our guide to AI voice agents for real estate. The guide's section on listing facts sets the rule this call rests on: everything the agent says about a home comes from the agency's own feed or customer relationship management (CRM) system, never from the model. Here that rule becomes a working inbound line in Dograh, an open-source, self-hostable voice agent platform, from the moment a caller names a property to the moment their question lands in your CRM.
Find the listing before answering anything
A listing call goes wrong at the first step when the agent and the caller are talking about different homes. Two listings on the same street, or a unit number the speech model dropped, is enough for the agent to give a confident answer about the wrong property.
The cleanest fix is one tracking number per listing, printed on that home's yard sign and portal page. In Dograh, Pre-Call Data Fetch sits at the bottom of the Start Call node. Set to "Inbound calls only", it sends the called number to your endpoint once the call connects, and your endpoint returns the listing that number belongs to. Every tracking number can point at the same agent, because each phone number has its own inbound workflow setting. The agent can open by checking it: "You're calling about 14 Alder Court, is that right?"

When the agency runs one main number, the agent asks instead, by street address or by the listing reference on the portal page, and reads the match back before it answers anything. If the lookup returns two candidates, it asks for the unit or the town. If it returns nothing, it says so and offers to have an agent call back.
The listing's status comes back with the record, so a caller asking about a home that went under contract last week hears that first.
Answer from the listing record, one field at a time
Once the property is confirmed, an HTTP API tool asks your listing feed or CRM for that listing's fields during the call. A typical response carries the list price, status, bedrooms, bathrooms, parking, the monthly homeowners association (HOA) fee and open-house times. The agent reads those values and nothing else. Price is always the list price, never a guess at what the seller would accept.
Write the rule into the node prompt in plain words. Answer only from the fields the tool returned. If a field is empty or missing, say "I don't have that detail, I'll have the agent confirm it" and record the question. Without that line, a language model asked about a basement will happily describe one. Each unanswered question goes to the CRM with the listing and the caller's number, so the listing agent calls back with an answer.
Stable documents can sit in the Knowledge Base, such as the HOA rules or the agency's viewing policy. It accepts PDF, DOCX, DOC, TXT and JSON files up to 5 MB each. Keep price and status out of uploaded files. A brochure saved before a price cut quotes the old price on every call until someone replaces it.
Lookups take a moment, so give the tool a start announcement in its Messages, such as "Let me pull up that listing," and the line never goes quiet. The same answer-from-your-own-documents pattern in healthcare is worked through in AI Voice Agents for Patient Support Lines: Answer From Your Own Documents.
Open Source Alternative to Vapi / Retell
Self-hosted voice agent platform — no per-minute fees
dograh-hq/dograh
Star on GitHub
Five questions the agent always passes to a person
Some questions have an answer the agent could find and still should not give. Five kinds always go to a person: negotiation, legal or disclosure interpretation, school quality, neighborhood make-up and area safety. This section is general information, not legal advice.
"Will they take less?" belongs to the listing agent, who works for the seller. Any hint from the voice agent could commit the seller to a position nobody agreed. "Is the crack in the disclosure a problem?" belongs to the listing agent and the buyer's own inspector or lawyer, because a reading of a disclosure is advice.
The other three are fair housing questions. Section 3604(c) of the Fair Housing Act makes it unlawful to make any statement about the sale or rental of a dwelling "that indicates any preference, limitation, or discrimination based on race, color, religion, sex, handicap, familial status, or national origin". A caller who asks "is it a good area for families?" or "what kind of people live there?" is inviting exactly that kind of statement, and a language model will generally oblige. Calling a school "great" or a street "safe" can work as a coded signal about who lives nearby, so these questions generally go to public sources and a human agent.
The reply is the same for every caller. The agent shares the listing facts it has and offers an agent follow-up, adding that school and neighborhood information is available from public sources. The guide shows how to make that reply fixed text, so the model never improvises it.
HUD withdrew its 2024 guidance on fair housing and digital-platform advertising in a September 2025 memo, LeadingAge reported, while the statute still reads as quoted above, so build the script to the Act itself. Many states and cities add protected characteristics of their own. Confirm the pass-on list and the reply wording with fair housing counsel before launch.
Record who called and what they asked
Every inquiry call ends with a record in the CRM, even when the caller books nothing. The agent asks for a name and the best number to reach them, then notes their interest as they stated it, such as "wants to see it this weekend" or "selling their own home first".
Variable extraction is an AI step, so those notes are the agent's reading of the call. The transcript and the recording stay the exact record. After the call, a webhook posts the caller's details, the listing, the questions they asked and the ones left unanswered to the CRM. If your endpoint has a temporary problem, Dograh retries automatically, up to 5 attempts. The mechanics are in Webhook-Driven Voice Agents: Real-Time Data In and Out.
General listing questions need no identity check, because the agent shares nothing beyond what the listing already shows the public. That changes when a caller asks about something of their own, such as an offer they made or a viewing they booked. A phone number finds a record and never proves who is holding the phone, so the agent first checks the caller's name plus the property address or email on file.
Join the Dograh Community
Dograh is an OSS alternative to Vapi. Join our Slack community for queries, releases, best practices & community interactions.
Hand the caller on to a viewing or an agent
The inquiry call ends with the next step, handed to the flow that owns it. Most callers who like the answers want to see the home, so the agent offers a viewing. Live slots and the seller's showing window belong to AI voice agents for property-visit scheduling.
If the caller agrees, the agent then asks the short qualification questions, the same ones for everyone. Those are covered in AI voice agents for real estate lead qualification.
A caller ready to talk about an offer goes to a person. The agent writes the details to the CRM first, then uses Transfer Call, which works on Twilio only and passes no summary by default. If nobody answers within 30 seconds, the default timeout, the caller stays with the agent, which records a callback request. If the same number also takes general office calls, start from our guide to AI receptionists.
Start with one listing line
Pick one listing with its own tracking number and run the line for a week before adding the rest. Read the transcripts and the unanswered-question log together. The questions the agent could not answer show which fields your listing feed is missing, and fixing the feed improves every later call.
Self-hosting Dograh keeps recordings and transcripts on the agency's servers, and the caller's audio stays inside your infrastructure only when the speech and language models run there too. Dograh has no retention setting, so your own policy decides how long recordings and transcripts are kept. Self-hosted Dograh has no per-minute platform fee, though servers, model keys and phone minutes still cost money. Dograh Cloud has a 1¢-a-minute platform fee.
Glossary
- Tracking number
- A phone number used for one listing only, printed on its yard sign and portal page. When a call arrives on it, the agency's system knows which property the caller means before the agent speaks.
- Listing feed
- The agency's live source of listing data, such as a multiple listing service (MLS) export or the CRM's listing records. The voice agent reads price and status from it during the call, never from an uploaded file.
- Callback request
- A record the agent writes to the CRM when it cannot answer a question or nobody picks up a transfer. It holds the caller, the listing and the question, so the listing agent can call back with an answer.
- Knowledge Base
- Documents uploaded to Dograh that the agent can search during a call, in PDF, DOCX, DOC, TXT or JSON up to 5 MB each. It suits stable material such as HOA rules, never live price or status.

