Skip to main content

HMPPS External Events

HMPPS External Events (formerly HMPPS Integration Events) is an events based system which triggers SNS notifications by processing upstream MoJ domain events which are related to the information served by the API. This allows the clients of our API to be notified when a change occurs to a domain that is of interest to them.

Consumers who want to receive Integration Events, will be provided with a dedicated AWS SQS queue that automatically subscribes to notifications for the API endpoints they have access to.

Email hmpps-external-api@justice.gov.uk to request access to this Events service.

Notification Message Structure

The notification message content is a JSON structure containing an event ID, an event type, the URL at which the updated data is available and potentially some additional metadata.

For example:

{
  "eventId":123456,
  "hmppsId":"X688624",
  "eventType":"PERSON_NAME_CHANGED",
  "prisonId":null,
  "url":"http://{api-domain}/events/person-name-changed/X688624",
  "lastModifiedDateTime":"2025-10-13T12:42:00.002387"
}

Available Events

Below is a list of all the events that you can currently receive notifications about if something changes. It details the endpoints the events relate to, and information about what triggers an event to be sent.

Dynamic Risks Changed

  • Endpoint: /v1/persons/{hmppsId}/risks/dynamic
  • Event ID: DYNAMIC_RISKS_CHANGED
  • Triggered by:
    • ProbationCase.Registration.ADDED
    • ProbationCase.Registration.UPDATED
    • ProbationCase.Registration.DELETED
    • ProbationCase.Registration.DEREGISTERED
  • As well as one of the following dynamic risks register types being present:
    • Child Concerns (RCCO)
      • Safeguarding concerns where a child is at risk from the offender.
    • Child Protection (RCPR)
      • Child is subject to a protection plan/conference
    • Risk to Vulnerable Adult (RVAD)
    • Street Gangs (STRG)
      • Involved in serious group offending
    • ViSOR Record (AVIS)
      • Subject has a ViSOR record
    • Weapons (WEAP)
      • Known to use/carry weapon
    • Low Risk of Serious Harm (RLRH)
    • Medium Risk of Serious Harm (RMRH)
    • High Risk of Serious Harm (RHRH)

Probation Status Changed

  • Endpoint: /v1/persons/{hmppsId}/status-information
  • Event ID: PROBATION_STATUS_CHANGED
  • Triggered By:
    • ProbationCase.Registration.ADDED
    • ProbationCase.Registration.UPDATED
    • ProbationCase.Registration.DELETED
    • ProbationCase.Registration.DEREGISTERED
  • As well as one of the following probation status register types being present:
    • Outstanding Warrant or Summons (WRSM)

MAPPA Detail Changed

  • Endpoint: /v1/persons/{hmppsId}/risks/mappadetail
  • Event ID: MAPPA_DETAIL_CHANGED
  • Triggered By:
    • ProbationCase.Registration.ADDED
    • ProbationCase.Registration.UPDATED
    • ProbationCase.Registration.DELETED
    • ProbationCase.Registration.DEREGISTERED
  • As well as one of the following MAPPA detail register types being present:
    • Multi-Agency Public Protection Arrangements (MAPP)

Risk Score Changed

  • Endpoint: /v1/persons/{hmppsId}/risks/scores
  • Event ID: RISK_SCORE_CHANGED
  • Triggered By:
    • ProbationCase.RiskScores.OGRS.MANUAL_CALCULATION
    • RiskAssessment.Scores.OGRS.DETERMINED
    • RiskAssessment.Scores.RSR.DETERMINED

Key Dates and Adjustments Prisoner Release

  • Endpoint: /v1/persons/{hmppsId}/sentences/latest-key-dates-and-adjustments
  • Event ID: KEY_DATES_AND_ADJUSTMENTS_PRISONER_RELEASE
  • Triggered By:
    • New Person Events:
      • ProbationCase.Engagement.CREATED
      • ProbationCase.PrisonIdentifier.ADDED
      • PrisonerOffenderSearch.Prisoner.CREATED
      • PrisonerOffenderSearch.Prisoner.RECEIVED
    • OR Release/Sentence Events:
      • PrisonerOffenderSearch.Prisoner.RELEASED
      • PrisonOffenderEvents.Prisoner.RELEASED
      • CalculateReleaseDates.Prisoner.CHANGED

Licence Condition Changed

  • Endpoint: /v1/persons/{hmppsId}/licences/conditions
  • Event ID: LICENCE_CONDITION_CHANGED
  • Triggered By:
    • CreateAndVaryALicence.Licence.ACTIVATED
    • CreateAndVaryALicence.Licence.INACTIVATED

