Saltar al contenido Lockpick

Cada operación de la API de Lockpick, su permiso, sus entradas y su respuesta, generados desde la propia API. Versión 1, en beta.

Versión 1, en beta. Cada ruta empieza con /api/cli/v1, cada solicitud lleva una clave como token bearer, y cada respuesta es { data, error }. Toda la descripción también está en OpenAPI 3.1.

API de agentes

Las operaciones del servidor detrás de las herramientas MCP alojadas. Las nuevas integraciones deberían usar estas. lockpick_wait_for_scan consulta GET /agent/scans/{scanId}; lockpick_evaluate_scan lee ese mismo escaneo y aplica la política de evaluación en el cliente. Estas dos herramientas compuestas no tienen un endpoint HTTP propio. Los scripts pueden consultar el estado del escaneo y evaluar su hora de finalización, cobertura y número de hallazgos abiertos según su política.

GET /agent/me

La persona, el espacio de trabajo, los ámbitos y la caducidad de esta credencial, y lo que puede iniciar.

data

Campo Tipo Siempre presente
user objeto Sí
workspace objeto Sí
credential objeto Sí
capabilities objeto Sí

GET /agent/allowance

Escaneos gratuitos que quedan este mes, sus fechas de reinicio y créditos.

data

Campo Tipo Siempre presente
accessSource community, stripe (valor de facturación heredado), pilot (heredado, interno), none Sí
accountingMode pilot (heredado, interno), credits (heredado, interno), unmetered Sí
pulse objeto Sí
deep objeto Sí
creditBalance entero o null Sí
freeSiteId cadena o null Sí
freeSiteVisible booleano Sí
canSwitchFreeSite booleano Sí

GET /agent/monitor

Explora la inteligencia de seguridad actual y explica las coincidencias de los sitios autorizados.

Consulta

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

data

Campo Tipo Siempre presente
items lista de objetos Sí
nextCursor cadena o null Sí
limitations lista de cadenas Sí

Cada elemento

Campo Tipo Siempre presente
id cadena Sí
title cadena Sí
source cadena Sí
kind vulnerability, malicious_package Sí
severity critical, high, medium, low, unknown Sí
provenance lista de objetos Sí
withdrawnAt cadena o null No
publishedAt cadena Sí
exploited booleano Sí
ids lista de cadenas Sí
tech lista de objetos Sí
epss objeto o null No
cvss objeto o null No
attribution cadena o null Sí
references lista de cadenas Sí
packages lista de objetos Yes
sites lista de objetos Sí

GET /agent/sites

Una página de sitios con sus últimos escaneos.

Consulta

Campo Tipo Obligatorio
limit integer No
cursor string No

data

Campo Tipo Siempre presente
items lista de objetos Sí
nextCursor cadena o null Sí

Cada elemento

Campo Tipo Siempre presente
id cadena Sí
name cadena Sí
status cadena Sí
baseDomain cadena o null Sí
latestPulse objeto o null Sí
latestDeep objeto o null Sí
latestBox objeto o null Sí
webPath cadena Sí
webUrl cadena Sí

POST /agent/sites

Añade un sitio, o devuelve el que tiene esa dirección.

Cuerpo

Campo Tipo Obligatorio
url string Sí
name string No
idempotencyKey string Sí

data

Campo Tipo Siempre presente
site objeto Sí
created booleano Sí

GET /agent/sites/{siteId}/status

El estado de un sitio: sus últimos escaneos y qué hacer después.

data

Campo Tipo Siempre presente
site objeto Sí
latestPulse objeto o null Sí
latestDeep objeto o null Sí
latestBox objeto o null Sí
lastComparison objeto o null Sí
caveats lista de cadenas Sí
fixes objeto o null No
relevant lista de objetos No
relevantTotal entero No

GET /agent/sites/{siteId}/history

El historial de seguridad de un sitio: la evolución de la puntuación de cada profundidad de escaneo, cortada donde cambió el motor, los hallazgos abiertos a lo largo del tiempo, las correcciones, las regresiones y el tiempo mediano hasta la corrección.

data

Campo Tipo Siempre presente
siteId string Sí
scores lista de objetos Sí
findings objeto Sí

POST /agent/sites/{siteId}/dependencies

Envía los nombres y las versiones exactas de los paquetes que fija un sitio, nunca código, y consulta qué avisos los afectan.

Cuerpo

