Zum Inhalt springen Lockpick

Jede Operation der Lockpick-API mit ihrer Berechtigung, ihren Eingaben und ihrer Antwort, direkt aus der API selbst generiert. Version 1, in der Beta.

Version 1, in der Beta. Jeder Pfad beginnt mit /api/cli/v1, jede Anfrage trägt einen Schlüssel als Bearer-Token, und jede Antwort ist { data, error }. Die gesamte Beschreibung gibt es auch als OpenAPI 3.1.

Agent-API

Die Serveroperationen hinter den MCP-Werkzeugen. Neue Integrationen sollten diese nutzen. lockpick_wait_for_scan fragt GET /agent/scans/{scanId} wiederholt ab. lockpick_evaluate_scan liest denselben Scan und wendet die Bewertungsrichtlinie im Client an. Diese beiden zusammengesetzten Werkzeuge haben keinen eigenen HTTP-Endpunkt. Skripte können den Scan-Status abfragen und seinen Abschlusszeitpunkt, die Abdeckung und die Anzahl offener Befunde gegen ihre eigene Richtlinie prüfen.

GET /agent/me

Die Person, der Arbeitsbereich, die Berechtigungen und das Ablaufdatum dieser Zugangsdaten sowie was sie starten können.

data

Feld Typ Immer vorhanden
user object Ja
workspace object Ja
credential object Ja
capabilities object Ja

GET /agent/allowance

Kostenlose Scans, die diesen Monat noch übrig sind, ihre Rücksetzdaten und Guthaben.

data

Feld Typ Immer vorhanden
accessSource community, stripe (alter Abrechnungswert), pilot (alt, intern), none Ja
accountingMode pilot (alt, intern), credits (alt, intern), unmetered Ja
pulse object Ja
deep object Ja
creditBalance integer or null Ja
freeSiteId string or null Ja
freeSiteVisible boolean Ja
canSwitchFreeSite boolean Ja

GET /agent/monitor

Aktuelle Sicherheitsinformationen durchsuchen und Treffer für berechtigte Websites erklären.

Abfrageparameter

Feld Typ Pflicht
view latest, sites, exploited, following Nein
kind all, vulnerability, malicious_package Nein
q string Nein
ecosystem all, npm, pypi, composer, go, rubygems, maven, cargo, nuget, pub, hex, swift, wordpress Nein
severity all, critical, high, medium, low, unknown Nein
days number Nein
cursor string Nein
limit integer Nein
siteId string Nein
advisoryId string Nein

data

Feld Typ Immer vorhanden
items list of object Ja
nextCursor string or null Ja
limitations list of string Ja

Jeder Eintrag

Feld Typ Immer vorhanden
id string Ja
title string Ja
source string Ja
kind vulnerability, malicious_package Ja
severity critical, high, medium, low, unknown Ja
provenance list of object Ja
withdrawnAt string or null Nein
publishedAt string Ja
exploited boolean Ja
ids list of string Ja
tech list of object Ja
epss object or null Nein
cvss object or null Nein
attribution string or null Ja
references list of string Ja
packages list of object Ja
sites list of object Ja

GET /agent/sites

Eine Seite mit Websites und ihren letzten Scans.

Abfrageparameter

Feld Typ Pflicht
limit integer Nein
cursor string Nein

data

Feld Typ Immer vorhanden
items list of object Ja
nextCursor string or null Ja

Jeder Eintrag

Feld Typ Immer vorhanden
id string Ja
name string Ja
status string Ja
baseDomain string or null Ja
latestPulse object or null Ja
latestDeep object or null Ja
latestBox object or null Ja
webPath string Ja
webUrl string Ja

POST /agent/sites

Eine Website hinzufügen oder die Website mit dieser Adresse zurückgeben.

Anfragetext

Feld Typ Pflicht
url string Ja
name string Nein
idempotencyKey string Ja

data

Feld Typ Immer vorhanden
site object Ja
created boolean Ja

GET /agent/sites/{siteId}/status

Der Stand einer Website: ihre letzten Scans und was als Nächstes zu tun ist.

data

Feld Typ Immer vorhanden
site object Ja
latestPulse object or null Ja
latestDeep object or null Ja
latestBox object or null Ja
lastComparison object or null Ja
caveats list of string Ja
fixes object or null Nein
relevant list of object Nein
relevantTotal integer Nein

GET /agent/sites/{siteId}/history

Der Sicherheitsverlauf einer Site: der Score-Verlauf jeder Prüftiefe, unterbrochen, wo sich die Engine geändert hat, offene Befunde im Zeitverlauf, Behebungen, Rückfälle und die mittlere Zeit bis zur Behebung.

data

Feld Typ Immer vorhanden
siteId string Ja
scores list of object Ja
findings object Ja