Risk of Serious Harm Changed

  • Endpoint: /v1/persons/{hmppsId}/risks/serious-harm
  • Event ID: RISK_OF_SERIOUS_HARM_CHANGED
  • Triggered By:
    • Assessment.Summary.PRODUCED

PLP Induction Schedule Changed

  • Endpoint: /v1/persons/{hmppsId}/plp-induction-schedule/history
  • Event ID: PLP_INDUCTION_SCHEDULE_CHANGED
  • Triggered By:
    • PLP.InductionSchedule.UPDATED

PLP Review Schedule Changed

  • Endpoint: /v1/persons/{hmppsId}/plp-review-schedule
  • Event ID: PLP_REVIEW_SCHEDULE_CHANGED
  • Triggered By:
    • PLP.ReviewSchedule.UPDATED

Person Status Changed

  • Endpoint: /v1/persons/{hmppsId}
  • Event ID: PERSON_STATUS_CHANGED
  • Triggered By:
    • ProbationCase.Engagement.CREATED
    • ProbationCase.PrisonIdentifier.ADDED
    • PrisonerOffenderSearch.Prisoner.CREATED
    • PrisonerOffenderSearch.Prisoner.UPDATED
    • PrisonerOffenderSearch.Prisoner.RECEIVED
    • PrisonOffenderEvents.Prisoner.MERGED

Person Address Changed

  • Endpoint: /v1/persons/{hmppsId}/addresses
  • Event ID: PERSON_ADDRESS_CHANGED
  • Triggered By:
    • New Person Events:
      • ProbationCase.Engagement.CREATED
      • ProbationCase.PrisonIdentifier.ADDED
      • PrisonerOffenderSearch.Prisoner.CREATED
      • PrisonerOffenderSearch.Prisoner.RECEIVED
    • OR Address Events:
      • ProbationCase.Address.CREATED
      • ProbationCase.Address.UPDATED
      • ProbationCase.Address.DELETED

Person Contacts Changed

  • Endpoint: /v1/persons/{hmppsId}/contacts
  • Event ID: PERSON_CONTACTS_CHANGED
  • Triggered By:
    • New Person Events:
      • ProbationCase.Engagement.CREATED
      • ProbationCase.PrisonIdentifier.ADDED
      • PrisonerOffenderSearch.Prisoner.CREATED
      • PrisonerOffenderSearch.Prisoner.RECEIVED
    • OR Contact Events:
      • PrisonOffenderEvents.Prisoner.CONTACT_ADDED
      • PrisonOffenderEvents.Prisoner.CONTACT_APPROVED
      • PrisonOffenderEvents.Prisoner.CONTACT_UNAPPROVED
      • PrisonOffenderEvents.Prisoner.CONTACT_REMOVED

Person IEP Level Changed

  • Endpoint: /v1/persons/{hmppsId}/iep-level
  • Event ID: PERSON_IEP_LEVEL_CHANGED
  • Triggered By:
    • New Person Events:
      • ProbationCase.Engagement.CREATED
      • ProbationCase.PrisonIdentifier.ADDED
      • PrisonerOffenderSearch.Prisoner.CREATED
      • PrisonerOffenderSearch.Prisoner.RECEIVED
    • OR IEP Review Events:
      • Incentives.IEPReview.INSERTED
      • Incentives.IEPReview.UPDATED
      • Incentives.IEPReview.DELETED

Person Visitor Restrictions Changed

  • Endpoint: /v1/persons/{hmppsId}/visitor/{contactId}/restrictions
  • Event ID: PERSON_VISITOR_RESTRICTIONS_CHANGED
  • Triggered By:
    • PrisonOffenderEvents.Prisoner.PersonRestriction.UPSERTED
    • PrisonOffenderEvents.Prisoner.PersonRestriction.DELETED

Person Visit Restrictions Changed

  • Endpoint: /v1/persons/{hmppsId}/visit-restrictions
  • Event ID: PERSON_VISIT_RESTRICTIONS_CHANGED
  • Triggered By:
    • New Person Events:
      • ProbationCase.Engagement.CREATED
      • ProbationCase.PrisonIdentifier.ADDED
      • PrisonerOffenderSearch.Prisoner.CREATED
      • PrisonerOffenderSearch.Prisoner.RECEIVED
    • OR PrisonOffenderEvents.Prisoner.Restriction.CHANGED

