AssetShop Enterprise OSSTATIC RENDER · NO SCRIPTS · SYNTHETIC DATASET

STATIC PAGE Interactive levers, live recompute, and Record decision run in the app build; every figure, formula, evidence row, and WHY below is the real render, pre-computed. Evidence panels are opened for review.

Guided Walkthrough (Platform Demo) Synthetic tenant. Every figure MODELED, every record SYNTHETIC, no production system connected. The commercial platform is a separate authenticated environment scoped to your organization for your agreed term. Commercial sign in
Tenant-One Industrials · API Console

The service surface, stated

Viewing as Admin: 13 endpoints; the console lists exactly the built service's handlers, asserted in conformance terms by the suite, so documentation and runtime cannot drift.

PeriodFull year As of2026-07-01T06:14Z · seed BasisSYNTHETIC DATASET ScopeGlobal rollup
EndpointsREAD-ONLY TOWARD SYSTEMS OF RECORD
POST/syncauth: bearer

On-demand connector sync for { tenantId, connectorId }.

GET/v1/tenant/:tid/findingsauth: bearer

Deterministic findings, lineage on every row.

GET/v1/tenant/:tid/findings/:id/explainauth: bearer

Keyed explanation from the recorded input set; withdrawn when inputs cannot be reproduced.

POST/v1/tenant/:tid/authority/ingestauth: bearer

Authority graph ingest from the approval matrix of record.

POST/v1/tenant/:tid/decisions/recordauth: bearer

Decision with rationale, alternatives, and finding snapshot; the ledger freezes what the screen said.

POST/v1/tenant/:tid/outcomes/recordauth: bearer

Measured outcome with verdict; misses stay on the record.

GET/v1/decision-typesauth: bearer

The per-domain decision vocabulary and its governance, so a caller proposes in the customer terms rather than inventing its own.

POST/v1/tenant/:tid/decisions/proposeauth: bearer

A draft addressed to an accountable person. Decides nothing, writes to no system of record, refused outright if the calling identity lacks the authority a person would need for the same act.

POST/erp-webhookauth: HMAC ts.body

x-assetshop-timestamp within 300s; rejections: timestamp_required, stale_signature, invalid_signature.

POST/scheduled-syncauth: scheduler

Pooled fan-out, five workers, breaker isolation per connector.

GET/v1/tenant/:tid/*auth: bearer

The single tenant-checked read door; mismatched tenants reject, foreign ids are 404s by construction.

POST/v1/tenant/:tid/intake/sweepauth: bearer

Sweeps a watched storage prefix and returns one disposition per object. Reads the bucket and writes nothing to it: the store interface behind this has two calls and neither is a write. Returns 503 with AT_CONNECTION when no bucket is bound, rather than an empty result that would read as no data.

POST/v1/tenant/:tid/vault/computeauth: bearer

The method vault door: an entitled tenant sends a method name and an evaluation and receives the full-tier result; the method body never travels, only the result does. Unknown methods 404 with the served set; a missing evaluation is a 400.

First call

curl -s https://staging.example/v1/tenant/T/findings -H "authorization: Bearer <token>"

Webhook rejections are the AR-12 contract: timestamp_required, stale_signature past 300 seconds, invalid_signature; conformance-proven, restated on the Integration Center.