@pnp/cli-microsoft365 5.5.0-beta.f0f7ad7 → 5.6.0-beta.18a47a8

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 (36) hide show
  1. package/dist/m365/aad/commands/o365group/o365group-recyclebinitem-restore.js +60 -9
  2. package/dist/m365/spo/commands/customaction/customaction-get.js +32 -4
  3. package/dist/m365/spo/commands/customaction/customaction-remove.js +43 -8
  4. package/dist/m365/spo/commands/field/field-get.js +14 -5
  5. package/dist/m365/spo/commands/field/field-remove.js +19 -10
  6. package/dist/m365/spo/commands/field/field-set.js +16 -9
  7. package/dist/m365/spo/commands/group/group-add.js +96 -0
  8. package/dist/m365/spo/commands/group/group-set.js +167 -0
  9. package/dist/m365/spo/commands/hubsite/hubsite-get.js +38 -2
  10. package/dist/m365/spo/commands/site/site-classic-list.js +1 -0
  11. package/dist/m365/spo/commands/site/site-classic-set.js +1 -0
  12. package/dist/m365/spo/commands/site/site-list.js +59 -17
  13. package/dist/m365/spo/commands/site/site-set.js +322 -162
  14. package/dist/m365/spo/commands/tenant/tenant-appcatalog-add.js +9 -6
  15. package/dist/m365/spo/commands.js +2 -0
  16. package/dist/m365/teams/commands/tab/tab-get.js +2 -2
  17. package/dist/m365/teams/commands/team/team-clone.js +33 -7
  18. package/dist/m365/teams/commands/team/team-set.js +25 -5
  19. package/docs/docs/cmd/aad/o365group/o365group-recyclebinitem-restore.md +21 -3
  20. package/docs/docs/cmd/spo/customaction/customaction-get.md +15 -2
  21. package/docs/docs/cmd/spo/customaction/customaction-remove.md +33 -2
  22. package/docs/docs/cmd/spo/field/field-get.md +6 -3
  23. package/docs/docs/cmd/spo/field/field-remove.md +9 -6
  24. package/docs/docs/cmd/spo/field/field-set.md +7 -4
  25. package/docs/docs/cmd/spo/group/group-add.md +51 -0
  26. package/docs/docs/cmd/spo/group/group-set.md +69 -0
  27. package/docs/docs/cmd/spo/hubsite/hubsite-get.md +21 -0
  28. package/docs/docs/cmd/spo/site/site-classic-list.md +3 -0
  29. package/docs/docs/cmd/spo/site/site-classic-set.md +3 -0
  30. package/docs/docs/cmd/spo/site/site-list.md +19 -7
  31. package/docs/docs/cmd/spo/site/site-set.md +50 -6
  32. package/docs/docs/cmd/teams/tab/tab-get.md +2 -2
  33. package/docs/docs/cmd/teams/team/team-clone.md +11 -5
  34. package/docs/docs/cmd/teams/team/team-set.md +10 -4
  35. package/npm-shrinkwrap.json +175 -160
  36. package/package.json +13 -13
@@ -5,7 +5,7 @@ const Command_1 = require("../../../../Command");
5
5
  const utils_1 = require("../../../../utils");
6
6
  const SpoCommand_1 = require("../../../base/SpoCommand");
7
7
  const commands_1 = require("../../commands");
8
- const spoSiteClassicAddCommand = require("../site/site-classic-add");
8
+ const spoSiteAddCommand = require("../site/site-add");
9
9
  const spoSiteGetCommand = require("../site/site-get");
10
10
  const spoSiteRemoveCommand = require("../site/site-remove");
11
11
  const spoTenantAppCatalogUrlGetCommand = require("./tenant-appcatalogurl-get");
@@ -21,7 +21,7 @@ class SpoTenantAppCatalogAddCommand extends SpoCommand_1.default {
21
21
  logger.logToStderr('Checking for existing app catalog URL...');
22
22
  }
23
23
  cli_1.Cli