Person Future Visits Changed

  • Endpoint: /v1/persons/{hmppsId}/visits/future
  • Event ID: PERSON_FUTURE_VISITS_CHANGED
  • Triggered By:
    • PrisonVisit.BOOKED
    • PrisonVisit.CHANGED
    • PrisonVisit.CANCELLED

Person Alerts Changed

  • Endpoint: /v1/persons/{hmppsId}/alerts
  • Event ID: PERSON_ALERTS_CHANGED
  • Triggered By:
    • New Person Events:
      • ProbationCase.Engagement.CREATED
      • ProbationCase.PrisonIdentifier.ADDED
      • PrisonerOffenderSearch.Prisoner.CREATED
      • PrisonerOffenderSearch.Prisoner.RECEIVED
    • OR Alert Events:
      • Person.Alert.CREATED
      • Person.Alert.CHANGED
      • Person.Alert.UPDATED
      • Person.Alert.DELETED

Person PND Alerts Changed

  • Endpoint: /v1/pnd/persons/{hmppsId}/alerts
  • Event ID: PERSON_PND_ALERTS_CHANGED
  • Triggered By:
    • New Person Events:
      • ProbationCase.Engagement.CREATED
      • ProbationCase.PrisonIdentifier.ADDED
      • PrisonerOffenderSearch.Prisoner.CREATED
      • PrisonerOffenderSearch.Prisoner.RECEIVED
    • OR Alert Events:
      • Person.Alert.CREATED
      • Person.Alert.CHANGED
      • Person.Alert.UPDATED
      • Person.Alert.DELETED
  • As well as one of the following PND alert types being present:
    • BECTER, HA, XA, XCA, XEL, XELH, XER, XHT, XILLENT, XIS, XR, XRF, XSA, HA2, RCS, RDV, RKC, RPB, RPC, RSS, RST, RDP, REG, RLG, ROP, RRV, RTP, RYP, HS, SC

Person Case Notes Changed

  • Endpoint: /v1/persons/{hmppsId}/case-notes
  • Event ID: PERSON_CASE_NOTES_CHANGED
  • Triggered By:
    • New Person Events:
      • ProbationCase.Engagement.CREATED
      • ProbationCase.PrisonIdentifier.ADDED
      • PrisonerOffenderSearch.Prisoner.CREATED
      • PrisonerOffenderSearch.Prisoner.RECEIVED
    • OR Case Note Events:
      • Person.CaseNote.CREATED
      • Person.CaseNote.UPDATED
      • Person.CaseNote.DELETED

Person Name Changed

  • Endpoint: /v1/persons/{hmppsId}/name
  • Event ID: PERSON_NAME_CHANGED
  • Triggered By:
    • New Person Events:
      • ProbationCase.Engagement.CREATED
      • ProbationCase.PrisonIdentifier.ADDED
      • PrisonerOffenderSearch.Prisoner.CREATED
      • PrisonerOffenderSearch.Prisoner.RECEIVED
    • OR PrisonerOffenderSearch.Prisoner.UPDATED (when PERSONAL_DETAILS category has been changed)

Person Cell Location Changed

  • Endpoint: /v1/persons/{hmppsId}/cell-location
  • Event ID: PERSON_CELL_LOCATION_CHANGED
  • Triggered By:
    • New Person Events:
      • ProbationCase.Engagement.CREATED
      • ProbationCase.PrisonIdentifier.ADDED
      • PrisonerOffenderSearch.Prisoner.CREATED
      • PrisonerOffenderSearch.Prisoner.RECEIVED
    • OR PrisonerOffenderSearch.Prisoner.UPDATED (when LOCATION category has been changed)

Person Sentences Changed

  • Endpoint: /v1/persons/{hmppsId}/sentences
  • Event ID: PERSON_SENTENCES_CHANGED
  • Triggered By:
    • New Person Events:
      • ProbationCase.Engagement.CREATED
      • ProbationCase.PrisonIdentifier.ADDED
      • PrisonerOffenderSearch.Prisoner.CREATED
      • PrisonerOffenderSearch.Prisoner.RECEIVED
    • OR PrisonerOffenderSearch.Prisoner.UPDATED (when SENTENCE category has been changed)

Person Responsible Officer Changed

  • Endpoint: /v1/persons/{hmppsId}/person-responsible-officer
  • Event ID: PERSON_RESPONSIBLE_OFFICER_CHANGED
  • Triggered By:
    • New Person Events:
      • ProbationCase.Engagement.CREATED
      • ProbationCase.PrisonIdentifier.ADDED
      • PrisonerOffenderSearch.Prisoner.CREATED
      • PrisonerOffenderSearch.Prisoner.RECEIVED
    • OR Responsible Officer Events:
      • Person.Community.Manager.ALLOCATED
      • Person.Community.Manager.TRANSFERRED
      • Probation.Staff.UPDATED

