Audit log
BetaEvery action against the CPQ is captured, queryable, and replayable. Salesforce CPQ’s audit log records what happened. Campus Dyno’s audit log lets an agent reproduce it.
What gets logged
- Every quote create, line-item change, discount edit, approval request, approval decision, send, signature, expiry.
- The actor on every event: magic-link user, tenant API key, or the (agent, on-behalf-of-user) pair.
- The deterministic inputs at the time of the action (line items, discount %, framework agreement ID, approval state).
- The computed outputs the deterministic engine produced (net price, line totals, tax, approval routing decision).
- A causally-ordered event sequence per quote.
Why agents care
When an external agent reads the audit log, it can answer questions the rep is about to ask: “why is this quote $X and not $Y,” “who approved this discount,” “what was the state when the customer signed.” Because pricing is deterministic, the agent can replay a past action with the same inputs and verify the engine returns the same numbers. That’s the property that lets the agent draft updated quotes against historical state without guessing.
Query API (beta)
GET /v1/audit with filters: tenant, user_id, agent_id, action_type, quote_id, time range. Cursor pagination for long sequences. Response shape is stable but not all filters are exposed in beta.
Replay (beta)
POST /v1/audit/replay with an event ID returns the same deterministic outputs the original action produced. Useful for: (a) auditors reconstructing a SOX-style trail, (b) agents reasoning about “what if the rep had asked for 5% more discount on this same line set,” (c) finance re-running totals when a tax rate retroactively changes.
Retention
Default retention is the lifetime of the tenant. Customers running Campus Dyno as owned code control their own retention policy at the database level.
Limits in beta
- Query pagination is cursor-based, but the cursor format is internal. Treat it as opaque.
- Some action types are logged with thinner detail than others (this is being normalized).
- Replay is supported for pricing actions. Replay for approval-routing decisions is on the roadmap.