Confluence Get Page Restrictions API doesn't display inherited restrictions
Platform Notice: Cloud Only - This article only applies to Atlassian products on the cloud platform.
Summary
At the moment, the inherited permissions are not displayed when examining the restrictions for a page using the REST API.
If the page has no restrictions other than the inherited ones, no restrictions are returned.
Solution
Feature Request
The feature request CONFCLOUD-71108 - Ability to list inherited page restrictions via REST API is tracking interest on a future resolution of this requirement for users.
Solution 1
The following APIs can be used in combination, although this method requires some programming knowledge (e.g. with Python)
Example below (not officially supported by Atlassian):
1
2
3
4
5
6
7
from atlassian import Confluence
import json confluence = Confluence(url='https://<SITE_NAME>.atlassian.net',username='user_email',password='API_TOKEN',cloud=True)
f = open('log.txt','w')
ancestors=confluence.get_page_ancestors(page_id)
for ancestor in ancestors:
ancestor_index= ancestor['id']
print(json.dumps(confluence.get_all_restrictions_for_content(ancestor_index),indent=4),file=f)
Solution 2
The below REST API endpoint is invoked when we click on the restrictions button on a page. It returns if the queried page has inherited restrictions.
POST https://<instance+name>.atlassian.net/cgraphql?q=RestrictionsDialogQuery
Was this helpful?