Overview
When configuring a Pearl, you can set up webhooks to receive real-time notifications at key moments of the call lifecycle. The webhooks available to you depend on whether your Pearl is configured for Inbound or Outbound activity.Inbound Pearl
Access to the Call Webhook only.
Outbound Pearl
Access to both the Call Webhook and the Lead Webhook.
The Call Webhook payload is identical whether it originates from an Inbound or Outbound Pearl. The Lead Webhook is exclusive to Outbound campaigns, as leads are a concept specific to outbound call management.
Webhook Types
Call Webhook
Triggered at the start and end of every call. Available for both Inbound and Outbound Pearls.
Lead Webhook
Triggered every time a lead changes status. Available for Outbound Pearls only.
Webhook Version
Select the version that matches your Pearl configuration. V2 is the recommended version and is selected by default.- V2 (Latest)
- V1
In V2, all JSON payload keys use camelCase (e.g.
pearlId, phoneNumber, collectedData).Call Webhook Payload
The Call Webhook is triggered at the start and at the end of every call. It provides comprehensive data about the call, including its outcome, duration, transcript, and any information collected during the conversation.Available for both Inbound and Outbound Pearls.
Payload Fields
- Transferred calls send one more Call Webhook. The one sent when Pearl hands the call over has
statusInProgressandtransferCallDurationset tonull. A final webhook follows once the transferred part ends, with the finalstatus, thetransferCallDurationand the updatedcreditDebited. creditDebitedonly counts the credits charged before the webhook is sent. A later charge, such as an SMS sent by a Post-Call Action, is not included: the Get Call endpoint returns the final amount.
Conversation Statuses
The definition of Success and NotSuccessful is configured at the Pearl level. Refer to the Create a Pearl page for more details.
Call Statuses
Transcript Message
Each entry in thetranscript array represents a single message in the conversation.Collected Info
Each entry in thecollectedInfo array represents a variable captured during the call.Sentiment Values
Example Payload
Lead Webhook Payload
The Lead Webhook is triggered every time a lead changes status - at the beginning and at the end of a call. It contains all relevant information about the lead and its current state.Available for Outbound Pearls only.
Payload Fields
callData vs collectedData
Lead Statuses
The definition of Success and NotSuccessful is set at the Pearl level. Refer to the Create a Pearl page for details.
Example Payload
Differences Between V1 and V2
Setting Up Webhooks
You can configure webhook URLs directly in your Pearl or outbound campaign settings.1
Open Your Campaign Settings
Navigate to the Pearl or outbound campaign you want to configure and open its settings panel.
2
Locate the Webhook Section
Scroll to the Webhooks section in the configuration form.



3
Turn Webhooks On
Toggle the Webhooks setting to On. Webhooks are off by default, and the URL fields only appear once it’s enabled.
4
Enter Your Webhook URLs
Provide the endpoint URLs for the webhooks you want to receive. Your server must respond with any HTTP
2xx status to acknowledge receipt.- Call Webhook - available for Inbound and Outbound Pearls.
- Lead Webhook - available for Outbound Pearls only.
5
Authenticate Your Webhooks (Optional)
For each webhook (Call and Lead), you can attach a Credential so NLPearl.AI authenticates its requests to your endpoint:
- Enable the Credentials toggle under the webhook URL.
- Select an existing Token, or create one with Add New (use Edit to update an existing one).
Make sure your webhook endpoint is publicly accessible and responds within 10 seconds. When a delivery fails (a non-
2xx response, an error, or a timeout), NLPearl.AI tries again up to 3 attempts in total, 30 seconds apart. Since a delivery can arrive more than once, make your endpoint idempotent.If your endpoint is behind a firewall, allow the NLPearl IP addresses listed in IP Whitelisting.
Checking Webhook Deliveries
Every webhook sent for a call appears in that call’s event timeline, in the call details. Each Call Webhook or Lead Webhook event shows the endpoint URL, the number of attempts, and the final status code, or Not sent when the delivery could not leave (for example, when its credential was deleted). Expand the event to see each attempt: its time, its status code, the response time, and the error returned by your server, if any. Use it to check that your endpoint received the data, or to find out why it did not.Outbound Campaigns
Learn how to create and configure outbound campaigns, including webhook setup.
API Reference – Get Calls
Explore the full call object structure returned by the API.

