GCC Build OSv0
/api

UserAddedevent type

A user was added to a tenant. Creates the Stakeholder node; downstream RoleAssigned events attach RACI edges to specific objects.

Full spec

{
  "name": "UserAdded",
  "description": "A user was added to a tenant. Creates the Stakeholder node; downstream RoleAssigned events attach RACI edges to specific objects.",
  "current_version": 1,
  "actor_type_allowed": [
    "human",
    "system"
  ],
  "object_type": "Stakeholder",
  "payload_versions": {
    "v1": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "stakeholder_id",
        "tenant_id",
        "user_type",
        "tenant_role",
        "email_hash",
        "added_by"
      ],
      "properties": {
        "stakeholder_id": {
          "type": "string",
          "format": "uuid"
        },
        "tenant_id": {
          "type": "string",
          "format": "uuid"
        },
        "user_type": {
          "type": "string",
          "enum": [
            "bootminds_staff",
            "client_admin",
            "client_stakeholder",
            "client_executive"
          ]
        },
        "tenant_role": {
          "type": "string",
          "enum": [
            "admin",
            "programme_lead",
            "stakeholder",
            "executive_viewer"
          ]
        },
        "email_hash": {
          "type": "string",
          "minLength": 1,
          "description": "Salted hash of the user's email; the raw email lives in the shared metadata DB, not in tenant events, for cross-tenant identity portability."
        },
        "display_name": {
          "type": "string"
        },
        "added_by": {
          "type": "string",
          "format": "uuid"
        },
        "invite_method": {
          "type": "string",
          "enum": [
            "magic_link",
            "idp_federation",
            "manual"
          ]
        }
      }
    }
  },
  "projections_consuming": [
    "stakeholders_view",
    "audit_log"
  ],
  "canonicalizer_module": "event-canonicalizers/user_added.ts"
}