I don’t consider myself an expert in this, but I’ll try to answer as best I can.
We are trying to ascertain if our addon has access to team managed projects using the Jira Rest API.
The response to GET /rest/api/3/project/search should include all the projects your app can access. I think Connect apps have access to team-managed projects.
Is there a way that the Rest api lets us find out “project access” level: open/private/limited?
I’m not aware of any API that provides the access level of a Team-managed project. Having said that, I’m not sure if providing an API such as this would be valuable as I assume apps would only need to know about roles and permissions?
Is there a way to find out what a project role can actually do, as opposed to the actors in the role eg. manage issues, edit comments etc etc?
You can match project roles to permissions by calling GET /rest/api/3/permissionscheme, iterating through the returned permission schemes matching scope.type == PROJECT and scope.project.id == <id of project of interest>. Each of these matches is an association of a role and permission. The role is identified by holder.parameterand the permission is identified by thepermission` field. The definition of each permission detailed in GET /rest/api/3/permissions.