Skip to main content
2026-07-04
v1 — early access
Initial publication of the GrowDental Partner API contract (2026-07-04).API surface (Phase 1)
  • GET /practices — list granted practices
  • GET /practices/{practiceId}/calls, GET /calls/{callId} — call results: status, outcome, duration, summary; transcript with transcripts:read + BAA
  • GET /calls/{callId}/recording — 302 to a short-lived signed recording URL (recordings:read + BAA)
  • POST /practices/{practiceId}/call-requests, GET /practices/{practiceId}/call-requests, GET /call-requests/{callRequestId} — trigger and track outbound calling
  • GET|POST /webhook-endpoints, PATCH|DELETE /webhook-endpoints/{endpointId} — webhook endpoint management
Webhook events
  • call.completed, call.recording.ready, call_request.completed — HMAC-SHA256-signed (X-GrowDental-Signature), at-least-once, unordered, PHI-minimal payloads
Platform behavior
  • Invite-only partner apps with per-practice grants; ungranted practices return 404
  • Scoped API keys (gd_live_...), shown once, stored hashed
  • BAA hard gate on PHI scopes (403 baa_required)
  • Per-key rate limits (600/min; 60/min bulk) and Idempotency-Key support on all POSTs
Published ahead of implementation
  • Canonical intake schemas (Patient, Appointment, Treatment — including the required TCPA consent field) are in the OpenAPI components as a Phase 2 draft contract so PMS partners can start mapping. The batch intake endpoints are not yet live.
  • Planned events call_attempt.resolved and appointment.booked are documented but not yet emitted.