Schema Overview

Last updated on September 08, 2023.

This document discusses how data is stored and handled in Insites. Three schemas are used by the platform:

  • Users
  • User Profiles
  • Records

Users

Users are accounts that any of your users can have and are identified by their unique email addresses. You can define properties for all users in the user.yml file.

User Profiles

User Profiles are roles in the application. Each User Profile can be associated with any number of Properties and Tables. All users are assigned a User Profile named Default. The difference between User Profile and Table is that each user can have a maximum of one profile of a given name (but can have many different profiles), whereas they can have many custom records with the same name. From a practical perspective, it is very simple to create an operation on a UserProfile (i.e. create a user profile, or if it exists, update it).

Example directory structure of with sample files:

Records

A Table is an object that describes all Record objects that belong to it. Think of Tables as a custom database table, which allows you to build highly customized features. Use them to group Properties, and allow the user to provide multiple values for each of them.

Properties are fields that you attach to a User Profile, Table, etc. Think of them as custom database columns (though complex types, like attachments and images, should be treated as separate database tables). Some database fields (Properties) are also provided to jumpstart development.

Example directory structure of with sample files:

Have a suggestion for this page?

Didn't quite find what you are looking for or have feedback on how we can make the content better then we would love to hear from you. Please provide us feedback and we will get back to you shortly.