CSV Integration Schema: Keys
Last updated: October 5, 2026
This is the data format for Keys and Key Assignments coming into Housing.Cloud — physical or digital keys, who holds them, and what they open.
| Column | Type | Required | Notes |
|---|---|---|---|
id |
string (unique) | Yes | Unique key identifier (match key for create-vs-update) |
type |
enum | Yes | KEY, CARD, FOB, DIGITAL |
assignedSisId |
string | No | SIS ID if the key is currently assigned |
assignedSchoolEmail |
string | No | Email if assigned |
building |
string | Conditional |
InventoryBuilding.name. Required when any of floor/suite/room is set, or any opens* flag is true |
floor |
string | No |
InventoryFloor.name in building. Required when opensFloor=true; also disambiguates room
|
suite |
string | No |
InventorySuite.name in building. Required when opensSuite=true; also disambiguates room
|
room |
string | No |
InventoryRoom.name in building (+ floor/suite if given). Required when opensRoom=true
|
opensBuilding |
boolean | No (default false) | Key opens the resolved building |
opensFloor |
boolean | No (default false) | Key opens the resolved floor |
opensSuite |
boolean | No (default false) | Key opens the resolved suite (assignable to all students in the suite) |
opensRoom |
boolean | No (default false) | Key opens the resolved room |
opensOther |
string | No | Free-text label for openings not in inventory (e.g. shared mailbox) |
Booleans accept true/false, 1/0, yes/no, or empty (= false), case-insensitive.
Validation Rules
- Every row must open at least one of
opensBuilding,opensFloor,opensSuite,opensRoom, oropensOther. -
buildingis required if any offloor/suite/roomor anyopens*flag is set. -
opensFloor=truerequiresfloor;opensSuite=truerequiressuite;opensRoom=truerequiresroom. - Each enabled
opens*flag must resolve its inventory record or the row is rejected — so provide a complete, valid inventory path (usefloor/suiteto disambiguate duplicateroomnames within a building). - A lookup field supplied without its matching
opens*flag is allowed but silently ignored.
Delivery
Ingress · CSV.