Dograh

AI Pickup Scheduling and Service Reminder Calls for Waste Haulers

AI Pickup Scheduling and Service Reminder Calls for Waste Haulers
Use CaseNovember 5, 2026·7 min read

AI Pickup Scheduling and Service Reminder Calls for Waste Haulers

Vemu Sandeep
Vemu Sandeep·GTM Engineer, Dograh AI

GTM engineer at Dograh working across voice AI and enterprise AI. IIT (BHU) and IIM Visakhapatnam alumnus.

AI pickup scheduling and service reminder calls book bulk pickups against the hauler's accepted-items list and open route dates, read the booking back, then call the day before to confirm the items will be out. Route change notices become calls only when the customer must act. Fewer bookings fail, so fewer angry callbacks follow.

Key Takeaways

  • Most missed bulk pickups start at booking, with a wrong item or date.
  • The reminder asks the customer to confirm the items will be out.
  • Send route notices by text or email unless the customer must act.

This post is part of our guide to AI voice agents for waste management companies, where bulk questions are answered from the hauler's own list. Below, we cover bulk booking, reminders and route change notices. Each section also shows how those calls run in Dograh, our open-source AI voice agent platform.

Why bulk pickups get missed

Bulk pickups fail more often than regular collection because each one is a one-off booking. In 2025, New York City's 311 service request data logged 4,264 missed-collection requests for bulky trash, 2,208 for bulky recycling and 826 for trash and bulky trash together, all for the city's Department of Sanitation. Each one is a resident who called back about the same pile.

Most of those failures start at the booking. Often the resident booked an item the truck won't take, or a day the bulk route doesn't run. A driver who finds a fridge without the right tag, or nothing at the curb, leaves it.

Three steps: a resident books a bulk pickup of a fridge with the AI agent. The agent checks the hauler's accepted-items list, where a fridge needs its refrigerant removed first. The resident picks a date from a week strip where only the days the bulk route runs are open.
Each missed bulk pickup is a resident calling back about the same pile, so the checks belong on the booking call. The reminder call the day before then makes sure the items will actually be out.

So the fix sits at both ends. The booking call checks the items and the date against the hauler's own rules, and the reminder call the day before makes sure the items will actually be out.

Booking a bulk pickup in one call

A good booking call ends with a confirmation number and a read-back the customer agreed to. The agent first verifies the caller with the last four digits of the account number, because the booking ties to a service address.

Then it goes item by item. The agent answers from the hauler's accepted-items list in its Knowledge Base, including per-pickup limits and special rules such as appliances that need refrigerant removed first. Anything not on the list gets the list's own answer or a person.

Next, an HTTP API tool reads the open bulk dates for that address's route from your system, and the customer picks one. A second tool writes the booking with the item list. Add a Preset Parameter named workflow_run_id with the value {{initial_context.workflow_run_id}}, so your system ignores a duplicate if the request is sent twice. That makes it a retry-safe booking.

The booking counts once your system returns a confirmation number. The agent then reads back the items, the date, any fee from your price list and the set-out time, such as "by 6 a.m. at the curb, not blocking the cart."

Dograh

Open Source Alternative to Vapi / Retell

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

dograh-hq/dograh

Star on GitHub

The reminder call the day before

The reminder exists to confirm one thing: the items will be out on time. Run it as a campaign from your system's list of tomorrow's bulk bookings. Extra columns in the file, such as the items and the set-out time, become variables the agent can read.

Calling hours are set by weekday in one time zone per campaign, so split a list that covers several time zones. You set the retries (0 to 10) and the delay between them, and voicemail handling is off until you turn it on. Set Pre-Call Data Fetch to Outbound calls only, and it refreshes the booking when the call connects, which catches a cancellation made after the list was built.

The agent asks for the account holder, confirms identity with the last digits of the account number, and only then reads the booking back. A yes is recorded. If the customer wants a different day, the agent reads the next open dates and books one through the same tools, and a cancellation frees the slot.

If you turn voicemail handling on and set it to Leave a message, the agent plays one fixed message. Keep it to the hauler's name, "about a scheduled pickup" and a callback number, with no address or items. Our guide to AI voice agents for appointment reminders and confirmations covers the confirm-or-change loop across industries.

Route and schedule change notices

Most route changes need no answer, so most should not be calls. A holiday shift or a new collection day for a whole route is best sent by the hauler's own system, by text, email or app, with no voice agent involved.

Call when the customer has to do something. A booked bulk pickup that lands on a day the route no longer runs needs a new date. A cart that must move to the alley needs a yes. For those, run a campaign for the affected customers only.

The notice itself should be the same words for everyone on a route. The campaign file can replace the opening for each row through the greeting override columns, greeting_override_type and greeting_override_text, or play a recording through greeting_override_recording_id. Keep the greeting to the hauler's name and "a change to collection in your area," and switch off Allow Greeting Interruption, which is on by default, so the full notice plays.

Same-day changes, such as a truck breakdown, can start from your dispatch system through the API Trigger, which places the call as soon as the request is sent. Our guide to starting a voice agent call from any system covers the setup.

Join the Dograh Community

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

Reminder and notice calls are service calls, and AI calls to mobiles still need consent. Under the FCC's ruling on AI-generated voices, an AI voice counts as an artificial voice for the Telephone Consumer Protection Act (TCPA). Under the FCC's calling rules, a reminder with an artificial voice to a mobile needs the customer's prior express consent and carries no offer. Keep upgrades and new services out of these calls, and confirm your consent wording with counsel before the first campaign.

Every call ends with an outcome your system can act on: confirmed, moved, items added, cancelled or not reached. A Webhook node sends it after the call, with links to the recording and transcript, and retries on its own if your endpoint has a temporary failure.

Built-in QA reviews calls after they end, so a fee quoted that is not on the price list, or a booking read back without the set-out time, gets flagged in the first week. Self-hosted Dograh has no per-minute platform fee, but servers, model keys and phone minutes still cost money. Dograh Cloud charges a 1¢-a-minute platform fee.

Start with the reminder call, because the list already exists and every confirmed pickup is one less callback. Test it over a real phone line first, since street names and item names can sound different to the speech model on a phone call than in a browser test.

Glossary

Bulk pickup
A one-off collection of large items such as furniture or appliances, booked for a set day on the route. Each one is checked against the hauler's accepted-items list at booking.
Set-out time
The time by which items must be at the curb for the truck. The booking read-back and the reminder both state it.
Greeting override
Campaign file columns that replace the opening line for a row with fixed text or a recording, so a route's notice is the same words for everyone.
Retry-safe booking
A booking request that carries the call's workflow_run_id, so the hauler's system can ignore a duplicate if the same 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.