68 lines
1.5 KiB
JSON
68 lines
1.5 KiB
JSON
{
|
|
"name": "ReputationEvent",
|
|
"type": "object",
|
|
"properties": {
|
|
"worker_id": {
|
|
"type": "string",
|
|
"description": "ID of the workforce member"
|
|
},
|
|
"worker_name": {
|
|
"type": "string",
|
|
"description": "Name of the workforce member"
|
|
},
|
|
"event_type": {
|
|
"type": "string",
|
|
"enum": [
|
|
"shift_completed",
|
|
"no_show",
|
|
"late_arrival",
|
|
"early_departure",
|
|
"client_rated",
|
|
"supervisor_rated",
|
|
"certification_verified",
|
|
"last_minute_cancel",
|
|
"commendation"
|
|
],
|
|
"description": "Type of reputation event"
|
|
},
|
|
"event_date": {
|
|
"type": "string",
|
|
"format": "date",
|
|
"description": "Date the event occurred"
|
|
},
|
|
"agency_id": {
|
|
"type": "string",
|
|
"description": "Agency that submitted this event"
|
|
},
|
|
"agency_name": {
|
|
"type": "string",
|
|
"description": "Name of submitting agency"
|
|
},
|
|
"rating": {
|
|
"type": "number",
|
|
"minimum": 1,
|
|
"maximum": 5,
|
|
"description": "Star rating (for client_rated / supervisor_rated events)"
|
|
},
|
|
"role": {
|
|
"type": "string",
|
|
"description": "Role worked during this event"
|
|
},
|
|
"verified": {
|
|
"type": "boolean",
|
|
"default": true,
|
|
"description": "Whether KROW has verified this event"
|
|
},
|
|
"notes": {
|
|
"type": "string",
|
|
"description": "Optional non-sensitive note"
|
|
}
|
|
},
|
|
"required": [
|
|
"worker_id",
|
|
"worker_name",
|
|
"event_type",
|
|
"event_date",
|
|
"agency_name"
|
|
]
|
|
} |