curl --request GET \
--url https://api-eu.cybedefend.com/project/{projectId}/results/secret/groupedimport requests
url = "https://api-eu.cybedefend.com/project/{projectId}/results/secret/grouped"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api-eu.cybedefend.com/project/{projectId}/results/secret/grouped', 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-eu.cybedefend.com/project/{projectId}/results/secret/grouped",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$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-eu.cybedefend.com/project/{projectId}/results/secret/grouped"
req, _ := http.NewRequest("GET", url, nil)
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-eu.cybedefend.com/project/{projectId}/results/secret/grouped")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-eu.cybedefend.com/project/{projectId}/results/secret/grouped")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"projectId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"projectName": "my-project",
"page": 1,
"limit": 10,
"totalPages": 5,
"sort": "occurrenceCount",
"order": "DESC",
"severity": [
"<string>"
],
"status": [
"<string>"
],
"priority": [
"<string>"
],
"groupedVulnerabilities": [
{
"ruleId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"occurrenceCount": 5,
"severityBreakdown": {
"critical": 5,
"high": 10,
"medium": 20,
"low": 15
},
"highestSeverity": "critical",
"language": "javascript",
"occurrences": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"path": "src/controllers/user.ts",
"vulnerableStartLine": 42,
"vulnerableEndLine": 50,
"currentState": "to_verify",
"currentSeverity": "high",
"currentPriority": "urgent",
"createdAt": "<string>",
"autofixRecords": [
"<string>"
]
}
],
"hasAutofix": true,
"firstSeen": "<string>",
"lastSeen": "<string>",
"vulnerability": {}
}
],
"total": 50,
"totalOccurrences": 200,
"scanProjectInfo": {},
"vulnCountByType": {},
"isProjectParsed": true,
"autofixCountByType": {}
}{
"timestamp": "2025-02-18T12:31:18.491Z",
"service": "AiService",
"method": "startConversation",
"message": "Invalid parameters provided",
"code": 400
}Get Secret vulnerabilities grouped by rule ID
Returns Secret vulnerabilities consolidated by rule with occurrence counts and severity breakdown.
curl --request GET \
--url https://api-eu.cybedefend.com/project/{projectId}/results/secret/groupedimport requests
url = "https://api-eu.cybedefend.com/project/{projectId}/results/secret/grouped"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api-eu.cybedefend.com/project/{projectId}/results/secret/grouped', 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-eu.cybedefend.com/project/{projectId}/results/secret/grouped",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$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-eu.cybedefend.com/project/{projectId}/results/secret/grouped"
req, _ := http.NewRequest("GET", url, nil)
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-eu.cybedefend.com/project/{projectId}/results/secret/grouped")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-eu.cybedefend.com/project/{projectId}/results/secret/grouped")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"projectId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"projectName": "my-project",
"page": 1,
"limit": 10,
"totalPages": 5,
"sort": "occurrenceCount",
"order": "DESC",
"severity": [
"<string>"
],
"status": [
"<string>"
],
"priority": [
"<string>"
],
"groupedVulnerabilities": [
{
"ruleId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"occurrenceCount": 5,
"severityBreakdown": {
"critical": 5,
"high": 10,
"medium": 20,
"low": 15
},
"highestSeverity": "critical",
"language": "javascript",
"occurrences": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"path": "src/controllers/user.ts",
"vulnerableStartLine": 42,
"vulnerableEndLine": 50,
"currentState": "to_verify",
"currentSeverity": "high",
"currentPriority": "urgent",
"createdAt": "<string>",
"autofixRecords": [
"<string>"
]
}
],
"hasAutofix": true,
"firstSeen": "<string>",
"lastSeen": "<string>",
"vulnerability": {}
}
],
"total": 50,
"totalOccurrences": 200,
"scanProjectInfo": {},
"vulnCountByType": {},
"isProjectParsed": true,
"autofixCountByType": {}
}{
"timestamp": "2025-02-18T12:31:18.491Z",
"service": "AiService",
"method": "startConversation",
"message": "Invalid parameters provided",
"code": 400
}Path Parameters
Query Parameters
Page number
1
Page size
10
Sort field
occurrenceCount, highestSeverity, lastSeen, currentSeverity, currentPriority, createdAt "occurrenceCount"
Sort order
ASC, DESC, asc, desc "DESC"
Filter by severity (repeat the param for multiple values, e.g. severityFilter=critical&severityFilter=high)
critical, high, medium, low Filter by status (repeat the param for multiple values, e.g. statusFilter=to_verify&statusFilter=confirmed)
to_verify, resolved, confirmed, ignored Filter by priority (repeat the param for multiple values, e.g. priorityFilter=critical_urgent&priorityFilter=urgent)
critical_urgent, urgent, normal, low, very_low Search query
"SQL Injection"
Filter by branch
"main"
Filter by autofix availability: true = only with autofix, false = only without autofix, omit = all
true
Response
Grouped Secret vulnerabilities
Project ID
Project name
"my-project"
Current page number
1
Page size
10
Total number of pages
5
Sort field
"occurrenceCount"
Sort order
"DESC"
Applied severity filters
Applied status filters
Applied priority filters
Grouped vulnerabilities
Show child attributes
Show child attributes
Total number of groups
50
Total number of occurrences across all groups
200
Scan project info
Vulnerability count by type
Whether project has been parsed
Autofix count by type