401 error when accessing School API endpoint [Student enrollment list]

Hello,

I'm trying to access the https://api.sky.blackbaud.com/school/v1/academics/enrollments/xxxxxxx endpoint, but I keep getting this 401 error:

{
"errors": [{
"message": "User has no access.",
"error_code": 401,
"error_name": "ServiceClientException",
"raw_message": "User has no access."
}]
}



I have a valid authentication token, and I'm using the correct Bb-Api-Subscription-Key. This endpoint "Requires the 'Academic Group Manager' or 'Schedule Manager' role in the K12 system," and the account I'm using the authorize the request has the Academic Group Manager role, so I have no idea why I'm getting a 401 error... Is there some kind of setting that needs to be changed somewhere to allow API requests? The environment is already connected to the application. Any help would be greatly appreciated. Thank you.

Comments

  • Try adding the "SKY API Basic" role as well, see if that helps?
  • Thanks for your reply. We just tried that, along with the SKY API Data Sync role, and neither has worked (still same error). Does my account need to be in the system too? If so, how can my account be added? Also, are there any settings in the system that need to be changed to allow the API to be used? The account we're using has admin permissions, so I feel like there's some step somewhere we missed that's causing this problem.


    Thanks.
  • Hi Jackson, the School API documentation (https://developer.blackbaud.com/skyapi/apis/school) outlines some key requirements for accessing SKY API.  For instance it requires Blackbaud ID (BBID), which you I realize you already have given that you got an API subscription key, but are you authenticating to Education Management (myschoolapp) via this same BBID? If not, that BBID<->Education Management link needs to be made, which a Platform Manager can help you with. Check this out for more detail: https://developer.blackbaud.com/skyapi/apis/school/blackbaud-id

Categories