twentythree-cli 1.3.6 → 1.3.7

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 (181) hide show
  1. package/dist/commands/audience/list.cjs +96 -13
  2. package/dist/commands/category/list.cjs +53 -5
  3. package/dist/commands/comment/list.cjs +24 -3
  4. package/dist/commands/poll/list.cjs +38 -5
  5. package/dist/commands/spot/list.cjs +39 -11
  6. package/dist/commands/user/list.cjs +56 -7
  7. package/dist/commands/video/subtitle/list.cjs +38 -1
  8. package/dist/commands/webinar/list.cjs +121 -20
  9. package/dist/commands/webinar/mail/list.cjs +18 -2
  10. package/dist/commands/webinar/series/list.cjs +111 -5
  11. package/dist/commands/webinar/speaker/list.cjs +46 -4
  12. package/docs/commands/action/add.md +1 -1
  13. package/docs/commands/action/delete.md +1 -1
  14. package/docs/commands/action/exclude.md +1 -1
  15. package/docs/commands/action/get.md +1 -1
  16. package/docs/commands/action/include.md +1 -1
  17. package/docs/commands/action/list.md +1 -1
  18. package/docs/commands/action/types.md +1 -1
  19. package/docs/commands/action/update.md +1 -1
  20. package/docs/commands/action/upload.md +1 -1
  21. package/docs/commands/action.md +9 -9
  22. package/docs/commands/analytics/conversions.md +3 -3
  23. package/docs/commands/analytics/live.md +9 -9
  24. package/docs/commands/analytics/usage.md +18 -18
  25. package/docs/commands/analytics/video.md +12 -12
  26. package/docs/commands/analytics.md +42 -42
  27. package/docs/commands/app/add.md +1 -1
  28. package/docs/commands/app/delete.md +1 -1
  29. package/docs/commands/app/list.md +1 -1
  30. package/docs/commands/app/remove-thumbnail.md +1 -1
  31. package/docs/commands/app/set-thumbnail.md +1 -1
  32. package/docs/commands/app/update.md +1 -1
  33. package/docs/commands/app.md +6 -6
  34. package/docs/commands/audience/companies.md +1 -1
  35. package/docs/commands/audience/field.md +4 -4
  36. package/docs/commands/audience/funnel.md +1 -1
  37. package/docs/commands/audience/identity-sources.md +1 -1
  38. package/docs/commands/audience/list-collectors.md +1 -1
  39. package/docs/commands/audience/list.md +40 -11
  40. package/docs/commands/audience/metrics.md +1 -1
  41. package/docs/commands/audience/register.md +1 -1
  42. package/docs/commands/audience/remove.md +1 -1
  43. package/docs/commands/audience/search.md +1 -1
  44. package/docs/commands/audience/timelines.md +1 -1
  45. package/docs/commands/audience/unregister.md +1 -1
  46. package/docs/commands/audience.md +15 -15
  47. package/docs/commands/auth/credentials.md +1 -1
  48. package/docs/commands/auth/status.md +1 -1
  49. package/docs/commands/auth/switch.md +1 -1
  50. package/docs/commands/auth.md +3 -3
  51. package/docs/commands/autocomplete.md +1 -1
  52. package/docs/commands/category/create.md +1 -1
  53. package/docs/commands/category/delete.md +1 -1
  54. package/docs/commands/category/list.md +20 -3
  55. package/docs/commands/category/update.md +1 -1
  56. package/docs/commands/category.md +5 -5
  57. package/docs/commands/collector/exclude.md +1 -1
  58. package/docs/commands/collector/include.md +1 -1
  59. package/docs/commands/collector/list.md +1 -1
  60. package/docs/commands/collector.md +3 -3
  61. package/docs/commands/comment/add.md +1 -1
  62. package/docs/commands/comment/clone.md +1 -1
  63. package/docs/commands/comment/delete.md +1 -1
  64. package/docs/commands/comment/list.md +24 -11
  65. package/docs/commands/comment/promote.md +1 -1
  66. package/docs/commands/comment/reaction.md +3 -3
  67. package/docs/commands/comment/set-order.md +1 -1
  68. package/docs/commands/comment/update.md +1 -1
  69. package/docs/commands/comment.md +10 -10
  70. package/docs/commands/doctor.md +1 -1
  71. package/docs/commands/openupload/list.md +1 -1
  72. package/docs/commands/openupload/update-file.md +1 -1
  73. package/docs/commands/openupload/upload-file.md +1 -1
  74. package/docs/commands/openupload.md +3 -3
  75. package/docs/commands/player/delete.md +1 -1
  76. package/docs/commands/player/embed-versions.md +1 -1
  77. package/docs/commands/player/embed.md +1 -1
  78. package/docs/commands/player/list.md +1 -1
  79. package/docs/commands/player/remove-thumbnail.md +1 -1
  80. package/docs/commands/player/set-thumbnail.md +1 -1
  81. package/docs/commands/player/styles.md +1 -1
  82. package/docs/commands/player/update.md +1 -1
  83. package/docs/commands/player.md +8 -8
  84. package/docs/commands/poll/add.md +1 -1
  85. package/docs/commands/poll/answer.md +1 -1
  86. package/docs/commands/poll/list.md +12 -2
  87. package/docs/commands/poll/remove.md +1 -1
  88. package/docs/commands/poll/set-options.md +1 -1
  89. package/docs/commands/poll/update.md +1 -1
  90. package/docs/commands/poll.md +6 -6
  91. package/docs/commands/presentation/page.md +1 -1
  92. package/docs/commands/presentation/setting.md +2 -2
  93. package/docs/commands/presentation.md +3 -3
  94. package/docs/commands/protection/protect.md +1 -1
  95. package/docs/commands/protection/unprotect.md +1 -1
  96. package/docs/commands/protection/verify.md +1 -1
  97. package/docs/commands/protection.md +3 -3
  98. package/docs/commands/seo/get.md +1 -1
  99. package/docs/commands/seo/status.md +1 -1
  100. package/docs/commands/seo/update.md +1 -1
  101. package/docs/commands/seo.md +3 -3
  102. package/docs/commands/session/get-token.md +1 -1
  103. package/docs/commands/session/redeem-token.md +1 -1
  104. package/docs/commands/session.md +2 -2
  105. package/docs/commands/setting/update.md +1 -1
  106. package/docs/commands/setting.md +1 -1
  107. package/docs/commands/site/get.md +1 -1
  108. package/docs/commands/site/search.md +1 -1
  109. package/docs/commands/site.md +2 -2
  110. package/docs/commands/spot/check.md +1 -1
  111. package/docs/commands/spot/create.md +1 -1
  112. package/docs/commands/spot/delete.md +1 -1
  113. package/docs/commands/spot/list.md +21 -10
  114. package/docs/commands/spot/reset-version.md +1 -1
  115. package/docs/commands/spot/set-videos.md +1 -1
  116. package/docs/commands/spot/update.md +1 -1
  117. package/docs/commands/spot.md +7 -7
  118. package/docs/commands/tag/list.md +1 -1
  119. package/docs/commands/tag/related.md +1 -1
  120. package/docs/commands/tag.md +2 -2
  121. package/docs/commands/thumbnail/add.md +1 -1
  122. package/docs/commands/thumbnail/data.md +1 -1
  123. package/docs/commands/thumbnail/delete.md +1 -1
  124. package/docs/commands/thumbnail/duplicate.md +1 -1
  125. package/docs/commands/thumbnail/file.md +3 -3
  126. package/docs/commands/thumbnail/list.md +1 -1
  127. package/docs/commands/thumbnail/preview-scss.md +1 -1
  128. package/docs/commands/thumbnail/update.md +1 -1
  129. package/docs/commands/thumbnail.md +11 -11
  130. package/docs/commands/user/create.md +1 -1
  131. package/docs/commands/user/get-login-token.md +1 -1
  132. package/docs/commands/user/get.md +1 -1
  133. package/docs/commands/user/list.md +22 -7
  134. package/docs/commands/user/redeem-login-token.md +1 -1
  135. package/docs/commands/user/send-invitation.md +1 -1
  136. package/docs/commands/user/tokens.md +1 -1
  137. package/docs/commands/user/update.md +1 -1
  138. package/docs/commands/user.md +8 -8
  139. package/docs/commands/video/delete.md +1 -1
  140. package/docs/commands/video/frame.md +1 -1
  141. package/docs/commands/video/get.md +1 -1
  142. package/docs/commands/video/list.md +1 -1
  143. package/docs/commands/video/replace.md +1 -1
  144. package/docs/commands/video/section.md +8 -8
  145. package/docs/commands/video/subtitle.md +24 -13
  146. package/docs/commands/video/transcoding-progress.md +1 -1
  147. package/docs/commands/video/update.md +1 -1
  148. package/docs/commands/video/upload.md +1 -1
  149. package/docs/commands/video.md +28 -28
  150. package/docs/commands/webhook/events.md +1 -1
  151. package/docs/commands/webhook/list.md +1 -1
  152. package/docs/commands/webhook/sample.md +1 -1
  153. package/docs/commands/webhook/subscribe.md +1 -1
  154. package/docs/commands/webhook/unsubscribe.md +1 -1
  155. package/docs/commands/webhook.md +5 -5
  156. package/docs/commands/webinar/attachment.md +4 -4
  157. package/docs/commands/webinar/clips.md +1 -1
  158. package/docs/commands/webinar/create.md +1 -1
  159. package/docs/commands/webinar/delete.md +1 -1
  160. package/docs/commands/webinar/highlights.md +1 -1
  161. package/docs/commands/webinar/list-formats.md +1 -1
  162. package/docs/commands/webinar/list.md +38 -8
  163. package/docs/commands/webinar/log.md +1 -1
  164. package/docs/commands/webinar/mail.md +14 -8
  165. package/docs/commands/webinar/metrics.md +1 -1
  166. package/docs/commands/webinar/queued-video.md +2 -2
  167. package/docs/commands/webinar/recording.md +4 -4
  168. package/docs/commands/webinar/repeat.md +1 -1
  169. package/docs/commands/webinar/room.md +4 -4
  170. package/docs/commands/webinar/section.md +4 -4
  171. package/docs/commands/webinar/series.md +44 -13
  172. package/docs/commands/webinar/speaker.md +14 -14
  173. package/docs/commands/webinar/transcription.md +4 -4
  174. package/docs/commands/webinar/update.md +1 -1
  175. package/docs/commands/webinar/upload-image.md +1 -1
  176. package/docs/commands/webinar.md +67 -67
  177. package/docs/commands/workspace/list.md +1 -1
  178. package/docs/commands/workspace/use.md +1 -1
  179. package/docs/commands/workspace.md +2 -2
  180. package/oclif.manifest.json +3342 -2526
  181. package/package.json +1 -1
