본문으로 건너뛰기 Lockpick

모든 Lockpick API 작업, 필요한 권한, 입력과 응답입니다. API 자체에서 생성되었습니다. 버전 1, 베타.

버전 1, 베타입니다. 모든 경로는 /api/cli/v1로 시작하고, 모든 요청은 베어러 토큰으로 키를 함께 보내며, 모든 응답은 { data, error }입니다. 전체 설명은 OpenAPI 3.1로도 제공됩니다.

에이전트 API

호스팅된 MCP 도구 뒤에서 동작하는 서버 작업입니다. 새로운 연동은 이 작업들을 사용해야 합니다. lockpick_wait_for_scan은 GET /agent/scans/{scanId}를 반복해서 확인하고, lockpick_evaluate_scan은 같은 스캔을 읽고 클라이언트에서 평가 정책을 적용합니다. 이 두 조합 도구에는 별도의 HTTP 엔드포인트가 없습니다. 스크립트는 스캔 상태를 반복해서 확인하고, 완료 시각, 검사 범위, 열린 문제 수를 자신의 정책에 비추어 평가할 수 있습니다.

GET /agent/me

이 자격 증명의 사용자, 워크스페이스, 범위, 만료 시각, 그리고 시작할 수 있는 작업입니다.

data

필드 타입 항상 포함
user 객체 예
workspace 객체 예
credential 객체 예
capabilities 객체 예

GET /agent/allowance

이번 달 남은 무료 스캔, 초기화 날짜, 크레딧입니다.

data

필드 타입 항상 포함
accessSource community, stripe(이전 결제 값), pilot(이전, 내부용), none 예
accountingMode pilot(이전, 내부용), credits(이전, 내부용), unmetered 예
pulse 객체 예
deep 객체 예
creditBalance 정수 또는 null 예
freeSiteId 문자열 또는 null 예
freeSiteVisible 불리언 예
canSwitchFreeSite 불리언 예

GET /agent/monitor

승인된 사이트에 대해 현재 보안 정보를 살펴보고 일치 항목을 설명합니다.

쿼리

필드 타입 필수
view latest, sites, exploited, following 아니요
kind all, vulnerability, malicious_package 아니요
q 문자열 아니요
ecosystem all, npm, pypi, composer, go, rubygems, maven, cargo, nuget, pub, hex, swift, wordpress 아니요
severity all, critical, high, medium, low, unknown 아니요
days 숫자 아니요
cursor 문자열 아니요
limit 정수 아니요
siteId 문자열 아니요
advisoryId 문자열 아니요

data

필드 타입 항상 포함
items 객체 목록 예
nextCursor 문자열 또는 null 예
limitations 문자열 목록 예

각 항목

필드 타입 항상 포함
id 문자열 예
title 문자열 예
source 문자열 예
kind vulnerability, malicious_package 예
severity critical, high, medium, low, unknown 예
provenance 객체 목록 예
withdrawnAt 문자열 또는 null 아니요
publishedAt 문자열 예
exploited 불리언 예
ids 문자열 목록 예
tech 객체 목록 예
epss 객체 또는 null 아니요
cvss 객체 또는 null 아니요
attribution 문자열 또는 null 예
references 문자열 목록 예
packages 객체 목록 예
sites 객체 목록 예

GET /agent/sites

최신 스캔과 함께 사이트 목록을 한 페이지씩 보여 줍니다.

쿼리

필드 타입 필수
limit 정수 아니요
cursor 문자열 아니요

data

필드 타입 항상 포함
items 객체 목록 예
nextCursor 문자열 또는 null 예

각 항목

필드 타입 항상 포함
id 문자열 예
name 문자열 예
status 문자열 예
baseDomain 문자열 또는 null 예
latestPulse 객체 또는 null 예
latestDeep 객체 또는 null 예
latestBox 객체 또는 null 예
webPath 문자열 예
webUrl 문자열 예

POST /agent/sites

사이트를 추가하거나, 같은 주소의 사이트가 있으면 그 사이트를 반환합니다.

본문

필드 타입 필수
url 문자열 예
name 문자열 아니요
idempotencyKey 문자열 예

data

필드 타입 항상 포함
site 객체 예
created 불리언 예

GET /agent/sites/{siteId}/status

사이트 하나의 현재 상태입니다. 최신 스캔과 다음에 할 일을 보여 줍니다.

data

필드 타입 항상 포함
site 객체 예
latestPulse 객체 또는 null 예
latestDeep 객체 또는 null 예
latestBox 객체 또는 null 예
lastComparison 객체 또는 null 예
caveats 문자열 목록 예
fixes 객체 또는 null 아니요
relevant 객체 목록 아니요
relevantTotal 정수 아니요

GET /agent/sites/{siteId}/history

