> For the complete documentation index, see [llms.txt](https://api.checkmein.cloud/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://api.checkmein.cloud/checkmein-4.0/database.md).

# Database

CheckMeIn 4.0 uses an internal database to keep track of all rooms. Explained on this page is how the database is structed, and what you can do with it.

For each room in your game, a folder will be created. This folder contains all useful data about the room.

Each entry (Instance `Room`) contains:

* ObjectValue `Occupant`\
  *contains the room owner or nil if the room is unoccupied*
* BoolValue `DnD`\
  *contains the do not disturb value of the room*
* BoolValue `PrivateMode`\
  *contains the private mode value of the room (allows only room owner and roommates to enter)*
* BoolValue `Debounce`\
  *this value is true while the room door is opened*
* NumberValue `Number`\
  *contains the room number of the room*
* StringValue `Type`\
  *contains the room type of the room*
* NumberValue `Timer`\
  *contains the timer value of the room (amount in seconds the door remains open)*
* ObjectValue `Reference`\
  *contains a reference to the room door model belonging to this room*
* Folder `Roommates`\
  *contains the list of roommates of this room (ObjectValues containing the Players)*

{% hint style="warning" %}
To prevent unexpected behavior, do not change or add to these values directly through your own code. Consider them read-only. Use the supplied [API Functions](/checkmein-4.0/api-functions.md) instead.
{% endhint %}
