SEIF
Reference

HTTP API

How clients reach the SEIF engine REST surface — OpenAPI is the contract; this page orients integrators and Hub proxy users.

Canonical contract: the engine OpenAPI document at /v1/spec/openapi.json. This page is an orientation, not an endpoint encyclopedia — verify paths and schemas against OpenAPI before coding.

Surfaces that call the engine

ClientHow
seif-web HubBrowser → /api/engine/* (session cookie) → engine with healed engineSessionToken
CLI / MCPBearer API key or login session against the engine base URL
seif-logSeparate transparency service; web uses /api/log/* and /explore

Auth patterns (summary)

PatternUse
OAuth + session exchangeHumans on seif-web (Auth.js → POST /v1/auth/session/exchange)
API keysAutomation / CLI (POST /v1/auth/api-keys after session)
Workspace membership grantsAccess tab → POST …/grants (read|contribute|maintain|admin)

See Access and roles.

Common Hub-facing groups

Exact paths and schemas live in OpenAPI. Conceptually:

GroupPurpose
Auth / sessionLogin exchange, API keys
Workspaces / podsRegistry, sync HEAD (CAS-first)
Membership / grantsAccess tab roles
Artifacts / proposeEnvelope create after human approve
Sign / evidenceProvenance URLs
Verify / log proofsTransparency chain

Example shapes (illustrative — verify against OpenAPI before coding):

MethodPathPurpose
POST/v1/auth/session/exchangeWeb ↔ engine session
POST/v1/signSign content → Evidence URL
GET/v1/verify/:hashVerify by hash
GET/v1/evidence/:idFetch evidence record
POST/v1/classifyClassification gate

CAS-first note

Governance source of truth for Hub + CLI is the CAS HEAD on the engine. Integrators should treat sync HEAD / blob reads as the store of truth for workspace artifacts.

See also

On this page