POST /agent/sites/{siteId}/dependencies

Die Paketnamen und genauen Versionen senden, die eine Website festlegt, niemals Code. Danach lesen Sie, welche Sicherheitshinweise sie betreffen.

Anfragetext

Feld Typ Pflicht
inventory object Nein
packages list of object Ja
sources list of package-lock.json, npm-shrinkwrap.json, pnpm-lock.yaml, yarn.lock, bun.lock, bun.lockb, requirements.txt, poetry.lock, uv.lock, Pipfile.lock, pdm.lock, composer.lock, go.mod, Gemfile.lock, gems.locked, pom.xml, gradle.lockfile, buildscript-gradle.lockfile, build.gradle, build.gradle.kts, Cargo.lock, packages.lock.json, pubspec.lock, mix.lock, Package.resolved Ja
idempotencyKey string Ja

data

Feld Typ Immer vorhanden
siteId string Ja
receivedAt string or null Ja
sources list of package-lock.json, npm-shrinkwrap.json, pnpm-lock.yaml, yarn.lock, bun.lock, bun.lockb, requirements.txt, poetry.lock, uv.lock, Pipfile.lock, pdm.lock, composer.lock, go.mod, Gemfile.lock, gems.locked, pom.xml, gradle.lockfile, buildscript-gradle.lockfile, build.gradle, build.gradle.kts, Cargo.lock, packages.lock.json, pubspec.lock, mix.lock, Package.resolved Ja
packageCount integer Ja
affectsYouCount integer Ja
affectsYou list of object Ja
webUrl string Ja

GET /agent/sites/{siteId}/github

Die GitHub-Verknüpfung einer Website: Repository, Branch und Lockfile, das letzte Lesen, der Pull-Request-Kommentar und ob die GitHub-Liste des Aufrufers aktuell ist.

data

Feld Typ Immer vorhanden
siteId string Ja
available boolean Ja
canManage boolean Ja
linked object or null Ja
lastRead object or null Ja
pullRequestComments object or null Ja
authorization object Ja
webUrl string Ja

GET /agent/github/repositories

Die Repositories in der eigenen GitHub-Liste des Aufrufers für diesen Workspace, die einzigen, die er verknüpfen kann.

Abfrageparameter

Feld Typ Pflicht
search string Nein
limit integer Nein

data

Feld Typ Immer vorhanden
authorization object Ja
items list of object Ja
matched integer Ja
truncated boolean Ja

Jeder Eintrag

Feld Typ Immer vorhanden
repository string Ja
defaultBranch string Ja
private boolean Ja

POST /agent/sites/{siteId}/github

Eine Website mit einem Repository aus der eigenen GitHub-Liste des Aufrufers verknüpfen oder die Seite erhalten, auf der die Person es bestätigt.

Anfragetext

Feld Typ Pflicht
repository string Ja
ref string Nein
lockfiles string or list of string Nein
pullRequestComments on, off Nein

Wo eine GitHub-Verknüpfung steht, die auf die Person wartet.

data

Feld Typ Immer vorhanden
requestId string Ja
siteId string Ja
repository string Ja
state pending, authorizing, linked, not_reachable, declined, failed, expired Ja
expiresAt string Ja
link object or null Ja

DELETE /agent/sites/{siteId}/github

Die Verknüpfung einer Website mit ihrem GitHub-Repository lösen und das gelesene Lockfile verwerfen.

data

Feld Typ Immer vorhanden
siteId string Ja
unlinked boolean Ja

POST /agent/sites/{siteId}/github/pull-request-comments

Den Deep-Sicherheitskommentar zu Pull Requests für das verknüpfte Repository einer Website ein- oder ausschalten.

Anfragetext

Feld Typ Pflicht
enabled boolean Ja

data

Feld Typ Immer vorhanden
siteId string Ja
available boolean Ja
canManage boolean Ja
linked object or null Ja
lastRead object or null Ja
pullRequestComments object or null Ja
authorization object Ja
webUrl string Ja

GET /agent/sites/{siteId}/schedules

Die automatischen Pulse- und Deep-Prüfungen einer Website und die Intervalle, die ihr Plan erlaubt.

data

Feld Typ Immer vorhanden
siteId string Ja
enabled boolean Ja
allowed object Ja
pulse object or null Ja
deep object or null Ja
webUrl string Ja

POST /agent/sites/{siteId}/schedules/pulse

Die automatische Pulse-Prüfung einer Website innerhalb der Intervalle des Plans einrichten, ändern oder fortsetzen.

Anfragetext

Feld Typ Pflicht
cadence daily, weekly, monthly Nein
runHourUtc integer or null Nein

data

