Welcome to Voshi
Voshi connects your educational app to Learning Management Systems — Canvas, Blackboard, Moodle, and any other LTI 1.3 platform — without you writing a single line of LTI code.
Voshi handles all the interactions with the LMS and sends each launch to a single HTTPS endpoint you build — a signed JWT identifying the school, course, and user. When a student finishes graded work, you can push a score back with one API call.
These docs are archived. They describe the contract as it stood on 2026-08-19. Voshi has since added provisioning and app-served locations, and replaced the user.role claim — an integration built from this version needs changes to keep working. See the changelog for what changed and what to do about it.
Voshi is in early stages of development. These docs and the related features can and probably will change — we'll keep you appraised of changes that impact you.
Building with an AI assistant? The entire documentation is available as a single markdown file at https://myeducator-llc.github.io/voshi-docs/llms-full.txt — point your assistant at that URL and it has everything. A page index lives at /llms.txt.
How an integration works
- You register your app in the Voshi dashboard — a name, a callback URL, and the locations (destinations) instructors can place in their courses.
- An instructor adds your app to a course. Voshi provides the content picker; your app doesn't need to do anything.
- A student opens your app from the course. Voshi sends the student's browser to your callback URL with a signed JWT describing who they are, what course they're in, and which location they opened.
- Your app verifies the JWT and takes over. From that point the student is simply using your app.
- You push a grade back (optional) with a single authenticated
POST— Voshi syncs it to the LMS gradebook.
What you get in every launch
The launch JWT tells you everything you need — with stable Voshi IDs, and no PII:
- Who: a stable user ID and their role (
student,instructor, oradmin) - Where: the course and the school (organization)
- What: which of your locations was launched, with the static params you configured on it
- Grading: whether this launch can accept a grade
- Storage: URLs for four per-launch data rows you can read and write through the App Data API
Start building
Register an app, stand up a launch receiver, and send your first grade.
The single endpoint you build, and what Voshi sends to it.
Push scores to the LMS gradebook with one API call.
Free key-value storage scoped to courses, placements, and students.