@@ -33,7 +33,11 @@ var AudienceList = class AudienceList extends require_lib_base_command.Authentic
33
33
  static examples = [
34
34
  "<%= config.bin %> audience list",
35
35
  "<%= config.bin %> audience list --page 2 --size 50",
36
- "<%= config.bin %> audience list --search \"john\" --identified --json"
36
+ "<%= config.bin %> audience list --search \"john\" --identified --json",
37
+ "<%= config.bin %> audience list --company \"Acme\" --orderby score --order desc --json",
38
+ "<%= config.bin %> audience list --objects \"12345 67890\" --include-timelines --json",
39
+ "<%= config.bin %> audience list --score-interval \"50:100\" --activity-interval \"30d\" --json",
40
+ "<%= config.bin %> audience list --export-format csv > audience.csv"
37
41
  ];
38
42
  static enableJsonFlag = true;
39
43
  static flags = {
@@ -51,11 +55,19 @@ var AudienceList = class AudienceList extends require_lib_base_command.Authentic
51
55
  required: false
52
56
  }),
53
57
  orderby: _oclif_core.Flags.string({
54
- description: "Order by field (recent, timeline_count, score, first)",
58
+ description: "Order by field",
59
+ options: [
60
+ "profile_count",
61
+ "recent",
62
+ "timeline_count",
63
+ "score",
64
+ "first"
65
+ ],
55
66
  required: false
56
67
  }),
