Skip to main content

TalentLynk Webhooks

How to configure webhooks in TalentLynk to receive real-time notifications when certain events happen.

Webhooks let you receive real-time notifications when events happen in TalentLynk. Instead of polling the API for updates, you configure an endpoint and TalentLynk will send an HTTP POST request to it whenever a subscribed event occurs.

Access required: You need the Manage API keys and webhooks permission. This is not automatically enabled for every admin. If you cannot see Developer in Settings, ask another company administrator to enable this permission for your account.

You do not need to generate a company API key to configure webhooks. Ask your developer or IT team for the publicly accessible HTTPS URL that should receive events and any authentication details. For supported events, payloads and technical instructions, see the developer docs.


How it works

When a subscribed event occurs, TalentLynk sends a POST request to your configured URL with the following envelope:

{
"event": "<event type>",
"timestamp": "2026-03-26T14:32:00.000Z",
"data": {
// Event-specific payload
}
}

If a delivery fails with a server error (5xx) or network error, TalentLynk retries with increasing delays, for a maximum of three attempts in total. Client errors (4xx) are not retried. Failed deliveries are recorded in the logs.


Requirements for your endpoint

  • Must use HTTPS (HTTP is not supported).

  • Must be publicly accessible (private networks, localhost, and IP addresses are rejected).

  • Should respond within 10 seconds (requests time out after this).

  • Should return a 2xx status code to acknowledge receipt.


Authentication

It's strongly recommended to configure TalentLynk to authenticate webhook deliveries so your endpoint can verify the request is genuine. Two authentication methods are supported:

Method

Description

Bearer token

TalentLynk sends an Authorization: Bearer <your-token> header with each request.

Custom header

TalentLynk sends a custom header of your choosing (e.g., X-Webhook-Secret: my-secret-value).


Webhook events and payloads

See the OpenAPI docs for currently supported events and payloads.


Adding a webhook

  1. Click Add Webhook.

  2. Fill in the required fields:

    • URL — The HTTPS endpoint where you want to receive events. Must be a publicly accessible URL (IP addresses and HTTP URLs are not accepted).

    • Events — Select which events to subscribe to.

    • Authentication — Optionally choose Bearer Token or Custom Header and provide your credentials.

    • Description — An optional label to help you identify this webhook (e.g., "CRM sync" or "Slack notifications").

  3. Click Create.

⚠️ You can currently add a maximum of five webhook subscriptions per company.


Testing a webhook

After adding a webhook, you should test it to make sure your endpoint receives requests correctly.

  1. Find your webhook in the list and click Test.

  2. TalentLynk will send a test payload to your endpoint:

{
"event": "webhook.test",
"timestamp": "2026-03-26T14:35:00.000Z",
"data": {
"message": "This is a test webhook from TalentLynk."
}
}
  1. The result is shown immediately:

    • Success — Your endpoint responded with a 2xx status. You'll see the HTTP status code and response time.

    • Failure — Something went wrong. The error message will tell you what happened (e.g., connection timeout, HTTP 404, DNS failure).

Test deliveries also appear in the delivery logs with the event webhook.test, so you can review them later.


Editing a webhook

  1. Find your webhook in the list and click Edit.

  2. You can change the URL, events, authentication, description, or toggle the webhook on/off using the Active switch.

  3. Click Save.

Setting a webhook to inactive pauses all deliveries without deleting the subscription. You can reactivate it at any time.


Delivery logs

Delivery logs show you the history of every webhook delivery attempt, including successes, failures, and retries.

  1. Find your webhook in the list and click View Logs.

  2. The log shows the most recent 50 deliveries, newest first.

Each log entry includes:

Field

Description

Status

Whether the delivery succeeded or failed.

Event

The event type (e.g., transcript.created or webhook.test).

HTTP Status

The response status code from your endpoint, or "Network Error" if the request couldn't connect.

Attempt

Which attempt this was (1, 2, or 3). Failed deliveries are retried automatically.

Duration

How long the round-trip took.

Error

The error message, if the delivery failed.

Identifiers

Related entity IDs (e.g., the message ID) so you can trace a delivery back to the source event.

Time

When the delivery attempt was made.

Delivery logs are retained for 90 days and then automatically cleaned up.


Retry behaviour

When a delivery fails, TalentLynk retries automatically:

Attempt

Delay

1st

Immediate

2nd

~2 seconds after the first failure

3rd

~4 seconds after the second failure

Retries only happen for server errors (5xx) and network failures. Client errors (4xx) are not retried, as they typically indicate a misconfiguration on the receiving end.

If all 3 attempts fail, the delivery is marked as failed in the logs. TalentLynk does not retry beyond 3 attempts.

Did this answer your question?