Overview
Event that is published by CaaS to NSP once when participants become eligible
{ "$schema": "http://json-schema.org/draft-07/schema#", "title": "CaaS Eligible Participant Event Schema", "description": "Schema for the CaaSEligibleParticipant event that represents a participant becoming eligible for the Cervical Screening Programme", "type": "object", "required": [ "participantId", "nhsNumber", "dateOfBirth", "eligibilityDate", "eligibilityType", "recordedBy", "recordedAt" ], "properties": { "participantId": { "type": "string", "description": "Unique identifier for the participant" }, "nhsNumber": { "type": "string", "pattern": "^[0-9]{10}$", "description": "NHS number of the participant" }, "dateOfBirth": { "type": "string", "format": "date", "description": "Participant's date of birth" }, "eligibilityDate": { "type": "string", "format": "date", "description": "Date when the participant becomes eligible" }, "eligibilityType": { "type": "string", "enum": [ "INITIAL_ELIGIBILITY", "ROUTINE_RECALL", "FOLLOW_UP", "SPECIAL_CASE" ], "description": "Type of eligibility" }, "recordedBy": { "type": "string", "description": "Identifier of the person recording the eligibility" }, "recordedAt": { "type": "string", "format": "date-time", "description": "ISO 8601 timestamp when the eligibility was recorded" }, "personalDetails": { "type": "object", "properties": { "firstName": { "type": "string", "description": "Participant's first name" }, "lastName": { "type": "string", "description": "Participant's last name" }, "gender": { "type": "string", "enum": ["FEMALE", "OTHER", "NOT_SPECIFIED"], "description": "Participant's gender" }, "postcode": { "type": "string", "pattern": "^[A-Z]{1,2}[0-9][A-Z0-9]? ?[0-9][A-Z]{2}$", "description": "Participant's postcode" } }, "description": "Basic personal details of the participant" }, "eligibilityCriteria": { "type": "object", "properties": { "age": { "type": "integer", "minimum": 24, "maximum": 64, "description": "Participant's age at eligibility" }, "lastScreeningDate": { "type": "string", "format": "date", "description": "Date of last screening if applicable" }, "exclusionFactors": { "type": "array", "items": { "type": "string", "enum": [ "HYSTERECTOMY", "PREGNANT", "RECENT_BIRTH", "MEDICAL_CONTRAINDICATION", "NONE" ] }, "description": "Factors that might affect eligibility" }, "notes": { "type": "string", "description": "Additional notes about eligibility" } }, "description": "Details of eligibility criteria met" }, "riskFactors": { "type": "object", "properties": { "factors": { "type": "array", "items": { "type": "string", "enum": [ "FAMILY_HISTORY", "PREVIOUS_ABNORMAL_RESULTS", "IMMUNOSUPPRESSED", "HIV_POSITIVE", "OTHER" ] }, "description": "List of relevant risk factors" }, "riskLevel": { "type": "string", "enum": ["STANDARD", "INCREASED", "HIGH"], "description": "Overall risk level" }, "notes": { "type": "string", "description": "Additional notes about risk factors" } }, "description": "Assessment of participant's risk factors" }, "invitationPreferences": { "type": "object", "properties": { "preferredLanguage": { "type": "string", "description": "Preferred language for communications" }, "preferredContactMethod": { "type": "string", "enum": ["EMAIL", "SMS", "POST", "PHONE"], "description": "Preferred method of contact" }, "accessibilityNeeds": { "type": "array", "items": { "type": "string", "enum": ["LARGE_PRINT", "BRAILLE", "AUDIO", "TRANSLATION", "OTHER"] }, "description": "Accessibility requirements" } }, "description": "Participant's communication preferences" }, "gpDetails": { "type": "object", "properties": { "gpPracticeCode": { "type": "string", "description": "GP practice code" }, "gpPracticeName": { "type": "string", "description": "Name of GP practice" }, "gpCode": { "type": "string", "description": "GP's code" }, "gpName": { "type": "string", "description": "GP's name" } }, "description": "Details of participant's GP practice" }, "metadata": { "type": "object", "properties": { "source": { "type": "string", "description": "Source system recording the eligibility" }, "version": { "type": "string", "description": "Version of the event schema" }, "correlationId": { "type": "string", "description": "Correlation ID for tracking related events" } }, "description": "Additional metadata about the event" } }}