57
68
  order: _oclif_core.Flags.string({
58
- description: "Sort direction (asc/desc)",
69
+ description: "Sort direction",
70
+ options: ["asc", "desc"],
59
71
  required: false
60
72
  }),
61
73
  search: _oclif_core.Flags.string({
@@ -67,25 +79,96 @@ var AudienceList = class AudienceList extends require_lib_base_command.Authentic
67
79
  required: false,
68
80
  allowNo: true
69
81
  }),
82
+ company: _oclif_core.Flags.string({
83
+ description: "Filter by company name",
84
+ required: false
85
+ }),
70
86
  objects: _oclif_core.Flags.string({
71
87
  description: "Filter by viewed object IDs (space-separated)",
72
88
  required: false
89
+ }),
90
+ "attended-objects": _oclif_core.Flags.string({
91
+ description: "Filter to profiles that attended specific object IDs (space-separated)",
92
+ required: false
93
+ }),
94
+ "identity-sources": _oclif_core.Flags.string({
95
+ description: "Filter by the source of profile information (e.g. corepeople:<collection>)",
96
+ required: false
97
+ }),
98
+ score: _oclif_core.Flags.string({
99
+ description: "Filter by exact engagement score",
100
+ required: false
101
+ }),
102
+ "score-interval": _oclif_core.Flags.string({
103
+ description: "Filter by a range of engagement scores (e.g. \"50:100\")",
104
+ required: false
105
+ }),
106
+ "activity-interval": _oclif_core.Flags.string({
107
+ description: "Filter to profiles with activity within this date interval (e.g. \"30d\")",
108
+ required: false
109
+ }),
110
+ first: _oclif_core.Flags.string({
111
+ description: "Filter to profiles first seen after this date",
112
+ required: false
113
+ }),
114
+ recent: _oclif_core.Flags.string({
115
+ description: "Filter to profiles with recent activity after this date",
116
+ required: false
117
+ }),
118
+ "event-type": _oclif_core.Flags.string({
119
+ description: "Filter by conversion event type",
120
+ required: false
121
+ }),
122
+ "include-timelines": _oclif_core.Flags.boolean({
123
+ description: "Include viewing timelines in the result",
124
+ required: false
125
+ }),
126
+ "include-events": _oclif_core.Flags.boolean({
127
+ description: "Include conversion events in the result",
128
+ required: false
129
+ }),
130
+ "include-total-count": _oclif_core.Flags.boolean({
131
+ description: "Include the total matching profile count in the response",
132
+ required: false
133
+ }),
134
+ "export-format": _oclif_core.Flags.string({
135
+ description: "Export results as a file instead of JSON",
136
+ options: ["csv", "xlsx"],
137
+ required: false
138
+ }),
139
+ fields: _oclif_core.Flags.string({
140
+ description: "Comma-separated list of fields to return in the API response",
141
+ required: false
73
142
  })
