app.tenant_id_assigned
An app has bound its local tenant identifier to a canonical RBS org for the first time (or backfilled an existing binding). NOT routed via the standard webhook bus — producer calls CPR POST /api/v1/internal/tenant-mapping/upsert directly with X-RBS-Auth: App HMAC. Receiver list is empty because no app-side handler exists; the consumer is the Control Plane (ecosystem.redbroomsoftware.com). Topic 25 Phase 3 substrate — populates app_tenant_mappings junction. Senders list will grow as each app's producer wires (caracol first per S381 Phase 1 Session 3).
Senders
caracolcomalmanchaagente
Receivers
None declared.
Data schema
Each field maps to a type hint. | null indicates an optional field.
{
"rbs_org_id": "string (Colectiva ecosystem_orgs doc ID)",
"app": "string (AppSlug — must match sender, asserted via X-RBS-Auth: App principal)",
"local_tenant_id": "string (app-local tenant identifier)",
"source": "string ('producer' | 'backfill')",
"occurred_at": "string (ISO datetime)"
}Example payload
The following is a synthetic payload that matches the schema. Production payloads are signed with HMAC-SHA256 and delivered to each receiver's registered webhook endpoint.
{
"rbs_org_id": "example-rbs_org_id",
"app": "example-app",
"local_tenant_id": "example-local_tenant_id",
"source": "'producer'",
"occurred_at": "2026-04-17T12:00:00.000Z"
}See also
Generated from ecosystem-sdk/packages/mcp-server/src/registry/events.json. Do not edit by hand.