Healthcheck: detection configs producing recent results
curl --request POST \
--url https://app.chainpatrol.io/api/v2/healthchecks/detections/silent-configs \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <api-key>' \
--data '
{
"slug": "<string>",
"source": "<string>",
"minResults": 1,
"lookbackHours": 168,
"runBeforeValidate": false,
"includeDisabled": false
}
'import requests
url = "https://app.chainpatrol.io/api/v2/healthchecks/detections/silent-configs"
payload = {
"slug": "<string>",
"source": "<string>",
"minResults": 1,
"lookbackHours": 168,
"runBeforeValidate": False,
"includeDisabled": False
}
headers = {
"X-API-KEY": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-KEY': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
slug: '<string>',
source: '<string>',
minResults: 1,
lookbackHours: 168,
runBeforeValidate: false,
includeDisabled: false
})
};
fetch('https://app.chainpatrol.io/api/v2/healthchecks/detections/silent-configs', 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://app.chainpatrol.io/api/v2/healthchecks/detections/silent-configs",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'slug' => '<string>',
'source' => '<string>',
'minResults' => 1,
'lookbackHours' => 168,
'runBeforeValidate' => false,
'includeDisabled' => false
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://app.chainpatrol.io/api/v2/healthchecks/detections/silent-configs"
payload := strings.NewReader("{\n \"slug\": \"<string>\",\n \"source\": \"<string>\",\n \"minResults\": 1,\n \"lookbackHours\": 168,\n \"runBeforeValidate\": false,\n \"includeDisabled\": false\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-KEY", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://app.chainpatrol.io/api/v2/healthchecks/detections/silent-configs")
.header("X-API-KEY", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"slug\": \"<string>\",\n \"source\": \"<string>\",\n \"minResults\": 1,\n \"lookbackHours\": 168,\n \"runBeforeValidate\": false,\n \"includeDisabled\": false\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.chainpatrol.io/api/v2/healthchecks/detections/silent-configs")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-KEY"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"slug\": \"<string>\",\n \"source\": \"<string>\",\n \"minResults\": 1,\n \"lookbackHours\": 168,\n \"runBeforeValidate\": false,\n \"includeDisabled\": false\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"title": "<string>",
"generatedAt": "<string>",
"scope": {
"slug": "<string>"
},
"ok": true,
"observed": {},
"threshold": {},
"findings": [
{
"kind": "<string>",
"ref": "<string>",
"message": "<string>"
}
],
"suggestedAction": "<string>",
"appUrl": "<string>"
}{
"code": "BAD_REQUEST",
"message": "Invalid input data",
"issues": []
}{
"code": "UNAUTHORIZED",
"message": "Authorization not provided",
"issues": []
}{
"code": "FORBIDDEN",
"message": "Insufficient access",
"issues": []
}{
"code": "INTERNAL_SERVER_ERROR",
"message": "Internal server error",
"issues": []
}Healthchecks
Silent Detection Configs
Validates that each enabled detection config has produced at least the configured minimum number of results within the lookback window. Returns the uniform healthcheck result shape.
POST
/
healthchecks
/
detections
/
silent-configs
Healthcheck: detection configs producing recent results
curl --request POST \
--url https://app.chainpatrol.io/api/v2/healthchecks/detections/silent-configs \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <api-key>' \
--data '
{
"slug": "<string>",
"source": "<string>",
"minResults": 1,
"lookbackHours": 168,
"runBeforeValidate": false,
"includeDisabled": false
}
'import requests
url = "https://app.chainpatrol.io/api/v2/healthchecks/detections/silent-configs"
payload = {
"slug": "<string>",
"source": "<string>",
"minResults": 1,
"lookbackHours": 168,
"runBeforeValidate": False,
"includeDisabled": False
}
headers = {
"X-API-KEY": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-KEY': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
slug: '<string>',
source: '<string>',
minResults: 1,
lookbackHours: 168,
runBeforeValidate: false,
includeDisabled: false
})
};
fetch('https://app.chainpatrol.io/api/v2/healthchecks/detections/silent-configs', 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://app.chainpatrol.io/api/v2/healthchecks/detections/silent-configs",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'slug' => '<string>',
'source' => '<string>',
'minResults' => 1,
'lookbackHours' => 168,
'runBeforeValidate' => false,
'includeDisabled' => false
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://app.chainpatrol.io/api/v2/healthchecks/detections/silent-configs"
payload := strings.NewReader("{\n \"slug\": \"<string>\",\n \"source\": \"<string>\",\n \"minResults\": 1,\n \"lookbackHours\": 168,\n \"runBeforeValidate\": false,\n \"includeDisabled\": false\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-KEY", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://app.chainpatrol.io/api/v2/healthchecks/detections/silent-configs")
.header("X-API-KEY", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"slug\": \"<string>\",\n \"source\": \"<string>\",\n \"minResults\": 1,\n \"lookbackHours\": 168,\n \"runBeforeValidate\": false,\n \"includeDisabled\": false\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.chainpatrol.io/api/v2/healthchecks/detections/silent-configs")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-KEY"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"slug\": \"<string>\",\n \"source\": \"<string>\",\n \"minResults\": 1,\n \"lookbackHours\": 168,\n \"runBeforeValidate\": false,\n \"includeDisabled\": false\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"title": "<string>",
"generatedAt": "<string>",
"scope": {
"slug": "<string>"
},
"ok": true,
"observed": {},
"threshold": {},
"findings": [
{
"kind": "<string>",
"ref": "<string>",
"message": "<string>"
}
],
"suggestedAction": "<string>",
"appUrl": "<string>"
}{
"code": "BAD_REQUEST",
"message": "Invalid input data",
"issues": []
}{
"code": "UNAUTHORIZED",
"message": "Authorization not provided",
"issues": []
}{
"code": "FORBIDDEN",
"message": "Insufficient access",
"issues": []
}{
"code": "INTERNAL_SERVER_ERROR",
"message": "Internal server error",
"issues": []
}Overview
Validates that each enabled detection config has produced at least the configured minimum number of results within the lookback window.Authorizations
Your API key. This is required by most endpoints to access our API programatically. Reach out to us at support@chainpatrol.io to get an API key for your use.
Body
application/json
Response
Successful response
Available options:
detection, reviewing, blocklisting, takedowns, assets, organization Show child attributes
Show child attributes
Available options:
ok, warn, fail Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Was this page helpful?
⌘I