curl --request POST \
--url https://enterprise.tavrn.ai/v2/webhooks/{id}/test \
--header 'Authorization: Bearer <token>'import requests
url = "https://enterprise.tavrn.ai/v2/webhooks/{id}/test"
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
fetch('https://enterprise.tavrn.ai/v2/webhooks/{id}/test', 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://enterprise.tavrn.ai/v2/webhooks/{id}/test",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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://enterprise.tavrn.ai/v2/webhooks/{id}/test"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://enterprise.tavrn.ai/v2/webhooks/{id}/test")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://enterprise.tavrn.ai/v2/webhooks/{id}/test")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"success": false,
"status_code": 502,
"duration_ms": 81,
"error": "HTTP 502",
"event_id": "evt_test_6f1c2a9e-4b7d-4c1e-9a53-0d2f8e7b1c44",
"sent_at": "2026-10-07T17:30:00.000Z"
}{
"error": {
"code": "validation_error",
"message": "The patient.date_of_birth field is required"
}
}{
"error": {
"code": "rate_limited",
"message": "A test event was sent to this webhook less than 10 seconds ago. Try again shortly."
}
}Send test event
Send one signed webhook.test event to the webhook URL and return the result. Requires webhooks:write. No request body. HTTP 200 means the test was attempted; inspect success for the delivery outcome. Failed tests are not retried. Tests work on disabled webhooks and do not change webhook health fields. One test per webhook is allowed every 10 seconds.
curl --request POST \
--url https://enterprise.tavrn.ai/v2/webhooks/{id}/test \
--header 'Authorization: Bearer <token>'import requests
url = "https://enterprise.tavrn.ai/v2/webhooks/{id}/test"
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
fetch('https://enterprise.tavrn.ai/v2/webhooks/{id}/test', 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://enterprise.tavrn.ai/v2/webhooks/{id}/test",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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://enterprise.tavrn.ai/v2/webhooks/{id}/test"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://enterprise.tavrn.ai/v2/webhooks/{id}/test")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://enterprise.tavrn.ai/v2/webhooks/{id}/test")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"success": false,
"status_code": 502,
"duration_ms": 81,
"error": "HTTP 502",
"event_id": "evt_test_6f1c2a9e-4b7d-4c1e-9a53-0d2f8e7b1c44",
"sent_at": "2026-10-07T17:30:00.000Z"
}{
"error": {
"code": "validation_error",
"message": "The patient.date_of_birth field is required"
}
}{
"error": {
"code": "rate_limited",
"message": "A test event was sent to this webhook less than 10 seconds ago. Try again shortly."
}
}Authorizations
API key authentication. Use format: Authorization: Bearer tavrn_sk_live_...
Path Parameters
Webhook ID
Response
Test delivery attempted (check success)
True if your endpoint returned a 2xx response within 5 seconds
false
HTTP status returned by your endpoint, or null if no response was received
502
Elapsed test duration, in milliseconds.
81
Failure reason, or null on success. Your endpoint response body is not returned.
"HTTP 502"
ID of the webhook.test event that was sent
"evt_test_6f1c2a9e-4b7d-4c1e-9a53-0d2f8e7b1c44"
"2026-10-07T17:30:00.000Z"