Feld Typ Immer vorhanden
scheduleId string Ja
siteId string Ja
depth pulse, deep Ja
status active, paused, archived Ja
cadence daily, weekly, monthly Ja
runHourUtc integer or null Ja
nextRunAt string Ja
consentUntil string Ja
lastOutcome string or null Ja

POST /agent/sites/{siteId}/schedules/pulse/pause

Die automatische Pulse-Prüfung einer Website pausieren.

data

Feld Typ Immer vorhanden
scheduleId string Ja
siteId string Ja
depth pulse, deep Ja
status active, paused, archived Ja
cadence daily, weekly, monthly Ja
runHourUtc integer or null Ja
nextRunAt string Ja
consentUntil string Ja
lastOutcome string or null Ja

POST /agent/sites/{siteId}/schedules/deep

Das Einrichten, Ändern oder Fortsetzen der automatischen Deep-Prüfung einer Website vorbereiten und den Link erhalten, über den die Person sie freigibt.

Anfragetext

Feld Typ Pflicht
cadence daily, weekly, monthly Nein
runHourUtc integer or null Nein

data

Feld Typ Immer vorhanden
requestId string Ja
siteId string Ja
depth string Ja
cadence daily, weekly, monthly Ja
runHourUtc integer or null Ja
approvalUrl string Ja
expiresAt string Ja
pollAfterSeconds integer Ja

POST /agent/sites/{siteId}/schedules/deep/pause

Die automatische Deep-Prüfung einer Website pausieren.

data

Feld Typ Immer vorhanden
scheduleId string Ja
siteId string Ja
depth pulse, deep Ja
status active, paused, archived Ja
cadence daily, weekly, monthly Ja
runHourUtc integer or null Ja
nextRunAt string Ja
consentUntil string Ja
lastOutcome string or null Ja

GET /agent/schedule-requests/{requestId}

Wo eine automatische Deep-Prüfung steht, die auf die Person wartet.

data

Feld Typ Immer vorhanden
requestId string Ja
siteId string Ja
depth string Ja
cadence daily, weekly, monthly Ja
runHourUtc integer or null Ja
state pending, approved, declined, failed, expired Ja
expiresAt string Ja
failure string or null Ja
schedule object or null Ja

GET /agent/sites/{siteId}/shares

Die Pulse-Ergebnisse einer Website, die einen aktiven öffentlichen Link zum Teilen haben.

data

Feld Typ Immer vorhanden
siteId string Ja
shares list of object Ja

POST /agent/scans/{scanId}/share

Ein abgeschlossenes Pulse-Ergebnis unter einem öffentlichen Link veröffentlichen oder seinen Link ersetzen.

Anfragetext

Feld Typ Pflicht
replace boolean Nein

data

Feld Typ Immer vorhanden
scanId string Ja
url string or null Ja
createdAt string Ja

DELETE /agent/scans/{scanId}/share

Das Teilen eines Pulse-Ergebnisses beenden; sein öffentlicher Link funktioniert nicht mehr.

data

Feld Typ Immer vorhanden
scanId string Ja
unshared boolean Ja

POST /agent/sites/{siteId}/pulse

Einen Pulse-Scan auf einer Website starten.

Anfragetext

Feld Typ Pflicht
idempotencyKey string Ja
baselineScanId string Nein

data

Feld Typ Immer vorhanden
scan object Ja
charged object Ja
allowance object Ja
replayed boolean Ja

POST /agent/sites/{siteId}/deep-verifications

Vor einem Deep-Scan einen DNS- oder Datei-Eigentumsnachweis ausstellen.

Anfragetext

Feld Typ Pflicht
method dns, file, meta Ja
idempotencyKey string Ja

data

Feld Typ Immer vorhanden
verificationId string Ja
siteId string Ja
origin string Ja
method dns, file, meta Ja
state pending, verified, expired, exhausted, revoked Ja
expiresAt string Ja
verifiedUntil string or null Ja
attemptsRemaining integer Ja
retryAfterSeconds integer or null Ja
value string Ja
location string Ja

POST /agent/sites/{siteId}/deep-verifications/{verificationId}/verify

Einen veröffentlichten Eigentumsnachweis prüfen. Jede Prüfung verbraucht einen seiner Versuche.

data

Feld Typ Immer vorhanden
verificationId string Ja
siteId string Ja
origin string Ja
method dns, file, meta Ja
state pending, verified, expired, exhausted, revoked Ja
expiresAt string Ja
verifiedUntil string or null Ja
attemptsRemaining integer Ja
retryAfterSeconds integer or null Ja

POST /agent/sites/{siteId}/deep-operations

Einen Deep-Scan vorbereiten und den Link erhalten, über den die Person ihn freigibt.

Anfragetext

Feld Typ Pflicht
verificationId string Ja
idempotencyKey string Ja

data

