Skip to content

Unified API

Unified LMS API

One standardized interface to read and write learning management system data across every provider. 4 unified resources, 1 supported integrations, zero provider-specific code.

https://api.truto.one/unified/lms
Start integrating API docs
4

Unified resources

1

Supported integrations

Pass‑through

Real-time, no data storage

Data Model

LMS resources

Every resource is normalized across providers. Use the same schema whether your customer is on any provider.

Course-enrollments

CourseEnrollments represent the User-to-Course learning record. These are usually called enrollments, registrations, assignments, transcript items, or learning records in the underlying products. A CourseEnrollment links a User to a Course and captures assignment details, progress, completion status, scores, due dates, and other completion outcomes where supported.

21 fields Docs →
Course-enrollments fields
id string
user object
course object
status string
assigned_at string
due_at string
enrolled_at string
started_at string
last_activity_at string
completed_at string
progress_percent number
time_spent_seconds integer
score number
is_mandatory boolean
assigned_by object
attempt_number integer
attempts_count integer
urls array
created_at string
updated_at string
custom_fields object

Course-items

CourseItems represent the content structure inside a Course. These are usually called modules, lessons, units, chapters, topics, activities, or learning objects in the underlying products. A Course can contain one or more CourseItems, and CourseItems may be hierarchical where an item can belong to another item.

13 fields Docs →
Course-items fields
id string
course object
parent object
type string
title string
description string
position integer
duration_seconds integer
is_required boolean
urls array
created_at string
updated_at string
custom_fields object

Courses

Courses represent the learning items available in the LMS catalog. These are usually called courses, training, learning items, classes, or content in the underlying products. A Course can contain one or more CourseItems and can be assigned or enrolled in by Users via CourseEnrollments.

17 fields Docs →
Courses fields
id string
title string
description string
code string
type string
status string
language string
duration_seconds integer
level string
urls array
tags array
categories array
organization object
published_at string
created_at string
updated_at string
custom_fields object

Users

Users represent the people in the LMS. These are usually called users, learners, employees, or members in the underlying products. A User can be assigned Courses, can enroll in Courses, and generates progress and completion history through CourseEnrollments.

17 fields Docs →
Users fields
id string
first_name string
last_name string
name string
username string
emails array
status string
role string
phones array
locale string
timezone string
job_title string
organization object
manager object
created_at string
updated_at string
custom_fields object

Integrations

1 integrations, one API

Connect to any of these providers through the Unified LMS API. Same resources, same schema, same code.

How It Works

From zero to integrated

Go live with the Unified LMS API in under an hour. No boilerplate, no maintenance burden.

01

Connect your customer’s account

Use Truto’s pre-built auth flows to connect any learning management system provider. OAuth, API keys, and custom auth — all handled.

02

Query the unified API

Read and write data through a single, normalized REST API. Same endpoints, same schema, regardless of the underlying provider.

03

Customize with JSONata

Need a field the unified model doesn’t cover? Extend the schema with declarative JSONata mappings — no code deploys, no waiting on us.

Unified LMS API

Start building with the Unified LMS API

1 integrations. 4 unified resources. Zero provider-specific code. Ship learning management system integrations in hours, not months.

Talk to us