# AuditEntry

> Tracon documentation. Tracon is a .NET package family that adds a control
> plane on Microsoft Agent Framework, published as NuGet packages that run
> inside your own ASP.NET Core application.
>
> Page: https://tracon.dev/http-api/schemas/auditentry/
> Summary: OpenAPI request or response schema for AuditEntry, including required fields, defaults, constraints, and linked nested types.

[← All HTTP schemas](/http-api/schemas/)

A row in the audit trail that records who changed which entity and when.

**Shape:** `object`

| Property | Required | Type | Description | Rules |
|---|---|---|---|---|
| `id` | yes | `string (uuid)` | Gets the record id. A time-ordered UUID (v7). | — |
| `tenantId` | yes | `string` | Gets the tenant the change belongs to. | — |
| `actor` | no | `string` | Gets the actor that made the change. It is `null` when there is no authentication or the actor cannot be resolved; that state is not hidden. | — |
| `action` | yes | `string` | Gets the action name, for example `agent.update`. | — |
| `entity` | yes | `string` | Gets the affected entity, for example `agent:support`. | — |
| `before` | no | `string` | Gets the state before the change, as JSON text. Tracon's own write path removes secret-named fields first; a caller that writes to IAuditLog directly must not put a secret value here. | — |
| `after` | no | `string` | Gets the state after the change, as JSON text. Tracon's own write path removes secret-named fields first; a caller that writes to IAuditLog directly must not put a secret value here. | — |
| `createdAt` | yes | `string (date-time)` | Gets the time the record was written (UTC). | — |
| `previousHash` | no | `string` | Gets the hash of the previous entry of the same tenant. `null` for the first entry of a tenant. | — |
| `hash` | no | `string` | Gets the hash of this entry: a SHA-256 over a canonical form of its fields that also includes the previous entry's hash, so changing an earlier entry breaks every later link. The write path computes this value; a caller-supplied value is ignored. | — |
