Group Entities
These entities are used by the Group adapter and encapsulate data objects that implement groups in Epicenter.
Flight recorder
A flight recorder allows a record of all HTTP requests to be made in a group-specific log file. It can be used to replay a model run, or to reproduce and diagnose problems.
Start and stop values are times when the recording is scheduled to start and finish.
FlightRecorderReadOutView
The FlightRecorderReadOutView interface defines the structure for reading flight recorder configuration.
Properties
enabled?(boolean): (Optional) Indicates whether the flight recorder is enabled for the group.start?(number): (Optional) The time in epoch milliseconds when the recording is scheduled to begin.stop?(number): (Optional) The time in epoch milliseconds when the recording is scheduled to finish.
FlightRecorderCreateInView
The FlightRecorderCreateInView interface defines the structure for creating a flight recorder configuration.
Properties
enabled(boolean): Indicates whether the flight recorder should be enabled for the group.stop(number): The time in epoch milliseconds when the recording is scheduled to finish.start?(number): (Optional) The time in epoch milliseconds when the recording is scheduled to begin.
FlightRecorderUpdateInView
The FlightRecorderUpdateInView interface defines the structure for updating flight recorder configuration.
Properties
enabled?(boolean): (Optional) Indicates whether the flight recorder is enabled for the group.start?(number): (Optional) The time in epoch milliseconds when the recording is scheduled to begin.stop?(number): (Optional) The time in epoch milliseconds when the recording is scheduled to finish.
Managing groups
Status
The Status interface describes group status.
Properties
code?(string): (Optional) Status code.message?(string): (Optional) Status description.
Pricing interface
The Pricing interface defines the price for a group membership.
Properties
amount(number): The cost associated with the group membership.
GroupReadOutView
The GroupReadOutView interface defines the structure for reading group information.
Properties
groupKey(string): The unique GUID of the group.name(string): The name of the group. Unique for the projectmembers?(GroupPermissionReadOutView[]): (Optional) The list of group members and their permissions.creator?(string): (Optional) The identifier of the group creator.created?(string): (Optional) The timestamp when the group was created.lastUpdated?(string): (Optional) The timestamp when the group was last updated.tombstone?(string): (Optional) The timestamp indicating when the group was deleted or marked inactive.capacity?(number): (Optional) The maximum number of members allowed.runLimit?(number): (Optional) The maximum number of runs allowed for the group.approximateMemberCount?(number): (Optional) An approximate count of current group members.startDate?(string): (Optional) The start date for the group.expirationDate?(string): (Optional) The expiration date for the group. Users can't register for the group or create a run after this date.terminationDate?(string): (Optional) The termination date for the group.allowSelfRegistration?(boolean): (Optional) Iftrue, a user can register themselves. Otherwise, a new user must be invited by a facilitator.allowMembershipChanges?(boolean): (Optional) Iffalse, no member can be removed or added.allowChannel?(boolean): (Optional) Iftrue, allow push notifications. Ifnull, inherited from higher up (project).demonstration?(boolean): (Optional) Indicates whether the group is marked as a demonstration group.perpetual?(boolean): (Optional) Indicates whether the group does not expire.reference?(string): (Optional) An external reference identifier for the group.organization?(string): (Optional) The organization that runs the group. Can be different from the simulation creator/owner.event?(string): (Optional) The event associated with the group.salesChannel?(SalesChannel): (Optional) The sales channel associated with the group.status?(Status): (Optional) The current status of the group.pricing?(Pricing): (Optional) Pricing information associated with the group.flightRecorder?(FlightRecorderReadOutView): (Optional) The flight recorder configuration for the group.
Managing group members
StripePaymentCreateInView
The StripePaymentCreateInView interface defines the structure for providing Stripe payment information.
Properties
description(string): A description of the payment.token(string): The payment token generated by Stripe.objectType('stripe'): Identifies the payment method as Stripe.
GroupPermissionReadOutView
The GroupPermissionReadOutView interface defines the structure for reading user permissions within a group.
Properties
objectType('group'): Specifies the type asgroup.role?(string): (Optional) The role assigned to the user within the group.available?(boolean): (Optional) Iftrue, the user can log in and be assigned to worlds.user(PseudonymReadOutView): The user associated with the permission.
GroupPermissionCreateInView
The GroupPermissionCreateInView interface defines the structure for creating a group permission.
Properties
userKey(string): The unique identifier of the user to assign the permission to.role(string): The role to assign to the user.available?(boolean): (Optional) Iftrue, the user can log in and be assigned to worlds.payment?(StripePaymentCreateInView): (Optional) Payment information associated with the permission.
SelfRegistrationResult interface
The SelfRegistrationResult interface defines the response of a self-registration request. Returned by the selfRegister() function.
Properties
redirectUrl(string): The URL to redirect the user after registration.whoAmI(Session): Contains session details of the registered user.
Types
Augment
AUGMENTis a string‑literal union type.
Pass a value of the AUGMENT type to the Group adapter functions to modify API endpoint URLs.
To perform operations on individual group members rather than the entire group, pass MEMBERS. For example: a POST /group call creates a group, while a POST /group/member call creates an individual member.
To get data that requires additional processing by the DB, make a quantized API call by passing QUANTIZED in the function's augment parameter.
Values
'MEMBERS': Addsmember/to the URL.'QUANTIZED': Addsquantized/to the URL.
SalesChannel
The SalesChannel type defines the sales channel associated with a group or entity.
'TEAM''TEST''FORIO''HBP_HIGHER_ED''HBP_CL'
UserInput
UserInput is a union type. It is either a string or a GroupPermissionCreateInView object.