{"name":"DialerOS","version":"1.1.0","description":"2-way sync between Lofty CRM and GoHighLevel for ISA dialer","endpoints":{"webhooks":{"POST /webhook/lofty":"Lofty lead events (created, updated, stage changed)","POST /webhook/ghl":"GHL events (call.completed, opportunity.stage_update, note.create)","POST /webhook/zoho":"Recruiter Dialer OS Pipe A trigger (Zoho cadence_on)"},"manual":{"POST /sync/lead":"Sync specific Lofty lead to GHL (body: {loftyLeadId})","POST /sync/all":"Bulk sync all leads assigned to Craig"},"admin":{"GET /mappings":"List all contact mappings","GET /logs":"Recent sync log entries","POST /admin/backfill-isa-craig-routing":"D1: mirror isa-dial-ready → isa-craig + routed_isa=craig (dryRun default true)","POST /admin/sweep-isa-exits":"One-time sweep: strip dial tags from contacts whose stage has exited the dialable set (dryRun default true)","POST /admin/recruit-backstamp":"ONE-TIME: link existing GHL recruiting contacts to Zoho by phone/email (BACKFILL_SECRET)"}}}