Skip to main content
POST
Avviare il code scan

Autorizzazioni

Richiede un utente di servizio o un token di accesso personale con l’autorizzazione UseAccountCodeScans a livello aziendale.

Comportamento

Accoda un nuovo code scan per repo_name nell’organizzazione specificata. Il code scan viene avviato in modo asincrono dal dispatcher delle scansioni; la risposta contiene il record del code scan con uno status iniziale di waiting o pending. Esegui il polling di Elencare i code scan per monitorarne l’avanzamento e di Elencare i risultati dei code scan (filtrati per scan_id) per leggere i risultati quando il code scan raggiunge lo stato completed. Il code scan è attribuito al principal chiamante, ovvero l’utente di servizio o il PAT che ha effettuato la richiesta.

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. Usa Avvia scansione di ingestione per i profili in modalità ingest.
  • scan_type: tipo di scansione da eseguire. Deve corrispondere al tipo di scansione del profilo se viene specificato profile_id. Per impostazione predefinita, usa il tipo del profilo oppure security per le scansioni senza profilo. I tipi di scansione non di sicurezza richiedono un profilo.
  • commit_sha: commit su cui effettuare il checkout prima della scansione. Per impostazione predefinita, viene usato l’HEAD del branch predefinito del repository.

Errori

  • 400 quando scan_type è in conflitto con il profilo oppure viene specificato un scan_type non relativo alla sicurezza senza un profilo.
  • 403 quando l’organizzazione è limitata alle sole scansioni di ingestione e non viene specificato un profilo in modalità ingest.
  • 404 quando l’organizzazione, il repository o il profilo non sono visibili all’account Enterprise.
  • 409 quando 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 riuscita

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