A OneRoster API layer schools can own
Publish OneRoster v1.1 and v1.2 endpoints through Cloudflare Workers while keeping each tenant on district-controlled D1 or Postgres storage.
OpenRoster is an open, multi-tenant OneRoster gateway for districts that need to share roster data without giving up control of it. Approve each vendor by field, context, and time window; mask sensitive identifiers; and serve standards-based APIs from infrastructure your team can inspect.
Approve exact fields
Filter roster context
Mask sensitive IDs
What changes
OpenRoster is not trying to be another classroom portal. It is the data boundary between school-owned roster systems and the vendors asking for access: standards-based APIs, precise grants, masked identifiers, and inspectable infrastructure.
Publish OneRoster v1.1 and v1.2 endpoints through Cloudflare Workers while keeping each tenant on district-controlled D1 or Postgres storage.
Vendors request the data they need, and districts approve the API, entities, fields, context filters, and grant dates before credentials can return data.
The API validates requested fields, rejects unauthorized filters, applies record context, and omits anything outside the approved grant.
Sensitive attributes can be returned as protected values, letting an app match records without receiving plain-text identifiers it does not need.
The grant model, API handlers, metadata, and worker configuration live in an open codebase so districts are not forced to trust a black box.
Application profiles capture requested permissions, audiences, integration types, screenshots, and granted access so reviews stay concrete.
Deployment model
Each tenant can map to its own Cloudflare D1 database or a Postgres database reached through Hyperdrive. The Worker enforces app grants on every request, so district policy sits in the response path instead of in a spreadsheet, file export, or vendor ticket queue.
View deployment notesSchool district
data steward
OpenRoster
OneRoster API, app grants, field rules, context filters, token issuance, and masked attributes.
Security model
For district admins, every app request becomes a visible route through three controls: field permissions, record context, and masked PII handling before roster data reaches a third party.
OpenRoster sharing route
admin grant preview
District SIS
students, classes, guardiansOpenRoster
policy engineUsers
Classes
Enrollments
Math app
Users
Orgs
Enrollments
Library
Users
Classes
Enrollments
Analytics
Audit every outbound share
Which app received which data, from which source, under which policy.governed release
Every app gets its own access recipe and audit trail.
The contrast
Data brokers & existing middlemen all speak to automation, privacy, and data exchange. OpenRoster narrows the promise: an open gateway that enforces exactly what each application can receive.
OpenRoster
Proprietary platforms
Start with ownership
Use OpenRoster when the requirement is specific: standards-based roster access, field-level grants, context filters, masked identifiers, and infrastructure your team can inspect.