74
143
  };
75
144
  static args = {};
76
145
  async run() {
77
146
  const { flags } = await this.parse(AudienceList);
78
147
  this.printWorkspaceHeader();
79
- const { data, error } = await this.apiClient.GET("/audience/list", { params: { query: {
80
- p: flags.page,
81
- size: flags.size,
82
- offset: flags.offset,
83
- orderby: flags.orderby,
84
- order: flags.order,
85
- search: flags.search,
86
- identified: flags.identified,
87
- objects: flags.objects
88
- } } });
148
+ const query = {};
149
+ if (flags.page !== void 0) query.p = flags.page;
150
+ if (flags.size !== void 0) query.size = flags.size;
151
+ if (flags.offset !== void 0) query.offset = flags.offset;
152
+ if (flags.orderby !== void 0) query.orderby = flags.orderby;
153
+ if (flags.order !== void 0) query.order = flags.order;
154
+ if (flags.search !== void 0) query.search = flags.search;
155
+ if (flags.identified !== void 0) query.identified = flags.identified;
156
+ if (flags.company !== void 0) query.company = flags.company;
157
+ if (flags.objects !== void 0) query.objects = flags.objects;
158
+ if (flags["attended-objects"] !== void 0) query.attended_objects = flags["attended-objects"];
159
+ if (flags["identity-sources"] !== void 0) query.identity_sources = flags["identity-sources"];
160
+ if (flags.score !== void 0) query.score = flags.score;
161
+ if (flags["score-interval"] !== void 0) query.score_interval = flags["score-interval"];
162
+ if (flags["activity-interval"] !== void 0) query.activity_interval = flags["activity-interval"];
163
+ if (flags.first !== void 0) query.first = flags.first;
164
+ if (flags.recent !== void 0) query.recent = flags.recent;
165
+ if (flags["event-type"] !== void 0) query.event_type = flags["event-type"];
166
+ if (flags["include-timelines"]) query.include_timelines_p = true;
167
+ if (flags["include-events"]) query.include_events_p = true;
168
+ if (flags["include-total-count"]) query.include_total_count_p = true;
169
+ if (flags["export-format"] !== void 0) query.export_format = flags["export-format"];
170
+ if (flags.fields !== void 0) query.fields = flags.fields;
171
+ const { data, error } = await this.apiClient.GET("/audience/list", { params: { query } });
89
172
  if (error) this.error(require_lib_term_map.applyCliTerms(require_lib_output.formatApiError(error)), { exit: 1 });
90
173
  const resp = data;
91
174
  const rows = Array.isArray(resp?.data) ? resp.data : resp?.data ? [resp.data] : [];
@@ -37,11 +37,30 @@ var CategoryList = class CategoryList extends require_lib_base_command.Authentic
37
37
  static examples = [
38
38
  "<%= config.bin %> category list",
39
39
  "<%= config.bin %> category list --json",
40
- "<%= config.bin %> category list --include-hidden"
40
+ "<%= config.bin %> category list --include-hidden",
41
+ "<%= config.bin %> category list --search \"webinar\" --orderby title --order asc",
42
+ "<%= config.bin %> category list --user-id 42 --json",
43
+ "<%= config.bin %> category list --photo-id 12345 --json"
41
44
  ];
42
45
  static enableJsonFlag = true;
43
46
  static flags = {
44
47
  ...require_lib_base_command.AuthenticatedCommand.baseFlags,
48
+ search: _oclif_core.Flags.string({
49
+ description: "Search categories by title or keyword",
50
+ required: false
51
+ }),
52
+ "album-id": _oclif_core.Flags.integer({
53
+ description: "Return information for a specific category by its ID",
54
+ required: false
55
+ }),
56
+ "photo-id": _oclif_core.Flags.integer({
57
+ description: "Filter to categories that contain a specific video",
58
+ required: false
59
+ }),
60
+ "user-id": _oclif_core.Flags.integer({
61
+ description: "Filter by the ID of the user that created the category",
62
+ required: false
63
+ }),
45
64
  "include-hidden": _oclif_core.Flags.boolean({
46
65
  description: "Include hidden categories in the results",
47
66
  allowNo: true,
@@ -50,6 +69,26 @@ var CategoryList = class CategoryList extends require_lib_base_command.Authentic
50
69
  "include-hidden-p": _oclif_core.Flags.string({
51
70
  hidden: true,
52
71
  required: false
72
+ }),
73
+ orderby: _oclif_core.Flags.string({
74
+ description: "Field to order results by",
75
+ options: [
76
+ "sortkey",
77
+ "title",
78
+ "editing_date",
79
+ "creation_date",
80
+ "live_create"
81
+ ],
82
+ required: false
83
+ }),
84
+ order: _oclif_core.Flags.string({
85
+ description: "Sort direction",
86
+ options: ["asc", "desc"],
87
+ required: false
88
+ }),
89
+ fields: _oclif_core.Flags.string({
90
+ description: "Comma-separated list of fields to return in the API response",
91
+ required: false
53
92
  })
54
93
  };
55
94
  static args = {};
@@ -57,11 +96,20 @@ var CategoryList = class CategoryList extends require_lib_base_command.Authentic
57
96
  const { flags } = await this.parse(CategoryList);
58
97
  this.printWorkspaceHeader();
59
98
  const categories = await require_lib_pagination.fetchAllPages(async (page, size) => {
60
- const { data, error } = await this.apiClient.GET("/album/list", { params: { query: {
99
+ const query = {
61
100
  p: page,
62
- size,
63
- include_hidden_p: require_lib_output.parseBoolParam(flags["include-hidden"], flags["include-hidden-p"]) ?? void 0
64
- } } });
101
+ size
102
+ };
103
+ const includeHidden = require_lib_output.parseBoolParam(flags["include-hidden"], flags["include-hidden-p"]);
104
+ if (includeHidden !== void 0) query.include_hidden_p = includeHidden;
105
+ if (flags.search !== void 0) query.search = flags.search;
106
+ if (flags["album-id"] !== void 0) query.album_id = flags["album-id"];
107
+ if (flags["photo-id"] !== void 0) query.photo_id = flags["photo-id"];
108
+ if (flags["user-id"] !== void 0) query.user_id = flags["user-id"];
109
+ if (flags.orderby !== void 0) query.orderby = flags.orderby;
110
+ if (flags.order !== void 0) query.order = flags.order;
111
+ if (flags.fields !== void 0) query.fields = flags.fields;
112
+ const { data, error } = await this.apiClient.GET("/album/list", { params: { query } });
65
113
  if (error) this.error(require_lib_term_map.applyCliTerms(require_lib_output.formatApiError(error)), { exit: 1 });
66
114
  const resp = data;
67
115
  return {
@@ -56,19 +56,36 @@ var CommentList = class CommentList extends require_lib_base_command.Authenticat
56
56
  }),
57
57
  order: _oclif_core.Flags.string({
58
58
  description: "Sort order for results",
59
+ options: ["asc", "desc"],
60
+ required: false
61
+ }),
62
+ "comment-id": _oclif_core.Flags.integer({
63
+ description: "Limit to a specific comment by its ID",
64
+ required: false
65
+ }),
66
+ "comment-user-id": _oclif_core.Flags.integer({
67
+ description: "List comments by a specific user",
68
+ required: false
69
+ }),
70
+ "prioritize-promoted": _oclif_core.Flags.boolean({
71
+ description: "Sort promoted comments before non-promoted ones",
59
72
  required: false
60
73
  }),
61
74
  "include-reactions": _oclif_core.Flags.boolean({
62
- description: "Include reactions on each comment",
75
+ description: "Include emoji reaction counts for each comment",
63
76
  required: false
64
77
  }),
65
78
  "include-replies": _oclif_core.Flags.boolean({
66
- description: "Include reply-to comments",
79
+ description: "Include details about the parent comment for reply comments",
67
80
  required: false
68
81
  }),
69
82
  promoted: _oclif_core.Flags.boolean({
70
83
  description: "Filter to promoted comments only",
71
84
  required: false
85
+ }),
86
+ fields: _oclif_core.Flags.string({
87
+ description: "Comma-separated list of fields to return in the API response",
88
+ required: false
72
89
  })
73
90
  };
74
91
  static args = {};
@@ -84,9 +101,13 @@ var CommentList = class CommentList extends require_lib_base_command.Authenticat
84
101
  comment_type: flags["comment-type"],
85
102
  search: flags.search,
86
103
  order: flags.order,
104
+ comment_id: flags["comment-id"],
105
+ comment_user_id: flags["comment-user-id"],
106
+ prioritize_promoted_p: flags["prioritize-promoted"] ? true : void 0,
87
107
  include_reactions_p: flags["include-reactions"] ? 1 : void 0,
88
108
  include_reply_to_comments_p: flags["include-replies"] ? 1 : void 0,
89
- promoted_p: flags.promoted ? 1 : void 0
109
+ promoted_p: flags.promoted ? 1 : void 0,
110
+ fields: flags.fields
90
111
  } } });
