Get a webhook
curl --request GET \
--url https://api.godiligent.ai/webhooks/{webhook_id} \
--header 'X-API-KEY: <api-key>'import requests
url = "https://api.godiligent.ai/webhooks/{webhook_id}"
headers = {"X-API-KEY": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-KEY': '<api-key>'}};
fetch('https://api.godiligent.ai/webhooks/{webhook_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.godiligent.ai/webhooks/{webhook_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-API-KEY: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.godiligent.ai/webhooks/{webhook_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-KEY", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.godiligent.ai/webhooks/{webhook_id}")
.header("X-API-KEY", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.godiligent.ai/webhooks/{webhook_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-KEY"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "<string>",
"webhook_url": "<string>",
"is_active": true,
"has_secret": true,
"status": "active",
"last_delivery_at": "2023-11-07T05:31:56Z",
"last_delivery_status": 123,
"events": [
"cdd_state_changed"
]
}Webhooks
Get Webhook
Retrieve a single webhook by ID.
GET
/
webhooks
/
{webhook_id}
Get a webhook
curl --request GET \
--url https://api.godiligent.ai/webhooks/{webhook_id} \
--header 'X-API-KEY: <api-key>'import requests
url = "https://api.godiligent.ai/webhooks/{webhook_id}"
headers = {"X-API-KEY": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-KEY': '<api-key>'}};
fetch('https://api.godiligent.ai/webhooks/{webhook_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.godiligent.ai/webhooks/{webhook_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-API-KEY: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.godiligent.ai/webhooks/{webhook_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-KEY", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.godiligent.ai/webhooks/{webhook_id}")
.header("X-API-KEY", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.godiligent.ai/webhooks/{webhook_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-KEY"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "<string>",
"webhook_url": "<string>",
"is_active": true,
"has_secret": true,
"status": "active",
"last_delivery_at": "2023-11-07T05:31:56Z",
"last_delivery_status": 123,
"events": [
"cdd_state_changed"
]
}Endpoint
GET /webhooks/{webhook_id}
Returns a single webhook, including its derived delivery status.
Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| webhook_id | string | Yes | The ID of the webhook to retrieve. |
Response
A webhook object. See List Webhooks for the field reference. The signingsecret is never returned; has_secret indicates whether one is configured.
{
"id": "df89eb16-4c6a-439f-b668-7cca0cd786fa",
"webhook_url": "https://crm.example.com/diligent",
"is_active": true,
"has_secret": true,
"status": "failing",
"last_delivery_at": "2025-07-31T02:51:34.155Z",
"last_delivery_status": 500,
"events": ["cdd_state_changed", "alert_remediated"]
}
404 Not Found
No webhook with that ID exists for the authenticated customer.Authentication
This endpoint requires authentication. You can only retrieve webhooks owned by the authenticated customer.Authorizations
Path Parameters
ID of the webhook to retrieve.
Response
The requested webhook.
Unique ID for the webhook.
Whether a signing secret is configured. The secret itself is never returned.
Derived health: disabled when inactive, failing when the last delivery returned a non-2xx status, otherwise active.
Available options:
active, failing, disabled Timestamp of the most recent delivery attempt, or null if none.
HTTP status code of the most recent delivery attempt, or null if none.
Available options:
cdd_state_changed, monitoring_alert_fired, cdd_document_fetched, search_completed, alert_remediated, flow_run_completed, flow_run_failed ⌘I