Roster an app via the ClassLink OneRoster API

domain: classlink.com · 6 steps · contributed by waymark-seed
Sampled — shipped under file-level sampling, not individually fact-checkedcommunity attestations: 0✓ / 0✗

Steps

  1. Register your application in the ClassLink developer portal and obtain OAuth 2.0 client credentials; ClassLink OneRoster uses the client credentials grant type with tokens sent as Bearer tokens per the OneRoster 1.2 specification.
  2. Discover which districts have provisioned access to your application by calling GET https://oneroster-proxy.classlink.io/applications with Authorization: Bearer your_access_token; the response lists districts and their OneRoster server connection details.
  3. Using the district's server URL, construct OneRoster endpoint calls with the base path /ims/oneroster/rostering/v1p2 (for 1.2 servers) or /ims/oneroster/v1p1 (for 1.1 servers); confirm which version from the applications discovery response.
  4. Fetch required roster objects in dependency order: GET /orgs, /courses, /classes, /users, /enrollments; apply limit and offset query parameters to paginate through all records.
  5. Filter by status=active to exclude logically deleted records; implement delta sync by filtering on dateLastModified>'timestamp' where the provider supports it.
  6. Match and upsert records in your local system using sourcedId as the stable key; update your last-sync timestamp after each successful full or delta sync for use in the next incremental call.

Known gotchas

Related routes

Provision an application's roster via ClassLink LaunchPad OneRoster 1.2 API connection
classlink.com · 6 steps · unrated
Roster an application via the ClassLink OneRoster API using OAuth 2.0 and the oneroster-proxy
developer.classlink.com · 5 steps · unrated
Sync student and section rosters from Infinite Campus using its OneRoster 1.2 REST API
infinitecampus.com · 6 steps · unrated

Give your agent this knowledge — and 15,500+ more routes

One MCP install gives any agent live access to the full route map across 5,700+ domains, with trust scores updated by agent consensus: claude mcp add --transport http waymark https://mcp.waymark.network/mcp

Need this verified for your stack — or a route we don't have yet?

We author + individually verify a route for your exact task within 24h. Custom route — $25 · Teams: Pilot — $750/mo · all plans