Skip to content

Reference

The desktop app reads appsettings.json under the Attestia section. These map to SidecarConfig:

KeyDefaultDescription
Port0 (auto)Fixed port for the sidecar, or 0 to auto-discover a free port
NodePathnullExplicit path to node.exe; falls back to bundled assets/node/, then system PATH
ServerEntryPointnullExplicit path to main.js; falls back to bundled assets/node/server/dist/main.js
ApiKeynullOptional API key sent as X-Api-Key header on every request
HealthCheckInterval5sHow often the sidecar polls /health
StartupTimeout30sMaximum wait time for the sidecar to become ready
ShutdownTimeout10sMaximum wait time for the sidecar process to exit
AutoRestarttrueWhether to restart the sidecar automatically if it crashes

When using Attestia.Client as a standalone SDK, AttestiaClientConfig accepts:

KeyDefaultDescription
BaseUrl(required)URL of the Attestia backend (e.g., http://localhost:3100)
ApiKeynullOptional API key sent as X-Api-Key header
Timeout30sHTTP request timeout
MaxRetries3Number of retries on 5xx errors (exponential backoff: 200ms, 400ms, 800ms)
ViewWhat it shows
DashboardReal-time overview of active intents, recent events, Merkle root, sidecar status
IntentsFull lifecycle — declare, approve, reject, execute, verify; list and filter by status
Declare IntentForm for creating new intent declarations
Intent DetailSingle intent view with full status history
ProofsMerkle inclusion proof explorer with one-click verification
ReconciliationThree-way matching results with mismatch drill-down
ComplianceFramework mapping and scored compliance reports
EventsImmutable event stream with causation tracking
SettingsSidecar configuration and connection management

The desktop app writes rolling log files to %LOCALAPPDATA%\Attestia\Logs\attestia-{date}.log via Serilog. Logs rotate daily and retain the last 7 files.

AspectDetail
Data accessedIntent declarations, Merkle proofs, reconciliation reports via local Node.js sidecar
Data NOT accessedNo telemetry, no cloud analytics, no credential storage, no direct blockchain writes
PermissionsNetwork to local sidecar (localhost), file system for config and bundled Node.js
API errorsStructured as { code, message, details } via AttestiaException; no raw stack traces exposed

See SECURITY.md for vulnerability reporting.