Dograh

AI Voice Agents for Legal Appointment Scheduling: Conflicts First

AI Voice Agents for Legal Appointment Scheduling: Conflicts First
Use CaseOctober 21, 2026·8 min read

AI Voice Agents for Legal Appointment Scheduling: Conflicts First

Pritesh Kumar
Pritesh Kumar·Co-founder, Dograh AI

Building Dograh, the open-source alternative to Vapi. OSS and Voice AI. Exit founder and YC alum.

AI voice agents for legal appointment scheduling book consultations from the attorney's live calendar. They collect the caller's name, contact details, matter type and the other party's names, read the booking back and write it once. The booking stays tentative until staff clear the conflict check, and reminder calls go only to callers who agreed to them.

Key Takeaways

  • Offer only consultation slots the firm's calendar returned during the call.
  • Collect names for the conflict check; leave the case facts for the lawyer.
  • The booking stays tentative until staff clear the conflict check.

This post is part of our guide to AI voice agents for law firms. The guide's section "Before the client: intake, missed calls and consultations" sums up this one in a line: book a consultation from the attorney's live calendar, write it to the firm's system, and keep it tentative until the conflict check clears. Here is that call in full, built on Dograh, an open-source, self-hostable voice agent platform.

The person booking is already a prospective client

The caller asking for a consultation is owed confidentiality before anyone at the firm has spoken to them. Model Rule 1.18, quoted here from Pennsylvania's adopted text, says: "A person who consults with a lawyer about the possibility of forming a client-lawyer relationship with respect to a matter is a prospective client." Rule 1.18(b) adds that the duty holds "Even when no client-lawyer relationship ensues".

So the booking call collects what booking needs and no more. Every detail it hears is something the firm is now responsible for, and a scheduling call that drifts into the facts of the case gives the firm more to protect without helping the booking.

The phone is still how many of these callers want to talk. In CallRail's 2026 marketing outlook for law firms, a survey of 100 legal professionals in October 2025, firms said 84% of clients who first reach out by phone prefer to keep using it.

How the booking call runs

The agent reads open times from the firm's calendar and offers nothing else. The call opens with the Greeting Text, fixed words Dograh plays exactly as written. It names the firm. If you want to tell callers they're speaking with an automated assistant, or your location requires it by law, say that there too.

The agent asks which practice area the matter falls under and which office the caller prefers, then the caller's name and contact details and the names of the other people or companies involved. It does not ask what happened. If the caller starts describing the case, the agent says politely that the lawyer will go through that in the consultation.

Then an HTTP API tool asks the firm's calendar or practice management system for open consultation slots for that practice area and office. A short start line on the tool, such as "Let me check the calendar," fills the pause. The agent offers only the slots that came back, never a time from its prompt.

Before anything is written, the agent reads the booking back: the date and time, the office or video link type, the caller's name spelled out and the best number to reach them. Once the caller confirms, a second HTTP API tool writes the booking, and the firm's system returns a reference the agent reads out.

A network error can make a tool call run twice. Add a Preset Parameter named workflow_run_id with the value {{initial_context.workflow_run_id}} to the booking tool. Dograh adds no idempotency header of its own, so the firm's system uses that ID to keep one booking. Our post on booking meetings mid-call shows the same read-then-write pattern against a scheduling API.

Conflicts clear before the consult, not before the booking

The booking is tentative until staff clear the names, and the agent never runs the conflict decision itself.

The booking tool writes the caller's name and every other party's name to the firm's system as a tentative booking. Before the consultation, staff or the firm's own conflict software check those names against current and former clients. On a clear result, the booking is confirmed. On a hit, staff cancel and refer the caller elsewhere, and nobody tells the caller which client caused it.

A prospective client books by phone with a voice agent, the agent writes a tentative booking with the names to the firm's calendar, and staff check the names before the consult, confirming or cancelling it.
Checking names during the call can hint that the firm acts for the other side, and possible matches need a person to judge. Booking first keeps the call short and the decision with staff.

