curl --request GET \
--url https://v2.flabs.in/client/events/getDeactivatedEvents \
--header 'Authorization: Bearer <token>'import requests
url = "https://v2.flabs.in/client/events/getDeactivatedEvents"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://v2.flabs.in/client/events/getDeactivatedEvents', 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://v2.flabs.in/client/events/getDeactivatedEvents",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
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://v2.flabs.in/client/events/getDeactivatedEvents"
req, _ := http.NewRequest("GET", 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.get("https://v2.flabs.in/client/events/getDeactivatedEvents")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://v2.flabs.in/client/events/getDeactivatedEvents")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"success": true,
"message": "Deactivated events fetched successfully",
"data": [
{
"_id": "<unique id>",
"events": [
"bill.completed"
],
"endpoint": "https://example.com/webhooks/flabs",
"protocol": "https",
"autoDeactivatedAt": "2026-10-12T09:45:46.000Z",
"createdAt": "2025-08-21T08:57:49.700Z",
"updatedAt": "2026-10-12T09:45:46.000Z"
}
]
}{
"success": false,
"status": 401,
"message": "Unauthorized",
"error": {
"details": "Invalid client credentials"
}
}{
"success": false,
"status": 500,
"message": "Internal Server Error",
"error": {
"details": "An unexpected error occurred"
}
}Get Auto-deleted Webhooks
Retrieve webhooks that Flabs deleted automatically because they returned no 2xx response for 24 hours. These webhooks receive no events until you restore them. Webhooks you deleted yourself are not listed.
Catch-all accounts: returns the lab’s auto-deleted webhooks. Party-scoped accounts: you MUST pass a party (corporateUser or organization) and only that party’s webhooks are returned.
curl --request GET \
--url https://v2.flabs.in/client/events/getDeactivatedEvents \
--header 'Authorization: Bearer <token>'import requests
url = "https://v2.flabs.in/client/events/getDeactivatedEvents"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://v2.flabs.in/client/events/getDeactivatedEvents', 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://v2.flabs.in/client/events/getDeactivatedEvents",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
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://v2.flabs.in/client/events/getDeactivatedEvents"
req, _ := http.NewRequest("GET", 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.get("https://v2.flabs.in/client/events/getDeactivatedEvents")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://v2.flabs.in/client/events/getDeactivatedEvents")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"success": true,
"message": "Deactivated events fetched successfully",
"data": [
{
"_id": "<unique id>",
"events": [
"bill.completed"
],
"endpoint": "https://example.com/webhooks/flabs",
"protocol": "https",
"autoDeactivatedAt": "2026-10-12T09:45:46.000Z",
"createdAt": "2025-08-21T08:57:49.700Z",
"updatedAt": "2026-10-12T09:45:46.000Z"
}
]
}{
"success": false,
"status": 401,
"message": "Unauthorized",
"error": {
"details": "Invalid client credentials"
}
}{
"success": false,
"status": 500,
"message": "Internal Server Error",
"error": {
"details": "An unexpected error occurred"
}
}Overview
List the webhooks that Flabs deleted automatically because they returned no2xx response for 24 hours. These webhooks receive no events. Use this endpoint to find the webhook you want to restore after fixing your endpoint.
Webhooks you deleted yourself with Delete Webhook are not listed. Active webhooks are returned by Get All Webhooks.
Endpoint
GET https://v2.flabs.in/client/events/getDeactivatedEvents?labID=<labID>
curl --request GET \
--url 'https://v2.flabs.in/client/events/getDeactivatedEvents?labID=64a1b2c3d4e5f60718293a4b' \
--header 'Authorization: Bearer <authToken>'
Authentication
This endpoint requires a valid Bearer token obtained from the authentication API.Request Parameters
All parameters are sent as query parameters:| Parameter | Type | Required | Description |
|---|---|---|---|
labID | string | Yes | Flabs lab (branch) identifier. Fetch via GET /client/labs |
corporateUser | string | Cond. | Party-scoped accounts only — list this corporate’s webhooks |
organization | string | Cond. | Party-scoped accounts only — list this doctor/hospital’s webhooks |
corporateUser or organization (not both); only that party’s webhooks are returned. See integration modes.Response Fields
Each item indata describes one auto-deleted webhook:
| Field | Type | Description |
|---|---|---|
_id | string | Webhook identifier. Pass it to Restore Webhook |
events | array | Event types the webhook was subscribed to |
endpoint | string | URL the webhook delivered to |
protocol | string | Delivery protocol (https) |
corporateUser | string | Party-scoped accounts: the corporate the webhook is bound to |
organization | string | Party-scoped accounts: the doctor/hospital it is bound to |
autoDeactivatedAt | string | ISO 8601 timestamp when Flabs deleted the webhook |
createdAt | string | ISO 8601 timestamp when the webhook was registered |
updatedAt | string | ISO 8601 timestamp when the webhook was last updated |
Responses
{
"success": true,
"message": "Deactivated events fetched successfully",
"data": [
{
"_id": "6ac5e1f2a3b4c5d6e7f80912",
"events": ["bill.completed", "report.completed"],
"endpoint": "https://your-domain.com/flabs/webhooks",
"protocol": "https",
"autoDeactivatedAt": "2026-10-12T09:46:31.903Z",
"createdAt": "2026-10-06T07:16:25.217Z",
"updatedAt": "2026-10-12T09:46:31.903Z"
}
]
}
data array means none of your webhooks have been deleted automatically.
Authorizations
JWT token obtained from the authentication endpoint
Query Parameters
Flabs lab (branch) identifier. Fetch the list of labs via GET /client/labs.
Party-scoped accounts only. Return only this corporate's webhooks. Pass either corporateUser or organization, not both.
Party-scoped accounts only. Return only this doctor/hospital's webhooks. Pass either corporateUser or organization, not both.
Was this page helpful?