Feld Typ Immer vorhanden
operationId string Ja
siteId string Ja
origin string Ja
assessmentLevel string Ja
verificationId string Ja
cost object Ja
allowance object Ja
approvalState pending, approved, expired, denied Ja
approvalUrl string Ja
expiresAt string Ja

POST /agent/deep-operations/{operationId}/start

Einen von der Person freigegebenen Deep-Scan starten.

data

Feld Typ Immer vorhanden
scan object Ja
charged object Ja
allowance object Ja
replayed boolean Ja

POST /agent/free-site-switch

Eine Website entfernen, damit der kostenlose Pulse-Scan dieses Monats zu einer anderen wechseln kann.

Anfragetext

Feld Typ Pflicht
removeSiteId string Ja
checkId string Nein
idempotencyKey string Ja
confirmRemoval boolean Ja

data

Feld Typ Immer vorhanden
removedSiteId string Ja
removedSiteHost string Ja
replacementSiteId string or null Ja
allowance object Ja
restoreUrl string Ja
startedScanId string or null Ja
charged object Ja
replayed boolean Ja

GET /agent/scans

Eine Seite mit Scans, neueste zuerst, mit Filtern.

Abfrageparameter

Feld Typ Pflicht
siteId string Nein
kind pulse, box (Deep, alter Name) Nein
assessmentLevel pulse, standard, deep Nein
status queued, running, cancelling, succeeded, incomplete, failed, cancelled Nein
limit integer Nein
cursor string Nein

data

Feld Typ Immer vorhanden
items list of object Ja
nextCursor string or null Ja

Jeder Eintrag

Feld Typ Immer vorhanden
id string Ja
kind pulse, box (Deep, alter Name) Ja
projectId string Ja
target string Ja
status queued, running, cancelling, succeeded, incomplete, failed, cancelled Ja
mode autonomous, authenticated, active or null Ja
createdAt string or null Ja
finishedAt string or null Ja
webPath string Ja
assessmentLevel pulse, standard, deep or null Ja
headline object Ja
webUrl string Ja
suggestedPollAfterSeconds integer or null Ja

GET /agent/scans/{scanId}

Ein Scan mit seinem Status und seiner Zusammenfassung.

data

Feld Typ Immer vorhanden
id string Ja
kind pulse, box (Deep, alter Name) Ja
projectId string Ja
target string Ja
status queued, running, cancelling, succeeded, incomplete, failed, cancelled Ja
mode autonomous, authenticated, active or null Ja
createdAt string or null Ja
finishedAt string or null Ja
webPath string Ja
assessmentLevel pulse, standard, deep or null Ja
headline object Ja
webUrl string Ja
suggestedPollAfterSeconds integer or null Ja
docsUrl string Nein
dismissals Objekt Nein
baselineRunId string or null Ja
open object Ja
findingCount integer Ja
progress object or null Ja
coverage object Ja
caveats list of string Ja
outcome object or null Ja
exposureCheck object Nein
coverageReceipt object Nein

GET /agent/scans/{scanId}/findings

Eine Seite mit Befunden eines Scans.

  • Berechtigung: read
  • MCP-Werkzeug: lockpick_list_findings
  • Senden Sie x-lockpick-agent-features: finding-code, um den code jedes Befunds zu erhalten (LP- und sechs Zeichen, wie ihn der Web-Bericht zeigt). Ohne den Header enthält die Antwort keinen code, die Form, die ältere Clients erwarten.

Abfrageparameter

Feld Typ Pflicht
state attention, information, unknown, pass Nein
severity critical, high, medium, low, info Nein
all boolean or true, false Nein
limit integer Nein
cursor string Nein

data

Feld Typ Immer vorhanden
items list of object Ja
nextCursor string or null Ja

Jeder Eintrag

Feld Typ Immer vorhanden
dismissal Objekt Nein
id string Ja
code string Nein
runId string Ja
kind pulse, box (Deep, alter Name) Ja
severity critical, high, medium, low, info Ja
state attention, information, unknown, pass Ja
category string Ja
title string Ja
meaning string Ja
fix string or null Ja
confidence string Ja
evidence list of string Ja
sources list of string Ja
steps list of string Ja
webPath string Ja
webUrl string Ja
evidenceTrust string Ja
evidenceTruncated boolean Ja
verdict confirmed, needs_review, not_actionable or null Nein
certainty high, medium, low or null Nein
exploitability direct, conditional, hygiene, none or null Nein
proof object or null Nein
proofGap string or null Nein
urgency now, week, later, none Nein
howSure confirmed, likely, possible or null Nein
lifecycle object or null Nein

GET /agent/scans/{scanId}/findings/{findingId}