사이트의 보안 기록: 스캔 깊이별 점수 추이(엔진이 바뀐 곳에서 끊김), 시간에 따른 열린 발견 사항, 수정, 재발, 수정까지 걸린 시간의 중앙값.

data

필드 타입 항상 포함
siteId 문자열 예
scores 객체 목록 예
findings 객체 예

POST /agent/sites/{siteId}/dependencies

사이트가 고정(pin)한 패키지 이름과 정확한 버전을 보내고(코드는 보내지 않음), 그 패키지에 영향을 주는 권고를 읽습니다.

본문

필드 타입 필수
inventory 객체 아니요
packages 객체 목록 예
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 예
idempotencyKey 문자열 예

data

필드 타입 항상 포함
siteId 문자열 예
receivedAt 문자열 또는 null 예
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 예
packageCount 정수 예
affectsYouCount 정수 예
affectsYou 객체 목록 예
webUrl 문자열 예

GET /agent/sites/{siteId}/github

사이트의 GitHub 연결입니다. 저장소, 브랜치, 잠금 파일, 마지막 읽기, 풀 리퀘스트 댓글과 호출자의 GitHub 목록이 최신인지를 알려 줍니다.

data

필드 타입 항상 포함
siteId 문자열 예
available 불리언 예
canManage 불리언 예
linked 객체 또는 null 예
lastRead 객체 또는 null 예
pullRequestComments 객체 또는 null 예
authorization 객체 예
webUrl 문자열 예

GET /agent/github/repositories

이 워크스페이스에서 호출자 본인의 GitHub 목록에 있는 저장소로, 연결할 수 있는 유일한 저장소입니다.

쿼리

필드 타입 필수
search 문자열 아니요
limit 정수 아니요

data

필드 타입 항상 포함
authorization 객체 예
items 객체 목록 예
matched 정수 예
truncated 불리언 예

각 항목

필드 타입 항상 포함
repository 문자열 예
defaultBranch 문자열 예
private 불리언 예

POST /agent/sites/{siteId}/github

호출자 본인의 GitHub 목록에 있는 저장소에 사이트를 연결하거나, 사용자가 승인할 페이지를 받습니다.

본문

필드 타입 필수
repository 문자열 예
ref 문자열 아니요
lockfiles 문자열 또는 문자열 목록 아니요
pullRequestComments on, off 아니요

사용자를 기다리는 GitHub 연결의 현재 상태입니다.

data

필드 타입 항상 포함
requestId 문자열 예
siteId 문자열 예
repository 문자열 예
state pending, authorizing, linked, not_reachable, declined, failed, expired 예
expiresAt 문자열 예
link 객체 또는 null 예

DELETE /agent/sites/{siteId}/github

사이트의 GitHub 저장소 연결을 해제하고 잠금 파일 읽기 결과를 삭제합니다.

data

필드 타입 항상 포함
siteId 문자열 예
unlinked 불리언 예

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

사이트에 연결된 저장소의 Deep 풀 리퀘스트 보안 댓글을 켜거나 끕니다.

본문

필드 타입 필수
enabled 불리언 예

data

필드 타입 항상 포함
siteId 문자열 예
available 불리언 예
canManage 불리언 예
linked 객체 또는 null 예
lastRead 객체 또는 null 예
pullRequestComments 객체 또는 null 예
authorization 객체 예
webUrl 문자열 예

GET /agent/sites/{siteId}/schedules

사이트의 Pulse 및 Deep 자동 점검과 플랜에서 허용하는 주기입니다.

data

필드 타입 항상 포함
siteId 문자열 예
enabled 불리언 예
allowed 객체 예
pulse 객체 또는 null 예
deep 객체 또는 null 예
webUrl 문자열 예

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

플랜에서 허용하는 주기 안에서 사이트의 Pulse 자동 점검을 설정, 변경 또는 다시 시작합니다.

본문

필드 타입 필수
cadence daily, weekly, monthly 아니요
runHourUtc 정수 또는 null 아니요

data

필드 타입 항상 포함
scheduleId 문자열 예
siteId 문자열 예
depth pulse, deep 예
status active, paused, archived 예
cadence daily, weekly, monthly 예
runHourUtc 정수 또는 null 예
nextRunAt 문자열 예
consentUntil 문자열 예
lastOutcome 문자열 또는 null 예

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

사이트의 Pulse 자동 점검을 일시 중지합니다.

data

필드 타입 항상 포함
scheduleId 문자열 예
siteId 문자열 예
depth pulse, deep 예
status active, paused, archived 예
cadence daily, weekly, monthly 예
runHourUtc 정수 또는 null 예
nextRunAt 문자열 예
consentUntil 문자열 예
lastOutcome 문자열 또는 null 예

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

