curl --request GET \
--url https://www.corgea.app/api/v1/issue/{issue_id} \
--header 'CORGEA-TOKEN: <api-key>'import requests
url = "https://www.corgea.app/api/v1/issue/{issue_id}"
headers = {"CORGEA-TOKEN": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'CORGEA-TOKEN': '<api-key>'}};
fetch('https://www.corgea.app/api/v1/issue/{issue_id}', 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://www.corgea.app/api/v1/issue/{issue_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"CORGEA-TOKEN: <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"
"net/http"
"io"
)
func main() {
url := "https://www.corgea.app/api/v1/issue/{issue_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("CORGEA-TOKEN", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://www.corgea.app/api/v1/issue/{issue_id}")
.header("CORGEA-TOKEN", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://www.corgea.app/api/v1/issue/{issue_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["CORGEA-TOKEN"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"status": "ok",
"issue": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"scan_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "open",
"urgency": "critical",
"created_at": "2023-11-07T05:31:56Z",
"classification": {
"id": "CWE-123",
"name": "Vulnerability Name",
"description": "<string>"
},
"location": {
"file": {
"name": "<string>",
"language": "<string>",
"path": "<string>"
},
"project": {
"name": "<string>",
"branch": "<string>",
"git_sha": "<string>"
},
"line_number": 123
},
"details": {
"explanation": "<string>"
},
"auto_triage": {
"false_positive_detection": {
"status": "valid",
"reasoning": "<string>"
}
},
"auto_fix_suggestion": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "fix_available",
"patch": {
"diff": "<string>",
"explanation": "<string>"
}
},
"assigned_to": {
"id": "<string>",
"email": "jsmith@example.com",
"name": "<string>"
},
"reachability": {
"is_reachable": true,
"endpoints": [
{
"path": "<string>",
"method": "<string>",
"file_path": "<string>",
"line_number": 123,
"pathways": [
{
"pathway_id": "<string>",
"total_depth": 123,
"confidence_score": 123,
"target": {},
"steps": [
{
"depth": 123,
"file_path": "<string>",
"line_number": 123,
"function_name": "<string>",
"target_line_number": 123
}
]
}
]
}
]
}
}
}{
"status": "error",
"message": "Issue not found"
}Obtener hallazgo
Obtiene los detalles de un hallazgo concreto
curl --request GET \
--url https://www.corgea.app/api/v1/issue/{issue_id} \
--header 'CORGEA-TOKEN: <api-key>'import requests
url = "https://www.corgea.app/api/v1/issue/{issue_id}"
headers = {"CORGEA-TOKEN": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'CORGEA-TOKEN': '<api-key>'}};
fetch('https://www.corgea.app/api/v1/issue/{issue_id}', 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://www.corgea.app/api/v1/issue/{issue_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"CORGEA-TOKEN: <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"
"net/http"
"io"
)
func main() {
url := "https://www.corgea.app/api/v1/issue/{issue_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("CORGEA-TOKEN", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://www.corgea.app/api/v1/issue/{issue_id}")
.header("CORGEA-TOKEN", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://www.corgea.app/api/v1/issue/{issue_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["CORGEA-TOKEN"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"status": "ok",
"issue": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"scan_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "open",
"urgency": "critical",
"created_at": "2023-11-07T05:31:56Z",
"classification": {
"id": "CWE-123",
"name": "Vulnerability Name",
"description": "<string>"
},
"location": {
"file": {
"name": "<string>",
"language": "<string>",
"path": "<string>"
},
"project": {
"name": "<string>",
"branch": "<string>",
"git_sha": "<string>"
},
"line_number": 123
},
"details": {
"explanation": "<string>"
},
"auto_triage": {
"false_positive_detection": {
"status": "valid",
"reasoning": "<string>"
}
},
"auto_fix_suggestion": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "fix_available",
"patch": {
"diff": "<string>",
"explanation": "<string>"
}
},
"assigned_to": {
"id": "<string>",
"email": "jsmith@example.com",
"name": "<string>"
},
"reachability": {
"is_reachable": true,
"endpoints": [
{
"path": "<string>",
"method": "<string>",
"file_path": "<string>",
"line_number": 123,
"pathways": [
{
"pathway_id": "<string>",
"total_depth": 123,
"confidence_score": 123,
"target": {},
"steps": [
{
"depth": 123,
"file_path": "<string>",
"line_number": 123,
"function_name": "<string>",
"target_line_number": 123
}
]
}
]
}
]
}
}
}{
"status": "error",
"message": "Issue not found"
}Autorizaciones
Clave de API para la autenticación
Parámetros de ruta
ID del hallazgo
Parámetros de consulta
Indica si se debe incluir el código completo en la respuesta
Incluye los detalles de alcanzabilidad de endpoints del hallazgo.
Indica si se debe iniciar en segundo plano la generación de una corrección que falte y cumpla los requisitos. Establece el valor en false para devolver el estado actual del hallazgo sin iniciar la generación.
Espera a que se genere la corrección en segundo plano antes de responder. Solo se aplica cuando generate_fix es true y falta una corrección que cumpla los requisitos. La espera es limitada (120 segundos de forma predeterminada); si la generación sigue pendiente, la respuesta indica generating. Vuelve a consultar el hallazgo para comprobar si la corrección está lista.
¿Esta página le ayudó?