91
112
  if (error) this.error(require_lib_term_map.applyCliTerms(require_lib_output.formatApiError(error)), { exit: 1 });
92
113
  const resp = data;
@@ -31,7 +31,12 @@ var PollList = class PollList extends require_lib_base_command.AuthenticatedComm
31
31
  },
32
32
  side_effects: "none"
33
33
  };
34
- static examples = ["<%= config.bin %> poll list --object-id 12345", "<%= config.bin %> poll list --object-id 12345 --json"];
34
+ static examples = [
35
+ "<%= config.bin %> poll list --object-id 12345",
36
+ "<%= config.bin %> poll list --object-id 12345 --json",
37
+ "<%= config.bin %> poll list --object-id 12345 --open --json",
38
+ "<%= config.bin %> poll list --object-id 12345 --poll-id 99 --json"
39
+ ];
35
40
  static enableJsonFlag = true;
36
41
  static flags = {
37
42
  ...require_lib_base_command.AuthenticatedCommand.baseFlags,
@@ -42,6 +47,29 @@ var PollList = class PollList extends require_lib_base_command.AuthenticatedComm
42
47
  "object-token": _oclif_core.Flags.string({
43
48
  description: "Object token (auto-looked up if omitted)",
44
49
  required: false
50
+ }),
51
+ "poll-id": _oclif_core.Flags.integer({
52
+ description: "Limit results to a single poll by its ID",
53
+ required: false
54
+ }),
55
+ open: _oclif_core.Flags.boolean({
56
+ description: "Filter by open/closed status",
57
+ allowNo: true,
58
+ required: false
59
+ }),
60
+ public: _oclif_core.Flags.boolean({
61
+ description: "Filter by public/non-public status",
62
+ allowNo: true,
63
+ required: false
64
+ }),
65
+ "display-results": _oclif_core.Flags.boolean({
66
+ description: "Filter to polls with publicly displayed results",
67
+ allowNo: true,
68
+ required: false
69
+ }),
70
+ fields: _oclif_core.Flags.string({
71
+ description: "Comma-separated list of fields to return in the API response",
72
+ required: false
45
73
  })
46
74
  };