사이트의 Deep 자동 점검 설정, 변경 또는 다시 시작을 준비하고, 사용자가 승인할 링크를 받습니다.

본문

필드 타입 필수
cadence daily, weekly, monthly 아니요
runHourUtc 정수 또는 null 아니요

data

필드 타입 항상 포함
requestId 문자열 예
siteId 문자열 예
depth 문자열 예
cadence daily, weekly, monthly 예
runHourUtc 정수 또는 null 예
approvalUrl 문자열 예
expiresAt 문자열 예
pollAfterSeconds 정수 예

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

사이트의 Deep 자동 점검을 일시 중지합니다.

data

필드 타입 항상 포함
scheduleId 문자열 예
siteId 문자열 예
depth pulse, deep 예
status active, paused, archived 예
cadence daily, weekly, monthly 예
runHourUtc 정수 또는 null 예
nextRunAt 문자열 예
consentUntil 문자열 예
lastOutcome 문자열 또는 null 예

GET /agent/schedule-requests/{requestId}

사용자를 기다리는 Deep 자동 점검의 현재 상태입니다.

data

필드 타입 항상 포함
requestId 문자열 예
siteId 문자열 예
depth 문자열 예
cadence daily, weekly, monthly 예
runHourUtc 정수 또는 null 예
state pending, approved, declined, failed, expired 예
expiresAt 문자열 예
failure 문자열 또는 null 예
schedule 객체 또는 null 예

GET /agent/sites/{siteId}/shares

공개 공유 링크가 활성화된 사이트의 Pulse 결과입니다.

data

필드 타입 항상 포함
siteId 문자열 예
shares 객체 목록 예

POST /agent/scans/{scanId}/share

완료된 Pulse 결과를 공개 링크로 게시하거나, 그 링크를 교체합니다.

본문

필드 타입 필수
replace 불리언 아니요

data

필드 타입 항상 포함
scanId 문자열 예
url 문자열 또는 null 예
createdAt 문자열 예

DELETE /agent/scans/{scanId}/share

Pulse 결과 공유를 중지합니다. 공개 링크는 더 이상 작동하지 않습니다.

data

필드 타입 항상 포함
scanId 문자열 예
unshared 불리언 예

POST /agent/sites/{siteId}/pulse

사이트에서 Pulse를 시작합니다.

본문

필드 타입 필수
idempotencyKey 문자열 예
baselineScanId 문자열 아니요

data

필드 타입 항상 포함
scan 객체 예
charged 객체 예
allowance 객체 예
replayed 불리언 예

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

Deep 스캔 전에 DNS 또는 파일 소유권 증명을 발급합니다.

본문

필드 타입 필수
method dns, file, meta 예
idempotencyKey 문자열 예

data

필드 타입 항상 포함
verificationId 문자열 예
siteId 문자열 예
origin 문자열 예
method dns, file, meta 예
state pending, verified, expired, exhausted, revoked 예
expiresAt 문자열 예
verifiedUntil 문자열 또는 null 예
attemptsRemaining 정수 예
retryAfterSeconds 정수 또는 null 예
value 문자열 예
location 문자열 예

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

게시된 소유권 증명을 확인합니다. 확인할 때마다 시도 한 번을 사용합니다.

data

필드 타입 항상 포함
verificationId 문자열 예
siteId 문자열 예
origin 문자열 예
method dns, file, meta 예
state pending, verified, expired, exhausted, revoked 예
expiresAt 문자열 예
verifiedUntil 문자열 또는 null 예
attemptsRemaining 정수 예
retryAfterSeconds 정수 또는 null 예

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

Deep 스캔을 준비하고, 사용자가 승인할 링크를 받습니다.

본문

필드 타입 필수
verificationId 문자열 예
idempotencyKey 문자열 예

data

필드 타입 항상 포함
operationId 문자열 예
siteId 문자열 예
origin 문자열 예
assessmentLevel 문자열 예
verificationId 문자열 예
cost 객체 예
allowance 객체 예
approvalState pending, approved, expired, denied 예
approvalUrl 문자열 예
expiresAt 문자열 예

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

사용자가 승인한 Deep 스캔을 시작합니다.

data

필드 타입 항상 포함
scan 객체 예
charged 객체 예
allowance 객체 예
replayed 불리언 예

POST /agent/free-site-switch

사이트를 제거해서 이번 달 무료 Pulse를 다른 사이트로 옮깁니다.

본문

필드 타입 필수
removeSiteId 문자열 예
checkId 문자열 아니요
idempotencyKey 문자열 예
confirmRemoval 불리언 예

data

필드 타입 항상 포함
removedSiteId 문자열 예
removedSiteHost 문자열 예
replacementSiteId 문자열 또는 null 예
allowance 객체 예
restoreUrl 문자열 예
startedScanId 문자열 또는 null 예
charged 객체 예
replayed 불리언 예

GET /agent/scans

필터를 적용해 스캔을 최신순으로 한 페이지씩 보여 줍니다.

쿼리

필드 타입 필수
siteId 문자열 아니요
kind pulse, box(Deep, 이전 이름) 아니요
assessmentLevel pulse, standard, deep 아니요
status queued, running, cancelling, succeeded, incomplete, failed, cancelled 아니요
limit 정수 아니요
cursor 문자열 아니요

data

필드 타입 항상 포함
items 객체 목록 예
nextCursor 문자열 또는 null 예

각 항목

필드 타입 항상 포함
id 문자열 예
kind pulse, box(Deep, 이전 이름) 예
projectId 문자열 예
target 문자열 예
status queued, running, cancelling, succeeded, incomplete, failed, cancelled 예
mode autonomous, authenticated, active 또는 null 예
createdAt 문자열 또는 null 예
finishedAt 문자열 또는 null 예
webPath 문자열 예
assessmentLevel pulse, standard, deep 또는 null 예
headline 객체 예
webUrl 문자열 예
suggestedPollAfterSeconds 정수 또는 null 예

GET /agent/scans/{scanId}

스캔 하나와 상태, 요약입니다.

data

필드 타입 항상 포함
id 문자열 예
kind pulse, box(Deep, 이전 이름) 예
projectId 문자열 예
target 문자열 예
status queued, running, cancelling, succeeded, incomplete, failed, cancelled 예
mode autonomous, authenticated, active 또는 null 예
createdAt 문자열 또는 null 예
finishedAt 문자열 또는 null 예
webPath 문자열 예
assessmentLevel pulse, standard, deep 또는 null 예
headline 객체 예
webUrl 문자열 예
suggestedPollAfterSeconds 정수 또는 null 예
docsUrl 문자열 아니요
dismissals 객체 아니요
baselineRunId 문자열 또는 null 예
open 객체 예
findingCount 정수 예
progress 객체 또는 null 예
coverage 객체 예
caveats 문자열 목록 예
outcome 객체 또는 null 예
exposureCheck 객체 아니요
coverageReceipt 객체 아니요

GET /agent/scans/{scanId}/findings

스캔의 문제를 한 페이지씩 보여 줍니다.

  • 권한: read
  • MCP 도구: lockpick_list_findings
  • x-lockpick-agent-features: finding-code를 보내면 각 발견 항목의 code(LP-와 여섯 글자, 웹 보고서에 표시되는 것과 같음)를 받습니다. 이 헤더가 없으면 응답에 code가 없으며, 이전 클라이언트가 기대하는 형태입니다.

쿼리

필드 타입 필수
state attention, information, unknown, pass 아니요
severity critical, high, medium, low, info 아니요
all 불리언 또는 true, false 아니요
limit 정수 아니요
cursor 문자열 아니요

data

필드 타입 항상 포함
items 객체 목록 예
nextCursor 문자열 또는 null 예

각 항목

필드 타입 항상 포함
dismissal 객체 아니요
id 문자열 예
code 문자열 아니요
runId 문자열 예
kind pulse, box(Deep, 이전 이름) 예
severity critical, high, medium, low, info 예
state attention, information, unknown, pass 예
category 문자열 예
title 문자열 예
meaning 문자열 예
fix 문자열 또는 null 예
confidence 문자열 예
evidence 문자열 목록 예
sources 문자열 목록 예
steps 문자열 목록 예
webPath 문자열 예
webUrl 문자열 예
evidenceTrust 문자열 예
evidenceTruncated 불리언 예
verdict confirmed, needs_review, not_actionable 또는 null 아니요
certainty high, medium, low 또는 null 아니요
exploitability direct, conditional, hygiene, none 또는 null 아니요
proof 객체 또는 null 아니요
proofGap 문자열 또는 null 아니요
urgency now, week, later, none 아니요
howSure confirmed, likely, possible 또는 null 아니요
lifecycle 객체 또는 null 아니요

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

문제 하나와, 가려진 근거입니다.

  • 권한: read
  • MCP 도구: lockpick_get_finding
  • x-lockpick-agent-features: finding-code를 보내면 각 발견 항목의 code(LP-와 여섯 글자, 웹 보고서에 표시되는 것과 같음)를 받습니다. 이 헤더가 없으면 응답에 code가 없으며, 이전 클라이언트가 기대하는 형태입니다.

data

