Skip to main content
POST
Avviare il code scan

Autorizzazioni

Richiede un utente di servizio o un token di accesso personale con l’autorizzazione UseCodeScans a livello dell’organizzazione.

Comportamento

Accoda un nuovo code scan per repo_name nell’organizzazione. Il code scan viene avviato in modo asincrono dal dispatcher delle scansioni; la risposta contiene il record del code scan con status iniziale waiting o pending. Interroga Elenca Code Scan per monitorarne l’avanzamento e Elenca risultati di Code Scan (filtrati per scan_id) per consultare i risultati quando il code scan raggiunge lo stato completed. Il code scan è attribuito al principal chiamante (l’utente di servizio o il PAT che ha effettuato la richiesta). L’equivalente nell’ambito Enterprise è Avvia Code Scan (Enterprise).

Campi della richiesta

  • repo_name (obbligatorio): nome completo del repository, ad es. owner/repo. Il repository deve essere già accessibile tramite l’integrazione Git dell’organizzazione.
  • host: host Git del repository, se non può essere dedotto.
  • profile_id: un profilo di scansione da applicare. Per i profili in modalità ingest, utilizza Avvia scansione di ingestione.
  • scan_type: tipo di scansione da eseguire. Se viene specificato profile_id, deve corrispondere al tipo di scansione del profilo. Per impostazione predefinita, viene usato il tipo del profilo oppure security per le scansioni senza profilo. I tipi di scansione diversi da security richiedono un profilo.
  • commit_sha: commit da estrarre prima della scansione. Per impostazione predefinita, viene usato l’HEAD del branch predefinito del repository.

Errori

  • 400 se scan_type è in conflitto con il profilo o se viene specificato un scan_type non di sicurezza senza un profilo.
  • 403 se l’organizzazione è limitata alle sole scansioni di ingestione e non viene specificato un profilo in modalità ingest.
  • 404 se il repository o il profilo non è visibile all’organizzazione.
  • 409 se il backlog delle scansioni dell’organizzazione ha raggiunto il limite. Riprova più tardi.

Autorizzazioni

Authorization
string
header
obbligatorio

Credenziale dell'utente del servizio (prefisso: cog_)

Parametri del percorso

org_id
string
obbligatorio

ID dell'organizzazione (prefisso: org-)

Esempio:

"org-abc123def456"

Corpo

application/json

Corpo della richiesta per avviare un nuovo code scan.

repo_name
string
obbligatorio

Nome completo del repository da sottoporre a scansione.

commit_sha
string | null

Commit da estrarre prima della scansione.

host
string | null

Host Git del repository, se noto.

profile_id
string | null

Profilo di scansione da applicare alla scansione.

scan_type
enum<string> | null

Tipo di scansione da eseguire. Deve corrispondere al tipo di scansione del profilo quando viene fornito un profilo; per impostazione predefinita usa il tipo del profilo oppure 'security' per le scansioni senza profilo. I tipi diversi da security richiedono un profilo e vengono rifiutati senza di esso.

Opzioni disponibili:
security,
performance,
db-queries,
test-coverage,
dead-code,
code-quality,
telemetry,
accessibility,
general,
migration-docs

Risposta

Risposta con esito positivo

Un singolo code scan.

created_at
integer
obbligatorio

Momento in cui lo scan è stato creato (secondi Unix).

host
string | null
obbligatorio

Host Git della repository, se noto.

org_id
string
obbligatorio

Organizzazione a cui appartiene lo scan.

profile
CodeScanProfileResponse · object | null
obbligatorio

Profilo con cui è stato eseguito lo scan, se presente.

repo_name
string
obbligatorio

Repository principale dello scan. Gli scan multi-repo coprono repository aggiuntive non elencate qui.

scan_id
string
obbligatorio

Identificatore univoco dello scan.

scan_type
enum<string>
obbligatorio

Tipo di scansione, definito al momento della creazione.

Opzioni disponibili:
security,
performance,
db-queries,
test-coverage,
dead-code,
code-quality,
telemetry,
accessibility,
general,
migration-docs
status
enum<string>
obbligatorio

Stato dello scan: waiting, pending, running, awaiting_user_input, completed, failed o cancelled.

Opzioni disponibili:
waiting,
pending,
running,
awaiting_user_input,
completed,
failed,
cancelled