47
75
  static args = {};
@@ -49,11 +77,16 @@ var PollList = class PollList extends require_lib_base_command.AuthenticatedComm
49
77
  const { flags } = await this.parse(PollList);
50
78
  this.printWorkspaceHeader();
51
79
  const objectId = Number(flags["object-id"]);
52
- const objectToken = flags["object-token"] ?? await this.fetchWebinarToken(objectId);
53
- const { data, error } = await this.apiClient.GET("/poll/list", { params: { query: {
80
+ const query = {
54
81
  object_id: objectId,
55
- object_token: objectToken
56
- } } });
82
+ object_token: flags["object-token"] ?? await this.fetchWebinarToken(objectId)
83
+ };
84
+ if (flags["poll-id"] !== void 0) query.poll_id = flags["poll-id"];
85
+ if (flags.open !== void 0) query.open_p = flags.open;
86
+ if (flags.public !== void 0) query.public_p = flags.public;
87
+ if (flags["display-results"] !== void 0) query.display_results_p = flags["display-results"];
88
+ if (flags.fields !== void 0) query.fields = flags.fields;
89
+ const { data, error } = await this.apiClient.GET("/poll/list", { params: { query } });
57
90
  if (error) this.error(require_lib_term_map.applyCliTerms(require_lib_output.formatApiError(error)), { exit: 1 });
58
91
  const polls = Array.isArray(data?.data) ? data.data : data?.data ? [data.data] : [];
59
92
  if (this.jsonEnabled()) return require_lib_output.formatJsonOutput({
@@ -35,11 +35,21 @@ var SpotList = class SpotList extends require_lib_base_command.AuthenticatedComm
35
35
  required: false
36
36
  }),
37
37
  search: _oclif_core.Flags.string({
38
- description: "Search term",
38
+ description: "Search spots by name",
39
+ required: false
40
+ }),
41
+ "spot-id": _oclif_core.Flags.integer({
42
+ description: "Filter to a specific spot by ID",
39
43
  required: false
40
44
  }),
41
45
  "spot-type": _oclif_core.Flags.string({
42
46
  description: "Filter by spot type",
47
+ options: ["page", "widget"],
48
+ required: false
49
+ }),
50
+ "spot-object-type": _oclif_core.Flags.string({
51
+ description: "Filter by the object type the spot is configured for",
52
+ options: ["live", "video"],
43
53
  required: false
44
54
  }),
45
55
  active: _oclif_core.Flags.boolean({
@@ -51,12 +61,26 @@ var SpotList = class SpotList extends require_lib_base_command.AuthenticatedComm
51
61
  hidden: true,
52
62
  required: false
53
63
  }),
