Webhooks
ElevenLabs tool: update contact fields mid-call
Server tool webhook called by the ElevenLabs voice agent mid-call to correct or enrich a caller's contact record - typically when the caller spells their name or gives a new email. Identifies the contact by phone_number within the org scoped from the tool secret; at least one of first_name/last_name/email must be supplied. Phone number itself is intentionally NOT updatable here (would require de-dupe + verification flow). New emails are appended to the contact's email[] array (preserving history) and become primary if no primary exists yet. Per ElevenLabs convention, recoverable problems (missing fields, contact not found) return HTTP 200 with success:false so the agent can speak the error to the caller. Authenticated via Bearer token (per-org elevenlabsToolSecret).
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
ElevenLabs update-contact tool args. phone_number identifies the contact; at least one of first_name/last_name/email must be set. Phone numbers themselves cannot be changed via this endpoint.
Response Body
application/json
application/json
application/json
curl -X POST "https://example.com/api/webhook/elevenlabs/tools/update-contact" \ -H "Content-Type: application/json" \ -d '{ "phone_number": "+14165550100", "first_name": "Alex", "last_name": "Morgan", "email": "alex.morgan@example.com", "called_id": "+12362320246" }'{ "success": true, "message": "Contact updated", "updated_fields": [ "firstName", "lastName", "email" ]}