cURL
curl -X GET "https://app.cotool.ai/api/hunt/overview" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"import requests
url = "https://app.cotool.ai/api/hunt/overview"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://app.cotool.ai/api/hunt/overview', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));HttpResponse<String> response = Unirest.get("https://app.cotool.ai/api/hunt/overview")
.header("Authorization", "Bearer <token>")
.asString();package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://app.cotool.ai/api/hunt/overview"
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))
}{
"primaryCta": {
"label": "<string>",
"href": "<string>",
"activeHuntAlertCount": 123
},
"summary": {
"windowDays": 123,
"intelIngestedCount": 123,
"threatsTrackedCount": 123,
"threatsAssessedCount": 123,
"exposureAlertsGeneratedCount": 123,
"foundIocAlertsGeneratedCount": 123,
"activeHuntAlertCount": 123,
"ruleProposalsCreatedCount": 123,
"detectionPrsOpenedCount": 123,
"ruleProposalsShippedCount": 123,
"blockingGapsOpenCount": 123,
"blockingGapsResolvedCount": 123,
"coverageStateDistribution": {
"none": 123,
"partial": 123,
"covered": 123,
"unknown": 123
}
},
"funnel": {
"intelIngestedCount": 123,
"huntableIntelCount": 123,
"threatsTrackedCount": 123,
"threatsAssessedCount": 123,
"exposureAlertsGeneratedCount": 123
},
"recentThreats": [
{
"threatId": "<string>",
"title": "<string>",
"canonicalKey": "<string>",
"firstSeenAt": "<string>",
"latestIntelAt": "<string>",
"exposureScore": 123,
"affectedAssetCount": 123,
"activeHuntAlertId": "<string>",
"latestAlertId": "<string>",
"deliverableCount": 123
}
],
"recentRuleProposals": [
{
"deliverableId": "<string>",
"proposalId": "<string>",
"pullRequestUrl": "<string>",
"threatId": "<string>",
"threatTitle": "<string>",
"intent": "<string>",
"targetProduct": "<string>",
"targetLogSource": "<string>",
"createdAt": "<string>"
}
],
"recentBlockingGaps": [
{
"gapId": "<string>",
"product": "<string>",
"logSource": "<string>",
"scopeId": "<string>",
"blocking": true,
"establishedAt": "<string>",
"linkedThreats": [
{
"threatId": "<string>",
"threatTitle": "<string>",
"canonicalKey": "<string>",
"blocking": true
}
],
"createdAt": "<string>"
}
],
"capabilities": {
"canReadEvidence": true,
"canReassess": true,
"canTriage": true
}
}{
"error": "<string>",
"issues": [
{}
]
}{
"error": "<string>"
}{
"error": "<string>",
"missingPerms": [
"<string>"
]
}{
"error": "<string>"
}Hunt
Hunt overview
Landing dashboard: environment metric tiles, the intel -> exposure funnel, detection coverage distribution, and recent Threats / rule proposals / blocking gaps.
GET
/
api
/
hunt
/
overview
cURL
curl -X GET "https://app.cotool.ai/api/hunt/overview" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"import requests
url = "https://app.cotool.ai/api/hunt/overview"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://app.cotool.ai/api/hunt/overview', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));HttpResponse<String> response = Unirest.get("https://app.cotool.ai/api/hunt/overview")
.header("Authorization", "Bearer <token>")
.asString();package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://app.cotool.ai/api/hunt/overview"
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))
}{
"primaryCta": {
"label": "<string>",
"href": "<string>",
"activeHuntAlertCount": 123
},
"summary": {
"windowDays": 123,
"intelIngestedCount": 123,
"threatsTrackedCount": 123,
"threatsAssessedCount": 123,
"exposureAlertsGeneratedCount": 123,
"foundIocAlertsGeneratedCount": 123,
"activeHuntAlertCount": 123,
"ruleProposalsCreatedCount": 123,
"detectionPrsOpenedCount": 123,
"ruleProposalsShippedCount": 123,
"blockingGapsOpenCount": 123,
"blockingGapsResolvedCount": 123,
"coverageStateDistribution": {
"none": 123,
"partial": 123,
"covered": 123,
"unknown": 123
}
},
"funnel": {
"intelIngestedCount": 123,
"huntableIntelCount": 123,
"threatsTrackedCount": 123,
"threatsAssessedCount": 123,
"exposureAlertsGeneratedCount": 123
},
"recentThreats": [
{
"threatId": "<string>",
"title": "<string>",
"canonicalKey": "<string>",
"firstSeenAt": "<string>",
"latestIntelAt": "<string>",
"exposureScore": 123,
"affectedAssetCount": 123,
"activeHuntAlertId": "<string>",
"latestAlertId": "<string>",
"deliverableCount": 123
}
],
"recentRuleProposals": [
{
"deliverableId": "<string>",
"proposalId": "<string>",
"pullRequestUrl": "<string>",
"threatId": "<string>",
"threatTitle": "<string>",
"intent": "<string>",
"targetProduct": "<string>",
"targetLogSource": "<string>",
"createdAt": "<string>"
}
],
"recentBlockingGaps": [
{
"gapId": "<string>",
"product": "<string>",
"logSource": "<string>",
"scopeId": "<string>",
"blocking": true,
"establishedAt": "<string>",
"linkedThreats": [
{
"threatId": "<string>",
"threatTitle": "<string>",
"canonicalKey": "<string>",
"blocking": true
}
],
"createdAt": "<string>"
}
],
"capabilities": {
"canReadEvidence": true,
"canReassess": true,
"canTriage": true
}
}{
"error": "<string>",
"issues": [
{}
]
}{
"error": "<string>"
}{
"error": "<string>",
"missingPerms": [
"<string>"
]
}{
"error": "<string>"
}Authorizations
API Key authentication for programmatic access. Include your API key in the Authorization header as: Bearer your_api_key_here
Response
Successful response
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Was this page helpful?
⌘I