UHIMS Events - Message Specs
Note to IAM team: Do not edit this page. It is generated automatically by scripts in util/messaging/uhims-events
Addendum to specs below:
- All messages include <messageDate> at the same level as <messageData>
Here are the auto-generated message specs:
PERSON MESSAGES | |||
<uid> | (data specs, not a message) | ||
<addPerson> | ROUTING KEY: | person.add | |
<messageData> | |||
<displayName> | (optional) | ||
<firstName> | (must provide, even if value happens to be empty) | ||
<fullName> | (non-empty) | ||
<lastName> | (must provide, even if value happens to be empty) | ||
<middleName> | (must provide, even if value happens to be empty) | ||
<nameSuffix> | (must provide, even if value happens to be empty) | ||
<uhUuid> | (non-empty) | ||
<retrofitPerson> | ROUTING KEY: | person.retrofit[.for.{message routing key of triggering message}] | |
<messageData> | |||
<actions> | (contains one or more of <addPerson> messages) (non-empty) | ||
<uhUuid> | (non-empty) | ||
<uids> | (contains zero or more of <uid> ) | ||
<modifyPersonUhUuid> | ROUTING KEY: | person.modify | |
<messageData> | |||
<uhUuid> | (non-empty) | ||
<uids> | (contains zero or more of <uid> ) | ||
<messageDataBefore> | |||
<uhUuid> | (non-empty) | ||
<modifyPersonFullName> | ROUTING KEY: | person.modify | |
<messageData> | |||
<firstName> | (must provide, even if value happens to be empty) | ||
<fullName> | (non-empty) | ||
<lastName> | (must provide, even if value happens to be empty) | ||
<middleName> | (must provide, even if value happens to be empty) | ||
<nameSuffix> | (must provide, even if value happens to be empty) | ||
<uhUuid> | (non-empty) | ||
<uids> | (contains zero or more of <uid> ) | ||
<modifyPersonDisplayName> | ROUTING KEY: | person.modify | |
<messageData> | |||
<displayName> | (must provide, even if value happens to be empty) | ||
<uhUuid> | (non-empty) | ||
<uids> | (contains zero or more of <uid> ) | ||
<deletePerson> | ROUTING KEY: | person.delete | |
<messageData> | |||
<uhUuid> | (non-empty) | ||
<uids> | (contains zero or more of <uid> ) | ||
AFFILIATION MESSAGES | |||
<location> | (data specs, not a message) | ||
<locationBuildingID> | (optional) | ||
<locationCampus> | (optional) | ||
<locationFacilityID> | (optional) | ||
<locationFloor> | (optional) | ||
<locationID> | (optional) | ||
<locationRoom> | (optional) | ||
<affiliation> | (data specs, not a message) | ||
<affID> | (non-empty) | ||
<campusKey> | (optional) | ||
<dataOrigin> | (non-empty) | ||
<departmentID> | (optional) | ||
<eac> | (optional) | ||
<employeeRecord> | (optional) (non-zero integer) | ||
<employeeStatus> | (optional) | ||
<employeeTypeCode> | (optional) | ||
<fte> | (optional) | ||
<functionalCode> | (optional) | ||
<grade> | (optional) | ||
<isHomeRecord> | (optional) (Y or empty) | ||
<jobCode> | (optional) | ||
<location> | (contains one of <location> ) | ||
<org> | (non-empty) | ||
<positionNumber> | (optional) | ||
<role> | (non-empty) | ||
<uhBargainingUnit> | (optional) | ||
<uhUnitCode> | (optional) (2-digit code) | ||
<addAffiliation> | ROUTING KEY: | affiliation.add.{dataOrigin}.{org}.{role} (account for periods in role values) | |
<messageData> | |||
<affiliation> | (contains one of <affiliation> ) (non-empty) | ||
<remainingAffiliations> | (contains zero or more of <affiliation> ) | ||
<uhUuid> | (non-empty) | ||
<uids> | (contains zero or more of <uid> ) | ||
<retrofitAffiliation> | ROUTING KEY: | affiliation.retrofit[.for.{message routing key of triggering message}] | |
<messageData> | |||
<actions> | (contains one or more of <addAffiliation> messages) (non-empty) | ||
<uhUuid> | (non-empty) | ||
<uids> | (contains zero or more of <uid> ) | ||
<deleteAffiliation> | ROUTING KEY: | affiliation.delete.{dataOrigin}.{org}.{role} (account for periods in role values) | |
<messageData> | |||
<affiliation> | (contains one of <affiliation> ) (non-empty) | ||
<remainingAffiliations> | (contains zero or more of <affiliation> ) | ||
<uhUuid> | (non-empty) | ||
<uids> | (contains zero or more of <uid> ) | ||
<modifyAffiliation> | ROUTING KEY: | affiliation.modify.{dataOrigin}.{org}.{role} (account for periods in role values) | |
<messageData> | |||
<affiliation> | (contains one of <affiliation> ) (non-empty) | ||
<remainingAffiliations> | (contains zero or more of <affiliation> ) | ||
<uhUuid> | (non-empty) | ||
<uids> | (contains zero or more of <uid> ) | ||
USERNAME MESSAGES | |||
<addUsername> | ROUTING KEY: | username.add | |
<messageData> | |||
<displayName> | (non-empty) | ||
<uhUuid> | (non-empty) | ||
<uid> | (non-empty) | ||
<retrofitUsername> | ROUTING KEY: | username.retrofit[.for.{message routing key of triggering message}] | |
<messageData> | |||
<actions> | (contains one or more of <addUsername> messages) (non-empty) | ||
<uhUuid> | (non-empty) | ||
<modifyUsernameUid> | ROUTING KEY: | username.modify | |
<messageData> | |||
<uhUuid> | (non-empty) | ||
<uid> | (non-empty) | ||
<messageDataBefore> | |||
<uid> | (non-empty) | ||
<modifyUsernameUhUuid> | ROUTING KEY: | username.modify | |
<messageData> | |||
<uhUuid> | (non-empty) | ||
<uid> | (non-empty) | ||
<messageDataBefore> | |||
<uhUuid> | (non-empty) | ||
<modifyUsernameDisplayName> | ROUTING KEY: | username.modify | |
<messageData> | |||
<displayName> | (non-empty) | ||
<uid> | (non-empty) | ||
<modifyUsernameAccess> | ROUTING KEY: | username.modify | |
<messageData> | |||
<access> | (non-empty) | ||
<uid> | (non-empty) | ||
<deleteUsername> | ROUTING KEY: | username.delete | |
<messageData> | |||
<reason> | (optional) | ||
<uid> | (non-empty) | ||
EMAIL MESSAGES | |||
<addEmail> | ROUTING KEY: | email.add | |
<messageData> | |||
<emailAddress> | (non-empty) | ||
<uhUuid> | (non-empty) | ||
<uids> | (contains zero or more of <uid> ) | ||
<retrofitEmail> | ROUTING KEY: | email.retrofit[.for.{message routing key of triggering message}] | |
<messageData> | |||
<actions> | (contains one or more of <addEmail> messages) (non-empty) | ||
<uhUuid> | (non-empty) | ||
<uids> | (contains zero or more of <uid> ) | ||
<deleteEmail> | ROUTING KEY: | email.delete | |
<messageData> | |||
<emailAddress> | (non-empty) | ||
<uhUuid> | (non-empty) | ||
<uids> | (contains zero or more of <uid> ) | ||
CONTACT INFO MESSAGES | |||
<phone> | (data specs, not a message) | ||
<phoneAsEntered> | (must provide, even if value happens to be empty) | ||
<phoneInfoPrefix> | (must provide, even if value happens to be empty) | ||
<phoneInfoSuffix> | (must provide, even if value happens to be empty) | ||
<phoneNumber> | (must provide, even if value happens to be empty) | ||
<contactInfo> | (data specs, not a message) | ||
<contactInfoID> | (non-empty) | ||
<deptName> | (must provide, even if value happens to be empty) | ||
<emailsAsEntered> | (must provide, even if value happens to be empty) | ||
<faxes> | (contains zero or more of <phone> ) (must provide, even if value happens to be empty) | ||
<faxesAsEntered> | (must provide, even if value happens to be empty) | ||
<officeLocation> | (must provide, even if value happens to be empty) | ||
<orgName> | (must provide, even if value happens to be empty) | ||
<phones> | (contains zero or more of <phone> ) (must provide, even if value happens to be empty) | ||
<phonesAsEntered> | (must provide, even if value happens to be empty) | ||
<title> | (must provide, even if value happens to be empty) | ||
<website> | (must provide, even if value happens to be empty) | ||
<addContactInfo> | ROUTING KEY: | contactInfo.add | |
<messageData> | |||
<contactInfo> | (contains one of <contactInfo> ) (non-empty) | ||
<remainingContactInfo> | (contains zero or more of <contactInfo> ) (must provide, even if value happens to be empty) | ||
<uhUuid> | (non-empty) | ||
<uids> | (contains zero or more of <uid> ) | ||
<retrofitContactInfo> | ROUTING KEY: | contactInfo.retrofit[.for.{message routing key of triggering message}] | |
<messageData> | |||
<actions> | (contains one or more of <addContactInfo> messages) (non-empty) | ||
<uhUuid> | (non-empty) | ||
<uids> | (contains zero or more of <uid> ) | ||
<modifyContactInfo> | ROUTING KEY: | contactInfo.modify | |
<messageData> | |||
<contactInfo> | (contains one of <contactInfo> ) (non-empty) | ||
<remainingContactInfo> | (contains zero or more of <contactInfo> ) (must provide, even if value happens to be empty) | ||
<uhUuid> | (non-empty) | ||
<uids> | (contains zero or more of <uid> ) | ||
<deleteContactInfo> | ROUTING KEY: | contactInfo.delete | |
<messageData> | |||
<contactInfo> | (contains one of <contactInfo> ) (non-empty) | ||
<remainingContactInfo> | (contains zero or more of <contactInfo> ) (must provide, even if value happens to be empty) | ||
<uhUuid> | (non-empty) | ||
<uids> | (contains zero or more of <uid> ) | ||
SCOPED HOME ORG MESSAGES | |||
<addScopedHomeOrg> | ROUTING KEY: | scopedHomeOrg.add.{dataOrigin}.{org}.{role} (account for periods in role values) | |
<messageData> | |||
<affID> | (optional) | ||
<campusKey> | (optional) | ||
<dataOrigin> | (non-empty) | ||
<eac> | (optional) | ||
<employeeRecord> | (optional) | ||
<employeeStatus> | (optional) | ||
<employeeTypeCode> | (optional) | ||
<fte> | (optional) | ||
<functionalCode> | (optional) | ||
<grade> | (optional) | ||
<isHomeRecord> | (optional) | ||
<jobCode> | (optional) | ||
<org> | (non-empty) | ||
<positionNumber> | (optional) | ||
<role> | (optional) | ||
<uhBargainingUnit> | (optional) | ||
<uhUnitCode> | (optional) | ||
<uhUuid> | (non-empty) | ||
<uids> | (contains zero or more of <uid> ) | ||
<retrofitScopedHomeOrg> | ROUTING KEY: | scopedHomeOrg.retrofit[.for.{message routing key of triggering message}] | |
<messageData> | |||
<actions> | (contains one or more of <addScopedHomeOrg> messages) (non-empty) | ||
<uhUuid> | (non-empty) | ||
<uids> | (contains zero or more of <uid> ) | ||
<modifyScopedHomeOrg> | ROUTING KEY: | scopedHomeOrg.modify.{dataOrigin}.{org}.{role} (account for periods in role values) | |
<messageData> | |||
<affID> | (optional) | ||
<campusKey> | (optional) | ||
<dataOrigin> | (non-empty) | ||
<eac> | (optional) | ||
<employeeRecord> | (optional) | ||
<employeeStatus> | (optional) | ||
<employeeTypeCode> | (optional) | ||
<fte> | (optional) | ||
<functionalCode> | (optional) | ||
<grade> | (optional) | ||
<isHomeRecord> | (optional) | ||
<jobCode> | (optional) | ||
<org> | (non-empty) | ||
<positionNumber> | (optional) | ||
<role> | (optional) | ||
<uhBargainingUnit> | (optional) | ||
<uhUnitCode> | (optional) | ||
<uhUuid> | (non-empty) | ||
<uids> | (contains zero or more of <uid> ) | ||
<messageDataBefore> | |||
<affID> | (optional) | ||
<campusKey> | (optional) | ||
<eac> | (optional) | ||
<employeeRecord> | (optional) | ||
<employeeStatus> | (optional) | ||
<employeeTypeCode> | (optional) | ||
<fte> | (optional) | ||
<functionalCode> | (optional) | ||
<grade> | (optional) | ||
<isHomeRecord> | (optional) | ||
<jobCode> | (optional) | ||
<org> | (non-empty) | ||
<positionNumber> | (optional) | ||
<role> | (optional) | ||
<uhBargainingUnit> | (optional) | ||
<uhUnitCode> | (optional) | ||
<deleteScopedHomeOrg> | ROUTING KEY: | scopedHomeOrg.delete.{dataOrigin}.{org}.{role} (account for periods in role values) | |
<messageData> | |||
<affID> | (optional) | ||
<campusKey> | (optional) | ||
<dataOrigin> | (non-empty) | ||
<eac> | (optional) | ||
<employeeRecord> | (optional) | ||
<employeeStatus> | (optional) | ||
<employeeTypeCode> | (optional) | ||
<fte> | (optional) | ||
<functionalCode> | (optional) | ||
<grade> | (optional) | ||
<isHomeRecord> | (optional) | ||
<jobCode> | (optional) | ||
<org> | (non-empty) | ||
<positionNumber> | (optional) | ||
<role> | (optional) | ||
<uhBargainingUnit> | (optional) | ||
<uhUnitCode> | (optional) | ||
<uhUuid> | (non-empty) | ||
<uids> | (contains zero or more of <uid> ) | ||
VALUES FOR <dataOrigin> | |||
hris | |||
rcuh | |||
sece | |||
sis | |||
uhims | |||
VALUES FOR <org> | |||
etc | |||
ewc | |||
hawcc | |||
hcc | |||
kauaicc | |||
kcc | |||
lcc | |||
mauicc | |||
mhpcc | |||
other | |||
rcuh | |||
uh | |||
uhf | |||
uhh | |||
uhm | |||
uhs | |||
uhsystem | |||
uhwo | |||
wcc | |||
VALUES FOR <role> | |||
faculty.communityCollege | |||
faculty.countyAgent | |||
faculty.courseInstructor | |||
faculty.emeritus | |||
faculty.graduateAssistant.overload | |||
faculty.law | |||
faculty.lecturer | |||
faculty.lecturer.casual | |||
faculty.lecturer.overload | |||
faculty.librarian | |||
faculty.medical | |||
faculty.noDetails | |||
faculty.noDetails.casual | |||
faculty.noDetails.overload | |||
faculty.researchAssistant | |||
faculty.researcher | |||
faculty.specialist | |||
faculty.teachingAssistant | |||
faculty.university | |||
nonCreditStudent.etc | |||
nonCreditStudent.noDetails | |||
ohana | |||
other | |||
preStudent.accepted | |||
preStudent.admitted | |||
preStudent.applicant | |||
preStudent.financialAid | |||
preStudent.noDetails | |||
retiree | |||
staff.apt | |||
staff.apt.casual | |||
staff.apt.overload | |||
staff.civilService | |||
staff.executive | |||
staff.executive.casual | |||
staff.executive.overload | |||
staff.noDetails | |||
staff.noDetails.casual | |||
staff.noDetails.overload | |||
staff.nonCompensated | |||
staff.postdoc | |||
student.graduate.law | |||
student.graduate.medical | |||
student.graduate.noDetails | |||
student.other.apprenticeship | |||
student.other.continuingEducation | |||
student.other.postBaccalaureate | |||
student.other.professional | |||
student.other.undeclared | |||
student.other.vocational | |||
student.undergraduate.noDetails | |||
studentEmployee.studentHire | |||
studentEmployee.workStudy | |||
VALUES FOR <reason> | |||
correction | |||
deprovisioned | |||
discarded | |||
emergency | |||
VALUES FOR <campusKey> | |||
CC | Community Colleges Chancellor Office | ||
ET | Employment Training Center | ||
HA | Hawaii CC | ||
HI | UH Hilo | ||
HO | Honolulu CC | ||
KA | Kapiolani CC | ||
KU | Kauai CC | ||
LE | Leeward CC | ||
MA | UH Manoa | ||
MU | Maui CC | ||
SW | UH System | ||
WI | Windward CC | ||
WO | UH West Oahu | ||
XX | EAC Error | ||
VALUES FOR <employeeStatus> | |||
A | Active | ||
F | Paid Leave | ||
L | Leave Without Pay | ||
T | Terminated | ||
VALUES FOR <employeeTypeCode> | |||
A | APT | ||
C | Civil Service | ||
E | Executive/Managerial | ||
F | Faculty | ||
G | Graduate Assistant | ||
L | Lecturer | ||
N | Non-Compensated | ||
P | Person of Interest | ||
S | Casual | ||
V | Overload |