Skip to content

Instantly share code, notes, and snippets.

@nedbat
Last active April 24, 2017 11:10
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save nedbat/76f19e2af264e7f0bf5743fe659ed911 to your computer and use it in GitHub Desktop.
Save nedbat/76f19e2af264e7f0bf5743fe659ed911 to your computer and use it in GitHub Desktop.
>>> res = requests.get('https://openedx.atlassian.net/wiki/rest/api/space/OXA?expand=permissions', auth=AUTH)
>>> pprint.pprint(res.json())
{'_expandable': {'description': '',
'homepage': '/rest/api/content/157690905',
'icon': '',
'metadata': '',
'operations': ''},
'_links': {'base': 'https://openedx.atlassian.net/wiki',
'collection': '/rest/api/space',
'context': '/wiki',
'self': 'https://openedx.atlassian.net/wiki/rest/api/space/OXA',
'webui': '/spaces/OXA'},
'id': 157690782,
'key': 'OXA',
'name': 'Open edX Answers',
'permissions': [{'anonymousAccess': False,
'operation': {'operation': 'delete', 'targetType': 'page'},
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/administrators'},
'name': 'administrators',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'create', 'targetType': 'page'},
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/core-committers'},
'name': 'core-committers',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'delete',
'targetType': 'blogpost'},
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/administrators'},
'name': 'administrators',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/administrators'},
'name': 'administrators',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'delete',
'targetType': 'attachment'},
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/administrators'},
'name': 'administrators',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'create', 'targetType': 'comment'},
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/core-committers'},
'name': 'core-committers',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/core-committers'},
'name': 'core-committers',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'read', 'targetType': 'space'},
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/confluence-users'},
'name': 'confluence-users',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/confluence-users'},
'name': 'confluence-users',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'update',
'targetType': 'blogpost'},
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/core-committers'},
'name': 'core-committers',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/administrators'},
'name': 'administrators',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'read', 'targetType': 'space'},
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/core-committers'},
'name': 'core-committers',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'update',
'targetType': 'blogpost'},
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/confluence-users'},
'name': 'confluence-users',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/administrators'},
'name': 'administrators',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'create', 'targetType': 'comment'},
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/confluence-users'},
'name': 'confluence-users',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'create', 'targetType': 'page'},
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/administrators'},
'name': 'administrators',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'create', 'targetType': 'page'},
'subjects': {'_expandable': {'group': ''},
'user': {'results': [{'_expandable': {'details': '',
'operations': ''},
'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/user?key=ff808081492b2d47014933d02c200005'},
'displayName': 'Copy '
'Space',
'profilePicture': {'height': 48,
'isDefault': True,
'path': '/wiki/images/icons/profilepics/default.png',
'width': 48},
'type': 'known',
'userKey': 'ff808081492b2d47014933d02c200005',
'username': 'addon_ac-copy-space'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'create',
'targetType': 'attachment'},
'subjects': {'_expandable': {'group': ''},
'user': {'results': [{'_expandable': {'details': '',
'operations': ''},
'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/user?key=ff808081492b2d47014933d02c200005'},
'displayName': 'Copy '
'Space',
'profilePicture': {'height': 48,
'isDefault': True,
'path': '/wiki/images/icons/profilepics/default.png',
'width': 48},
'type': 'known',
'userKey': 'ff808081492b2d47014933d02c200005',
'username': 'addon_ac-copy-space'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'create', 'targetType': 'comment'},
'subjects': {'_expandable': {'group': ''},
'user': {'results': [{'_expandable': {'details': '',
'operations': ''},
'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/user?key=ff808081492b2d47014933d02c200005'},
'displayName': 'Copy '
'Space',
'profilePicture': {'height': 48,
'isDefault': True,
'path': '/wiki/images/icons/profilepics/default.png',
'width': 48},
'type': 'known',
'userKey': 'ff808081492b2d47014933d02c200005',
'username': 'addon_ac-copy-space'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'update',
'targetType': 'blogpost'},
'subjects': {'_expandable': {'group': ''},
'user': {'results': [{'_expandable': {'details': '',
'operations': ''},
'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/user?key=ff808081492b2d47014933d02c200005'},
'displayName': 'Copy '
'Space',
'profilePicture': {'height': 48,
'isDefault': True,
'path': '/wiki/images/icons/profilepics/default.png',
'width': 48},
'type': 'known',
'userKey': 'ff808081492b2d47014933d02c200005',
'username': 'addon_ac-copy-space'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'delete', 'targetType': 'page'},
'subjects': {'_expandable': {'group': ''},
'user': {'results': [{'_expandable': {'details': '',
'operations': ''},
'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/user?key=ff808081492b2d47014933d02c200005'},
'displayName': 'Copy '
'Space',
'profilePicture': {'height': 48,
'isDefault': True,
'path': '/wiki/images/icons/profilepics/default.png',
'width': 48},
'type': 'known',
'userKey': 'ff808081492b2d47014933d02c200005',
'username': 'addon_ac-copy-space'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'delete',
'targetType': 'attachment'},
'subjects': {'_expandable': {'group': ''},
'user': {'results': [{'_expandable': {'details': '',
'operations': ''},
'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/user?key=ff808081492b2d47014933d02c200005'},
'displayName': 'Copy '
'Space',
'profilePicture': {'height': 48,
'isDefault': True,
'path': '/wiki/images/icons/profilepics/default.png',
'width': 48},
'type': 'known',
'userKey': 'ff808081492b2d47014933d02c200005',
'username': 'addon_ac-copy-space'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'delete', 'targetType': 'comment'},
'subjects': {'_expandable': {'group': ''},
'user': {'results': [{'_expandable': {'details': '',
'operations': ''},
'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/user?key=ff808081492b2d47014933d02c200005'},
'displayName': 'Copy '
'Space',
'profilePicture': {'height': 48,
'isDefault': True,
'path': '/wiki/images/icons/profilepics/default.png',
'width': 48},
'type': 'known',
'userKey': 'ff808081492b2d47014933d02c200005',
'username': 'addon_ac-copy-space'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'delete',
'targetType': 'blogpost'},
'subjects': {'_expandable': {'group': ''},
'user': {'results': [{'_expandable': {'details': '',
'operations': ''},
'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/user?key=ff808081492b2d47014933d02c200005'},
'displayName': 'Copy '
'Space',
'profilePicture': {'height': 48,
'isDefault': True,
'path': '/wiki/images/icons/profilepics/default.png',
'width': 48},
'type': 'known',
'userKey': 'ff808081492b2d47014933d02c200005',
'username': 'addon_ac-copy-space'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'subjects': {'_expandable': {'group': ''},
'user': {'results': [{'_expandable': {'details': '',
'operations': ''},
'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/user?key=ff808081492b2d47014933d02c200005'},
'displayName': 'Copy '
'Space',
'profilePicture': {'height': 48,
'isDefault': True,
'path': '/wiki/images/icons/profilepics/default.png',
'width': 48},
'type': 'known',
'userKey': 'ff808081492b2d47014933d02c200005',
'username': 'addon_ac-copy-space'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': True,
'operation': {'operation': 'read', 'targetType': 'space'},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'read', 'targetType': 'space'},
'subjects': {'_expandable': {'group': ''},
'user': {'results': [{'_expandable': {'details': '',
'operations': ''},
'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/user?key=ff808081465a4dee0146bf9290c60068'},
'displayName': 'Ned '
'Batchelder',
'profilePicture': {'height': 48,
'isDefault': False,
'path': '/wiki/download/attachments/1867886/ned-51847-pp-face-jr-square-192.jpg',
'width': 48},
'type': 'known',
'userKey': 'ff808081465a4dee0146bf9290c60068',
'username': 'ned'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'create', 'targetType': 'comment'},
'subjects': {'_expandable': {'group': ''},
'user': {'results': [{'_expandable': {'details': '',
'operations': ''},
'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/user?key=ff808081465a4dee0146bf9290c60068'},
'displayName': 'Ned '
'Batchelder',
'profilePicture': {'height': 48,
'isDefault': False,
'path': '/wiki/download/attachments/1867886/ned-51847-pp-face-jr-square-192.jpg',
'width': 48},
'type': 'known',
'userKey': 'ff808081465a4dee0146bf9290c60068',
'username': 'ned'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'create', 'targetType': 'page'},
'subjects': {'_expandable': {'group': ''},
'user': {'results': [{'_expandable': {'details': '',
'operations': ''},
'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/user?key=ff808081465a4dee0146bf9290c60068'},
'displayName': 'Ned '
'Batchelder',
'profilePicture': {'height': 48,
'isDefault': False,
'path': '/wiki/download/attachments/1867886/ned-51847-pp-face-jr-square-192.jpg',
'width': 48},
'type': 'known',
'userKey': 'ff808081465a4dee0146bf9290c60068',
'username': 'ned'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'subjects': {'_expandable': {'group': ''},
'user': {'results': [{'_expandable': {'details': '',
'operations': ''},
'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/user?key=ff808081465a4dee0146bf9290c60068'},
'displayName': 'Ned '
'Batchelder',
'profilePicture': {'height': 48,
'isDefault': False,
'path': '/wiki/download/attachments/1867886/ned-51847-pp-face-jr-square-192.jpg',
'width': 48},
'type': 'known',
'userKey': 'ff808081465a4dee0146bf9290c60068',
'username': 'ned'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'delete', 'targetType': 'page'},
'subjects': {'_expandable': {'group': ''},
'user': {'results': [{'_expandable': {'details': '',
'operations': ''},
'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/user?key=ff808081465a4dee0146bf9290c60068'},
'displayName': 'Ned '
'Batchelder',
'profilePicture': {'height': 48,
'isDefault': False,
'path': '/wiki/download/attachments/1867886/ned-51847-pp-face-jr-square-192.jpg',
'width': 48},
'type': 'known',
'userKey': 'ff808081465a4dee0146bf9290c60068',
'username': 'ned'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'delete', 'targetType': 'comment'},
'subjects': {'_expandable': {'group': ''},
'user': {'results': [{'_expandable': {'details': '',
'operations': ''},
'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/user?key=ff808081465a4dee0146bf9290c60068'},
'displayName': 'Ned '
'Batchelder',
'profilePicture': {'height': 48,
'isDefault': False,
'path': '/wiki/download/attachments/1867886/ned-51847-pp-face-jr-square-192.jpg',
'width': 48},
'type': 'known',
'userKey': 'ff808081465a4dee0146bf9290c60068',
'username': 'ned'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'delete',
'targetType': 'blogpost'},
'subjects': {'_expandable': {'group': ''},
'user': {'results': [{'_expandable': {'details': '',
'operations': ''},
'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/user?key=ff808081465a4dee0146bf9290c60068'},
'displayName': 'Ned '
'Batchelder',
'profilePicture': {'height': 48,
'isDefault': False,
'path': '/wiki/download/attachments/1867886/ned-51847-pp-face-jr-square-192.jpg',
'width': 48},
'type': 'known',
'userKey': 'ff808081465a4dee0146bf9290c60068',
'username': 'ned'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'create',
'targetType': 'attachment'},
'subjects': {'_expandable': {'group': ''},
'user': {'results': [{'_expandable': {'details': '',
'operations': ''},
'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/user?key=ff808081465a4dee0146bf9290c60068'},
'displayName': 'Ned '
'Batchelder',
'profilePicture': {'height': 48,
'isDefault': False,
'path': '/wiki/download/attachments/1867886/ned-51847-pp-face-jr-square-192.jpg',
'width': 48},
'type': 'known',
'userKey': 'ff808081465a4dee0146bf9290c60068',
'username': 'ned'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'delete',
'targetType': 'attachment'},
'subjects': {'_expandable': {'group': ''},
'user': {'results': [{'_expandable': {'details': '',
'operations': ''},
'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/user?key=ff808081465a4dee0146bf9290c60068'},
'displayName': 'Ned '
'Batchelder',
'profilePicture': {'height': 48,
'isDefault': False,
'path': '/wiki/download/attachments/1867886/ned-51847-pp-face-jr-square-192.jpg',
'width': 48},
'type': 'known',
'userKey': 'ff808081465a4dee0146bf9290c60068',
'username': 'ned'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'update',
'targetType': 'blogpost'},
'subjects': {'_expandable': {'group': ''},
'user': {'results': [{'_expandable': {'details': '',
'operations': ''},
'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/user?key=ff808081465a4dee0146bf9290c60068'},
'displayName': 'Ned '
'Batchelder',
'profilePicture': {'height': 48,
'isDefault': False,
'path': '/wiki/download/attachments/1867886/ned-51847-pp-face-jr-square-192.jpg',
'width': 48},
'type': 'known',
'userKey': 'ff808081465a4dee0146bf9290c60068',
'username': 'ned'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'subjects': {'_expandable': {'group': ''},
'user': {'results': [{'_expandable': {'details': '',
'operations': ''},
'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/user?key=ff808081465a4dee0146bf9290c60068'},
'displayName': 'Ned '
'Batchelder',
'profilePicture': {'height': 48,
'isDefault': False,
'path': '/wiki/download/attachments/1867886/ned-51847-pp-face-jr-square-192.jpg',
'width': 48},
'type': 'known',
'userKey': 'ff808081465a4dee0146bf9290c60068',
'username': 'ned'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'subjects': {'_expandable': {'group': ''},
'user': {'results': [{'_expandable': {'details': '',
'operations': ''},
'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/user?key=ff808081465a4dee0146bf9290c60068'},
'displayName': 'Ned '
'Batchelder',
'profilePicture': {'height': 48,
'isDefault': False,
'path': '/wiki/download/attachments/1867886/ned-51847-pp-face-jr-square-192.jpg',
'width': 48},
'type': 'known',
'userKey': 'ff808081465a4dee0146bf9290c60068',
'username': 'ned'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'subjects': {'_expandable': {'group': ''},
'user': {'results': [{'_expandable': {'details': '',
'operations': ''},
'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/user?key=ff808081465a4dee0146bf9290c60068'},
'displayName': 'Ned '
'Batchelder',
'profilePicture': {'height': 48,
'isDefault': False,
'path': '/wiki/download/attachments/1867886/ned-51847-pp-face-jr-square-192.jpg',
'width': 48},
'type': 'known',
'userKey': 'ff808081465a4dee0146bf9290c60068',
'username': 'ned'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'subjects': {'_expandable': {'group': ''},
'user': {'results': [{'_expandable': {'details': '',
'operations': ''},
'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/user?key=ff808081465a4dee0146bf9290c60068'},
'displayName': 'Ned '
'Batchelder',
'profilePicture': {'height': 48,
'isDefault': False,
'path': '/wiki/download/attachments/1867886/ned-51847-pp-face-jr-square-192.jpg',
'width': 48},
'type': 'known',
'userKey': 'ff808081465a4dee0146bf9290c60068',
'username': 'ned'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'create', 'targetType': 'comment'},
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/edx-employees'},
'name': 'edx-employees',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'create', 'targetType': 'page'},
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/edx-employees'},
'name': 'edx-employees',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'update',
'targetType': 'blogpost'},
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/edx-employees'},
'name': 'edx-employees',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'read', 'targetType': 'space'},
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/edx-employees'},
'name': 'edx-employees',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/administrators'},
'name': 'administrators',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'update',
'targetType': 'blogpost'},
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/administrators'},
'name': 'administrators',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/administrators'},
'name': 'administrators',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'delete', 'targetType': 'comment'},
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/administrators'},
'name': 'administrators',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'create', 'targetType': 'comment'},
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/administrators'},
'name': 'administrators',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'create', 'targetType': 'page'},
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/confluence-users'},
'name': 'confluence-users',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'create',
'targetType': 'attachment'},
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/edx-employees'},
'name': 'edx-employees',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'create',
'targetType': 'attachment'},
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/confluence-users'},
'name': 'confluence-users',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'read', 'targetType': 'space'},
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/administrators'},
'name': 'administrators',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'create',
'targetType': 'attachment'},
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/core-committers'},
'name': 'core-committers',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/edx-employees'},
'name': 'edx-employees',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False},
{'anonymousAccess': False,
'operation': {'operation': 'create',
'targetType': 'attachment'},
'subjects': {'_expandable': {'user': ''},
'group': {'results': [{'_links': {'self': 'https://openedx.atlassian.net/wiki/rest/experimental/group/administrators'},
'name': 'administrators',
'type': 'group'}],
'size': 1}},
'unlicensedAccess': False}],
'type': 'global'}
>>>
## Summarizing the permissions:
summary = collections.defaultdict(list)
for p in perms:
op = p.get('operation', {'operation': 'none', 'targetType': 'specified'})
key = f"{op['operation']} {op['targetType']}"
if p['anonymousAccess']:
name = 'anonymous'
else:
name = p['subjects'].get('group', {}).get('results', [{}])[0].get('name')
name = name or p['subjects'].get('user', {}).get('results', [{}])[0].get('username')
summary[key].append(name)
for op, names in sorted(summary.items()):
print(op)
for name in sorted(names):
print(f"\t{name}")
###
create attachment
addon_ac-copy-space
administrators
confluence-users
core-committers
edx-employees
ned
create comment
addon_ac-copy-space
administrators
confluence-users
core-committers
edx-employees
ned
create page
addon_ac-copy-space
administrators
confluence-users
core-committers
edx-employees
ned
delete attachment
addon_ac-copy-space
administrators
ned
delete blogpost
addon_ac-copy-space
administrators
ned
delete comment
addon_ac-copy-space
administrators
ned
delete page
addon_ac-copy-space
administrators
ned
none specified
addon_ac-copy-space
administrators
administrators
administrators
administrators
administrators
confluence-users
core-committers
edx-employees
ned
ned
ned
ned
ned
read space
administrators
anonymous
confluence-users
core-committers
edx-employees
ned
update blogpost
addon_ac-copy-space
administrators
confluence-users
core-committers
edx-employees
ned
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment