| Field | Value |
|---|
| Source spec | attestor/openapi/v1.json |
| OpenAPI version | 3.1.1 |
| API version | 1.0.0 |
| Operations | 70 |
| Path filter | All paths |
| Property | Value |
|---|
| Operation ID | - |
| Tags | Anchors |
| Auth | Not declared |
| Request body | - |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
501 | Not Implemented | application/json |
| Property | Value |
|---|
| Operation ID | - |
| Tags | Anchors |
| Auth | Not declared |
| Request body | application/*+json, application/json, text/json |
Responses:
| Status | Description | Content types |
|---|
201 | Created | application/json |
400 | Bad Request | application/json |
409 | Conflict | application/json |
501 | Not Implemented | application/json |
| Property | Value |
|---|
| Operation ID | - |
| Tags | Anchors |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
anchorId | path | yes | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
400 | Bad Request | application/json |
404 | Not Found | application/json |
501 | Not Implemented | application/json |
| Property | Value |
|---|
| Operation ID | - |
| Tags | Anchors |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
anchorId | path | yes | |
Responses:
| Status | Description | Content types |
|---|
204 | No Content | application/json |
404 | Not Found | application/json |
501 | Not Implemented | application/json |
| Property | Value |
|---|
| Operation ID | - |
| Tags | Anchors |
| Auth | Not declared |
| Request body | application/*+json, application/json, text/json |
Parameters:
| Name | In | Required | Description |
|---|
anchorId | path | yes | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
404 | Not Found | application/json |
501 | Not Implemented | application/json |
| Property | Value |
|---|
| Operation ID | - |
| Tags | Anchors |
| Auth | Not declared |
| Request body | application/*+json, application/json, text/json |
Parameters:
| Name | In | Required | Description |
|---|
anchorId | path | yes | |
Responses:
| Status | Description | Content types |
|---|
204 | No Content | application/json |
400 | Bad Request | application/json |
404 | Not Found | application/json |
501 | Not Implemented | application/json |
Lists attestation entries from the repository with optional filters. Returns a paginated result with continuation token for incremental sync. Requires attestor:read scope.
| Property | Value |
|---|
| Operation ID | ListAttestations |
| Tags | StellaOps.Attestor.WebService |
| Auth | Not declared |
| Request body | - |
Responses:
| Status | Description | Content types |
|---|
200 | OK | - |
Retrieves an attestation entry by UUID, including inclusion proof, checkpoint, artifact metadata, and optional mirror status. Equivalent to the Rekor entry endpoint but accessed by attestor UUID alias. Requires attestor:read scope.
| Property | Value |
|---|
| Operation ID | GetAttestationByUuid |
| Tags | StellaOps.Attestor.WebService |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
uuid | path | yes | |
refresh | query | no | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | - |
Exports attestations as a portable bundle package with optional filters by artifact digest, date range, and predicate type. Used for offline transfer and air-gap synchronization. Requires attestor:read scope.
| Property | Value |
|---|
| Operation ID | ExportAttestationBundle |
| Tags | StellaOps.Attestor.WebService |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
Exports the supported build type/ID, invocation, configuration-source, environment, parameter, and timestamp fields as an unsigned SPDX 3.0.1 Build Profile document. The supported request is format=Spdx3 with sign=false. DSSE/signing, Both, builder, and material requests fail closed with 501 feature_not_implemented rather than returning an incomplete document. The authorization policy name is attestor:write; the required canonical scope claim is attest:create.
| Property | Value |
|---|
| Operation ID | ExportSpdx3BuildAttestation |
| Tags | StellaOps.Attestor.WebService |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
501 | Signing, DSSE, builder, or material mapping is not implemented | application/problem+json |
Imports a portable attestation bundle package into the attestor store. All entries within the bundle are validated before persistence. Returns a summary of imported and skipped entries. Requires attestor:write scope.
| Property | Value |
|---|
| Operation ID | ImportAttestationBundle |
| Tags | StellaOps.Attestor.WebService |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
Signs an attestation payload using the configured key and DSSE envelope format. Requires an authenticated principal or configured StellaOps service-to-service bypass. Returns the signed bundle with key metadata and optional Rekor submission details. Requires attestor:write scope.
| Property | Value |
|---|
| Operation ID | SignAttestation |
| Tags | StellaOps.Attestor.WebService |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|
200 | OK | - |
Creates and signs an in-toto link metadata object for a named step, including materials, products, command, environment, and return value. Returns the signed DSSE envelope with optional Rekor entry. Requires attestor:write scope.
| Property | Value |
|---|
| Operation ID | CreateInTotoLink |
| Tags | StellaOps.Attestor.WebService |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
List all registered predicate types
Returns a paginated list of registered in-toto predicate type schemas from the registry, with optional filters by category and active status. Used to discover supported predicate URIs for attestation creation.
| Property | Value |
|---|
| Operation ID | ListPredicateTypes |
| Tags | Predicate Registry |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
category | query | no | |
isActive | query | no | |
limit | query | no | |
offset | query | no | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
Get predicate type schema by URI
Retrieves the full schema definition for a predicate type identified by its URI. The URI must be URL-encoded when passed as a path segment. Returns 404 if the predicate type is not registered.
| Property | Value |
|---|
| Operation ID | GetPredicateType |
| Tags | Predicate Registry |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
uri | path | yes | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
404 | Not Found | - |
API alias for /buildinfo.json (same payload).
| Property | Value |
|---|
| Operation ID | StellaOpsBuildInfoApi |
| Tags | StellaOps.Attestor.WebService |
| Auth | Not declared |
| Request body | - |
Responses:
| Status | Description | Content types |
|---|
200 | OK | - |
| Property | Value |
|---|
| Operation ID | - |
| Tags | Bundles |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
cursor | query | no | |
limit | query | no | |
periodEnd | query | no | |
periodStart | query | no | |
tenantId | query | no | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
| Property | Value |
|---|
| Operation ID | - |
| Tags | Bundles |
| Auth | Not declared |
| Request body | application/*+json, application/json, text/json |
Responses:
| Status | Description | Content types |
|---|
201 | Created | application/json |
400 | Bad Request | application/json |
| Property | Value |
|---|
| Operation ID | - |
| Tags | Bundles |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
bundleId | path | yes | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
404 | Not Found | application/json |
| Property | Value |
|---|
| Operation ID | - |
| Tags | Bundles |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
bundleId | path | yes | |
entryId | path | yes | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
404 | Not Found | application/json |
| Property | Value |
|---|
| Operation ID | - |
| Tags | Bundles |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
bundleId | path | yes | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
404 | Not Found | application/json |
Runtime status (2026-07-17): The five /api/v1/chains/* shapes below belong to the excluded ChainController prototype. They are not registered in the production host and therefore return 404. The response tables document the prototype contract, not a live API.
| Property | Value |
|---|
| Operation ID | - |
| Tags | Chain |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
artifactDigest | path | yes | |
chain | query | no | |
maxDepth | query | no | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json, text/json, text/plain |
400 | Bad Request | application/json, text/json, text/plain |
404 | Not Found | application/json, text/json, text/plain |
| Property | Value |
|---|
| Operation ID | - |
| Tags | Chain |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
attestationId | path | yes | |
maxDepth | query | no | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json, text/json, text/plain |
400 | Bad Request | application/json, text/json, text/plain |
404 | Not Found | application/json, text/json, text/plain |
| Property | Value |
|---|
| Operation ID | - |
| Tags | Chain |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
attestationId | path | yes | |
maxDepth | query | no | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json, text/json, text/plain |
400 | Bad Request | application/json, text/json, text/plain |
404 | Not Found | application/json, text/json, text/plain |
| Property | Value |
|---|
| Operation ID | - |
| Tags | Chain |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
attestationId | path | yes | |
format | query | no | |
maxDepth | query | no | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json, text/json, text/plain |
400 | Bad Request | application/json, text/json, text/plain |
404 | Not Found | application/json, text/json, text/plain |
| Property | Value |
|---|
| Operation ID | - |
| Tags | Chain |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
attestationId | path | yes | |
maxDepth | query | no | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json, text/json, text/plain |
400 | Bad Request | application/json, text/json, text/plain |
404 | Not Found | application/json, text/json, text/plain |
Runtime status (2026-07-20): The four /api/v1/proofs/* shapes below are active. Non-testing runtime uses an Attestor-owned tenant-partitioned PostgreSQL projection; authenticated tenant context is mandatory. The chain route returns deterministic ProofChainResponse JSON or RFC 7807 404 with title No proof chain found. for an honest empty subject. Subject routes require a strict 64-hex SHA-256 digest.
| Property | Value |
|---|
| Operation ID | - |
| Tags | ProofChain |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
proofId | path | yes | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json, text/json, text/plain |
404 | Not Found | application/json, text/json, text/plain |
| Property | Value |
|---|
| Operation ID | - |
| Tags | ProofChain |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
proofId | path | yes | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json, text/json, text/plain |
400 | Bad Request | application/json, text/json, text/plain |
404 | Not Found | application/json, text/json, text/plain |
| Property | Value |
|---|
| Operation ID | - |
| Tags | ProofChain |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
subjectDigest | path | yes | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json, text/json, text/plain |
400 | Bad Request | application/json, text/json, text/plain |
404 | Not Found | application/json, text/json, text/plain |
| Property | Value |
|---|
| Operation ID | - |
| Tags | ProofChain |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
subjectDigest | path | yes | |
maxDepth | query | no | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json, text/json, text/plain |
400 | Bad Request | application/json, text/json, text/plain |
404 | Not Found | application/json, text/json, text/plain |
Submits an attestation entry to the configured transparency log. Requires an authenticated principal or configured StellaOps service-to-service bypass. Returns the entry details including UUID, log index, and inclusion proof. Requires attestor:write scope.
| Property | Value |
|---|
| Operation ID | SubmitRekorEntry |
| Tags | StellaOps.Attestor.WebService |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|
200 | OK | - |
400 | Validation failure. Code tenant_required when the submission carries no tenant (see below). | application/problem+json |
Tenant requirement (internal / bypass submissions) — SPRINT_20260721_004. Every submission MUST resolve to a tenant; the Attestor hard-rejects a tenantless submission with 400 ProblemDetails code = "tenant_required" (no silent default tenant is ever injected). The tenant is resolved as: the caller’s tenant claim (authenticated principals) or, for an internal tokenless bypass submission (authorized via Authority:ResourceServer:BypassNetworks, no bearer token, hence an anonymous principal), the caller-supplied X-StellaOps-TenantIdheader. The header is honored only for anonymous bypass callers — for an authenticated principal the tenant always comes from its claim and the header is ignored, so it cannot be used to spoof a tenant. Internal producers (Scanner scan-result, Findings.Ledger VEX-override, ReleaseOrchestrator deployment, Excititor VEX-observation) send this header; if it is absent the submission 400s and the caller degrades the evidence to self-signed/unsigned rather than anchoring.
Retrieves a Rekor transparency log entry by UUID, including inclusion proof, checkpoint, and artifact metadata. Set refresh=true to bypass cache and fetch the latest state from Rekor. Requires attestor:read scope.
| Property | Value |
|---|
| Operation ID | GetRekorEntry |
| Tags | StellaOps.Attestor.WebService |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
uuid | path | yes | |
refresh | query | no | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | - |
Verifies an attestation against the Rekor transparency log, checking inclusion proof, checkpoint consistency, and signature validity. Returns a structured verification result with per-check diagnostics. Requires attestor:verify scope.
| Property | Value |
|---|
| Operation ID | VerifyRekorEntry |
| Tags | StellaOps.Attestor.WebService |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|
200 | OK | - |
Enqueues a bulk attestation verification job for processing multiple entries asynchronously. Returns 202 Accepted with the job ID and a polling URL. Queue depth is enforced by quota configuration. Requires attestor:write scope.
| Property | Value |
|---|
| Operation ID | CreateBulkVerificationJob |
| Tags | StellaOps.Attestor.WebService |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|
200 | OK | - |
Returns the current status and results of a bulk attestation verification job by job ID. The job is only visible to the principal that submitted it. Returns 404 for unknown or unauthorized job IDs. Requires attestor:write scope.
| Property | Value |
|---|
| Operation ID | GetBulkVerificationJob |
| Tags | StellaOps.Attestor.WebService |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
jobId | path | yes | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | - |
Lists manual schedule/import and connected-sync batch status metadata without returning package bytes. Requires attestor:read scope.
| Property | Value |
|---|
| Operation ID | ListTransparencyExchangeBatches |
| Tags | StellaOps.Attestor.WebService |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
direction | query | no | |
limit | query | no | |
manifestDigest | query | no | |
operatorLabel | query | no | |
targetId | query | no | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
400 | Bad Request | - |
Gets manual schedule/import or connected-sync batch status metadata by batch id. Requires attestor:read scope.
| Property | Value |
|---|
| Operation ID | GetTransparencyExchangeBatch |
| Tags | StellaOps.Attestor.WebService |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
batchId | path | yes | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
404 | Not Found | - |
Validates and applies a returned external transparency import file, attaching mirror receipts only to matching local entries. Requires attestor:write scope.
| Property | Value |
|---|
| Operation ID | ApplyTransparencyExchangeImport |
| Tags | StellaOps.Attestor.WebService |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
400 | Bad Request | - |
Validates a returned external transparency import file before sealed-site apply. Requires attestor:write scope.
| Property | Value |
|---|
| Operation ID | ValidateTransparencyExchangeImport |
| Tags | StellaOps.Attestor.WebService |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
400 | Bad Request | - |
Validates a schedule file and produces a deterministic signed import file containing external mirror receipts. Requires attestor:write scope.
| Property | Value |
|---|
| Operation ID | CreateTransparencyExchangeRelayImport |
| Tags | StellaOps.Attestor.WebService |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
400 | Bad Request | - |
Creates a deterministic manual schedule file for sealed-site external transparency mirror exchange. Requires attestor:write scope.
| Property | Value |
|---|
| Operation ID | CreateTransparencyExchangeSchedule |
| Tags | StellaOps.Attestor.WebService |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
400 | Bad Request | - |
Lists connected-window external transparency sync reports for CLI/UI readback. Requires attestor:read scope.
| Property | Value |
|---|
| Operation ID | ListExternalTransparencySyncReports |
| Tags | StellaOps.Attestor.WebService |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
limit | query | no | |
operatorLabel | query | no | |
targetId | query | no | |
targetName | query | no | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
404 | Not Found | - |
Gets one connected-window external transparency sync report by batch id. Requires attestor:read scope.
| Property | Value |
|---|
| Operation ID | GetExternalTransparencySyncReport |
| Tags | StellaOps.Attestor.WebService |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
batchId | path | yes | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
404 | Not Found | - |
Runs a bounded connected-window sync from Stella local transparency receipts to configured external Rekor-compatible mirror targets. The worker remains separately disabled unless explicitly enabled. Requires attestor:write scope.
| Property | Value |
|---|
| Operation ID | RunExternalTransparencySync |
| Tags | StellaOps.Attestor.WebService |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
409 | Conflict | - |
Lists operator-approved external transparency mirror targets with per-target status. Requires attestor:read scope.
| Property | Value |
|---|
| Operation ID | ListExternalTransparencyTargets |
| Tags | StellaOps.Attestor.WebService |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
enabled | query | no | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
Creates or updates an operator-approved external transparency target. The API stores only endpoint metadata and secret references, never raw credentials. Requires attestor:write scope.
| Property | Value |
|---|
| Operation ID | UpsertExternalTransparencyTarget |
| Tags | StellaOps.Attestor.WebService |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
400 | Bad Request | - |
Gets one external transparency mirror target with status counters and last error metadata. Requires attestor:read scope.
| Property | Value |
|---|
| Operation ID | GetExternalTransparencyTarget |
| Tags | StellaOps.Attestor.WebService |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
targetId | path | yes | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
404 | Not Found | - |
Disables an existing external transparency target. Existing local transparency receipts remain authoritative. Requires attestor:write scope.
| Property | Value |
|---|
| Operation ID | DisableExternalTransparencyTarget |
| Tags | StellaOps.Attestor.WebService |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
targetId | path | yes | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
404 | Not Found | - |
Enables an existing external transparency target for connected sync or manual exchange selection. Requires attestor:write scope.
| Property | Value |
|---|
| Operation ID | EnableExternalTransparencyTarget |
| Tags | StellaOps.Attestor.WebService |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
targetId | path | yes | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
404 | Not Found | - |
| Property | Value |
|---|
| Operation ID | - |
| Tags | Verdict |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
verdictId | path | yes | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
403 | Forbidden | application/json |
404 | Not Found | application/json |
501 | Not Implemented | application/json |
List watchlist entries
Returns all watchlist entries for the tenant, optionally including global entries.
| Property | Value |
|---|
| Operation ID | - |
| Tags | Watchlist |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
includeGlobal | query | no | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
Create watchlist entry
Creates a new watchlist entry for monitoring identity appearances.
| Property | Value |
|---|
| Operation ID | - |
| Tags | Watchlist |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|
201 | Created | application/json |
400 | Bad Request | application/json |
List recent alerts
Returns recent alerts generated by watchlist matches.
| Property | Value |
|---|
| Operation ID | - |
| Tags | Watchlist |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
limit | query | no | |
severity | query | no | |
since | query | no | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
Get watchlist entry
Returns a single watchlist entry by ID.
| Property | Value |
|---|
| Operation ID | - |
| Tags | Watchlist |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
id | path | yes | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
404 | Not Found | - |
Update watchlist entry
Updates an existing watchlist entry.
| Property | Value |
|---|
| Operation ID | - |
| Tags | Watchlist |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|
id | path | yes | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
400 | Bad Request | application/json |
404 | Not Found | - |
Delete watchlist entry
Deletes a watchlist entry.
| Property | Value |
|---|
| Operation ID | - |
| Tags | Watchlist |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
id | path | yes | |
Responses:
| Status | Description | Content types |
|---|
204 | No Content | - |
404 | Not Found | - |
Test watchlist pattern
Tests if a sample identity matches the watchlist entry pattern.
| Property | Value |
|---|
| Operation ID | - |
| Tags | Watchlist |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|
id | path | yes | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
404 | Not Found | - |
Image build provenance (module, gitSha, gitCommitTime, imageBuiltAt, branch) for drift detection.
| Property | Value |
|---|
| Operation ID | StellaOpsBuildInfoFile |
| Tags | StellaOps.Attestor.WebService |
| Auth | Not declared |
| Request body | - |
Responses:
| Status | Description | Content types |
|---|
200 | OK | - |
| Property | Value |
|---|
| Operation ID | - |
| Tags | Verdict |
| Auth | Not declared |
| Request body | application/*+json, application/json, text/json |
Responses:
| Status | Description | Content types |
|---|
201 | Created | application/json |
400 | Bad Request | application/json |
500 | Internal Server Error | application/json |
501 | Not Implemented | application/json |
| Property | Value |
|---|
| Operation ID | - |
| Tags | Exception |
| Auth | Not declared |
| Request body | application/*+json, application/json, text/json |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
400 | Bad Request | application/json |
| Property | Value |
|---|
| Operation ID | - |
| Tags | Exception |
| Auth | Not declared |
| Request body | application/*+json, application/json, text/json |
Responses:
| Status | Description | Content types |
|---|
201 | Created | application/json |
400 | Bad Request | application/json |
500 | Internal Server Error | application/json |
| Property | Value |
|---|
| Operation ID | - |
| Tags | Exception |
| Auth | Not declared |
| Request body | application/*+json, application/json, text/json |
Responses:
| Status | Description | Content types |
|---|
201 | Created | application/json |
400 | Bad Request | application/json |
500 | Internal Server Error | application/json |
| Property | Value |
|---|
| Operation ID | - |
| Tags | Exception |
| Auth | Not declared |
| Request body | application/*+json, application/json, text/json |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
400 | Bad Request | application/json |
Runtime status (2026-07-17): The bare /proofs/{entry}/* routes are retained as fail-closed retirement diagnostics. Valid authorized requests return 501 application/problem+json with code=feature_not_implemented; malformed mutations can return 400, and missing write authority returns 403. The historical success rows below are not implemented.
| Property | Value |
|---|
| Operation ID | - |
| Tags | Proofs |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
entry | path | yes | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
404 | Not Found | application/json |
501 | Not Implemented | application/problem+json |
| Property | Value |
|---|
| Operation ID | - |
| Tags | Proofs |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
entry | path | yes | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
404 | Not Found | application/json |
501 | Not Implemented | application/problem+json |
| Property | Value |
|---|
| Operation ID | - |
| Tags | Proofs |
| Auth | Not declared |
| Request body | application/*+json, application/json, text/json |
Parameters:
| Name | In | Required | Description |
|---|
entry | path | yes | |
Responses:
| Status | Description | Content types |
|---|
201 | Created | application/json |
400 | Bad Request | application/json |
404 | Not Found | application/json |
422 | Unprocessable Entity | application/json |
501 | Not Implemented | application/problem+json |
| Property | Value |
|---|
| Operation ID | - |
| Tags | Proofs |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
entry | path | yes | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
404 | Not Found | application/json |
501 | Not Implemented | application/problem+json |
| Property | Value |
|---|
| Operation ID | - |
| Tags | Verify |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
envelopeHash | path | yes | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
404 | Not Found | application/json |
501 | Not Implemented | application/json |
| Property | Value |
|---|
| Operation ID | - |
| Tags | Verify |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|
envelopeHash | path | yes | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
404 | Not Found | application/json |
501 | Not Implemented | application/json |
| Property | Value |
|---|
| Operation ID | - |
| Tags | Verify |
| Auth | Not declared |
| Request body | application/*+json, application/json, text/json |
Parameters:
| Name | In | Required | Description |
|---|
proofBundleId | path | yes | |
Responses:
| Status | Description | Content types |
|---|
200 | OK | application/json |
400 | Bad Request | application/json |
404 | Not Found | application/json |
501 | Not Implemented | application/json |