Person Protected Characteristics Changed

  • Endpoint: /v1/persons/{hmppsId}/protected-characteristics
  • Event ID: PERSON_PROTECTED_CHARACTERISTICS_CHANGED
  • Triggered By:
    • New Person Events:
      • ProbationCase.Engagement.CREATED
      • ProbationCase.PrisonIdentifier.ADDED
      • PrisonerOffenderSearch.Prisoner.CREATED
      • PrisonerOffenderSearch.Prisoner.RECEIVED

Person Reported Adjudications Changed

  • Endpoint: /v1/persons/{hmppsId}/reported-adjudications
  • Event ID: PERSON_REPORTED_ADJUDICATIONS_CHANGED
  • Triggered By:
    • New Person Events:
      • ProbationCase.Engagement.CREATED
      • ProbationCase.PrisonIdentifier.ADDED
      • PrisonerOffenderSearch.Prisoner.CREATED
      • PrisonerOffenderSearch.Prisoner.RECEIVED
    • OR Adjudication Events:
      • Adjudication.Hearing.CREATED
      • Adjudication.Hearing.DELETED
      • Adjudication.Hearing.COMPLETED
      • Adjudication.Punishments.CREATED
      • Adjudication.Report.CREATED

Person Number of Children Changed

  • Endpoint: /v1/persons/{hmppsId}/number-of-children
  • Event ID: PERSON_NUMBER_OF_CHILDREN_CHANGED
  • Triggered By:
    • New Person Events:
      • ProbationCase.Engagement.CREATED
      • ProbationCase.PrisonIdentifier.ADDED
      • PrisonerOffenderSearch.Prisoner.CREATED
      • PrisonerOffenderSearch.Prisoner.RECEIVED

Person Physical Characteristics Changed

  • Endpoint: /v1/persons/{hmppsId}/physical-characteristics
  • Event ID: PERSON_PHYSICAL_CHARACTERISTICS_CHANGED
  • Triggered By:
    • New Person Events:
      • ProbationCase.Engagement.CREATED
      • ProbationCase.PrisonIdentifier.ADDED
      • PrisonerOffenderSearch.Prisoner.CREATED
      • PrisonerOffenderSearch.Prisoner.RECEIVED
    • OR PrisonerOffenderSearch.Prisoner.UPDATED (when PHYSICAL_DETAILS category has been changed)

Person Images Changed

  • Endpoint: /v1/persons/{hmppsId}/images
  • Event ID: PERSON_IMAGES_CHANGED
  • Triggered By:
    • New Person Events:
      • ProbationCase.Engagement.CREATED
      • ProbationCase.PrisonIdentifier.ADDED
      • PrisonerOffenderSearch.Prisoner.CREATED
      • PrisonerOffenderSearch.Prisoner.RECEIVED

Prisoners Changed

  • Endpoint: /v1/prison/prisoners
  • Event ID: PRISONERS_CHANGED
  • Triggered By:
    • PrisonerOffenderSearch.Prisoner.CREATED
    • PrisonerOffenderSearch.Prisoner.UPDATED
    • PrisonerOffenderSearch.Prisoner.RECEIVED

Prisoner Changed

  • Endpoint: /v1/prison/prisoners/{hmppsId}
  • Event ID: PRISONER_CHANGED
  • Triggered By:
    • PrisonerOffenderSearch.Prisoner.CREATED
    • PrisonerOffenderSearch.Prisoner.UPDATED
    • PrisonerOffenderSearch.Prisoner.RECEIVED

Prisoner Non-Associations Changed

  • Endpoint: /v1/prison/{prisonId}/prisoners/{hmppsId}/non-associations
  • Event ID: PRISONER_NON_ASSOCIATIONS_CHANGED
  • Triggered By:
    • New Prisoner Events:
      • PrisonerOffenderSearch.Prisoner.CREATED
      • PrisonerOffenderSearch.Prisoner.RECEIVED
    • OR PrisonOffenderEvents.Prisoner.NonAssociationDetail.CHANGED

Prison Visits Changed

  • Endpoint: /v1/prison/{prisonId}/visit/search
  • Event ID: PRISON_VISITS_CHANGED
  • Triggered By:
    • PrisonVisit.BOOKED
    • PrisonVisit.CHANGED
    • PrisonVisit.CANCELLED

