@pnp/cli-microsoft365 6.2.0-beta.01dcbcb → 6.2.0-beta.0ce0a85
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/dist/m365/aad/commands/approleassignment/approleassignment-add.js +3 -0
- package/dist/m365/spo/commands/file/file-sharinglink-get.js +116 -0
- package/dist/m365/spo/commands/file/file-sharinglink-list.js +17 -4
- package/dist/m365/spo/commands/file/file-sharinglink-remove.js +135 -0
- package/dist/m365/spo/commands/group/group-member-remove.js +78 -33
- package/dist/m365/spo/commands/list/list-retentionlabel-ensure.js +10 -2
- package/dist/m365/spo/commands/listitem/ListItemRetentionLabel.js +3 -0
- package/dist/m365/spo/commands/listitem/SiteRetentionLabel.js +3 -0
- package/dist/m365/spo/commands/listitem/listitem-retentionlabel-ensure.js +161 -0
- package/dist/m365/spo/commands.js +3 -0
- package/dist/m365/teams/commands/chat/chat-list.js +29 -7
- package/docs/docs/cmd/spo/file/file-sharinglink-get.md +107 -0
- package/docs/docs/cmd/spo/file/file-sharinglink-list.md +16 -7
- package/docs/docs/cmd/spo/file/file-sharinglink-remove.md +52 -0
- package/docs/docs/cmd/spo/group/group-member-remove.md +24 -6
- package/docs/docs/cmd/spo/list/list-retentionlabel-ensure.md +8 -5
- package/docs/docs/cmd/spo/listitem/listitem-retentionlabel-ensure.md +58 -0
- package/docs/docs/cmd/teams/chat/chat-list.md +16 -4
- package/npm-shrinkwrap.json +182 -202
- package/package.json +11 -11
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
12
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
13
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
14
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
15
|
+
};
|
|
16
|
+
var _SpoListItemRetentionLabelEnsureCommand_instances, _SpoListItemRetentionLabelEnsureCommand_initTelemetry, _SpoListItemRetentionLabelEnsureCommand_initOptions, _SpoListItemRetentionLabelEnsureCommand_initValidators, _SpoListItemRetentionLabelEnsureCommand_initOptionSets;
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
const request_1 = require("../../../../request");
|
|
19
|
+
const formatting_1 = require("../../../../utils/formatting");
|
|
20
|
+
const urlUtil_1 = require("../../../../utils/urlUtil");
|
|
21
|
+
const validation_1 = require("../../../../utils/validation");
|
|
22
|
+
const SpoCommand_1 = require("../../../base/SpoCommand");
|
|
23
|
+
const commands_1 = require("../../commands");
|
|
24
|
+
const SpoWebRetentionLabelListCommand = require("../web/web-retentionlabel-list");
|
|
25
|
+
const Cli_1 = require("../../../../cli/Cli");
|
|
26
|
+
class SpoListItemRetentionLabelEnsureCommand extends SpoCommand_1.default {
|
|
27
|
+
get name() {
|
|
28
|
+
return commands_1.default.LISTITEM_RETENTIONLABEL_ENSURE;
|
|
29
|
+
}
|
|
30
|
+
get description() {
|
|
31
|
+
return 'Apply a retention label to a list item';
|
|
32
|
+
}
|
|
33
|
+
constructor() {
|
|
34
|
+
super();
|
|
35
|
+
_SpoListItemRetentionLabelEnsureCommand_instances.add(this);
|
|
36
|
+
__classPrivateFieldGet(this, _SpoListItemRetentionLabelEnsureCommand_instances, "m", _SpoListItemRetentionLabelEnsureCommand_initTelemetry).call(this);
|
|
37
|
+
__classPrivateFieldGet(this, _SpoListItemRetentionLabelEnsureCommand_instances, "m", _SpoListItemRetentionLabelEnsureCommand_initOptions).call(this);
|
|
38
|
+
__classPrivateFieldGet(this, _SpoListItemRetentionLabelEnsureCommand_instances, "m", _SpoListItemRetentionLabelEnsureCommand_initValidators).call(this);
|
|
39
|
+
__classPrivateFieldGet(this, _SpoListItemRetentionLabelEnsureCommand_instances, "m", _SpoListItemRetentionLabelEnsureCommand_initOptionSets).call(this);
|
|
40
|
+
}
|
|
41
|
+
commandAction(logger, args) {
|
|
42
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
43
|
+
try {
|
|
44
|
+
const labelInformation = yield this.getLabelInformation(args.options, logger);
|
|
45
|
+
yield this.applyLabel(args.options, labelInformation, logger);
|
|
46
|
+
}
|
|
47
|
+
catch (err) {
|
|
48
|
+
this.handleRejectedODataJsonPromise(err);
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
getLabelInformation(options, logger) {
|
|
53
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
54
|
+
const cmdOptions = {
|
|
55
|
+
webUrl: options.webUrl,
|
|
56
|
+
output: 'json',
|
|
57
|
+
debug: options.debug,
|
|
58
|
+
verbose: options.verbose
|
|
59
|
+
};
|
|
60
|
+
const output = yield Cli_1.Cli.executeCommandWithOutput(SpoWebRetentionLabelListCommand, { options: Object.assign(Object.assign({}, cmdOptions), { _: [] }) });
|
|
61
|
+
if (this.verbose) {
|
|
62
|
+
logger.logToStderr(output.stderr);
|
|
63
|
+
}
|
|
64
|
+
const labels = JSON.parse(output.stdout);
|
|
65
|
+
const label = labels.find(l => l.TagName === options.name || l.TagId === options.id);
|
|
66
|
+
if (this.verbose && label !== undefined) {
|
|
67
|
+
logger.logToStderr(`Retention label found in the list of available labels: '${label.TagName}' / '${label.TagId}'...`);
|
|
68
|
+
}
|
|
69
|
+
if (label === undefined) {
|
|
70
|
+
throw new Error(`The specified retention label does not exist`);
|
|
71
|
+
}
|
|
72
|
+
return {
|
|
73
|
+
complianceTag: label.TagName,
|
|
74
|
+
isTagPolicyHold: label.BlockDelete,
|
|
75
|
+
isTagPolicyRecord: label.BlockEdit,
|
|
76
|
+
isEventBasedTag: label.IsEventTag,
|
|
77
|
+
isTagSuperLock: label.SuperLock,
|
|
78
|
+
isUnlockedAsDefault: label.UnlockedAsDefault
|
|
79
|
+
};
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
applyLabel(options, labelInformation, logger) {
|
|
83
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
84
|
+
if (this.verbose) {
|
|
85
|
+
logger.logToStderr(`Applying retention label to item in list '${options.listId || options.listTitle || options.listUrl}' in site at ${options.webUrl}...`);
|
|
86
|
+
}
|
|
87
|
+
let requestUrl = `${options.webUrl}/_api/web`;
|
|
88
|
+
if (options.listId) {
|
|
89
|
+
requestUrl += `/lists(guid'${formatting_1.formatting.encodeQueryParameter(options.listId)}')/items(${options.listItemId})/SetComplianceTag()`;
|
|
90
|
+
}
|
|
91
|
+
else if (options.listTitle) {
|
|
92
|
+
requestUrl += `/lists/getByTitle('${formatting_1.formatting.encodeQueryParameter(options.listTitle)}')/items(${options.listItemId})/SetComplianceTag()`;
|
|
93
|
+
}
|
|
94
|
+
else if (options.listUrl) {
|
|
95
|
+
const listServerRelativeUrl = urlUtil_1.urlUtil.getServerRelativePath(options.webUrl, options.listUrl);
|
|
96
|
+
requestUrl += `/GetList(@listUrl)/items(${options.listItemId})/SetComplianceTag()?@listUrl='${formatting_1.formatting.encodeQueryParameter(listServerRelativeUrl)}'`;
|
|
97
|
+
}
|
|
98
|
+
const requestOptions = {
|
|
99
|
+
url: requestUrl,
|
|
100
|
+
headers: {
|
|
101
|
+
'accept': 'application/json;odata=nometadata'
|
|
102
|
+
},
|
|
103
|
+
data: labelInformation,
|
|
104
|
+
responseType: 'json'
|
|
105
|
+
};
|
|
106
|
+
yield request_1.default.post(requestOptions);
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
_SpoListItemRetentionLabelEnsureCommand_instances = new WeakSet(), _SpoListItemRetentionLabelEnsureCommand_initTelemetry = function _SpoListItemRetentionLabelEnsureCommand_initTelemetry() {
|
|
111
|
+
this.telemetry.push((args) => {
|
|
112
|
+
Object.assign(this.telemetryProperties, {
|
|
113
|
+
listId: typeof args.options.listId !== 'undefined',
|
|
114
|
+
listTitle: typeof args.options.listTitle !== 'undefined',
|
|
115
|
+
listUrl: typeof args.options.listUrl !== 'undefined',
|
|
116
|
+
name: typeof args.options.name !== 'undefined',
|
|
117
|
+
id: typeof args.options.id !== 'undefined'
|
|
118
|
+
});
|
|
119
|
+
});
|
|
120
|
+
}, _SpoListItemRetentionLabelEnsureCommand_initOptions = function _SpoListItemRetentionLabelEnsureCommand_initOptions() {
|
|
121
|
+
this.options.unshift({
|
|
122
|
+
option: '-u, --webUrl <webUrl>'
|
|
123
|
+
}, {
|
|
124
|
+
option: '--listItemId <listItemId>'
|
|
125
|
+
}, {
|
|
126
|
+
option: '--listId [listId]'
|
|
127
|
+
}, {
|
|
128
|
+
option: '--listTitle [listTitle]'
|
|
129
|
+
}, {
|
|
130
|
+
option: '--listUrl [listUrl]'
|
|
131
|
+
}, {
|
|
132
|
+
option: '-n, --name [name]'
|
|
133
|
+
}, {
|
|
134
|
+
option: '-i, --id [id]'
|
|
135
|
+
});
|
|
136
|
+
}, _SpoListItemRetentionLabelEnsureCommand_initValidators = function _SpoListItemRetentionLabelEnsureCommand_initValidators() {
|
|
137
|
+
this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
|
|
138
|
+
const id = parseInt(args.options.listItemId);
|
|
139
|
+
if (isNaN(id)) {
|
|
140
|
+
return `${args.options.listItemId} is not a valid list item ID`;
|
|
141
|
+
}
|
|
142
|
+
const isValidSharePointUrl = validation_1.validation.isValidSharePointUrl(args.options.webUrl);
|
|
143
|
+
if (isValidSharePointUrl !== true) {
|
|
144
|
+
return isValidSharePointUrl;
|
|
145
|
+
}
|
|
146
|
+
if (args.options.listId &&
|
|
147
|
+
!validation_1.validation.isValidGuid(args.options.listId)) {
|
|
148
|
+
return `${args.options.listId} is not a valid GUID`;
|
|
149
|
+
}
|
|
150
|
+
if (args.options.id &&
|
|
151
|
+
!validation_1.validation.isValidGuid(args.options.id)) {
|
|
152
|
+
return `${args.options.id} is not a valid GUID`;
|
|
153
|
+
}
|
|
154
|
+
return true;
|
|
155
|
+
}));
|
|
156
|
+
}, _SpoListItemRetentionLabelEnsureCommand_initOptionSets = function _SpoListItemRetentionLabelEnsureCommand_initOptionSets() {
|
|
157
|
+
this.optionSets.push({ options: ['listId', 'listTitle', 'listUrl'] });
|
|
158
|
+
this.optionSets.push({ options: ['name', 'id'] });
|
|
159
|
+
};
|
|
160
|
+
module.exports = new SpoListItemRetentionLabelEnsureCommand();
|
|
161
|
+
//# sourceMappingURL=listitem-retentionlabel-ensure.js.map
|
|
@@ -62,7 +62,9 @@ exports.default = {
|
|
|
62
62
|
FILE_ROLEINHERITANCE_BREAK: `${prefix} file roleinheritance break`,
|
|
63
63
|
FILE_ROLEINHERITANCE_RESET: `${prefix} file roleinheritance reset`,
|
|
64
64
|
FILE_SHARINGINFO_GET: `${prefix} file sharinginfo get`,
|
|
65
|
+
FILE_SHARINGLINK_GET: `${prefix} file sharinglink get`,
|
|
65
66
|
FILE_SHARINGLINK_LIST: `${prefix} file sharinglink list`,
|
|
67
|
+
FILE_SHARINGLINK_REMOVE: `${prefix} file sharinglink remove`,
|
|
66
68
|
FILE_VERSION_CLEAR: `${prefix} file version clear`,
|
|
67
69
|
FILE_VERSION_GET: `${prefix} file version get`,
|
|
68
70
|
FILE_VERSION_LIST: `${prefix} file version list`,
|
|
@@ -148,6 +150,7 @@ exports.default = {
|
|
|
148
150
|
LISTITEM_RECORD_UNDECLARE: `${prefix} listitem record undeclare`,
|
|
149
151
|
LISTITEM_RECORD_UNLOCK: `${prefix} listitem record unlock`,
|
|
150
152
|
LISTITEM_REMOVE: `${prefix} listitem remove`,
|
|
153
|
+
LISTITEM_RETENTIONLABEL_ENSURE: `${prefix} listitem retentionlabel ensure`,
|
|
151
154
|
LISTITEM_RETENTIONLABEL_REMOVE: `${prefix} listitem retentionlabel remove`,
|
|
152
155
|
LISTITEM_ROLEASSIGNMENT_ADD: `${prefix} listitem roleassignment add`,
|
|
153
156
|
LISTITEM_ROLEASSIGNMENT_REMOVE: `${prefix} listitem roleassignment remove`,
|
|
@@ -15,9 +15,12 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
15
15
|
};
|
|
16
16
|
var _TeamsChatListCommand_instances, _TeamsChatListCommand_initTelemetry, _TeamsChatListCommand_initOptions, _TeamsChatListCommand_initValidators;
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
const Auth_1 = require("../../../../Auth");
|
|
19
|
+
const accessToken_1 = require("../../../../utils/accessToken");
|
|
18
20
|
const odata_1 = require("../../../../utils/odata");
|
|
19
21
|
const GraphCommand_1 = require("../../../base/GraphCommand");
|
|
20
22
|
const commands_1 = require("../../commands");
|
|
23
|
+
const validation_1 = require("../../../../utils/validation");
|
|
21
24
|
class TeamsChatListCommand extends GraphCommand_1.default {
|
|
22
25
|
get name() {
|
|
23
26
|
return commands_1.default.CHAT_LIST;
|
|
@@ -31,16 +34,26 @@ class TeamsChatListCommand extends GraphCommand_1.default {
|
|
|
31
34
|
constructor() {
|
|
32
35
|
super();
|
|
33
36
|
_TeamsChatListCommand_instances.add(this);
|
|
37
|
+
this.supportedTypes = ['oneOnOne', 'group', 'meeting'];
|
|
34
38
|
__classPrivateFieldGet(this, _TeamsChatListCommand_instances, "m", _TeamsChatListCommand_initTelemetry).call(this);
|
|
35
39
|
__classPrivateFieldGet(this, _TeamsChatListCommand_instances, "m", _TeamsChatListCommand_initOptions).call(this);
|
|
36
40
|
__classPrivateFieldGet(this, _TeamsChatListCommand_instances, "m", _TeamsChatListCommand_initValidators).call(this);
|
|
37
41
|
}
|
|
38
42
|
commandAction(logger, args) {
|
|
39
43
|
return __awaiter(this, void 0, void 0, function* () {
|
|
40
|
-
const
|
|
41
|
-
|
|
44
|
+
const isAppOnlyAuth = accessToken_1.accessToken.isAppOnlyAccessToken(Auth_1.default.service.accessTokens[this.resource].accessToken);
|
|
45
|
+
if (isAppOnlyAuth && !args.options.userId && !args.options.userName) {
|
|
46
|
+
throw `The option 'userId' or 'userName' is required when obtaining chats using app only permissions`;
|
|
47
|
+
}
|
|
48
|
+
else if (!isAppOnlyAuth && (args.options.userId || args.options.userName)) {
|
|
49
|
+
throw `The options 'userId' or 'userName' cannot be used when obtaining chats using delegated permissions`;
|
|
50
|
+
}
|
|
51
|
+
let requestUrl = `${this.resource}/v1.0/${!isAppOnlyAuth ? 'me' : `users/${args.options.userId || args.options.userName}`}/chats`;
|
|
52
|
+
if (args.options.type) {
|
|
53
|
+
requestUrl += `?$filter=chatType eq '${args.options.type}'`;
|
|
54
|
+
}
|
|
42
55
|
try {
|
|
43
|
-
const items = yield odata_1.odata.getAllItems(
|
|
56
|
+
const items = yield odata_1.odata.getAllItems(requestUrl);
|
|
44
57
|
logger.log(items);
|
|
45
58
|
}
|
|
46
59
|
catch (err) {
|
|
@@ -58,13 +71,22 @@ _TeamsChatListCommand_instances = new WeakSet(), _TeamsChatListCommand_initTelem
|
|
|
58
71
|
}, _TeamsChatListCommand_initOptions = function _TeamsChatListCommand_initOptions() {
|
|
59
72
|
this.options.unshift({
|
|
60
73
|
option: '-t, --type [type]',
|
|
61
|
-
autocomplete:
|
|
74
|
+
autocomplete: this.supportedTypes
|
|
75
|
+
}, {
|
|
76
|
+
option: '--userId [userId]'
|
|
77
|
+
}, {
|
|
78
|
+
option: '--userName [userName]'
|
|
62
79
|
});
|
|
63
80
|
}, _TeamsChatListCommand_initValidators = function _TeamsChatListCommand_initValidators() {
|
|
64
81
|
this.validators.push((args) => __awaiter(this, void 0, void 0, function* () {
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
82
|
+
if (args.options.type !== undefined && this.supportedTypes.indexOf(args.options.type) === -1) {
|
|
83
|
+
return `${args.options.type} is not a valid chatType. Accepted values are ${this.supportedTypes.join(', ')}`;
|
|
84
|
+
}
|
|
85
|
+
if (args.options.userId && args.options.userName) {
|
|
86
|
+
return `You can only specify either 'userId' or 'userName'`;
|
|
87
|
+
}
|
|
88
|
+
if (args.options.userId && !validation_1.validation.isValidGuid(args.options.userId)) {
|
|
89
|
+
return `${args.options.userId} is not a valid GUID`;
|
|
68
90
|
}
|
|
69
91
|
return true;
|
|
70
92
|
}));
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
# spo file sharinglink get
|
|
2
|
+
|
|
3
|
+
Gets details about a specific sharing link of a file
|
|
4
|
+
|
|
5
|
+
## Usage
|
|
6
|
+
|
|
7
|
+
```sh
|
|
8
|
+
m365 spo file sharinglink get [options]
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Options
|
|
12
|
+
|
|
13
|
+
`-u, --webUrl <webUrl>`
|
|
14
|
+
: The URL of the site where the file is located.
|
|
15
|
+
|
|
16
|
+
`--fileUrl [fileUrl]`
|
|
17
|
+
: The server-relative (decoded) URL of the file. Specify either `fileUrl` or `fileId` but not both.
|
|
18
|
+
|
|
19
|
+
`--fileId [fileId]`
|
|
20
|
+
: The UniqueId (GUID) of the file. Specify either `fileUrl` or `fileId` but not both.
|
|
21
|
+
|
|
22
|
+
`-i, --id <id>`
|
|
23
|
+
: The ID of the sharing link.
|
|
24
|
+
|
|
25
|
+
--8<-- "docs/cmd/_global.md"
|
|
26
|
+
|
|
27
|
+
## Examples
|
|
28
|
+
|
|
29
|
+
Gets a specific sharing link of a file by id.
|
|
30
|
+
|
|
31
|
+
```sh
|
|
32
|
+
m365 spo file sharinglink get --webUrl 'https://contoso.sharepoint.com/sites/demo' --fileId daebb04b-a773-4baa-b1d1-3625418e3234 --id 1ba739c5-e693-4c16-9dfa-042e4ec62972
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
Gets a specific sharing link of a file by a specified site-relative URL.
|
|
36
|
+
|
|
37
|
+
```sh
|
|
38
|
+
m365 spo file sharinglink get --webUrl 'https://contoso.sharepoint.com/sites/demo' --fileUrl 'Shared Documents/document.docx' --id 1ba739c5-e693-4c16-9dfa-042e4ec62972
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
Gets a specific sharing link of a file by a specified server-relative URL.
|
|
42
|
+
|
|
43
|
+
```sh
|
|
44
|
+
m365 spo file sharinglink get --webUrl 'https://contoso.sharepoint.com/sites/demo' --fileUrl '/sites/demo/Shared Documents/document.docx' --id 1ba739c5-e693-4c16-9dfa-042e4ec62972
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## Response
|
|
48
|
+
|
|
49
|
+
=== "JSON"
|
|
50
|
+
|
|
51
|
+
```json
|
|
52
|
+
{
|
|
53
|
+
"id": "1ba739c5-e693-4c16-9dfa-042e4ec62972",
|
|
54
|
+
"roles": [
|
|
55
|
+
"write"
|
|
56
|
+
],
|
|
57
|
+
"hasPassword": false,
|
|
58
|
+
"grantedToIdentitiesV2": [
|
|
59
|
+
{
|
|
60
|
+
"user": {
|
|
61
|
+
"displayName": "John Doe",
|
|
62
|
+
"email": "john@contoso.onmicrosoft.com",
|
|
63
|
+
"id": "04355ecd-2124-4097-bc2b-c2295a71d7a3"
|
|
64
|
+
},
|
|
65
|
+
"siteUser": {
|
|
66
|
+
"displayName": "John Doe",
|
|
67
|
+
"email": "john@contoso.onmicrosoft.com",
|
|
68
|
+
"id": "11",
|
|
69
|
+
"loginName": "i:0#.f|membership|john@contoso.onmicrosoft.com"
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
],
|
|
73
|
+
"grantedToIdentities": [
|
|
74
|
+
{
|
|
75
|
+
"user": {
|
|
76
|
+
"displayName": "John Doe",
|
|
77
|
+
"email": "john@contoso.onmicrosoft.com",
|
|
78
|
+
"id": "04355ecd-2124-4097-bc2b-c2295a71d7a3"
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
],
|
|
82
|
+
"link": {
|
|
83
|
+
"scope": "organization",
|
|
84
|
+
"type": "edit",
|
|
85
|
+
"webUrl": "https://contoso.sharepoint.com/:w:/s/demo/EecoJa3lri9Hu9NWp-W0aBQB8ZqmGqA5tdIiaab4o-6BZw",
|
|
86
|
+
"preventsDownload": false
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
=== "Text"
|
|
92
|
+
|
|
93
|
+
```text
|
|
94
|
+
grantedToIdentities : [{"user":{"displayName":"John Doe","email":"john@contoso.onmicrosoft.com","id":"04355ecd-2124-4097-bc2b-c2295a71d7a3"}}]
|
|
95
|
+
grantedToIdentitiesV2: [{"user":{"displayName":"John Doe","email":"john@contoso.onmicrosoft.com","id":"04355ecd-2124-4097-bc2b-c2295a71d7a3"},"siteUser":{"displayName":"John Doe","email":"john@contoso.onmicrosoft.com","id":"11","loginName":"i:0#.f|membership|john@contoso.onmicrosoft.com"}}]
|
|
96
|
+
hasPassword : false
|
|
97
|
+
id : 1ba739c5-e693-4c16-9dfa-042e4ec62972
|
|
98
|
+
link : {"scope":"organization","type":"edit","webUrl":"https://contoso.sharepoint.com/:w:/s/demo/EecoJa3lri9Hu9NWp-W0aBQB8ZqmGqA5tdIiaab4o-6BZw","preventsDownload":false}
|
|
99
|
+
roles : ["write"]
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
=== "CSV"
|
|
103
|
+
|
|
104
|
+
```csv
|
|
105
|
+
id,roles,hasPassword,grantedToIdentitiesV2,grantedToIdentities,link
|
|
106
|
+
1ba739c5-e693-4c16-9dfa-042e4ec62972,"[""write""]",,"[{""user"":{""displayName"":""John Doe"",""email"":""john@contoso.onmicrosoft.com"",""id"":""04355ecd-2124-4097-bc2b-c2295a71d7a3""},""siteUser"":{""displayName"":""John Doe"",""email"":""john@contoso.onmicrosoft.com"",""id"":""11"",""loginName"":""i:0#.f|membership|john@contoso.onmicrosoft.com""}}]","[{""user"":{""displayName"":""John Doe"",""email"":""john@contoso.onmicrosoft.com"",""id"":""04355ecd-2124-4097-bc2b-c2295a71d7a3""}}]","{""scope"":""organization"",""type"":""edit"",""webUrl"":""https://contoso.sharepoint.com/:w:/s/demo/EecoJa3lri9Hu9NWp-W0aBQB8ZqmGqA5tdIiaab4o-6BZw"",""preventsDownload"":false}"
|
|
107
|
+
```
|
|
@@ -19,6 +19,9 @@ m365 spo file sharinglink list [options]
|
|
|
19
19
|
`-i, --fileId [fileId]`
|
|
20
20
|
: The UniqueId (GUID) of the file. Specify either `fileUrl` or `fileId` but not both.
|
|
21
21
|
|
|
22
|
+
`--scope [scope]`
|
|
23
|
+
: Filter the results to only sharing links of a given scope: `anonymous`, `users` or `organization`. By default all sharing links are listed.
|
|
24
|
+
|
|
22
25
|
--8<-- "docs/cmd/_global.md"
|
|
23
26
|
|
|
24
27
|
## Examples
|
|
@@ -35,6 +38,12 @@ List sharing links of a file by url
|
|
|
35
38
|
m365 spo file sharinglink list --webUrl https://contoso.sharepoint.com/sites/demo --fileUrl "/sites/demo/shared documents/document.docx"
|
|
36
39
|
```
|
|
37
40
|
|
|
41
|
+
List anonymous sharing links of a file by url
|
|
42
|
+
|
|
43
|
+
```sh
|
|
44
|
+
m365 spo file sharinglink list --webUrl https://contoso.sharepoint.com/sites/demo --fileUrl "/sites/demo/shared documents/document.docx" --scope anonymous
|
|
45
|
+
```
|
|
46
|
+
|
|
38
47
|
## Response
|
|
39
48
|
|
|
40
49
|
=== "JSON"
|
|
@@ -72,9 +81,9 @@ m365 spo file sharinglink list --webUrl https://contoso.sharepoint.com/sites/dem
|
|
|
72
81
|
}
|
|
73
82
|
],
|
|
74
83
|
"link": {
|
|
75
|
-
"scope": "
|
|
84
|
+
"scope": "organization",
|
|
76
85
|
"type": "view",
|
|
77
|
-
"webUrl": "https://contoso.sharepoint.com/:
|
|
86
|
+
"webUrl": "https://contoso.sharepoint.com/:w:/s/demo/EY50lub3559MtRKfj2hrZqoBWnHOpGIcgi4gzw9XiWYJ-A",
|
|
78
87
|
"preventsDownload": false
|
|
79
88
|
}
|
|
80
89
|
}
|
|
@@ -84,14 +93,14 @@ m365 spo file sharinglink list --webUrl https://contoso.sharepoint.com/sites/dem
|
|
|
84
93
|
=== "Text"
|
|
85
94
|
|
|
86
95
|
```text
|
|
87
|
-
id roles link
|
|
88
|
-
------------------------------------ -----
|
|
89
|
-
2a021f54-90a2-4016-b3b3-5f34d2e7d932 read https://contoso.sharepoint.com/:
|
|
96
|
+
id scope roles link
|
|
97
|
+
------------------------------------ ------------ ----- ----------------------------------------------------------------------------------------
|
|
98
|
+
2a021f54-90a2-4016-b3b3-5f34d2e7d932 organization read https://contoso.sharepoint.com/:w:/s/demo/EY50lub3559MtRKfj2hrZqoBWnHOpGIcgi4gzw9XiWYJ-A
|
|
90
99
|
```
|
|
91
100
|
|
|
92
101
|
=== "CSV"
|
|
93
102
|
|
|
94
103
|
```csv
|
|
95
|
-
id,roles,link
|
|
96
|
-
2a021f54-90a2-4016-b3b3-5f34d2e7d932,read,https://contoso.sharepoint.com/:
|
|
104
|
+
id,scope,roles,link
|
|
105
|
+
2a021f54-90a2-4016-b3b3-5f34d2e7d932,organization,read,https://contoso.sharepoint.com/:w:/s/demo/EY50lub3559MtRKfj2hrZqoBWnHOpGIcgi4gzw9XiWYJ-A
|
|
97
106
|
```
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
# spo file sharinglink remove
|
|
2
|
+
|
|
3
|
+
Removes a specific sharing link of a file
|
|
4
|
+
|
|
5
|
+
## Usage
|
|
6
|
+
|
|
7
|
+
```sh
|
|
8
|
+
m365 spo file sharinglink remove [options]
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Options
|
|
12
|
+
|
|
13
|
+
`-u, --webUrl <webUrl>`
|
|
14
|
+
: The URL of the site where the file is located.
|
|
15
|
+
|
|
16
|
+
`--fileUrl [fileUrl]`
|
|
17
|
+
: The server-relative (decoded) URL of the file. Specify either `fileUrl` or `fileId` but not both.
|
|
18
|
+
|
|
19
|
+
`--fileId [fileId]`
|
|
20
|
+
: The UniqueId (GUID) of the file. Specify either `fileUrl` or `fileId` but not both.
|
|
21
|
+
|
|
22
|
+
`-i, --id <id>`
|
|
23
|
+
: The ID of the sharing link.
|
|
24
|
+
|
|
25
|
+
`--confirm`
|
|
26
|
+
: Don't prompt for confirmation.
|
|
27
|
+
|
|
28
|
+
--8<-- "docs/cmd/_global.md"
|
|
29
|
+
|
|
30
|
+
## Examples
|
|
31
|
+
|
|
32
|
+
Removes a specific sharing link from a file by id without prompting for confirmation.
|
|
33
|
+
|
|
34
|
+
```sh
|
|
35
|
+
m365 spo file sharinglink remove --webUrl https://contoso.sharepoint.com/sites/demo --fileId daebb04b-a773-4baa-b1d1-3625418e3234 --id c391b57d-5783-4c53-9236-cefb5c6ef323 --confirm
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
Removes a specific sharing link from a file by a specified site-relative URL.
|
|
39
|
+
|
|
40
|
+
```sh
|
|
41
|
+
m365 spo file sharinglink remove --webUrl https://contoso.sharepoint.com/sites/demo --fileUrl 'Shared Documents/document.docx' --id c391b57d-5783-4c53-9236-cefb5c6ef323
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
Removes a specific sharing link from a file by a specified server-relative URL.
|
|
45
|
+
|
|
46
|
+
```sh
|
|
47
|
+
m365 spo file sharinglink remove --webUrl https://contoso.sharepoint.com/sites/demo --fileUrl '/sites/demo/Shared Documents/document.docx' --id c391b57d-5783-4c53-9236-cefb5c6ef323
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
## Response
|
|
51
|
+
|
|
52
|
+
The command won't return a response on success.
|
|
@@ -20,36 +20,54 @@ m365 spo group member remove [options]
|
|
|
20
20
|
: Name of the SharePoint group from which user has to be removed. Specify either `groupName` or `groupId`, but not both.
|
|
21
21
|
|
|
22
22
|
`--userName [userName]`
|
|
23
|
-
: The UPN (user principal name, eg. megan.bowen@contoso.com) of the user that needs to be removed. Specify either `userName`, `email`,
|
|
23
|
+
: The UPN (user principal name, eg. megan.bowen@contoso.com) of the user that needs to be removed. Specify either `userName`, `email`, `userId`, `aadGroupId` or `aadGroupName`.
|
|
24
24
|
|
|
25
25
|
`--email [email]`
|
|
26
|
-
: The email of the user to remove as a member. Specify either `userName`, `email`,
|
|
26
|
+
: The email of the user to remove as a member. Specify either `userName`, `email`, `userId`, `aadGroupId` or `aadGroupName`.
|
|
27
27
|
|
|
28
28
|
`--userId [userId]`
|
|
29
|
-
: The user Id (Id of the site user, eg. 14) of the user to remove as a member. Specify either `userName`, `email`,
|
|
29
|
+
: 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`.
|
|
30
|
+
|
|
31
|
+
`--aadGroupId [aadGroupId]`
|
|
32
|
+
: The object Id of the Azure AD group to remove as a member. Specify either `userName`, `email`, `userId`, `aadGroupId` or `aadGroupName`.
|
|
33
|
+
|
|
34
|
+
`--aadGroupName [aadGroupName]`
|
|
35
|
+
: The name of the Azure AD group to remove as a member. Specify either `userName`, `email`, `userId`, `aadGroupId` or `aadGroupName`.
|
|
30
36
|
|
|
31
37
|
--8<-- "docs/cmd/_global.md"
|
|
32
38
|
|
|
33
39
|
## Examples
|
|
34
40
|
|
|
35
|
-
Remove a user from a SharePoint group
|
|
41
|
+
Remove a user from a SharePoint group based on the id on a given web
|
|
36
42
|
|
|
37
43
|
```sh
|
|
38
44
|
m365 spo group member remove --webUrl https://contoso.sharepoint.com/sites/SiteA --groupId 5 --userName "Alex.Wilber@contoso.com"
|
|
39
45
|
```
|
|
40
46
|
|
|
41
|
-
Remove a user from a SharePoint group
|
|
47
|
+
Remove a user from a SharePoint group based on the username on a given web
|
|
42
48
|
|
|
43
49
|
```sh
|
|
44
50
|
m365 spo group member remove --webUrl https://contoso.sharepoint.com/sites/SiteA --groupName "Site A Visitors" --email "Alex.Wilber@contoso.com"
|
|
45
51
|
```
|
|
46
52
|
|
|
47
|
-
Remove a user from a SharePoint group by
|
|
53
|
+
Remove a user from a SharePoint group by email.
|
|
48
54
|
|
|
49
55
|
```sh
|
|
50
56
|
m365 spo group member remove --webUrl https://contoso.sharepoint.com/sites/SiteA --groupName "Site A Visitors" --userId 14
|
|
51
57
|
```
|
|
52
58
|
|
|
59
|
+
Remove an Azure AD group from a SharePoint group based on the Azure AD group name on a given web
|
|
60
|
+
|
|
61
|
+
```sh
|
|
62
|
+
m365 spo group member remove --webUrl https://contoso.sharepoint.com/sites/SiteA --groupId 5 --aadGroupName "Azure AD Security Group"
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
Remove an Azure AD group from a SharePoint group based on the Azure AD group ID on a given web
|
|
66
|
+
|
|
67
|
+
```sh
|
|
68
|
+
m365 spo group member remove --webUrl https://contoso.sharepoint.com/sites/SiteA --groupName "Site A Visitors" --aadGroupId "5786b8e8-c495-4734-b345-756733960730"
|
|
69
|
+
```
|
|
70
|
+
|
|
53
71
|
## Response
|
|
54
72
|
|
|
55
73
|
The command won't return a response on success.
|
|
@@ -19,8 +19,11 @@ m365 spo list label set [options]
|
|
|
19
19
|
`-u, --webUrl <webUrl>`
|
|
20
20
|
: The URL of the site where the list is located.
|
|
21
21
|
|
|
22
|
+
`--name <name>`
|
|
23
|
+
: The label name to set on the list.
|
|
24
|
+
|
|
22
25
|
`--label <label>`
|
|
23
|
-
: The label to set on the list.
|
|
26
|
+
: (deprecated. Use `name` instead) The label name to set on the list.
|
|
24
27
|
|
|
25
28
|
`-t, --listTitle [listTitle]`
|
|
26
29
|
: The title of the list on which to set the label. Specify either `listTitle`, `listId`, or `listUrl` but not multiple.
|
|
@@ -48,16 +51,16 @@ A list retention label is a default label that will be applied to all new items
|
|
|
48
51
|
|
|
49
52
|
## Examples
|
|
50
53
|
|
|
51
|
-
Sets retention label
|
|
54
|
+
Sets a retention label by name on a given list
|
|
52
55
|
|
|
53
56
|
```sh
|
|
54
|
-
m365 spo list retentionlabel ensure --webUrl https://contoso.sharepoint.com/sites/project-x --listUrl 'Shared Documents' --
|
|
57
|
+
m365 spo list retentionlabel ensure --webUrl https://contoso.sharepoint.com/sites/project-x --listUrl 'Shared Documents' --name 'Some label'
|
|
55
58
|
```
|
|
56
59
|
|
|
57
|
-
Sets retention label and disables editing and deleting items on the list and all existing items for
|
|
60
|
+
Sets a retention label by name and disables editing and deleting items on the list and all existing items for a given list
|
|
58
61
|
|
|
59
62
|
```sh
|
|
60
|
-
m365 spo list retentionlabel ensure --webUrl https://contoso.sharepoint.com/sites/project-x --listTitle 'Documents' --
|
|
63
|
+
m365 spo list retentionlabel ensure --webUrl https://contoso.sharepoint.com/sites/project-x --listTitle 'Documents' --name 'Some label' --blockEdit --blockDelete --syncToItems
|
|
61
64
|
```
|
|
62
65
|
|
|
63
66
|
## Response
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
# spo listitem retentionlabel ensure
|
|
2
|
+
|
|
3
|
+
Apply a retention label to a list item
|
|
4
|
+
|
|
5
|
+
## Usage
|
|
6
|
+
|
|
7
|
+
```sh
|
|
8
|
+
m365 spo listitem retentionlabel ensure [options]
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Options
|
|
12
|
+
|
|
13
|
+
`-u, --webUrl <webUrl>`
|
|
14
|
+
: URL of the site where the retentionlabel from a listitem to apply is located
|
|
15
|
+
|
|
16
|
+
`--listItemId <listItemId>`
|
|
17
|
+
: The ID of the list item for which the retention label should be applied.
|
|
18
|
+
|
|
19
|
+
`--listId [listId]`
|
|
20
|
+
: ID of the list where the retention label should be applied. Specify either `listTitle`, `listId` or `listUrl`
|
|
21
|
+
|
|
22
|
+
`--listTitle [listTitle]`
|
|
23
|
+
: Title of the list where the retention label should be applied. Specify either `listTitle`, `listId` or `listUrl`
|
|
24
|
+
|
|
25
|
+
`--listUrl [listUrl]`
|
|
26
|
+
: Server- or site-relative URL of the list. Specify either `listTitle`, `listId` or `listUrl`
|
|
27
|
+
|
|
28
|
+
`-n, --name [name]`
|
|
29
|
+
: The name of the retention label. Specify either `name` or `id`.
|
|
30
|
+
|
|
31
|
+
`-i, --id [id]`
|
|
32
|
+
: The id of the retention label. Specify either `name` or `id`.
|
|
33
|
+
|
|
34
|
+
--8<-- "docs/cmd/_global.md"
|
|
35
|
+
|
|
36
|
+
## Examples
|
|
37
|
+
|
|
38
|
+
Applies the retention label _Some label_ to a list item in a given site based on the list id and label name
|
|
39
|
+
|
|
40
|
+
```sh
|
|
41
|
+
m365 spo listitem retentionlabel ensure --webUrl https://contoso.sharepoint.com/sites/project-x --listId 0cd891ef-afce-4e55-b836-fce03286cccf --listItemId 1 --name 'Some label'
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
Applies a retention label to a list item in a given site based on the list title and label id
|
|
45
|
+
|
|
46
|
+
```sh
|
|
47
|
+
m365 spo listitem retentionlabel ensure --webUrl https://contoso.sharepoint.com/sites/project-x --listTitle 'List 1' --listItemId 1 --id '7a621a91-063b-461b-aff6-d713d5fb23eb'
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
Applies the retention label _Some label_ to a list item in a given site based on the server relative list url
|
|
51
|
+
|
|
52
|
+
```sh
|
|
53
|
+
m365 spo listitem retentionlabel ensure --webUrl https://contoso.sharepoint.com/sites/project-x --listUrl /sites/project-x/lists/TestList --listItemId 1 --name 'Some label'
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## Response
|
|
57
|
+
|
|
58
|
+
The command won't return a response on success.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# teams chat list
|
|
2
2
|
|
|
3
|
-
Lists all Microsoft Teams chat conversations for the current user.
|
|
3
|
+
Lists all Microsoft Teams chat conversations for the current or a specific user.
|
|
4
4
|
|
|
5
5
|
## Usage
|
|
6
6
|
|
|
@@ -10,9 +10,15 @@ m365 teams chat list [options]
|
|
|
10
10
|
|
|
11
11
|
## Options
|
|
12
12
|
|
|
13
|
-
`-t, --type [
|
|
13
|
+
`-t, --type [type]`
|
|
14
14
|
: The chat type to optionally filter chat conversations by type. The value can be `oneOnOne`, `group` or `meeting`.
|
|
15
15
|
|
|
16
|
+
`--userId [userId]`
|
|
17
|
+
: ID of the user. Has to be specified when using application permissions. Specify either `userId` or `userName`, but not both.
|
|
18
|
+
|
|
19
|
+
`--userName [userName]`
|
|
20
|
+
: UPN of the user. Has to be specified when using application permissions. Specify either `userId` or `userName`, but not both.
|
|
21
|
+
|
|
16
22
|
--8<-- "docs/cmd/_global.md"
|
|
17
23
|
|
|
18
24
|
## Examples
|
|
@@ -23,10 +29,16 @@ List all the Microsoft Teams chat conversations of the current user.
|
|
|
23
29
|
m365 teams chat list
|
|
24
30
|
```
|
|
25
31
|
|
|
26
|
-
List only the one on one Microsoft Teams chat conversations.
|
|
32
|
+
List only the one on one Microsoft Teams chat conversations of a specific user retrieved by id.
|
|
33
|
+
|
|
34
|
+
```sh
|
|
35
|
+
m365 teams chat list --userId e6296ed0-4b7d-4ace-aed4-f6b7371ce060 --type oneOnOne
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
List only the group Microsoft Teams chat conversations of a specific user retrieved by mail
|
|
27
39
|
|
|
28
40
|
```sh
|
|
29
|
-
m365 teams chat list --type
|
|
41
|
+
m365 teams chat list --userName 'john@contoso.com' --type group
|
|
30
42
|
```
|
|
31
43
|
|
|
32
44
|
## Response
|