WhatsApp AI Agent Developer — Clinic Booking Automation (LLM Tool-Calling + Practice Management API)
Worldwide
What we’re building An after-hours WhatsApp agent for a Singapore physiotherapy clinic. Patients message outside opening hours to book, reschedule, or cancel appointments. The agent handles the conversation and writes to the clinic’s practice management system (Plato Medical, a Singapore-native platform). Anything ambiguous or high-risk gets queued for staff review at open. This is a production system handling real patient appointments — not a demo. Scope • WhatsApp Cloud API integration (webhook, session handling, template messages for the 24h window) • LLM agent with tool calling for intent classification and entity extraction • Integration with the Plato Medical API for patient lookup, availability, booking, reschedule, cancellation • Deterministic guardrails around destructive operations — cancellations and reschedules must not depend on model judgment alone • Identity resolution logic (phone number is not a reliable patient key: shared family phones, partners messaging on someone’s behalf) • Handling of booking race conditions and idempotency • Escalation path to a human queue for anything the agent can’t resolve confidently • Conversation logging and a way to audit what the agent did overnight What we need from you • Demonstrated production work with WhatsApp Cloud API (Twilio experience is fine but Cloud API is preferred) • Real experience with LLM function/tool calling — Anthropic, OpenAI, or similar. Not intent-tree chatbot builders. • Experience integrating with a practice management or scheduling API. Plato specifically is unlikely — but Cliniko, Nookal, Halaxy, Jane, SimplePractice, or Calendly-class systems all count. Tell us which. • Sound judgment about failure modes. We care more about how you handle the slot that got taken between showing it and confirming it than about how naturally the bot chats. • Comfortable working against sparse API documentation Nice to have • Healthcare or allied health domain experience • Familiarity with Singapore/Malaysia context (timezones, phone formats, patient expectations) • PDPA awareness How to apply Skip the template. Open your proposal with the answer to this: A patient messages at 11pm to cancel an appointment. The phone number matches two patient records — a mother and her adult son, both with appointments this week. How do you handle it? Proposals that don’t answer this won’t be read. There’s no single right answer; we want to see how you think about it. Also include: one project where you integrated an LLM agent with a real booking or scheduling system, what broke, and what you did about it.
$5.00
Fixed-price- IntermediateExperience Level
- Remote Job
- Ongoing projectProject Type
Skills and Expertise
Activity on this job
- Proposals:20 to 50
- Last viewed by client:4 days ago
- Interviewing:17
- Invites sent:0
- Unanswered invites:0
About the client
- SingaporeSingapore6:26 PM
Explore similar jobs on Upwork
How it works
Create your free profileHighlight your skills and experience, show your portfolio, and set your ideal pay rate.
Work the way you wantApply for jobs, create easy-to-by projects, or access exclusive opportunities that come to you.
Get paid securelyFrom contract to payment, we help you work safely and get paid securely.
About Upwork
- 4.9/5(Average rating of clients by professionals)
- G2 2021#1 freelance platform
- 49,000+Signed contract every week
- $2.3BFreelancers earned on Upwork in 2020
Find the best freelance jobs
Growing your career is as easy as creating a free profile and finding work like this that fits your skills.
Trusted by