Skip to content

StartupTemplate.promoted

Emitted each time a Startup Template is promoted.

StartupTemplate.promote emits StartupTemplate.promoted when it completes on a Startup Template.

PropertyValue
Emitted byStartupTemplate.promote
NounStartup Template
WakesNone.

Payload

Each delivery is an Event record. data holds what StartupTemplate.promote returns.

FieldTypeRequiredDescription
namestringrequiredStartupTemplate.promoted.
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.changeChangerequiredThe Change against the Startup Template.
data.startupTemplateStartup TemplaterequiredThe Startup Template that received the refinement.
data.startupTemplate.slugstringrequiredThe argument to create --template and the page path under /start/templates.
data.startupTemplate.operatingModelstringrequiredThe human and Agent mix: autonomous, single-human, or multi-human.
data.startupTemplate.motionsstring[]requiredThe Motions its Offers sell through, such as b2b or b2a.
data.startupTemplate.extendsStartup TemplateThe base Startup Template whose Product Templates, Systems, Processes, and Roles it inherits.

Example

JSON
{
  "$id": "https://api.sb/tutorloop.com/events/event_1",
  "$type": "Event",
  "name": "StartupTemplate.promoted",
  "at": "2026-10-22T12:00:00Z",
  "data": {
    "change": {
      "$id": "https://api.sb/tutorloop.com/changes/change_1",
      "$type": "Change",
      "status": "Open",
      "base": "version_1"
    },
    "startupTemplate": {
      "$id": "https://api.sb/tutorloop.com/startup-templates/startup_template_1",
      "$type": "StartupTemplate",
      "slug": "tutor-loop",
      "operatingModel": "autonomous",
      "motions": [
        "Example motions"
      ],
      "extends": "startup_template_1"
    }
  },
  "seq": 1
}