Ein Befund mit seinen geschwärzten Nachweisen.

  • Berechtigung: read
  • MCP-Werkzeug: lockpick_get_finding
  • Senden Sie x-lockpick-agent-features: finding-code, um den code jedes Befunds zu erhalten (LP- und sechs Zeichen, wie ihn der Web-Bericht zeigt). Ohne den Header enthält die Antwort keinen code, die Form, die ältere Clients erwarten.

data

Feld Typ Immer vorhanden
dismissal Objekt Nein
id string Ja
code string Nein
runId string Ja
kind pulse, box (Deep, alter Name) Ja
severity critical, high, medium, low, info Ja
state attention, information, unknown, pass Ja
category string Ja
title string Ja
meaning string Ja
fix string or null Ja
confidence string Ja
evidence list of string Ja
sources list of string Ja
steps list of string Ja
webPath string Ja
webUrl string Ja
evidenceTrust string Ja
evidenceTruncated boolean Ja
verdict confirmed, needs_review, not_actionable or null Nein
certainty high, medium, low or null Nein
exploitability direct, conditional, hygiene, none or null Nein
proof object or null Nein
proofGap string or null Nein
urgency now, week, later, none Nein
howSure confirmed, likely, possible or null Nein
lifecycle object or null Nein

GET /agent/scans/{scanId}/repair-brief

Ein Teil der Korrekturanleitung eines Scans.

Abfrageparameter

Feld Typ Pflicht
findingId string Nein
agent claude-code, codex, cursor, vscode, opencode, lovable, bolt, replit, v0 Nein
cursor string Nein

data

Feld Typ Immer vorhanden
scanId string Ja
findingIds list of string Ja
saved boolean Ja
markdown string Ja
nextCursor string or null Ja
complete boolean Ja
webUrl string Ja

GET /agent/scans/{scanId}/comparison

Was sich zwischen einem Scan und dem Scan geändert hat, den er erneut prüft.

  • Berechtigung: read
  • MCP-Werkzeug: lockpick_compare_scans
  • Senden Sie x-lockpick-agent-features: finding-code, um den code jedes Befunds zu erhalten (LP- und sechs Zeichen, wie ihn der Web-Bericht zeigt). Ohne den Header enthält die Antwort keinen code, die Form, die ältere Clients erwarten.

data

Feld Typ Immer vorhanden
runId string Ja
baselineRunId string Ja
error string or null Ja
changes list of object Ja
webUrl string Ja

POST /agent/scans/{scanId}/dns-rechecks

Die kostenlose DNS-Prüfung für einen Scan erneut ausführen. Es wird nichts an die Website gesendet.

Anfragetext

Feld Typ Pflicht
findingId string Ja
idempotencyKey string Ja

data

Feld Typ Immer vorhanden
scanId string Ja
findingIds list of string Ja
pending object or null Ja
checkedAt string or null Ja
outcomes list of object Ja
nextAllowedAt string or null Ja
failedAt string or null Ja
originalGradeUnchanged boolean Ja

GET /agent/scans/{scanId}/dns-rechecks/latest

Die letzte kostenlose erneute DNS-Prüfung eines Scans.

data

Feld Typ Immer vorhanden
scanId string Ja
findingIds list of string Ja
pending object or null Ja
checkedAt string or null Ja
outcomes list of object Ja
nextAllowedAt string or null Ja
failedAt string or null Ja
originalGradeUnchanged boolean Ja

POST /agent/scans/{scanId}/deep-rechecks

Diese Korrektur prüfen: nur erneut lesen, wo ein Deep-Befund gesehen wurde. Kostenlos, täglich begrenzt.

Anfragetext

Feld Typ Pflicht
findingId string Ja
idempotencyKey string Ja

data

Feld Typ Immer vorhanden
scanId string Ja
findingId string Ja
pending object or null Ja
latest object or null Ja
failedAt string or null Ja
remainingToday integer Ja
workspaceRemainingToday integer Ja
webUrl string Ja
originalGradeUnchanged boolean Ja

GET /agent/scans/{scanId}/deep-rechecks/{findingId}

Das neueste „Diese Korrektur prüfen“ eines Deep-Befunds.

data

Feld Typ Immer vorhanden
scanId string Ja
findingId string Ja
pending object or null Ja
latest object or null Ja
failedAt string or null Ja
remainingToday integer Ja
workspaceRemainingToday integer Ja
webUrl string Ja
originalGradeUnchanged boolean Ja

POST /agent/quick-checks

Einen kostenlosen Schnellcheck einer Startseite starten.

Anfragetext

Feld Typ Pflicht
url string Ja
idempotencyKey string Ja

data

Feld Typ Immer vorhanden
checkId string Ja
status queued, running, succeeded, failed Ja
reused boolean Ja
headline object Ja
summary string or null Ja
checks list of object Ja
webUrl string Ja
suggestedPollAfterSeconds integer or null Ja

