Octavia Guides

Knowledge Base

Browse step-by-step guides for every part of Octavia, with clear navigation and search to help you find what you need fast.

School Integrations - School Integration API

Octavia now supports a pilot School Integration API for schools that need to exchange lesson scheduling and student master data with an external system. The current pilot gives schools two integration paths: This lets a

What This Is

The current pilot gives schools two integration paths:

  • a lesson scheduling export from Octavia into another system
  • a student master sync from a school system into Octavia

This lets a school:

  • read lesson schedule data from Octavia
  • identify which student each lesson row belongs to
  • receive attendance on the same lesson-participant row
  • create or update student master records in Octavia from another school system

What Is Included Right Now

The current live scope includes:

  • Lesson scheduling export
  • Student master sync import

The current live scope does not include:

  • webhook push delivery
  • delete sync
  • lesson write access

Who Runs The Integration

Version one uses a school-managed integration model.

That means your school, IT team, or integration provider is responsible for:

  • deciding when lesson data is polled from Octavia
  • scheduling and sending student sync requests into Octavia
  • managing retries or recovery if a request fails
  • running any broader reconciliation process your school wants for extra confidence

Octavia processes the requests it receives, but it does not currently pull student master data from your school system automatically.

Who Can Set It Up

Only admins can manage integration keys.

The Integrations area is available inside:

  • School Settings -> Integrations

Your school must also have the School Integrations entitlement enabled on its plan.

API Keys

Admins can create school-scoped API keys inside School Settings -> Integrations.

Current live scopes:

  • lessons:read
  • students:sync

Important key behaviour:

  • the raw key is shown once only at creation time
  • Octavia stores only a hashed version of the key
  • keys are scoped to the current school
  • keys can be revoked later

The Two Integration Paths

Lesson Scheduling Export

Use this when your school system needs to read upcoming lesson schedule data from Octavia.

At a high level:

  • your school system polls Octavia on a schedule
  • Octavia returns one row per lesson participant
  • each row can include attendance and lesson context information

Important operational point:

  • if your downstream system needs to remove lessons that were later cancelled or deleted in Octavia, it should not rely only on a narrow delta poll
  • your school should also run a broader reconciliation process over a wider schedule window
  • if your school needs attendance updates closer to real time, your IT team can use a faster same-day polling pattern for a narrow lesson window, while keeping broader schedule syncs less frequent

Student Master Sync

Use this when your school system needs to create or update student master records in Octavia.

At a high level:

  • your school system prepares a batch of student records
  • your school system sends those records to Octavia
  • Octavia creates, updates, or leaves records unchanged depending on what already exists

Important operational point:

  • this is a school-managed push into Octavia
  • your school or integration provider decides when to send changes and when to run broader reconciliation batches

What Your IT Team Will Need

Your IT team or integration provider will need:

  • the correct endpoint URL for your Octavia environment
  • a valid API key with the right scope
  • a schedule for lesson polling
  • a schedule or trigger pattern for student sync pushes
  • downstream reconciliation logic if your school needs reliable removal of cancelled or deleted lesson instances

A practical version-one approach is:

  1. Use the lesson export for regular schedule polling.
  2. Use the student sync endpoint to send student master updates into Octavia.
  3. Run both on school-managed schedules.
  4. Add broader reconciliation runs for confidence, especially for lesson removals and missed updates.

If attendance data needs to flow through more quickly during the school day, your IT team can also add a tighter same-day lesson polling cycle alongside the normal broader schedule sync.

Technical Setup Guide

For endpoint details, request parameters, example requests, response shapes, and implementation guidance for your IT team, use:

Support

If your school is joining the pilot and needs help with setup, key management, or deciding how to run the integration, contact Octavia support.