Campo Tipo Obligatorio
inventory object No
packages lista de objetos Yes
sources lista de 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 Sí
idempotencyKey string Sí

data

Campo Tipo Siempre presente
siteId string Sí
receivedAt cadena o null Sí
sources lista de 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 Sí
packageCount entero Sí
affectsYouCount entero Sí
affectsYou lista de objetos Sí
webUrl cadena Sí

GET /agent/sites/{siteId}/github

El vínculo de GitHub de un sitio: el repositorio, la rama y el archivo de bloqueo, la última lectura, el comentario en pull requests y si la lista de GitHub de quien llama está vigente.

data

Campo Tipo Siempre presente
siteId string Sí
available booleano Sí
canManage booleano Sí
linked objeto o null Sí
lastRead objeto o null Sí
pullRequestComments objeto o null Sí
authorization objeto Sí
webUrl cadena Sí

GET /agent/github/repositories

Los repositorios de la lista de GitHub propia de quien llama en este espacio de trabajo, los únicos que puede vincular.

Consulta

Campo Tipo Obligatorio
search cadena No
limit integer No

data

Campo Tipo Siempre presente
authorization objeto Sí
items lista de objetos Sí
matched entero Sí
truncated booleano Sí

Cada elemento

Campo Tipo Siempre presente
repository cadena Sí
defaultBranch cadena Sí
private booleano Sí

POST /agent/sites/{siteId}/github

Vincula un sitio a un repositorio de la lista de GitHub propia de quien llama, u obtiene la página donde la persona lo aprueba.

Cuerpo

Campo Tipo Obligatorio
repository cadena Sí
ref cadena No
lockfiles cadena o lista de cadenas No
pullRequestComments on, off No

En qué punto está un vínculo de GitHub que espera a la persona.

data

Campo Tipo Siempre presente
requestId cadena Sí
siteId string Sí
repository cadena Sí
state pending, authorizing, linked, not_reachable, declined, failed, expired Sí
expiresAt cadena Sí
link objeto o null Sí

DELETE /agent/sites/{siteId}/github

Desvincula el repositorio de GitHub de un sitio y olvida la lectura de su archivo de bloqueo.

data

Campo Tipo Siempre presente
siteId string Sí
unlinked booleano Sí

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

Activa o desactiva el comentario de seguridad de Deep en las pull requests del repositorio vinculado a un sitio.

Cuerpo

Campo Tipo Obligatorio
enabled booleano Sí

data

Campo Tipo Siempre presente
siteId string Sí
available booleano Sí
canManage booleano Sí
linked objeto o null Sí
lastRead objeto o null Sí
pullRequestComments objeto o null Sí
authorization objeto Sí
webUrl cadena Sí

GET /agent/sites/{siteId}/schedules

Las comprobaciones automáticas Pulse y Deep de un sitio y las frecuencias que permite su plan.

data

Campo Tipo Siempre presente
siteId string Sí
enabled booleano Sí
allowed objeto Sí
pulse objeto o null Sí
deep objeto o null Sí
webUrl cadena Sí

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

Configura, cambia o reanuda la comprobación automática Pulse de un sitio dentro de las frecuencias del plan.

Cuerpo

Campo Tipo Obligatorio
cadence daily, weekly, monthly No
runHourUtc entero o null No

data

Campo Tipo Siempre presente
scheduleId cadena Sí
siteId string Sí
depth pulse, deep Sí
status active, paused, archived Sí
cadence daily, weekly, monthly Sí
runHourUtc entero o null Sí
nextRunAt cadena Sí
consentUntil cadena Sí
lastOutcome cadena o null Sí

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

Pausa la comprobación automática Pulse de un sitio.

data

Campo Tipo Siempre presente
scheduleId cadena Sí
siteId string Sí
depth pulse, deep Sí
status active, paused, archived Sí
cadence daily, weekly, monthly Sí
runHourUtc entero o null Sí
nextRunAt cadena Sí
consentUntil cadena Sí
lastOutcome cadena o null Sí

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

Prepara la configuración, el cambio o la reanudación de la comprobación automática Deep de un sitio, y obtiene el enlace donde la persona la aprueba.

Cuerpo

Campo Tipo Obligatorio
cadence daily, weekly, monthly No
runHourUtc entero o null No

data

