Referencia
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.
- Permiso:
read - Herramienta MCP:
lockpick_whoami
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.
- Permiso:
read - Herramienta MCP:
lockpick_get_allowance
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.
- Permiso:
read - Herramienta MCP:
lockpick_monitor
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.
- Permiso:
read - Herramienta MCP:
lockpick_list_sites
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.
- Permiso:
sites - Herramienta MCP:
lockpick_add_site
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.
- Permiso:
read - Herramienta MCP:
lockpick_site_status
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.
- Permiso:
read - Herramienta MCP:
lockpick_get_site_history
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.
- Permiso:
sites - Herramienta MCP:
lockpick_send_dependencies
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.
- Permiso:
read - Herramienta MCP:
lockpick_get_github_link
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.
- Permiso:
read - Herramienta MCP:
lockpick_list_github_repositories
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.
- Permiso:
sites - Herramienta MCP:
lockpick_link_github_repository
Cuerpo
| Campo | Tipo | Obligatorio |
|---|---|---|
repository |
cadena | Sí |
ref |
cadena | No |
lockfiles |
cadena o lista de cadenas | No |
pullRequestComments |
on, off |
No |
GET /agent/github/link-requests/{requestId}
En qué punto está un vínculo de GitHub que espera a la persona.
- Permiso:
read - Herramienta MCP:
lockpick_get_github_link_request
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.
- Permiso:
sites - Herramienta MCP:
lockpick_unlink_github_repository
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.
- Permiso:
sites - Herramienta MCP:
lockpick_set_github_pr_comments
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.
- Permiso:
read - Herramienta MCP:
lockpick_get_schedules
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.
- Permiso:
pulse - Herramienta MCP:
lockpick_set_pulse_schedule
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.
- Permiso:
pulse - Herramienta MCP:
lockpick_pause_pulse_schedule
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.
- Permiso:
deep - Herramienta MCP:
lockpick_prepare_deep_schedule
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.
- Permiso:
deep - Herramienta MCP:
lockpick_pause_deep_schedule
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.
- Permiso:
read - Herramienta MCP:
lockpick_get_schedule_request
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.
- Permiso:
read - Herramienta MCP:
lockpick_list_shares
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.
- Permiso:
pulse - Herramienta MCP:
lockpick_share_scan
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.
- Permiso:
pulse - Herramienta MCP:
lockpick_unshare_scan
data
| Campo | Tipo | Siempre presente |
|---|---|---|
scanId |
string | Sí |
unshared |
booleano | Sí |
POST /agent/sites/{siteId}/pulse
Inicia un Pulse en un sitio.
- Permiso:
pulse - Herramienta MCP:
lockpick_start_pulse
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.
- Permiso:
deep - Herramienta MCP:
lockpick_start_deep_verification
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.
- Permiso:
deep - Herramienta MCP:
lockpick_check_deep_verification
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.
- Permiso:
deep - Herramienta MCP:
lockpick_prepare_deep
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ó.
- Permiso:
deep - Herramienta MCP:
lockpick_start_deep
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.
- Permiso:
sitesypulse - Herramienta MCP:
lockpick_switch_free_site
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.
- Permiso:
read - Herramienta MCP:
lockpick_list_scans
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.
- Permiso:
read - Herramienta MCP:
lockpick_get_scan
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-codepara recibir elcodede cada hallazgo (LP-y seis caracteres, como lo muestra el informe web). Sin el encabezado, la respuesta no incluyecode, 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-codepara recibir elcodede cada hallazgo (LP-y seis caracteres, como lo muestra el informe web). Sin el encabezado, la respuesta no incluyecode, 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.
- Permiso:
read - Herramienta MCP:
lockpick_get_repair_brief
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-codepara recibir elcodede cada hallazgo (LP-y seis caracteres, como lo muestra el informe web). Sin el encabezado, la respuesta no incluyecode, 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.
- Permiso:
pulse - Herramienta MCP:
lockpick_recheck_dns
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.
- Permiso:
read - Herramienta MCP:
lockpick_get_dns_recheck
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.
- Permiso:
deep - Herramienta MCP:
lockpick_recheck_finding
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.
- Permiso:
read - Herramienta MCP:
lockpick_get_finding_recheck
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.
- Permiso:
pulse - Herramienta MCP:
lockpick_quick_check
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.
- Permiso:
pulse - Herramienta MCP:
lockpick_check_repository
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.
- Permiso:
read - Herramienta MCP:
lockpick_get_repository_check
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.
- Permiso:
read - Herramienta MCP:
lockpick_get_quick_check
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.
- Permiso:
read - Herramienta MCP:
lockpick_search_docs
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.
- Permiso:
read - Herramienta MCP:
lockpick_read_doc
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?
Gracias. Nos ayuda a mejorar esta página.