필드 타입 항상 포함
dismissal 객체 아니요
id 문자열 예
code 문자열 아니요
runId 문자열 예
kind pulse, box(Deep, 이전 이름) 예
severity critical, high, medium, low, info 예
state attention, information, unknown, pass 예
category 문자열 예
title 문자열 예
meaning 문자열 예
fix 문자열 또는 null 예
confidence 문자열 예
evidence 문자열 목록 예
sources 문자열 목록 예
steps 문자열 목록 예
webPath 문자열 예
webUrl 문자열 예
evidenceTrust 문자열 예
evidenceTruncated 불리언 예
verdict confirmed, needs_review, not_actionable 또는 null 아니요
certainty high, medium, low 또는 null 아니요
exploitability direct, conditional, hygiene, none 또는 null 아니요
proof 객체 또는 null 아니요
proofGap 문자열 또는 null 아니요
urgency now, week, later, none 아니요
howSure confirmed, likely, possible 또는 null 아니요
lifecycle 객체 또는 null 아니요

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

스캔 수정 브리프의 일부입니다.

쿼리

필드 타입 필수
findingId 문자열 아니요
agent claude-code, codex, cursor, vscode, opencode, lovable, bolt, replit, v0 아니요
cursor 문자열 아니요

data

필드 타입 항상 포함
scanId 문자열 예
findingIds 문자열 목록 예
saved 불리언 예
markdown 문자열 예
nextCursor 문자열 또는 null 예
complete 불리언 예
webUrl 문자열 예

GET /agent/scans/{scanId}/comparison

스캔과 그 스캔이 다시 검사하는 대상 사이에서 바뀐 내용입니다.

  • 권한: read
  • MCP 도구: lockpick_compare_scans
  • x-lockpick-agent-features: finding-code를 보내면 각 발견 항목의 code(LP-와 여섯 글자, 웹 보고서에 표시되는 것과 같음)를 받습니다. 이 헤더가 없으면 응답에 code가 없으며, 이전 클라이언트가 기대하는 형태입니다.

data

필드 타입 항상 포함
runId 문자열 예
baselineRunId 문자열 예
error 문자열 또는 null 예
changes 객체 목록 예
webUrl 문자열 예

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

스캔의 무료 DNS 검사를 다시 실행합니다. 사이트에는 아무것도 보내지 않습니다.

본문

필드 타입 필수
findingId 문자열 예
idempotencyKey 문자열 예

data

필드 타입 항상 포함
scanId 문자열 예
findingIds 문자열 목록 예
pending 객체 또는 null 예
checkedAt 문자열 또는 null 예
outcomes 객체 목록 예
nextAllowedAt 문자열 또는 null 예
failedAt 문자열 또는 null 예
originalGradeUnchanged 불리언 예

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

스캔의 가장 최근 DNS 재검사입니다.

data

필드 타입 항상 포함
scanId 문자열 예
findingIds 문자열 목록 예
pending 객체 또는 null 예
checkedAt 문자열 또는 null 예
outcomes 객체 목록 예
nextAllowedAt 문자열 또는 null 예
failedAt 문자열 또는 null 예
originalGradeUnchanged 불리언 예

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

이 수정 확인: Deep 문제가 보였던 곳만 다시 읽습니다. 무료, 하루 한도 있음.

본문

필드 타입 필수
findingId 문자열 예
idempotencyKey 문자열 예

data

필드 타입 항상 포함
scanId 문자열 예
findingId 문자열 예
pending 객체 또는 null 예
latest 객체 또는 null 예
failedAt 문자열 또는 null 예
remainingToday 정수 예
workspaceRemainingToday 정수 예
webUrl 문자열 예
originalGradeUnchanged 불리언 예

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

Deep 문제 하나의 최신 이 수정 확인.

data

필드 타입 항상 포함
scanId 문자열 예
findingId 문자열 예
pending 객체 또는 null 예
latest 객체 또는 null 예
failedAt 문자열 또는 null 예
remainingToday 정수 예
workspaceRemainingToday 정수 예
webUrl 문자열 예
originalGradeUnchanged 불리언 예

POST /agent/quick-checks

홈페이지의 무료 빠른 검사를 시작합니다.

본문

필드 타입 필수
url 문자열 예
idempotencyKey 문자열 예

data

필드 타입 항상 포함
checkId 문자열 예
status queued, running, succeeded, failed 예
reused 불리언 예
headline 객체 예
summary 문자열 또는 null 예
checks 객체 목록 예
webUrl 문자열 예
suggestedPollAfterSeconds 정수 또는 null 예

POST /agent/repository-checks

설치하기 전에 공개 GitHub 저장소(스킬, 플러그인, MCP 서버 또는 앱)를 검사합니다.

본문

필드 타입 필수
url 문자열 예
mode skill, app 아니요
depth free, deep 아니요
idempotencyKey 문자열 예

data