Campo Tipo Siempre presente
requestId cadena Sí
siteId string Sí
depth cadena Sí
cadence daily, weekly, monthly Sí
runHourUtc entero o null Sí
approvalUrl cadena Sí
expiresAt cadena Sí
pollAfterSeconds entero Sí

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

Pausa la comprobación automática Deep de un sitio.

data

Campo Tipo Siempre presente
scheduleId cadena Sí
siteId string Sí
depth pulse, deep Sí
status active, paused, archived Sí
cadence daily, weekly, monthly Sí
runHourUtc entero o null Sí
nextRunAt cadena Sí
consentUntil cadena Sí
lastOutcome cadena o null Sí

GET /agent/schedule-requests/{requestId}

En qué punto está una comprobación automática Deep que espera a la persona.

data

Campo Tipo Siempre presente
requestId cadena Sí
siteId string Sí
depth cadena Sí
cadence daily, weekly, monthly Sí
runHourUtc entero o null Sí
state pending, approved, declined, failed, expired Sí
expiresAt cadena Sí
failure cadena o null Sí
schedule objeto o null Sí

GET /agent/sites/{siteId}/shares

Los resultados Pulse de un sitio que tienen un enlace público para compartir activo.

data

Campo Tipo Siempre presente
siteId string Sí
shares lista de objetos Sí

POST /agent/scans/{scanId}/share

Publica un resultado Pulse completado en un enlace público, o reemplaza su enlace.

Cuerpo

Campo Tipo Obligatorio
replace booleano No

data

Campo Tipo Siempre presente
scanId string Sí
url cadena o null Sí
createdAt cadena Sí

DELETE /agent/scans/{scanId}/share

Deja de compartir un resultado Pulse; su enlace público deja de funcionar.

data

Campo Tipo Siempre presente
scanId string Sí
unshared booleano Sí

POST /agent/sites/{siteId}/pulse

Inicia un Pulse en un sitio.

Cuerpo

Campo Tipo Obligatorio
idempotencyKey string Sí
baselineScanId string No

data

Campo Tipo Siempre presente
scan objeto Sí
charged objeto Sí
allowance objeto Sí
replayed booleano Sí

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

Emite una prueba de propiedad por DNS o por archivo antes de un escaneo Deep.

Cuerpo

Campo Tipo Obligatorio
method dns, file, meta Sí
idempotencyKey string Sí

data

Campo Tipo Siempre presente
verificationId string Sí
siteId string Sí
origin cadena Sí
method dns, file, meta Sí
state pending, verified, expired, exhausted, revoked Sí
expiresAt cadena Sí
verifiedUntil cadena o null Sí
attemptsRemaining entero Sí
retryAfterSeconds entero o null Sí
value cadena Sí
location cadena Sí

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

Comprueba una prueba de propiedad publicada. Cada comprobación usa uno de sus intentos.

data

Campo Tipo Siempre presente
verificationId string Sí
siteId string Sí
origin cadena Sí
method dns, file, meta Sí
state pending, verified, expired, exhausted, revoked Sí
expiresAt cadena Sí
verifiedUntil cadena o null Sí
attemptsRemaining entero Sí
retryAfterSeconds entero o null Sí

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

Prepara un escaneo Deep y obtiene el enlace donde la persona lo aprueba.

Cuerpo

Campo Tipo Obligatorio
verificationId string Sí
idempotencyKey string Sí

data

Campo Tipo Siempre presente
operationId string Sí
siteId string Sí
origin cadena Sí
assessmentLevel cadena Sí
verificationId string Sí
cost objeto Sí
allowance objeto Sí
approvalState pending, approved, expired, denied Sí
approvalUrl cadena Sí
expiresAt cadena Sí

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

Inicia un escaneo Deep que la persona aprobó.

data

Campo Tipo Siempre presente
scan objeto Sí
charged objeto Sí
allowance objeto Sí
replayed booleano Sí

POST /agent/free-site-switch

Elimina un sitio para que el Pulse gratuito de este mes pase a otro.

Cuerpo

Campo Tipo Obligatorio
removeSiteId string Sí
checkId string No
idempotencyKey string Sí
confirmRemoval boolean Sí

data

Campo Tipo Siempre presente
removedSiteId cadena Sí
removedSiteHost cadena Sí
replacementSiteId cadena o null Sí
allowance objeto Sí
restoreUrl cadena Sí
startedScanId cadena o null Sí
charged objeto Sí
replayed booleano Sí

