@pnp/cli-microsoft365 7.4.0-beta.4388d3c → 7.4.0-beta.4a1036f

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 (70) hide show
  1. package/.eslintrc.cjs +6 -0
  2. package/allCommands.json +1 -1
  3. package/allCommandsFull.json +1 -1
  4. package/dist/Auth.js +2 -1
  5. package/dist/appInsights.js +2 -0
  6. package/dist/cli/cli.js +1 -0
  7. package/dist/m365/entra/aadCommands.js +1 -0
  8. package/dist/m365/entra/commands/administrativeunit/administrativeunit-roleassignment-add.js +102 -0
  9. package/dist/m365/entra/commands.js +1 -0
  10. package/dist/m365/external/commands/connection/connection-urltoitemresolver-add.js +69 -0
  11. package/dist/m365/external/commands.js +1 -0
  12. package/dist/m365/flow/commands/run/run-get.js +52 -13
  13. package/dist/m365/spo/commands/file/file-add.js +12 -8
  14. package/dist/m365/spo/commands/file/file-checkin.js +4 -1
  15. package/dist/m365/spo/commands/file/file-checkout-undo.js +5 -1
  16. package/dist/m365/spo/commands/file/file-checkout.js +4 -1
  17. package/dist/m365/spo/commands/file/file-copy.js +5 -1
  18. package/dist/m365/spo/commands/file/file-get.js +5 -1
  19. package/dist/m365/spo/commands/file/file-list.js +5 -1
  20. package/dist/m365/spo/commands/file/file-move.js +5 -1
  21. package/dist/m365/spo/commands/file/file-remove.js +5 -1
  22. package/dist/m365/spo/commands/file/file-rename.js +5 -1
  23. package/dist/m365/spo/commands/file/file-retentionlabel-ensure.js +4 -1
  24. package/dist/m365/spo/commands/file/file-retentionlabel-remove.js +5 -1
  25. package/dist/m365/spo/commands/file/file-roleassignment-add.js +4 -1
  26. package/dist/m365/spo/commands/file/file-roleassignment-remove.js +5 -1
  27. package/dist/m365/spo/commands/file/file-roleinheritance-break.js +5 -1
  28. package/dist/m365/spo/commands/file/file-roleinheritance-reset.js +5 -1
  29. package/dist/m365/spo/commands/file/file-sharinginfo-get.js +6 -3
  30. package/dist/m365/spo/commands/file/file-sharinglink-add.js +4 -1
  31. package/dist/m365/spo/commands/file/file-sharinglink-clear.js +5 -1
  32. package/dist/m365/spo/commands/file/file-sharinglink-get.js +4 -1
  33. package/dist/m365/spo/commands/file/file-sharinglink-list.js +4 -1
  34. package/dist/m365/spo/commands/file/file-sharinglink-remove.js +5 -1
  35. package/dist/m365/spo/commands/file/file-sharinglink-set.js +4 -1
  36. package/dist/m365/spo/commands/file/file-version-clear.js +6 -2
  37. package/dist/m365/spo/commands/file/file-version-get.js +1 -1
  38. package/dist/m365/spo/commands/file/file-version-list.js +4 -1
  39. package/dist/m365/spo/commands/file/file-version-remove.js +2 -1
  40. package/dist/m365/spo/commands/file/file-version-restore.js +2 -1
  41. package/dist/m365/spo/commands/folder/folder-add.js +4 -1
  42. package/dist/m365/spo/commands/folder/folder-copy.js +5 -1
  43. package/dist/m365/spo/commands/folder/folder-get.js +4 -1
  44. package/dist/m365/spo/commands/folder/folder-list.js +6 -2
  45. package/dist/m365/spo/commands/folder/folder-move.js +5 -1
  46. package/dist/m365/spo/commands/folder/folder-remove.js +5 -1
  47. package/dist/m365/spo/commands/folder/folder-rename.js +4 -1
  48. package/dist/m365/spo/commands/folder/folder-retentionlabel-ensure.js +4 -1
  49. package/dist/m365/spo/commands/folder/folder-retentionlabel-remove.js +5 -1
  50. package/dist/m365/spo/commands/folder/folder-roleassignment-add.js +4 -1
  51. package/dist/m365/spo/commands/folder/folder-roleassignment-remove.js +6 -2
  52. package/dist/m365/spo/commands/folder/folder-roleinheritance-break.js +5 -1
  53. package/dist/m365/spo/commands/folder/folder-roleinheritance-reset.js +5 -1
  54. package/dist/m365/spo/commands/group/group-member-add.js +21 -4
  55. package/dist/m365/spo/commands/group/group-member-remove.js +27 -10
  56. package/dist/m365/spo/commands/user/user-ensure.js +16 -6
  57. package/dist/m365/teams/commands/user/user-app-add.js +35 -3
  58. package/dist/request.js +16 -0
  59. package/dist/utils/md.js +2 -2
  60. package/dist/utils/roleAssignment.js +42 -0
  61. package/dist/utils/roleDefinition.js +24 -0
  62. package/docs/docs/cmd/entra/administrativeunit/administrativeunit-roleassignment-add.mdx +116 -0
  63. package/docs/docs/cmd/external/connection/connection-urltoitemresolver-add.mdx +47 -0
  64. package/docs/docs/cmd/flow/run/run-get.mdx +167 -4
  65. package/docs/docs/cmd/spo/group/group-member-add.mdx +19 -7
  66. package/docs/docs/cmd/spo/group/group-member-remove.mdx +12 -6
  67. package/docs/docs/cmd/spo/user/user-ensure.mdx +8 -5
  68. package/docs/docs/cmd/teams/user/user-app-add.mdx +8 -5
  69. package/npm-shrinkwrap.json +180 -418
  70. package/package.json +8 -8
