@pnp/cli-microsoft365 11.9.0 → 11.10.0-beta.3e566b1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (107) hide show
  1. package/.devcontainer/Dockerfile +1 -1
  2. package/.devproxy/api-specs/sharepoint-admin.yaml +50 -0
  3. package/Dockerfile +1 -1
  4. package/allCommands.json +1 -1
  5. package/allCommandsFull.json +1 -1
  6. package/dist/Auth.js +4 -2
  7. package/dist/m365/outlook/commands/event/event-get.js +77 -0
  8. package/dist/m365/outlook/commands.js +1 -0
  9. package/dist/m365/planner/commands/roster/roster-add.js +5 -0
  10. package/dist/m365/planner/commands/roster/roster-get.js +8 -18
  11. package/dist/m365/planner/commands/roster/roster-member-add.js +29 -45
  12. package/dist/m365/planner/commands/roster/roster-member-get.js +28 -44
  13. package/dist/m365/planner/commands/roster/roster-member-list.js +8 -18
  14. package/dist/m365/planner/commands/roster/roster-member-remove.js +30 -48
  15. package/dist/m365/planner/commands/roster/roster-plan-list.js +28 -46
  16. package/dist/m365/planner/commands/roster/roster-remove.js +9 -27
  17. package/dist/m365/planner/commands/task/task-add.js +97 -111
  18. package/dist/m365/planner/commands/task/task-checklistitem-add.js +10 -23
  19. package/dist/m365/planner/commands/task/task-checklistitem-list.js +16 -26
  20. package/dist/m365/planner/commands/task/task-checklistitem-remove.js +10 -23
  21. package/dist/m365/planner/commands/task/task-get.js +46 -69
  22. package/dist/m365/planner/commands/task/task-list.js +33 -69
  23. package/dist/m365/planner/commands/task/task-reference-add.js +15 -35
  24. package/dist/m365/planner/commands/task/task-reference-list.js +8 -18
  25. package/dist/m365/planner/commands/task/task-reference-remove.js +26 -36
  26. package/dist/m365/planner/commands/task/task-remove.js +47 -71
  27. package/dist/m365/planner/commands/task/task-set.js +92 -113
  28. package/dist/m365/pp/commands/website/Webrole.js +2 -0
  29. package/dist/m365/pp/commands/website/website-remove.js +80 -0
  30. package/dist/m365/pp/commands/website/website-webrole-list.js +61 -0
  31. package/dist/m365/pp/commands.js +3 -1
  32. package/dist/m365/purview/commands/auditlog/auditlog-list.js +36 -60
  33. package/dist/m365/purview/commands/retentionevent/retentionevent-add.js +34 -53
  34. package/dist/m365/purview/commands/retentionevent/retentionevent-get.js +10 -23
  35. package/dist/m365/purview/commands/retentionevent/retentionevent-remove.js +11 -32
  36. package/dist/m365/purview/commands/retentioneventtype/retentioneventtype-add.js +9 -24
  37. package/dist/m365/purview/commands/retentioneventtype/retentioneventtype-get.js +10 -23
  38. package/dist/m365/purview/commands/retentioneventtype/retentioneventtype-remove.js +11 -32
  39. package/dist/m365/purview/commands/retentioneventtype/retentioneventtype-set.js +21 -35
  40. package/dist/m365/purview/commands/retentionlabel/retentionlabel-add.js +40 -82
  41. package/dist/m365/purview/commands/retentionlabel/retentionlabel-get.js +10 -23
  42. package/dist/m365/purview/commands/retentionlabel/retentionlabel-remove.js +11 -32
  43. package/dist/m365/purview/commands/retentionlabel/retentionlabel-set.js +35 -78
  44. package/dist/m365/purview/commands/sensitivitylabel/sensitivitylabel-get.js +19 -44
  45. package/dist/m365/purview/commands/sensitivitylabel/sensitivitylabel-list.js +16 -39
  46. package/dist/m365/purview/commands/sensitivitylabel/sensitivitylabel-policysettings-list.js +16 -39
  47. package/dist/m365/purview/commands/threatassessment/threatassessment-add.js +44 -67
  48. package/dist/m365/purview/commands/threatassessment/threatassessment-get.js +11 -33
  49. package/dist/m365/purview/commands/threatassessment/threatassessment-list.js +10 -33
  50. package/dist/m365/spo/commands/homesite/homesite-remove.js +1 -1
  51. package/dist/m365/spo/commands/web/{web-alert-list.js → web-rule-list.js} +7 -4
  52. package/dist/m365/spo/commands/web/{web-alert-remove.js → web-rule-remove.js} +7 -4
  53. package/dist/m365/spo/commands.js +2 -0
  54. package/dist/utils/powerPlatform.js +20 -0
  55. package/docs/docs/cmd/outlook/event/event-get.mdx +280 -0
  56. package/docs/docs/cmd/pp/website/website-remove.mdx +89 -0
  57. package/docs/docs/cmd/pp/website/website-webrole-list.mdx +139 -0
  58. package/docs/docs/cmd/spo/applicationcustomizer/applicationcustomizer-add.mdx +21 -0
  59. package/docs/docs/cmd/spo/applicationcustomizer/applicationcustomizer-get.mdx +19 -0
  60. package/docs/docs/cmd/spo/applicationcustomizer/applicationcustomizer-list.mdx +19 -0
  61. package/docs/docs/cmd/spo/applicationcustomizer/applicationcustomizer-remove.mdx +21 -0
  62. package/docs/docs/cmd/spo/applicationcustomizer/applicationcustomizer-set.mdx +21 -0
  63. package/docs/docs/cmd/spo/cdn/cdn-get.mdx +19 -0
  64. package/docs/docs/cmd/spo/cdn/cdn-origin-add.mdx +21 -0
  65. package/docs/docs/cmd/spo/cdn/cdn-origin-list.mdx +19 -0
  66. package/docs/docs/cmd/spo/cdn/cdn-origin-remove.mdx +21 -0
  67. package/docs/docs/cmd/spo/cdn/cdn-policy-list.mdx +19 -0
  68. package/docs/docs/cmd/spo/cdn/cdn-policy-set.mdx +21 -0
  69. package/docs/docs/cmd/spo/cdn/cdn-set.mdx +21 -0
  70. package/docs/docs/cmd/spo/contenttype/contenttype-add.mdx +19 -0
  71. package/docs/docs/cmd/spo/contenttype/contenttype-get.mdx +19 -0
  72. package/docs/docs/cmd/spo/contenttype/contenttype-list.mdx +19 -0
  73. package/docs/docs/cmd/spo/contenttype/contenttype-remove.mdx +21 -0
  74. package/docs/docs/cmd/spo/contenttype/contenttype-set.mdx +21 -0
  75. package/docs/docs/cmd/spo/contenttype/contenttype-sync.mdx +19 -0
  76. package/docs/docs/cmd/spo/field/field-add.mdx +19 -0
  77. package/docs/docs/cmd/spo/field/field-get.mdx +19 -0
  78. package/docs/docs/cmd/spo/field/field-list.mdx +19 -0
  79. package/docs/docs/cmd/spo/field/field-remove.mdx +21 -0
  80. package/docs/docs/cmd/spo/field/field-set.mdx +21 -0
  81. package/docs/docs/cmd/spo/file/file-checkout-undo.mdx +21 -0
  82. package/docs/docs/cmd/spo/file/file-retentionlabel-ensure.mdx +21 -0
  83. package/docs/docs/cmd/spo/file/file-retentionlabel-remove.mdx +21 -0
  84. package/docs/docs/cmd/spo/file/file-roleassignment-add.mdx +21 -0
  85. package/docs/docs/cmd/spo/file/file-roleassignment-remove.mdx +21 -0
  86. package/docs/docs/cmd/spo/file/file-roleinheritance-break.mdx +21 -0
  87. package/docs/docs/cmd/spo/file/file-roleinheritance-reset.mdx +21 -0
  88. package/docs/docs/cmd/spo/file/file-sharinginfo-get.mdx +19 -0
  89. package/docs/docs/cmd/spo/homesite/homesite-add.mdx +21 -2
  90. package/docs/docs/cmd/spo/homesite/homesite-get.mdx +19 -0
  91. package/docs/docs/cmd/spo/homesite/homesite-list.mdx +19 -0
  92. package/docs/docs/cmd/spo/homesite/homesite-remove.mdx +24 -3
  93. package/docs/docs/cmd/spo/homesite/homesite-set.mdx +21 -2
  94. package/docs/docs/cmd/spo/hubsite/hubsite-connect.mdx +21 -0
  95. package/docs/docs/cmd/spo/hubsite/hubsite-data-get.mdx +19 -0
  96. package/docs/docs/cmd/spo/hubsite/hubsite-disconnect.mdx +21 -0
  97. package/docs/docs/cmd/spo/hubsite/hubsite-get.mdx +19 -0
  98. package/docs/docs/cmd/spo/hubsite/hubsite-list.mdx +19 -0
  99. package/docs/docs/cmd/spo/hubsite/hubsite-register.mdx +19 -0
  100. package/docs/docs/cmd/spo/hubsite/hubsite-rights-grant.mdx +21 -0
  101. package/docs/docs/cmd/spo/hubsite/hubsite-rights-revoke.mdx +21 -0
  102. package/docs/docs/cmd/spo/hubsite/hubsite-set.mdx +19 -0
  103. package/docs/docs/cmd/spo/hubsite/hubsite-unregister.mdx +21 -0
  104. package/docs/docs/cmd/spo/web/{web-alert-list.mdx → web-rule-list.mdx} +13 -7
  105. package/docs/docs/cmd/spo/web/{web-alert-remove.mdx → web-rule-remove.mdx} +10 -4
  106. package/npm-shrinkwrap.json +1363 -650
  107. package/package.json +16 -16
