Domain Event
Describes a domain event in an event-driven scalable architecture, following CloudEvents conventions. Domain events enable loose coupling between microservices through async message passing over Kafka, RabbitMQ, or cloud message brokers.
Cloud ArchitectureCloud-NativeDistributed SystemsHigh AvailabilityInfrastructureMicroservicesPerformanceResilienceScalabilityService Mesh
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/scalable-architecture/main/json-schema/scalable-architecture-event-schema.json",
"title": "Domain Event",
"description": "Describes a domain event in an event-driven scalable architecture, following CloudEvents conventions. Domain events enable loose coupling between microservices through async message passing over Kafka, RabbitMQ, or cloud message brokers.",
"type": "object",
"required": ["id", "source", "specversion", "type"],
"properties": {
"specversion": {
"type": "string",
"description": "CloudEvents specification version.",
"const": "1.0"
},
"id": {
"type": "string",
"description": "Unique identifier for this event occurrence.",
"format": "uuid",
"example": "96fb5f0b-001e-0108-6d02-a85e0000000"
},
"source": {
"type": "string",
"description": "URI identifying the context in which the event occurred (typically the originating service).",
"format": "uri",
"example": "/orders/service"
},
"type": {
"type": "string",
"description": "Event type in reverse-DNS notation describing the kind of occurrence.",
"pattern": "^[a-z][a-z0-9.]+$",
"examples": [
"com.example.orders.created",
"com.example.payments.completed",
"com.example.inventory.updated"
]
},
"subject": {
"type": "string",
"description": "Identifies the subject of the event in the context of the source (e.g., entity ID).",
"example": "order-12345"
},
"datacontenttype": {
"type": "string",
"description": "Content type of the event data.",
"default": "application/json",
"examples": ["application/json", "application/avro"]
},
"dataschema": {
"type": "string",
"description": "URI identifying the schema for the event data payload.",
"format": "uri"
},
"time": {
"type": "string",
"description": "Timestamp of when the event occurred in RFC3339 format.",
"format": "date-time",
"example": "2026-05-02T14:30:00Z"
},
"data": {
"type": "object",
"description": "Domain event payload specific to the event type.",
"additionalProperties": true
},
"partitionkey": {
"type": "string",
"description": "Key used to route the event to a specific Kafka partition for ordering guarantees.",
"example": "customer-456"
},
"correlationid": {
"type": "string",
"description": "Correlation ID for tracing a business transaction across multiple services.",
"format": "uuid"
},
"causationid": {
"type": "string",
"description": "ID of the command or event that caused this event (event sourcing lineage).",
"format": "uuid"
},
"metadata": {
"type": "object",
"description": "Additional metadata properties for routing, filtering, and tracing.",
"properties": {
"retryCount": {
"type": "integer",
"description": "Number of times this event has been retried.",
"minimum": 0,
"default": 0
},
"deadLetterQueue": {
"type": "boolean",
"description": "Whether this event has been moved to the dead letter queue.",
"default": false
},
"version": {
"type": "integer",
"description": "Schema version for event evolution.",
"minimum": 1,
"default": 1
}
}
}
}
}
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.
apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
resolveTurn a domain, URL or GitHub org into the provider it belongs to.
find_cohortsEvery scored population of providers in the catalog.
All 92 tools
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/scalable-architecture-event"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no email required.
A second provider on the same verified email joins the account you already have.