Library Resource
Library Resource
Description
Libraries define the set of Articulate Rise 360 modules available to each organization. Each organization's library is derived from the platform-wide module list, with the ability to exclude specific modules. The result is the organization’s effective library: all platform modules minus those listed in the organization’s excludedModuleIds
.
Library
Each organization has its own exclusion-based library, and can create named library sections (curated subsets) for custom grouping of available modules. Libraries are created and deleted on Organization creation and deletion - there are are no POST or DELETE routes for Library Entities themselves.
Modules
Library modules and library section modules link directly to Modules. Modules' type will be referenced in this documentation.
Example
Organization Library:
{
"excludedModuleIds": string[],
"schemaVersion": 1,
"createdAt": number,
"updatedAt": number
}
Update Library - (Platform Admin)
PATCH /organizations/{organization_id}/library
Example Request:
{
"excludedModuleIds": ["mod789", "mod999"]
}
Example Response (200 OK):
{
"success": true,
"message": "updated organization library successfully.",
"data": {
"excludedModuleIds": ["mod789", "mod999"]
}
}
Get Organization's Effective Library - (Authorized User)
GET /organizations/{organization_id}/library
Example Response (200 OK):
{
"success": true,
"message": "retrieved effective library successfully.",
"data": [
"mod001",
"mod002"
// ...all moduleIds not in excludedModuleIds
]
}
Get Library Module - (API Key)
GET /organizations/{organization_id}/library/modules/{module_id}?customFields={"custom": "field"}
Headers:
Authorization: Bearer <API key>
Query Parameters:
customFields
json
❌
Any other optional tracking params
Example Response (200 OK):
{
"success": true,
"message": "Library Module retrieved successfully.",
"data": {
"url": "https://example.com/1/index.html?params",
"signedCookies": {
"CloudFront-Key-Pair-Id": "example-id",
"CloudFront-Signature": "example-signature",
"CloudFront-Policy": "example-token"
},
...ModuleDocType // All Module Doc information will be returned. Please reference "### Modules" above
}
}
Library Sections Resource
Description
Library Sections are curated groupings of modules defined by organization admins. Each section is a manually maintained inclusion list of module IDs, scoped to that organization’s effective library.
Library Sections
Sections allow for custom views like "Cybersecurity" or "Onboarding" without affecting the organization's main library.
Example
Library Section:
{
"_id": string,
"name": string,
"description": string,
"moduleIds": string[],
"createdAt": number,
"updatedAt": number,
"schemaVersion": 1
}
Create Library Section - (Organization Admin)
POST /organizations/{organization_id}/library/sections
Example Request:
{
"name": "Cybersecurity",
"description": "Modules related to information security.",
"moduleIds": ["mod001", "mod002"]
}
Example Response (201 Created):
{
"success": true,
"message": "created library section successfully.",
"data": {
"name": "Cybersecurity",
"description": "Modules related to information security.",
"moduleIds": ["mod001", "mod002"]
}
}
Get All Library Sections
GET /organizations/{organization_id}/library/sections
Example Response (200 OK):
{
"success": true,
"message": "retrieved library sections successfully.",
"data": [
{
"_id": "sec123",
"name": "Cybersecurity",
"description": "Modules related to information security.",
"moduleIds": ["mod001", "mod002"]
}
// ...more sections
]
}
Get Library Section by ID
GET /organizations/{organization_id}/library/sections/{section_id}
Example Response (200 OK):
{
"success": true,
"message": "retrieved library section successfully.",
"data": {
"section": {
"_id": "sec123",
"name": "Cybersecurity",
"description": "Modules related to information security.",
"moduleIds": ["mod001", "mod002"]
},
"modules": [{
...ModuleDocType // All Module Doc information will be returned. Please reference "### Modules" above
}]
}
}
Update Library Section - (Organization Admin)
PATCH /organizations/{organization_id}/library/sections/{section_id}
Example Request:
{
"name": "Cybersecurity Essentials",
"moduleIds": ["mod001", "mod004"]
}
Example Response (200 OK):
{
"success": true,
"message": "updated library section successfully.",
"data": {
"name": "Cybersecurity Essentials",
"moduleIds": ["mod001", "mod004"]
}
}
Get Library Section Module - (API Key)
GET /organizations/{organization_id}/library/sections/{section_id}/modules/{module_id}?customFields={"custom": "field"}
Headers:
Authorization: Bearer <API key>
Query Parameters:
customFields
json
❌
Any other optional tracking params
Example Response (200 OK):
{
"success": true,
"message": "Library Section Module retrieved successfully.",
"data": {
"url": "https://example.com/1/index.html?params",
"signedCookies": {
"CloudFront-Key-Pair-Id": "example-id",
"CloudFront-Signature": "example-signature",
"CloudFront-Policy": "example-token"
},
...ModuleDocType // All Module Doc information will be returned. Please reference "### Modules" above
}
}
Delete Library Section - (Organization Admin)
DELETE /organizations/{organization_id}/library/sections/{section_id}
Example Response (200 OK):
{
"success": true,
"message": "deleted library section successfully."
}
Last updated