POST Add/Update Webhook Settings¶
This API updates global AI interview webhook settings.
Request URL¶
POST /ai-interviews/settings/webhooks
Body Parameters¶
{
"webhooks": {
"start": {
"status": true,
"url": "https://example.com/webhook/start"
},
"submission": {
"status": true,
"url": "https://example.com/webhook/submission"
},
"auth": {
"status": true,
"type": "basic",
"basic": {
"username": "webhook-user",
"password": "webhook-pass"
}
}
},
"updateAll": true
}
Auth Example - Basic¶
{
"webhooks": {
"start": {
"status": true,
"url": "https://example.com/webhook/start"
},
"submission": {
"status": true,
"url": "https://example.com/webhook/submission"
},
"auth": {
"status": true,
"type": "basic",
"basic": {
"username": "webhook-user",
"password": "webhook-pass"
}
}
},
"updateAll": true
}
Auth Example - API Key¶
{
"webhooks": {
"submission": {
"status": true,
"url": "https://example.com/webhook/submission"
},
"auth": {
"status": true,
"type": "apikey",
"apikey": {
"header": "X-Webhook-Key",
"apikey": "my-secret-key"
}
}
},
"updateAll": false
}
Warning
Make sure to add your API key in the Header of the request using the key apiKey.
Parameters¶
Parameter |
Type |
Description |
|---|---|---|
updateAll |
boolean |
If true, updates all existing AI interviews with this webhook config. |
start |
object |
Webhook configuration for when the candidate starts the interview. |
submission |
object |
Webhook configuration for when the candidate submits the interview. |
status |
boolean |
Whether the webhook is enabled. |
url |
string |
The URL to receive event notifications. |
auth |
object |
Authentication configuration for webhooks (optional). |
auth.status |
boolean |
Must be |
auth.type |
string |
Authentication type: |
auth.basic |
object |
Basic authentication credentials (username and password). |
auth.basic.username |
string |
Basic auth username. Must be a string, not an object. |
auth.basic.password |
string |
Basic auth password. |
auth.apikey |
object |
API key authentication (header name and API key value). |
auth.apikey.header |
string |
Header name sent to your webhook endpoint. |
auth.apikey.apikey |
string |
API key value sent in that header. |
Note
The
startwebhook is triggered when the candidate starts the AI interview.The
submissionwebhook is triggered when the candidate submits the AI interview.Either one or both webhooks can be included in the request body.
If
authis included in the webhooks object, authentication settings will be updated. Ifauthis not included, existing authentication settings will be preserved.auth.statusmust betruefor authentication to be applied when delivering webhooks.auth.basic.usernameandauth.basic.passwordmust be strings. Objects are rejected.
Response¶
{
"webhooks": {
"start": {
"status": true,
"url": "https://example.com/webhook/start"
},
"submission": {
"status": true,
"url": "https://example.com/webhook/submission"
},
"auth": {
"status": true,
"type": "basic",
"basic": {
"username": "webhook-user",
"password": null,
"hasPassword": true
},
"apikey": {
"header": null,
"apikey": null
}
}
}
}