필드 타입 항상 포함
checkId 문자열 예
status queued, running, succeeded, failed 예
reused 불리언 예
repository 객체 예
mode skill, app 또는 null 예
kind 문자열 또는 null 예
verdict safe, caution, do_not_install 또는 null 예
appRisk low, elevated, high 또는 null 예
score 정수 또는 null 예
summary 문자열 또는 null 예
plainSummary 문자열 또는 null 예
findings 객체 목록 예
moreFindings 정수 예
coverage 객체 또는 null 예
failure not-found, ref-not-found, empty, too-large, rate-limited, unavailable, timeout, engine-error 또는 null 예
webUrl 문자열 예
suggestedPollAfterSeconds 정수 또는 null 예

GET /agent/repository-checks/{checkId}

저장소 검사와 그 발견 사항입니다.

data

필드 타입 항상 포함
checkId 문자열 예
status queued, running, succeeded, failed 예
reused 불리언 예
repository 객체 예
mode skill, app 또는 null 예
kind 문자열 또는 null 예
verdict safe, caution, do_not_install 또는 null 예
appRisk low, elevated, high 또는 null 예
score 정수 또는 null 예
summary 문자열 또는 null 예
plainSummary 문자열 또는 null 예
findings 객체 목록 예
moreFindings 정수 예
coverage 객체 또는 null 예
failure not-found, ref-not-found, empty, too-large, rate-limited, unavailable, timeout, engine-error 또는 null 예
webUrl 문자열 예
suggestedPollAfterSeconds 정수 또는 null 예

GET /agent/quick-checks/{checkId}

빠른 검사와 그 결과입니다.

data

필드 타입 항상 포함
checkId 문자열 예
status queued, running, succeeded, failed 예
reused 불리언 예
headline 객체 예
summary 문자열 또는 null 예
checks 객체 목록 예
webUrl 문자열 예
suggestedPollAfterSeconds 정수 또는 null 예

GET /agent/docs/search

Lockpick 공개 문서를 검색합니다.

쿼리

필드 타입 필수
query 문자열 예
limit 정수 아니요

data

필드 타입 항상 포함
query 문자열 예
results 객체 목록 예

GET /agent/docs/page

공개 문서 페이지 하나를 Markdown으로 보여 줍니다. 길면 여러 부분으로 나눕니다.

쿼리

필드 타입 필수
path 문자열 아니요
cursor 문자열 아니요

data

필드 타입 항상 포함
path 문자열 예
title 문자열 예
description 문자열 또는 null 예
url 문자열 예
markdownUrl 문자열 예
markdown 문자열 예
nextCursor 문자열 또는 null 예
complete 불리언 예

기기 로그인

lockpick login이 키를 받는 방법입니다. 코드를 요청하고, 사용자가 브라우저에서 승인하면, 반복 확인으로 키를 받습니다.

POST /device/code

기기 로그인을 시작하고, 사용자가 브라우저에서 승인할 코드를 받습니다.

  • 권한: 없음. 로그인 과정의 일부입니다

본문

필드 타입 필수
clientName 문자열 아니요
hostname 문자열 아니요
platform 문자열 아니요
version 문자열 아니요
scopes 목록: pulse, sites, deep, local 아니요

data

필드 타입 항상 포함
deviceCode 문자열 예
userCode 문자열 예
verificationUri 문자열 예
verificationUriComplete 문자열 예
expiresIn 정수 예
interval 정수 예

POST /device/token

사용자가 승인할 때까지 기기 로그인을 반복해서 확인한 뒤, 키를 받습니다.

  • 권한: 없음. 로그인 과정의 일부입니다

본문

필드 타입 필수
deviceCode 문자열 예

레거시

CLI 0.2가 쓰는 원래 CLI 경로입니다. 그대로 유지되며, 새로운 연동은 위의 에이전트 API를 사용해야 합니다.

원래 CLI 경로

GET /projects/{projectId}/dismissals

이 프로젝트의 수용한 발견 항목과 사유를 관리합니다. 실행 취소하면 다시 활성화됩니다. 증거나 검사 규칙이 변경되면 재검토가 필요합니다. 로컬 감사의 코드와 보고서는 사용자의 컴퓨터에 남습니다. 온라인 승인은 여전히 필요합니다.

  • 권한: read

data

필드 타입 항상 포함
version 숫자 예
projectId 문자열 예
dismissals 객체 목록 예

POST /projects/{projectId}/dismissals

이 프로젝트의 수용한 발견 항목과 사유를 관리합니다. 실행 취소하면 다시 활성화됩니다. 증거나 검사 규칙이 변경되면 재검토가 필요합니다. 로컬 감사의 코드와 보고서는 사용자의 컴퓨터에 남습니다. 온라인 승인은 여전히 필요합니다.

  • 권한: sites

본문

필드 타입 필수
version 숫자 예
projectId 문자열 예
dismissals 객체 목록 예

data

필드 타입 항상 포함
imported 정수 예

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

저장소 검사 전에 로컬 평가를 승인합니다. 소스와 결과는 업로드하지 않습니다.

  • 권한: local