GET /agent/scans

Una página de escaneos, del más reciente al más antiguo, con filtros.

Consulta

Campo Tipo Obligatorio
siteId string No
kind pulse, box (Deep, nombre heredado) No
assessmentLevel pulse, standard, deep No
status queued, running, cancelling, succeeded, incomplete, failed, cancelled No
limit integer No
cursor string No

data

Campo Tipo Siempre presente
items lista de objetos Sí
nextCursor cadena o null Sí

Cada elemento

Campo Tipo Siempre presente
id cadena Sí
kind pulse, box (Deep, nombre heredado) Sí
projectId cadena Sí
target cadena Sí
status queued, running, cancelling, succeeded, incomplete, failed, cancelled Sí
mode autonomous, authenticated, active o null Sí
createdAt cadena o null Sí
finishedAt cadena o null Sí
webPath cadena Sí
assessmentLevel pulse, standard, deep o null Sí
headline objeto Sí
webUrl cadena Sí
suggestedPollAfterSeconds entero o null Sí

GET /agent/scans/{scanId}

Un escaneo con su estado y su resumen.

data

Campo Tipo Siempre presente
id cadena Sí
kind pulse, box (Deep, nombre heredado) Sí
projectId cadena Sí
target cadena Sí
status queued, running, cancelling, succeeded, incomplete, failed, cancelled Sí
mode autonomous, authenticated, active o null Sí
createdAt cadena o null Sí
finishedAt cadena o null Sí
webPath cadena Sí
assessmentLevel pulse, standard, deep o null Sí
headline objeto Sí
webUrl cadena Sí
suggestedPollAfterSeconds entero o null Sí
docsUrl cadena No
dismissals objeto No
baselineRunId cadena o null Sí
open objeto Sí
findingCount entero Sí
progress objeto o null Sí
coverage objeto Sí
caveats lista de cadenas Sí
outcome objeto o null Sí
exposureCheck objeto No
coverageReceipt objeto No

GET /agent/scans/{scanId}/findings

Una página de hallazgos de un escaneo.

  • Permiso: read
  • Herramienta MCP: lockpick_list_findings
  • Envía x-lockpick-agent-features: finding-code para recibir el code de cada hallazgo (LP- y seis caracteres, como lo muestra el informe web). Sin el encabezado, la respuesta no incluye code, la forma que esperan los clientes antiguos.

Consulta

Campo Tipo Obligatorio
state attention, information, unknown, pass No
severity critical, high, medium, low, info No
all booleano o true, false No
limit integer No
cursor string No

data

Campo Tipo Siempre presente
items lista de objetos Sí
nextCursor cadena o null Sí

Cada elemento

Campo Tipo Siempre presente
dismissal objeto No
id cadena Sí
code string No
runId cadena Sí
kind pulse, box (Deep, nombre heredado) Sí
severity critical, high, medium, low, info Sí
state attention, information, unknown, pass Sí
category cadena Sí
title cadena Sí
meaning cadena Sí
fix cadena o null Sí
confidence cadena Sí
evidence lista de cadenas Sí
sources lista de string Yes
steps lista de cadenas Sí
webPath cadena Sí
webUrl cadena Sí
evidenceTrust cadena Sí
evidenceTruncated booleano Sí
verdict confirmed, needs_review, not_actionable o null No
certainty high, medium, low o null No
exploitability direct, conditional, hygiene, none o null No
proof objeto o null No
proofGap cadena o null No
urgency now, week, later, none No
howSure confirmed, likely, possible o null No
lifecycle objeto o null No

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

Un hallazgo con su evidencia anonimizada.

  • Permiso: read
  • Herramienta MCP: lockpick_get_finding
  • Envía x-lockpick-agent-features: finding-code para recibir el code de cada hallazgo (LP- y seis caracteres, como lo muestra el informe web). Sin el encabezado, la respuesta no incluye code, la forma que esperan los clientes antiguos.

data

Campo Tipo Siempre presente
dismissal objeto No
id cadena Sí
code string No
runId cadena Sí
kind pulse, box (Deep, nombre heredado) Sí
severity critical, high, medium, low, info Sí
state attention, information, unknown, pass Sí
category cadena Sí
title cadena Sí
meaning cadena Sí
fix cadena o null Sí
confidence cadena Sí
evidence lista de cadenas Sí
sources lista de string Yes
steps lista de cadenas Sí
webPath cadena Sí
webUrl cadena Sí
evidenceTrust cadena Sí
evidenceTruncated booleano Sí
verdict confirmed, needs_review, not_actionable o null No
certainty high, medium, low o null No
exploitability direct, conditional, hygiene, none o null No
proof objeto o null No
proofGap cadena o null No
urgency now, week, later, none No
howSure confirmed, likely, possible o null No
lifecycle objeto o null No

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