@@ -22,13 +22,16 @@ export const options = z.strictObject({
22
22
  }),
23
23
  userId: z.uuid().optional()
24
24
  });
25
- class SpoWebAlertListCommand extends SpoCommand {
25
+ class SpoWebRuleListCommand extends SpoCommand {
26
26
  get name() {
27
- return commands.WEB_ALERT_LIST;
27
+ return commands.WEB_RULE_LIST;
28
28
  }
29
29
  get description() {
30
30
  return 'Lists all SharePoint list alerts';
31
31
  }
32
+ alias() {
33
+ return [commands.WEB_ALERT_LIST];
34
+ }
32
35
  defaultProperties() {
33
36
  return ['ID', 'Title', 'UserPrincipalName'];
34
37
  }
@@ -104,5 +107,5 @@ class SpoWebAlertListCommand extends SpoCommand {
104
107
  }
105
108
  }
106
109
  }
107
- export default new SpoWebAlertListCommand();
108
- //# sourceMappingURL=web-alert-list.js.map
110
+ export default new SpoWebRuleListCommand();
111
+ //# sourceMappingURL=web-rule-list.js.map
@@ -15,13 +15,16 @@ const options = z.strictObject({
15
15
  id: z.uuid(),
16
16
  force: z.boolean().optional().alias('f')
17
17
  });
18
- class SpoWebAlertRemoveCommand extends SpoCommand {
18
+ class SpoWebRuleRemoveCommand extends SpoCommand {
19
19
  get name() {
20
- return commands.WEB_ALERT_REMOVE;
20
+ return commands.WEB_RULE_REMOVE;
21
21
  }
22
22
  get description() {
23
23
  return 'Removes an alert from a SharePoint list';
24
24
  }
25
+ alias() {
26
+ return [commands.WEB_ALERT_REMOVE];
27
+ }
25
28
  get schema() {
26
29
  return options;
27
30
  }
@@ -50,5 +53,5 @@ class SpoWebAlertRemoveCommand extends SpoCommand {
50
53
  }
51
54
  }
52
55
  }
53
- export default new SpoWebAlertRemoveCommand();
54
- //# sourceMappingURL=web-alert-remove.js.map
56
+ export default new SpoWebRuleRemoveCommand();
57
+ //# sourceMappingURL=web-rule-remove.js.map
@@ -379,6 +379,8 @@ export default {
379
379
  WEB_ROLEASSIGNMENT_ADD: `${prefix} web roleassignment add`,
380
380
  WEB_ROLEINHERITANCE_BREAK: `${prefix} web roleinheritance break`,
381
381
  WEB_ROLEINHERITANCE_RESET: `${prefix} web roleinheritance reset`,
382
+ WEB_RULE_LIST: `${prefix} web rule list`,
383
+ WEB_RULE_REMOVE: `${prefix} web rule remove`,
382
384
  WEB_SET: `${prefix} web set`
383
385
  };
384
386
  //# sourceMappingURL=commands.js.map
@@ -63,6 +63,26 @@ export const powerPlatform = {
63
63
  }
64
64
  return items[0];
65
65
  },