POST /agent/repository-checks

Prüfen Sie ein öffentliches GitHub-Repository (einen Skill, ein Plugin, einen MCP-Server oder eine App), bevor Sie es installieren.

Anfragetext

Feld Typ Pflicht
url string Ja
mode skill, app Nein
depth free, deep Nein
idempotencyKey string Ja

data

Feld Typ Immer vorhanden
checkId string Ja
status queued, running, succeeded, failed Ja
reused boolean Ja
repository object Ja
mode skill, app or null Ja
kind string or null Ja
verdict safe, caution, do_not_install or null Ja
appRisk low, elevated, high or null Ja
score integer or null Ja
summary string or null Ja
plainSummary string or null Ja
findings list of object Ja
moreFindings integer Ja
coverage object or null Ja
failure not-found, ref-not-found, empty, too-large, rate-limited, unavailable, timeout, engine-error or null Ja
webUrl string Ja
suggestedPollAfterSeconds integer or null Ja

GET /agent/repository-checks/{checkId}

Eine Repository-Prüfung und ihre Befunde.

data

Feld Typ Immer vorhanden
checkId string Ja
status queued, running, succeeded, failed Ja
reused boolean Ja
repository object Ja
mode skill, app or null Ja
kind string or null Ja
verdict safe, caution, do_not_install or null Ja
appRisk low, elevated, high or null Ja
score integer or null Ja
summary string or null Ja
plainSummary string or null Ja
findings list of object Ja
moreFindings integer Ja
coverage object or null Ja
failure not-found, ref-not-found, empty, too-large, rate-limited, unavailable, timeout, engine-error or null Ja
webUrl string Ja
suggestedPollAfterSeconds integer or null Ja

GET /agent/quick-checks/{checkId}

Ein Schnellcheck und sein Ergebnis.

data

Feld Typ Immer vorhanden
checkId string Ja
status queued, running, succeeded, failed Ja
reused boolean Ja
headline object Ja
summary string or null Ja
checks list of object Ja
webUrl string Ja
suggestedPollAfterSeconds integer or null Ja

GET /agent/docs/search

Die öffentliche Dokumentation von Lockpick durchsuchen.

Abfrageparameter

Feld Typ Pflicht
query string Ja
limit integer Nein

data

Feld Typ Immer vorhanden
query string Ja
results list of object Ja

GET /agent/docs/page

Eine öffentliche Dokumentationsseite als Markdown, bei langen Seiten in Teilen.

Abfrageparameter

Feld Typ Pflicht
path string Nein
cursor string Nein

data

Feld Typ Immer vorhanden
path string Ja
title string Ja
description string or null Ja
url string Ja
markdownUrl string Ja
markdown string Ja
nextCursor string or null Ja
complete boolean Ja

Geräteanmeldung

So bekommt lockpick login einen Schlüssel: Es fragt nach einem Code, die Person bestätigt ihn im Browser, und das Abfragen liefert den Schlüssel zurück.

POST /device/code

Eine Geräteanmeldung starten und einen Code erhalten, den die Person im Browser bestätigt.

  • Berechtigung: keine, Teil der Anmeldung

Anfragetext

Feld Typ Pflicht
clientName string Nein
hostname string Nein
platform string Nein
version string Nein
scopes list of pulse, sites, deep, local Nein

data

Feld Typ Immer vorhanden
deviceCode string Ja
userCode string Ja
verificationUri string Ja
verificationUriComplete string Ja
expiresIn integer Ja
interval integer Ja

POST /device/token

Die Geräteanmeldung abfragen, bis die Person sie bestätigt, und dann den Schlüssel erhalten.

  • Berechtigung: keine, Teil der Anmeldung

Anfragetext

Feld Typ Pflicht
deviceCode string Ja

Veraltet

Die ursprünglichen CLI-Routen, die CLI 0.2 nutzt. Sie bleiben unverändert. Neue Integrationen sollten die oben beschriebene Agent-API nutzen.

Ursprüngliche CLI-Routen

GET /projects/{projectId}/dismissals

Verwalten Sie akzeptierte Befunde und Begründungen dieses Projekts. Rückgängig aktiviert einen Befund wieder; geänderte Evidenz oder Prüfregeln erfordern eine Überprüfung. Lokale Prüfungen behalten Code und Bericht auf Ihrem Rechner. Eine Online-Autorisierung bleibt erforderlich.

  • Berechtigung: read

data

Feld Typ Immer vorhanden
version Zahl Ja
projectId string Ja
dismissals Liste von Objekten Ja

POST /projects/{projectId}/dismissals