본문

필드 타입 필수
cliVersion 문자열 예
scannerVersion 문자열 예
rulesetVersion 문자열 예
reportSchemaVersion 문자열 예
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 예

data

필드 타입 항상 포함
admissionId 문자열 예
projectId 문자열 예
workspaceId 문자열 예
policyVersion 문자열 예
startBy 문자열 예
checks 객체 목록 예

GET /me

이 자격 증명 뒤에 있는 사용자, 워크스페이스, 키입니다.

  • 권한: read

data

필드 타입 항상 포함
user 객체 예
workspace 객체 예
key 객체 예

DELETE /me

제출한 키를 폐기합니다.

  • 권한: 유효한 모든 키

data

필드 타입 항상 포함
revoked 불리언 예

GET /projects

최신 Pulse 및 Deep 스캔과 함께 사이트(프로젝트)를 보여 줍니다.

  • 권한: read

data 안의 각 항목

필드 타입 항상 포함
id 문자열 예
name 문자열 예
status 문자열 예
baseDomain 문자열 또는 null 예
latestPulse 객체 또는 null 예
latestDeep 객체 또는 null 아니요
latestBox 객체 또는 null 예
webPath 문자열 예
webUrl 문자열 아니요

GET /projects/{projectId}/status

사이트 하나의 최신 결과와 바뀐 내용입니다.

  • 권한: read

data

필드 타입 항상 포함
project 객체 예
latestPulse 객체 또는 null 예
latestDeep 객체 또는 null 아니요
latestBox 객체 또는 null 예
lastComparison 객체 또는 null 예
fixes 객체 또는 null 아니요
caveats 문자열 목록 예

POST /projects/{projectId}/pulse

사이트에서 Pulse를 시작하거나, 가장 최근 Pulse를 재검사합니다.

  • 권한: pulse
  • 성공하면 201로 응답합니다

본문

필드 타입 필수
idempotencyKey 문자열 예

data

필드 타입 항상 포함
id 문자열 예
kind pulse, box(Deep, 이전 이름) 예
projectId 문자열 예
target 문자열 예
status queued, running, cancelling, succeeded, incomplete, failed, cancelled 예
mode autonomous, authenticated, active 또는 null 예
createdAt 문자열 또는 null 예
finishedAt 문자열 또는 null 예
webPath 문자열 예
assessmentLevel pulse, standard, deep 또는 null 아니요
headline 객체 아니요
webUrl 문자열 아니요
suggestedPollAfterSeconds 정수 또는 null 아니요
dismissals 객체 아니요
baselineRunId 문자열 또는 null 예
open 객체 예
findingCount 정수 예
progress 객체 또는 null 예
coverage 객체 예
caveats 문자열 목록 예
outcome 객체 또는 null 아니요
exposureCheck 객체 또는 null 아니요
coverageReceipt 객체 또는 null 아니요

POST /projects/{projectId}/deep

이 사이트에 Deep이 허용된 CI 키로 릴리스의 Deep 스캔을 시작합니다.

  • 권한: deep
  • 성공하면 201로 응답합니다

본문

필드 타입 필수
idempotencyKey 문자열 예

data

필드 타입 항상 포함
id 문자열 예
kind pulse, box(Deep, 이전 이름) 예
projectId 문자열 예
target 문자열 예
status queued, running, cancelling, succeeded, incomplete, failed, cancelled 예
mode autonomous, authenticated, active 또는 null 예
createdAt 문자열 또는 null 예
finishedAt 문자열 또는 null 예
webPath 문자열 예
assessmentLevel pulse, standard, deep 또는 null 아니요
headline 객체 아니요
webUrl 문자열 아니요
suggestedPollAfterSeconds 정수 또는 null 아니요
dismissals 객체 아니요
baselineRunId 문자열 또는 null 예
open 객체 예
findingCount 정수 예
progress 객체 또는 null 예
coverage 객체 예
caveats 문자열 목록 예
outcome 객체 또는 null 아니요
exposureCheck 객체 또는 null 아니요
coverageReceipt 객체 또는 null 아니요

GET /runs

Pulse 및 Deep 스캔을 최신순으로 보여 줍니다.

  • 권한: read

쿼리

필드 타입 필수
projectId 문자열 아니요
kind pulse, box(Deep, 이전 이름) 아니요
assessmentLevel pulse, standard, deep 아니요
status queued, running, cancelling, succeeded, incomplete, failed, cancelled 아니요
limit 정수 아니요

data 안의 각 항목