24
- .executeCommandWithOutput(spoTenantAppCatalogUrlGetCommand, { options: { _: [] } })
24
+ .executeCommandWithOutput(spoTenantAppCatalogUrlGetCommand, { options: { output: 'text', _: [] } })
25
25
  .then((spoTenantAppCatalogUrlGetCommandOutput) => {
26
26
  const appCatalogUrl = spoTenantAppCatalogUrlGetCommandOutput.stdout;
27
27
  if (!appCatalogUrl) {
@@ -33,6 +33,7 @@ class SpoTenantAppCatalogAddCommand extends SpoCommand_1.default {
33
33
  if (this.verbose) {
34
34
  logger.logToStderr(`Found app catalog URL ${appCatalogUrl}`);
35
35
  }
36
+ //Using JSON.parse
36
37
  return this.ensureNoExistingSite(appCatalogUrl, args.options.force, logger);
37
38
  })
38
39
  .then(() => this.ensureNoExistingSite(args.options.url, args.options.force, logger))
@@ -92,17 +93,19 @@ class SpoTenantAppCatalogAddCommand extends SpoCommand_1.default {
92
93
  if (this.verbose) {
93
94
  logger.logToStderr(`Creating app catalog at ${options.url}...`);
94
95
  }
95
- const siteClassicAddOptions = {
96
+ const siteAddOptions = {
96
97
  webTemplate: 'APPCATALOG#0',
97
98
  title: 'App catalog',
99
+ type: 'ClassicSite',
98
100
  url: options.url,
99
101
  timeZone: options.timeZone,
100
- owner: options.owner,
102
+ owners: options.owner,
101
103
  wait: options.wait,
102
104
  verbose: this.verbose,
103
- debug: this.debug
105
+ debug: this.debug,
106
+ removeDeletedSite: false
104
107
  };
105
- return cli_1.Cli.executeCommand(spoSiteClassicAddCommand, { options: Object.assign(Object.assign({}, siteClassicAddOptions), { _: [] }) });
108
+ return cli_1.Cli.executeCommand(spoSiteAddCommand, { options: Object.assign(Object.assign({}, siteAddOptions), { _: [] }) });
106
109
  }
107
110
  options() {
108
111
  const options = [
@@ -63,9 +63,11 @@ exports.default = {
63
63
  FOLDER_REMOVE: `${prefix} folder remove`,
64
64
  FOLDER_RENAME: `${prefix} folder rename`,
65
65
  GET: `${prefix} get`,
66
+ GROUP_ADD: `${prefix} group add`,
66
67
  GROUP_GET: `${prefix} group get`,
67
68
  GROUP_LIST: `${prefix} group list`,
68
69
  GROUP_REMOVE: `${prefix} group remove`,
70
+ GROUP_SET: `${prefix} group set`,
69
71
  GROUP_USER_ADD: `${prefix} group user add`,
70
72
  GROUP_USER_LIST: `${prefix} group user list`,
71
73
  GROUP_USER_REMOVE: `${prefix} group user remove`,
@@ -124,10 +124,10 @@ class TeamsTabGetCommand extends GraphCommand_1.default {
124
124
  option: '--channelName [channelName]'
125
125
  },
126
126
  {
127
- option: '--tabId [tabId]'
127
+ option: '-i, --tabId [tabId]'
128
128
  },
129
129
  {
130
- option: '--tabName [tabName]'
130
+ option: '-n, --tabName [tabName]'
131
131
  }
132
132
  ];
133
133
  const parentOptions = super.options();
@@ -15,13 +15,24 @@ class TeamsTeamCloneCommand extends GraphCommand_1.default {
15
15
  const telemetryProps = super.getTelemetryProperties(args);
16
16
  telemetryProps.description = typeof args.options.description !== 'undefined';
17
17
  telemetryProps.classification = typeof args.options.classification !== 'undefined';
18
- telemetryProps.visibility = typeof args.options.visibility !== 'undefined';
18
+ telemetryProps.id = typeof args.options.id !== 'undefined';
19
+ telemetryProps.teamId = typeof args.options.teamId !== 'undefined';
20
+ telemetryProps.name = typeof args.options.name !== 'undefined';
21
+ telemetryProps.displayName = typeof args.options.displayName !== 'undefined';
19
22
  return telemetryProps;
20
23
  }
21
24
  commandAction(logger, args, cb) {
25
+ if (args.options.teamId) {
26
+ args.options.id = args.options.teamId;
27
+ this.warn(logger, `Option 'teamId' is deprecated. Please use 'id' instead.`);
28
+ }
29
+ if (args.options.displayName) {
30
+ args.options.name = args.options.displayName;
31
+ this.warn(logger, `Option 'displayName' is deprecated. Please use 'name' instead.`);
32
+ }
22
33
  const data = {
23
- displayName: args.options.displayName,
24
- mailNickname: this.generateMailNickname(args.options.displayName),
34
+ displayName: args.options.name,
35
+ mailNickname: this.generateMailNickname(args.options.name),
25
36
  partsToClone: args.options.partsToClone
26
37
  };
27
38
  if (args.options.description) {
@@ -34,7 +45,7 @@ class TeamsTeamCloneCommand extends GraphCommand_1.default {
34
45
  data.visibility = args.options.visibility;
35
46
  }
36
47
  const requestOptions = {
37
- url: `${this.resource}/v1.0/teams/${encodeURIComponent(args.options.teamId)}/clone`,
48
+ url: `${this.resource}/v1.0/teams/${encodeURIComponent(args.options.id)}/clone`,
38
49
  headers: {
39
50
  "content-type": "application/json",
40
51
  accept: 'application/json;odata.metadata=none'
@@ -46,13 +57,25 @@ class TeamsTeamCloneCommand extends GraphCommand_1.default {
46
57
  .post(requestOptions)
47
58
  .then(_ => cb(), (err) => this.handleRejectedODataJsonPromise(err, logger, cb));
48
59
  }
60
+ optionSets() {
61
+ return [
62
+ ['id', 'teamId'],
63
+ ['name', 'displayName']
64
+ ];
65
+ }
49
66
  options() {
50
67
  const options = [
51
68
  {
52
- option: '-i, --teamId <teamId>'
69
+ option: '-i, --id [teamId]'
53
70
  },
54
71
  {
55
- option: '-n, --displayName <displayName>'
72
+ option: '--teamId [teamId]'
73
+ },
74
+ {
75
+ option: '-n, --name [name]'
76
+ },
77
+ {
78
+ option: '--displayName [displayName]'
56
79
  },
57
80
  {
58
81
  option: '-p, --partsToClone <partsToClone>',
@@ -73,9 +96,12 @@ class TeamsTeamCloneCommand extends GraphCommand_1.default {
73
96
  return options.concat(parentOptions);
74
97
  }
75
98
  validate(args) {
76
- if (!utils_1.validation.isValidGuid(args.options.teamId)) {
99
+ if (args.options.teamId && !utils_1.validation.isValidGuid(args.options.teamId)) {
77
100
  return `${args.options.teamId} is not a valid GUID`;
78
101
  }
102
+ if (args.options.id && !utils_1.validation.isValidGuid(args.options.id)) {
103
+ return `${args.options.id} is not a valid GUID`;
104
+ }
79
105
  const partsToClone = args.options.partsToClone.replace(/\s/g, '').split(',');
80
106
  for (const partToClone of partsToClone) {
81
107
  const part = partToClone.toLowerCase();
@@ -20,8 +20,8 @@ class TeamsTeamSetCommand extends GraphCommand_1.default {
20
20
  }
21
21
  mapRequestBody(options) {
22
22
  const requestBody = {};
23
- if (options.displayName) {
24
- requestBody.displayName = options.displayName;
23
+ if (options.name) {
24
+ requestBody.displayName = options.name;
25
25
  }
26
26
  if (options.description) {
27
27
  requestBody.description = options.description;
@@ -38,9 +38,17 @@ class TeamsTeamSetCommand extends GraphCommand_1.default {
38
38
  return requestBody;
39
39
  }
40
40
  commandAction(logger, args, cb) {
41
+ if (args.options.teamId) {
42
+ args.options.id = args.options.teamId;
43
+ this.warn(logger, `Option 'teamId' is deprecated. Please use 'id' instead.`);
44
+ }
45
+ if (args.options.displayName) {
46
+ args.options.name = args.options.displayName;
47
+ this.warn(logger, `Option 'displayName' is deprecated. Please use 'name' instead.`);
48
+ }
41
49
  const data = this.mapRequestBody(args.options);
42
50
  const requestOptions = {
43
- url: `${this.resource}/v1.0/groups/${encodeURIComponent(args.options.teamId)}`,
51
+ url: `${this.resource}/v1.0/groups/${encodeURIComponent(args.options.id)}`,
44
52
  headers: {
45
53
  accept: 'application/json;odata.metadata=none'
46
54
  },
@@ -51,10 +59,19 @@ class TeamsTeamSetCommand extends GraphCommand_1.default {
51
59
  .patch(requestOptions)
52
60
  .then(_ => cb(), (err) => this.handleRejectedODataJsonPromise(err, logger, cb));
53
61
  }
62
+ optionSets() {
63
+ return [['id', 'teamId']];
64
+ }
54
65
  options() {
55
66
  const options = [
56
67
  {
57
- option: '-i, --teamId <teamId>'
68
+ option: '-i, --id [id]'
69
+ },
70
+ {
71
+ option: '--teamId [teamId]'
72
+ },
73
+ {
74
+ option: '-n, --name [name]'
58
75
  },
59
76
  {
60
77
  option: '--displayName [displayName]'
@@ -77,9 +94,12 @@ class TeamsTeamSetCommand extends GraphCommand_1.default {
77
94
  return options.concat(parentOptions);
78
95
  }
79
96
  validate(args) {
80
- if (!utils_1.validation.isValidGuid(args.options.teamId)) {
97
+ if (args.options.teamId && !utils_1.validation.isValidGuid(args.options.teamId)) {
81
98
  return `${args.options.teamId} is not a valid GUID`;
82
99
  }
100
+ if (args.options.id && !utils_1.validation.isValidGuid(args.options.id)) {
101
+ return `${args.options.id} is not a valid GUID`;
102
+ }
83
103
  if (args.options.visibility) {
84
104
  if (args.options.visibility.toLowerCase() !== 'private' && args.options.visibility.toLowerCase() !== 'public') {
85
105
  return `${args.options.visibility} is not a valid visibility type. Allowed values are Private|Public`;
@@ -16,15 +16,33 @@ m365 aad o365group restore [options]
16
16
 
17
17
  ## Options
18
18
 
19
- `-i, --id <id>`
20
- : The ID of the Microsoft 365 Group to restore
19
+ `-i, --id [id]`
20
+ : The ID of the Microsoft 365 Group to restore. Specify either `id`, `displayName` or `mailNickname` but not multiple.
21
+
22
+ `-d, --displayName [displayName]`
23
+ : Display name for the Microsoft 365 Group to restore. Specify either `id`, `displayName` or `mailNickname` but not multiple.
24
+
25
+ `-m, --mailNickname [mailNickname]`
26
+ : Name of the group e-mail (part before the @). Specify either `id`, `displayName` or `mailNickname` but not multiple.
21
27
 
22
28
  --8<-- "docs/cmd/_global.md"
23
29
 
24
30
  ## Examples
25
31
 
26
- Restores the Microsoft 365 Group with id _28beab62-7540-4db1-a23f-29a6018a3848_
32
+ Restores the Microsoft 365 Group with specific ID
27
33
 
28
34
  ```sh
29
35
  m365 aad o365group recyclebinitem restore --id 28beab62-7540-4db1-a23f-29a6018a3848
30
36
  ```
37
+
38
+ Restores the Microsoft 365 Group with specific name
39
+
40
+ ```sh
41
+ m365 aad o365group recyclebinitem restore --displayName "My Group"
42
+ ```
43
+
44
+ Restores the Microsoft 365 Group with specific mail nickname
45
+
46
+ ```sh
47
+ m365 aad o365group recyclebinitem restore --mailNickname "Mygroup"
48
+ ```
@@ -10,8 +10,11 @@ m365 spo customaction get [options]
10
10
 
11
11
  ## Options
12
12
 
13
- `-i, --id <id>`
14
- : ID of the user custom action to retrieve information for
13
+ `-i, --id [id]`
14
+ : ID of the user custom action to retrieve information for. Specify either `id` or `title`
15
+
16
+ `-t, --title [title]`
17
+ : Title of the user custom action to retrieve information for. Specify either `id` or `title`
15
18
 
16
19
  `-u, --url <url>`
17
20
  : Url of the site or site collection to retrieve the custom action from
@@ -21,6 +24,10 @@ m365 spo customaction get [options]
21
24
 
22
25
  --8<-- "docs/cmd/_global.md"
23
26
 
27
+ ## Remarks
28
+
29
+ If the command finds multiple user custom actions with the specified title, it will prompt you to disambiguate which user custom action it should use, listing the discovered IDs.
30
+
24
31
  ## Examples
25
32
 
26
33
  Return details about the user custom action with ID _058140e3-0e37-44fc-a1d3-79c487d371a3_ located in site or site collection _https://contoso.sharepoint.com/sites/test_
@@ -29,6 +36,12 @@ Return details about the user custom action with ID _058140e3-0e37-44fc-a1d3-79c
29
36
  m365 spo customaction get --id 058140e3-0e37-44fc-a1d3-79c487d371a3 --url https://contoso.sharepoint.com/sites/test
30
37
  ```
31
38
 
39
+ Return details about the user custom action with Title _YourAppCustomizer_ located in site or site collection _https://contoso.sharepoint.com/sites/test_
40
+
41
+ ```sh
42
+ m365 spo customaction get --title "YourAppCustomizer" --url https://contoso.sharepoint.com/sites/test
43
+ ```
44
+
32
45
  Return details about the user custom action with ID _058140e3-0e37-44fc-a1d3-79c487d371a3_ located in site collection _https://contoso.sharepoint.com/sites/test_
33
46
 
34
47
  ```sh
@@ -10,8 +10,11 @@ m365 spo customaction remove [options]
10
10
 
11
11
  ## Options
12
12
 
13
- `-i, --id <id>`
14
- : Id (GUID) of the custom action to remove
13
+ `-i, --id [id]`
14
+ : Id (GUID) of the custom action to remove. Specify either `id` or `title`
15
+
16
+ `-t, --title [title]`
17
+ : Title of the user custom action to retrieve information for. Specify either `id` or `title`
15
18
 
16
19
  `-u, --url <url>`
17
20
  : Url of the site or site collection to remove the custom action from
@@ -24,6 +27,10 @@ m365 spo customaction remove [options]
24
27
 
25
28
  --8<-- "docs/cmd/_global.md"
26
29
 
30
+ ## Remarks
31
+
32
+ If the command finds multiple user custom actions with the specified title, it will prompt you to disambiguate which user custom action it should use, listing the discovered IDs.
33
+
27
34
  ## Examples
28
35
 
29
36
  Removes user custom action with ID _058140e3-0e37-44fc-a1d3-79c487d371a3_ located in site or site collection _https://contoso.sharepoint.com/sites/test_
@@ -32,24 +39,48 @@ Removes user custom action with ID _058140e3-0e37-44fc-a1d3-79c487d371a3_ locate
32
39
  m365 spo customaction remove --id 058140e3-0e37-44fc-a1d3-79c487d371a3 --url https://contoso.sharepoint.com/sites/test
33
40
  ```
34
41
 
42
+ Removes user custom action with Title _YourAppCustomizer_ located in site or site collection _https://contoso.sharepoint.com/sites/test_
43
+
44
+ ```sh
45
+ m365 spo customaction remove --title "YourAppCustomizer" --url https://contoso.sharepoint.com/sites/test
46
+ ```
47
+
35
48
  Removes user custom action with ID _058140e3-0e37-44fc-a1d3-79c487d371a3_ located in site or site collection _https://contoso.sharepoint.com/sites/test_. Skips the confirmation prompt message.
36
49
 
37
50
  ```sh
38
51
  m365 spo customaction remove --id 058140e3-0e37-44fc-a1d3-79c487d371a3 --url https://contoso.sharepoint.com/sites/test --confirm
39
52
  ```
40
53
 
54
+ Removes user custom action with Title _YourAppCustomizer_ located in site or site collection _https://contoso.sharepoint.com/sites/test_. Skips the confirmation prompt message.
55
+
56
+ ```sh
57
+ m365 spo customaction remove --title "YourAppCustomizer" --url https://contoso.sharepoint.com/sites/test --confirm
58
+ ```
59
+
41
60
  Removes user custom action with ID _058140e3-0e37-44fc-a1d3-79c487d371a3_ located in site collection _https://contoso.sharepoint.com/sites/test_
42
61
 
43
62
  ```sh
44
63
  m365 spo customaction remove --id 058140e3-0e37-44fc-a1d3-79c487d371a3 --url https://contoso.sharepoint.com/sites/test --scope Site
45
64
  ```
46
65
 
66
+ Removes user custom action with Title _YourAppCustomizer_ located in site collection _https://contoso.sharepoint.com/sites/test_
67
+
68
+ ```sh
69
+ m365 spo customaction remove --title "YourAppCustomizer" --url https://contoso.sharepoint.com/sites/test --scope Site
70
+ ```
71
+
47
72
  Removes user custom action with ID _058140e3-0e37-44fc-a1d3-79c487d371a3_ located in site _https://contoso.sharepoint.com/sites/test_
48
73
 
49
74
  ```sh
50
75
  m365 spo customaction remove --id 058140e3-0e37-44fc-a1d3-79c487d371a3 --url https://contoso.sharepoint.com/sites/test --scope Web
51
76
  ```
52
77
 
78
+ Removes user custom action with Title _YourAppCustomizer_ located in site _https://contoso.sharepoint.com/sites/test_
79
+
80
+ ```sh
81
+ m365 spo customaction remove --title "YourAppCustomizer" --url https://contoso.sharepoint.com/sites/test --scope Web
82
+ ```
83
+
53
84
  ## More information
54
85
 
55
86
  - UserCustomAction REST API resources: [https://msdn.microsoft.com/en-us/library/office/dn531432.aspx#bk_UserCustomAction](https://msdn.microsoft.com/en-us/library/office/dn531432.aspx#bk_UserCustomAction)
@@ -23,10 +23,13 @@ m365 spo field get [options]
23
23
  : Server- or web-relative URL of the list where the field is located. Specify only one of listTitle, listId or listUrl
24
24
 
25
25
  `-i, --id [id]`
26
- : The ID of the field to retrieve. Specify id or fieldTitle but not both
26
+ : The ID of the field to retrieve. Specify id or title but not both
27
27
 
28
28
  `--fieldTitle [fieldTitle]`
29
- : The display name (case-sensitive) of the field to retrieve. Specify id or fieldTitle but not both
29
+ : (deprecated. Use `title` instead) The display name (case-sensitive) of the field to retrieve. Specify id or fieldTitle but not both
30
+
31
+ `-t, --title [title]`
32
+ : The display name (case-sensitive) of the field to remove. Specify id or title, or group but not both
30
33
 
31
34
  --8<-- "docs/cmd/_global.md"
32
35
 
@@ -47,5 +50,5 @@ m365 spo field get --webUrl https://contoso.sharepoint.com/sites/contoso-sales -
47
50
  Retrieves list column by display name located in site _https://contoso.sharepoint.com/sites/contoso-sales_. Retrieves the list by its url
48
51
 
49
52
  ```sh
50
- m365 spo field get --webUrl https://contoso.sharepoint.com/sites/contoso-sales --listUrl 'Lists/Events' --fieldTitle 'Title'
53
+ m365 spo field get --webUrl https://contoso.sharepoint.com/sites/contoso-sales --listUrl "Lists/Events" --title "Title"
51
54
  ```
@@ -23,13 +23,16 @@ m365 spo field remove [options]
23
23
  : Server- or web-relative URL of the list where the field is located. Specify only one of `listTitle`, `listId` or `listUrl`
24
24
 
25
25
  `-i, --id [id]`
26
- : The ID of the field to remove. Specify id, fieldTitle, or group
26
+ : The ID of the field to remove. Specify id, title, or group
27
27
 
28
- `-t, --fieldTitle [fieldTitle]`
29
- : The display name (case-sensitive) of the field to remove. Specify id, fieldTitle, or group
28
+ `--fieldTitle [fieldTitle]`
29
+ : (deprecated. Use `title` instead) The display name (case-sensitive) of the field to remove. Specify id, fieldTitle, or group
30
+
31
+ `-t, --title [title]`
32
+ : The display name (case-sensitive) of the field to remove. Specify id, title, or group
30
33
 
31
34
  `-g, --group [group]`
32
- : Delete all fields from this group (case-sensitive). Specify id, fieldTitle, or group
35
+ : Delete all fields from this group (case-sensitive). Specify id, title, or group
33
36
 
34
37
  `--confirm`
35
38
  : Don't prompt for confirming removing the field
@@ -53,11 +56,11 @@ m365 spo field remove --webUrl https://contoso.sharepoint.com/sites/contoso-sale
53
56
  Remove the list column with the specified display name, located in site _https://contoso.sharepoint.com/sites/contoso-sales_. Retrieves the list by its url
54
57
 
55
58
  ```sh
56
- m365 spo field remove --webUrl https://contoso.sharepoint.com/sites/contoso-sales --listUrl 'Lists/Events' --fieldTitle 'Title'
59
+ m365 spo field remove --webUrl https://contoso.sharepoint.com/sites/contoso-sales --listUrl "Lists/Events" --title "Title"
57
60
  ```
58
61
 
59
62
  Remove all site columns from group _MyGroup_
60
63
 
61
64
  ```sh
62
- m365 spo field remove --webUrl https://contoso.sharepoint.com/sites/contoso-sales --group 'MyGroup'
65
+ m365 spo field remove --webUrl https://contoso.sharepoint.com/sites/contoso-sales --group "MyGroup"
63
66
  ```
@@ -20,10 +20,13 @@ m365 spo field set [options]
20
20
  : Title of the list where the field is located (if list column). Specify `listTitle` or `listId` but not both
21
21
 
22
22
  `-i, --id [id]`
23
- : ID of the field to update. Specify `name` or `id` but not both
23
+ : ID of the field to update. Specify `id` or `title` but not both
24
+
25
+ `-t, --title [title]`
26
+ : Title or internal name of the field to update. Specify `id` or `title` but not both
24
27
 
25
28
  `-n, --name [name]`
26
- : Title or internal name of the field to update. Specify `name` or `id` but not both
29
+ : (deprecated. Use `title` instead) Title or internal name of the field to update. Specify `id` or `name` but not both
27
30
 
28
31
  `--updateExistingLists`
29
32
  : Set, to push the update to existing lists. Otherwise, the changes will apply to new lists only
@@ -39,7 +42,7 @@ Specify properties to update using their names, eg. `--Title 'New Title' --JSLin
39
42
  Update the title of the site column specified by its internal name and push changes to existing lists
40
43
 
41
44
  ```sh
42
- m365 spo field set --webUrl https://contoso.sharepoint.com/sites/project-x --name 'MyColumn' --updateExistingLists --Title 'My column'
45
+ m365 spo field set --webUrl https://contoso.sharepoint.com/sites/project-x --title 'MyColumn' --updateExistingLists --Title 'My column'
43
46
  ```
44
47
 
45
48
  Update the title of the list column specified by its ID
@@ -51,5 +54,5 @@ m365 spo field set --webUrl https://contoso.sharepoint.com/sites/project-x --lis
51
54
  Update column formatting of the specified list column
52
55
 
53
56
  ```sh
54
- m365 spo field set --webUrl https://contoso.sharepoint.com/sites/project-x --listTitle 'My List' --name 'MyColumn' --CustomFormatter '`{"schema":"https://developer.microsoft.com/json-schemas/sp/column-formatting.schema.json", "elmType": "div", "txtContent": "@currentField"}`'
57
+ m365 spo field set --webUrl https://contoso.sharepoint.com/sites/project-x --listTitle 'My List' --title 'MyColumn' --CustomFormatter '`{"schema":"https://developer.microsoft.com/json-schemas/sp/column-formatting.schema.json", "elmType": "div", "txtContent": "@currentField"}`'
55
58
  ```
@@ -0,0 +1,51 @@
1
+ # spo group add
2
+
3
+ Creates group in the specified site
4
+
5
+ ## Usage
6
+
7
+ ```sh
8
+ m365 spo group add [options]
9
+ ```
10
+
11
+ ## Options
12
+
13
+ `-u, --webUrl <webUrl>`
14
+ : URL of the site where the group should be added.
15
+
16
+ `-n, --name <name>`
17
+ : Name of the group to add.
18
+
19
+ `--description [description]`
20
+ : The description for the group.
21
+
22
+ `--allowMembersEditMembership [allowMembersEditMembership]`
23
+ : Who can edit the membership of the group? When `true` members can edit membership, otherwise only owners can do this. Default `false`.
24
+
25
+ `--onlyAllowMembersViewMembership [onlyAllowMembersViewMembership]`
26
+ : Who can view the membership of the group? When `false` everyone can view the group membership, otherwise only group members can. Default `true`.
27
+
28
+ `--allowRequestToJoinLeave [allowRequestToJoinLeave]`
29
+ : Specify whether to allow users to request membership in this group and allow users to request to leave the group. Default `false`.
30
+
31
+ `--autoAcceptRequestToJoinLeave [autoAcceptRequestToJoinLeave]`
32
+ : If auto-accept is enabled, users will automatically be added or removed when they make a request. Default `false`.
33
+
34
+ `--requestToJoinLeaveEmailSetting [requestToJoinLeaveEmailSetting]`
35
+ : All membership requests will be sent to the email address specified.
36
+
37
+ --8<-- "docs/cmd/_global.md"
38
+
39
+ ## Examples
40
+
41
+ Create group with title and description
42
+
43
+ ```sh
44
+ m365 spo group add --webUrl https://contoso.sharepoint.com/sites/project-x --name "Project leaders" --description "This group contains all project leaders"
45
+ ```
46
+
47
+ Create group with membership requests
48
+
49
+ ```sh
50
+ m365 spo group add --webUrl https://contoso.sharepoint.com/sites/project-x --name "Project leaders" --allowRequestToJoinLeave true --requestToJoinLeaveEmailSetting john.doe@contoso.com
51
+ ```
@@ -0,0 +1,69 @@
1
+ # spo group set
2
+
3
+ Updates a group in the specified site
4
+
5
+ ## Usage
6
+
7
+ ```sh
8
+ m365 spo group set [options]
9
+ ```
10
+
11
+ ## Options
12
+
13
+ `-u, --webUrl <webUrl>`
14
+ : URL of the site where the group is located.
15
+
16
+ `-i, --id [id]`
17
+ : ID of the group to update. Specify either `id` or `name` but not both.
18
+
19
+ `-n, --name [name]`
20
+ : Name of the group. Specify either `id` or `name` but not both.
21
+
22
+ `--newName [newName]`
23
+ : New name for the group.
24
+
25
+ `--description [description]`
26
+ : The description for the group.
27
+
28
+ `--allowMembersEditMembership [allowMembersEditMembership]`
29
+ : Who can edit the membership of the group? When `true` members can edit membership, otherwise only owners can do this.
30
+
31
+ `--onlyAllowMembersViewMembership [onlyAllowMembersViewMembership]`
32
+ : Who can view the membership of the group? When `true` only group members can view the membership, otherwise everyone can.
33
+
34
+ `--allowRequestToJoinLeave [allowRequestToJoinLeave]`
35
+ : Specify whether to allow users to request membership in this group and allow users to request to leave the group.
36
+
37
+ `--autoAcceptRequestToJoinLeave [autoAcceptRequestToJoinLeave]`
38
+ : If auto-accept is enabled, users will automatically be added or removed when they make a request.
39
+
40
+ `--requestToJoinLeaveEmailSetting [requestToJoinLeaveEmailSetting]`
41
+ : All membership requests will be sent to the email address specified.
42
+
43
+ `--ownerEmail [ownerEmail]`
44
+ : Set user with this email as owner of the group. Specify either `ownerEmail` or `ownerUserName` but not both.
45
+
46
+ `--ownerUserName [ownerUserName]`
47
+ : Set user with this login name as owner of the group. Specify either `ownerEmail` or `ownerUserName` but not both.
48
+
49
+ --8<-- "docs/cmd/_global.md"
50
+
51
+ ## Examples
52
+
53
+ Update group title and description
54
+
55
+ ```sh
56
+ m365 spo group set --webUrl https://contoso.sharepoint.com/sites/project-x --id 18 --newTitle "Project leaders" --description "This group contains all project leaders"
57
+ ```
58
+
59
+ Update group with membership requests
60
+
61
+ ```sh
62
+ m365 spo group set --webUrl https://contoso.sharepoint.com/sites/project-x --title "Project leaders" --allowRequestToJoinLeave true --requestToJoinLeaveEmailSetting john.doe@contoso.com
63
+ ```
64
+
65
+ Sets a specified user as group owner
66
+
67
+ ```sh
68
+ m365 spo group set --webUrl https://contoso.sharepoint.com/sites/project-x --id 18 --ownerEmail john.doe@contoso.com
69
+ ```
@@ -19,6 +19,9 @@ m365 spo hubsite get [options]
19
19
  `-u, --url [url]`
20
20
  : URL of the hubsite. Specify either `id`, `title` or `url` but not multiple.
21
21
 
22
+ `--includeAssociatedSites`
23
+ : Include the associated sites in the result (only in JSON output)
24
+
22
25
  --8<-- "docs/cmd/_global.md"
23
26
 
24
27
  ## Examples
@@ -41,6 +44,24 @@ Get information about the hub site with URL _https://contoso.sharepoint.com/site
41
44
  m365 spo hubsite get --url 'https://contoso.sharepoint.com/sites/HubSite'
42
45
  ```
43
46
 
47
+ Get information about the hub site with ID _2c1ba4c4-cd9b-4417-832f-92a34bc34b2a_, including its associated sites. Associated site info is only shown in JSON output.
48
+
49
+ ```sh
50
+ m365 spo hubsite get --id 2c1ba4c4-cd9b-4417-832f-92a34bc34b2a --includeAssociatedSites --output json
51
+ ```
52
+
53
+ Get information about the hub site with Title _My Hub Site_
54
+
55
+ ```sh
56
+ m365 spo hubsite get --title "My Hub Site"
57
+ ```
58
+
59
+ Get information about the hub site with URL _https://contoso.sharepoint.com/sites/HubSite_
60
+
61
+ ```sh
62
+ m365 spo hubsite get --url "https://contoso.sharepoint.com/sites/HubSite"
63
+ ```
64
+
44
65
  ## More information
45
66
 
46
67
  - SharePoint hub sites new in Microsoft 365: [https://techcommunity.microsoft.com/t5/SharePoint-Blog/SharePoint-hub-sites-new-in-Office-365/ba-p/109547](https://techcommunity.microsoft.com/t5/SharePoint-Blog/SharePoint-hub-sites-new-in-Office-365/ba-p/109547)
@@ -24,6 +24,9 @@ m365 spo site classic list [options]
24
24
  !!! important
25
25
  To use this command you have to have permissions to access the tenant admin site.
26
26
 
27
+ !!! important
28
+ This command is deprecated. Please use [spo site list](./site-list.md) instead.
29
+
27
30
  ## Remarks
28
31
 
29
32
  Using the `-t, --webTemplate` option you can specify which sites you want to retrieve. For example, to get sites with the `STS#0` as their web template, use `--webTemplate STS#0` as the option.
@@ -54,6 +54,9 @@ m365 spo site classic set [options]
54
54
  !!! important
55
55
  To use this command you have to have permissions to access the tenant admin site.
56
56
 
57
+ !!! important
58
+ This command is deprecated. Please use [spo site set](./site-set.md) instead.
59
+
57
60
  ## Remarks
58
61
 
59
62
  The value of the `--resourceQuota` option must not exceed the company's aggregate available Sandboxed Solutions quota. For more information, see Resource Usage Limits on Sandboxed Solutions in SharePoint 2010: [http://msdn.microsoft.com/en-us/library/gg615462.aspx](http://msdn.microsoft.com/en-us/library/gg615462.aspx).