@pnp/cli-microsoft365 11.9.0-beta.93bd508 → 11.9.0-beta.9bd71dd

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 (86) hide show
  1. package/.devcontainer/Dockerfile +2 -2
  2. package/.devproxy/api-specs/sharepoint.yaml +84 -0
  3. package/allCommands.json +1 -1
  4. package/allCommandsFull.json +1 -1
  5. package/dist/m365/entra/commands/approleassignment/approleassignment-add.js +23 -48
  6. package/dist/m365/entra/commands/approleassignment/approleassignment-list.js +20 -43
  7. package/dist/m365/entra/commands/approleassignment/approleassignment-remove.js +24 -51
  8. package/dist/m365/entra/commands/enterpriseapp/enterpriseapp-add.js +20 -43
  9. package/dist/m365/entra/commands/enterpriseapp/enterpriseapp-get.js +20 -43
  10. package/dist/m365/entra/commands/enterpriseapp/enterpriseapp-list.js +9 -25
  11. package/dist/m365/entra/commands/enterpriseapp/enterpriseapp-remove.js +21 -50
  12. package/dist/m365/entra/commands/groupsetting/groupsetting-add.js +9 -25
  13. package/dist/m365/entra/commands/groupsetting/groupsetting-get.js +8 -24
  14. package/dist/m365/entra/commands/groupsetting/groupsetting-list.js +6 -0
  15. package/dist/m365/entra/commands/groupsetting/groupsetting-remove.js +9 -33
  16. package/dist/m365/entra/commands/groupsetting/groupsetting-set.js +8 -24
  17. package/dist/m365/entra/commands/groupsettingtemplate/groupsettingtemplate-get.js +19 -38
  18. package/dist/m365/entra/commands/groupsettingtemplate/groupsettingtemplate-list.js +6 -0
  19. package/dist/m365/entra/commands/pim/pim-role-assignment-add.js +68 -114
  20. package/dist/m365/entra/commands/pim/pim-role-assignment-eligibility-list.js +28 -55
  21. package/dist/m365/entra/commands/pim/pim-role-assignment-list.js +30 -57
  22. package/dist/m365/entra/commands/pim/pim-role-assignment-remove.js +50 -90
  23. package/dist/m365/entra/commands/pim/pim-role-request-list.js +36 -69
  24. package/dist/m365/entra/commands/policy/policy-list.js +13 -56
  25. package/dist/m365/entra/commands/user/user-add.js +39 -118
  26. package/dist/m365/entra/commands/user/user-get.js +24 -49
  27. package/dist/m365/entra/commands/user/user-groupmembership-list.js +25 -48
  28. package/dist/m365/entra/commands/user/user-guest-add.js +14 -39
  29. package/dist/m365/entra/commands/user/user-hibp.js +12 -34
  30. package/dist/m365/entra/commands/user/user-license-add.js +23 -42
  31. package/dist/m365/entra/commands/user/user-license-list.js +21 -42
  32. package/dist/m365/entra/commands/user/user-license-remove.js +25 -47
  33. package/dist/m365/entra/commands/user/user-list.js +12 -39
  34. package/dist/m365/entra/commands/user/user-password-validate.js +8 -15
  35. package/dist/m365/entra/commands/user/user-recyclebinitem-clear.js +8 -22
  36. package/dist/m365/entra/commands/user/user-recyclebinitem-remove.js +9 -33
  37. package/dist/m365/entra/commands/user/user-recyclebinitem-restore.js +8 -24
  38. package/dist/m365/entra/commands/user/user-registrationdetails-list.js +43 -113
  39. package/dist/m365/entra/commands/user/user-remove.js +22 -42
  40. package/dist/m365/entra/commands/user/user-set.js +69 -149
  41. package/dist/m365/entra/commands/user/user-signin-list.js +22 -51
  42. package/dist/m365/external/commands/connection/connection-add.js +40 -65
  43. package/dist/m365/external/commands/connection/connection-doctor.js +14 -30
  44. package/dist/m365/external/commands/connection/connection-get.js +19 -28
  45. package/dist/m365/external/commands/connection/connection-remove.js +20 -25
  46. package/dist/m365/external/commands/connection/connection-schema-add.js +53 -42
  47. package/dist/m365/external/commands/connection/connection-urltoitemresolver-add.js +12 -23
  48. package/dist/m365/external/commands/item/item-add.js +37 -60
  49. package/dist/m365/file/commands/convert/convert-pdf.js +18 -33
  50. package/dist/m365/file/commands/file-add.js +28 -34
  51. package/dist/m365/file/commands/file-copy.js +18 -34
  52. package/dist/m365/file/commands/file-list.js +18 -24
  53. package/dist/m365/file/commands/file-move.js +22 -35
  54. package/dist/m365/flow/commands/flow-disable.js +10 -26
  55. package/dist/m365/flow/commands/flow-enable.js +10 -26
  56. package/dist/m365/flow/commands/flow-export.js +45 -71
  57. package/dist/m365/flow/commands/flow-get.js +10 -26
  58. package/dist/m365/flow/commands/flow-list.js +17 -48
  59. package/dist/m365/flow/commands/flow-remove.js +11 -38
  60. package/dist/m365/flow/commands/owner/owner-ensure.js +30 -65
  61. package/dist/m365/flow/commands/owner/owner-list.js +10 -35
  62. package/dist/m365/flow/commands/owner/owner-remove.js +30 -61
  63. package/dist/m365/flow/commands/run/run-cancel.js +11 -37
  64. package/dist/m365/flow/commands/run/run-get.js +12 -43
  65. package/dist/m365/flow/commands/run/run-list.js +29 -61
  66. package/dist/m365/flow/commands/run/run-resubmit.js +11 -37
  67. package/dist/m365/graph/commands/changelog/changelog-list.js +68 -67
  68. package/dist/m365/graph/commands/schemaextension/schemaextension-add.js +25 -31
  69. package/dist/m365/graph/commands/schemaextension/schemaextension-get.js +8 -15
  70. package/dist/m365/graph/commands/schemaextension/schemaextension-list.js +26 -50
  71. package/dist/m365/graph/commands/schemaextension/schemaextension-remove.js +9 -24
  72. package/dist/m365/graph/commands/schemaextension/schemaextension-set.js +32 -53
  73. package/dist/m365/graph/commands/subscription/subscription-add.js +63 -89
  74. package/dist/m365/outlook/commands/calendar/calendar-list.js +64 -0
  75. package/dist/m365/outlook/commands/mail/mail-send.js +55 -84
  76. package/dist/m365/outlook/commands/message/message-get.js +27 -27
  77. package/dist/m365/outlook/commands/message/message-list.js +53 -80
  78. package/dist/m365/outlook/commands/message/message-move.js +43 -40
  79. package/dist/m365/outlook/commands/message/message-remove.js +17 -45
  80. package/dist/m365/outlook/commands.js +1 -0
  81. package/dist/m365/spo/commands/list/list-sensitivitylabel-remove.js +83 -0
  82. package/dist/m365/spo/commands.js +1 -0
  83. package/docs/docs/cmd/outlook/calendar/calendar-list.mdx +155 -0
  84. package/docs/docs/cmd/spo/list/list-sensitivitylabel-remove.mdx +77 -0
  85. package/npm-shrinkwrap.json +7 -0
  86. package/package.json +1 -1