Checking during the call sounds faster, and it creates two problems. Name matching is messy: a married name or a parent company gives a possible match that only a person can judge. And once the agent hears a hit, anything it says next can hint that the firm acts for the other side. Booking first and clearing before the consult keeps the call short and the decision with a person.

The full argument for running the check early in intake, and what to do when a caller volunteers facts in the first sentence, is in AI Voice Agents for Law Firm Intake.

Dograh

Open Source Alternative to Vapi / Retell

Self-hosted voice agent platform — no per-minute fees

dograh-hq/dograh

Star on GitHub

Fees and urgent matters

Money and urgency are the two places the booking call hands over to the firm's own systems and people.

Some firms charge for a consultation. The agent states the fee as the firm's system returned it and never decides a discount or a waiver. No card number is spoken on the call: an HTTP API tool asks the firm's own system or payment provider to send its secure payment link by text or email. Dograh has no feature for taking payments on a call and sends no texts itself.

Some callers cannot wait for a slot next week, such as someone with a hearing tomorrow or a family member just arrested. The agent writes the caller's name and the reason to the firm's system, then hands over with Transfer Call, which works on Twilio only and passes no summary. If nobody answers within the 30-second default, the caller stays with the agent; tell it in the prompt to offer an urgent callback and write the request through an HTTP API tool.

Reminder and reschedule calls

A reminder call is an outbound call, so it starts with consent captured at booking. In its February 2024 ruling, FCC 24-17, the Federal Communications Commission confirmed that the Telephone Consumer Protection Act (TCPA) limits on "artificial or prerecorded voice" calls cover "current AI technologies that generate human voices". Such calls generally need the called party's prior express consent. The booking call asks for it plainly ("Is it all right if we call you with a reminder?") and writes the answer to the firm's system. This is general information, not legal advice, so confirm your own wording with counsel.

A reminder to someone who asked for the consultation answers their own request. Under the comment to Rule 7.3, a communication "in response to a request for information" is generally not a solicitation.

The firm's system starts these calls, through the API Trigger one at a time or a campaign for a day's list. Campaign calling hours use one time zone per campaign, and Campaigns have no per-contact call cap, so the firm's list sets how often anyone is called. Before naming the consultation, the agent confirms it is speaking to the person who booked, because confirming that someone has a lawyer's appointment can itself reveal a legal matter. A voicemail gives only the firm's name and a callback number. In Settings, under "Enable voicemail and screening handling", set "When voicemail is detected" to "Leave a message" with that short text, or to "Disconnect the call".

A reschedule runs the booking steps again: read live slots, offer only those, read back, write. Calls to existing clients about documents are a different job, covered in AI voice agents for document-collection reminders.

Join the Dograh Community

Dograh is an OSS alternative to Vapi. Join our Slack community for queries, releases, best practices & community interactions.

Where to start

Start with inbound booking calls after hours, when nobody is at the desk. Callbacks to people whose calls went unanswered can book through the same flow, as AI voice agents for missed-call recovery in law firms sets out. Test on a real phone number before any client hears it, and spell back every surname, because names are where phone audio fails most.

A booking call carries names and a matter type, not case facts, so it can run on Dograh Cloud while the firm plans where intake will run. Self-hosted Dograh has no per-minute platform fee (servers, model keys and phone minutes still cost); Dograh Cloud has a 1¢-a-minute platform fee.

Glossary

Prospective client
Under Model Rule 1.18, a person who consults a lawyer about possibly forming a client-lawyer relationship. The duty of confidentiality applies from the booking call, even if the firm never takes the matter.
Tentative booking
A consultation written to the firm's calendar but not yet confirmed, because staff have not cleared the conflict check. On a hit, staff cancel it and refer the caller elsewhere.
Conflict check
Matching the caller and every other party against the firm's current and former clients. The booking call collects the names; staff or the firm's conflict software decide the result before the consult.
Preset parameter
A tool value Dograh fills from the call's own data, such as workflow_run_id, rather than from the conversation. The firm's system uses it to keep one booking if a request arrives twice.

Frequently Asked Questions

Get started with Dograh

Build, deploy, and scale AI agents with Dograh. Join the community of developers building the future.