64
+ "include-analytics": _oclif_core.Flags.boolean({
65
+ description: "Include impression analytics data for each spot",
66
+ required: false
67
+ }),
54
68
  orderby: _oclif_core.Flags.string({
55
69
  description: "Field to order results by",
70
+ options: [
71
+ "spot_name",
72
+ "creation_time",
73
+ "title"
74
+ ],
56
75
  required: false
57
76
  }),
58
77
  order: _oclif_core.Flags.string({
59
- description: "Sort order (asc or desc)",
78
+ description: "Sort direction",
79
+ options: ["asc", "desc"],
80
+ required: false
81
+ }),
82
+ fields: _oclif_core.Flags.string({
83
+ description: "Comma-separated list of fields to return in the API response",
60
84
  required: false
61
85
  })
62
86
  };
@@ -79,15 +103,19 @@ var SpotList = class SpotList extends require_lib_base_command.AuthenticatedComm
79
103
  const { flags } = await this.parse(SpotList);
80
104
  this.printWorkspaceHeader();
81
105
  const activeVal = require_lib_output.parseBoolParam(flags.active, flags["active-p"]);
82
- const { data, error } = await this.apiClient.GET("/spot/list", { params: { query: {
83
- search: flags.search,
84
- spot_type: flags["spot-type"],
85
- active_p: activeVal !== void 0 ? activeVal : void 0,
86
- p: flags.page,
87
- size: flags.size,
88
- orderby: flags.orderby,
89
- order: flags.order
90
- } } });
106
+ const query = {};
107
+ if (flags.search !== void 0) query.search = flags.search;
108
+ if (flags["spot-id"] !== void 0) query.spot_id = flags["spot-id"];
109
+ if (flags["spot-type"] !== void 0) query.spot_type = flags["spot-type"];
110
+ if (flags["spot-object-type"] !== void 0) query.spot_object_type = flags["spot-object-type"];
111
+ if (activeVal !== void 0) query.active_p = activeVal;
112
+ if (flags["include-analytics"]) query.include_analytics_p = true;
113
+ if (flags.orderby !== void 0) query.orderby = flags.orderby;
114
+ if (flags.order !== void 0) query.order = flags.order;
115
+ if (flags.fields !== void 0) query.fields = flags.fields;
116
+ if (flags.page !== void 0) query.p = flags.page;
117
+ if (flags.size !== void 0) query.size = flags.size;
118
+ const { data, error } = await this.apiClient.GET("/spot/list", { params: { query } });
91
119
  if (error) this.error(require_lib_term_map.applyCliTerms(require_lib_output.formatApiError(error)), { exit: 1 });
92
120
  const resp = data;
93
121
  const rows = Array.isArray(resp?.data) ? resp.data : resp?.data ? [resp.data] : [];
@@ -17,7 +17,9 @@ var UserList = class UserList extends require_lib_base_command.AuthenticatedComm
17
17
  "<%= config.bin %> user list",
18
18
  "<%= config.bin %> user list --search \"alice\"",
19
19
  "<%= config.bin %> user list --page 2 --size 20",
20
- "<%= config.bin %> user list --json"
20
+ "<%= config.bin %> user list --json",
21
+ "<%= config.bin %> user list --only-admins --json",
22
+ "<%= config.bin %> user list --user-group-id 5 --orderby display_name --json"
21
23
  ];
22
24
  static enableJsonFlag = true;
23
25
  static flags = {
@@ -37,6 +39,44 @@ var UserList = class UserList extends require_lib_base_command.AuthenticatedComm
37
39
  "user-id": _oclif_core.Flags.string({
38
40
  description: "Filter by user ID",
39
41
  required: false
42
+ }),
43
+ "user-group-id": _oclif_core.Flags.string({
44
+ description: "Filter to users assigned to a specific user group",
45
+ required: false
46
+ }),
47
+ "only-admins": _oclif_core.Flags.boolean({
48
+ description: "Return only admin users",
49
+ required: false
50
+ }),
51
+ "only-owner": _oclif_core.Flags.boolean({
52
+ description: "Return only the workspace owner",
53
+ required: false
54
+ }),
55
+ seated: _oclif_core.Flags.boolean({
56
+ description: "Filter by seated status",
57
+ allowNo: true,
58
+ required: false
59
+ }),
60
+ "include-disabled-login": _oclif_core.Flags.boolean({
61
+ description: "Include users with disabled login",
62
+ required: false
63
+ }),
64
+ "include-metrics": _oclif_core.Flags.boolean({
65
+ description: "Include per-user performance metrics",
66
+ required: false
67
+ }),
68
+ orderby: _oclif_core.Flags.string({
69
+ description: "Field to order results by",
70
+ required: false
71
+ }),
72
+ order: _oclif_core.Flags.string({
73
+ description: "Sort direction",
74
+ options: ["asc", "desc"],
75
+ required: false
76
+ }),
77
+ fields: _oclif_core.Flags.string({
78
+ description: "Comma-separated list of fields to return in the API response",
79
+ required: false
40
80
  })
41
81
  };