@@ -1,15 +1,19 @@
1
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
2
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
3
- 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");
4
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
5
- };
6
- var _OutlookMessageMoveCommand_instances, _OutlookMessageMoveCommand_initTelemetry, _OutlookMessageMoveCommand_initOptions, _OutlookMessageMoveCommand_initOptionSets;
1
+ import { globalOptionsZod } from '../../../../Command.js';
7
2
  import request from '../../../../request.js';
8
3
  import { formatting } from '../../../../utils/formatting.js';
9
4
  import commands from '../../commands.js';
10
5
  import { Outlook } from '../../Outlook.js';
11
6
  import { cli } from '../../../../cli/cli.js';
12
7
  import DelegatedGraphCommand from '../../../base/GraphDelegatedCommand.js';
8
+ import { z } from 'zod';
9
+ export const options = z.strictObject({
10
+ ...globalOptionsZod.shape,
11
+ id: z.string(),
12
+ sourceFolderId: z.string().optional(),
13
+ sourceFolderName: z.string().optional(),
14
+ targetFolderId: z.string().optional(),
15
+ targetFolderName: z.string().optional()
16
+ });
13
17
  class OutlookMessageMoveCommand extends DelegatedGraphCommand {
14
18
  get name() {
15
19
  return commands.MESSAGE_MOVE;
@@ -17,12 +21,39 @@ class OutlookMessageMoveCommand extends DelegatedGraphCommand {
17
21
  get description() {
18
22
  return 'Moves message to the specified folder';
19
23
  }
20
- constructor() {
21
- super();
22
- _OutlookMessageMoveCommand_instances.add(this);
23
- __classPrivateFieldGet(this, _OutlookMessageMoveCommand_instances, "m", _OutlookMessageMoveCommand_initTelemetry).call(this);
24
- __classPrivateFieldGet(this, _OutlookMessageMoveCommand_instances, "m", _OutlookMessageMoveCommand_initOptions).call(this);
25
- __classPrivateFieldGet(this, _OutlookMessageMoveCommand_instances, "m", _OutlookMessageMoveCommand_initOptionSets).call(this);
24
+ get schema() {
25
+ return options;
26
+ }
27
+ getRefinedSchema(schema) {
28
+ return schema
29
+ .refine(options => options.sourceFolderId || options.sourceFolderName, {
30
+ error: 'Specify either sourceFolderId or sourceFolderName',
31
+ params: {
32
+ customCode: 'optionSet',
33
+ options: ['sourceFolderId', 'sourceFolderName']
34
+ }
35
+ })
36
+ .refine(options => !(options.sourceFolderId && options.sourceFolderName), {
37
+ error: 'Specify either sourceFolderId or sourceFolderName, but not both',
38
+ params: {
39
+ customCode: 'optionSet',
40
+ options: ['sourceFolderId', 'sourceFolderName']
41
+ }
42
+ })
43
+ .refine(options => options.targetFolderId || options.targetFolderName, {
44
+ error: 'Specify either targetFolderId or targetFolderName',
45
+ params: {
46
+ customCode: 'optionSet',
47
+ options: ['targetFolderId', 'targetFolderName']
48
+ }
49
+ })
50
+ .refine(options => !(options.targetFolderId && options.targetFolderName), {
51
+ error: 'Specify either targetFolderId or targetFolderName, but not both',
52
+ params: {
53
+ customCode: 'optionSet',
54
+ options: ['targetFolderId', 'targetFolderName']
55
+ }
56
+ });
26
57
  }
27
58
  async commandAction(logger, args) {
28
59
  let sourceFolder;
@@ -73,33 +104,5 @@ class OutlookMessageMoveCommand extends DelegatedGraphCommand {
73
104
  return response.value[0].id;
74
105
  }
75
106
  }
76
- _OutlookMessageMoveCommand_instances = new WeakSet(), _OutlookMessageMoveCommand_initTelemetry = function _OutlookMessageMoveCommand_initTelemetry() {
77
- this.telemetry.push((args) => {
78
- Object.assign(this.telemetryProperties, {
79
- sourceFolderId: typeof args.options.sourceFolderId !== 'undefined',
80
- sourceFolderName: typeof args.options.sourceFolderName !== 'undefined',
81
- targetFolderId: typeof args.options.targetFolderId !== 'undefined',
82
- targetFolderName: typeof args.options.targetFolderName !== 'undefined'
83
- });
84
- });
85
- }, _OutlookMessageMoveCommand_initOptions = function _OutlookMessageMoveCommand_initOptions() {
86
- this.options.unshift({
87
- option: '--id <id>'
88
- }, {
89
- option: '--sourceFolderName [sourceFolderName]',
90
- autocomplete: Outlook.wellKnownFolderNames
91
- }, {
92
- option: '--sourceFolderId [sourceFolderId]',
93
- autocomplete: Outlook.wellKnownFolderNames
94
- }, {
95
- option: '--targetFolderName [targetFolderName]',
96
- autocomplete: Outlook.wellKnownFolderNames
97
- }, {
98
- option: '--targetFolderId [targetFolderId]',
99
- autocomplete: Outlook.wellKnownFolderNames
100
- });
101
- }, _OutlookMessageMoveCommand_initOptionSets = function _OutlookMessageMoveCommand_initOptionSets() {
102
- this.optionSets.push({ options: ['sourceFolderId', 'sourceFolderName'] }, { options: ['targetFolderId', 'targetFolderName'] });
103
- };
104
107
  export default new OutlookMessageMoveCommand();
105
108
  //# sourceMappingURL=message-move.js.map
@@ -1,10 +1,5 @@
1
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
2
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
3
- 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");
4
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
5
- };
6
- var _OutlookMessageRemoveCommand_instances, _OutlookMessageRemoveCommand_initTelemetry, _OutlookMessageRemoveCommand_initOptions, _OutlookMessageRemoveCommand_initValidators, _OutlookMessageRemoveCommand_initTypes;
7
1
  import auth from '../../../../Auth.js';
2
+ import { globalOptionsZod } from '../../../../Command.js';
8
3
  import request from '../../../../request.js';
9
4
  import { accessToken } from '../../../../utils/accessToken.js';
10
5
  import GraphCommand from '../../../base/GraphCommand.js';
@@ -12,6 +7,20 @@ import commands from '../../commands.js';
12
7
  import { cli } from '../../../../cli/cli.js';
13
8
  import { validation } from '../../../../utils/validation.js';
14
9
  import { formatting } from '../../../../utils/formatting.js';
10
+ import { z } from 'zod';
11
+ export const options = z.strictObject({
12
+ ...globalOptionsZod.shape,
13
+ id: z.string().alias('i'),
14
+ userId: z.string()
15
+ .refine(userId => validation.isValidGuid(userId), {
16
+ error: e => `Value '${e.input}' is not a valid GUID for option 'userId'.`
17
+ }).optional(),
18
+ userName: z.string()
19
+ .refine(userName => validation.isValidUserPrincipalName(userName), {
20
+ error: e => `Value '${e.input}' is not a valid user principal name for option 'userName'.`
21
+ }).optional(),
22
+ force: z.boolean().optional().alias('f')
23
+ });
15
24
  class OutlookMessageRemoveCommand extends GraphCommand {
16
25
  get name() {
17
26
  return commands.MESSAGE_REMOVE;
@@ -19,13 +28,8 @@ class OutlookMessageRemoveCommand extends GraphCommand {
19
28
  get description() {
20
29
  return 'Permanently removes a specific message from a mailbox';
21
30
  }
22
- constructor() {
23
- super();
24
- _OutlookMessageRemoveCommand_instances.add(this);
25
- __classPrivateFieldGet(this, _OutlookMessageRemoveCommand_instances, "m", _OutlookMessageRemoveCommand_initTelemetry).call(this);
26
- __classPrivateFieldGet(this, _OutlookMessageRemoveCommand_instances, "m", _OutlookMessageRemoveCommand_initOptions).call(this);
27
- __classPrivateFieldGet(this, _OutlookMessageRemoveCommand_instances, "m", _OutlookMessageRemoveCommand_initValidators).call(this);
28
- __classPrivateFieldGet(this, _OutlookMessageRemoveCommand_instances, "m", _OutlookMessageRemoveCommand_initTypes).call(this);
31
+ get schema() {
32
+ return options;
29
33
  }
30
34
  async commandAction(logger, args) {
31
35
  const isAppOnlyAccessToken = accessToken.isAppOnlyAccessToken(auth.connection.accessTokens[auth.defaultResource].accessToken);
@@ -77,37 +81,5 @@ class OutlookMessageRemoveCommand extends GraphCommand {
77
81
  }
78
82
  }
79
83
  }
80
- _OutlookMessageRemoveCommand_instances = new WeakSet(), _OutlookMessageRemoveCommand_initTelemetry = function _OutlookMessageRemoveCommand_initTelemetry() {
81
- this.telemetry.push((args) => {
82
- Object.assign(this.telemetryProperties, {
83
- userId: typeof args.options.userId !== 'undefined',
84
- userName: typeof args.options.userName !== 'undefined',
85
- force: !!args.options.force
86
- });
87
- });
88
- }, _OutlookMessageRemoveCommand_initOptions = function _OutlookMessageRemoveCommand_initOptions() {
89
- this.options.unshift({
90
- option: '-i, --id <id>'
91
- }, {
92
- option: '--userId [userId]'
93
- }, {
94
- option: '--userName [userName]'
95
- }, {
96
- option: '-f, --force'
97
- });
98
- }, _OutlookMessageRemoveCommand_initValidators = function _OutlookMessageRemoveCommand_initValidators() {
99
- this.validators.push(async (args) => {
100
- if (args.options.userId && !validation.isValidGuid(args.options.userId)) {
101
- return `Value '${args.options.userId}' is not a valid GUID for option 'userId'.`;
102
- }
103
- if (args.options.userName && !validation.isValidUserPrincipalName(args.options.userName)) {
104
- return `Value '${args.options.userName}' is not a valid user principal name for option 'userName'.`;
105
- }
106
- return true;
107
- });
108
- }, _OutlookMessageRemoveCommand_initTypes = function _OutlookMessageRemoveCommand_initTypes() {
109
- this.types.string.push('id', 'userId', 'userName');
110
- this.types.boolean.push('force');
111
- };
112
84
  export default new OutlookMessageRemoveCommand();
113
85
  //# sourceMappingURL=message-remove.js.map
@@ -2,6 +2,7 @@ const prefix = 'outlook';
2
2
  export default {
3
3
  CALENDAR_ADD: `${prefix} calendar add`,
4
4
  CALENDAR_GET: `${prefix} calendar get`,
5
+ CALENDAR_LIST: `${prefix} calendar list`,
5
6
  CALENDAR_REMOVE: `${prefix} calendar remove`,
6
7
  CALENDAR_SET: `${prefix} calendar set`,
7
8
  CALENDARGROUP_GET: `${prefix} calendargroup get`,
@@ -0,0 +1,83 @@
1
+ import { z } from 'zod';
2
+ import { globalOptionsZod } from '../../../../Command.js';
3
+ import request from '../../../../request.js';
4
+ import { formatting } from '../../../../utils/formatting.js';
5
+ import { urlUtil } from '../../../../utils/urlUtil.js';
6
+ import { validation } from '../../../../utils/validation.js';
7
+ import SpoCommand from '../../../base/SpoCommand.js';
8
+ import commands from '../../commands.js';
9
+ import { cli } from '../../../../cli/cli.js';
10
+ export const options = z.strictObject({
11
+ ...globalOptionsZod.shape,
12
+ webUrl: z.string()
13
+ .refine(url => validation.isValidSharePointUrl(url) === true, {
14
+ error: 'Specify a valid SharePoint site URL.'
15
+ })
16
+ .alias('u'),
17
+ listTitle: z.string().optional().alias('t'),
18
+ listId: z.uuid().optional().alias('l'),
19
+ listUrl: z.string().optional(),
20
+ force: z.boolean().optional().alias('f')
21
+ });
22
+ class SpoListSensitivityLabelRemoveCommand extends SpoCommand {
23
+ get name() {
24
+ return commands.LIST_SENSITIVITYLABEL_REMOVE;
25
+ }
26
+ get description() {
27
+ return 'Clears a default sensitivity label from a document library';
28
+ }
29
+ get schema() {
30
+ return options;
31
+ }
32
+ getRefinedSchema(schema) {
33
+ return schema
34
+ .refine(options => [options.listId, options.listTitle, options.listUrl].filter(o => o !== undefined).length === 1, {
35
+ error: 'Use one of the following options: listId, listTitle, or listUrl.'
36
+ });
37
+ }
38
+ async commandAction(logger, args) {
39
+ const removeSensitivityLabel = async () => {
40
+ try {
41
+ if (this.verbose) {
42
+ await logger.logToStderr(`Removing the sensitivity label from list '${args.options.listId || args.options.listTitle || args.options.listUrl}' in site at ${args.options.webUrl}...`);
43
+ }
44
+ let requestUrl = `${args.options.webUrl}/_api/web`;
45
+ if (args.options.listId) {
46
+ requestUrl += `/lists(guid'${formatting.encodeQueryParameter(args.options.listId)}')`;
47
+ }
48
+ else if (args.options.listTitle) {
49
+ requestUrl += `/lists/getByTitle('${formatting.encodeQueryParameter(args.options.listTitle)}')`;
50
+ }
51
+ else if (args.options.listUrl) {
52
+ const listServerRelativeUrl = urlUtil.getServerRelativePath(args.options.webUrl, args.options.listUrl);
53
+ requestUrl += `/GetList('${formatting.encodeQueryParameter(listServerRelativeUrl)}')`;
54
+ }
55
+ const requestOptions = {
56
+ url: requestUrl,
57
+ headers: {
58
+ accept: 'application/json;odata=nometadata',
59
+ 'content-type': 'application/json;odata=nometadata',
60
+ 'if-match': '*'
61
+ },
62
+ data: { 'DefaultSensitivityLabelForLibrary': '' },
63
+ responseType: 'json'
64
+ };
65
+ await request.patch(requestOptions);
66
+ }
67
+ catch (err) {
68
+ this.handleRejectedODataJsonPromise(err);
69
+ }
70
+ };
71
+ if (args.options.force) {
72
+ await removeSensitivityLabel();
73
+ }
74
+ else {
75
+ const result = await cli.promptForConfirmation({ message: `Are you sure you want to remove the sensitivity label from list '${args.options.listId || args.options.listTitle || args.options.listUrl}'?` });
76
+ if (result) {
77
+ await removeSensitivityLabel();
78
+ }
79
+ }
80
+ }
81
+ }
82
+ export default new SpoListSensitivityLabelRemoveCommand();
83
+ //# sourceMappingURL=list-sensitivitylabel-remove.js.map
@@ -162,6 +162,7 @@ export default {
162
162
  LIST_ROLEINHERITANCE_BREAK: `${prefix} list roleinheritance break`,
163
163
  LIST_ROLEINHERITANCE_RESET: `${prefix} list roleinheritance reset`,
164
164
  LIST_SENSITIVITYLABEL_ENSURE: `${prefix} list sensitivitylabel ensure`,
165
+ LIST_SENSITIVITYLABEL_REMOVE: `${prefix} list sensitivitylabel remove`,
165
166
  LIST_SET: `${prefix} list set`,
166
167
  LIST_SITESCRIPT_GET: `${prefix} list sitescript get`,
167
168
  LIST_VIEW_ADD: `${prefix} list view add`,
@@ -0,0 +1,155 @@
1
+ import Global from '../../_global.mdx';
2
+ import Tabs from '@theme/Tabs';
3
+ import TabItem from '@theme/TabItem';
4
+
5
+ # outlook calendar list
6
+
7
+ Retrieves a list of all calendars of a user or a group.
8
+
9
+ ## Usage
10
+
11
+ ```sh
12
+ m365 outlook calendar list [options]
13
+ ```
14
+
15
+ ## Options
16
+
17
+ ```md definition-list
18
+ `--userId [userId]`
19
+ : ID of the user. Specify either `userId` or `userName`, but not both.
20
+
21
+ `--userName [userName]`
22
+ : UPN of the user. Specify either `userId` or `userName`, but not both.
23
+
24
+ `--calendarGroupId [calendarGroupId]`
25
+ : ID of the calendar group. Specify either `calendarGroupId` or `calendarGroupName`, but not both.
26
+
27
+ `--calendarGroupName [calendarGroupName]`
28
+ : Name of the calendar group. Specify either `calendarGroupId` or `calendarGroupName`, but not both.
29
+ ```
30
+
31
+ <Global />
32
+
33
+ ## Permissions
34
+
35
+ <Tabs>
36
+ <TabItem value="Delegated">
37
+
38
+ | Resource | Permissions |
39
+ |-----------------|-----------------|
40
+ | Microsoft Graph | Calendars.Read |
41
+
42
+ </TabItem>
43
+ <TabItem value="Application">
44
+
45
+ | Resource | Permissions |
46
+ |-----------------|-----------------|
47
+ | Microsoft Graph | Calendars.Read |
48
+
49
+ </TabItem>
50
+ </Tabs>
51
+
52
+ ## Examples
53
+
54
+ List all calendars for the current signed-in user.
55
+
56
+ ```sh
57
+ m365 outlook calendar list --userId "@meId"
58
+ ```
59
+
60
+ List all calendars in a specific calendar group for the current signed-in user.
61
+
62
+ ```sh
63
+ m365 outlook calendar list --userId "@meId" --calendarGroupName "Colleague calendars"
64
+ ```
65
+
66
+ List all calendars for a specific user.
67
+
68
+ ```sh
69
+ m365 outlook calendar list --userName "john.doe@contoso.com"
70
+ ```
71
+
72
+ List all calendars from a specific calendar group for a specific user.
73
+
74
+ ```sh
75
+ m365 outlook calendar list --userId b743445a-112c-4fda-9afd-05943f9c7b36 --calendarGroupId "AAMkADIxYjJiYmIzLTFmNjYtNGNhMy0YOkcEEh3vhfAAAGgdFjAAA="
76
+ ```
77
+
78
+ ## Response
79
+
80
+ <Tabs>
81
+ <TabItem value="JSON">
82
+
83
+ ```json
84
+ [
85
+ {
86
+ "id": "AAMkAGI2MDc2YzA0LWQwNTktNGM5Ni05M2VkLWY3NjFkNTUxOTkyZABGAAAAAABeGJMObKvfQbq5qwfGa7kTBwAopDdmUXY8TaLJk5CCLo4zAAAAAAEGAAAopDdmUXY8TaLJk5CCLo4zAAAAAFS0AAA=",
87
+ "name": "Calendar",
88
+ "color": "auto",
89
+ "hexColor": "",
90
+ "groupClassId": "0006f0b7-0000-0000-c000-000000000046",
91
+ "isDefaultCalendar": true,
92
+ "changeKey": "KKQ3ZlF2PE2iyZOQgi6OMwAAAAADcg==",
93
+ "canShare": true,
94
+ "canViewPrivateItems": true,
95
+ "canEdit": true,
96
+ "allowedOnlineMeetingProviders": [
97
+ "teamsForBusiness"
98
+ ],
99
+ "defaultOnlineMeetingProvider": "teamsForBusiness",
100
+ "isTallyingResponses": true,
101
+ "isRemovable": false,
102
+ "owner": {
103
+ "name": "John Doe",
104
+ "address": "john.doe@contoso.com"
105
+ }
106
+ }
107
+ ]
108
+ ```
109
+
110
+ </TabItem>
111
+ <TabItem value="Text">
112
+
113
+ ```text
114
+ id name
115
+ -------------------------------------------------------------------------------------------------------------------------------------------------------- ----------------------
116
+ AAMkAGI2MDc2YzA0LWQwNTktNGM5Ni05M2VkLWY3NjFkNTUxOTkyZABGAAAAAABeGJMObKvfQbq5qwfGa7kTBwAopDdmUXY8TaLJk5CCLo4zAAAAAAEGAAAopDdmUXY8TaLJk5CCLo4zAAAAAFS0AAA= Calendar
117
+ ```
118
+
119
+ </TabItem>
120
+ <TabItem value="CSV">
121
+
122
+ ```csv
123
+ id,name,color,hexColor,groupClassId,isDefaultCalendar,changeKey,canShare,canViewPrivateItems,canEdit,defaultOnlineMeetingProvider,isTallyingResponses,isRemovable
124
+ AAMkAGI2MDc2YzA0LWQwNTktNGM5Ni05M2VkLWY3NjFkNTUxOTkyZABGAAAAAABeGJMObKvfQbq5qwfGa7kTBwAopDdmUXY8TaLJk5CCLo4zAAAAAAEGAAAopDdmUXY8TaLJk5CCLo4zAAAAAFS0AAA=,Calendar,auto,,0006f0b7-0000-0000-c000-000000000046,1,KKQ3ZlF2PE2iyZOQgi6OMwAAAAADcg==,1,1,1,teamsForBusiness,1,0
125
+ ```
126
+
127
+ </TabItem>
128
+ <TabItem value="Markdown">
129
+
130
+ ```md
131
+ # outlook calendar list --userId "0649d0bd-53dc-4e1d-a357-76f1d92d447b"
132
+
133
+ Date: 5/11/2026
134
+
135
+ ## Calendar (AAMkAGI2MDc2YzA0LWQwNTktNGM5Ni05M2VkLWY3NjFkNTUxOTkyZABGAAAAAABeGJMObKvfQbq5qwfGa7kTBwAopDdmUXY8TaLJk5CCLo4zAAAAAAEGAAAopDdmUXY8TaLJk5CCLo4zAAAAAFS0AAA=)
136
+
137
+ Property | Value
138
+ ---------|-------
139
+ id | AAMkAGI2MDc2YzA0LWQwNTktNGM5Ni05M2VkLWY3NjFkNTUxOTkyZABGAAAAAABeGJMObKvfQbq5qwfGa7kTBwAopDdmUXY8TaLJk5CCLo4zAAAAAAEGAAAopDdmUXY8TaLJk5CCLo4zAAAAAFS0AAA=
140
+ name | Calendar
141
+ color | auto
142
+ hexColor |
143
+ groupClassId | 0006f0b7-0000-0000-c000-000000000046
144
+ isDefaultCalendar | true
145
+ changeKey | KKQ3ZlF2PE2iyZOQgi6OMwAAAAADcg==
146
+ canShare | true
147
+ canViewPrivateItems | true
148
+ canEdit | true
149
+ defaultOnlineMeetingProvider | teamsForBusiness
150
+ isTallyingResponses | true
151
+ isRemovable | false
152
+ ```
153
+
154
+ </TabItem>
155
+ </Tabs>
@@ -0,0 +1,77 @@
1
+ import Global from '../../_global.mdx';
2
+ import TabItem from '@theme/TabItem';
3
+ import Tabs from '@theme/Tabs';
4
+
5
+ # spo list sensitivitylabel remove
6
+
7
+ Clears a default sensitivity label from a document library
8
+
9
+ ## Usage
10
+
11
+ ```sh
12
+ m365 spo list sensitivitylabel remove [options]
13
+ ```
14
+
15
+ ## Options
16
+
17
+ ```md definition-list
18
+ `-u, --webUrl <webUrl>`
19
+ : The URL of the site where the list is located.
20
+
21
+ `-t, --listTitle [listTitle]`
22
+ : The title of the library on which to remove the label. Specify either `listTitle`, `listId`, or `listUrl` but not multiple.
23
+
24
+ `-l, --listId [listId]`
25
+ : The ID of the library on which to remove the label. Specify either `listTitle`, `listId`, or `listUrl` but not multiple.
26
+
27
+ `--listUrl [listUrl]`
28
+ : Server- or web-relative URL of the library on which to remove the label. Specify either `listTitle`, `listId`, or `listUrl` but not multiple.
29
+
30
+ `-f, --force`
31
+ : Don't prompt for confirmation.
32
+ ```
33
+
34
+ <Global />
35
+
36
+ ## Permissions
37
+
38
+ <Tabs>
39
+ <TabItem value="Delegated">
40
+
41
+ | Resource | Permissions |
42
+ |------------|----------------|
43
+ | SharePoint | AllSites.Write |
44
+
45
+ </TabItem>
46
+ <TabItem value="Application">
47
+
48
+ | Resource | Permissions |
49
+ |------------|---------------------|
50
+ | SharePoint | Sites.ReadWrite.All |
51
+
52
+ </TabItem>
53
+ </Tabs>
54
+
55
+ ## Examples
56
+
57
+ Removes a sensitivity label from a document library based on the list title.
58
+
59
+ ```sh
60
+ m365 spo list sensitivitylabel remove --webUrl 'https://contoso.sharepoint.com' --listTitle 'Shared Documents'
61
+ ```
62
+
63
+ Removes a sensitivity label from a document library based on the list url.
64
+
65
+ ```sh
66
+ m365 spo list sensitivitylabel remove --webUrl 'https://contoso.sharepoint.com' --listUrl '/Shared Documents'
67
+ ```
68
+
69
+ Removes a sensitivity label from a document library based on the list id without prompting for confirmation.
70
+
71
+ ```sh
72
+ m365 spo list sensitivitylabel remove --webUrl 'https://contoso.sharepoint.com' --listId 'b4cfa0d9-b3d7-49ae-a0f0-f14ffdd005f7' --force
73
+ ```
74
+
75
+ ## Response
76
+
77
+ The command won't return a response on success.
@@ -915,6 +915,7 @@
915
915
  "node_modules/@opentelemetry/api": {
916
916
  "version": "1.9.1",
917
917
  "license": "Apache-2.0",
918
+ "peer": true,
918
919
  "engines": {
919
920
  "node": ">=8.0.0"
920
921
  }
@@ -1765,6 +1766,7 @@
1765
1766
  "resolved": "https://registry.npmjs.org/@types/node/-/node-24.12.4.tgz",
1766
1767
  "integrity": "sha512-GUUEShf+PBCGW2KaXwcIt3Yk+e3pkKwWKb9GSyM9WQVE+ep2jzmHdGsHzu4wgcZy5fN9FBdVzjpBQsYlpfpgLA==",
1767
1768
  "license": "MIT",
1769
+ "peer": true,
1768
1770
  "dependencies": {
1769
1771
  "undici-types": "~7.16.0"
1770
1772
  }
@@ -1878,6 +1880,7 @@
1878
1880
  "integrity": "sha512-A0M6ua6H252bVjPvvtSgl2QA4+ET9S5Mtkb2GDyTxIhH/C4qDItT7RQNO5PhMC6NXGYXOR9dIalcDDgBKT7oFA==",
1879
1881
  "dev": true,
1880
1882
  "license": "MIT",
1883
+ "peer": true,
1881
1884
  "dependencies": {
1882
1885
  "@typescript-eslint/scope-manager": "8.60.1",
1883
1886
  "@typescript-eslint/types": "8.60.1",
@@ -2471,6 +2474,7 @@
2471
2474
  "node_modules/acorn": {
2472
2475
  "version": "8.16.0",
2473
2476
  "license": "MIT",
2477
+ "peer": true,
2474
2478
  "bin": {
2475
2479
  "acorn": "bin/acorn"
2476
2480
  },
@@ -3255,6 +3259,7 @@
3255
3259
  "node_modules/diagnostic-channel": {
3256
3260
  "version": "1.1.1",
3257
3261
  "license": "MIT",
3262
+ "peer": true,
3258
3263
  "dependencies": {
3259
3264
  "semver": "^7.5.3"
3260
3265
  }
@@ -3415,6 +3420,7 @@
3415
3420
  "integrity": "sha512-loXy6bWOoP3EP6JA7jo6p5jMpBJmHmsNZM5SFRHLdh1MGOPurMnNBj4ZlAbaqUAaQWbCr7jHV4P7gzAyryZWkQ==",
3416
3421
  "dev": true,
3417
3422
  "license": "MIT",
3423
+ "peer": true,
3418
3424
  "dependencies": {
3419
3425
  "@eslint-community/eslint-utils": "^4.8.0",
3420
3426
  "@eslint-community/regexpp": "^4.12.2",
@@ -6039,6 +6045,7 @@
6039
6045
  "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz",
6040
6046
  "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==",
6041
6047
  "license": "Apache-2.0",
6048
+ "peer": true,
6042
6049
  "bin": {
6043
6050
  "tsc": "bin/tsc",
6044
6051
  "tsserver": "bin/tsserver"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pnp/cli-microsoft365",
3
- "version": "11.9.0-beta.93bd508",
3
+ "version": "11.9.0-beta.9bd71dd",
4
4
  "description": "Manage Microsoft 365 and SharePoint Framework projects on any platform",
5
5
  "license": "MIT",
6
6
  "main": "./dist/api.js",