Lever · AsyncAPI Specification
Lever Webhooks
Version
View Spec
View on GitHub
Human ResourcesApplicant TrackingRecruitingTalent AcquisitionSoftware-as-a-ServiceAsyncAPIEvents
AsyncAPI Specification
generated: '2026-11-05'
method: searched
source: https://hire.lever.co/developer/documentation#webhooks
docs:
- https://hire.lever.co/developer/documentation#webhooks
- https://hire.lever.co/developer/documentation#webhooks-via-the-api
description: Lever sends an HTTP POST JSON payload to a per-event configured URL. Webhooks are configured by a Super
Admin in Settings > Integrations and API > Webhooks, or through the Webhooks API (GET/POST/PUT/DELETE /webhooks).
transport:
method: POST
content_type: application/json
user_agent: Lever-Webhooks
https_only: true
https_note: We only support HTTPS enabled endpoints. We verify the SSL certificate against a Certificate Authority
and, as such, the use of self-signed SSL certificates is not supported.
envelope:
id: Event UID
event: event type, e.g. candidateHired
triggeredAt: Timestamp when the webhook event was triggered
token: Randomly generated string with length 48
signature: Hash of concatenated token and triggeredAt values
data: Data payload custom for each event
security:
mechanism: HMAC-SHA256 signature carried in the request BODY (signature field), not a header
key: signature token generated/regenerated on the integrations settings admin page (signatureToken in the Webhooks
API configuration object)
algorithm: Concatenate token and triggeredAt values; encode the resulting string with the HMAC algorithm (using
your signature token as a key and SHA256 digest mode); compare the resulting hexdigest to the signature
replay_protection: Optionally, you can cache the token value locally and not honor any subsequent request with
the same token. You can also check if the timestamp is not too far from the current time.
signature_header: null
delivery:
acknowledge: To acknowledge you received the webhook without any problem, your server should return a 2xx HTTP
status code.
failure: Any response code outside the 2xx range, including 3xx codes, will indicate to Lever that you did not
receive the webhook.
retries: Lever will continue trying to send the webhook five times, waiting longer and longer in between tries.
retry_count: 5
backoff: increasing
history: the most recent webhooks from (up to 1,000 requests) from the past two weeks on the webhook configuration
page
manual_rerun: true
test_request: Lever will send a sample request and will indicate whether the request succeeds (2xx) or fails.
event_configuration:
conditions: Currently, these conditions are only available on candidate source
condition_values:
- applied
- sourced
- referred
- university
- agency
- internal
configurable_events:
- applicationCreated
- candidateHired
- candidateStageChange
- candidateArchiveChange
non_configurable_events:
- candidateDeleted
- interviewCreated
- interviewUpdated
- interviewDeleted
- contactCreated
- contactUpdated
events:
- name: applicationCreated
description: Triggers when a candidate application is created in Lever.
configurable: true
- name: candidateHired
description: Triggers when a candidate is marked as hired in Lever.
configurable: true
- name: candidateStageChange
description: Triggers when a candidate moves from one stage to another in Lever.
configurable: true
- name: candidateArchiveChange
description: Triggers when a candidate is archived or unarchived in Lever.
configurable: true
- name: candidateDeleted
description: null
configurable: false
- name: interviewCreated
description: null
configurable: false
- name: interviewUpdated
description: null
configurable: false
- name: interviewDeleted
description: null
configurable: false
- name: contactCreated
description: Added March 27, 2023 (API Updates).
configurable: false
- name: contactUpdated
description: Added March 27, 2023 (API Updates).
configurable: false
management_api:
list: GET /webhooks
create: POST /webhooks
update: PUT /webhooks/:webhookId
delete: DELETE /webhooks/:webhookId
scopes:
- webhooks:read:admin
- webhooks:write:admin
Work with this as data
Every AsyncAPI spec here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for asyncapi
4 MCP tools reach this
find_asyncapisBrowse and filter every AsyncAPI spec in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This AsyncAPI spec
curl "https://apis.io/api/v1/asyncapis/lever-webhooks"
All asyncapi
curl "https://apis.io/api/v1/asyncapis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.