Skip to content

Agreement.terminated

Emitted each time an Agreement is terminated.

Agreement.terminate emits Agreement.terminated when it completes on an Agreement.

PropertyValue
Emitted byAgreement.terminate
NounAgreement
MovesAgreement signed to terminated
WakesNone.

Payload

Each delivery is an Event record. data holds what Agreement.terminate returns, and previous holds the state it left.

FieldTypeRequiredDescription
namestringrequiredAgreement.terminated.
atdatetimerequiredWhen it happened.
seqintegerIts position in the namespace, one more than the Event before; any seq is a cursor into the history.
datajsonrequiredThe Thing as the Action left it.
data.agreementAgreementrequiredThe terminated Agreement, kept forever.
data.agreement.termtextHow long it runs and how it ends.
data.agreement.signedAtdatetimeWhen the last Party signed.
data.agreement.terminatedAtdatetimeWhen it ended under its term; it stays on record.
data.agreement.payoutSchedulestringFor a Supplier’s Agreement: how often the released earned balance pays out.
data.agreement.clearanceDaysintegerFor a Supplier’s Agreement: days an Order’s earnings wait after confirmation before they can pay out.
data.agreement.statusstringrequiredOne of draft, signed or terminated.
data.previous.statusstringrequiredThe status before this Event: signed.

Example

JSON
{
  "$id": "https://api.sb/quietcopy.com/events/event_1",
  "$type": "Event",
  "name": "Agreement.terminated",
  "at": "2026-10-22T12:00:00Z",
  "data": {
    "agreement": {
      "$id": "https://api.sb/quietcopy.com/agreements/agreement_1",
      "$type": "Agreement",
      "term": "Example term",
      "signedAt": "2026-10-22T12:00:00Z",
      "terminatedAt": "2026-10-22T12:00:00Z",
      "payoutSchedule": "daily",
      "clearanceDays": 1,
      "status": "terminated"
    },
    "previous": {
      "status": "signed"
    }
  },
  "seq": 1
}