@pnp/cli-microsoft365 7.8.0-beta.3152fc7 → 7.8.0-beta.4a6e6f7

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 (67) hide show
  1. package/allCommands.json +1 -1
  2. package/allCommandsFull.json +1 -1
  3. package/dist/cli/cli.js +21 -9
  4. package/dist/index.js +13 -12
  5. package/dist/m365/cli/commands/config/config-set.js +4 -0
  6. package/dist/m365/commands/setup.js +3 -3
  7. package/dist/m365/entra/commands/app/app-permission-add.js +25 -6
  8. package/dist/m365/entra/commands/app/app-permission-list.js +17 -5
  9. package/dist/m365/entra/commands/group/group-add.js +12 -14
  10. package/dist/m365/entra/commands/group/group-user-add.js +6 -7
  11. package/dist/m365/entra/commands/m365group/m365group-add.js +4 -2
  12. package/dist/m365/entra/commands/user/user-registrationdetails-list.js +6 -7
  13. package/dist/m365/flow/commands/run/run-list.js +25 -0
  14. package/dist/m365/outlook/commands/message/message-list.js +87 -17
  15. package/dist/m365/planner/commands/bucket/bucket-add.js +4 -7
  16. package/dist/m365/planner/commands/bucket/bucket-get.js +7 -30
  17. package/dist/m365/planner/commands/bucket/bucket-list.js +3 -6
  18. package/dist/m365/planner/commands/bucket/bucket-remove.js +8 -25
  19. package/dist/m365/planner/commands/bucket/bucket-set.js +12 -34
  20. package/dist/m365/planner/commands/plan/plan-add.js +17 -7
  21. package/dist/m365/planner/commands/plan/plan-get.js +12 -22
  22. package/dist/m365/planner/commands/plan/plan-list.js +1 -2
  23. package/dist/m365/planner/commands/plan/plan-remove.js +5 -3
  24. package/dist/m365/planner/commands/plan/plan-set.js +18 -10
  25. package/dist/m365/planner/commands/roster/roster-add.js +1 -2
  26. package/dist/m365/planner/commands/task/task-add.js +15 -21
  27. package/dist/m365/planner/commands/task/task-checklistitem-add.js +1 -1
  28. package/dist/m365/planner/commands/task/task-checklistitem-remove.js +1 -1
  29. package/dist/m365/planner/commands/task/task-get.js +5 -26
  30. package/dist/m365/planner/commands/task/task-list.js +11 -37
  31. package/dist/m365/planner/commands/task/task-reference-remove.js +1 -1
  32. package/dist/m365/planner/commands/task/task-remove.js +12 -29
  33. package/dist/m365/planner/commands/task/task-set.js +15 -21
  34. package/dist/m365/spfx/commands/project/project-doctor/{doctor-1.19.0-beta.0.js → doctor-1.19.0.js} +1 -1
  35. package/dist/m365/spfx/commands/project/project-doctor.js +1 -1
  36. package/dist/m365/spfx/commands/project/project-upgrade/{upgrade-1.19.0-beta.0.js → upgrade-1.19.0.js} +22 -22
  37. package/dist/m365/spfx/commands/project/project-upgrade.js +13 -15
  38. package/dist/m365/spfx/commands/spfx-doctor.js +1 -1
  39. package/dist/m365/spo/commands/listitem/listitem-batch-remove.js +222 -0
  40. package/dist/m365/spo/commands/navigation/navigation-node-add.js +3 -2
  41. package/dist/m365/spo/commands/navigation/navigation-node-set.js +3 -2
  42. package/dist/m365/spo/commands/site/site-add.js +17 -26
  43. package/dist/m365/spo/commands/site/site-recyclebinitem-move.js +5 -2
  44. package/dist/m365/spo/commands/site/site-recyclebinitem-remove.js +3 -2
  45. package/dist/m365/spo/commands/site/site-remove.js +129 -159
  46. package/dist/m365/spo/commands/site/site-set.js +9 -13
  47. package/dist/m365/spo/commands/spo-set.js +6 -2
  48. package/dist/m365/spo/commands/tenant/tenant-recyclebinitem-remove.js +9 -13
  49. package/dist/m365/spo/commands.js +1 -0
  50. package/dist/m365/teams/commands/meeting/meeting-add.js +3 -3
  51. package/dist/m365/teams/commands/team/team-add.js +22 -16
  52. package/dist/settingsNames.js +1 -0
  53. package/dist/utils/planner.js +87 -8
  54. package/dist/utils/spo.js +209 -278
  55. package/dist/utils/urlUtil.js +8 -0
  56. package/dist/utils/validation.js +8 -5
  57. package/docs/docs/_clisettings.mdx +1 -0
  58. package/docs/docs/cmd/entra/app/app-permission-add.mdx +7 -4
  59. package/docs/docs/cmd/entra/app/app-permission-list.mdx +14 -5
  60. package/docs/docs/cmd/entra/m365group/m365group-add.mdx +24 -24
  61. package/docs/docs/cmd/flow/run/run-list.mdx +74 -1
  62. package/docs/docs/cmd/outlook/message/message-list.mdx +18 -6
  63. package/docs/docs/cmd/spfx/project/project-upgrade.mdx +1 -1
  64. package/docs/docs/cmd/spo/listitem/listitem-batch-remove.mdx +70 -0
  65. package/docs/docs/cmd/spo/site/site-remove.mdx +9 -19
  66. package/npm-shrinkwrap.json +168 -228
  67. package/package.json +16 -16