Una parte del resumen de corrección de un escaneo.

Consulta

Campo Tipo Obligatorio
findingId string No
agent claude-code, codex, cursor, vscode, opencode, lovable, bolt, replit, v0 No
cursor string No

data

Campo Tipo Siempre presente
scanId string Sí
findingIds lista de cadenas Sí
saved booleano Sí
markdown cadena Sí
nextCursor cadena o null Sí
complete booleano Sí
webUrl cadena Sí

GET /agent/scans/{scanId}/comparison

Qué cambió entre un escaneo y el que vuelve a revisar.

  • Permiso: read
  • Herramienta MCP: lockpick_compare_scans
  • Envía x-lockpick-agent-features: finding-code para recibir el code de cada hallazgo (LP- y seis caracteres, como lo muestra el informe web). Sin el encabezado, la respuesta no incluye code, la forma que esperan los clientes antiguos.

data

Campo Tipo Siempre presente
runId cadena Sí
baselineRunId cadena Sí
error cadena o null Sí
changes lista de objetos Sí
webUrl cadena Sí

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

Vuelve a ejecutar la comprobación DNS gratuita de un escaneo. No envía nada al sitio.

Cuerpo

Campo Tipo Obligatorio
findingId string Sí
idempotencyKey string Sí

data

Campo Tipo Siempre presente
scanId string Sí
findingIds lista de cadenas Sí
pending objeto o null Sí
checkedAt cadena o null Sí
outcomes lista de objetos Sí
nextAllowedAt cadena o null Sí
failedAt cadena o null Sí
originalGradeUnchanged booleano Sí

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

La última comprobación DNS de un escaneo.

data

Campo Tipo Siempre presente
scanId string Sí
findingIds lista de cadenas Sí
pending objeto o null Sí
checkedAt cadena o null Sí
outcomes lista de objetos Sí
nextAllowedAt cadena o null Sí
failedAt cadena o null Sí
originalGradeUnchanged booleano Sí

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

Comprobar esta corrección: volver a leer solo dónde se vio un hallazgo Deep. Gratis, con límite diario.

Cuerpo

Campo Tipo Obligatorio
findingId string Sí
idempotencyKey string Sí

data

Campo Tipo Siempre presente
scanId string Sí
findingId string Sí
pending objeto o null Sí
latest objeto o null Sí
failedAt cadena o null Sí
remainingToday entero Sí
workspaceRemainingToday entero Sí
webUrl cadena Sí
originalGradeUnchanged booleano Sí

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

La última Comprobar esta corrección de un hallazgo Deep.

data

Campo Tipo Siempre presente
scanId string Sí
findingId string Sí
pending objeto o null Sí
latest objeto o null Sí
failedAt cadena o null Sí
remainingToday entero Sí
workspaceRemainingToday entero Sí
webUrl cadena Sí
originalGradeUnchanged booleano Sí

POST /agent/quick-checks

Inicia una comprobación rápida gratuita de una página de inicio.

Cuerpo

Campo Tipo Obligatorio
url string Sí
idempotencyKey string Sí

data

Campo Tipo Siempre presente
checkId string Sí
status queued, running, succeeded, failed Sí
reused booleano Sí
headline objeto Sí
summary cadena o null Sí
checks lista de objetos Sí
webUrl cadena Sí
suggestedPollAfterSeconds entero o null Sí

POST /agent/repository-checks

Comprueba un repositorio público de GitHub (una skill, un plugin, un servidor MCP o una app) antes de instalarlo.

Cuerpo

Campo Tipo Obligatorio
url string Sí
mode skill, app No
depth free, deep No
idempotencyKey string Sí

data

