AnsweredAssumed Answered

How do I map REST API entitlements to UI privileges?

Question asked by mbuchanon on Oct 15, 2018
Latest reply on Aug 10, 2019 by moneil

I'm trying to do something that should be simple.  I'm trying to get a list of courses with a 'created' date for each course.  The problem I'm running into is I'm trying to do this with a user that's not a system admin.  I'm trying to be secure and give this application the least privileges it requires to run.


I'm calling "/learn/api/public/v2/courses?availability.available=Yes&limit=10" and it is returning all courses, regardless of availability.available or limit.  But, that's another issue   When the call returns all 2-3000 courses, none of them have a "created" attribute unless I set my REST API Integrations Learn User to be an admin user. 


I have tried giving my limited user the "Course/Organization Control Panel (Customization) > Properties" privilege in the UI which appears to map to "course.configure-properties.EXECUTE" entitlement.  This is what the Explore APIs site says I need to be able to access all course properties.  However, this still doesn't work. FWIW, I was able to find this little bit of mapping magic by looking at the language packs, but, it doesn't seem to be enough.


The same calls as with the REST API Integrations Learn User set to "administrator" work just fine. 


So, my question is, where can I find a mapping between the entitlements required to make the REST API calls work and the UI privileges?  Also, to all the developers working so hard to make this all go, could we get the UI privileges needed to function enumerated as part of the implementation notes in addition to the required entitlements?


FWIW, I'm on 3500.0.0-rel.21+b070ffd.


Thanks in advance for any and all assistance!