Payload Format

Prima delivers each notification as an HTTP POST with a Content-Type of application/json and a Date header. The body is a single JSON object.

Common envelope

Every notification — CRUD or lifecycle event — shares these fields:

FieldTypeDescription
EventTimestamp string (ISO 8601) When the event occurred, in UTC.
MessageId string (GUID) Unique id for this notification. Use it to de-duplicate, since delivery is at-least-once.
Event string For CRUD notifications: Add, Modify, or Delete. For lifecycle events: the milestone name (e.g. Stained).
<Entity>Id integer Id of the affected entity (e.g. CaseId, SlideId).
<Entity> object or null The full entity object (e.g. Case, Slide). This is null when the entity was deleted or could not be retrieved — the <Entity>Id is always present.

Field names by notification type

The <Entity>Id and <Entity> fields are named after the entity. The embedded object matches the corresponding model in the REST API.

NotificationId fieldEntity field
CaseCaseIdCase
SpecimenSpecimenIdSpecimen
Cassette / BlockCassetteIdCassette
SlideSlideIdSlide
StudyStudyIdStudy
AnimalAnimalIdAnimal
Tip: See Examples for complete sample payloads and a minimal receiver.