Entities
Everything, in NEON is built up by Entities.
A List is an Entity, An Offer is an Entity, a Wallet, a Sheet, or even a background Job is an Entity.
This meant that all Entities have very much in common and are treated in a very similar way through the entire platform. However the Entities have very different configurations based on what type of Entity they are.
Fields that all entities have in common includes:
Entity Field | Notes |
---|---|
Entity Id | The system's Internal Id |
Name | The Name of the Entity |
Description | An optional description |
External Id | An optional 3rd party identifier |
State | The Entity's state, such as DRAFT or INSTALLED |
Type | This field specifies what type of Entity it is, such as LIST, FORM, SHEET, SURVEY, COMPETTION etc |
Sub Type | Applies to certain Entities only, for example a LIST Entity has a sub type to clarify if it's a Tag List, a Data List, a Subscription List etc |
Category | A free-text field which has no meaning to NEON but which can be used by external applications to group Entities into categories. |
Assigned To | Used for assigning the Entity to a specific person, team or department |
Dimension Filter | Supported by most Entity Types. This makes it possible to dedicate an Entity to a certain pattern of dimensions, for example a language or promotion. The Entity will only be accessible if the passed in Dimensions match this filter |
Configuration | This is the only thing that really differs between Entities of different types. For example a Survey and Background Job have completely different configurations |
CMS Content | Optional additional content and settings to be associated and presented with the Entity. |
Meta Data | All Entities have a read-only Meta Data section, which states when the Entity was created, last updated etc. |
Other aspects that all entities have in common include:
- Consistent audit logging or all changes
- They can be viewed, compared, extracted and imported as plain Json. This makes it very easy to compare configurations between environments, save configurations in source code repositories, export and import whole system configurations etc etc.
- The same configuration screens in the portal can be used regardless of the type of Entity, and it's possible to see and click through all references between Entities
- Entities can easily be referenced and utilised within scripts
Updated over 1 year ago