component
Get a component by id
Get a component by id
GET
/
v0
/
component
/
{id}
Get a component by id
curl --request GET \
--url https://{hostname}.gable.ai/v0/component/{id} \
--header 'X-API-KEY: <api-key>'import requests
url = "https://{hostname}.gable.ai/v0/component/{id}"
headers = {"X-API-KEY": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-KEY': '<api-key>'}};
fetch('https://{hostname}.gable.ai/v0/component/{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://{hostname}.gable.ai/v0/component/{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 => [
"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"
"net/http"
"io"
)
func main() {
url := "https://{hostname}.gable.ai/v0/component/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-KEY", "<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://{hostname}.gable.ai/v0/component/{id}")
.header("X-API-KEY", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://{hostname}.gable.ai/v0/component/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-KEY"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"runId": "<string>",
"name": "<string>",
"ingresses": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"kind": "<string>",
"schema": {
"type": "struct",
"name": "<string>",
"fields": [
{
"type": "struct",
"name": "<string>",
"fields": "<array>",
"alias": "<string>",
"doc": "<string>",
"logical": "<string>",
"optional": true
}
],
"alias": "<string>",
"doc": "<string>",
"logical": "<string>"
},
"signatureName": "<string>",
"payloadName": "<string>",
"friendly_name": "<string>"
}
],
"egresses": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"kind": "<string>",
"schema": {
"type": "struct",
"name": "<string>",
"fields": [
{
"type": "struct",
"name": "<string>",
"fields": "<array>",
"alias": "<string>",
"doc": "<string>",
"logical": "<string>",
"optional": true
}
],
"alias": "<string>",
"doc": "<string>",
"logical": "<string>"
},
"signatureName": "<string>",
"payloadName": "<string>",
"friendly_name": "<string>"
}
],
"paths": [
{
"ingress": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"codeAnchorId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"description": "<string>"
},
"egress": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"codeAnchorId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"description": "<string>"
},
"codeAnchors": [
{
"anchorId": "<string>",
"name": "<string>",
"codeUri": {
"file": "<string>",
"lineStart": 123,
"columnStart": 123,
"lineEnd": 123,
"columnEnd": 123
},
"url": "<string>"
}
],
"fieldMappings": [
{
"ingressField": "<string>",
"egressField": "<string>",
"notes": "<string>",
"fieldDataFlowPath": [
{
"anchorId": "<string>",
"name": "<string>",
"codeUri": {
"file": "<string>",
"lineStart": 123,
"columnStart": 123,
"lineEnd": 123,
"columnEnd": 123
},
"url": "<string>"
}
]
}
],
"pathId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"transformationSummary": "<string>",
"transformationSummaryDetailed": "<string>",
"payloadName": "<string>",
"friendlyPayloadName": "<string>",
"completeness": {},
"isSuppressed": false,
"pathNotes": "<string>",
"suppressedAt": {
"timestamp": "2023-11-07T05:31:56Z",
"versionId": "<string>"
}
}
],
"type": "<string>",
"metadata": {
"repo_uri": "<string>",
"repo_branch": "<string>",
"repo_commit": "<string>",
"project_root": "<string>",
"repo_ui_url": "<string>",
"external_component_id": "<string>",
"repo_name": "<string>",
"event_repo": "<string>",
"repo_commit_timestamp": "<string>",
"is_default_branch": true,
"namespace": "<string>",
"docker_image_version": "<string>",
"has_uncommitted_changes": true,
"operating_system": "<string>",
"sca_config_version": "<string>",
"scan_duration_ms": 123,
"raw_payload_size_bytes": 123,
"upload_duration_ms": 123,
"pr_base_branch": {
"branch": "<string>",
"commit": "<string>"
},
"pr_number": 123,
"gable_cli_version": "<string>",
"sca_prime_version": "<string>",
"dependencies": [
{
"repo_name": "<string>",
"commit_sha": "<string>",
"commit_timestamp": "<string>"
}
],
"extras": {}
},
"friendly_name": "<string>"
}Authorizations
Path Parameters
UUID of the component
Response
200 - application/json
Full component
The unique identifier for the component.
The ID of the run that the component belongs to
The name of the component.
The ingresses associated with the component.
Show child attributes
Show child attributes
The egresses associated with the component.
Show child attributes
Show child attributes
The paths associated with the component.
Show child attributes
Show child attributes
The type of the component.
Allowed value:
"CODE"Metadata about the code that is being analyzed
Show child attributes
Show child attributes
Optional user-defined friendly name for the component.
The mechanism used to collect data for this component (SCA or BYOL).
Available options:
SCA, BYOL ⌘I
Get a component by id
curl --request GET \
--url https://{hostname}.gable.ai/v0/component/{id} \
--header 'X-API-KEY: <api-key>'import requests
url = "https://{hostname}.gable.ai/v0/component/{id}"
headers = {"X-API-KEY": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-KEY': '<api-key>'}};
fetch('https://{hostname}.gable.ai/v0/component/{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://{hostname}.gable.ai/v0/component/{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 => [
"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"
"net/http"
"io"
)
func main() {
url := "https://{hostname}.gable.ai/v0/component/{id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-KEY", "<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://{hostname}.gable.ai/v0/component/{id}")
.header("X-API-KEY", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://{hostname}.gable.ai/v0/component/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-KEY"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"runId": "<string>",
"name": "<string>",
"ingresses": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"kind": "<string>",
"schema": {
"type": "struct",
"name": "<string>",
"fields": [
{
"type": "struct",
"name": "<string>",
"fields": "<array>",
"alias": "<string>",
"doc": "<string>",
"logical": "<string>",
"optional": true
}
],
"alias": "<string>",
"doc": "<string>",
"logical": "<string>"
},
"signatureName": "<string>",
"payloadName": "<string>",
"friendly_name": "<string>"
}
],
"egresses": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"kind": "<string>",
"schema": {
"type": "struct",
"name": "<string>",
"fields": [
{
"type": "struct",
"name": "<string>",
"fields": "<array>",
"alias": "<string>",
"doc": "<string>",
"logical": "<string>",
"optional": true
}
],
"alias": "<string>",
"doc": "<string>",
"logical": "<string>"
},
"signatureName": "<string>",
"payloadName": "<string>",
"friendly_name": "<string>"
}
],
"paths": [
{
"ingress": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"codeAnchorId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"description": "<string>"
},
"egress": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"codeAnchorId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"description": "<string>"
},
"codeAnchors": [
{
"anchorId": "<string>",
"name": "<string>",
"codeUri": {
"file": "<string>",
"lineStart": 123,
"columnStart": 123,
"lineEnd": 123,
"columnEnd": 123
},
"url": "<string>"
}
],
"fieldMappings": [
{
"ingressField": "<string>",
"egressField": "<string>",
"notes": "<string>",
"fieldDataFlowPath": [
{
"anchorId": "<string>",
"name": "<string>",
"codeUri": {
"file": "<string>",
"lineStart": 123,
"columnStart": 123,
"lineEnd": 123,
"columnEnd": 123
},
"url": "<string>"
}
]
}
],
"pathId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"transformationSummary": "<string>",
"transformationSummaryDetailed": "<string>",
"payloadName": "<string>",
"friendlyPayloadName": "<string>",
"completeness": {},
"isSuppressed": false,
"pathNotes": "<string>",
"suppressedAt": {
"timestamp": "2023-11-07T05:31:56Z",
"versionId": "<string>"
}
}
],
"type": "<string>",
"metadata": {
"repo_uri": "<string>",
"repo_branch": "<string>",
"repo_commit": "<string>",
"project_root": "<string>",
"repo_ui_url": "<string>",
"external_component_id": "<string>",
"repo_name": "<string>",
"event_repo": "<string>",
"repo_commit_timestamp": "<string>",
"is_default_branch": true,
"namespace": "<string>",
"docker_image_version": "<string>",
"has_uncommitted_changes": true,
"operating_system": "<string>",
"sca_config_version": "<string>",
"scan_duration_ms": 123,
"raw_payload_size_bytes": 123,
"upload_duration_ms": 123,
"pr_base_branch": {
"branch": "<string>",
"commit": "<string>"
},
"pr_number": 123,
"gable_cli_version": "<string>",
"sca_prime_version": "<string>",
"dependencies": [
{
"repo_name": "<string>",
"commit_sha": "<string>",
"commit_timestamp": "<string>"
}
],
"extras": {}
},
"friendly_name": "<string>"
}