필드 타입 항상 포함
id 문자열 예
kind pulse, box(Deep, 이전 이름) 예
projectId 문자열 예
target 문자열 예
status queued, running, cancelling, succeeded, incomplete, failed, cancelled 예
mode autonomous, authenticated, active 또는 null 예
createdAt 문자열 또는 null 예
finishedAt 문자열 또는 null 예
webPath 문자열 예
assessmentLevel pulse, standard, deep 또는 null 아니요
headline 객체 아니요
webUrl 문자열 아니요
suggestedPollAfterSeconds 정수 또는 null 아니요

GET /runs/{runId}

요약과 개수가 있는 실행 하나입니다.

  • 권한: read

data

필드 타입 항상 포함
id 문자열 예
kind pulse, box(Deep, 이전 이름) 예
projectId 문자열 예
target 문자열 예
status queued, running, cancelling, succeeded, incomplete, failed, cancelled 예
mode autonomous, authenticated, active 또는 null 예
createdAt 문자열 또는 null 예
finishedAt 문자열 또는 null 예
webPath 문자열 예
assessmentLevel pulse, standard, deep 또는 null 아니요
headline 객체 아니요
webUrl 문자열 아니요
suggestedPollAfterSeconds 정수 또는 null 아니요
dismissals 객체 아니요
baselineRunId 문자열 또는 null 예
open 객체 예
findingCount 정수 예
progress 객체 또는 null 예
coverage 객체 예
caveats 문자열 목록 예
outcome 객체 또는 null 아니요
exposureCheck 객체 또는 null 아니요
coverageReceipt 객체 또는 null 아니요

GET /runs/{runId}/findings

실행의 문제입니다.

  • 권한: read

쿼리

필드 타입 필수
severity critical, high, medium, low, info 아니요
state attention, information, unknown, pass 아니요
all true, false 아니요

data 안의 각 항목

필드 타입 항상 포함
dismissal 객체 아니요
id 문자열 예
code 문자열 아니요
runId 문자열 예
kind pulse, box(Deep, 이전 이름) 예
severity critical, high, medium, low, info 예
state attention, information, unknown, pass 예
category 문자열 예
title 문자열 예
meaning 문자열 예
fix 문자열 또는 null 예
confidence 문자열 예
evidence 문자열 목록 예
sources 문자열 목록 예
steps 문자열 목록 예
webPath 문자열 예
webUrl 문자열 아니요
verdict confirmed, needs_review, not_actionable 또는 null 아니요
certainty high, medium, low 또는 null 아니요
exploitability direct, conditional, hygiene, none 또는 null 아니요
proof 객체 또는 null 아니요
proofGap 문자열 또는 null 아니요
urgency now, week, later, none 아니요
howSure confirmed, likely, possible 또는 null 아니요
lifecycle 객체 또는 null 아니요

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

문제 하나와, 가려진 근거입니다.

  • 권한: read

data

필드 타입 항상 포함
dismissal 객체 아니요
id 문자열 예
code 문자열 아니요
runId 문자열 예
kind pulse, box(Deep, 이전 이름) 예
severity critical, high, medium, low, info 예
state attention, information, unknown, pass 예
category 문자열 예
title 문자열 예
meaning 문자열 예
fix 문자열 또는 null 예
confidence 문자열 예
evidence 문자열 목록 예
sources 문자열 목록 예
steps 문자열 목록 예
webPath 문자열 예
webUrl 문자열 아니요
verdict confirmed, needs_review, not_actionable 또는 null 아니요
certainty high, medium, low 또는 null 아니요
exploitability direct, conditional, hygiene, none 또는 null 아니요
proof 객체 또는 null 아니요
proofGap 문자열 또는 null 아니요
urgency now, week, later, none 아니요
howSure confirmed, likely, possible 또는 null 아니요
lifecycle 객체 또는 null 아니요

GET /runs/{runId}/repair-brief

실행의 수정 사항을 하나의 Markdown 브리프로 보여 줍니다.

  • 권한: read

쿼리

필드 타입 필수
findingId 문자열 아니요
agent claude-code, codex, cursor, vscode, opencode, lovable, bolt, replit, v0 아니요

data

필드 타입 항상 포함
runId 문자열 예
findingIds 문자열 목록 예
saved 불리언 예
markdown 문자열 예
webUrl 문자열 아니요

GET /runs/{runId}/comparison

실행과 그 이전 실행 사이에서 바뀐 내용입니다.

  • 권한: read

data

필드 타입 항상 포함
runId 문자열 예
baselineRunId 문자열 예
error 문자열 또는 null 예
changes 객체 목록 예
webUrl 문자열 아니요

GET /runs/{runId}/export

스캔 결과를 쉬운 말 또는 기술적인 내용의 PDF로, base64로 인코딩해 제공합니다.

  • 권한: read

쿼리

필드 타입 필수
dialect plain, technical 예

data

필드 타입 항상 포함
filename 문자열 예
mimeType 문자열 예
base64 문자열 예

도움이 되었나요?