Connected services

Integrations

What is connected today, what is still a stub, and which outside services each call or message path depends on.

Demo surface
Live channels
Voice, SMS, email, web

Twilio, Cloudflare Email, and Hono API routes feed the inbox.

System of record
Cloudflare D1

Demo events, service windows, rate cards, jobs, inquiries, call rules, and business notes live in D1.

Call handling
Rules + knowledge

Staff-approved knowledge and deterministic tools handle pricing, availability, and booking decisions.

Live Now

These integrations are wired into the current demo flow.

Cloudflare Core

Live

Pages/Hono runtime with D1, KV, and the call-handling runtime configured in wrangler.jsonc.

Bindings: DB, KV, runtime. Prod D1: lostdocket-db
Cloudflare PagesD1 databaseWorkers KV bindingHono API routes

Job Intake

Live

Primary job-intake path. It uses business notes, then calls server-side tools for availability, pricing, job holds, payment stubs, and escalation.

Direct Cloudflare runtime binding with deterministic tool calls.
Job detailsBusiness notescheck_availabilityquote_price

Business Knowledge

Live

Staff can upload PDFs or paste policies, store searchable notes in D1, and use the right snippet across web, email, SMS, and voice.

Routes: /agent-memory and /api/agent-memory/*. Storage: agent_memory_documents + agent_memory_chunks.
PDF notesD1 searchEnable/disable docsStaff-visible sources

Cloudflare Email Service

Live

Inbound business email is parsed by the email worker, stored in D1, processed through the same intake path, and replied to by email.

From: [email protected]. EMAIL binding plus REST sender path.
Inbound email workerOutbound repliesThread memoryInbox event log

Twilio Voice + SMS

Live

The purchased demo number handles inbound SMS and voice webhooks, verifies Twilio signatures, and records the full conversation in the dashboard.

Live number: +1 (807) 805-3625. Vanity: (807) 805-DOCK.
Inbound SMS webhookVoice webhookSignature checksDashboard inbox trace

ElevenLabs

Live

Voice generation is wired for the call handling preview and Twilio audio playback when the reply is suitable for generated speech.

Routes: /api/tts/voices, /api/tts/generate, /api/tts/speak.
Voice previewsGenerated speechTwilio audio playbackConfigurable voice ID

Google OAuth

Live

Dashboard authentication uses Google OAuth and signed JWT cookies when the production secrets are present.

Secrets: GOOGLE_CLIENT_ID, GOOGLE_CLIENT_SECRET, SESSION_SECRET.
Google sign-inJWT session cookieProtected dashboard routesDemo fallback in dev

Fallbacks Live

Secondary paths that are working, but not the primary demo route.

Resend Fallback

Live

Outbound email fallback for Lost Docket replies when Cloudflare Email is unavailable or deliberately bypassed.

Live fallback: RESEND_API_KEY + [email protected]. Cloudflare Email remains primary.
Fallback senderDomain emailLost Docket repliesDelivery backup

Coming Soon

The codebase has stubs or planned surfaces, but these are not production-grade integrations yet.

ServiceM8

Coming Soon

Future business-management sync for confirmed jobs, customer profiles, and service window inventory.

Today: book_job writes to D1; the external ServiceM8 API call is mocked.
Job write-backService window inventory syncCustomer profile importRate card sync

Stripe Checkout

Coming Soon

Future payment-link generation for deposits, callout fees, and job balance collection.

Today: take_payment is a demo stub; no Checkout session or payment link is created.
Checkout sessionsPayment linksRefund workflowPayment webhooks

DocuSign + R2 Contracts

Coming Soon

Future signed service window agreements with generated PDFs, object storage, and e-signature delivery.

Today: draft_contract returns a work-order placeholder; no R2 bucket or e-signature API is bound.
Contract PDFsR2 storageE-sign linksEnvelope webhooks

Slack Escalations

Coming Soon

Future staff alerts when a job needs a human handoff or a high-value booking needs approval.

Today: escalate_to_human returns a stub notification payload; no Slack webhook is configured.
Escalation alertsJob notificationsDaily digestUrgent handoff

Cloudflare Gateway

Coming Soon

Future observability and controls for call-handling requests once the gateway is actually bound and used.

Today: the runtime is called directly; the gateway is not bound in wrangler.jsonc.
Request logsRate controlsCaching policyProvider routing

Runtime Surface

A quick check of the deployed Cloudflare and vendor surface.

Cloudflare bindings
DB, KV, and runtime on Pages; EMAIL on the email worker.
Live
Business Knowledge
D1-backed policy documents and searchable notes are live.
Live
Primary email
Cloudflare Email Service from [email protected].
Live
Email fallback
Resend is live as a secondary outbound path from [email protected].
Live
Telephony
/api/sms and /api/voice/twilio receive the Twilio number webhooks.
Live
Text to speech
ElevenLabs routes are live when ELEVENLABS_API_KEY is present.
Live
Not bound yet
R2, Queues, Vectorize, Durable Objects, and Gateway.
Coming Soon
External business systems
ServiceM8, Stripe, DocuSign, and Slack.
Coming Soon