Audit Trail events are JSON documents whose structure is defined by the structure of the event type that was emitted by a Smart Clause.

A Smart Clause can emit any Concerto event type, though most emit a type that extends Obligation, such as PaymentObligation or NotificationObligation.

A typical PaymentObligation looks like this:

{
"$class":"org.accordproject.cicero.runtime.PaymentObligation",
"amount": {
   "$class":"org.accordproject.money.MonetaryAmount",
   "doubleValue":790,"currencyCode":"USD"
},
"description":"penalty payment owed by Dan to Steve for delivery of fragile goods, including delays",
"contract":"resource:io.clause.demo.fragileGoods.FragileGoodsClause#c6dee898-ef01-4343-b153-223d442a3a0d",
"promisor":"resource:org.accordproject.cicero.contract.AccordParty#Dan",
"promisee":"resource:org.accordproject.cicero.contract.AccordParty#Steve",
"eventId":"valid",
"timestamp":"2019-03-20T11:26:25.351Z",
"$clauseId":"5c9220bf988cb600290591fc",
"$contractId":"5c9220ac988cb600290591fb",
"$templateUri":"ap://fragile-goods@0.9.1#57cd64ae227cc2fc27abb4308eb38f9224945aa1c90c2dc3aa217215639af877",
"$organizationId":"5afad66ccb1324086b9b1b94"
}
Field
Description
$classThe fully-qualified type name of the event type, as defined by the template author
amountFor a PaymentObligation this is a nested MonetaryAmount definition, which includes the amount and the currency code.
descriptionA description of the payment obligation
contractA synthetic property - currently unused and can be ignored
promisorA reference to the promisor for this obligation. The text after the # character is the identifier of the party from the contract.
promiseeA reference to the promisee for this obligation. The text after the # character is the identifier of the party from the contract.
eventIdA synthetic property - currently unused and can be ignored
timestamp
When the obligation was created
$clauseId
The identifier for the Smart Clause. This identifier is displayed in the PDF that is generated and signed by the parties.
$contractId
The identifier for the Smart Legal Contract. This identifier is displayed in the PDF that is generated and signed by the parties. 
$templateUri
The identifier of the template for the Smart Clause that emitted this obligation. Note that the characters after the # are a cryptographically secure SHA-256 hash of the contents of the template. 
$organizationIdThe identifier of the Clause organization that owns the Smart Legal Contract that emitted the obligation