Kafka Events

13 Kafka event topics published and consumed by the Vault Service.

Event Format: CloudEvents 1.0

All events follow the CloudEvents 1.0 specification with ce- prefixed headers. Partition key is tenantId or asset_id depending on the topic.

Brokers

EnvironmentBroker URL
Stagingkafka://b-1.eventzr-staging.xxx.kafka.us-east-1.amazonaws.com:9096
Localkafka://localhost:9092

Event Envelope

CloudEvents 1.0 JSON format used by all Kafka messages:

{
  "specversion": "1.0",
  "type": "com.eventzr.vault.asset.created",
  "source": "vault-svc",
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "time": "2026-02-21T10:00:00.000Z",
  "tenantid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "datacontenttype": "application/json",
  "data": {
    "asset_id": "uuid",
    "tenantId": "uuid",
    "filename": "event-poster.jpg",
    "mime_type": "image/jpeg",
    "size_bytes": 2048576,
    "storage_key": "tenants/uuid/assets/uuid/event-poster.jpg",
    "visibility": "private"
  }
}

Published Events (11 topics)

Events produced by vault-svc:

Asset Lifecycle

TopicDescription
eventzr.vault.asset.created.v1Emitted when a new asset is uploaded and persisted in the vault.
eventzr.vault.asset.updated.v1Emitted when asset metadata or visibility is changed.
eventzr.vault.asset.deleted.v1Emitted when an asset is permanently deleted.

Transform Lifecycle

TopicDescription
vault.transforms (ce-type: transform.queued)Emitted when a transform job is queued for processing.
vault.transforms (ce-type: transform.completed)Emitted when a transform job completes successfully.
vault.transforms (ce-type: transform.failed)Emitted when a transform job fails.

Knowledge Graph

TopicDescription
kg.events (ce-type: kg.node.created)Emitted when a vault entity is projected as a Neptune node.
kg.events (ce-type: kg.node.updated)Emitted when a Neptune node is updated.
kg.events (ce-type: kg.node.deleted)Emitted when a Neptune node is deleted.
kg.events (ce-type: kg.relationship.created)Emitted when a Neptune relationship (OWNED_BY, HAS_TRANSFORM, DERIVED_FROM) is created.

Quota

TopicDescription
eventzr.vault.quota.exceeded.v1Emitted when a tenant exceeds a quota limit (storage, assets, transforms).

Consumed Events (2 topics)

Events consumed by vault-svc from other services:

TopicConsumer GroupDescription
billing.subscription-tier-updatedvault-svc-subscription-tier-groupUpdates internal quota limits when a tenant changes subscription tier.
eventzr.tenant.deleted.v1vault-svc-tenant-groupTriggers cascade cleanup of all assets, transforms, and KG nodes for the deleted tenant.