Campo Tipo Siempre presente
checkId string Sí
status queued, running, succeeded, failed Sí
reused booleano Sí
repository objeto Sí
mode skill, app o null Sí
kind cadena o null Sí
verdict safe, caution, do_not_install o null Sí
appRisk low, elevated, high o null Sí
score entero o null Sí
summary cadena o null Sí
plainSummary cadena o null Sí
findings lista de objetos Sí
moreFindings entero Sí
coverage objeto o null Sí
failure not-found, ref-not-found, empty, too-large, rate-limited, unavailable, timeout, engine-error o null Sí
webUrl cadena Sí
suggestedPollAfterSeconds entero o null Sí

GET /agent/repository-checks/{checkId}

Una comprobación de repositorio y sus hallazgos.

data

Campo Tipo Siempre presente
checkId string Sí
status queued, running, succeeded, failed Sí
reused booleano Sí
repository objeto Sí
mode skill, app o null Sí
kind cadena o null Sí
verdict safe, caution, do_not_install o null Sí
appRisk low, elevated, high o null Sí
score entero o null Sí
summary cadena o null Sí
plainSummary cadena o null Sí
findings lista de objetos Sí
moreFindings entero Sí
coverage objeto o null Sí
failure not-found, ref-not-found, empty, too-large, rate-limited, unavailable, timeout, engine-error o null Sí
webUrl cadena Sí
suggestedPollAfterSeconds entero o null Sí

GET /agent/quick-checks/{checkId}

Una comprobación rápida y su resultado.

data

Campo Tipo Siempre presente
checkId string Sí
status queued, running, succeeded, failed Sí
reused booleano Sí
headline objeto Sí
summary cadena o null Sí
checks lista de objetos Sí
webUrl cadena Sí
suggestedPollAfterSeconds entero o null Sí

GET /agent/docs/search

Busca en la documentación pública de Lockpick.

Consulta

Campo Tipo Obligatorio
query string Sí
limit integer No

data

Campo Tipo Siempre presente
query string Sí
results lista de objetos Sí

GET /agent/docs/page

Una página pública de la documentación en Markdown, por partes si es larga.

Consulta

Campo Tipo Obligatorio
path string No
cursor string No

data

Campo Tipo Siempre presente
path string Sí
title cadena Sí
description cadena o null Sí
url string Sí
markdownUrl cadena Sí
markdown cadena Sí
nextCursor cadena o null Sí
complete booleano Sí

Inicio de sesión del dispositivo

Cómo lockpick login obtiene una clave: pide un código, la persona lo aprueba en el navegador y el sondeo devuelve la clave.

POST /device/code

Inicia un inicio de sesión del dispositivo y obtiene un código que la persona aprueba en el navegador.

  • Permiso: ninguno, forma parte del inicio de sesión

Cuerpo

Campo Tipo Obligatorio
clientName cadena No
hostname cadena No
platform cadena No
version cadena No
scopes lista de pulse, sites, deep, local No

data

Campo Tipo Siempre presente
deviceCode cadena Sí
userCode cadena Sí
verificationUri cadena Sí
verificationUriComplete cadena Sí
expiresIn entero Sí
interval entero Sí

POST /device/token

Consulta un inicio de sesión del dispositivo hasta que la persona lo apruebe, y luego recibe la clave.

  • Permiso: ninguno, forma parte del inicio de sesión

Cuerpo

Campo Tipo Obligatorio
deviceCode cadena Sí

Heredado

Las rutas originales de la CLI, que usa la CLI 0.2. Se mantienen como están, y las nuevas integraciones deberían usar la API de agentes de arriba.

Rutas originales de la CLI

GET /projects/{projectId}/dismissals

Gestiona los hallazgos aceptados y sus motivos en este proyecto. Deshacer vuelve a activar un hallazgo; los cambios en la evidencia o las reglas requieren revisión. Las auditorías locales mantienen tu código e informe en tu equipo. Sigue siendo necesaria la autorización en línea.

  • Permiso: read

data

Campo Tipo Siempre presente
version número Sí
projectId cadena Sí
dismissals lista de objetos Sí

POST /projects/{projectId}/dismissals

Gestiona los hallazgos aceptados y sus motivos en este proyecto. Deshacer vuelve a activar un hallazgo; los cambios en la evidencia o las reglas requieren revisión. Las auditorías locales mantienen tu código e informe en tu equipo. Sigue siendo necesaria la autorización en línea.

  • Permiso: sites

Cuerpo

Campo Tipo Obligatorio
version número Sí
projectId cadena Sí
dismissals lista de objetos Sí

data

Campo Tipo Siempre presente
imported entero Sí

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

