Solutions · AI receptionists

“The caller has been in four times. Your agent asks how to spell their name.”

If that’s your problem, this page shows exactly what you get. Nothing vague.

What changes

  1. 01

    Before the first word

    One call to recall_and_enrich returns the caller profile and this tenant’s recent prior calls for the number — before your agent says hello.

  2. 02

    During the call

    The agent speaks with the caller’s recent history in context. Enrichment fills in alongside when available; a missing lookup returns null.

  3. 03

    After hangup

    calls/end submits the finished conversation. 204 means already durable — the very next call remembers this one.

What you get, exactly

POST /v1/recall_and_enrich
caller profile + prior-call memory (newest first) + Trestle/Twilio enrichment, one call
POST /v1/calls/end
204 = already durable; the next recall sees it
GET /v1/caller/{phone_number}
the receipt
Mapping guide
for Vapi, Retell, Bland, Twilio, ElevenLabs and LiveKit: they move into the new docs as its sections ship
Contract
timing_ms on each successful recall response · tenant-scoped keys · frozen v1 contract

What it doesn’t do

  • Recall is recency-ordered, not relevance-ranked — documented, predictable.
  • Enrichment is nullable — when a lookup has nothing, you get a null, never a guess.
  • No self-serve keys today — keys are issued to named builders.
Get access

Choose Northsun as your agent memory layer.