HMPPS domain events are intended to capture and broadcast the occurrence of significant activity in an HMPPS domain. They can be used to facilitate choreographed processes across HMPPS systems. Capturing and publishing business-level events as workflows are completed in different systems supports the architectural direction of HMPPS, which is based on small, domain-oriented services working together to support justice system processes.
HMPPS domain event messages must conform to the JSON Schema for domain events defined here.
ASyncAPI schemas for individual domain event messages are here
HMPPS domain events may be published as notifications to a shared SNS topic. There is a topic for each application environment:
Message filtering for SQS queues may be done using the eventType
message
attribute.
Message flows in the development environment can be viewed using the Offender Events UI
Domain event messages in all environments are logged to Application Insights via the HMPPS Domain Event Logger
Validation of example messages:
check-jsonschema --schemafile=schema/hmpps-domain-event.json <example-message.json>