The application
object includes the following properties:
Property | Type | Description |
Application Id |
| The id of the application |
Name |
| The name of the application |
Description |
| The description of the role |
Draft Version |
| The latest draft’s version, or |
Published Version |
| The latest published version, or |
Created By |
| The id of the user that created this application |
Created At |
| The date and time the application was created |
The participant
object includes the following properties:
Property | Type | Description |
Id |
| The id of the user or group |
Type |
| The type of participant; either user or group |
The role
object includes the following properties:
Property | Type | Description |
Name |
| The name of the role |
Description |
| The description of the role |
Permissions |
| The permissions associated with this role |
Participants | | The Participants (users and groups) that have this role. |
Created By |
| The id of the user that created this role – empty if the role is one of the default roles that are created upon application creation |
Created At |
| The date and time the role was created – set to a non-meaningful value if the role is one of the default roles that are created upon application creation, in which case the creation time of the application can be used instead |
Modified By |
| The id of the user that last modified this role |
Modified At |
| The date and time the role was last modified |
The session
object includes the following properties:
Property | Type | Description |
Application Id |
| The id of the application |
Session Id |
| The id of the session |
Status |
| The status of the session; either open or closed |
IsDraft |
| Whether or not this session was created in a draft version of the application |
Version |
| The version for this session |
Name |
| The name of the application |
Description |
| The description of the application |
Participants | | The Participants (users and groups) of this session. |
Created By |
| The id of the user that created this application |
Created At |
| The date and time the application was created |
Modified By |
| The id of the user that last modified this session |
Modified At |
| The date and time the session was last modified |
Properties |
| Developer-writable and readable dictionary with string keys and string values to store filterable information about the session |
Returns the object for a specified application.
Name | Type | Description |
Application Id |
| The id of the application to retrieve |
Application
object
Returns a list of all applications for which the user has the application:read
permission.
None
List of Application
objects
Returns a list of roles for a specified application.
Name | Type | Description |
Application Id |
| The id of the application for which the roles should be retrieved |
List of Role
objects
Returns information for a specified session.
Name | Type | Description |
Application Id |
| The id of the application to retrieve |
Session Id |
| The id of the session |
Session
object
Returns a list of open sessions that the user has permission to view for a specified application.
A user has access to a session if they are either:
A participant of the session and are in an application role that has the session:read:participant
permission
Or if the user is in an application role that has the session:read:any
permission
Name | Type | Description |
Application Id |
| The id of the application for which the sessions should be retrieved |
List of Session
objects
Creates a new session. Note: The integration code user will automatically be added to the session’s list of participants.
Name | Type | Description |
Application Id |
| The id of the application for the session |
Name |
| The name of the session |
Description (optional) |
| The name of the session – defaults to an empty string |
Properties (optional) |
| Developer-writable and readable dictionary with string keys and string values for this session that can be used to store filterable information about the session – defaults to an empty dictionary |
Session Version (optional) |
| Developer-assigned version number for this session – defaults to the application’s latest published version or the application’s latest draft version if application has not been published |
Session
object
Patches the specified session's fields. Any unspecified field will not be updated.
Note: If specified, the properties will be overwritten with the new dictionary, so make sure to include all existing properties fields.
While this method is available for use, there are other methods available in the SDK for updating individual fields of the session. It is recommended to use those methods instead of this one unless there is a need to specifically update multiple fields at once.
Name | Type | Description |
Application Id |
| The id of the application for the session |
Session Id |
| The id of the session |
Patch |
| An object that contains the information for the fields that should be patched. |
None
Updates the specified session's properties, which is a field of the session that is used to store developer-specified key-value pairs.
The properties will be overwritten with the new dictionary, so make sure to include all existing properties fields. Values must be strings.
Name | Type | Description |
Application Id |
| The id of the application for the session |
Session Id |
| The id of the session |
Properties |
| Developer-writable and readable dictionary with string keys and string values for this session that can be used to store filterable information about the session – defaults to an empty dictionary |
None
Updates the specified session's name.
Name | Type | Description |
Application Id |
| The id of the application for the session |
Session Id |
| The id of the session |
Name |
| The new name of the session |
None
Updates the specified session's description.
Name | Type | Description |
Application Id |
| The id of the application for the session |
Session Id |
| The id of the session |
Description |
| The new description of the session – defaults to an empty string |
None
Patches the specified session's session data.
Data can be any object, so long as it can be turned into a JSON string.
This method acts as a patch to the session data, so keys that aren’t specified in the Data dictionary will remain intact. This is true for nested objects as well.
If a key inside of Data points to an array value, whether nested or not, the existing array at that key (if one exists) will be overwritten.
Name | Type | Description |
Application Id |
| The id of the application for the session |
Session Id |
| The id of the session |
Data |
| String keys and generic values with which to patch the session data |
None
Gets information about the specified session's session data.
As the session data structure is designed by the developer, it should also be parsed by the developer.
Name | Type | Description |
Application Id |
| The id of the application for the session |
Session Id |
| The id of the session |
The current state of the session data for a session.
Adds a participant to a session.
Name | Type | Description |
Application Id |
| The id of the application for the session |
Session Id |
| The id of the session |
Id |
| The id of the participant; either a user id or group id |
Type (optional) |
| The type of participant; either user or group – if unspecified, this will default to user |
None
Closes the specified session by patching the status field of the session to closed.
Name | Type | Description |
Application Id |
| The id of the application for the session |
Session Id |
| The id of the session |
None
Occurs when a new session is created.
Name | Type | Description |
Application Id |
| The id of the application for this event |
Session Id |
| The id of the session for this event |
Event Id |
| The id of the event |
Source |
| The source of the event; currently always set to skylight for this event |
User Id |
| The id of the user that created this session |
Created At |
| The date and time the session was created, as noted by the server |
Timestamp |
| The date and time the session was created, as noted by the client |
Version |
| The version number of the application when this event occurred |
Event Type |
| The event type; always set to session_created for this event |
Session | | The object for the session that was just created |
Occurs when a session’s properties field is updated.
The updated session properties should be accessed by using the session’s properties field and not the session event’s properties field. Specifically, the call (while differing in syntax based on language) will look something like sessionEvent.Session.Properties
.
Name | Type | Description |
Application Id |
| The id of the application for this event |
Session Id |
| The id of the session for this event |
Event Id |
| The id of the event |
Source |
| The source of the event; currently always set to skylight for this event |
User Id |
| The id of the user that created this session |
Created At |
| The date and time the session was created, as noted by the server |
Timestamp |
| The date and time the session was created, as noted by the client |
Version |
| The version number of the application when this event occurred |
Event Type |
| The event type; always set to session_created for this event |
Session | | The session for which the properties updated – this will only have the following properties:
|
Occurs when a session’s data is updated.
The contents of the Data field are specified by the developer and it is up to the developer to parse the contents.
Name | Type | Description |
Application Id |
| The id of the application for this event |
Session Id |
| The id of the session for this event |
Event Id |
| The id of the event |
Source |
| The source of the event; currently always set to skylight for this event |
User Id |
| The id of the user that created this session |
Created At |
| The date and time the session was created, as noted by the server |
Timestamp |
| The date and time the session was created, as noted by the client |
Version |
| The version number of the application when this event occurred |
Event Type |
| The event type; always set to session_created for this event |
Data |
| The developer-specified string keys and generic values that were used to patch the session data |
Occurs when a custom session event is created.
Name | Type | Description |
Application Id |
| The id of the application for this event |
Session Id |
| The id of the session for this event |
Event Id |
| The id of the event |
Source |
| The source of the event; currently always set to skylight for this event |
User Id |
| The id of the user that created this session |
Created At |
| The date and time the session was created, as noted by the server |
Timestamp |
| The date and time the session was created, as noted by the client |
Version |
| The version number of the application when this event occurred |
Event Type |
| The event type; always set to session_created for this event |
Data |
| The developer-specified string keys and generic values that were used to patch the session data |
Occurs when a session is closed.
Name | Type | Description |
Application Id |
| The id of the application for this event |
Session Id |
| The id of the session for this event |
Event Id |
| The id of the event |
Source |
| The source of the event; currently always set to skylight for this event |
User Id |
| The id of the user that created this session |
Created At |
| The date and time the session was created, as noted by the server |
Timestamp |
| The date and time the session was created, as noted by the client |
Version |
| The version number of the application when this event occurred |
Event Type |
| The event type; always set to session_created for this event |
Session | | The session that was closed – this will only have the following properties:
|