Verwalten Sie akzeptierte Befunde und Begründungen dieses Projekts. Rückgängig aktiviert einen Befund wieder; geänderte Evidenz oder Prüfregeln erfordern eine Überprüfung. Lokale Prüfungen behalten Code und Bericht auf Ihrem Rechner. Eine Online-Autorisierung bleibt erforderlich.

  • Berechtigung: sites

Anfragetext

Feld Typ Pflicht
version Zahl Ja
projectId string Ja
dismissals Liste von Objekten Ja

data

Feld Typ Immer vorhanden
imported Ganzzahl Ja

POST /projects/{projectId}/local-assessments/authorize

Eine lokale Prüfung vor der Untersuchung des Repositorys autorisieren. Quellcode und Ergebnisse werden nicht hochgeladen.

  • Berechtigung: local

Anfragetext

Feld Typ Pflicht
cliVersion string Ja
scannerVersion string Ja
rulesetVersion string Ja
reportSchemaVersion string Ja
checks list of tracked-secrets, public-environment, browser-artifacts, supabase-client, supabase-migrations, git-history, docker-files, docker-values, actions-injection, source-maps, php-version, actions-policy, compose-policy, hosting-config Ja

data

Feld Typ Immer vorhanden
admissionId string Ja
projectId string Ja
workspaceId string Ja
policyVersion string Ja
startBy string Ja
checks list of object Ja

GET /me

Die Person, der Arbeitsbereich und der Schlüssel hinter diesen Zugangsdaten.

  • Berechtigung: read

data

Feld Typ Immer vorhanden
user object Ja
workspace object Ja
key object Ja

DELETE /me

Widerruft den vorgelegten Schlüssel.

  • Berechtigung: jeder gültige Schlüssel

data

Feld Typ Immer vorhanden
revoked boolean Ja

GET /projects

Websites (Projekte) mit ihren letzten Pulse- und Deep-Scans.

  • Berechtigung: read

Jeder Eintrag in data

Feld Typ Immer vorhanden
id string Ja
name string Ja
status string Ja
baseDomain string or null Ja
latestPulse object or null Ja
latestDeep object or null Nein
latestBox object or null Ja
webPath string Ja
webUrl string Nein

GET /projects/{projectId}/status

Die letzten Ergebnisse einer Website und was sich geändert hat.

  • Berechtigung: read

data

Feld Typ Immer vorhanden
project object Ja
latestPulse object or null Ja
latestDeep object or null Nein
latestBox object or null Ja
lastComparison object or null Ja
fixes object or null Nein
caveats list of string Ja

POST /projects/{projectId}/pulse

Startet einen Pulse-Scan für eine Website oder eine erneute Prüfung ihres letzten Pulse-Scans.

  • Berechtigung: pulse
  • Antwortet mit 201, wenn es funktioniert

Anfragetext

Feld Typ Pflicht
idempotencyKey string Ja

data

Feld Typ Immer vorhanden
id string Ja
kind pulse, box (Deep, alter Name) Ja
projectId string Ja
target string Ja
status queued, running, cancelling, succeeded, incomplete, failed, cancelled Ja
mode autonomous, authenticated, active or null Ja
createdAt string or null Ja
finishedAt string or null Ja
webPath string Ja
assessmentLevel pulse, standard, deep or null Nein
headline object Nein
webUrl string Nein
suggestedPollAfterSeconds integer or null Nein
dismissals Objekt Nein
baselineRunId string or null Ja
open object Ja
findingCount integer Ja
progress object or null Ja
coverage object Ja
caveats list of string Ja
outcome object or null Nein
exposureCheck object or null Nein
coverageReceipt object or null Nein

POST /projects/{projectId}/deep

Startet den Deep-Scan eines Releases mit einem CI-Schlüssel, der für diese Website erstellt wurde und Deep erlaubt.

  • Berechtigung: deep
  • Antwortet mit 201, wenn es funktioniert

Anfragetext

Feld Typ Pflicht
idempotencyKey string Ja

data

Feld Typ Immer vorhanden
id string Ja
kind pulse, box (Deep, alter Name) Ja
projectId string Ja
target string Ja
status queued, running, cancelling, succeeded, incomplete, failed, cancelled Ja
mode autonomous, authenticated, active or null Ja
createdAt string or null Ja
finishedAt string or null Ja
webPath string Ja
assessmentLevel pulse, standard, deep or null Nein
headline object Nein
webUrl string Nein
suggestedPollAfterSeconds integer or null Nein
dismissals Objekt Nein
baselineRunId string or null Ja
open object Ja
findingCount integer Ja
progress object or null Ja
coverage object Ja
caveats list of string Ja
outcome object or null Nein
exposureCheck object or null Nein
coverageReceipt object or null Nein

GET /runs

Pulse- und Deep-Scans, neueste zuerst.

  • Berechtigung: read

Abfrageparameter