Prison Residential Hierarchy Changed

  • Endpoint: /v1/prison/{prisonId}/residential-hierarchy
  • Event ID: PRISON_RESIDENTIAL_HIERARCHY_CHANGED
  • Triggered By:
    • LocationsInsidePrison.Location.CREATED
    • LocationsInsidePrison.Location.AMENDED
    • LocationsInsidePrison.Location.DELETED
    • LocationsInsidePrison.Location.DEACTIVATED
    • LocationsInsidePrison.Location.REACTIVATED

Prison Location Changed

  • Endpoint: /v1/prison/{prisonId}/location/{locationKey}
  • Event ID: PRISON_LOCATION_CHANGED
  • Triggered By:
    • LocationsInsidePrison.Location.CREATED
    • LocationsInsidePrison.Location.AMENDED
    • LocationsInsidePrison.Location.DELETED
    • LocationsInsidePrison.Location.DEACTIVATED
    • LocationsInsidePrison.Location.REACTIVATED

Prison Residential Details Changed

  • Endpoint: /v1/prison/{prisonId}/residential-details
  • Event ID: PRISON_RESIDENTIAL_DETAILS_CHANGED
  • Triggered By:
    • LocationsInsidePrison.Location.CREATED
    • LocationsInsidePrison.Location.AMENDED
    • LocationsInsidePrison.Location.DELETED
    • LocationsInsidePrison.Location.DEACTIVATED
    • LocationsInsidePrison.Location.REACTIVATED

Prison Capacity Changed

  • Endpoint: /v1/prison/{prisonId}/capacity
  • Event ID: PRISON_CAPACITY_CHANGED
  • Triggered By:
    • LocationsInsidePrison.Location.CREATED
    • LocationsInsidePrison.Location.DELETED
    • LocationsInsidePrison.Location.DEACTIVATED
    • LocationsInsidePrison.Location.REACTIVATED
    • LocationsInsidePrison.SignedOpCapacity.AMENDED

Visit Changed

  • Endpoint: /v1/visit/{visitReference}
  • Event ID: VISIT_CHANGED
  • Triggered By:
    • PrisonVisit.BOOKED
    • PrisonVisit.CHANGED
    • PrisonVisit.CANCELLED

Person Health and Diet Changed

  • Endpoint: /v1/persons/{hmppsId}/health-and-diet
  • Event ID: PERSON_HEALTH_AND_DIET_CHANGED
  • Triggered By:
    • New Person Events:
      • ProbationCase.Engagement.CREATED
      • ProbationCase.PrisonIdentifier.ADDED
      • PrisonerOffenderSearch.Prisoner.CREATED
      • PrisonerOffenderSearch.Prisoner.RECEIVED

Person Care Needs Changed

  • Endpoint: /v1/persons/{hmppsId}/care-needs
  • Event ID: PERSON_CARE_NEEDS_CHANGED
  • Triggered By:
    • New Person Events:
      • ProbationCase.Engagement.CREATED
      • ProbationCase.PrisonIdentifier.ADDED
      • PrisonerOffenderSearch.Prisoner.CREATED
      • PrisonerOffenderSearch.Prisoner.RECEIVED

Person Languages Changed

  • Endpoint: /v1/persons/{hmppsId}/languages
  • Event ID: PERSON_LANGUAGES_CHANGED
  • Triggered By:
    • New Person Events:
      • ProbationCase.Engagement.CREATED
      • ProbationCase.PrisonIdentifier.ADDED
      • PrisonerOffenderSearch.Prisoner.CREATED
      • PrisonerOffenderSearch.Prisoner.RECEIVED

Person Education Assessment Changed

  • Endpoint: /v1/persons/{hmppsId}/education/assessments
  • Event ID: PERSON_EDUCATION_ASSESSMENTS_CHANGED
  • Triggered By:
    • OR PrisonerOffenderSearch.Prisoner.UPDATED (when LOCATION category has been changed)
    • OR PrisonerOffenderSearch.Prisoner.UPDATED (when SENTENCE category has been changed)

Prisoner Base Location Changed

  • Endpoint: /v1/persons/{hmppsId}/prisoner-base-location
  • Event ID: PRISONER_BASE_LOCATION_CHANGED
  • Triggered By:
    • OR PrisonOffenderEvents.Prisoner.RECEIVED (when reason is changed to ADMISSION or TRANSFERRED)
    • OR PrisonOffenderEvents.Prisoner.RELEASED (when reason is RELEASED)

This page was last reviewed on 13 October 2025. It needs to be reviewed again on 13 April 2026 by the page owner #hmpps-integration-api-alerts .