Object Types
Common Attributes
Attributes provided by User, or configured at global/tenant/category level:
Attribute | Definition | Details | Applicable Object Types | Behaviour |
---|---|---|---|---|
name | type: “string”, required: true | Name (or title) of the object. | All |
|
description | type: “string”, required: false | Description of the object. | All |
|
mimeType | type: “string”, required: true, enum: [“list of supported mime types“] | Technical mime type of the object.
| All |
|
instructions | type: “string” or “json”, | Instructions on how to understand, attempt or how the object will be evaluated.
| Question, QuestionSet, Content, Collection |
|
keywords | type: “list”, required: false |
| All |
|
Organisation Framework | frameworkId | Every object can be tagged with one organisation framework and with one or more terms of the selected framework categories. Framework tagging is optional. | Question, QuestionSet, Content, Collection |
|
Target Frameworks | List of framework Ids and framework terms | Every object can additionally be tagged with zero or more target frameworks and their terms. C1: Org FW: subject: ICT, medium: English C2: Org FW: board: MH, medium: Marathi/English, Grade: 6, subject: English When searched for “board: MH, medium: Marathi/English, Grade: 6“, C2 should be shown before C1 | Question, QuestionSet, Content, Collection |
|
Audience | type: “list”, required: false, enum: [“student”, “teacher”, “admin”] | Target audience of the object. | Question, QuestionSet, Content, Collection |
|
Visibility | type: “string”, required: true, enum: [“public”, “protected“, “private“, “parent”] |
| All |
|
License | type: “license”, required: true | One of the configured licenses in the platform. Value will be defaulted to the default license configured for the tenant and/or category. | All |
|
Copyright Information | copyright, author, owner, attributions | Additional copyright information provided by the creator. | All |
|
Icons | appIcon, grayScaleAppIcon, thumbnail, posterImage, screenshots, stageIcons |
| Question, QuestionSet, Content, Collection |
|
PublishCheckList | type: “list” | List of items verified by publisher before publishing the object. Checklist items vary for each object type and configurable at global, tenant or category level. | Question, QuestionSet, Content, Collection |
|
PublishComment | type: “string” | Comment given by publisher while approving the object. | Question, QuestionSet, Content, Collection |
|
RejectReasons | type: “list” | List of reasons for rejecting the object. Checklist items vary for each object type and configurable at global, tenant or category level. | Question, QuestionSet, Content, Collection |
|
RejectComment | type: “string” | Comment given by publisher while rejecting the object. | Question, QuestionSet, Content, Collection |
|
DialCodeRequired | type: “boolean”, defaultValue: “false“ | To specify if a dial code has to be mandatorily linked to the object before publishing the object. | All |
|
CompatibilityLevel | type: “number”, required: true, defaultValue: 1 | Compatibility level of the object, i.e. the minimum app version on which the content can be consumed. | Question, QuestionSet, Content, Collection |
|
PrimaryCategory | type: “string”, required: true | Object category like “Survey”, “Quiz”, “Course”, etc - used for search & discovery purposes. Every object is created with one primary category. | All |
|
AdditionalCategories | type: “list”, required: false | Additional (& optional) list of categories - used only for search & discovery. | All |
|
Trackable | type: “string”, required: true, enum: [“yes”, “no”], defaultValue: “no” | If the object is trackable or not. If set as “yes”, user has to login to access the question set, user progress of the question set is tracked and can be monitored by the user & creator/admin of the question set. | QuestionSet, Content, Collection |
|
RequiresEnrolment |
|
|
|
|
AutoCreateBatch | type: “boolean”, required: false | Should be set to true if a batch has to be auto created for an object on publish if the object is marked as trackable. The batch is created only if a live/upcoming batch doesn't exist for the object. The start date of the batch will be set to date of publish and no end date. Start and end dates can be modified for the auto-created batch by the creator or mentor. | QuestionSet, Content, Collection |
|
DailySummaryReportEnabled | type: “boolean”, required: false | Should be set to true if daily summary aggregates have to be computed for an object that is marked as trackable. |
|
|
CredentialsAllowed | type: “string”, required: true, enum: [“yes”, “no”], defaultValue: “no” | If credentials can be linked to object or not. This is applicable only for trackable objects. | QuestionSet, Content, Collection |
|
CertTemplate | template: “certificate template details“, | If object has any configured credentials to be issued to the users. | QuestionSet, Content, Collection |
|
AllowAnonymousAccess | type: “boolean”, defaultValue: true | If the object is allowed to be consumed without login. | Question, QuestionSet, Content, Collection |
|
Terms&Conditions | type: “string”, required”: false | URL of the terms & conditions page. If configured, user has to agree the “terms & conditions” before consuming the question set. The acceptance is captured as a telemetry event. | Question, QuestionSet, Content, Collection |
|
ExpectedDuration | type: “float”, required: false | Expected time for consuming the object. It is a metadata set by the creator. | Question, QuestionSet, Content, Collection |
|
CompletionCriteria | type: “json”, required: false | Criteria to consider the object as completed by user. The structure of critieria will be different for each object type. | Question, QuestionSet, Content, Collection |
|
MaxScore | type: “float”, required: false |
| Question, QuestionSet, Content, Collection |
|
Collaborators | type: “list”, required: false | List of collaborators for creating the object | All |
|
SemanticVersion | type: “string”, required: false | Semantic version of the object. This is different from the published version. Semantic version is used to maintain same version number even though there are changes and object is re-published. | All |
|
Code | type: “string”, required: true | Auto-generated, if not provided by the user. | All |
|
FlagReasons | type: “list”, required: false | List of configured reasons like “copyright violation”, “inappropriate content”, etc. | All |
|
Flags | type: “list”, required: false | List of comments given by the user while flagging the object. | All |
|
Batch Information | type: “json”, required: true, | If object is trackable, a batch gets created for tracking enrolment and progress. Only one active batch is allowed at one time. | QuestionSet, Content, Collection |
|
Attributes set/computed/derived by System:
Attribute | Definition | Details | Applicable Object Types |
---|---|---|---|
Status | type: “list”, required: true, enum: [“list of status values”], defaultValue: “Draft” | Status of the object.
| All |
SchemaVersion | type: “string”, required: true | Version of the schema used for creating this object. | All |
EditorState | type: “json”, required: false | Editor state to restore objects from last saved state in editor. | Question, QuestionSet, Content, Collection |
PkgVersion | type: “number” | Package version is incremented on every publish of the object. | All |
DownloadUrl | type: “string” | ECAR file URL of the object. | QuestionSet, Content, Collection |
Size | type: “number” | Size in bytes of the ECAR file. | QuestionSet, Content, Collection |
Checksum | type: “number” | Checksum of the generated ECAR file | QuestionSet, Content, Collection |
ArtifactUrl | type: “string” | URL of the actual artifact file, i.e. the actual PDF, mp4 or zip file. | All |
PreviewUrl | type: “string” | Preview URL of the object for consumption in online mode. | All |
StreamingUrl | type: “string” | Streaming URL for mime types that support streaming play | All |
ContentEncoding | type: “list”, required: true, enum: [“gzip”, “identity”] |
| All |
ContentDisposition | type: “list”, required: false, enum: ["inline", "online", "online-only"] |
| All |
VersionKey | type: “string”, required: true | Unique version key verified and computed on every update to prevent stale updates. | All |
LockKey | type: “string” | Lock key used for locking an object for updates when multiple collaborators are working on the same object. | All |
DialCodes | type: “list” | List of DIAL codes linked to the object. | All |
ReservedDialCodes | type: “list” | List of DIAL codes reserved to be linked to this object. | All |
Assets | type: “list”, | List of assets used in the object. | Question, QuestionSet, Content, Collection |
Error Details | uploadError, publishError, reviewError | Errors that occurred in various stages of the object lifecycle | All |
Ownership Information | channel, createdBy (creator), createdFor (organisation) | Ownership information for the object. | All |
Audit Information | createdBy, createdOn, lastUpdatedOn, lastUpdatedBy, lastSubmittedBy, lastSubmittedOn | Audit Information. | All |
Source Information |
| Details of the source from which the object is created. | All |
Analytics Data | me_totalSessionsCount, me_creationSessions, me_creationTimespent, me_totalTimespent, me_totalInteractions, me_averageInteractionsPerMin, me_averageSessionsPerDevice, me_totalDevices, me_averageTimespentPerSession, me_averageRating, me_totalDownloads, me_totalSideloads, me_totalRatings, me_totalComments, me_totalUsage, me_totalLiveContentUsage, me_usageLastWeek, me_deletionsLastWeek, me_lastUsedOn, me_lastRemovedOn | Statistical data about the object. These values are set by analytics systems based on the telemetry. | All |