42
82
  static args = {};
@@ -57,12 +97,21 @@ var UserList = class UserList extends require_lib_base_command.AuthenticatedComm
57
97
  async run() {
58
98
  const { flags } = await this.parse(UserList);
59
99
  this.printWorkspaceHeader();
60
- const { data, error } = await this.apiClient.GET("/user/list", { params: { query: {
61
- search: flags.search,
62
- user_id: flags["user-id"] ? Number(flags["user-id"]) : void 0,
63
- p: flags.page,
64
- size: flags.size
65
- } } });
100
+ const query = {};
101
+ if (flags.search !== void 0) query.search = flags.search;
102
+ if (flags["user-id"] !== void 0) query.user_id = Number(flags["user-id"]);
103
+ if (flags["user-group-id"] !== void 0) query.user_group_id = flags["user-group-id"];
104
+ if (flags["only-admins"]) query.only_admins_p = true;
105
+ if (flags["only-owner"]) query.only_owner_p = true;
106
+ if (flags.seated !== void 0) query.seated_p = flags.seated;
107
+ if (flags["include-disabled-login"]) query.include_disabled_login_p = true;
108
+ if (flags["include-metrics"]) query.include_metrics_p = true;
109
+ if (flags.orderby !== void 0) query.orderby = flags.orderby;
110
+ if (flags.order !== void 0) query.order = flags.order;
111
+ if (flags.fields !== void 0) query.fields = flags.fields;
112
+ if (flags.page !== void 0) query.p = flags.page;
113
+ if (flags.size !== void 0) query.size = flags.size;
114
+ const { data, error } = await this.apiClient.GET("/user/list", { params: { query } });
66
115
  if (error) this.error(require_lib_term_map.applyCliTerms(require_lib_output.formatApiError(error)), { exit: 1 });
67
116
  const resp = data;
68
117
  const rows = Array.isArray(resp?.data) ? resp.data : resp?.data ? [resp.data] : [];
@@ -40,6 +40,38 @@ var VideoSubtitleList = class VideoSubtitleList extends require_lib_base_command
40
40
  "include-drafts-p": _oclif_core.Flags.string({
41
41
  hidden: true,
42
42
  required: false
43
+ }),
44
+ "subtitle-format": _oclif_core.Flags.string({
45
+ description: "Format to use for subtitle download URLs",
46
+ options: [
47
+ "websrt",
48
+ "json",
49
+ "adobe",
50
+ "subviewer",
51
+ "webvtt"
52
+ ],
53
+ required: false
54
+ }),
55
+ type: _oclif_core.Flags.string({
56
+ description: "Filter by subtitle type",
57
+ options: [
58
+ "general",
59
+ "closedcaptions",
60
+ "audiodescriptions"
61
+ ],
62
+ required: false
63
+ }),
64
+ stripped: _oclif_core.Flags.boolean({
65
+ description: "Return a stripped (timing-only) version of the subtitle file",
66
+ required: false
67
+ }),
68
+ "detect-language": _oclif_core.Flags.boolean({
69
+ description: "Use the viewer's browser language to determine the default subtitle",
70
+ required: false
71
+ }),
72
+ fields: _oclif_core.Flags.string({
73
+ description: "Comma-separated list of fields to return in the API response",
74
+ required: false
43
75
  })
44
76
  };
45
77
  static args = { id: _oclif_core.Args.string({
@@ -53,7 +85,12 @@ var VideoSubtitleList = class VideoSubtitleList extends require_lib_base_command
53
85
  const { data, error } = await this.apiClient.GET("/photo/subtitle/list", { params: { query: {
54
86
  photo_id: Number(args.id),
55
87
  token,
56
- ...require_lib_output.parseBoolParam(flags["include-drafts"], flags["include-drafts-p"]) && { include_drafts_p: true }
88
+ ...require_lib_output.parseBoolParam(flags["include-drafts"], flags["include-drafts-p"]) && { include_drafts_p: true },
89
+ ...flags["subtitle-format"] !== void 0 && { subtitle_format: flags["subtitle-format"] },
90
+ ...flags.type !== void 0 && { type: flags.type },
91
+ ...flags.stripped && { stripped_p: true },
92
+ ...flags["detect-language"] && { detect_subtitle_language_p: true },
93
+ ...flags.fields !== void 0 && { fields: flags.fields }
57
94
  } } });
58
95
  if (error) this.error(require_lib_term_map.applyCliTerms(require_lib_output.formatApiError(error)), { exit: 1 });
59
96
  const subtitles = data?.subtitles ?? data?.data ?? [];