@@ -197,6 +197,14 @@ export const urlUtil = {
197
197
  const rootUrl = new URL(fullUrl);
198
198
  return rootUrl.origin;
199
199
  }
200
+ },
201
+ /**
202
+ * Removes trailing slashes from the URL.
203
+ * @param url The URL to process.
204
+ * @returns The URL without trailing slashes.
205
+ */
206
+ removeTrailingSlashes(url) {
207
+ return url.replace(/\/+$/, '');
200
208
  }
201
209
  };
202
210
  //# sourceMappingURL=urlUtil.js.map
@@ -1,6 +1,8 @@
1
1
  export const validation = {
2
- isValidGuidArray(guids) {
3
- return guids.every(guid => this.isValidGuid(guid));
2
+ isValidGuidArray(guidsString) {
3
+ const guids = guidsString.split(',').map(guid => guid.trim());
4
+ const invalidGuids = guids.filter(guid => !this.isValidGuid(guid));
5
+ return invalidGuids.length > 0 ? invalidGuids.join(', ') : true;
4
6
  },
5
7
  isValidGuid(guid) {
6
8
  if (!guid) {
@@ -21,9 +23,10 @@ export const validation = {
21
23
  const guidRegEx = new RegExp(/^19:[0-9a-zA-Z-_]+(@thread\.v2|@unq\.gbl\.spaces)$/i);
22
24
  return guidRegEx.test(guid);
23
25
  },
24
- isValidUserPrincipalNameArray(upns) {
25
- const invalidGuid = upns.find(upn => !this.isValidUserPrincipalName(upn));
26
- return invalidGuid || true;
26
+ isValidUserPrincipalNameArray(upnsString) {
27
+ const upns = upnsString.split(',').map(upn => upn.trim());
28
+ const invalidUPNs = upns.filter(upn => !this.isValidUserPrincipalName(upn));
29
+ return invalidUPNs.length > 0 ? invalidUPNs.join(', ') : true;
27
30
  },
28
31
  isValidUserPrincipalName(upn) {
29
32
  const upnRegEx = new RegExp(/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/i);
@@ -11,6 +11,7 @@ Setting name|Definition|Default value
11
11
  `disableTelemetry`|Disables sending of telemetry data|`false`
12
12
  `errorOutput`|Defines if errors should be written to `stdout` or `stderr`|`stderr`
13
13
  `helpMode`|Defines what part of command's help to display. Allowed values are `options`, `examples`, `remarks`, `response`, `full`|`options`
14
+ `helpTarget`|Defines the way the command help will be shown. Allowed values are `console` or `web`
14
15
  `output`|Defines the default output when issuing a command. Allowed values are `json`, `text`, `csv`, `md`, `none`|`json`
15
16
  `printErrorsAsPlainText`|When output mode is set to `json`, print error messages as plain-text rather than JSON|`true`
16
17
  `prompt`|Prompts for missing values in required options and enables interactive selection when multiple values are available for a command that requires a specific value to be retrieved.|`true`
@@ -23,10 +23,13 @@ m365 entra appregistration permission add [options]
23
23
 
24
24
  ```md definition-list
25
25
  `-i, --appId [appId]`
26
- : Client ID of the Microsoft Entra app to add the API permissions to. Specify `appId` or `appObjectId` but not both.
26
+ : Client ID of the Microsoft Entra app to add the API permissions to. Specify either `appId`, `appName` or `appObjectId`.
27
+
28
+ `-n, --appName [appName]`
29
+ : Display name of the Microsoft Entra app to add the API permissions to. Specify either `appId`, `appName` or `appObjectId`.
27
30
 
28
31
  `--appObjectId [appObjectId]`
29
- : Object ID of the Microsoft Entra app to add the API permissions to. Specify `appId` or `appObjectId` but not both.
32
+ : Object ID of the Microsoft Entra app to add the API permissions to. Specify either `appId`, `appName` or `appObjectId`.
30
33
 
31
34
  `-a, --applicationPermissions [applicationPermissions]`
32
35
  : Space-separated list of application permissions to add. Specify at least `applicationPermissions` or `delegatedPermissions`.
@@ -58,10 +61,10 @@ Grant multiple delegated API permissions to a Microsoft Entra app specified by o
58
61
  m365 entra app permission add --appObjectId 'e0306bb2-bf0b-4cc5-a845-a0b2cf11f690' --delegatedPermissions 'https://management.azure.com/user_impersonation https://service.flow.microsoft.com/Flows.Read.All https://graph.microsoft.com/Agreement.Read.All'
59
62
  ```
60
63
 
61
- Grant multiple app-only permissions to a Microsoft Entra app specified by client id and grant admin consent.
64
+ Grant multiple app-only permissions to a Microsoft Entra app specified by app display name and grant admin consent.
62
65
 
63
66
  ```sh
64
- m365 entra app permission add --appId 'f1417aa3-bf0b-4cc5-a845-a0b2cf11f690' --applicationPermissions 'https://graph.microsoft.com/Sites.FullControl.All https://microsoft.sharepoint-df.com/Sites.FullControl.All' --grantAdminConsent
67
+ m365 entra app permission add --appName 'Contoso App' --applicationPermissions 'https://graph.microsoft.com/Sites.FullControl.All https://microsoft.sharepoint-df.com/Sites.FullControl.All' --grantAdminConsent
65
68
  ```
66
69
 
67
70
  ## Response
@@ -22,10 +22,13 @@ m365 aad app permission list [options]
22
22
 
23
23
  ```md definition-list
24
24
  `-i, --appId [appId]`
25
- : Client ID of the Application Registration to retrieve the permissions for. Specify `appId` or `appObjectId` but not both.
25
+ : Client ID of the Entra application registration to retrieve the permissions for. Specify either `appId`, `appName` or `appObjectId`.
26
+
27
+ `-n, --appName [appName]`
28
+ : Display name of the Entra application registration to add the API permissions to. Specify either `appId`, `appName` or `appObjectId`.
26
29
 
27
30
  `--appObjectId [appObjectId]`
28
- : Object ID of the Application Registration to retrieve the permissions for. Specify `appId` or `appObjectId` but not both.
31
+ : Object ID of the Entra application registration to retrieve the permissions for. Specify either `appId`, `appName` or `appObjectId`.
29
32
 
30
33
  `--type [type]`
31
34
  : The type of permissions to retrieve. Allowed values: `delegated`, `application`, `all`. Defaults to `all`.
@@ -39,16 +42,22 @@ For best performance use the `objectId` option to reference the Entra applicatio
39
42
 
40
43
  ## Examples
41
44
 
42
- Retrieves all permissions for an Entra app registration
45
+ Retrieves all permissions for an Entra application registration specified by client id.
43
46
 
44
47
  ```sh
45
48
  m365 entra app permission list --appId 'f1417aa3-bf0b-4cc5-a845-a0b2cf11f690'
46
49
  ```
47
50
 
48
- Retrieves all delegated permissions for an Entra app registration
51
+ Retrieves all permissions for an Entra application registration by specified by app display name.
52
+
53
+ ```sh
54
+ m365 entra app permission list --appName 'Contoso App'
55
+ ```
56
+
57
+ Retrieves all delegated permissions for an Entra application registration specified by object id.
49
58
 
50
59
  ```sh
51
- m365 entra app permission list --appId 'f1417aa3-bf0b-4cc5-a845-a0b2cf11f690' --type delegated
60
+ m365 entra app permission list --appObjectId '64381cda-d40d-4fb0-bce2-bece391546a2' --type delegated
52
61
  ```
53
62
 
54
63
  ## Response
@@ -22,37 +22,37 @@ m365 aad m365group add [options]
22
22
 
23
23
  ```md definition-list
24
24
  `-n, --displayName <displayName>`
25
- : Display name for the Microsoft 365 Group
26
-
27
- `-d, --description <description>`
28
- : Description for the Microsoft 365 Group
25
+ : Display name for the Microsoft 365 Group.
29
26
 
30
27
  `-m, --mailNickname <mailNickname>`
31
- : Name to use in the group e-mail (part before the `@`)
28
+ : Name to use in the group e-mail (part before the `@`).
29
+
30
+ `-d, --description [description]`
31
+ : Description for the Microsoft 365 Group.
32
32
 
33
33
  `--owners [owners]`
34
- : Comma-separated list of Microsoft 365 Group owners
34
+ : Comma-separated list of Microsoft 365 Group owners.
35
35
 
36
36
  `--members [members]`
37
- : Comma-separated list of Microsoft 365 Group members
37
+ : Comma-separated list of Microsoft 365 Group members.
38
38
 
39
39
  `--visibility [visibility]`
40
40
  : Specifies the group join policy and group content visibility for groups. Allowed values: `Private`, `Public`, or `HiddenMembership`. Defaults to `Public`.
41
41
 
42
42
  `--allowMembersToPost [allowMembersToPost]`
43
- : Set if only group members should be able to post conversations to the group
43
+ : Set if only group members should be able to post conversations to the group.
44
44
 
45
45
  `--hideGroupInOutlook [hideGroupInOutlook]`
46
- : Set to hide the group in Outlook experiences
46
+ : Set to hide the group in Outlook experiences.
47
47
 
48
48
  `--subscribeNewGroupMembers [subscribeNewGroupMembers]`
49
- : Set to subscribe all new group members to receive group conversation emails when new messages are posted in the group
49
+ : Set to subscribe all new group members to receive group conversation emails when new messages are posted in the group.
50
50
 
51
51
  `--welcomeEmailDisabled [welcomeEmailDisabled]`
52
- : Set to not send welcome emails to new group members
52
+ : Set to not send welcome emails to new group members.
53
53
 
54
54
  `-l, --logoPath [logoPath]`
55
- : Local path to the image file to use as group logo
55
+ : Local path to the image file to use as group logo.
56
56
  ```
57
57
 
58
58
  <Global />
@@ -74,25 +74,25 @@ HiddenMembership | Owner permission is needed to join the group. Guest users can
74
74
 
75
75
  ## Examples
76
76
 
77
- Create a public Microsoft 365 Group
77
+ Create a public Microsoft 365 Group.
78
78
 
79
79
  ```sh
80
- m365 entra m365group add --displayName Finance --description "This is the Contoso Finance Group. Please come here and check out the latest news, posts, files, and more." --mailNickname finance
80
+ m365 entra m365group add --displayName Finance --mailNickname finance
81
81
  ```
82
82
 
83
- Create a private Microsoft 365 Group
83
+ Create a private Microsoft 365 Group.
84
84
 
85
85
  ```sh
86
- m365 entra m365group add --displayName Finance --description "This is the Contoso Finance Group. Please come here and check out the latest news, posts, files, and more." --mailNickname finance --visibility Private
86
+ m365 entra m365group add --displayName Finance --mailNickname finance --visibility Private
87
87
  ```
88
88
 
89
- Create a public Microsoft 365 Group and set specified users as its owners
89
+ Create a public Microsoft 365 Group with description and set specified users as its owners.
90
90
 
91
91
  ```sh
92
92
  m365 entra m365group add --displayName Finance --description "This is the Contoso Finance Group. Please come here and check out the latest news, posts, files, and more." --mailNickname finance --owners "DebraB@contoso.onmicrosoft.com,DiegoS@contoso.onmicrosoft.com"
93
93
  ```
94
94
 
95
- Create a public Microsoft 365 Group and set specified users as its members
95
+ Create a public Microsoft 365 Group with description and set specified users as its members.
96
96
 
97
97
  ```sh
98
98
  m365 entra m365group add --displayName Finance --description "This is the Contoso Finance Group. Please come here and check out the latest news, posts, files, and more." --mailNickname finance --members "DebraB@contoso.onmicrosoft.com,DiegoS@contoso.onmicrosoft.com"
@@ -101,31 +101,31 @@ m365 entra m365group add --displayName Finance --description "This is the Contos
101
101
  Create a public Microsoft 365 Group and allow only group members to be able to post conversations to the group.
102
102
 
103
103
  ```sh
104
- m365 entra m365group add --displayName Finance --description "This is the Contoso Finance Group. Please come here and check out the latest news, posts, files, and more." --mailNickname finance --allowMembersToPost
104
+ m365 entra m365group add --displayName Finance --mailNickname finance --allowMembersToPost
105
105
  ```
106
106
 
107
107
  Create a public Microsoft 365 Group and hide it from the Outlook experiences (web and client).
108
108
 
109
109
  ```sh
110
- m365 entra m365group add --displayName Finance --description "This is the Contoso Finance Group. Please come here and check out the latest news, posts, files, and more." --mailNickname finance --hideGroupInOutlook
110
+ m365 entra m365group add --displayName Finance --mailNickname finance --hideGroupInOutlook
111
111
  ```
112
112
 
113
113
  Create a public Microsoft 365 Group and subscribe all new group members to receive group conversation emails when new messages are posted in the group.
114
114
 
115
115
  ```sh
116
- m365 entra m365group add --displayName Finance --description "This is the Contoso Finance Group. Please come here and check out the latest news, posts, files, and more." --mailNickname finance --subscribeNewGroupMembers
116
+ m365 entra m365group add --displayName Finance --mailNickname finance --subscribeNewGroupMembers
117
117
  ```
118
118
 
119
119
  Create a public Microsoft 365 Group and set to not send welcome emails to new group members.
120
120
 
121
121
  ```sh
122
- m365 entra m365group add --displayName Finance --description "This is the Contoso Finance Group. Please come here and check out the latest news, posts, files, and more." --mailNickname finance --welcomeEmailDisabled
122
+ m365 entra m365group add --displayName Finance --mailNickname finance --welcomeEmailDisabled
123
123
  ```
124
124
 
125
- Create a public Microsoft 365 Group and set its logo
125
+ Create a public Microsoft 365 Group and set its logo.
126
126
 
127
127
  ```sh
128
- m365 entra m365group add --displayName Finance --description "This is the Contoso Finance Group. Please come here and check out the latest news, posts, files, and more." --mailNickname finance --logoPath images/logo.png
128
+ m365 entra m365group add --displayName Finance --mailNickname finance --logoPath images/logo.png
129
129
  ```
130
130
 
131
131
  ## Response
@@ -30,6 +30,9 @@ m365 flow run list [options]
30
30
  `--triggerEndTime [triggerEndTime]`
31
31
  : Time indicating the exclusive end of a time range of flow runs to return. This should be defined as a valid ISO 8601 string (2021-12-16T18:28:48.6964197Z).
32
32
 
33
+ `--withTrigger`
34
+ : If specified, include information about the trigger details for each run.
35
+
33
36
  `--asAdmin`
34
37
  : Run the command as admin. Use this flag when targeting flows you don't own.
35
38
  ```
@@ -48,6 +51,8 @@ If the environment with the name you specified doesn't exist, you will get the `
48
51
 
49
52
  If the Microsoft Flow with the name you specified doesn't exist, you will get the `The caller with object id 'abc' does not have permission for connection 'xyz' under Api 'shared_logicflows'.` error.
50
53
 
54
+ When using `--withTrigger`, extra requests will get fired for each retrieved flow run. This has an impact on the time the command takes to run.
55
+
51
56
  ## Examples
52
57
 
53
58
  List runs of the specified Microsoft Flow.
@@ -56,7 +61,7 @@ List runs of the specified Microsoft Flow.
56
61
  m365 flow run list --environmentName Default-d87a7535-dd31-4437-bfe1-95340acd55c5 --flowName 5923cb07-ce1a-4a5c-ab81-257ce820109a
57
62
  ```
58
63
 
59
- List runs of the specified Microsoft Flow with a specific status.
64
+ List runs of the specified Microsoft Flow with a specific status
60
65
 
61
66
  ```sh
62
67
  m365 flow run list --environmentName Default-d87a7535-dd31-4437-bfe1-95340acd55c5 --flowName 5923cb07-ce1a-4a5c-ab81-257ce820109a --status Running
@@ -74,6 +79,12 @@ List runs of the specified Microsoft Flow owned by another user.
74
79
  m365 flow run list --environmentName Default-d87a7535-dd31-4437-bfe1-95340acd55c5 --flowName 5923cb07-ce1a-4a5c-ab81-257ce820109a --asAdmin
75
80
  ```
76
81
 
82
+ List runs of the specified Microsoft Flow with the trigger information.
83
+
84
+ ```sh
85
+ m365 flow run list --environmentName Default-d87a7535-dd31-4437-bfe1-95340acd55c5 --flowName 5923cb07-ce1a-4a5c-ab81-257ce820109a --withTrigger
86
+ ```
87
+
77
88
  ## Response
78
89
 
79
90
  ### Standard response
@@ -164,3 +175,65 @@ m365 flow run list --environmentName Default-d87a7535-dd31-4437-bfe1-95340acd55c
164
175
 
165
176
  </TabItem>
166
177
  </Tabs>
178
+
179
+ ### `withTrigger` response
180
+
181
+ When using the option `withTrigger`, the response for the json-output will differ.
182
+
183
+ <Tabs>
184
+ <TabItem value="JSON">
185
+
186
+ ```json
187
+ [
188
+ {
189
+ "name": "08584917134229837167098637545CU67",
190
+ "id": "/providers/Microsoft.ProcessSimple/environments/Default-e1dd4023-a656-480a-8a0e-c1b1eec51e1d/flows/a18e89d1-4c75-41e4-9517-e90aedc079be/runs/08584917134229837167098637545CU67",
191
+ "type": "Microsoft.ProcessSimple/environments/flows/runs",
192
+ "properties": {
193
+ "startTime": "2024-03-08T10:24:22.4948083Z",
194
+ "endTime": "2024-03-08T10:24:22.6662784Z",
195
+ "status": "Succeeded",
196
+ "correlation": {
197
+ "clientTrackingId": "08584917134229837167098637545CU67"
198
+ },
199
+ "trigger": {
200
+ "name": "manual",
201
+ "inputsLink": {
202
+ "uri": "https://prod-93.westeurope.logic.azure.com:443/workflows/21b6d99931344cc1bc644e57e415d259/runs/08584917134229837167098637545CU67/contents/TriggerInputs?api-version=2016-06-01&se=2024-03-08T16%3A00%3A00.0000000Z&sp=%2Fruns%2F08584917134229837167098637545CU67%2Fcontents%2FTriggerInputs%2Fread&sv=1.0&sig=8_DTJWq2nvHw4eewGrQJ_VJB54_51SEoKmiciqSSUk8",
203
+ "contentVersion": "qp1b8NIh2ZLUxjxKwnkWng==",
204
+ "contentSize": 507,
205
+ "contentHash": {
206
+ "algorithm": "md5",
207
+ "value": "qp1b8NIh2ZLUxjxKwnkWng=="
208
+ }
209
+ },
210
+ "outputsLink": {
211
+ "uri": "https://prod-93.westeurope.logic.azure.com:443/workflows/21b6d99931344cc1bc644e57e415d259/runs/08584917134229837167098637545CU67/contents/TriggerOutputs?api-version=2016-06-01&se=2024-03-08T16%3A00%3A00.0000000Z&sp=%2Fruns%2F08584917134229837167098637545CU67%2Fcontents%2FTriggerOutputs%2Fread&sv=1.0&sig=1_KZU33J_uY672L0WYeFw3YZu5q3bs-4oU-WWF6a-B0",
212
+ "contentVersion": "1S3nJ0ffDf82K46CzvjNyQ==",
213
+ "contentSize": 1672,
214
+ "contentHash": {
215
+ "algorithm": "md5",
216
+ "value": "1S3nJ0ffDf82K46CzvjNyQ=="
217
+ }
218
+ },
219
+ "startTime": "2024-03-08T10:24:22.4892073Z",
220
+ "endTime": "2024-03-08T10:24:22.4892073Z",
221
+ "originHistoryName": "08584917134229837167098637545CU67",
222
+ "correlation": {
223
+ "clientTrackingId": "08584917134229837167098637545CU67"
224
+ },
225
+ "status": "Succeeded"
226
+ },
227
+ "isAborted": false
228
+ },
229
+ "triggerInformation": {
230
+ "text": "This is text",
231
+ "boolean": true,
232
+ "number": 10
233
+ }
234
+ }
235
+ ]
236
+ ```
237
+
238
+ </TabItem>
239
+ </Tabs>
@@ -20,28 +20,40 @@ m365 outlook message list [options]
20
20
 
21
21
  `--folderId [folderId]`
22
22
  : ID of the folder from which to list messages.
23
+
24
+ `--startTime [startTime]`
25
+ : Time indicating the inclusive start of a time range when the message was received. This should be defined as a valid ISO 8601 string (2021-12-16T18:28:48.6964197Z).
26
+
27
+ `--endTime [endTime]`
28
+ : Time indicating the exclusive end of a time range when the message was received. This should be defined as a valid ISO 8601 string (2021-12-16T18:28:48.6964197Z).
29
+
30
+ `--userId [userId]`
31
+ : The Microsoft Entra user ID. Specify either `userId` or `userName`, not both. This option is required when using application permissions.
32
+
33
+ `--userName [userName]`
34
+ : User principal name of the user. Specify either `userId` or `userName`, not both. This option is required when using application permissions.
23
35
  ```
24
36
 
25
37
  <Global />
26
38
 
27
39
  ## Examples
28
40
 
29
- List all messages in the folder with the specified name.
41
+ List all messages from a folder with the specified name received within a specific time frame.
30
42
 
31
43
  ```sh
32
- m365 outlook message list --folderName Archive
44
+ m365 outlook message list --folderName Archive --startTime 2023-12-16T18:28:48.6964197Z --endTime 2024-02-01
33
45
  ```
34
46
 
35
- List all messages in the folder with the specified ID.
47
+ List all messages from a specific folder of a user specified by ID.
36
48
 
37
49
  ```sh
38
- m365 outlook message list --folderId AAMkAGVmMDEzMTM4LTZmYWUtNDdkNC1hMDZiLTU1OGY5OTZhYmY4OAAuAAAAAAAiQ8W967B7TKBjgx9rVEURAQAiIsqMbYjsT5e-T7KzowPTAAAAAAFNAAA=
50
+ m365 outlook message list --folderId AAMkAGVmMDEzMTM4LTZmYWUtNDdkNC1hMDZiLTU1OGY5OTZhYmY4OAAuAAAAAAAiQ8W967B7TKBjgx9rVEURAQAiIsqMbYjsT5e-T7KzowPTAAAAAAFNAAA= --userId 48d31887-5fad-4d73-a9f5-3c356e68a038
39
51
  ```
40
52
 
41
- List all messages in the folder with the specified well-known name.
53
+ List all messages from a folder of a user specified by UPN.
42
54
 
43
55
  ```sh
44
- m365 outlook message list --folderName inbox
56
+ m365 outlook message list --folderName inbox --userName john@contoso.com
45
57
  ```
46
58
 
47
59
  ## Response
@@ -35,7 +35,7 @@ m365 spfx project upgrade [options]
35
35
 
36
36
  ## Remarks
37
37
 
38
- The `spfx project upgrade` command helps you upgrade your SharePoint Framework project to the specified version. If no version is specified, the command will upgrade to the latest version of the SharePoint Framework it supports (v1.19.0-beta.0).
38
+ The `spfx project upgrade` command helps you upgrade your SharePoint Framework project to the specified version. If no version is specified, the command will upgrade to the latest version of the SharePoint Framework it supports (v1.19.0).
39
39
 
40
40
  This command doesn't change your project files. Instead, it gives you a report with all steps necessary to upgrade your project to the specified version of the SharePoint Framework. Changing project files is error-prone, especially when it comes to updating your solution's code. This is why at this moment, this command produces a report that you can use yourself to perform the necessary updates and verify that everything is working as expected.
41
41
 
@@ -0,0 +1,70 @@
1
+ import Global from '/docs/cmd/_global.mdx';
2
+
3
+ # spo listitem batch remove
4
+
5
+ Removes items from a list in batch
6
+
7
+ ## Usage
8
+
9
+ ```sh
10
+ m365 spo listitem batch remove [options]
11
+ ```
12
+
13
+ ## Options
14
+
15
+ ```md definition-list
16
+ `-u, --webUrl <webUrl>`
17
+ : URL of the SharePoint site.
18
+
19
+ `-l, --listId [listId]`
20
+ : ID of the list. Specify either `listTitle`, `listId` or `listUrl`, but not multiple.
21
+
22
+ `-t, --listTitle [listTitle]`
23
+ : Title of the list. Specify either `listTitle`, `listId` or `listUrl`, but not multiple.
24
+
25
+ `--listUrl [listUrl]`
26
+ : Server- or site-relative URL of the list. Specify either `listTitle`, `listId` or `listUrl`, but not multiple.
27
+
28
+ `-p, --filePath [filePath]`
29
+ : The absolute or relative path to a flat CSV file containing the list items. Specify `filePath` or `ids`, but not both.
30
+
31
+ `-i, --ids [ids]`
32
+ : Comma separated list of list item IDs. Specify `filePath` or `ids`, but not both.
33
+
34
+ `-r, --recycle`
35
+ : Recycle the list items. Otherwise, they will be permanently deleted.
36
+
37
+ `-f, --force`
38
+ : Don't prompt for confirmation.
39
+ ```
40
+
41
+ <Global />
42
+
43
+ ## Remarks
44
+
45
+ A sample CSV can be found below. The first line of the CSV-file should contain the internal column name of the ID-column.
46
+
47
+ ```csv
48
+ ID
49
+ 123
50
+ 234
51
+ 345
52
+ ```
53
+
54
+ ## Examples
55
+
56
+ Remove a list of IDs from a list with a csv
57
+
58
+ ```sh
59
+ m365 spo listitem batch remove --filePath ./IDlist.csv --webUrl https://contoso.sharepoint.com/sites/project-x --listTitle "Demo List"
60
+ ```
61
+
62
+ Remove a list of IDs from a list by specifying the IDs
63
+
64
+ ```sh
65
+ m365 spo listitem batch remove --webUrl https://contoso.sharepoint.com/sites/project-x --listTitle "Demo List" --ids "123,234,345"
66
+ ```
67
+
68
+ ## Response
69
+
70
+ The command won't return a response on success.
@@ -14,63 +14,53 @@ m365 spo site remove [options]
14
14
 
15
15
  ```md definition-list
16
16
  `-u, --url <url>`
17
- : URL of the site to remove
17
+ : URL of the site.
18
18
 
19
19
  `--skipRecycleBin`
20
- : Set to directly remove the site without moving it to the Recycle Bin
20
+ : Set to directly remove the site without moving it to the recycle bin.
21
21
 
22
22
  `--fromRecycleBin`
23
- : Set to remove the site from the Recycle Bin
23
+ : Set to remove the site from the recycle bin.
24
24
 
25
25
  `--wait`
26
- : Wait for the site to be removed before completing the command
26
+ : (deprecated) Wait for the site to be removed before completing the command.
27
27
 
28
28
  `-f, --force`
29
- : Don't prompt for confirming removing the site
29
+ : Don't prompt for confirmation.
30
30
  ```
31
31
 
32
32
  <Global />
33
33
 
34
34
  ## Remarks
35
35
 
36
- Deleting a site collection is by default asynchronous and depending on the current state of Microsoft 365, might take up to few minutes. If you're building a script with steps that require the site to be fully deleted, you should use the `--wait` flag. When using this flag, the `spo site remove` command will keep running until it received confirmation from Microsoft 365 that the site has been fully deleted.
37
-
38
- If the site which you have selected to remove is groupified (Modern Team Site) and group exists, flags `--skipRecycleBin` and `--wait` will not be applicable. If the linked group still exists in the deleted groups, the site won't be removed. If the linked group is permanently deleted, the site will be removed like any classic site (except that flag `--wait` only will still not be applicable).
39
-
40
36
  If the argument `--fromRecycleBin` is passed, the selected site will be permanently removed even if it's a groupified one.
41
37
 
42
38
  :::info
43
39
 
44
- To use this command you have to have permissions to access the tenant admin site.
40
+ To use this command you must be a Global or SharePoint administrator.
45
41
 
46
42
  :::
47
43
 
48
44
  ## Examples
49
45
 
50
- Remove the specified site and place it in the Recycle Bin
46
+ Remove the specified site and place it in the recycle bin.
51
47
 
52
48
  ```sh
53
49
  m365 spo site remove --url https://contoso.sharepoint.com/sites/demosite
54
50
  ```
55
51
 
56
- Remove the site without moving it to the Recycle Bin
52
+ Remove the site without moving it to the recycle bin.
57
53
 
58
54
  ```sh
59
55
  m365 spo site remove --url https://contoso.sharepoint.com/sites/demosite --skipRecycleBin
60
56
  ```
61
57
 
62
- Remove the previously deleted site from the Recycle Bin
58
+ Remove the previously deleted site from the recycle bin.
63
59
 
64
60
  ```sh
65
61
  m365 spo site remove --url https://contoso.sharepoint.com/sites/demosite --fromRecycleBin
66
62
  ```
67
63
 
68
- Remove the site without moving it to the Recycle Bin and wait for completion
69
-
70
- ```sh
71
- m365 spo site remove --url https://contoso.sharepoint.com/sites/demosite --wait --skipRecycleBin
72
- ```
73
-
74
64
  ## Response
75
65
 
76
66
  The command won't return a response on success.