Skip to main content
POST
Ingestion-Scan starten

Berechtigungen

Erfordert einen Service-Benutzer oder ein persönliches Zugriffstoken mit der Berechtigung UseCodeScans auf Organisationsebene.

Verhalten

Stellt einen Code-Scan im Ingestion-Modus in die Warteschlange. Statt Issues von Grund auf zu erkennen, übernimmt ein Ingestion-Scan extern erstellte Befunde (zum Beispiel aus einem SAST-Bericht) und lässt sie von Devin anhand des Repositorys triagieren und validieren. Der Scan wird vom Scan-Dispatcher asynchron gestartet und dem aufrufenden Principal zugeordnet. Das Pendant im Enterprise-Geltungsbereich ist Ingestion-Scan starten (Enterprise).

Anfragefelder

Geben Sie genau eines der Felder repo_name oder repos an.
  • repo_name: vollständiger Name des Repositorys, z. B. owner/repo.
  • repos: Repositorys, die ein einzelner Multi-Repo-Scan abdeckt, als Liste von Objekten mit repo_name und optionalem host (bis zu 200). Der erste Eintrag ist das primäre Repository des Scans.
  • profile_id (erforderlich): ein Scan-Profil im Modus ingest. Ein Profil im Modus discover wird mit 400 abgewiesen.
  • host: Git-Host des Repositorys, sofern er nicht abgeleitet werden kann.
  • attachment_urls: Devin-Anhang-URLs (zum Beispiel ein exportierter Scannerbericht), die dem Scan als Eingabe bereitgestellt werden. Laden Sie Dateien zuerst über die Attachments API hoch, wofür die Berechtigung UseDevinSessions erforderlich ist.
  • effort: normal (Standard) nutzt einen geringeren Reasoning-Aufwand des Modells bei größeren Triage- und Validierungs-Batches; deep durchläuft die vollständige Pipeline.
  • platform: wo die Sitzungen des Scans ausgeführt werden – entweder ein für die Organisation konfiguriertes Plattform-Label (zum Beispiel linux, windows oder macos) oder der Name eines Outpost-Pools; Groß-/Kleinschreibung wird nicht beachtet. Passt ein Name auf beides, haben Plattformen Vorrang. Standardmäßig gilt die Voreinstellung der Organisation.

Fehler

  • 400, wenn profile_id kein Profil im Ingestion-Modus ist oder platform keinem konfigurierten Plattform-Label oder Outpost-Pool entspricht (der Fehlertext listet die verfügbaren Werte auf).
  • 404, wenn das Repository oder Profil für die Organisation nicht sichtbar ist.
  • 409, wenn die Scan-Warteschlange der Organisation ausgelastet ist. Versuchen Sie es später erneut.
  • 422, wenn entweder beide oder keiner der Parameter repo_name und repos angegeben sind oder repos leer ist.

Autorisierungen

Authorization
string
header
erforderlich

Servicebenutzer-Anmeldedaten (Präfix: cog_)

Pfadparameter

org_id
string
erforderlich

Organisations-ID (Präfix: org-)

Beispiel:

"org-abc123def456"

Body

application/json

Anfragetext zum Starten eines Code-Scans im Ingestion-Modus.

Akzeptiert nur ein Scanprofil für die Ingestion (Ingest-Modus): Das Profil wird für das angegebene Repository (oder die angegebenen Repositorys) ausgeführt.

profile_id
string
erforderlich

Auszuführendes Scanprofil im Ingestion-Modus. Muss ein Ingest-Profil sein; Nicht-Ingest-Profile werden mit 400 abgewiesen.

attachment_urls
string<uri>[] | null

Devin-Anhang-URLs, die dem Scan bereitgestellt werden, z. B. über die Attachments-API hochgeladene Dateien. Die Anhänge müssen zu der gescannten Organisation gehören.

Maximum array length: 10
Required string length: 1 - 2083
effort
enum<string> | null

Scan-Aufwand: 'normal' (Standard) nutzt einen geringeren Reasoning-Aufwand des Modells und größere Batches für Triage und Validierung; 'deep' führt die vollständige Pipeline aus.

Verfügbare Optionen:
normal,
deep
host
string | null

Git-Host des Repositorys, falls bekannt.

platform
string | null

Ausführungsort der Scan-Sitzungen: eine für die Organisation konfigurierte Plattformbezeichnung (z. B. 'linux', 'windows', 'macos') oder der Name eines Outpost-Pools (BYOB), wobei die Groß- und Kleinschreibung nicht berücksichtigt wird; wenn ein Name sowohl einer Plattform als auch einem Pool entspricht, hat die Plattform Vorrang. Ohne Angabe gilt der Standard der Organisation. Unbekannte Werte werden mit einem 400-Fehler abgewiesen, dessen Fehlerantwort die verfügbaren Plattformbezeichnungen und Outpost-Pool-Namen auflistet.

Maximum string length: 128
repo_name
string | null

Vollständiger Name des zu scannenden Repositorys. Geben Sie genau einen der beiden Parameter repo_name oder repos an.

repos
ScanRepoRequest · object[] | null

Repositorys, die von einem Scan erfasst werden; der erste Eintrag ist das primäre Repository des Scans. Geben Sie genau einen der beiden Parameter repo_name oder repos an.

Maximum array length: 200

Antwort

Erfolgreiche Antwort

Ein einzelner Code-Scan.

created_at
integer
erforderlich

Zeitpunkt, zu dem der Scan erstellt wurde (Unix-Sekunden).

effort
enum<string>
erforderlich

Scan-Aufwand: 'normal' nutzt einen geringeren Reasoning-Aufwand des Modells und größere Untersuchungspakete; 'deep' führt die vollständige Pipeline aus.

Verfügbare Optionen:
normal,
deep
host
string | null
erforderlich

Git-Host des Repositorys, falls bekannt.

org_id
string
erforderlich

Organisation, zu der der Scan gehört.

profile
CodeScanProfileResponse · object | null
erforderlich

Profil, unter dem der Scan ausgeführt wurde, falls vorhanden.

repo_name
string
erforderlich

Primäres Repository des Scans. Multi-Repo-Scans umfassen zusätzliche Repositorys, die hier nicht aufgeführt sind.

scan_id
string
erforderlich

Eindeutige Kennung des Scans.

scan_type
enum<string>
erforderlich

Typ des Scans, bei der Erstellung festgelegt.

Verfügbare Optionen:
security,
performance,
db-queries,
test-coverage,
dead-code,
code-quality,
cleanup,
telemetry,
accessibility,
compliance,
general,
migration-docs
status
enum<string>
erforderlich

Scan-Status: waiting, pending, running, awaiting_user_input, completed, failed oder cancelled.

Verfügbare Optionen:
waiting,
pending,
running,
awaiting_user_input,
completed,
failed,
cancelled
url
string
erforderlich

URL der Scan-Seite in der Devin-Webapp.

outpost_pool_id
string | null

Outpost-Pool, auf dem die Sitzungen des Scans ausgeführt werden, sofern festgelegt.

platform
string | null

Bezeichnung der gehosteten Plattform, auf der die Sitzungen des Scans ausgeführt werden. Null, wenn der Scan auf einem Outpost-Pool oder mit der Standardeinstellung der Organisation ausgeführt wird.

repo_full_name
string | null

Kennung des primären Repositorys einschließlich Host (z. B. github.com/org/repo). Null für Perforce-Depots, die keinen Git-Host haben.