Question about "one record per term" setting in OneRoster API

We have recently begun to move from CSV data uploads to OneRoster API sync in Clever. Everything looks good for schools, students, and teachers. For sections, a lot of class sections are missing. Looking at the change files in Clever, I think only the current term's data is being exposed by the OneRoster API.

For example:

  • 11th Grade English and Comp. - 1 (SIS ID: 12345678)
    • This is the 1st semester section
    • It is included in the data exposed by the API (corresponding SIS ID is cls-123-12345678)
  • 11th Grade English and Comp. - 1 (SIS ID: 12345679)
    • This is the 2nd semester section
    • It is not included in the data exposed by the API

I have spoken with Clever and they stated: “We currently aren't applying any filtering on our end, but simply syncing what is available via the Blackbaud API. If those sections are being deleted then they are not being presented on the API. Blackbaud may know more about the logic behind what surfaces a section to their API."

We have “One record per term” set in our integration settings. That should include a record for both terms, correct?

Tagged:

Comments

  • Stephen Boyle
    Stephen Boyle Blackbaud Employee
    Tenth Anniversary Kudos 5 First Reply Name Dropper

    @Andrew Blackburn
    There is a setting on the OneRoster Settings dialog that might address your issue. The standard OneRoster class structure expects a single record for a class with all the terms they live in listed on that record. Many systems do not look to the terms collection on the class record for their separate term rosters, but rather need a separate record for each term of the class.

    We have allowed the integration to do exactly that, so I would suggest you check how you have this set. Changing the Multi-term Classes setting may solve your problem. One note on this is to pay attention to the naming convention needed for these class terms. We have provided a setting that appends the term name to the class section so you can distinguish between the rows more easily.

    22bf06aaa4966030d23cd519617f1d5a-huge-im

  • @Stephen Boyle
    Thank you. I think I may have set “one record per term” after the initial pull that Clever did. They pause sync after that to assist with the conversion of old data → new data (mostly matching up the old SIS ID with new ones). I have asked them if they can try pulling the data again to see if all of the records are there.

    For my sanity, I checked to see what data is actually exposed with Postman. It's correct…at least how I am expecting to see it (one record per term). So, I think this issue is either old data or something else on Clever's end.

    I'll update this thread once I hear back!

  • I just wanted to update this thread. The issue was not on my end or Blackbaud's end. Clever adjusted things on their end in terms of filtering so all of our terms/sections are included. After the changes, and some cross walks / data mapping, everything is working correctly with Blackbaud's OneRoster API implementation -> Clever.

Categories