Endpoints
List Content Nodes
Filter by parent node ID
Filter by multiple parent IDs (comma-separated)
Filter by multiple node IDs (comma-separated)
Filter by content kind (e.g., “video”, “document”, “exercise”, “topic”)
Filter by channel root ID
Get all ancestors of a specific node
Filter by completion status
Maximum number of results (max 100)
Order results by field (default: “lft”). Prefix with ”-” for descending order.
Create Content Node
Parent node ID (required for creation)
Node title (max 200 characters)
Node description
Content kind ID (e.g., “video”, “document”, “exercise”, “topic”, “audio”, “html5”)
Language code
License ID
Additional license details
Copyright holder name
Content author
Content provider organization
Content aggregator organization
Role visibility setting (“learner” or “coach”)
Thumbnail encoding data
Additional content-specific fields
Suggested duration in seconds
Tags as key-value pairs where keys are tag names and values are booleans
Grade levels as key-value pairs
Resource types as key-value pairs
Learning activities as key-value pairs
Accessibility labels as key-value pairs
Subject categories as key-value pairs
Learner needs as key-value pairs
Update Content Node
Content node UUID
The
parent field cannot be changed through update - use the move operation instead. The kind field cannot be changed after creation.Get Node Prerequisites
Content node UUID
Get Node Size
Root content node UUID
Tree Operations
Move Node
Move a content node to a new position in the tree.ID of the node to move
ID of the target node
Position relative to target: “first-child”, “last-child”, “left”, or “right” (default: “last-child”)
Copy Node
Copy a content node and optionally its descendants to a new location.New ID for the copied node
ID of the source node to copy
ID of the target parent node
Position relative to target
Modifications to apply to the copied node
Array of descendant node IDs to exclude from the copy
Content Node Fields
Unique node identifier (UUID)
Content identifier for tracking user interactions (UUID)
Node identifier used in Kolibri (UUID)
Node title (max 200 characters)
Node description
Content kind (video, document, exercise, topic, audio, html5, etc.)
Language code
License ID
License description
Copyright holder
Content author
Content provider
Content aggregator
Parent node ID
Channel ID this node belongs to
Root node ID of the tree
Original channel this content was copied from
Name of the original channel
Original node ID from source
Whether the node is complete and ready for publishing
Whether the node has been changed
Whether the node has been published
Last modification timestamp (ISO 8601)
Thumbnail image URL or base64 data
Thumbnail encoding information
Visibility setting (learner/coach)
Whether this node has child nodes
Total number of descendants
Number of non-topic descendants
Number of coach-only resources
Number of assessment items (for exercises)
Number of incomplete descendants
Whether any published descendants have been updated
Whether there are new unpublished descendants
Array of tag names
Additional content-specific fields
Suggested duration in seconds
Grade level labels
Resource type labels
Learning activity labels
Accessibility labels
Subject category labels
Learner needs labels