66
+ /**
67
+ * Get a website record ID by unique name
68
+ * Returns the powerpagesiteid of the website
69
+ * @param dynamicsApiUrl The dynamics api url of the environment
70
+ * @param websiteUniqueName The unique name of the Power Pages website
71
+ */
72
+ async getWebsiteIdByUniqueName(dynamicsApiUrl, websiteUniqueName) {
73
+ const requestOptions = {
74
+ url: `${dynamicsApiUrl}/api/data/v9.2/powerpagesites?$filter=name eq '${websiteUniqueName}'`,
75
+ headers: {
76
+ accept: 'application/json;odata.metadata=none'
77
+ },
78
+ responseType: 'json'
79
+ };
80
+ const result = await request.get(requestOptions);
81
+ if (result.value.length === 0) {
82
+ throw Error(`The specified website '${websiteUniqueName}' does not exist.`);
83
+ }
84
+ return result.value[0].powerpagesiteid;
85
+ },
66
86
  /**
67
87
  * Get a card by name
68
88
  * Returns a card object
@@ -0,0 +1,280 @@
1
+ import Global from '../../_global.mdx';
2
+ import Tabs from '@theme/Tabs';
3
+ import TabItem from '@theme/TabItem';
4
+
5
+ # outlook event get
6
+
7
+ Retrieve an event from a specific calendar of a user
8
+
9
+ ## Usage
10
+
11
+ ```sh
12
+ m365 outlook event get [options]
13
+ ```
14
+
15
+ ## Options
16
+
17
+ ```md definition-list
18
+ `-i, --id <id>`
19
+ : ID of the event.
20
+
21
+ `--userId [userId]`
22
+ : ID of the user. Specify either `userId` or `userName`, but not both.
23
+
24
+ `--userName [userName]`
25
+ : UPN of the user. Specify either `userId` or `userName`, but not both.
26
+
27
+ `--calendarId [calendarId]`
28
+ : ID of the calendar. Specify either `calendarId` or `calendarName`, but not both.
29
+
30
+ `--calendarName [calendarName]`
31
+ : Name of the calendar. Specify either `calendarId` or `calendarName`, but not both.
32
+
33
+ `--timeZone [timeZone]`
34
+ : The time zone for the event start and end times. If not specified, the start and end times are in UTC.
35
+ ```
36
+
37
+ <Global />
38
+
39
+ ## Permissions
40
+
41
+ <Tabs>
42
+ <TabItem value="Delegated">
43
+
44
+ | Resource | Permissions |
45
+ |-----------------|-------------------------------------|
46
+ | Microsoft Graph | Calendars.ReadBasic, Calendars.Read |
47
+
48
+ </TabItem>
49
+ <TabItem value="Application">
50
+
51
+ | Resource | Permissions |
52
+ |-----------------|-------------------------------------|
53
+ | Microsoft Graph | Calendars.ReadBasic, Calendars.Read |
54
+
55
+ </TabItem>
56
+ </Tabs>
57
+
58
+ :::note
59
+
60
+ When you specify a value for timeZone, consider the options of the [time zone list](https://learn.microsoft.com/en-us/windows-hardware/manufacture/desktop/default-time-zones?view=windows-11#time-zones), or [additional time zone list](https://learn.microsoft.com/en-us/graph/api/resources/datetimetimezone?view=graph-rest-1.0#additional-time-zones).
61
+
62
+ :::
63
+
64
+ ## Examples
65
+
66
+ Get an event for the current signed-in user from a calendar specified by id.
67
+
68
+ ```sh
69
+ m365 outlook event get --id "AAMkAGVmMDEzMTM4L" --userId "@meId" --calendarId "AAMkAGRkZ"
70
+ ```
71
+
72
+ Get an event for the user from a calendar specified by id and return event times in Pacific Standard Time time zone.
73
+
74
+ ```sh
75
+ m365 outlook event get --id "AAMkAGVmMDEzMTM4L" --userName "john.doe@contoso.com" --calendarId "AAMkAGRkZ" --timeZone 'Pacific Standard Time'
76
+ ```
77
+
78
+ ## Response
79
+
80
+ <Tabs>
81
+ <TabItem value="JSON">
82
+
83
+ ```json
84
+ {
85
+ "id": "AQMkAGYzNjMxYTU4LTJjZjYtNDlhMi1iMzQ2LWVmMTU3YmUzOGM5MABGAAADMN-7V4K8g0q_adetip1DygcAxMBBaLl1lk_dAn8KkjfXKQAAAgENAAAAxMBBaLl1lk_dAn8KkjfXKQAGMVCCQQAAAA==",
86
+ "createdDateTime": "2026-04-04T11:03:22.881996Z",
87
+ "lastModifiedDateTime": "2026-04-04T11:05:26.2216557Z",
88
+ "changeKey": "xMBBaLl1lk+dAn8KkjfXKQAGLmp8jA==",
89
+ "categories": [],
90
+ "transactionId": "localevent:93639269-b1b2-d604-5170-283b0e470da5",
91
+ "originalStartTimeZone": "UTC",
92
+ "originalEndTimeZone": "UTC",
93
+ "iCalUId": "040000008200E00074C5B7101A82E0080000000051EE49A722C4DC0100000000000000001000000065853ABD35D4FE438112E0B9CF451ABF",
94
+ "uid": "040000008200E00074C5B7101A82E0080000000051EE49A722C4DC0100000000000000001000000065853ABD35D4FE438112E0B9CF451ABF",
95
+ "reminderMinutesBeforeStart": 15,
96
+ "isReminderOn": true,
97
+ "hasAttachments": false,
98
+ "subject": "New Product Regulations Touchpoint",
99
+ "bodyPreview": "New Product Regulations Strategy Online Touchpoint Meeting\r\\\n\r\\\nYou're receiving this message because you're a member of the Engineering group. If you don't want to receive any messages or events from this group, stop following it in your inbox.\r\\\n\r\\\n________",
100
+ "importance": "normal",
101
+ "sensitivity": "normal",
102
+ "isAllDay": false,
103
+ "isCancelled": false,
104
+ "isOrganizer": true,
105
+ "responseRequested": true,
106
+ "seriesMasterId": null,
107
+ "showAs": "busy",
108
+ "type": "singleInstance",
109
+ "webLink": "https://outlook.office365.com/owa/?itemid=AQMkAGYzNjMxYTU4LTJjZjYtNDlhMi1iMzQ2LWVmMTU3YmUzOGM5MABGAAADMN%2F7V4K8g0q%2Badetip1DygcAxMBBaLl1lk%2BdAn8KkjfXKQAAAgENAAAAxMBBaLl1lk%2BdAn8KkjfXKQAGMVCCQQAAAA%3D%3D&exvsurl=1&path=/calendar/item",
110
+ "onlineMeetingUrl": null,
111
+ "isOnlineMeeting": true,
112
+ "onlineMeetingProvider": "teamsForBusiness",
113
+ "allowNewTimeProposals": true,
114
+ "occurrenceId": null,
115
+ "isDraft": false,
116
+ "hideAttendees": false,
117
+ "responseStatus": {
118
+ "response": "organizer",
119
+ "time": "0001-01-01T00:00:00Z"
120
+ },
121
+ "body": {
122
+ "contentType": "html",
123
+ "content": "<html>\r\\\n<head>\r\\\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">\r\\\n</head>\r\\\n<body>\r\\\n<div style=\"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)\">\r\\\nNew Product Regulations Strategy Online Touchpoint Meeting</div>\r\\\n<div style=\"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)\">\r\\\n<br>\r\\\n</div>\r\\\n<div style=\"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)\">\r\\\nYou're receiving this message because you're a member of the Engineering group. If you don't want to receive any messages or events from this group, stop following it in&nbsp;your inbox.</div>\r\\\n<br>\r\\\n<div class=\"me-email-text\" lang=\"en-US\" style=\"max-width:1024px; color:#242424; font-family:'Segoe UI','Helvetica Neue',Helvetica,Arial,sans-serif\">\r\\\n<div aria-hidden=\"true\" style=\"margin-bottom:24px; overflow:hidden; white-space:nowrap\">\r\\\n________________________________________________________________________________</div>\r\\\n<div style=\"margin-bottom:12px\"><span class=\"me-email-text\" style=\"font-size:20px; color:#242424; font-weight:600\">Microsoft Teams meeting</span>\r\\\n</div>\r\\\n<div style=\"margin-bottom:6px\"><span class=\"me-email-text\" style=\"font-size:20px; color:#242424; font-weight:600\">Join:\r\\\n</span><a href=\"https://teams.microsoft.com/meet/48803137263631?p=YXe9K6OhVD94VIC23M\" id=\"meet_invite_block.action.join_link\" title=\"Meeting join\" aria-label=\"Meeting join\" class=\"me-email-link\" style=\"font-size:20px; text-decoration:underline; color:#5B5FC7\">https://teams.microsoft.com/meet/48803137263631?p=YXe9K6OhVD94VIC23M</a>\r\\\n</div>\r\\\n<div style=\"margin-bottom:6px\"><span class=\"me-email-text-secondary\" style=\"font-size:14px; color:#616161\">Meeting ID:\r\\\n</span><span class=\"me-email-text\" style=\"font-size:14px; color:#242424\">488 031 372 636 31</span>\r\\\n</div>\r\\\n<div style=\"margin-bottom:32px\"><span class=\"me-email-text-secondary\" style=\"font-size:14px; color:#616161\">Passcode:\r\\\n</span><span class=\"me-email-text\" style=\"font-size:14px; color:#242424\">uN2Np6PN</span>\r\\\n</div>\r\\\n<div style=\"margin-bottom:12px; max-width:1024px\">\r\\\n<hr style=\"border:0; background:#616161; height:1px\">\r\\\n</div>\r\\\n<div style=\"margin-bottom:24px\"><a href=\"https://aka.ms/JoinTeamsMeeting?omkt=en-US\" id=\"meet_invite_block.action.help\" class=\"me-email-link\" style=\"font-size:14px; text-decoration:underline; color:#5B5FC7\">Need help?</a>\r\\\n<span style=\"color:#616161\">|</span> <a href=\"https://teams.microsoft.com/l/meetup-join/19%3ameeting_ZjE4ZGNmODktODg3ZS00MTRjLTg4ZmMtZWMzMjBkZTE5YjBl%40thread.v2/0?context=%7b%22Tid%22%3a%22f2c94a41-d33d-4b60-bb3d-0bed4cdf9855%22%2c%22Oid%22%3a%229bd29c6c-181e-41f5-a1b6-bc30bbf652d3%22%7d\" id=\"meet_invite_block.action.join_link_compatibility\" class=\"me-email-link\" style=\"font-size:14px; text-decoration:underline; color:#5B5FC7\">\r\\\nSystem reference</a> </div>\r\\\n<div><span class=\"me-email-text-secondary\" style=\"font-size:14px; color:#616161\">For organizers:\r\\\n</span><a href=\"https://teams.microsoft.com/meetingOptions/?organizerId=9bd29c6c-181e-41f5-a1b6-bc30bbf652d3&amp;tenantId=f2c94a41-d33d-4b60-bb3d-0bed4cdf9855&amp;threadId=19_meeting_ZjE4ZGNmODktODg3ZS00MTRjLTg4ZmMtZWMzMjBkZTE5YjBl@thread.v2&amp;messageId=0&amp;language=en-US\" id=\"meet_invite_block.action.organizer_meet_options\" class=\"me-email-link\" style=\"font-size:14px; text-decoration:underline; color:#5B5FC7\">Meeting\r\\\n options</a> </div>\r\\\n<div style=\"margin-top:24px; margin-bottom:6px\"></div>\r\\\n<div style=\"margin-bottom:24px\"></div>\r\\\n<div aria-hidden=\"true\" style=\"margin-bottom:24px; overflow:hidden; white-space:nowrap\">\r\\\n________________________________________________________________________________</div>\r\\\n</div>\r\\\n</body>\r\\\n</html>\r\\\n"
124
+ },
125
+ "start": {
126
+ "dateTime": "2026-04-04T11:30:00.0000000",
127
+ "timeZone": "UTC"
128
+ },
129
+ "end": {
130
+ "dateTime": "2026-04-04T12:00:00.0000000",
131
+ "timeZone": "UTC"
132
+ },
133
+ "location": {
134
+ "displayName": "Microsoft Teams Meeting",
135
+ "locationType": "default",
136
+ "uniqueId": "Microsoft Teams Meeting",
137
+ "uniqueIdType": "private"
138
+ },
139
+ "locations": [
140
+ {
141
+ "displayName": "Microsoft Teams Meeting",
142
+ "locationType": "default",
143
+ "uniqueId": "Microsoft Teams Meeting",
144
+ "uniqueIdType": "private"
145
+ }
146
+ ],
147
+ "recurrence": null,
148
+ "attendees": [
149
+ {
150
+ "type": "required",
151
+ "status": {
152
+ "response": "none",
153
+ "time": "0001-01-01T00:00:00Z"
154
+ },
155
+ "emailAddress": {
156
+ "name": "Debra Berger",
157
+ "address": "debraB@contoso.com"
158
+ }
159
+ }
160
+ ],
161
+ "organizer": {
162
+ "emailAddress": {
163
+ "name": "John Doe",
164
+ "address": "john.doe@contoso.com"
165
+ }
166
+ },
167
+ "onlineMeeting": {
168
+ "joinUrl": "https://teams.microsoft.com/l/meetup-join/19%3ameeting_ZjE4ZGNmODktODg3ZS00MTRjLTg4ZmMtZWMzMjBkZTE5YjBl%40thread.v2/0?context=%7b%22Tid%22%3a%22f2c94a41-d33d-4b60-bb3d-0bed4cdf9855%22%2c%22Oid%22%3a%229bd29c6c-181e-41f5-a1b6-bc30bbf652d3%22%7d"
169
+ }
170
+ }
171
+ ```
172
+
173
+ </TabItem>
174
+ <TabItem value="Text">
175
+
176
+ ```text
177
+ allowNewTimeProposals : true
178
+ attendees : [{"type":"required","status":{"response":"none","time":"0001-01-01T00:00:00Z"},"emailAddress":{"name":"Debra Berger","address":"debraB@contoso.com"}}]
179
+ body : {"contentType":"html","content":"<html>\r\n<head>\r\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">\r\n</head>\r\n<body>\r\n<div style=\"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)\">\r\nNew Product Regulations Strategy Online Touchpoint Meeting</div>\r\n<div style=\"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)\">\r\n<br>\r\n</div>\r\n<div style=\"font-family:Aptos,Aptos_EmbeddedFont,Aptos_MSFontService,Calibri,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)\">\r\nYou're receiving this message because you're a member of the Engineering group. If you don't want to receive any messages or events from this group, stop following it in&nbsp;your inbox.</div>\r\n<br>\r\n<div class=\"me-email-text\" lang=\"en-US\" style=\"max-width:1024px; color:#242424; font-family:'Segoe UI','Helvetica Neue',Helvetica,Arial,sans-serif\">\r\n<div aria-hidden=\"true\" style=\"margin-bottom:24px; overflow:hidden; white-space:nowrap\">\r\n________________________________________________________________________________</div>\r\n<div style=\"margin-bottom:12px\"><span class=\"me-email-text\" style=\"font-size:20px; color:#242424; font-weight:600\">Microsoft Teams meeting</span>\r\n</div>\r\n<div style=\"margin-bottom:6px\"><span class=\"me-email-text\" style=\"font-size:20px; color:#242424; font-weight:600\">Join:\r\n</span><a href=\"https://teams.microsoft.com/meet/48803137263631?p=YXe9K6OhVD94VIC23M\" id=\"meet_invite_block.action.join_link\" title=\"Meeting join\" aria-label=\"Meeting join\" class=\"me-email-link\" style=\"font-size:20px; text-decoration:underline; color:#5B5FC7\">https://teams.microsoft.com/meet/48803137263631?p=YXe9K6OhVD94VIC23M</a>\r\n</div>\r\n<div style=\"margin-bottom:6px\"><span class=\"me-email-text-secondary\" style=\"font-size:14px; color:#616161\">Meeting ID:\r\n</span><span class=\"me-email-text\" style=\"font-size:14px; color:#242424\">488 031 372 636 31</span>\r\n</div>\r\n<div style=\"margin-bottom:32px\"><span class=\"me-email-text-secondary\" style=\"font-size:14px; color:#616161\">Passcode:\r\n</span><span class=\"me-email-text\" style=\"font-size:14px; color:#242424\">uN2Np6PN</span>\r\n</div>\r\n<div style=\"margin-bottom:12px; max-width:1024px\">\r\n<hr style=\"border:0; background:#616161; height:1px\">\r\n</div>\r\n<div style=\"margin-bottom:24px\"><a href=\"https://aka.ms/JoinTeamsMeeting?omkt=en-US\" id=\"meet_invite_block.action.help\" class=\"me-email-link\" style=\"font-size:14px; text-decoration:underline; color:#5B5FC7\">Need help?</a>\r\n<span style=\"color:#616161\">|</span> <a href=\"https://teams.microsoft.com/l/meetup-join/19%3ameeting_ZjE4ZGNmODktODg3ZS00MTRjLTg4ZmMtZWMzMjBkZTE5YjBl%40thread.v2/0?context=%7b%22Tid%22%3a%22f2c94a41-d33d-4b60-bb3d-0bed4cdf9855%22%2c%22Oid%22%3a%229bd29c6c-181e-41f5-a1b6-bc30bbf652d3%22%7d\" id=\"meet_invite_block.action.join_link_compatibility\" class=\"me-email-link\" style=\"font-size:14px; text-decoration:underline; color:#5B5FC7\">\r\nSystem reference</a> </div>\r\n<div><span class=\"me-email-text-secondary\" style=\"font-size:14px; color:#616161\">For organizers:\r\n</span><a href=\"https://teams.microsoft.com/meetingOptions/?organizerId=9bd29c6c-181e-41f5-a1b6-bc30bbf652d3&amp;tenantId=f2c94a41-d33d-4b60-bb3d-0bed4cdf9855&amp;threadId=19_meeting_ZjE4ZGNmODktODg3ZS00MTRjLTg4ZmMtZWMzMjBkZTE5YjBl@thread.v2&amp;messageId=0&amp;language=en-US\" id=\"meet_invite_block.action.organizer_meet_options\" class=\"me-email-link\" style=\"font-size:14px; text-decoration:underline; color:#5B5FC7\">Meeting\r\n options</a> </div>\r\n<div style=\"margin-top:24px; margin-bottom:6px\"></div>\r\n<div style=\"margin-bottom:24px\"></div>\r\n<div aria-hidden=\"true\" style=\"margin-bottom:24px; overflow:hidden; white-space:nowrap\">\r\n________________________________________________________________________________</div>\r\n</div>\r\n</body>\r\n</html>\r\n"}
180
+ bodyPreview : New Product Regulations Strategy Online Touchpoint Meeting
181
+
182
+ You're receiving this message because you're a member of the Engineering group. If you don't want to receive any messages or events from this group, stop following it in your inbox.
183
+
184
+ ________
185
+ categories : []
186
+ changeKey : xMBBaLl1lk+dAn8KkjfXKQAGLmp8jA==
187
+ createdDateTime : 2026-04-04T11:03:22.881996Z
188
+ end : {"dateTime":"2026-04-04T12:00:00.0000000","timeZone":"UTC"}
189
+ hasAttachments : false
190
+ hideAttendees : false
191
+ iCalUId : 040000008200E00074C5B7101A82E0080000000051EE49A722C4DC0100000000000000001000000065853ABD35D4FE438112E0B9CF451ABF
192
+ id : AQMkAGYzNjMxYTU4LTJjZjYtNDlhMi1iMzQ2LWVmMTU3YmUzOGM5MABGAAADMN-7V4K8g0q_adetip1DygcAxMBBaLl1lk_dAn8KkjfXKQAAAgENAAAAxMBBaLl1lk_dAn8KkjfXKQAGMVCCQQAAAA==
193
+ importance : normal
194
+ isAllDay : false
195
+ isCancelled : false
196
+ isDraft : false
197
+ isOnlineMeeting : true
198
+ isOrganizer : true
199
+ isReminderOn : true
200
+ lastModifiedDateTime : 2026-04-04T11:05:26.2216557Z
201
+ location : {"displayName":"Microsoft Teams Meeting","locationType":"default","uniqueId":"Microsoft Teams Meeting","uniqueIdType":"private"}
202
+ locations : [{"displayName":"Microsoft Teams Meeting","locationType":"default","uniqueId":"Microsoft Teams Meeting","uniqueIdType":"private"}]
203
+ occurrenceId : null
204
+ onlineMeeting : {"joinUrl":"https://teams.microsoft.com/l/meetup-join/19%3ameeting_ZjE4ZGNmODktODg3ZS00MTRjLTg4ZmMtZWMzMjBkZTE5YjBl%40thread.v2/0?context=%7b%22Tid%22%3a%22f2c94a41-d33d-4b60-bb3d-0bed4cdf9855%22%2c%22Oid%22%3a%229bd29c6c-181e-41f5-a1b6-bc30bbf652d3%22%7d"}
205
+ onlineMeetingProvider : teamsForBusiness
206
+ onlineMeetingUrl : null
207
+ organizer : {"emailAddress":{"name":"John Doe","address":"john.doe@contoso.com"}}
208
+ originalEndTimeZone : UTC
209
+ originalStartTimeZone : UTC
210
+ recurrence : null
211
+ reminderMinutesBeforeStart: 15
212
+ responseRequested : true
213
+ responseStatus : {"response":"organizer","time":"0001-01-01T00:00:00Z"}
214
+ sensitivity : normal
215
+ seriesMasterId : null
216
+ showAs : busy
217
+ start : {"dateTime":"2026-04-04T11:30:00.0000000","timeZone":"UTC"}
218
+ subject : New Product Regulations Touchpoint
219
+ transactionId : localevent:93639269-b1b2-d604-5170-283b0e470da5
220
+ type : singleInstance
221
+ uid : 040000008200E00074C5B7101A82E0080000000051EE49A722C4DC0100000000000000001000000065853ABD35D4FE438112E0B9CF451ABF
222
+ webLink : https://outlook.office365.com/owa/?itemid=AQMkAGYzNjMxYTU4LTJjZjYtNDlhMi1iMzQ2LWVmMTU3YmUzOGM5MABGAAADMN%2F7V4K8g0q%2Badetip1DygcAxMBBaLl1lk%2BdAn8KkjfXKQAAAgENAAAAxMBBaLl1lk%2BdAn8KkjfXKQAGMVCCQQAAAA%3D%3D&exvsurl=1&path=/calendar/item
223
+ ```
224
+
225
+ </TabItem>
226
+ <TabItem value="CSV">
227
+
228
+ ```csv
229
+ id,createdDateTime,lastModifiedDateTime,changeKey,transactionId,originalStartTimeZone,originalEndTimeZone,iCalUId,uid,reminderMinutesBeforeStart,isReminderOn,hasAttachments,subject,bodyPreview,importance,sensitivity,isAllDay,isCancelled,isOrganizer,responseRequested,seriesMasterId,showAs,type,webLink,onlineMeetingUrl,isOnlineMeeting,onlineMeetingProvider,allowNewTimeProposals,occurrenceId,isDraft,hideAttendees,recurrence
230
+ AQMkAGYzNjMxYTU4LTJjZjYtNDlhMi1iMzQ2LWVmMTU3YmUzOGM5MABGAAADMN-7V4K8g0q_adetip1DygcAxMBBaLl1lk_dAn8KkjfXKQAAAgENAAAAxMBBaLl1lk_dAn8KkjfXKQAGMVCCQQAAAA==,2026-04-04T11:03:22.881996Z,2026-04-04T11:05:26.2216557Z,xMBBaLl1lk+dAn8KkjfXKQAGLmp8jA==,localevent:93639269-b1b2-d604-5170-283b0e470da5,UTC,UTC,040000008200E00074C5B7101A82E0080000000051EE49A722C4DC0100000000000000001000000065853ABD35D4FE438112E0B9CF451ABF,040000008200E00074C5B7101A82E0080000000051EE49A722C4DC0100000000000000001000000065853ABD35D4FE438112E0B9CF451ABF,15,1,0,New Product Regulations Touchpoint,"New Product Regulations Strategy Online Touchpoint Meeting
231
+
232
+ You're receiving this message because you're a member of the Engineering group. If you don't want to receive any messages or events from this group, stop following it in your inbox.
233
+
234
+ ________",normal,normal,0,0,1,1,,busy,singleInstance,https://outlook.office365.com/owa/?itemid=AQMkAGYzNjMxYTU4LTJjZjYtNDlhMi1iMzQ2LWVmMTU3YmUzOGM5MABGAAADMN%2F7V4K8g0q%2Badetip1DygcAxMBBaLl1lk%2BdAn8KkjfXKQAAAgENAAAAxMBBaLl1lk%2BdAn8KkjfXKQAGMVCCQQAAAA%3D%3D&exvsurl=1&path=/calendar/item,,1,teamsForBusiness,1,,0,0,
235
+ ```
236
+
237
+ </TabItem>
238
+ <TabItem value="Markdown">
239
+
240
+ ```md
241
+ # outlook event get --debug "false" --verbose "false" --id "AQMkAGYzNjMxYTU4LTJjZjYtNDlhMi1iMzQ2LWVmMTU3YmUzOGM5MABGAAADMN-7V4K8g0q_adetip1DygcAxMBBaLl1lk_dAn8KkjfXKQAAAgENAAAAxMBBaLl1lk_dAn8KkjfXKQAGMVCCQQAAAA==" --userId "9bd29c6c-181e-41f5-a1b6-bc30bbf652d3" --calendarName "Calendar"
242
+
243
+ Date: 4/4/2026
244
+
245
+ ## AQMkAGYzNjMxYTU4LTJjZjYtNDlhMi1iMzQ2LWVmMTU3YmUzOGM5MABGAAADMN-7V4K8g0q_adetip1DygcAxMBBaLl1lk_dAn8KkjfXKQAAAgENAAAAxMBBaLl1lk_dAn8KkjfXKQAGMVCCQQAAAA==
246
+
247
+ Property | Value
248
+ ---------|-------
249
+ id | AQMkAGYzNjMxYTU4LTJjZjYtNDlhMi1iMzQ2LWVmMTU3YmUzOGM5MABGAAADMN-7V4K8g0q\_adetip1DygcAxMBBaLl1lk\_dAn8KkjfXKQAAAgENAAAAxMBBaLl1lk\_dAn8KkjfXKQAGMVCCQQAAAA==
250
+ createdDateTime | 2026-04-04T11:03:22.881996Z
251
+ lastModifiedDateTime | 2026-04-04T11:05:26.2216557Z
252
+ changeKey | xMBBaLl1lk+dAn8KkjfXKQAGLmp8jA==
253
+ transactionId | localevent:93639269-b1b2-d604-5170-283b0e470da5
254
+ originalStartTimeZone | UTC
255
+ originalEndTimeZone | UTC
256
+ iCalUId | 040000008200E00074C5B7101A82E0080000000051EE49A722C4DC0100000000000000001000000065853ABD35D4FE438112E0B9CF451ABF
257
+ uid | 040000008200E00074C5B7101A82E0080000000051EE49A722C4DC0100000000000000001000000065853ABD35D4FE438112E0B9CF451ABF
258
+ reminderMinutesBeforeStart | 15
259
+ isReminderOn | true
260
+ hasAttachments | false
261
+ subject | New Product Regulations Touchpoint
262
+ <br>You're receiving this message because you're a member of the Engineering group. If you don't want to receive any messages or events from thi<br>\_\_\_\_\_\_\_\_ing it in your inbox.
263
+ importance | normal
264
+ sensitivity | normal
265
+ isAllDay | false
266
+ isCancelled | false
267
+ isOrganizer | true
268
+ responseRequested | true
269
+ showAs | busy
270
+ type | singleInstance
271
+ webLink | https://outlook.office365.com/owa/?itemid=AQMkAGYzNjMxYTU4LTJjZjYtNDlhMi1iMzQ2LWVmMTU3YmUzOGM5MABGAAADMN%2F7V4K8g0q%2Badetip1DygcAxMBBaLl1lk%2BdAn8KkjfXKQAAAgENAAAAxMBBaLl1lk%2BdAn8KkjfXKQAGMVCCQQAAAA%3D%3D&exvsurl=1&path=/calendar/item
272
+ isOnlineMeeting | true
273
+ onlineMeetingProvider | teamsForBusiness
274
+ allowNewTimeProposals | true
275
+ isDraft | false
276
+ hideAttendees | false
277
+ ```
278
+
279
+ </TabItem>
280
+ </Tabs>
@@ -0,0 +1,89 @@
1
+ import Global from '../../_global.mdx';
2
+ import Tabs from '@theme/Tabs';
3
+ import TabItem from '@theme/TabItem';
4
+
5
+ # pp website remove
6
+
7
+ Removes the specified Power Pages website from the list of active sites.
8
+
9
+ ## Usage
10
+
11
+ ```sh
12
+ m365 pp website remove [options]
13
+ ```
14
+
15
+ ## Options
16
+
17
+ ```md definition-list
18
+ `-u, --url [url]`
19
+ : The URL of the website to remove. Specify either `url`, `name` or `id`.
20
+
21
+ `-n, --name [name]`
22
+ : The name of the website to remove. Specify either `url`, `name` or `id`.
23
+
24
+ `-i, --id [id]`
25
+ : The WebSite Id (GUID) of the website to remove. Specify either `url`, `name` or `id`.
26
+
27
+ `-e, --environmentName <environmentName>`
28
+ : The name of the environment from which to remove the Power Pages website.
29
+
30
+ `-f, --force`
31
+ : Don't prompt for confirmation
32
+ ```
33
+
34
+ <Global />
35
+
36
+ ## Permissions
37
+
38
+ <Tabs>
39
+ <TabItem value="Delegated">
40
+
41
+ | Resource | Permissions |
42
+ |--------------------|---------------------------|
43
+ | Power Platform API | PowerPages.Websites.Write |
44
+
45
+ </TabItem>
46
+ </Tabs>
47
+
48
+ ## Examples
49
+
50
+ Remove Power Pages website by name.
51
+
52
+ ```sh
53
+ m365 pp website remove --name Demo --environmentName Default-d87a7535-dd31-4437-bfe1-95340acd55c5
54
+ ```
55
+
56
+ Remove Power Pages website by name without confirmation.
57
+
58
+ ```sh
59
+ m365 pp website remove --name Demo --environmentName Default-d87a7535-dd31-4437-bfe1-95340acd55c5 --force
60
+ ```
61
+
62
+ Remove Power Pages website by id.
63
+
64
+ ```sh
65
+ m365 pp website remove --id 4916bb2c-91e1-4716-91d5-b6171928fac9 --environmentName Default-d87a7535-dd31-4437-bfe1-95340acd55c5
66
+ ```
67
+
68
+ Remove Power Pages website by id without confirmation.
69
+
70
+ ```sh
71
+ m365 pp website remove --id 4916bb2c-91e1-4716-91d5-b6171928fac9 --environmentName Default-d87a7535-dd31-4437-bfe1-95340acd55c5 --force
72
+ ```
73
+
74
+ Remove Power Pages website by url.
75
+
76
+ ```sh
77
+ m365 pp website remove --url https://site-0uaq9.powerappsportals.com --environmentName Default-d87a7535-dd31-4437-bfe1-95340acd55c5
78
+ ```
79
+
80
+ Remove Power Pages website by url without confirmation.
81
+
82
+ ```sh
83
+ m365 pp website remove --url https://site-0uaq9.powerappsportals.com --environmentName Default-d87a7535-dd31-4437-bfe1-95340acd55c5 --force
84
+ ```
85
+
86
+ ## Response
87
+
88
+ The command won't return a response on success.
89
+
@@ -0,0 +1,139 @@
1
+ import Global from '../../_global.mdx';
2
+ import Tabs from '@theme/Tabs';
3
+ import TabItem from '@theme/TabItem';
4
+
5
+ # pp website webrole list
6
+
7
+ Lists all webroles for the specified Power Pages website.
8
+
9
+ ## Usage
10
+
11
+ ```sh
12
+ m365 pp website webrole list [options]
13
+ ```
14
+
15
+ ## Options
16
+
17
+ ```md definition-list
18
+ `--websiteId [websiteId]`
19
+ : ID of the Power Pages website. Specify either `websiteId` or `websiteName` but not both.
20
+
21
+ `--websiteName [websiteName]`
22
+ : The unique name (not the display name) of the Power Pages website. Specify either `websiteId` or `websiteName` but not both.
23
+
24
+ `-e, --environmentName <environmentName>`
25
+ : The name of the environment where the Power Pages websites are located.
26
+
27
+ `--asAdmin`
28
+ : Run the command as admin and retrieve Power Pages websites for environments you do not have explicitly assigned permissions to.
29
+ ```
30
+
31
+ <Global />
32
+
33
+ ## Permissions
34
+
35
+ <Tabs>
36
+ <TabItem value="Delegated">
37
+
38
+ | Resource | Permissions |
39
+ |--------------------|--------------------------|
40
+ | Power Platform API | PowerPages.Websites.Read |
41
+ | Dynamics CRM | user_impersonation |
42
+
43
+ </TabItem>
44
+ </Tabs>
45
+
46
+ ## Examples
47
+
48
+ List all webroles for the site by name.
49
+
50
+ ```sh
51
+ m365 pp website webrole list --websiteName "Contoso" --environmentName "Default-2ca3eaa5-140f-4175-8261-3272edf9f339"
52
+ ```
53
+
54
+ List all webroles for the site by name as admin.
55
+
56
+ ```sh
57
+ m365 pp website webrole list --websiteName "Contoso" --environmentName "Default-2ca3eaa5-140f-4175-8261-3272edf9f339" --asAdmin
58
+ ```
59
+
60
+ List all webroles for the site by id.
61
+
62
+ ```sh
63
+ m365 pp website webrole list --websiteId "2ca3eaa5-140f-4175-8261-3272edf9f339" --environmentName "Default-2ca3eaa5-140f-4175-8261-3272edf9f339"
64
+ ```
65
+
66
+ List all webroles for the site by id as admin.
67
+
68
+ ```sh
69
+ m365 pp website webrole list --websiteId "2ca3eaa5-140f-4175-8261-3272edf9f339" --environmentName "Default-2ca3eaa5-140f-4175-8261-3272edf9f339" --asAdmin
70
+ ```
71
+
72
+ ## Response
73
+
74
+ <Tabs>
75
+ <TabItem value="JSON">
76
+
77
+ ```json
78
+ [
79
+ {
80
+ "mspp_webroleid": "a242a363-6077-4cb7-b2d1-1714502d129a",
81
+ "mspp_name": "Anonymous Users",
82
+ "mspp_description": "Role for anonymous users",
83
+ "mspp_key": null,
84
+ "mspp_authenticatedusersrole": false,
85
+ "mspp_anonymoususersrole": true,
86
+ "mspp_createdon": "2026-01-21T22:10:56Z",
87
+ "mspp_modifiedon": "2026-01-21T22:10:56Z",
88
+ "statecode": 0,
89
+ "statuscode": 1,
90
+ "_mspp_websiteid_value": "5eb107a6-5ac2-4e1c-a3b9-d5c21bbc10ce",
91
+ "_mspp_createdby_value": "b7aa2026-a8c1-f011-bbd2-000d3a66196e",
92
+ "_mspp_modifiedby_value": "b7aa2026-a8c1-f011-bbd2-000d3a66196e"
93
+ }
94
+ ]
95
+ ```
96
+
97
+ </TabItem>
98
+ <TabItem value="Text">
99
+
100
+ ```text
101
+ mspp_webroleid mspp_name statuscode
102
+ ------------------------------------ --------------- ----------
103
+ a242a363-6077-4cb7-b2d1-1714502d129a Anonymous Users 1
104
+ ```
105
+
106
+ </TabItem>
107
+ <TabItem value="CSV">
108
+
109
+ ```csv
110
+ mspp_modifiedon,mspp_key,mspp_description,mspp_authenticatedusersrole,statecode,_mspp_createdby_value,statuscode,mspp_anonymoususersrole,mspp_webroleid,mspp_createdon,_mspp_modifiedby_value,mspp_name,_mspp_websiteid_value
111
+ 2026-01-21T22:10:56Z,,Role for anonymous users,0,0,b7aa2026-a8c1-f011-bbd2-000d3a66196e,1,1,a242a363-6077-4cb7-b2d1-1714502d129a,2026-01-21T22:10:56Z,b7aa2026-a8c1-f011-bbd2-000d3a66196e,Anonymous Users,5eb107a6-5ac2-4e1c-a3b9-d5c21bbc10ce
112
+ ```
113
+
114
+ </TabItem>
115
+ <TabItem value="Markdown">
116
+
117
+ ```md
118
+ # pp website webrole list --websiteName "Contoso" --environmentName "Default-2ca3eaa5-140f-4175-8261-3272edf9f339"
119
+
120
+ Date: 2/8/2026
121
+
122
+ Property | Value
123
+ ---------|-------
124
+ mspp\_modifiedon | 2026-01-21T22:10:53Z
125
+ mspp\_description | Role for anonymous users
126
+ mspp\_authenticatedusersrole | true
127
+ statecode | 0
128
+ \_mspp\_createdby\_value | b7aa2026-a8c1-f011-bbd2-000d3a66196e
129
+ statuscode | 1
130
+ mspp\_anonymoususersrole | false
131
+ mspp\_webroleid | cc3bf86b-204c-4a97-b0b6-f788c62ae5e8
132
+ mspp\_createdon | 2026-01-21T22:10:53Z
133
+ \_mspp\_modifiedby\_value | b7aa2026-a8c1-f011-bbd2-000d3a66196e
134
+ mspp\_name | Authenticated Users
135
+ \_mspp\_websiteid\_value | 5eb107a6-5ac2-4e1c-a3b9-d5c21bbc10ce
136
+ ```
137
+
138
+ </TabItem>
139
+ </Tabs>
@@ -1,4 +1,6 @@
1
1
  import Global from '../../_global.mdx';
2
+ import Tabs from '@theme/Tabs';
3
+ import TabItem from '@theme/TabItem';
2
4
 
3
5
  # spo applicationcustomizer add
4
6
 
@@ -37,6 +39,25 @@ m365 spo applicationcustomizer add [options]
37
39
 
38
40
  <Global />
39
41
 
42
+ ## Permissions
43
+
44
+ <Tabs>
45
+ <TabItem value="Delegated">
46
+
47
+ | Resource | Permissions |
48
+ |------------|----------------------|
49
+ | SharePoint | AllSites.FullControl |
50
+
51
+ </TabItem>
52
+ <TabItem value="Application">
53
+
54
+ | Resource | Permissions |
55
+ |------------|-----------------------|
56
+ | SharePoint | Sites.FullControl.All |
57
+
58
+ </TabItem>
59
+ </Tabs>
60
+
40
61
  ## Remarks
41
62
 
42
63
  Running this command from the Windows Command Shell (cmd.exe) or PowerShell for Windows OS XP, 7, 8, 8.1 without bash installed might require additional formatting for command options that have JSON, XML or JavaScript values because the command shell treats quotes differently. For example, this is how an Application Customizer can be created from the Windows cmd.exe:
@@ -36,6 +36,25 @@ m365 spo applicationcustomizer get [options]
36
36
 
37
37
  <Global />
38
38
 
39
+ ## Permissions
40
+
41
+ <Tabs>
42
+ <TabItem value="Delegated">
43
+
44
+ | Resource | Permissions |
45
+ |------------|---------------|
46
+ | SharePoint | AllSites.Read |
47
+
48
+ </TabItem>
49
+ <TabItem value="Application">
50
+
51
+ | Resource | Permissions |
52
+ |------------|----------------|
53
+ | SharePoint | Sites.Read.All |
54
+
55
+ </TabItem>
56
+ </Tabs>
57
+
39
58
  ## Remarks
40
59
 
41
60
  This command can be used for retrieving an application customizer from a specific site. To retrieve an application customizer that's installed tenant-wide, view our dedicated [spo tenant applicationcustomizer get](../tenant/tenant-applicationcustomizer-get.mdx) command.