Autorizar una evaluación local antes de inspeccionar el repositorio. No se suben el código fuente ni los resultados.

  • Permiso: local

Cuerpo

Campo Tipo Obligatorio
cliVersion cadena Sí
scannerVersion cadena Sí
rulesetVersion cadena Sí
reportSchemaVersion cadena Sí
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 Sí

data

Campo Tipo Siempre presente
admissionId cadena Sí
projectId cadena Sí
workspaceId cadena Sí
policyVersion cadena Sí
startBy cadena Sí
checks lista de objetos Sí

GET /me

La persona, el espacio de trabajo y la clave detrás de esta credencial.

  • Permiso: read

data

Campo Tipo Siempre presente
user objeto Sí
workspace objeto Sí
key objeto Sí

DELETE /me

Revoca la clave presentada.

  • Permiso: cualquier clave válida

data

Campo Tipo Siempre presente
revoked booleano Sí

GET /projects

Sitios (proyectos) con sus últimos escaneos Pulse y Deep.

  • Permiso: read

Cada elemento de data

Campo Tipo Siempre presente
id cadena Sí
name cadena Sí
status cadena Sí
baseDomain cadena o null Sí
latestPulse objeto o null Sí
latestDeep objeto o null No
latestBox objeto o null Sí
webPath cadena Sí
webUrl cadena No

GET /projects/{projectId}/status

Los últimos resultados de un sitio y lo que cambió.

  • Permiso: read

data

Campo Tipo Siempre presente
project objeto Sí
latestPulse objeto o null Sí
latestDeep objeto o null No
latestBox objeto o null Sí
lastComparison objeto o null Sí
fixes objeto o null No
caveats lista de cadenas Sí

POST /projects/{projectId}/pulse

Inicia un Pulse en un sitio, o una revisión de su último Pulse.

  • Permiso: pulse
  • Responde 201 cuando funciona

Cuerpo

Campo Tipo Obligatorio
idempotencyKey string Sí

data

Campo Tipo Siempre presente
id cadena Sí
kind pulse, box (Deep, nombre heredado) Sí
projectId cadena Sí
target cadena Sí
status queued, running, cancelling, succeeded, incomplete, failed, cancelled Sí
mode autonomous, authenticated, active o null Sí
createdAt cadena o null Sí
finishedAt cadena o null Sí
webPath cadena Sí
assessmentLevel pulse, standard, deep o null No
headline objeto No
webUrl cadena No
suggestedPollAfterSeconds entero o null No
dismissals objeto No
baselineRunId cadena o null Sí
open objeto Sí
findingCount entero Sí
progress objeto o null Sí
coverage objeto Sí
caveats lista de cadenas Sí
outcome objeto o null No
exposureCheck objeto o null No
coverageReceipt objeto o null No

POST /projects/{projectId}/deep

Inicia el escaneo Deep de una versión con una clave de CI creada para este sitio con Deep permitido.

  • Permiso: deep
  • Responde 201 cuando funciona

Cuerpo

Campo Tipo Obligatorio
idempotencyKey string Sí

data

Campo Tipo Siempre presente
id cadena Sí
kind pulse, box (Deep, nombre heredado) Sí
projectId cadena Sí
target cadena Sí
status queued, running, cancelling, succeeded, incomplete, failed, cancelled Sí
mode autonomous, authenticated, active o null Sí
createdAt cadena o null Sí
finishedAt cadena o null Sí
webPath cadena Sí
assessmentLevel pulse, standard, deep o null No
headline objeto No
webUrl cadena No
suggestedPollAfterSeconds entero o null No
dismissals objeto No
baselineRunId cadena o null Sí
open objeto Sí
findingCount entero Sí
progress objeto o null Sí
coverage objeto Sí
caveats lista de cadenas Sí
outcome objeto o null No
exposureCheck objeto o null No
coverageReceipt objeto o null No

GET /runs

Escaneos Pulse y Deep, del más reciente al más antiguo.

  • Permiso: read

Consulta

Campo Tipo Obligatorio
projectId cadena No
kind pulse, box (Deep, nombre heredado) No
assessmentLevel pulse, standard, deep No
status queued, running, cancelling, succeeded, incomplete, failed, cancelled No
limit integer No

Cada elemento de data

Campo Tipo Siempre presente
id cadena Sí
kind pulse, box (Deep, nombre heredado) Sí
projectId cadena Sí
target cadena Sí
status queued, running, cancelling, succeeded, incomplete, failed, cancelled Sí
mode autonomous, authenticated, active o null Sí
createdAt cadena o null Sí
finishedAt cadena o null Sí
webPath cadena Sí
assessmentLevel pulse, standard, deep o null No
headline objeto No
webUrl cadena No
suggestedPollAfterSeconds entero o null No

GET /runs/{runId}

Un escaneo con su resumen y sus recuentos.

  • Permiso: read

data

Campo Tipo Siempre presente
id cadena Sí
kind pulse, box (Deep, nombre heredado) Sí
projectId cadena Sí
target cadena Sí
status queued, running, cancelling, succeeded, incomplete, failed, cancelled Sí
mode autonomous, authenticated, active o null Sí
createdAt cadena o null Sí
finishedAt cadena o null Sí
webPath cadena Sí
assessmentLevel pulse, standard, deep o null No
headline objeto No
webUrl cadena No
suggestedPollAfterSeconds entero o null No
dismissals objeto No
baselineRunId cadena o null Sí
open objeto Sí
findingCount entero Sí
progress objeto o null Sí
coverage objeto Sí
caveats lista de cadenas Sí
outcome objeto o null No
exposureCheck objeto o null No
coverageReceipt objeto o null No

GET /runs/{runId}/findings

Hallazgos de un escaneo.

  • Permiso: read

Consulta

Campo Tipo Obligatorio
severity critical, high, medium, low, info No
state attention, information, unknown, pass No
all true, false No

Cada elemento de data

Campo Tipo Siempre presente
dismissal objeto No
id cadena Sí
code string No
runId cadena Sí
kind pulse, box (Deep, nombre heredado) Sí
severity critical, high, medium, low, info Sí
state attention, information, unknown, pass Sí
category cadena Sí
title cadena Sí
meaning cadena Sí
fix cadena o null Sí
confidence cadena Sí
evidence lista de cadenas Sí
sources lista de string Yes
steps lista de cadenas Sí
webPath cadena Sí
webUrl cadena No
verdict confirmed, needs_review, not_actionable o null No
certainty high, medium, low o null No
exploitability direct, conditional, hygiene, none o null No
proof objeto o null No
proofGap cadena o null No
urgency now, week, later, none No
howSure confirmed, likely, possible o null No
lifecycle objeto o null No

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

Un hallazgo con su evidencia anonimizada.

  • Permiso: read

data

Campo Tipo Siempre presente
dismissal objeto No
id cadena Sí
code string No
runId cadena Sí
kind pulse, box (Deep, nombre heredado) Sí
severity critical, high, medium, low, info Sí
state attention, information, unknown, pass Sí
category cadena Sí
title cadena Sí
meaning cadena Sí
fix cadena o null Sí
confidence cadena Sí
evidence lista de cadenas Sí
sources lista de string Yes
steps lista de cadenas Sí
webPath cadena Sí
webUrl cadena No
verdict confirmed, needs_review, not_actionable o null No
certainty high, medium, low o null No
exploitability direct, conditional, hygiene, none o null No
proof objeto o null No
proofGap cadena o null No
urgency now, week, later, none No
howSure confirmed, likely, possible o null No
lifecycle objeto o null No

GET /runs/{runId}/repair-brief

Las correcciones de un escaneo en un único resumen en Markdown.

  • Permiso: read

Consulta

Campo Tipo Obligatorio
findingId string No
agent claude-code, codex, cursor, vscode, opencode, lovable, bolt, replit, v0 No

data

Campo Tipo Siempre presente
runId cadena Sí
findingIds lista de cadenas Sí
saved booleano Sí
markdown cadena Sí
webUrl cadena No

GET /runs/{runId}/comparison

Qué cambió entre un escaneo y el anterior.

  • Permiso: read

data

Campo Tipo Siempre presente
runId cadena Sí
baselineRunId cadena Sí
error cadena o null Sí
changes lista de objetos Sí
webUrl cadena No

GET /runs/{runId}/export

Los resultados de un escaneo como PDF, en palabras sencillas o técnico, codificado en base64.

  • Permiso: read

Consulta

Campo Tipo Obligatorio
dialect plain, technical Sí

data

Campo Tipo Siempre presente
filename cadena Sí
mimeType cadena Sí
base64 cadena Sí

¿Te ha sido útil?