Documentation Index
Fetch the complete documentation index at: https://docs.telli.com/llms.txt
Use this file to discover all available pages before exploring further.
Overview
The contact lookup webhook lets you identify unknown inbound callers by looking up their phone number in your system before the call connects. When enabled, telli sends a POST request to your endpoint with the caller’s phone number, and your endpoint responds with the contact’s details. This is useful when you want to:- Greet callers by name
- Route calls based on customer data
- Pass custom properties to your agent’s prompt via dynamic variables
Setup
- Go to Settings → Integrations
- Select Contact Lookup Webhook
- Enter your webhook URL
- Set a timeout (1–10 seconds)
- Optionally add custom headers and query parameters
- Enable the integration and click Save
Request
When an inbound call arrives from an unknown number, telli sends a POST request to your webhook URL:| Field | Type | Description |
|---|---|---|
event | string | Always "contact_lookup" |
phone_number | string | The caller’s phone number in E.164 format |
to_number | string | The telli phone number that was called, in E.164 format |
Signature verification
The request includes anx-telli-signature header that you can use to verify the request was sent by telli. The signature is an HMAC-SHA256 hash of the request body, signed with your account’s API key.
Response
Your endpoint should return a JSON response with the contact’s details:| Field | Type | Required | Description |
|---|---|---|---|
first_name | string | Yes | Contact’s first name (1–50 characters) |
last_name | string | Yes | Contact’s last name (1–50 characters) |
salutation | string | No | Salutation or title (e.g. “Mr.”, “Ms.”, “Dr.”) |
email | string | No | Contact’s email address |
external_id | string | No | Your system’s identifier for the contact. If a contact with this ID already exists, it will be updated instead of creating a duplicate. |
external_url | string | No | A URL to the contact in your system |
phone_number | string | No | The contact’s phone number (defaults to the caller’s number if omitted) |
properties | object | No | Custom contact properties. Keys must match your configured property keys. Values must match the property’s data type (string, number, boolean, date, select value, or array for multi-select). |
Unknown caller
If the phone number is not found in your system, return an empty contact:Custom properties
Theproperties object lets you pass custom data that matches your contact properties configuration. Property keys must match the keys you’ve defined in Settings → Contact properties. Values that don’t match a defined property key are ignored.
Error handling
- If your endpoint returns a non-2xx status code, the call proceeds with an unknown contact
- If your endpoint doesn’t respond within the configured timeout, the call proceeds with an unknown contact
- If the response body doesn’t match the expected format, the call proceeds with an unknown contact