Skip to Content
OneRoster 1.2

OneRoster overview

Connect the school's student information system (SIS) to the internship portal with OneRoster 1.2.

Each school's portal offers an API that follows the international 1EdTech OneRoster 1.2 standard, so the school's SIS or another system can read students, internship seasons and internship results. Any software that already supports OneRoster can connect without custom work.

At a glance

  • Standard: OneRoster 1.2, Rostering and Gradebook services, REST binding, read-only.
  • Authentication: OAuth 2.0 client credentials, as OneRoster 1.2 requires. See Authentication.
  • Address: each school uses its own portal address, e.g. https://<school>.<platform-domain>. A school's credentials only work there and only see that school's data.
  • Format: JSON, UTF-8. Timestamps are ISO 8601 (UTC); dates (startDate, endDate, scoreDate) are in Vietnam time.

Quick start

Create a connection

School staff open Kết nối hệ thống (Integrations) → Tạo kết nối (New connection), name it, pick its scopes, and send the client_id and client_secret to whoever runs the system. The secret is shown once.

Get an access token

curl -u "CLIENT_ID:CLIENT_SECRET" \
  -d "grant_type=client_credentials" \
  https://<school>.<platform-domain>/oauth/token

Call the API

curl -H "Authorization: Bearer ACCESS_TOKEN" \
  "https://<school>.<platform-domain>/ims/oneroster/rostering/v1p2/students?limit=100"

Two services

ServiceBase pathContent
Rostering/ims/oneroster/rostering/v1p2School, seasons, course, classes, students, staff, enrollments
Gradebook/ims/oneroster/gradebook/v1p2Each student's internship result in each season

Details: Roster data and Internship results. Working code: Sync examples.

Sending data to the portal

The OneRoster API is read-only. To send students, seasons and enrollments from the school's systems:

OptionUse when
OneRoster CSV packageThe school's software exports OneRoster CSV packages
Portal API (v1)The system does not follow OneRoster and needs a simple JSON API to read and write

Machine-readable description

Each portal serves an OpenAPI 3 file at /ims/oneroster/openapi.json, ready for Postman or code generation. The full standard is on the 1EdTech site.

On this page