@pnp/cli-microsoft365 6.3.0-beta.3f7129c → 6.3.0-beta.64eb7da
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.
- package/.eslintrc.js +4 -0
- package/dist/Command.js +12 -1
- package/dist/cli/Cli.js +4 -1
- package/dist/m365/aad/commands/group/group-list.js +2 -1
- package/dist/m365/base/O365MgmtCommand.js +10 -0
- package/dist/m365/graph/commands/changelog/changelog-list.js +3 -2
- package/dist/m365/onenote/commands/notebook/notebook-list.js +51 -40
- package/dist/m365/planner/commands/plan/plan-add.js +20 -6
- package/dist/m365/planner/commands/plan/plan-get.js +34 -27
- package/dist/m365/planner/commands/plan/plan-list.js +24 -14
- package/dist/m365/planner/commands/plan/plan-remove.js +1 -1
- package/dist/m365/planner/commands/task/task-checklistitem-add.js +2 -1
- package/dist/m365/planner/commands/task/task-checklistitem-list.js +2 -1
- package/dist/m365/pp/commands/solution/solution-get.js +2 -1
- package/dist/m365/pp/commands/solution/solution-list.js +2 -1
- package/dist/m365/purview/commands/auditlog/auditlog-list.js +205 -0
- package/dist/m365/purview/commands/retentioneventtype/retentioneventtype-get.js +70 -0
- package/dist/m365/purview/commands.js +2 -0
- package/dist/m365/spfx/commands/project/WebApiPermissionRequests.js +3 -0
- package/dist/m365/spfx/commands/project/project-permissions-grant.js +81 -0
- package/dist/m365/spfx/commands.js +3 -2
- package/dist/m365/spo/commands/app/app-add.js +2 -1
- package/dist/m365/spo/commands/file/file-sharinginfo-get.js +2 -1
- package/dist/m365/spo/commands/file/file-sharinglink-list.js +2 -1
- package/dist/m365/spo/commands/group/group-list.js +2 -1
- package/dist/m365/spo/commands/hubsite/hubsite-get.js +1 -1
- package/dist/m365/spo/commands/listitem/listitem-list.js +2 -1
- package/dist/m365/spo/commands/page/page-column-get.js +2 -1
- package/dist/m365/spo/commands/page/page-column-list.js +2 -1
- package/dist/m365/spo/commands/page/page-section-get.js +2 -1
- package/dist/m365/spo/commands/page/page-section-list.js +2 -1
- package/dist/m365/spo/commands/spo-search.js +2 -1
- package/dist/m365/spo/commands/term/term-list.js +2 -1
- package/dist/m365/spo/commands/userprofile/userprofile-get.js +2 -2
- package/dist/m365/teams/commands/meeting/meeting-list.js +1 -1
- package/dist/m365/teams/commands/team/team-app-list.js +1 -1
- package/dist/m365/teams/commands/user/user-app-list.js +2 -1
- package/dist/m365/todo/commands/task/task-get.js +2 -1
- package/dist/m365/todo/commands/task/task-list.js +2 -1
- package/dist/m365/yammer/commands/yammer-search.js +2 -1
- package/dist/utils/planner.js +19 -5
- package/docs/docs/cmd/planner/plan/plan-add.md +17 -6
- package/docs/docs/cmd/planner/plan/plan-get.md +16 -2
- package/docs/docs/cmd/planner/plan/plan-list.md +16 -2
- package/docs/docs/cmd/purview/auditlog/auditlog-list.md +123 -0
- package/docs/docs/cmd/purview/retentioneventtype/retentioneventtype-get.md +100 -0
- package/docs/docs/cmd/spfx/project/project-permissions-grant.md +65 -0
- package/docs/docs/cmd/spo/navigation/navigation-node-add.md +1 -1
- package/docs/docs/cmd/spo/navigation/navigation-node-set.md +1 -1
- package/package.json +1 -1
|
@@ -15,6 +15,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
15
15
|
};
|
|
16
16
|
var _TeamsUserAppListCommand_instances, _TeamsUserAppListCommand_initTelemetry, _TeamsUserAppListCommand_initOptions, _TeamsUserAppListCommand_initValidators, _TeamsUserAppListCommand_initOptionSets;
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
const Cli_1 = require("../../../../cli/Cli");
|
|
18
19
|
const request_1 = require("../../../../request");
|
|
19
20
|
const formatting_1 = require("../../../../utils/formatting");
|
|
20
21
|
const odata_1 = require("../../../../utils/odata");
|
|
@@ -47,7 +48,7 @@ class TeamsUserAppListCommand extends GraphCommand_1.default {
|
|
|
47
48
|
const appId = userAppId.substr(userAppId.indexOf("##") + 2, userAppId.length - userId.length - 2);
|
|
48
49
|
i.appId = appId;
|
|
49
50
|
});
|
|
50
|
-
if (args.options.output
|
|
51
|
+
if (!Cli_1.Cli.shouldTrimOutput(args.options.output)) {
|
|
51
52
|
logger.log(items);
|
|
52
53
|
}
|
|
53
54
|
else {
|
|
@@ -15,6 +15,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
15
15
|
};
|
|
16
16
|
var _TodoTaskGetCommand_instances, _TodoTaskGetCommand_initTelemetry, _TodoTaskGetCommand_initOptions, _TodoTaskGetCommand_initOptionSets;
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
const Cli_1 = require("../../../../cli/Cli");
|
|
18
19
|
const request_1 = require("../../../../request");
|
|
19
20
|
const GraphCommand_1 = require("../../../base/GraphCommand");
|
|
20
21
|
const commands_1 = require("../../commands");
|
|
@@ -67,7 +68,7 @@ class TodoTaskGetCommand extends GraphCommand_1.default {
|
|
|
67
68
|
responseType: 'json'
|
|
68
69
|
};
|
|
69
70
|
const item = yield request_1.default.get(requestOptions);
|
|
70
|
-
if (args.options.output
|
|
71
|
+
if (!Cli_1.Cli.shouldTrimOutput(args.options.output)) {
|
|
71
72
|
logger.log(item);
|
|
72
73
|
}
|
|
73
74
|
else {
|
|
@@ -15,6 +15,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
15
15
|
};
|
|
16
16
|
var _TodoTaskListCommand_instances, _TodoTaskListCommand_initTelemetry, _TodoTaskListCommand_initOptions, _TodoTaskListCommand_initOptionSets;
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
const Cli_1 = require("../../../../cli/Cli");
|
|
18
19
|
const request_1 = require("../../../../request");
|
|
19
20
|
const odata_1 = require("../../../../utils/odata");
|
|
20
21
|
const GraphCommand_1 = require("../../../base/GraphCommand");
|
|
@@ -62,7 +63,7 @@ class TodoTaskListCommand extends GraphCommand_1.default {
|
|
|
62
63
|
const listId = yield this.getTodoListId(args);
|
|
63
64
|
const endpoint = `${this.resource}/v1.0/me/todo/lists/${listId}/tasks`;
|
|
64
65
|
const items = yield odata_1.odata.getAllItems(endpoint);
|
|
65
|
-
if (args.options.output
|
|
66
|
+
if (!Cli_1.Cli.shouldTrimOutput(args.options.output)) {
|
|
66
67
|
logger.log(items);
|
|
67
68
|
}
|
|
68
69
|
else {
|
|
@@ -15,6 +15,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
15
15
|
};
|
|
16
16
|
var _YammerSearchCommand_instances, _YammerSearchCommand_initTelemetry, _YammerSearchCommand_initOptions, _YammerSearchCommand_initValidators;
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
const Cli_1 = require("../../../cli/Cli");
|
|
18
19
|
const request_1 = require("../../../request");
|
|
19
20
|
const formatting_1 = require("../../../utils/formatting");
|
|
20
21
|
const YammerCommand_1 = require("../../base/YammerCommand");
|
|
@@ -129,7 +130,7 @@ class YammerSearchCommand extends YammerCommand_1.default {
|
|
|
129
130
|
this.users = [];
|
|
130
131
|
try {
|
|
131
132
|
yield this.getAllItems(logger, args, 1);
|
|
132
|
-
if (args.options.output
|
|
133
|
+
if (!Cli_1.Cli.shouldTrimOutput(args.options.output)) {
|
|
133
134
|
logger.log({
|
|
134
135
|
summary: this.summary,
|
|
135
136
|
messages: this.messages,
|
package/dist/utils/planner.js
CHANGED
|
@@ -41,17 +41,31 @@ exports.planner = {
|
|
|
41
41
|
* Get all Planner plans for a specific group.
|
|
42
42
|
* @param groupId Group ID.
|
|
43
43
|
*/
|
|
44
|
-
getPlansByGroupId(groupId) {
|
|
45
|
-
return odata_1.odata.getAllItems(`${graphResource}/v1.0/groups/${groupId}/planner/plans`,
|
|
44
|
+
getPlansByGroupId(groupId, metadata = 'none') {
|
|
45
|
+
return odata_1.odata.getAllItems(`${graphResource}/v1.0/groups/${groupId}/planner/plans`, metadata);
|
|
46
|
+
},
|
|
47
|
+
/**
|
|
48
|
+
* Get all Planner plans for a specific roster.
|
|
49
|
+
* @param rosterId Roster ID.
|
|
50
|
+
*/
|
|
51
|
+
getPlansByRosterId(rosterId, metadata = 'none') {
|
|
52
|
+
return odata_1.odata.getAllItems(`${graphResource}/beta/planner/rosters/${rosterId}/plans`, metadata);
|
|
46
53
|
},
|
|
47
54
|
/**
|
|
48
55
|
* Get Planner plan by title in a specific group.
|
|
49
56
|
* @param title Title of the Planner plan. Case insensitive.
|
|
50
|
-
* @param groupId Owner group ID
|
|
57
|
+
* @param groupId Owner group ID.
|
|
58
|
+
* @param rosterId Roster ID.
|
|
51
59
|
*/
|
|
52
|
-
getPlanByTitle(title, groupId) {
|
|
60
|
+
getPlanByTitle(title, groupId, rosterId, metadata = 'none') {
|
|
53
61
|
return __awaiter(this, void 0, void 0, function* () {
|
|
54
|
-
|
|
62
|
+
let plans = [];
|
|
63
|
+
if (groupId) {
|
|
64
|
+
plans = yield this.getPlansByGroupId(groupId, metadata);
|
|
65
|
+
}
|
|
66
|
+
else if (rosterId) {
|
|
67
|
+
plans = yield this.getPlansByRosterId(rosterId, metadata);
|
|
68
|
+
}
|
|
55
69
|
const filteredPlans = plans.filter(p => p.title && p.title.toLowerCase() === title.toLowerCase());
|
|
56
70
|
if (!filteredPlans.length) {
|
|
57
71
|
throw Error(`The specified plan '${title}' does not exist.`);
|
|
@@ -14,10 +14,13 @@ m365 planner plan add [options]
|
|
|
14
14
|
: Title of the plan to add.
|
|
15
15
|
|
|
16
16
|
`--ownerGroupId [ownerGroupId]`
|
|
17
|
-
: ID of the Group that owns the plan. A valid group must exist before this option can be set. Specify either `ownerGroupId
|
|
17
|
+
: ID of the Group that owns the plan. A valid group must exist before this option can be set. Specify either `ownerGroupId`, `ownerGroupName` or `rosterId`.
|
|
18
18
|
|
|
19
19
|
`--ownerGroupName [ownerGroupName]`
|
|
20
|
-
: Name of the Group that owns the plan. A valid group must exist before this option can be set. Specify either `ownerGroupId
|
|
20
|
+
: Name of the Group that owns the plan. A valid group must exist before this option can be set. Specify either `ownerGroupId`, `ownerGroupName` or `rosterId`.
|
|
21
|
+
|
|
22
|
+
`--rosterId [rosterId]`
|
|
23
|
+
: ID of the Planner Roster. Specify either `ownerGroupId`, `ownerGroupName` or `rosterId`.
|
|
21
24
|
|
|
22
25
|
`--shareWithUserIds [shareWithUserIds]`
|
|
23
26
|
: The comma-separated IDs of the users with whom you want to share the plan. Specify either `shareWithUserIds` or `shareWithUserNames` but not both.
|
|
@@ -29,23 +32,31 @@ m365 planner plan add [options]
|
|
|
29
32
|
|
|
30
33
|
## Remarks
|
|
31
34
|
|
|
32
|
-
Related to the options `--shareWithUserIds` and `--shareWithUserNames`. If you are leveraging Microsoft 365 groups, use the `aad o365group user` commands to manage group membership to share the [group's](https://pnp.github.io/cli-microsoft365/cmd/aad/o365group/o365group-user-add/) plan. You can also add existing members of the group to this collection though it is not required for them to access the plan owned by the group.
|
|
35
|
+
- Related to the options `--shareWithUserIds` and `--shareWithUserNames`. If you are leveraging Microsoft 365 groups, use the `aad o365group user` commands to manage group membership to share the [group's](https://pnp.github.io/cli-microsoft365/cmd/aad/o365group/o365group-user-add/) plan. You can also add existing members of the group to this collection though it is not required for them to access the plan owned by the group.
|
|
36
|
+
|
|
37
|
+
- Hint: Unlike for groups, a Planner Roster can contain only 1 plan.
|
|
33
38
|
|
|
34
39
|
## Examples
|
|
35
40
|
|
|
36
|
-
Adds a Microsoft Planner plan with
|
|
41
|
+
Adds a Microsoft Planner plan with a Group by id
|
|
37
42
|
|
|
38
43
|
```sh
|
|
39
44
|
m365 planner plan add --title 'My Planner Plan' --ownerGroupId '233e43d0-dc6a-482e-9b4e-0de7a7bce9b4'
|
|
40
45
|
```
|
|
41
46
|
|
|
42
|
-
Adds a Microsoft Planner plan with
|
|
47
|
+
Adds a Microsoft Planner plan with with a Group by name
|
|
43
48
|
|
|
44
49
|
```sh
|
|
45
50
|
m365 planner plan add --title 'My Planner Plan' --ownerGroupName 'My Planner Group'
|
|
46
51
|
```
|
|
47
52
|
|
|
48
|
-
Adds a Microsoft Planner plan with
|
|
53
|
+
Adds a Microsoft Planner plan with a Roster by id
|
|
54
|
+
|
|
55
|
+
```sh
|
|
56
|
+
m365 planner plan add --title 'My Planner Plan' --rosterId 'tYqYlNd6eECmsNhN_fcq85cAGAnd'
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
Adds a Microsoft Planner plan with with a Group by name and share it with the given users
|
|
49
60
|
|
|
50
61
|
```sh
|
|
51
62
|
m365 planner plan add --title 'My Planner Plan' --ownerGroupName 'My Planner Group' --shareWithUserNames 'Allan.Carroll@contoso.com,Ida.Stevens@contoso.com'
|
|
@@ -17,13 +17,21 @@ m365 planner plan get [options]
|
|
|
17
17
|
: Title of the plan. Specify either `id` or `title` but not both.
|
|
18
18
|
|
|
19
19
|
`--ownerGroupId [ownerGroupId]`
|
|
20
|
-
: ID of the Group that owns the plan. Specify either `ownerGroupId` or `
|
|
20
|
+
: ID of the Group that owns the plan. Specify either `ownerGroupId`, `ownerGroupName` or `rosterId` when using `title`.
|
|
21
21
|
|
|
22
22
|
`--ownerGroupName [ownerGroupName]`
|
|
23
|
-
: Name of the Group that owns the plan. Specify either `ownerGroupId` or `
|
|
23
|
+
: Name of the Group that owns the plan. Specify either `ownerGroupId`, `ownerGroupName` or `rosterId` when using `title`.
|
|
24
|
+
|
|
25
|
+
`--rosterId [rosterId]`
|
|
26
|
+
: ID of the Planner Roster. Specify either `ownerGroupId`, `ownerGroupName` or `rosterId` when using `title`.
|
|
24
27
|
|
|
25
28
|
--8<-- "docs/cmd/_global.md"
|
|
26
29
|
|
|
30
|
+
## Remarks
|
|
31
|
+
|
|
32
|
+
!!! attention
|
|
33
|
+
When using `rosterId`, the command is based on an API that is currently in preview and is subject to change once the API reached general availability.
|
|
34
|
+
|
|
27
35
|
## Examples
|
|
28
36
|
|
|
29
37
|
Returns the Microsoft Planner plan with id _gndWOTSK60GfPQfiDDj43JgACDCb_
|
|
@@ -44,6 +52,12 @@ Returns the Microsoft Planner plan with title _MyPlan_ for Group _My Planner Gro
|
|
|
44
52
|
m365 planner plan get --title "MyPlan" --ownerGroupName "My Planner Group"
|
|
45
53
|
```
|
|
46
54
|
|
|
55
|
+
Returns the Microsoft Planner plan with title _MyPlan_ for Roster _FeMZFDoK8k2oWmuGE-XFHZcAEwtn_
|
|
56
|
+
|
|
57
|
+
```sh
|
|
58
|
+
m365 planner plan get --title "MyPlan" --rosterId "FeMZFDoK8k2oWmuGE-XFHZcAEwtn"
|
|
59
|
+
```
|
|
60
|
+
|
|
47
61
|
## Response
|
|
48
62
|
|
|
49
63
|
=== "JSON"
|
|
@@ -11,13 +11,21 @@ m365 planner plan list [options]
|
|
|
11
11
|
## Options
|
|
12
12
|
|
|
13
13
|
`--ownerGroupId [ownerGroupId]`
|
|
14
|
-
: ID of the Group that owns the plan. Specify either `ownerGroupId
|
|
14
|
+
: ID of the Group that owns the plan. Specify either `ownerGroupId`, `ownerGroupName` or `rosterId`.
|
|
15
15
|
|
|
16
16
|
`--ownerGroupName [ownerGroupName]`
|
|
17
|
-
: Name of the Group that owns the plan. Specify either `ownerGroupId
|
|
17
|
+
: Name of the Group that owns the plan. Specify either `ownerGroupId`, `ownerGroupName` or `rosterId`.
|
|
18
|
+
|
|
19
|
+
`--rosterId [rosterId]`
|
|
20
|
+
: ID of the Planner Roster. Specify either `ownerGroupId`, `ownerGroupName` or `rosterId`.
|
|
18
21
|
|
|
19
22
|
--8<-- "docs/cmd/_global.md"
|
|
20
23
|
|
|
24
|
+
## Remarks
|
|
25
|
+
|
|
26
|
+
!!! attention
|
|
27
|
+
When using rosterId, the command is based on an API that is currently in preview and is subject to change once the API reached general availability.
|
|
28
|
+
|
|
21
29
|
## Examples
|
|
22
30
|
|
|
23
31
|
Returns a list of Microsoft Planner plans for Group _233e43d0-dc6a-482e-9b4e-0de7a7bce9b4_
|
|
@@ -32,6 +40,12 @@ Returns a list of Microsoft Planner plans for Group _My Planner Group_
|
|
|
32
40
|
m365 planner plan list --ownerGroupName "My Planner Group"
|
|
33
41
|
```
|
|
34
42
|
|
|
43
|
+
Returns a list of Microsoft Planner plans for Roster _FeMZFDoK8k2oWmuGE-XFHZcAEwtn_
|
|
44
|
+
|
|
45
|
+
```sh
|
|
46
|
+
m365 planner plan list --rosterId "FeMZFDoK8k2oWmuGE-XFHZcAEwtn"
|
|
47
|
+
```
|
|
48
|
+
|
|
35
49
|
## Response
|
|
36
50
|
|
|
37
51
|
=== "JSON"
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
# purview auditlog list
|
|
2
|
+
|
|
3
|
+
List audit logs within your tenant
|
|
4
|
+
|
|
5
|
+
## Usage
|
|
6
|
+
|
|
7
|
+
```sh
|
|
8
|
+
m365 purview auditlog list [options]
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Options
|
|
12
|
+
|
|
13
|
+
`--contentType <contentType>`
|
|
14
|
+
: Content type of logs to retrieve. Possible values: `AzureActiveDirectory`, `Exchange`, `SharePoint`, `General`, `DLP`.
|
|
15
|
+
|
|
16
|
+
`--startTime [startTime]`
|
|
17
|
+
: Time indicating the **inclusive** start of a time range of content to return. This should be defined as a valid ISO 8601 string (2021-12-16T18:28:48.6964197Z). Start time cannot be more than 7 days in the past. Default value is 24h ago.
|
|
18
|
+
|
|
19
|
+
`--endTime [endTime]`
|
|
20
|
+
: Time indicating the **exclusive** end of a time range of content to return. This should be defined as a valid ISO 8601 string (2021-12-16T18:28:48.6964197Z). Default value is now.
|
|
21
|
+
|
|
22
|
+
--8<-- "docs/cmd/_global.md"
|
|
23
|
+
|
|
24
|
+
## Remarks
|
|
25
|
+
|
|
26
|
+
!!! important
|
|
27
|
+
Before you can access audit log data, you must enable unified audit logging for your Microsoft 365 tenant. For instructions, check out the page [Turn auditing on or off](https://learn.microsoft.com/en-us/microsoft-365/compliance/audit-log-enable-disable).
|
|
28
|
+
|
|
29
|
+
!!! important
|
|
30
|
+
When running this command for the first time for a certain content type, a subscription for this content type is created. It can take up to 12 hours for the first content blobs to become available for that subscription.
|
|
31
|
+
|
|
32
|
+
!!! tip
|
|
33
|
+
Retrieving audit logs is an intensive process, especially for large or active tenants. In this case it may take some time to retrieve all audit logs. It can be useful to add the `--verbose` option to your command to view the command progress.
|
|
34
|
+
|
|
35
|
+
When you specify a value for `contentType`, consider the following:
|
|
36
|
+
|
|
37
|
+
- `AzureActiveDirectory` includes all Azure AD audit logs.
|
|
38
|
+
- `Exchange` includes all Exchange audit logs.
|
|
39
|
+
- `SharePoint` includes all SharePoint audit logs.
|
|
40
|
+
- `General` includes all other workloads not included in the previous content types.
|
|
41
|
+
- `DLP` DLP events only for all workloads.
|
|
42
|
+
|
|
43
|
+
## Examples
|
|
44
|
+
|
|
45
|
+
List all SharePoint audit logs for the past 24 hours
|
|
46
|
+
|
|
47
|
+
```sh
|
|
48
|
+
m365 purview auditlog list --contentType SharePoint
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
List all SharePoint audit logs within a specific time frame
|
|
52
|
+
|
|
53
|
+
```sh
|
|
54
|
+
m365 purview auditlog list --contentType SharePoint --startTime "2023-01-01T00:00:00Z" --endTime "2023-01-03T09:00:00Z"
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Get all SharePoint audit logs within a specific time frame and save the logs to a file
|
|
58
|
+
|
|
59
|
+
```sh
|
|
60
|
+
m365 purview auditlog list --contentType SharePoint --startTime "2023-01-01T00:00:00Z" --endTime "2023-01-01T12:00:00Z" > auditLogs.json
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
## Response
|
|
64
|
+
|
|
65
|
+
=== "JSON"
|
|
66
|
+
|
|
67
|
+
```json
|
|
68
|
+
[
|
|
69
|
+
{
|
|
70
|
+
"AppAccessContext": {
|
|
71
|
+
"ClientAppId": "94bfad6e-a0b3-4eb9-8e2b-83eeb335de28",
|
|
72
|
+
"CorrelationId": "040d86a0-f096-5000-d4b4-baac627b75f3",
|
|
73
|
+
"UniqueTokenId": "5CVDGmrynkGYBkY-MPynAA"
|
|
74
|
+
},
|
|
75
|
+
"CreationTime": "2023-01-10T00:00:00",
|
|
76
|
+
"Id": "4d671836-c772-4169-55f9-08dae745c839",
|
|
77
|
+
"Operation": "ListItemViewed",
|
|
78
|
+
"OrganizationId": "6e40c2aa-0565-4013-b38c-d5e6f0c42993",
|
|
79
|
+
"RecordType": 36,
|
|
80
|
+
"UserKey": "i:0i.t|00000003-0000-0ff1-ce00-000000000000|app@sharepoint",
|
|
81
|
+
"UserType": 0,
|
|
82
|
+
"Version": 1,
|
|
83
|
+
"Workload": "SharePoint",
|
|
84
|
+
"ClientIP": "168.63.104.32",
|
|
85
|
+
"ObjectId": "https://contoso.sharepoint.com/sites/Project-x/Lists/cae414a1-ac65-4a90-844e-651d7a1e463d/305_.000",
|
|
86
|
+
"UserId": "john.doe@contoso.com",
|
|
87
|
+
"ApplicationId": "94bfad6e-a0b3-4eb9-8e2b-83eeb335de28",
|
|
88
|
+
"CorrelationId": "040d86a0-f096-5000-d4b4-baac627b75f3",
|
|
89
|
+
"EventSource": "SharePoint",
|
|
90
|
+
"ItemType": "ListItem",
|
|
91
|
+
"ListId": "cae414a1-ac65-4a90-844e-651d7a1e463d",
|
|
92
|
+
"ListItemUniqueId": "2d364471-4d27-4186-b139-072c8225ee4a",
|
|
93
|
+
"Site": "51f5a236-b2e5-4a6d-a81d-13d188610155",
|
|
94
|
+
"UserAgent": "NONISV|Contoso|ContosoApp/1.0",
|
|
95
|
+
"WebId": "38ab94aa-a904-4c2b-8467-4be0e457f97b",
|
|
96
|
+
"CustomizedDoclib": false,
|
|
97
|
+
"FromApp": false,
|
|
98
|
+
"ItemCount": 192,
|
|
99
|
+
"ListBaseTemplateType": "100",
|
|
100
|
+
"ListBaseType": "GenericList",
|
|
101
|
+
"ListColor": "",
|
|
102
|
+
"ListIcon": "",
|
|
103
|
+
"Source": "Unknown",
|
|
104
|
+
"TemplateTypeId": "",
|
|
105
|
+
"ListTitle": "cae414a1-ac65-4a90-844e-651d7a1e463d"
|
|
106
|
+
}
|
|
107
|
+
]
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
=== "Text"
|
|
111
|
+
|
|
112
|
+
```txt
|
|
113
|
+
CreationTime UserId Operation ObjectId
|
|
114
|
+
------------------- -------------------- -------------- --------------------------------------------------------------------------------------------------
|
|
115
|
+
2023-01-10T00:00:00 john.doe@contoso.com ListItemViewed https://contoso.sharepoint.com/sites/Project-x/Lists/cae414a1-ac65-4a90-844e-651d7a1e463d/305_.000
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
=== "CSV"
|
|
119
|
+
|
|
120
|
+
```csv
|
|
121
|
+
CreationTime,UserId,Operation,ObjectId
|
|
122
|
+
2023-01-10T00:00:00,john.doe@contoso.com,ListItemViewed,https://contoso.sharepoint.com/sites/Project-x/Lists/cae414a1-ac65-4a90-844e-651d7a1e463d/305_.000
|
|
123
|
+
```
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
# purview retentioneventtype get
|
|
2
|
+
|
|
3
|
+
Get a retention event type
|
|
4
|
+
|
|
5
|
+
## Usage
|
|
6
|
+
|
|
7
|
+
```sh
|
|
8
|
+
m365 purview retentioneventtype get [options]
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Options
|
|
12
|
+
|
|
13
|
+
`-i, --id <id>`
|
|
14
|
+
: The Id of the retention event type.
|
|
15
|
+
|
|
16
|
+
--8<-- "docs/cmd/_global.md"
|
|
17
|
+
|
|
18
|
+
## Examples
|
|
19
|
+
|
|
20
|
+
Get a retention event type by id
|
|
21
|
+
|
|
22
|
+
```sh
|
|
23
|
+
m365 purview retentioneventtype get --id c37d695e-d581-4ae9-82a0-9364eba4291e
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
## Remarks
|
|
27
|
+
|
|
28
|
+
!!! attention
|
|
29
|
+
This command is based on an API that is currently in preview and is subject to change once the API reached general availability.
|
|
30
|
+
|
|
31
|
+
## More information
|
|
32
|
+
|
|
33
|
+
This command is part of a series of commands that have to do with event-based retention. Event-based retention is about starting a retention period when a specific event occurs, instead of the moment a document was labeled or created.
|
|
34
|
+
|
|
35
|
+
[Read more on event-based retention here](https://learn.microsoft.com/en-us/microsoft-365/compliance/event-driven-retention?view=o365-worldwide)
|
|
36
|
+
|
|
37
|
+
## Response
|
|
38
|
+
|
|
39
|
+
=== "JSON"
|
|
40
|
+
|
|
41
|
+
```json
|
|
42
|
+
{
|
|
43
|
+
"displayName": "Test retention event type",
|
|
44
|
+
"description": "Description for the retention event type",
|
|
45
|
+
"createdDateTime": "2023-01-29T09:30:42Z",
|
|
46
|
+
"lastModifiedDateTime": "2023-01-29T09:30:42Z",
|
|
47
|
+
"id": "c37d695e-d581-4ae9-82a0-9364eba4291e",
|
|
48
|
+
"createdBy": {
|
|
49
|
+
"user": {
|
|
50
|
+
"id": null,
|
|
51
|
+
"displayName": "John Doe"
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
"lastModifiedBy": {
|
|
55
|
+
"user": {
|
|
56
|
+
"id": null,
|
|
57
|
+
"displayName": "John Doe"
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
=== "Text"
|
|
64
|
+
|
|
65
|
+
```text
|
|
66
|
+
createdBy : {"user":{"id":null,"displayName":"John Doe"}}
|
|
67
|
+
createdDateTime : 2023-01-29T09:30:42Z
|
|
68
|
+
description : Description for the retention event type
|
|
69
|
+
displayName : Test retention event type
|
|
70
|
+
id : c37d695e-d581-4ae9-82a0-9364eba4291e
|
|
71
|
+
lastModifiedBy : {"user":{"id":null,"displayName":"John Doe"}}
|
|
72
|
+
lastModifiedDateTime: 2023-01-29T09:30:42Z
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
=== "CSV"
|
|
76
|
+
|
|
77
|
+
```csv
|
|
78
|
+
displayName,description,createdDateTime,lastModifiedDateTime,id,createdBy,lastModifiedBy
|
|
79
|
+
Test retention event type,Description for the retention event type,2023-01-29T09:30:42Z,2023-01-29T09:30:42Z,c37d695e-d581-4ae9-82a0-9364eba4291e,"{""user"":{""id"":null,""displayName"":""John Doe""}}","{""user"":{""id"":null,""displayName"":""John Doe""}}"
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
=== "Markdown"
|
|
83
|
+
|
|
84
|
+
```md
|
|
85
|
+
# purview retentioneventtype get --id "c37d695e-d581-4ae9-82a0-9364eba4291e"
|
|
86
|
+
|
|
87
|
+
Date: 1/29/2023
|
|
88
|
+
|
|
89
|
+
## Test retention event type (c37d695e-d581-4ae9-82a0-9364eba4291e)
|
|
90
|
+
|
|
91
|
+
Property | Value
|
|
92
|
+
---------|-------
|
|
93
|
+
displayName | Test retention event type
|
|
94
|
+
description | Description for the retention event type
|
|
95
|
+
createdDateTime | 2023-01-29T09:30:42Z
|
|
96
|
+
lastModifiedDateTime | 2023-01-29T09:30:42Z
|
|
97
|
+
id | c37d695e-d581-4ae9-82a0-9364eba4291e
|
|
98
|
+
createdBy | {"user":{"id":null,"displayName":"John Doe"}}
|
|
99
|
+
lastModifiedBy | {"user":{"id":null,"displayName":"John Doe"}}
|
|
100
|
+
```
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
# spfx project permissions grant
|
|
2
|
+
|
|
3
|
+
Grant API permissions defined in the current SPFx project
|
|
4
|
+
|
|
5
|
+
## Usage
|
|
6
|
+
|
|
7
|
+
```sh
|
|
8
|
+
m365 spfx project permissions grant [options]
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Options
|
|
12
|
+
|
|
13
|
+
--8<-- "docs/cmd/_global.md"
|
|
14
|
+
|
|
15
|
+
## Remarks
|
|
16
|
+
|
|
17
|
+
!!! important
|
|
18
|
+
Run this command in the folder where the project is located from where you want to grant the permissions.
|
|
19
|
+
|
|
20
|
+
This command grant the permissions defined in: _package-solution.json_.
|
|
21
|
+
|
|
22
|
+
## Examples
|
|
23
|
+
|
|
24
|
+
Grant API permissions requested in the current SPFx project
|
|
25
|
+
|
|
26
|
+
```sh
|
|
27
|
+
m365 spfx project permissions grant
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Response
|
|
31
|
+
|
|
32
|
+
=== "JSON"
|
|
33
|
+
|
|
34
|
+
```json
|
|
35
|
+
{
|
|
36
|
+
"ClientId": "6004a642-185c-479a-992a-15d1c23e2229",
|
|
37
|
+
"ConsentType": "AllPrincipals",
|
|
38
|
+
"IsDomainIsolated": false,
|
|
39
|
+
"ObjectId": "QqYEYFwYmkeZKhXRwj4iKRcAa6TiIbFNvGnKY1dqONY",
|
|
40
|
+
"PackageName": null,
|
|
41
|
+
"Resource": "Microsoft Graph",
|
|
42
|
+
"ResourceId": "a46b0017-21e2-4db1-bc69-ca63576a38d6",
|
|
43
|
+
"Scope": "Mail.Read"
|
|
44
|
+
}
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
=== "Text"
|
|
48
|
+
|
|
49
|
+
```text
|
|
50
|
+
ClientId : 6004a642-185c-479a-992a-15d1c23e2229
|
|
51
|
+
ConsentType : AllPrincipals
|
|
52
|
+
IsDomainIsolated: false
|
|
53
|
+
ObjectId : QqYEYFwYmkeZKhXRwj4iKRcAa6TiIbFNvGnKY1dqONY
|
|
54
|
+
PackageName : null
|
|
55
|
+
Resource : Microsoft Graph
|
|
56
|
+
ResourceId : a46b0017-21e2-4db1-bc69-ca63576a38d6
|
|
57
|
+
Scope : Mail.Read
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
=== "CSV"
|
|
61
|
+
|
|
62
|
+
```csv
|
|
63
|
+
ClientId,ConsentType,IsDomainIsolated,ObjectId,PackageName,Resource,ResourceId,Scope
|
|
64
|
+
6004a642-185c-479a-992a-15d1c23e2229,AllPrincipals,,QqYEYFwYmkeZKhXRwj4iKRcAa6TiIbFNvGnKY1dqONY,,Microsoft Graph,a46b0017-21e2-4db1-bc69-ca63576a38d6,Mail.Read
|
|
65
|
+
```
|
|
@@ -35,7 +35,7 @@ m365 spo navigation node add [options]
|
|
|
35
35
|
|
|
36
36
|
## Remarks
|
|
37
37
|
|
|
38
|
-
|
|
38
|
+
To enable/disable audience targeting for the navigation bar, use the [`spo web set`](../web/web-set.md) command.
|
|
39
39
|
|
|
40
40
|
## Examples
|
|
41
41
|
|
|
@@ -32,7 +32,7 @@ m365 spo navigation node set [options]
|
|
|
32
32
|
|
|
33
33
|
## Remarks
|
|
34
34
|
|
|
35
|
-
To enable/disable audience targeting for the
|
|
35
|
+
To enable/disable audience targeting for the navigation bar, use the [`spo web set`](../web/web-set.md) command.
|
|
36
36
|
|
|
37
37
|
## Examples
|
|
38
38
|
|
package/package.json
CHANGED