forge
Clone forge-starter
ForgeEventsclosed catalog · 59 types · about Resources
App eventsyour open vocabulary · owner-scoped
One read eachGET /events · GET /app-events

Events

ForgeEvents — the closed catalog, by family

familytypesemitted by
lifecycleApplicationInitialized · EnvironmentProvisioned · DependenciesInstalled · DevServerStarted · DevServerStopped · ProductionArtifactsGeneratedinitialize-app · provision-environment · install-dependencies · run-dev-server · productionize
build · test · lintBuildStarted/Succeeded/Failed · TestRunStarted/Succeeded/Failed · CheckRunStarted/Succeeded/Failedbuild · test · lint
deploy · releaseDeploymentStarted/Completed/RolledBack · ReleaseStarted/Completed/Faileddeploy · release
analysisInspectionCreated · VerificationCompleted · AnalysisCreated · PlanCreatedinspect · verify · explain-failure · generate-feature-plan
schedulerJobScheduled · JobUnscheduled · JobRan · JobRunFailedschedule-job · the ticker
secretsSecretSet · SecretUnsetset-secret · unset-secret
agent · artifactAgentRunSucceeded · AgentRunFailed · ArtifactCreatedagent-run
messagingEmailSent · EmailFailed · MessageSent · MessageFailedsend-email · send-message
identityUserSignedUp · UserVerified · UserAuthenticated · SessionRefreshed · SessionRevoked · PasswordResetRequested · PasswordChanged · OwnerSeeded · UserDeleted · Twofa*the /auth routes
incidentsIncidentOpened · IncidentUpdated · IncidentResolvedthe /status/incidents routes
observability · opsObservabilityConfigured · MonitoringConfigured · EvalRunCompleted · DeliveryCheckCompleted/Failedsetup-observability · provision-monitoring · eval · delivery-check
{ "id": "evt_01J…", "type": "BuildSucceeded", "resource_type": "Build", "resource_id": "res_01J…",
  "app_id": "app_hello", "timestamp": "2026-09-03T14:01:58Z", "actor": { "type": "builder", "id": "cli" }, "data": { "duration_ms": 14100 } }
GET /events?app_id=app_hello&resource_id=res_01J…&limit=20

App events (C3) — what the platform itself writes into your log

typewhendata
mcp.tool_callevery MCP tools/calltool · host · ok · reason?
authz.decision · authz.approvalevery C29 evaluation · a staged action approveddecision · rule · high_risk · action
policy.set · policy.removeda rule written · a rule removedid · effect · owner?
membership.removedremoval · self-leave · teardowngroup_id · removed_owner · via
billing.*checkout_started · trial_started · subscription_updated · customer_deleted · admin_locked/compedplan_key · status · event_type
connector.connected · connector.disconnected · connector.token_issueda provider grant lands · is revoked · a token is mintedprovider · scopes
message.sent · message.failedan outbound send as the userprovider · channel · message_id · error?
anything you chooseyour app's own factsPOST /app-events {owner, type, subject?, data}
POST /app-events   { "app": "hello", "owner": "user_01", "type": "order.placed", "subject": "order:ord_7", "data": { "total": 42.00 } }
GET  /app-events?app=hello&owner=user_01&subject=order:ord_7      newest first
GET  /app-events/latest?app=hello&owner=user_01                     subject → latest