@@ -0,0 +1,42 @@
1
+ import request from '../request.js';
2
+ const getRequestOptions = (roleDefinitionId, principalId, directoryScopeId) => ({
3
+ url: `https://graph.microsoft.com/v1.0/roleManagement/directory/roleAssignments`,
4
+ headers: {
5
+ accept: 'application/json;odata.metadata=none'
6
+ },
7
+ responseType: 'json',
8
+ data: {
9
+ roleDefinitionId: roleDefinitionId,
10
+ principalId: principalId,
11
+ directoryScopeId: directoryScopeId
12
+ }
13
+ });
14
+ /**
15
+ * Utils for RBAC.
16
+ * Supported RBAC providers:
17
+ * - Directory (Entra ID)
18
+ */
19
+ export const roleAssignment = {
20
+ /**
21
+ * Assigns a specific role to a principal with scope to an administrative unit
22
+ * @param roleDefinitionId Role which lists the actions that can be performed
23
+ * @param principalId Object that represents a user, group, service principal, or managed identity that is requesting access to resources
24
+ * @param administrativeUnitId Administrative unit which represents a current scope for a role assignment
25
+ * @returns Returns unified role assignment object that represents a role definition assigned to a principal with scope to an administrative unit
26
+ */
27
+ async createRoleAssignmentWithAdministrativeUnitScope(roleDefinitionId, principalId, administrativeUnitId) {
28
+ const requestOptions = getRequestOptions(roleDefinitionId, principalId, `/administrativeUnits/${administrativeUnitId}`);
29
+ return await request.post(requestOptions);
30
+ },
31
+ /**
32
+ * Assigns a specific role to a principal with scope to the whole tenant
33
+ * @param roleDefinitionId Role which lists the actions that can be performed
34
+ * @param principalId Object that represents a user, group, service principal, or managed identity that is requesting access to resources
35
+ * @returns Returns unified role assignment object that represents a role definition assigned to a principal with scope to the whole tenant
36
+ */
37
+ async createRoleAssignmentWithTenantScope(roleDefinitionId, principalId) {
38
+ const requestOptions = getRequestOptions(roleDefinitionId, principalId, '/');
39
+ return await request.post(requestOptions);
40
+ }
41
+ };
42
+ //# sourceMappingURL=roleAssignment.js.map
@@ -0,0 +1,24 @@
1
+ import { cli } from '../cli/cli.js';
2
+ import { formatting } from './formatting.js';
3
+ import { odata } from './odata.js';
4
+ export const roleDefinition = {
5
+ /**
6
+ * Get a directory (Microsoft Entra) role
7
+ * @param displayName Role definition display name.
8
+ * @returns The role definition.
9
+ * @throws Error when role definition was not found.
10
+ */
11
+ async getRoleDefinitionByDisplayName(displayName) {
12
+ const roleDefinitions = await odata.getAllItems(`https://graph.microsoft.com/v1.0/roleManagement/directory/roleDefinitions?$filter=displayName eq '${formatting.encodeQueryParameter(displayName)}'`);
13
+ if (roleDefinitions.length === 0) {
14
+ throw `The specified role definition '${displayName}' does not exist.`;
15
+ }
16
+ if (roleDefinitions.length > 1) {
17
+ const resultAsKeyValuePair = formatting.convertArrayToHashTable('id', roleDefinitions);
18
+ const selectedRoleDefinition = await cli.handleMultipleResultsFound(`Multiple role definitions with name '${displayName}' found.`, resultAsKeyValuePair);
19
+ return selectedRoleDefinition;
20
+ }
21
+ return roleDefinitions[0];
22
+ }
23
+ };
24
+ //# sourceMappingURL=roleDefinition.js.map
@@ -0,0 +1,116 @@
1
+ import Global from '/docs/cmd/_global.mdx';
2
+ import Tabs from '@theme/Tabs';
3
+ import TabItem from '@theme/TabItem';
4
+
5
+ # entra administrativeunit roleassignment add
6
+
7
+ Assigns a Microsoft Entra role with administrative unit scope to a user
8
+
9
+ ## Usage
10
+
11
+ ```sh
12
+ m365 entra administrativeunit roleassignment add [options]
13
+ ```
14
+
15
+ ## Options
16
+
17
+ ```md definition-list
18
+ `-i, --administrativeUnitId [administrativeUnitId]`
19
+ : The id of the administrative unit. Specify either `administrativeUnitId` or `administrativeUnitName`.
20
+
21
+ `-n, --administrativeUnitName [administrativeUnitName]`
22
+ : The name of the administrative unit. Specify either `administrativeUnitId` or `administrativeUnitName`.
23
+
24
+ `--roleDefinitionId [roleDefinitionId]`
25
+ : The id of the role definition that the member is in. Specify either `roleDefinitionId` or `roleDefinitionName`.
26
+
27
+ `--roleDefinitionName [roleDefinitionName]`
28
+ : The name of the role definition that the member is in. Specify either `roleDefinitionId` or `roleDefinitionName`.
29
+
30
+ `--userId [userId]`
31
+ : The id of the user that is a member of the scoped role. Specify either `userId` or `userName`.
32
+
33
+ `--userName [userName]`
34
+ : The name of the user that is a member of the scoped role. Specify either `userId` or `userName`.
35
+ ```
36
+
37
+ <Global />
38
+
39
+ ## Remarks
40
+
41
+ :::info
42
+
43
+ To use this command you must be either **Global Administrator** or **Privileged Role Administrator**.
44
+
45
+ :::
46
+
47
+ ## Examples
48
+
49
+ Assign a role definition specified by id to a user specified by id for an administrative unit specified by id
50
+
51
+ ```sh
52
+ m365 entra administrativeunit roleassignment add --administrativeUnitId 81bb36e4-f4c6-4984-8e56-d4f8feae9e09 --roleDefinitionId 4d6ac14f-3453-41d0-bef9-a3e0c569773a --userId 5f91f951-7305-4a27-9b63-7b00906de09f
53
+ ```
54
+
55
+ Assign a role definition specified by name to a user specified by name for an administrative unit specified by name
56
+
57
+ ```sh
58
+ m365 entra administrativeunit roleassignment add --administrativeUnitName 'Marketing Division' --roleDefinitionName 'License Administrator' --userName 'john.doe@contoso.com'
59
+ ```
60
+
61
+ ## Response
62
+
63
+ <Tabs>
64
+ <TabItem value="JSON">
65
+
66
+ ```json
67
+ {
68
+ "id": "5wuT_mJe20eRr5jDpJo4sVH5kV8FcydKm2N7AJBt4J_kNruBxvSESY5W1Pj-rp4J-2",
69
+ "principalId": "5f91f951-7305-4a27-9b63-7b00906de09f",
70
+ "directoryScopeId": "/administrativeUnits/81bb36e4-f4c6-4984-8e56-d4f8feae9e09",
71
+ "roleDefinitionId": "4d6ac14f-3453-41d0-bef9-a3e0c569773a"
72
+ }
73
+ ```
74
+
75
+ </TabItem>
76
+ <TabItem value="Text">
77
+
78
+ ```text
79
+ directoryScopeId: /administrativeUnits/81bb36e4-f4c6-4984-8e56-d4f8feae9e09
80
+ id : 4yeYchSc90m7G5YI8Va7uFH5kV8FcydKm2N7AJBt4J_kNruBxvSESY5W1Pj-rp4J-2
81
+ principalId : 5f91f951-7305-4a27-9b63-7b00906de09f
82
+ roleDefinitionId: 4d6ac14f-3453-41d0-bef9-a3e0c569773a
83
+ ```
84
+
85
+ </TabItem>
86
+ <TabItem value="CSV">
87
+
88
+ ```csv
89
+ id,principalId,directoryScopeId,roleDefinitionId
90
+ UB-K8uf2cUWBi2oS8q9rbFH5kV8FcydKm2N7AJBt4J_kNruBxvSESY5W1Pj-rp4J-2,5f91f951-7305-4a27-9b63-7b00906de09f,/administrativeUnits/81bb36e4-f4c6-4984-8e56-d4f8feae9e09,4d6ac14f-3453-41d0-bef9-a3e0c569773a
91
+ ```
92
+
93
+ </TabItem>
94
+ <TabItem value="Markdown">
95
+
96
+ ```md
97
+ # entra administrativeunit roleassignment add --administrativeUnitId "81bb36e4-f4c6-4984-8e56-d4f8feae9e09" --roleDefinitionId "4d6ac14f-3453-41d0-bef9-a3e0c569773a" --userId "5f91f951-7305-4a27-9b63-7b00906de09f"
98
+
99
+ Date: 11/16/2023
100
+
101
+ ## T8FqTVM00EG--aPgxWl3OlH5kV8FcydKm2N7AJBt4J_kNruBxvSESY5W1Pj-rp4J-2
102
+
103
+ Property | Value
104
+ ---------|-------
105
+ id | T8FqTVM00EG--aPgxWl3OlH5kV8FcydKm2N7AJBt4J\_kNruBxvSESY5W1Pj-rp4J-2
106
+ principalId | 5f91f951-7305-4a27-9b63-7b00906de09f
107
+ directoryScopeId | /administrativeUnits/81bb36e4-f4c6-4984-8e56-d4f8feae9e09
108
+ roleDefinitionId | 4d6ac14f-3453-41d0-bef9-a3e0c569773a
109
+ ```
110
+
111
+ </TabItem>
112
+ </Tabs>
113
+
114
+ ## More information
115
+
116
+ - [Roles with administrative unit scope](https://learn.microsoft.com/entra/identity/role-based-access-control/admin-units-assign-roles#roles-that-can-be-assigned-with-administrative-unit-scope)
@@ -0,0 +1,47 @@
1
+ import Global from '/docs/cmd/_global.mdx';
2
+
3
+ # external connection urltoitemresolver add
4
+
5
+ Adds a URL to item resolver to an external connection
6
+
7
+ ## Usage
8
+
9
+ ```sh
10
+ m365 external connection urltoitemresolver add [options]
11
+ ```
12
+
13
+ ## Options
14
+
15
+ ```md definition-list
16
+ `-c, --externalConnectionId <externalConnectionId>`
17
+ : The ID of the external connection to which to add the resolver
18
+
19
+ `--baseUrls <baseUrls>`
20
+ : Comma-separated list of base URLs
21
+
22
+ `--urlPattern <urlPattern>`
23
+ : Regex pattern to match URLs
24
+
25
+ `-i, --itemId <itemId>`
26
+ : Pattern that matches captured matches from the URL with the external item ID
27
+
28
+ `-p, --priority <priority>`
29
+ : Integer that defines the resolution order
30
+ ```
31
+ <Global />
32
+
33
+ ## Examples
34
+
35
+ Adds a URL to item resolver to an existing connection
36
+
37
+ ```sh
38
+ m365 external connection urltoitemresolver add --externalConnectionId "samplesolutiongallery" --baseUrls "https://adoption.microsoft.com" --urlPattern "/sample-solution-gallery/sample/(?<sampleId>[^/]+)" --itemId "{sampleId}" --priority 1
39
+ ```
40
+
41
+ ## Response
42
+
43
+ The command won't return a response on success.
44
+
45
+ ## More information
46
+
47
+ - Microsoft Graph external connection activitySettings: [https://learn.microsoft.com/graph/api/resources/externalconnectors-activitysettings?view=graph-rest-1.0](https://learn.microsoft.com/graph/api/resources/externalconnectors-activitysettings?view=graph-rest-1.0)
@@ -25,7 +25,14 @@ m365 flow run get [options]
25
25
  : The name of the environment where the flow is located
26
26
 
27
27
  `--includeTriggerInformation`
28
+ : (deprecated. Use option `withTrigger` instead) If specified, include information about the trigger details
29
+
30
+ `--withTrigger`
28
31
  : If specified, include information about the trigger details
32
+
33
+ `--withActions [withActions]`
34
+ : If specified, include information about all actions when no action names are specified, or provide a specified list of actions separated by commas to include only the relevant action details
35
+
29
36
  ```
30
37
 
31
38
  <Global />
@@ -44,7 +51,7 @@ If the Microsoft Flow with the name you specified doesn't exist, you will get th
44
51
 
45
52
  If the run with the name you specified doesn't exist, you will get the `The provided workflow run name is not valid.` error.
46
53
 
47
- If the option `includeTriggerInformation` is specified, but the trigger does not contain an outputsLink such as for example with a `Recurrence` trigger, this option will be ignored.
54
+ If the option `withTrigger` is specified, but the trigger does not contain an outputsLink such as for example with a `Recurrence` trigger, this option will be ignored.
48
55
 
49
56
  ## Examples
50
57
 
@@ -57,7 +64,19 @@ m365 flow run get --environmentName Default-d87a7535-dd31-4437-bfe1-95340acd55c5
57
64
  Get information about the given run of the specified Power Automate flow including trigger information
58
65
 
59
66
  ```sh
60
- m365 flow run get --environmentName Default-d87a7535-dd31-4437-bfe1-95340acd55c5 --flowName 5923cb07-ce1a-4a5c-ab81-257ce820109a --name 08586653536760200319026785874CU62 --includeTriggerInformation
67
+ m365 flow run get --environmentName Default-d87a7535-dd31-4437-bfe1-95340acd55c5 --flowName 5923cb07-ce1a-4a5c-ab81-257ce820109a --name 08586653536760200319026785874CU62 --withTrigger
68
+ ```
69
+
70
+ Get information about the given run of the specified Power Automate flow including details about all associated actions.
71
+
72
+ ```sh
73
+ m365 flow run get --environmentName Default-d87a7535-dd31-4437-bfe1-95340acd55c5 --flowName 5923cb07-ce1a-4a5c-ab81-257ce820109a --name 08586653536760200319026785874CU62 --withActions
74
+ ```
75
+
76
+ Get information about the given run of the specified Power Automate flow including exclusively the details of 'Action_Internal_Name1' and 'Action_Internal_Name2' actions
77
+
78
+ ```sh
79
+ m365 flow run get --environmentName Default-d87a7535-dd31-4437-bfe1-95340acd55c5 --flowName 5923cb07-ce1a-4a5c-ab81-257ce820109a --name 08586653536760200319026785874CU62 --withActions "Action_Internal_Name1,Action_Internal_Name2"
61
80
  ```
62
81
 
63
82
  ## Response
@@ -157,9 +176,9 @@ m365 flow run get --environmentName Default-d87a7535-dd31-4437-bfe1-95340acd55c5
157
176
  </TabItem>
158
177
  </Tabs>
159
178
 
160
- ### `includeTriggerInformation` response
179
+ ### `withTrigger` response
161
180
 
162
- When using the option `includeTriggerInformation`, the response for the json-output will differ.
181
+ When using the option `withTrigger`, the response for the json-output will differ.
163
182
 
164
183
  <Tabs>
165
184
  <TabItem value="JSON">
@@ -233,3 +252,147 @@ When using the option `includeTriggerInformation`, the response for the json-out
233
252
  </TabItem>
234
253
  </Tabs>
235
254
 
255
+ ### `withActions` response
256
+
257
+ When using the option `withActions`, the response for the json-output will differ.
258
+
259
+ <Tabs>
260
+ <TabItem value="JSON">
261
+
262
+ ```json
263
+ {
264
+ "name": "08585236861638480597867166179CU104",
265
+ "id": "/providers/Microsoft.ProcessSimple/environments/Default-e1dd4023-a656-480a-8a0e-c1b1eec51e1d/flows/24335774-daf6-4183-acb7-f5155c2cd2fe/runs/08585236861638480597867166179CU104",
266
+ "type": "Microsoft.ProcessSimple/environments/flows/runs",
267
+ "properties": {
268
+ "actions":{
269
+ "Compose": {
270
+ "input": "Test",
271
+ "inputsLink": {
272
+ "uri": "https://prod-255.westeurope.logic.azure.com:443/workflows/88b5146587d144ea85efb15683c4e58f/runs/08586652586741142222645090602CU35/actions/Compose/contents/ActionInputs?api-version=2016-06-01&se=2023-12-14T19%3A00%3A00.0000000Z&sp=%2Fruns%2F08586652586741142222645090602CU35%2Factions%2FCompose%2Fcontents%2FActionInputs%2Fread&sv=1.0&sig=wYD6bMHjdoOawYAMTHqpmyILowLKRCkFEfsNxi1NFzw",
273
+ "contentVersion": "test==",
274
+ "contentSize": 6,
275
+ "contentHash": {
276
+ "algorithm": "md5",
277
+ "value": "test=="
278
+ }
279
+ },
280
+ "output": "Test",
281
+ "outputsLink": {
282
+ "uri": "https://prod-255.westeurope.logic.azure.com:443/workflows/88b5146587d144ea85efb15683c4e58f/runs/08586652586741142222645090602CU35/actions/Compose/contents/ActionOutputs?api-version=2016-06-01&se=2023-12-14T19%3A00%3A00.0000000Z&sp=%2Fruns%2F08586652586741142222645090602CU35%2Factions%2FCompose%2Fcontents%2FActionOutputs%2Fread&sv=1.0&sig=KoI4_RAEVNFUgymktOFxvfb5mCoIKR2WCYGwexjD7kY",
283
+ "contentVersion": "test==",
284
+ "contentSize": 6,
285
+ "contentHash": {
286
+ "algorithm": "md5",
287
+ "value": "test=="
288
+ }
289
+ },
290
+ "startTime": "2023-11-17T21:06:14.466889Z",
291
+ "endTime": "2023-11-17T21:06:14.4676104Z",
292
+ "correlation": {
293
+ "actionTrackingId": "dabed750-0ec4-4c34-98f5-cc3695e0811e",
294
+ "clientTrackingId": "08585013686846794051719443325CU251",
295
+ "clientKeywords": [
296
+ "resubmitFlow"
297
+ ]
298
+ },
299
+ "status": "Succeeded",
300
+ "code": "OK"
301
+ }
302
+ },
303
+ "startTime": "2023-03-04T09:05:21.8066368Z",
304
+ "endTime": "2023-03-04T09:05:22.5880202Z",
305
+ "status": "Succeeded",
306
+ "correlation": {
307
+ "clientTrackingId": "08585236861638480598867166179CU131"
308
+ },
309
+ "trigger": {
310
+ "name": "When_an_email_is_flagged_(V4)",
311
+ "inputsLink": {
312
+ "uri": "https://prod-130.westeurope.logic.azure.com:443/workflows/3ebadb794f6641e0b7f4fda131cdfb0b/runs/08585236861638480597867166179CU104/contents/TriggerInputs?api-version=2016-06-01&se=2023-03-04T14%3A00%3A00.0000000Z&sp=%2Fruns%2F08585236861638480597867166179CU104%2Fcontents%2FTriggerInputs%2Fread&sv=1.0&sig=",
313
+ "contentVersion": "2v/VLXFrKV6JvwSdcN7aHg==",
314
+ "contentSize": 343,
315
+ "contentHash": {
316
+ "algorithm": "md5",
317
+ "value": "2v/VLXFrKV6JvwSdcN7aHg=="
318
+ }
319
+ },
320
+ "outputsLink": {
321
+ "uri": "https://prod-130.westeurope.logic.azure.com:443/workflows/3ebadb794f6641e0b7f4fda131cdfb0b/runs/08585236861638480597867166179CU104/contents/TriggerOutputs?api-version=2016-06-01&se=2023-03-04T14%3A00%3A00.0000000Z&sp=%2Fruns%2F08585236861638480597867166179CU104%2Fcontents%2FTriggerOutputs%2Fread&sv=1.0&sig=",
322
+ "contentVersion": "AHZEeWNlQ0bLe48yDmpzrQ==",
323
+ "contentSize": 3478,
324
+ "contentHash": {
325
+ "algorithm": "md5",
326
+ "value": "AHZEeWNlQ0bLe48yDmpzrQ=="
327
+ }
328
+ },
329
+ "startTime": "2023-03-04T09:05:21.6192576Z",
330
+ "endTime": "2023-03-04T09:05:21.7442626Z",
331
+ "scheduledTime": "2023-03-04T09:05:21.573561Z",
332
+ "originHistoryName": "08585236861638480598867166179CU131",
333
+ "correlation": {
334
+ "clientTrackingId": "08585236861638480598867166179CU131"
335
+ },
336
+ "code": "OK",
337
+ "status": "Succeeded"
338
+ }
339
+ },
340
+ "startTime": "2023-03-04T09:05:21.8066368Z",
341
+ "endTime": "2023-03-04T09:05:22.5880202Z",
342
+ "status": "Succeeded",
343
+ "triggerName": "When_an_email_is_flagged_(V4)",
344
+ "triggerInformation": {
345
+ "from": "john@contoso.com",
346
+ "toRecipients": "doe@contoso.com",
347
+ "subject": "Dummy email",
348
+ "body": "<html><head>\r\\\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\"></head><body><p>This is dummy content</p></body></html>",
349
+ "importance": "normal",
350
+ "bodyPreview": "This is dummy content",
351
+ "hasAttachments": false,
352
+ "id": "AAMkADgzN2Q1NThiLTI0NjYtNGIxYS05MDdjLTg1OWQxNzgwZGM2ZgBGAAAAAAC6jQfUzacTSIHqMw2yacnUBwBiOC8xvYmdT6G2E_hLMK5kAAAAAAEMAABiOC8xvYmdT6G2E_hLMK5kAALUqy81AAA=",
353
+ "internetMessageId": "<DB7PR03MB5018879914324FC65695809FE1AD9@DB7PR03MB5018.eurprd03.prod.outlook.com>",
354
+ "conversationId": "AAQkADgzN2Q1NThiLTI0NjYtNGIxYS05MDdjLTg1OWQxNzgwZGM2ZgAQAMqP9zsK8a1CnIYEgHclLTk=",
355
+ "receivedDateTime": "2023-03-01T15:06:57+00:00",
356
+ "isRead": false,
357
+ "attachments": [],
358
+ "isHtml": true
359
+ },
360
+ "actions": {
361
+ "Compose": {
362
+ "input": "Test",
363
+ "inputsLink": {
364
+ "uri": "https://prod-255.westeurope.logic.azure.com:443/workflows/88b5146587d144ea85efb15683c4e58f/runs/08586652586741142222645090602CU35/actions/Compose/contents/ActionInputs?api-version=2016-06-01&se=2023-12-14T19%3A00%3A00.0000000Z&sp=%2Fruns%2F08586652586741142222645090602CU35%2Factions%2FCompose%2Fcontents%2FActionInputs%2Fread&sv=1.0&sig=wYD6bMHjdoOawYAMTHqpmyILowLKRCkFEfsNxi1NFzw",
365
+ "contentVersion": "test==",
366
+ "contentSize": 6,
367
+ "contentHash": {
368
+ "algorithm": "md5",
369
+ "value": "test=="
370
+ }
371
+ },
372
+ "output": "Test",
373
+ "outputsLink": {
374
+ "uri": "https://prod-255.westeurope.logic.azure.com:443/workflows/88b5146587d144ea85efb15683c4e58f/runs/08586652586741142222645090602CU35/actions/Compose/contents/ActionOutputs?api-version=2016-06-01&se=2023-12-14T19%3A00%3A00.0000000Z&sp=%2Fruns%2F08586652586741142222645090602CU35%2Factions%2FCompose%2Fcontents%2FActionOutputs%2Fread&sv=1.0&sig=KoI4_RAEVNFUgymktOFxvfb5mCoIKR2WCYGwexjD7kY",
375
+ "contentVersion": "test==",
376
+ "contentSize": 6,
377
+ "contentHash": {
378
+ "algorithm": "md5",
379
+ "value": "test=="
380
+ }
381
+ },
382
+ "startTime": "2023-11-17T21:06:14.466889Z",
383
+ "endTime": "2023-11-17T21:06:14.4676104Z",
384
+ "correlation": {
385
+ "actionTrackingId": "dabed750-0ec4-4c34-98f5-cc3695e0811e",
386
+ "clientTrackingId": "08585013686846794051719443325CU251",
387
+ "clientKeywords": [
388
+ "resubmitFlow"
389
+ ]
390
+ },
391
+ "status": "Succeeded",
392
+ "code": "OK"
393
+ }
394
+ }
395
+ }
396
+ ```
397
+ </TabItem>
398
+ </Tabs>
@@ -33,18 +33,24 @@ m365 spo group member add [options]
33
33
  `--userIds [userIds]`
34
34
  : The user Id of the user to add as a member. (Id of the site user, for example: 14) If multiple users need to be added, the Ids have to be comma-separated. Specify either `userIds`, `userNames`, `emails`, `aadGroupIds` or `aadGroupNames`.
35
35
 
36
+ `--entraGroupIds [entraGroupIds]`
37
+ : The object Id of the Entra group to add as a member. If multiple groups need to be added, the Ids have to be comma-separated. Specify either `userIds`, `userNames`, `emails`, `aadGroupIds`, `entraGroupIds`, `aadGroupNames`, or `entraGroupNames`.
38
+
36
39
  `--aadGroupIds [aadGroupIds]`
37
- : The object Id of the Azure AD group to add as a member. If multiple groups need to be added, the Ids have to be comma-separated. Specify either `userIds`, `userNames`, `emails`, `aadGroupIds` or `aadGroupNames`.
40
+ : (deprecated. Use `entraGroupIds` instead) The object Id of the Azure AD group to add as a member. If multiple groups need to be added, the Ids have to be comma-separated. Specify either `userIds`, `userNames`, `emails`, `aadGroupIds`, `entraGroupIds`, `aadGroupNames`, or `entraGroupNames`.
41
+
42
+ `--entraGroupNames [entraGroupNames]`
43
+ : The name of the Entra group to add as a member. If multiple groups need to be added, they have to be comma-separated. Specify either `userIds`, `userNames`, `emails`, `aadGroupIds`, `entraGroupIds`, `aadGroupNames`, or `entraGroupNames`.
38
44
 
39
45
  `--aadGroupNames [aadGroupNames]`
40
- : The name of the Azure AD group to add as a member. If multiple groups need to be added, they have to be comma-separated. Specify either `userIds`, `userNames`, `emails`, `aadGroupIds` or `aadGroupNames`.
46
+ : (deprecated. Use `entraGroupNames` instead) The name of the Azure AD group to add as a member. If multiple groups need to be added, they have to be comma-separated. Specify either `userIds`, `userNames`, `emails`, `aadGroupIds`, `entraGroupIds`, `aadGroupNames`, or `entraGroupNames`.
41
47
  ```
42
48
 
43
49
  <Global />
44
50
 
45
51
  ## Remarks
46
52
 
47
- For the `userIds`, `userNames`, `emails`, `aadGroupIds` or `aadGroupNames` options you can specify multiple values by separating them with a comma. If one of the specified entries is not valid, the command will fail with an error message showing the list of invalid values.
53
+ For the `userIds`, `userNames`, `emails`, `aadGroupIds`, `entraGroupIds`, `aadGroupNames`, or `entraGroupNames` options you can specify multiple values by separating them with a comma. If one of the specified entries is not valid, the command will fail with an error message showing the list of invalid values.
48
54
 
49
55
  ## Examples
50
56
 
@@ -84,11 +90,17 @@ Add multiple users with the userIds parameter to a SharePoint group with the gro
84
90
  m365 spo group member add --webUrl https://contoso.sharepoint.com/sites/SiteA --groupId 5 --userIds "5,12"
85
91
  ```
86
92
 
87
- Add multiple users with the aadGroupNames parameter to a SharePoint group with the groupId parameter
93
+ Add multiple users with the entraGroupIds parameter to a SharePoint group with the groupId parameter.
94
+
95
+ ```sh
96
+ m365 spo group member add --webUrl https://contoso.sharepoint.com/sites/SiteA --groupId 5 --entraGroupIds "f2fb2f10-cfd2-4054-8ffd-64533657a5ab,3e86049e-89e6-4c27-bccb-d7549f0bbd06"
97
+ ```
98
+
99
+ Add multiple users with the entraGroupNames parameter to a SharePoint group with the groupId parameter.
88
100
 
89
- ```sh
90
- m365 spo group member add --webUrl https://contoso.sharepoint.com/sites/SiteA --groupId 5 --aadGroupNames "Azure group one, Azure group two"
91
- ```
101
+ ```sh
102
+ m365 spo group member add --webUrl https://contoso.sharepoint.com/sites/SiteA --groupId 5 --entraGroupNames "Azure group one, Azure group two"
103
+ ```
92
104
 
93
105
  ## Response
94
106
 
@@ -31,11 +31,17 @@ m365 spo group member remove [options]
31
31
  `--userId [userId]`
32
32
  : The user Id (Id of the site user, eg. 14) of the user to remove as a member. Specify either `userName`, `email`, `userId`, `aadGroupId` or `aadGroupName`.
33
33
 
34
+ `--entraGroupId [entraGroupId]`
35
+ : The object Id of the Entra group to remove as a member. Specify either `userName`, `email`, `userId`, `aadGroupId`, `entraGroupId`, `aadGroupName`, or `entraGroupName`.
36
+
34
37
  `--aadGroupId [aadGroupId]`
35
- : The object Id of the Azure AD group to remove as a member. Specify either `userName`, `email`, `userId`, `aadGroupId` or `aadGroupName`.
38
+ : (deprecated. Use `entraGroupId` instead) The object Id of the Azure AD group to remove as a member. Specify either `userName`, `email`, `userId`, `aadGroupId`, `entraGroupId`, `aadGroupName`, or `entraGroupName`.
39
+
40
+ `--entraGroupName [entraGroupName]`
41
+ : The name of the Entra group to remove as a member. Specify either `userName`, `email`, `userId`, `aadGroupId`, `entraGroupId`, `aadGroupName`, or `entraGroupName`.
36
42
 
37
43
  `--aadGroupName [aadGroupName]`
38
- : The name of the Azure AD group to remove as a member. Specify either `userName`, `email`, `userId`, `aadGroupId` or `aadGroupName`.
44
+ : (deprecated. Use `entraGroupName` instead) The name of the Azure AD group to remove as a member. Specify either `userName`, `email`, `userId`, `aadGroupId`, `entraGroupId`, `aadGroupName`, or `entraGroupName`.
39
45
  ```
40
46
 
41
47
  <Global />
@@ -60,16 +66,16 @@ Remove a user from a SharePoint group by email.
60
66
  m365 spo group member remove --webUrl https://contoso.sharepoint.com/sites/SiteA --groupName "Site A Visitors" --userId 14
61
67
  ```
62
68
 
63
- Remove an Azure AD group from a SharePoint group based on the Azure AD group name on a given web.
69
+ Remove an Entra group from a SharePoint group based on the Entra group name on a given web.
64
70
 
65
71
  ```sh
66
- m365 spo group member remove --webUrl https://contoso.sharepoint.com/sites/SiteA --groupId 5 --aadGroupName "Azure AD Security Group"
72
+ m365 spo group member remove --webUrl https://contoso.sharepoint.com/sites/SiteA --groupId 5 --entraGroupName "Azure AD Security Group"
67
73
  ```
68
74
 
69
- Remove an Azure AD group from a SharePoint group based on the Azure AD group ID on a given web.
75
+ Remove an Entra group from a SharePoint group based on the Entra group ID on a given web.
70
76
 
71
77
  ```sh
72
- m365 spo group member remove --webUrl https://contoso.sharepoint.com/sites/SiteA --groupName "Site A Visitors" --aadGroupId "5786b8e8-c495-4734-b345-756733960730"
78
+ m365 spo group member remove --webUrl https://contoso.sharepoint.com/sites/SiteA --groupName "Site A Visitors" --entraGroupId "5786b8e8-c495-4734-b345-756733960730"
73
79
  ```
74
80
 
75
81
  ## Response
@@ -18,24 +18,27 @@ m365 spo user ensure [options]
18
18
  `-u, --webUrl <webUrl>`
19
19
  : Absolute URL of the site.
20
20
 
21
+ `--entraId [--entraId]`
22
+ : Id of the user in Entra. Specify either `aadId`, `entraId`, or `userName`.
23
+
21
24
  `--aadId [--aadId]`
22
- : Id of the user in Azure AD. Specify either `aadId` or `userName` but not both.
25
+ : (deprecated. Use `entraId` instead) Id of the user in Azure AD. Specify either `aadId`, `entraId`, or `userName`.
23
26
 
24
27
  `--userName [userName]`
25
- : User's UPN (user principal name, e.g. john@contoso.com). Specify either `aadId` or `userName` but not both.
28
+ : User's UPN (user principal name, e.g. john@contoso.com). Specify either `aadId`, `entraId`, or `userName`.
26
29
  ```
27
30
 
28
31
  <Global />
29
32
 
30
33
  ## Examples
31
34
 
32
- Ensures a user by its Azure AD Id
35
+ Ensures a user by its Entra Id.
33
36
 
34
37
  ```sh
35
- m365 spo user ensure --webUrl https://contoso.sharepoint.com/sites/project --aadId e254750a-eaa4-44f6-9517-b74f65cdb747
38
+ m365 spo user ensure --webUrl https://contoso.sharepoint.com/sites/project --entraId e254750a-eaa4-44f6-9517-b74f65cdb747
36
39
  ```
37
40
 
38
- Ensures a user by its user principal name
41
+ Ensures a user by its user principal name.
39
42
 
40
43
  ```sh
41
44
  m365 spo user ensure --webUrl https://contoso.sharepoint.com/sites/project --userName john@contoso.com
@@ -13,8 +13,11 @@ m365 teams user app add [options]
13
13
  ## Options
14
14
 
15
15
  ```md definition-list
16
- `--id <id>`
17
- : The ID of the app to install.
16
+ `--id [id]`
17
+ : The ID of the app to install. Specify either `id` or `name` but not both.
18
+
19
+ `--name [name]`
20
+ : Name of the app to install. Specify either `id` or `name` but not both.
18
21
 
19
22
  `--userId [userId]`
20
23
  : The ID of the user to install the app for. Specify either `userId` or `userName` but not both.
@@ -31,16 +34,16 @@ The `id` has to be the ID of the app from the Microsoft Teams App Catalog. Do no
31
34
 
32
35
  ## Examples
33
36
 
34
- Install an app from the catalog for the specified user by id.
37
+ Install an app by id from the catalog for the specified user by id.
35
38
 
36
39
  ```sh
37
40
  m365 teams user app add --id 4440558e-8c73-4597-abc7-3644a64c4bce --userId 2609af39-7775-4f94-a3dc-0dd67657e900
38
41
  ```
39
42
 
40
- Install an app from the catalog for the specified user by name.
43
+ Install an app by name from the catalog for the specified user by name.
41
44
 
42
45
  ```sh
43
- m365 teams user app add --id 4440558e-8c73-4597-abc7-3644a64c4bce --userName admin@contoso.com
46
+ m365 teams user app add --name HelloWorld --userName admin@contoso.com
44
47
  ```
45
48
 
46
49
  ## Response