Feld Typ Pflicht
projectId string Nein
kind pulse, box (Deep, alter Name) Nein
assessmentLevel pulse, standard, deep Nein
status queued, running, cancelling, succeeded, incomplete, failed, cancelled Nein
limit integer Nein

Jeder Eintrag in data

Feld Typ Immer vorhanden
id string Ja
kind pulse, box (Deep, alter Name) Ja
projectId string Ja
target string Ja
status queued, running, cancelling, succeeded, incomplete, failed, cancelled Ja
mode autonomous, authenticated, active or null Ja
createdAt string or null Ja
finishedAt string or null Ja
webPath string Ja
assessmentLevel pulse, standard, deep or null Nein
headline object Nein
webUrl string Nein
suggestedPollAfterSeconds integer or null Nein

GET /runs/{runId}

Ein Lauf mit seiner Zusammenfassung und seinen Zählwerten.

  • Berechtigung: read

data

Feld Typ Immer vorhanden
id string Ja
kind pulse, box (Deep, alter Name) Ja
projectId string Ja
target string Ja
status queued, running, cancelling, succeeded, incomplete, failed, cancelled Ja
mode autonomous, authenticated, active or null Ja
createdAt string or null Ja
finishedAt string or null Ja
webPath string Ja
assessmentLevel pulse, standard, deep or null Nein
headline object Nein
webUrl string Nein
suggestedPollAfterSeconds integer or null Nein
dismissals Objekt Nein
baselineRunId string or null Ja
open object Ja
findingCount integer Ja
progress object or null Ja
coverage object Ja
caveats list of string Ja
outcome object or null Nein
exposureCheck object or null Nein
coverageReceipt object or null Nein

GET /runs/{runId}/findings

Befunde eines Laufs.

  • Berechtigung: read

Abfrageparameter

Feld Typ Pflicht
severity critical, high, medium, low, info Nein
state attention, information, unknown, pass Nein
all true, false Nein

Jeder Eintrag in data

Feld Typ Immer vorhanden
dismissal Objekt Nein
id string Ja
code string Nein
runId string Ja
kind pulse, box (Deep, alter Name) Ja
severity critical, high, medium, low, info Ja
state attention, information, unknown, pass Ja
category string Ja
title string Ja
meaning string Ja
fix string or null Ja
confidence string Ja
evidence list of string Ja
sources list of string Ja
steps list of string Ja
webPath string Ja
webUrl string Nein
verdict confirmed, needs_review, not_actionable or null Nein
certainty high, medium, low or null Nein
exploitability direct, conditional, hygiene, none or null Nein
proof object or null Nein
proofGap string or null Nein
urgency now, week, later, none Nein
howSure confirmed, likely, possible or null Nein
lifecycle object or null Nein

GET /runs/{runId}/findings/{findingId}

Ein Befund mit seinen geschwärzten Nachweisen.

  • Berechtigung: read

data

Feld Typ Immer vorhanden
dismissal Objekt Nein
id string Ja
code string Nein
runId string Ja
kind pulse, box (Deep, alter Name) Ja
severity critical, high, medium, low, info Ja
state attention, information, unknown, pass Ja
category string Ja
title string Ja
meaning string Ja
fix string or null Ja
confidence string Ja
evidence list of string Ja
sources list of string Ja
steps list of string Ja
webPath string Ja
webUrl string Nein
verdict confirmed, needs_review, not_actionable or null Nein
certainty high, medium, low or null Nein
exploitability direct, conditional, hygiene, none or null Nein
proof object or null Nein
proofGap string or null Nein
urgency now, week, later, none Nein
howSure confirmed, likely, possible or null Nein
lifecycle object or null Nein

GET /runs/{runId}/repair-brief

Die Korrekturen eines Laufs als eine Markdown-Anleitung.

  • Berechtigung: read

Abfrageparameter

Feld Typ Pflicht
findingId string Nein
agent claude-code, codex, cursor, vscode, opencode, lovable, bolt, replit, v0 Nein

data

Feld Typ Immer vorhanden
runId string Ja
findingIds list of string Ja
saved boolean Ja
markdown string Ja
webUrl string Nein

GET /runs/{runId}/comparison

Was sich zwischen einem Lauf und dem vorherigen geändert hat.

  • Berechtigung: read

data

Feld Typ Immer vorhanden
runId string Ja
baselineRunId string Ja
error string or null Ja
changes list of object Ja
webUrl string Nein

GET /runs/{runId}/export

Die Ergebnisse eines Scans als PDF, in einfachen Worten oder technisch, base64-kodiert.

  • Berechtigung: read

Abfrageparameter

Feld Typ Pflicht
dialect plain, technical Ja

data

Feld Typ Immer vorhanden
filename string Ja
mimeType string Ja
base64 string Ja

War das hilfreich?