@37signals/basecamp 0.19.0 → 0.21.0

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 (187) hide show
  1. package/README.md +1 -0
  2. package/dist/client.d.ts +5 -5
  3. package/dist/client.d.ts.map +1 -1
  4. package/dist/client.js +5 -4
  5. package/dist/client.js.map +1 -1
  6. package/dist/generated/metadata.d.ts.map +1 -1
  7. package/dist/generated/metadata.js +165 -2
  8. package/dist/generated/metadata.js.map +1 -1
  9. package/dist/generated/metadata.ts +165 -2
  10. package/dist/generated/openapi-stripped.json +1931 -443
  11. package/dist/generated/path-mapping.d.ts.map +1 -1
  12. package/dist/generated/path-mapping.js +14 -1
  13. package/dist/generated/path-mapping.js.map +1 -1
  14. package/dist/generated/path-mapping.ts +14 -1
  15. package/dist/generated/person-id-sites.d.ts.map +1 -1
  16. package/dist/generated/person-id-sites.js +61 -2
  17. package/dist/generated/person-id-sites.js.map +1 -1
  18. package/dist/generated/person-id-sites.ts +61 -2
  19. package/dist/generated/schema.d.ts +1312 -129
  20. package/dist/generated/services/bookmarks.d.ts +1 -1
  21. package/dist/generated/services/bookmarks.js +1 -1
  22. package/dist/generated/services/bookmarks.ts +1 -1
  23. package/dist/generated/services/boosts.d.ts +2 -2
  24. package/dist/generated/services/boosts.js +2 -2
  25. package/dist/generated/services/boosts.ts +2 -2
  26. package/dist/generated/services/campfires.d.ts +4 -4
  27. package/dist/generated/services/campfires.js +4 -4
  28. package/dist/generated/services/campfires.ts +4 -4
  29. package/dist/generated/services/card-steps.d.ts +15 -11
  30. package/dist/generated/services/card-steps.d.ts.map +1 -1
  31. package/dist/generated/services/card-steps.js +4 -4
  32. package/dist/generated/services/card-steps.js.map +1 -1
  33. package/dist/generated/services/card-steps.ts +15 -11
  34. package/dist/generated/services/cards.d.ts +1 -1
  35. package/dist/generated/services/cards.js +1 -1
  36. package/dist/generated/services/cards.ts +1 -1
  37. package/dist/generated/services/checkins.d.ts +4 -4
  38. package/dist/generated/services/checkins.js +4 -4
  39. package/dist/generated/services/checkins.ts +4 -4
  40. package/dist/generated/services/client-approvals.d.ts +1 -1
  41. package/dist/generated/services/client-approvals.js +1 -1
  42. package/dist/generated/services/client-approvals.ts +1 -1
  43. package/dist/generated/services/client-correspondences.d.ts +1 -1
  44. package/dist/generated/services/client-correspondences.js +1 -1
  45. package/dist/generated/services/client-correspondences.ts +1 -1
  46. package/dist/generated/services/client-replies.d.ts +1 -1
  47. package/dist/generated/services/client-replies.js +1 -1
  48. package/dist/generated/services/client-replies.ts +1 -1
  49. package/dist/generated/services/comments.d.ts +1 -1
  50. package/dist/generated/services/comments.js +1 -1
  51. package/dist/generated/services/comments.ts +1 -1
  52. package/dist/generated/services/documents.d.ts +1 -1
  53. package/dist/generated/services/documents.js +1 -1
  54. package/dist/generated/services/documents.ts +1 -1
  55. package/dist/generated/services/drafts.d.ts +1 -1
  56. package/dist/generated/services/drafts.js +1 -1
  57. package/dist/generated/services/drafts.ts +1 -1
  58. package/dist/generated/services/events.d.ts +1 -1
  59. package/dist/generated/services/events.js +1 -1
  60. package/dist/generated/services/events.ts +1 -1
  61. package/dist/generated/services/everything.d.ts +14 -14
  62. package/dist/generated/services/everything.js +14 -14
  63. package/dist/generated/services/everything.ts +14 -14
  64. package/dist/generated/services/forwards.d.ts +2 -2
  65. package/dist/generated/services/forwards.js +2 -2
  66. package/dist/generated/services/forwards.ts +2 -2
  67. package/dist/generated/services/index.d.ts +2 -2
  68. package/dist/generated/services/index.d.ts.map +1 -1
  69. package/dist/generated/services/index.js +2 -2
  70. package/dist/generated/services/index.js.map +1 -1
  71. package/dist/generated/services/index.ts +2 -2
  72. package/dist/generated/services/lineup.d.ts +13 -0
  73. package/dist/generated/services/lineup.d.ts.map +1 -1
  74. package/dist/generated/services/lineup.js +18 -0
  75. package/dist/generated/services/lineup.js.map +1 -1
  76. package/dist/generated/services/lineup.ts +26 -0
  77. package/dist/generated/services/message-types.d.ts +1 -1
  78. package/dist/generated/services/message-types.js +1 -1
  79. package/dist/generated/services/message-types.ts +1 -1
  80. package/dist/generated/services/messages.d.ts +1 -1
  81. package/dist/generated/services/messages.js +1 -1
  82. package/dist/generated/services/messages.ts +1 -1
  83. package/dist/generated/services/my-notifications.d.ts +3 -2
  84. package/dist/generated/services/my-notifications.d.ts.map +1 -1
  85. package/dist/generated/services/my-notifications.js +1 -1
  86. package/dist/generated/services/my-notifications.js.map +1 -1
  87. package/dist/generated/services/my-notifications.ts +3 -2
  88. package/dist/generated/services/people.d.ts +3 -3
  89. package/dist/generated/services/people.js +3 -3
  90. package/dist/generated/services/people.ts +3 -3
  91. package/dist/generated/services/projects.d.ts +1 -1
  92. package/dist/generated/services/projects.js +1 -1
  93. package/dist/generated/services/projects.ts +1 -1
  94. package/dist/generated/services/recordings.d.ts +3 -3
  95. package/dist/generated/services/recordings.js +3 -3
  96. package/dist/generated/services/recordings.ts +3 -3
  97. package/dist/generated/services/reports.d.ts +1 -1
  98. package/dist/generated/services/reports.js +1 -1
  99. package/dist/generated/services/reports.ts +1 -1
  100. package/dist/generated/services/schedules.d.ts +1 -1
  101. package/dist/generated/services/schedules.js +1 -1
  102. package/dist/generated/services/schedules.ts +1 -1
  103. package/dist/generated/services/subtasks.d.ts +157 -0
  104. package/dist/generated/services/subtasks.d.ts.map +1 -0
  105. package/dist/generated/services/subtasks.js +240 -0
  106. package/dist/generated/services/subtasks.js.map +1 -0
  107. package/dist/generated/services/subtasks.ts +336 -0
  108. package/dist/generated/services/templates.d.ts +114 -10
  109. package/dist/generated/services/templates.d.ts.map +1 -1
  110. package/dist/generated/services/templates.js +147 -10
  111. package/dist/generated/services/templates.js.map +1 -1
  112. package/dist/generated/services/templates.ts +220 -13
  113. package/dist/generated/services/timeline.d.ts +1 -1
  114. package/dist/generated/services/timeline.js +1 -1
  115. package/dist/generated/services/timeline.ts +1 -1
  116. package/dist/generated/services/timesheets.d.ts +3 -3
  117. package/dist/generated/services/timesheets.js +3 -3
  118. package/dist/generated/services/timesheets.ts +3 -3
  119. package/dist/generated/services/todolist-groups.d.ts +1 -1
  120. package/dist/generated/services/todolist-groups.js +1 -1
  121. package/dist/generated/services/todolist-groups.ts +1 -1
  122. package/dist/generated/services/todolists.d.ts +1 -1
  123. package/dist/generated/services/todolists.js +1 -1
  124. package/dist/generated/services/todolists.ts +1 -1
  125. package/dist/generated/services/todos.d.ts +1 -1
  126. package/dist/generated/services/todos.js +1 -1
  127. package/dist/generated/services/todos.ts +1 -1
  128. package/dist/generated/services/uploads.d.ts +2 -2
  129. package/dist/generated/services/uploads.js +2 -2
  130. package/dist/generated/services/uploads.ts +2 -2
  131. package/dist/generated/services/vaults.d.ts +1 -1
  132. package/dist/generated/services/vaults.js +1 -1
  133. package/dist/generated/services/vaults.ts +1 -1
  134. package/dist/generated/services/webhooks.d.ts +1 -1
  135. package/dist/generated/services/webhooks.js +1 -1
  136. package/dist/generated/services/webhooks.ts +1 -1
  137. package/dist/index.d.ts +3 -3
  138. package/dist/index.d.ts.map +1 -1
  139. package/dist/index.js +4 -3
  140. package/dist/index.js.map +1 -1
  141. package/package.json +4 -4
  142. package/src/generated/metadata.ts +165 -2
  143. package/src/generated/openapi-stripped.json +1931 -443
  144. package/src/generated/path-mapping.ts +14 -1
  145. package/src/generated/person-id-sites.ts +61 -2
  146. package/src/generated/schema.d.ts +1312 -129
  147. package/src/generated/services/bookmarks.ts +1 -1
  148. package/src/generated/services/boosts.ts +2 -2
  149. package/src/generated/services/campfires.ts +4 -4
  150. package/src/generated/services/card-steps.ts +15 -11
  151. package/src/generated/services/cards.ts +1 -1
  152. package/src/generated/services/checkins.ts +4 -4
  153. package/src/generated/services/client-approvals.ts +1 -1
  154. package/src/generated/services/client-correspondences.ts +1 -1
  155. package/src/generated/services/client-replies.ts +1 -1
  156. package/src/generated/services/comments.ts +1 -1
  157. package/src/generated/services/documents.ts +1 -1
  158. package/src/generated/services/drafts.ts +1 -1
  159. package/src/generated/services/events.ts +1 -1
  160. package/src/generated/services/everything.ts +14 -14
  161. package/src/generated/services/forwards.ts +2 -2
  162. package/src/generated/services/index.ts +2 -2
  163. package/src/generated/services/lineup.ts +26 -0
  164. package/src/generated/services/message-types.ts +1 -1
  165. package/src/generated/services/messages.ts +1 -1
  166. package/src/generated/services/my-notifications.ts +3 -2
  167. package/src/generated/services/people.ts +3 -3
  168. package/src/generated/services/projects.ts +1 -1
  169. package/src/generated/services/recordings.ts +3 -3
  170. package/src/generated/services/reports.ts +1 -1
  171. package/src/generated/services/schedules.ts +1 -1
  172. package/src/generated/services/subtasks.ts +336 -0
  173. package/src/generated/services/templates.ts +220 -13
  174. package/src/generated/services/timeline.ts +1 -1
  175. package/src/generated/services/timesheets.ts +3 -3
  176. package/src/generated/services/todolist-groups.ts +1 -1
  177. package/src/generated/services/todolists.ts +1 -1
  178. package/src/generated/services/todos.ts +1 -1
  179. package/src/generated/services/uploads.ts +2 -2
  180. package/src/generated/services/vaults.ts +1 -1
  181. package/src/generated/services/webhooks.ts +1 -1
  182. package/dist/generated/services/automation.d.ts +0 -25
  183. package/dist/generated/services/automation.d.ts.map +0 -1
  184. package/dist/generated/services/automation.js +0 -33
  185. package/dist/generated/services/automation.js.map +0 -1
  186. package/dist/generated/services/automation.ts +0 -49
  187. package/src/generated/services/automation.ts +0 -49
@@ -39,7 +39,7 @@ export class BookmarksService extends BaseService {
39
39
  /**
40
40
  * List the current user's bookmarks, most recently bookmarked first (paginated).
41
41
  * @param options - Optional query parameters
42
- * @returns All Bookmark across all pages, with .meta.totalCount
42
+ * @returns Every Bookmark across all pages, with .meta.totalCount
43
43
  *
44
44
  * @example
45
45
  * ```ts
@@ -122,7 +122,7 @@ export class BoostsService extends BaseService {
122
122
  * List boosts on a recording
123
123
  * @param recordingId - The recording ID
124
124
  * @param options - Optional query parameters
125
- * @returns All Boost across all pages, with .meta.totalCount
125
+ * @returns Every Boost across all pages, with .meta.totalCount
126
126
  *
127
127
  * @example
128
128
  * ```ts
@@ -194,7 +194,7 @@ export class BoostsService extends BaseService {
194
194
  * @param recordingId - The recording ID
195
195
  * @param eventId - The event ID
196
196
  * @param options - Optional query parameters
197
- * @returns All Boost across all pages, with .meta.totalCount
197
+ * @returns Every Boost across all pages, with .meta.totalCount
198
198
  *
199
199
  * @example
200
200
  * ```ts
@@ -112,7 +112,7 @@ export class CampfiresService extends BaseService {
112
112
  * @param bucketId - The bucket ID
113
113
  * @param campfireId - The campfire ID
114
114
  * @param options - Optional query parameters
115
- * @returns All Chatbot across all pages, with .meta.totalCount
115
+ * @returns Every Chatbot across all pages, with .meta.totalCount
116
116
  *
117
117
  * @example
118
118
  * ```ts
@@ -288,7 +288,7 @@ export class CampfiresService extends BaseService {
288
288
  /**
289
289
  * List all campfires across the account
290
290
  * @param options - Optional query parameters
291
- * @returns All Campfire across all pages, with .meta.totalCount
291
+ * @returns Every Campfire across all pages, with .meta.totalCount
292
292
  *
293
293
  * @example
294
294
  * ```ts
@@ -350,7 +350,7 @@ export class CampfiresService extends BaseService {
350
350
  * List all lines (messages) in a campfire
351
351
  * @param campfireId - The campfire ID
352
352
  * @param options - Optional query parameters
353
- * @returns All CampfireLine across all pages, with .meta.totalCount
353
+ * @returns Every CampfireLine across all pages, with .meta.totalCount
354
354
  *
355
355
  * @example
356
356
  * ```ts
@@ -520,7 +520,7 @@ export class CampfiresService extends BaseService {
520
520
  * List uploaded files in a campfire
521
521
  * @param campfireId - The campfire ID
522
522
  * @param options - Optional query parameters
523
- * @returns All CampfireLine across all pages, with .meta.totalCount
523
+ * @returns Every CampfireLine across all pages, with .meta.totalCount
524
524
  *
525
525
  * @example
526
526
  * ```ts
@@ -12,8 +12,10 @@ import { Errors } from "../../errors.js";
12
12
  // Types
13
13
  // =============================================================================
14
14
 
15
- /** CardStep entity from the Basecamp API. */
16
- export type CardStep = components["schemas"]["CardStep"];
15
+ /** Subtask entity from the Basecamp API. */
16
+ export type Subtask = components["schemas"]["Subtask"];
17
+ /** @deprecated renamed to Subtask, the same Kanban::Step record. */
18
+ export type CardStep = Subtask;
17
19
 
18
20
  /**
19
21
  * Request parameters for reposition.
@@ -21,7 +23,9 @@ export type CardStep = components["schemas"]["CardStep"];
21
23
  export interface RepositionCardStepRequest {
22
24
  /** Source id */
23
25
  sourceId: number;
24
- /** 0-indexed position */
26
+ /** The 1-based position to move it to (1 = top), the same `reposition_to`
27
+ a to-do uses. bc3's doc said "Zero indexed" until BC3 #12659 corrected
28
+ it; the server never was. */
25
29
  position: number;
26
30
  }
27
31
 
@@ -105,7 +109,7 @@ export class CardStepsService extends BaseService {
105
109
  * Create a step on a card
106
110
  * @param cardId - The card ID
107
111
  * @param req - Card_step creation parameters
108
- * @returns The CardStep
112
+ * @returns The Subtask
109
113
  * @throws {BasecampError} If required fields are missing or invalid
110
114
  *
111
115
  * @example
@@ -113,7 +117,7 @@ export class CardStepsService extends BaseService {
113
117
  * const result = await client.cardSteps.create(123, { title: "example" });
114
118
  * ```
115
119
  */
116
- async create(cardId: number, req: CreateCardStepRequest): Promise<CardStep> {
120
+ async create(cardId: number, req: CreateCardStepRequest): Promise<Subtask> {
117
121
  if (!req.title) {
118
122
  throw Errors.validation("Title is required");
119
123
  }
@@ -146,7 +150,7 @@ export class CardStepsService extends BaseService {
146
150
  /**
147
151
  * Get a step by ID
148
152
  * @param stepId - The step ID
149
- * @returns The CardStep
153
+ * @returns The Subtask
150
154
  * @throws {BasecampError} If the resource is not found
151
155
  *
152
156
  * @example
@@ -154,7 +158,7 @@ export class CardStepsService extends BaseService {
154
158
  * const result = await client.cardSteps.get(123);
155
159
  * ```
156
160
  */
157
- async get(stepId: number): Promise<CardStep> {
161
+ async get(stepId: number): Promise<Subtask> {
158
162
  const response = await this.request(
159
163
  {
160
164
  service: "CardSteps",
@@ -177,7 +181,7 @@ export class CardStepsService extends BaseService {
177
181
  * Update an existing step
178
182
  * @param stepId - The step ID
179
183
  * @param req - Card_step update parameters
180
- * @returns The CardStep
184
+ * @returns The Subtask
181
185
  * @throws {BasecampError} If the resource is not found or fields are invalid
182
186
  *
183
187
  * @example
@@ -185,7 +189,7 @@ export class CardStepsService extends BaseService {
185
189
  * const result = await client.cardSteps.update(123, { });
186
190
  * ```
187
191
  */
188
- async update(stepId: number, req: UpdateCardStepRequest): Promise<CardStep> {
192
+ async update(stepId: number, req: UpdateCardStepRequest): Promise<Subtask> {
189
193
  if (req.dueOn && !/^\d{4}-\d{2}-\d{2}$/.test(req.dueOn)) {
190
194
  throw Errors.validation("Due on must be in YYYY-MM-DD format");
191
195
  }
@@ -216,7 +220,7 @@ export class CardStepsService extends BaseService {
216
220
  * Set card step completion status (PUT with completion: "on" to complete, "" to uncomplete)
217
221
  * @param stepId - The step ID
218
222
  * @param req - Card_step_completion request parameters
219
- * @returns The CardStep
223
+ * @returns The Subtask
220
224
  * @throws {BasecampError} If the request fails
221
225
  *
222
226
  * @example
@@ -224,7 +228,7 @@ export class CardStepsService extends BaseService {
224
228
  * const result = await client.cardSteps.setCompletion(123, { completion: "example" });
225
229
  * ```
226
230
  */
227
- async setCompletion(stepId: number, req: SetCompletionCardStepRequest): Promise<CardStep> {
231
+ async setCompletion(stepId: number, req: SetCompletionCardStepRequest): Promise<Subtask> {
228
232
  if (!req.completion) {
229
233
  throw Errors.validation("Completion is required");
230
234
  }
@@ -181,7 +181,7 @@ export class CardsService extends BaseService {
181
181
  * List cards in a column
182
182
  * @param columnId - The column ID
183
183
  * @param options - Optional query parameters
184
- * @returns All Card across all pages, with .meta.totalCount
184
+ * @returns Every Card across all pages, with .meta.totalCount
185
185
  *
186
186
  * @example
187
187
  * ```ts
@@ -257,7 +257,7 @@ export class CheckinsService extends BaseService {
257
257
  * List all questions in a questionnaire
258
258
  * @param questionnaireId - The questionnaire ID
259
259
  * @param options - Optional query parameters
260
- * @returns All Question across all pages, with .meta.totalCount
260
+ * @returns Every Question across all pages, with .meta.totalCount
261
261
  *
262
262
  * @example
263
263
  * ```ts
@@ -399,7 +399,7 @@ export class CheckinsService extends BaseService {
399
399
  * List all answers for a question
400
400
  * @param questionId - The question ID
401
401
  * @param options - Optional query parameters
402
- * @returns All Answer across all pages, with .meta.totalCount
402
+ * @returns Every Answer across all pages, with .meta.totalCount
403
403
  *
404
404
  * @example
405
405
  * ```ts
@@ -474,7 +474,7 @@ export class CheckinsService extends BaseService {
474
474
  * List all people who have answered a question (answerers)
475
475
  * @param questionId - The question ID
476
476
  * @param options - Optional query parameters
477
- * @returns All Person across all pages, with .meta.totalCount
477
+ * @returns Every Person across all pages, with .meta.totalCount
478
478
  *
479
479
  * @example
480
480
  * ```ts
@@ -505,7 +505,7 @@ export class CheckinsService extends BaseService {
505
505
  * @param questionId - The question ID
506
506
  * @param personId - The person ID
507
507
  * @param options - Optional query parameters
508
- * @returns All Answer across all pages, with .meta.totalCount
508
+ * @returns Every Answer across all pages, with .meta.totalCount
509
509
  *
510
510
  * @example
511
511
  * ```ts
@@ -42,7 +42,7 @@ export class ClientApprovalsService extends BaseService {
42
42
  * List all client approvals in a project
43
43
  * @param bucketId - The bucket ID
44
44
  * @param options - Optional query parameters
45
- * @returns All ClientApproval across all pages, with .meta.totalCount
45
+ * @returns Every ClientApproval across all pages, with .meta.totalCount
46
46
  *
47
47
  * @example
48
48
  * ```ts
@@ -42,7 +42,7 @@ export class ClientCorrespondencesService extends BaseService {
42
42
  * List all client correspondences in a project
43
43
  * @param bucketId - The bucket ID
44
44
  * @param options - Optional query parameters
45
- * @returns All ClientCorrespondence across all pages, with .meta.totalCount
45
+ * @returns Every ClientCorrespondence across all pages, with .meta.totalCount
46
46
  *
47
47
  * @example
48
48
  * ```ts
@@ -39,7 +39,7 @@ export class ClientRepliesService extends BaseService {
39
39
  * @param bucketId - The bucket ID
40
40
  * @param recordingId - The recording ID
41
41
  * @param options - Optional query parameters
42
- * @returns All ClientReply across all pages, with .meta.totalCount
42
+ * @returns Every ClientReply across all pages, with .meta.totalCount
43
43
  *
44
44
  * @example
45
45
  * ```ts
@@ -122,7 +122,7 @@ export class CommentsService extends BaseService {
122
122
  * List comments on a recording
123
123
  * @param recordingId - The recording ID
124
124
  * @param options - Optional query parameters
125
- * @returns All Comment across all pages, with .meta.totalCount
125
+ * @returns Every Comment across all pages, with .meta.totalCount
126
126
  *
127
127
  * @example
128
128
  * ```ts
@@ -130,7 +130,7 @@ export class DocumentsService extends BaseService {
130
130
  * List documents in a vault
131
131
  * @param vaultId - The vault ID
132
132
  * @param options - Optional query parameters
133
- * @returns All Document across all pages, with .meta.totalCount
133
+ * @returns Every Document across all pages, with .meta.totalCount
134
134
  *
135
135
  * @example
136
136
  * ```ts
@@ -37,7 +37,7 @@ export class DraftsService extends BaseService {
37
37
  /**
38
38
  * List the current user's drafts across their active projects, most recently
39
39
  * @param options - Optional query parameters
40
- * @returns All Draft across all pages, with .meta.totalCount
40
+ * @returns Every Draft across all pages, with .meta.totalCount
41
41
  *
42
42
  * @example
43
43
  * ```ts
@@ -38,7 +38,7 @@ export class EventsService extends BaseService {
38
38
  * List all events for a recording
39
39
  * @param recordingId - The recording ID
40
40
  * @param options - Optional query parameters
41
- * @returns All Event across all pages, with .meta.totalCount
41
+ * @returns Every Event across all pages, with .meta.totalCount
42
42
  *
43
43
  * @example
44
44
  * ```ts
@@ -222,7 +222,7 @@ export class EverythingService extends BaseService {
222
222
  /**
223
223
  * Completed cards across all accessible projects, grouped by project (paginated).
224
224
  * @param options - Optional query parameters
225
- * @returns All BucketCardsGroup across all pages, with .meta.totalCount
225
+ * @returns Every BucketCardsGroup across all pages, with .meta.totalCount
226
226
  *
227
227
  * @example
228
228
  * ```ts
@@ -250,7 +250,7 @@ export class EverythingService extends BaseService {
250
250
  /**
251
251
  * Open cards with no due date across all accessible projects, grouped by project (paginated).
252
252
  * @param options - Optional query parameters
253
- * @returns All BucketCardsGroup across all pages, with .meta.totalCount
253
+ * @returns Every BucketCardsGroup across all pages, with .meta.totalCount
254
254
  *
255
255
  * @example
256
256
  * ```ts
@@ -278,7 +278,7 @@ export class EverythingService extends BaseService {
278
278
  /**
279
279
  * Cards parked in a project's "Not now" column across all accessible projects, grouped by project (paginated).
280
280
  * @param options - Optional query parameters
281
- * @returns All BucketCardsGroup across all pages, with .meta.totalCount
281
+ * @returns Every BucketCardsGroup across all pages, with .meta.totalCount
282
282
  *
283
283
  * @example
284
284
  * ```ts
@@ -306,7 +306,7 @@ export class EverythingService extends BaseService {
306
306
  /**
307
307
  * Incomplete cards in active columns across all accessible projects, grouped by project (paginated).
308
308
  * @param options - Optional query parameters
309
- * @returns All BucketCardsGroup across all pages, with .meta.totalCount
309
+ * @returns Every BucketCardsGroup across all pages, with .meta.totalCount
310
310
  *
311
311
  * @example
312
312
  * ```ts
@@ -362,7 +362,7 @@ export class EverythingService extends BaseService {
362
362
  /**
363
363
  * Open, unassigned cards across all accessible projects, grouped by project (paginated).
364
364
  * @param options - Optional query parameters
365
- * @returns All BucketCardsGroup across all pages, with .meta.totalCount
365
+ * @returns Every BucketCardsGroup across all pages, with .meta.totalCount
366
366
  *
367
367
  * @example
368
368
  * ```ts
@@ -390,7 +390,7 @@ export class EverythingService extends BaseService {
390
390
  /**
391
391
  * Get every automatic check-in answer across all accessible projects, newest-first.
392
392
  * @param options - Optional query parameters
393
- * @returns All Recording across all pages, with .meta.totalCount
393
+ * @returns Every Recording across all pages, with .meta.totalCount
394
394
  *
395
395
  * @example
396
396
  * ```ts
@@ -418,7 +418,7 @@ export class EverythingService extends BaseService {
418
418
  /**
419
419
  * Get every comment across all accessible projects, newest-first (paginated).
420
420
  * @param options - Optional query parameters
421
- * @returns All Recording across all pages, with .meta.totalCount
421
+ * @returns Every Recording across all pages, with .meta.totalCount
422
422
  *
423
423
  * @example
424
424
  * ```ts
@@ -446,7 +446,7 @@ export class EverythingService extends BaseService {
446
446
  /**
447
447
  * Get every file recording across all accessible projects, newest-first (paginated).
448
448
  * @param options - Optional query parameters
449
- * @returns All EverythingFile across all pages, with .meta.totalCount
449
+ * @returns Every EverythingFile across all pages, with .meta.totalCount
450
450
  *
451
451
  * @example
452
452
  * ```ts
@@ -474,7 +474,7 @@ export class EverythingService extends BaseService {
474
474
  /**
475
475
  * Get every inbox forward across all accessible projects, newest-first (paginated).
476
476
  * @param options - Optional query parameters
477
- * @returns All Recording across all pages, with .meta.totalCount
477
+ * @returns Every Recording across all pages, with .meta.totalCount
478
478
  *
479
479
  * @example
480
480
  * ```ts
@@ -502,7 +502,7 @@ export class EverythingService extends BaseService {
502
502
  /**
503
503
  * Get every message across all accessible projects, newest-first (paginated).
504
504
  * @param options - Optional query parameters
505
- * @returns All Recording across all pages, with .meta.totalCount
505
+ * @returns Every Recording across all pages, with .meta.totalCount
506
506
  *
507
507
  * @example
508
508
  * ```ts
@@ -530,7 +530,7 @@ export class EverythingService extends BaseService {
530
530
  /**
531
531
  * Completed to-dos across all accessible projects, grouped by project (paginated).
532
532
  * @param options - Optional query parameters
533
- * @returns All BucketTodosGroup across all pages, with .meta.totalCount
533
+ * @returns Every BucketTodosGroup across all pages, with .meta.totalCount
534
534
  *
535
535
  * @example
536
536
  * ```ts
@@ -558,7 +558,7 @@ export class EverythingService extends BaseService {
558
558
  /**
559
559
  * Open to-dos with no due date across all accessible projects, grouped by project (paginated).
560
560
  * @param options - Optional query parameters
561
- * @returns All BucketTodosGroup across all pages, with .meta.totalCount
561
+ * @returns Every BucketTodosGroup across all pages, with .meta.totalCount
562
562
  *
563
563
  * @example
564
564
  * ```ts
@@ -586,7 +586,7 @@ export class EverythingService extends BaseService {
586
586
  /**
587
587
  * Active, incomplete to-dos across all accessible projects, grouped by project (paginated).
588
588
  * @param options - Optional query parameters
589
- * @returns All BucketTodosGroup across all pages, with .meta.totalCount
589
+ * @returns Every BucketTodosGroup across all pages, with .meta.totalCount
590
590
  *
591
591
  * @example
592
592
  * ```ts
@@ -642,7 +642,7 @@ export class EverythingService extends BaseService {
642
642
  /**
643
643
  * Open, unassigned to-dos across all accessible projects, grouped by project (paginated).
644
644
  * @param options - Optional query parameters
645
- * @returns All BucketTodosGroup across all pages, with .meta.totalCount
645
+ * @returns Every BucketTodosGroup across all pages, with .meta.totalCount
646
646
  *
647
647
  * @example
648
648
  * ```ts
@@ -84,7 +84,7 @@ export class ForwardsService extends BaseService {
84
84
  * List all replies to a forward
85
85
  * @param forwardId - The forward ID
86
86
  * @param options - Optional query parameters
87
- * @returns All ForwardReply across all pages, with .meta.totalCount
87
+ * @returns Every ForwardReply across all pages, with .meta.totalCount
88
88
  *
89
89
  * @example
90
90
  * ```ts
@@ -179,7 +179,7 @@ export class ForwardsService extends BaseService {
179
179
  * List all forwards in an inbox
180
180
  * @param inboxId - The inbox ID
181
181
  * @param options - Optional query parameters
182
- * @returns All Forward across all pages, with .meta.totalCount
182
+ * @returns Every Forward across all pages, with .meta.totalCount
183
183
  *
184
184
  * @example
185
185
  * ```ts
@@ -9,6 +9,7 @@ export { ClientApprovalsService } from "./client-approvals.js";
9
9
  export { ClientCorrespondencesService } from "./client-correspondences.js";
10
10
  export { ClientRepliesService } from "./client-replies.js";
11
11
  export { ToolsService } from "./tools.js";
12
+ export { TemplatesService } from "./templates.js";
12
13
  export { TodosService } from "./todos.js";
13
14
  export { CloudFilesService } from "./cloud-files.js";
14
15
  export { GoogleDocumentsService } from "./google-documents.js";
@@ -24,7 +25,6 @@ export { DocumentsService } from "./documents.js";
24
25
  export { EventFeedService } from "./event-feed.js";
25
26
  export { GaugesService } from "./gauges.js";
26
27
  export { ForwardsService } from "./forwards.js";
27
- export { AutomationService } from "./automation.js";
28
28
  export { LineupService } from "./lineup.js";
29
29
  export { MessageBoardsService } from "./message-boards.js";
30
30
  export { MessagesService } from "./messages.js";
@@ -42,11 +42,11 @@ export { BubbleUpsService } from "./bubble-ups.js";
42
42
  export { ClientVisibilityService } from "./client-visibility.js";
43
43
  export { EventsService } from "./events.js";
44
44
  export { SubscriptionsService } from "./subscriptions.js";
45
+ export { SubtasksService } from "./subtasks.js";
45
46
  export { ReportsService } from "./reports.js";
46
47
  export { SchedulesService } from "./schedules.js";
47
48
  export { SearchService } from "./search.js";
48
49
  export { FoldersService } from "./folders.js";
49
- export { TemplatesService } from "./templates.js";
50
50
  export { TodolistGroupsService } from "./todolist-groups.js";
51
51
  export { TodolistsService } from "./todolists.js";
52
52
  export { TodosetsService } from "./todosets.js";
@@ -12,6 +12,8 @@ import { Errors } from "../../errors.js";
12
12
  // Types
13
13
  // =============================================================================
14
14
 
15
+ /** LineupMarker entity from the Basecamp API. */
16
+ export type LineupMarker = components["schemas"]["LineupMarker"];
15
17
 
16
18
  /**
17
19
  * Request parameters for create.
@@ -43,6 +45,30 @@ export interface UpdateLineupRequest {
43
45
  */
44
46
  export class LineupService extends BaseService {
45
47
 
48
+ /**
49
+ * List all lineup markers for the account
50
+ * @returns Array of LineupMarker
51
+ *
52
+ * @example
53
+ * ```ts
54
+ * const result = await client.lineup.listLineupMarkers();
55
+ * ```
56
+ */
57
+ async listLineupMarkers(): Promise<LineupMarker[]> {
58
+ const response = await this.request(
59
+ {
60
+ service: "Lineup",
61
+ operation: "ListLineupMarkers",
62
+ resourceType: "lineup_marker",
63
+ isMutation: false,
64
+ },
65
+ () =>
66
+ this.client.GET("/lineup/markers.json", {
67
+ })
68
+ );
69
+ return response ?? [];
70
+ }
71
+
46
72
  /**
47
73
  * Create a new lineup marker
48
74
  * @param req - Lineup_marker creation parameters
@@ -57,7 +57,7 @@ export class MessageTypesService extends BaseService {
57
57
  * List message types in a project
58
58
  * @param bucketId - The bucket ID
59
59
  * @param options - Optional query parameters
60
- * @returns All MessageType across all pages, with .meta.totalCount
60
+ * @returns Every MessageType across all pages, with .meta.totalCount
61
61
  *
62
62
  * @example
63
63
  * ```ts
@@ -75,7 +75,7 @@ export class MessagesService extends BaseService {
75
75
  * List messages on a message board
76
76
  * @param boardId - The board ID
77
77
  * @param options - Optional query parameters
78
- * @returns All Message across all pages, with .meta.totalCount
78
+ * @returns Every Message across all pages, with .meta.totalCount
79
79
  *
80
80
  * @example
81
81
  * ```ts
@@ -44,7 +44,8 @@ export interface BubbleUpsMyNotificationOptions extends PaginationOptions {
44
44
  * Request parameters for markAsRead.
45
45
  */
46
46
  export interface MarkAsReadMyNotificationRequest {
47
- /** Array of readable_sgid values identifying the items to mark as read */
47
+ /** Array of readable_sgid values identifying the items to mark as read.
48
+ At most 500 per request. */
48
49
  readables: string[];
49
50
  }
50
51
 
@@ -89,7 +90,7 @@ export class MyNotificationsService extends BaseService {
89
90
  /**
90
91
  * Get the current user's current and scheduled bubble-ups (paginated, 50 per page).
91
92
  * @param options - Optional query parameters
92
- * @returns All Notification across all pages, with .meta.totalCount
93
+ * @returns Every Notification across all pages, with .meta.totalCount
93
94
  *
94
95
  * @example
95
96
  * ```ts
@@ -114,7 +114,7 @@ export class PeopleService extends BaseService {
114
114
  /**
115
115
  * List all account users who can be pinged
116
116
  * @param options - Optional query parameters
117
- * @returns All Person across all pages, with .meta.totalCount
117
+ * @returns Every Person across all pages, with .meta.totalCount
118
118
  *
119
119
  * @example
120
120
  * ```ts
@@ -254,7 +254,7 @@ export class PeopleService extends BaseService {
254
254
  /**
255
255
  * List all people visible to the current user
256
256
  * @param options - Optional query parameters
257
- * @returns All Person across all pages, with .meta.totalCount
257
+ * @returns Every Person across all pages, with .meta.totalCount
258
258
  *
259
259
  * @example
260
260
  * ```ts
@@ -471,7 +471,7 @@ export class PeopleService extends BaseService {
471
471
  * List all active people on a project
472
472
  * @param projectId - The project ID
473
473
  * @param options - Optional query parameters
474
- * @returns All Person across all pages, with .meta.totalCount
474
+ * @returns Every Person across all pages, with .meta.totalCount
475
475
  *
476
476
  * @example
477
477
  * ```ts
@@ -88,7 +88,7 @@ export class ProjectsService extends BaseService {
88
88
  /**
89
89
  * List projects (active by default; optionally archived/trashed)
90
90
  * @param options - Optional query parameters
91
- * @returns All Project across all pages, with .meta.totalCount
91
+ * @returns Every Project across all pages, with .meta.totalCount
92
92
  *
93
93
  * @example
94
94
  * ```ts
@@ -46,7 +46,7 @@ export class RecordingsService extends BaseService {
46
46
  * List recordings of a given type across projects
47
47
  * @param type - Comment|Document|Door|Kanban::Card|Kanban::Step|Message|Question::Answer|Schedule::Entry|Todo|Todolist|Upload|Vault
48
48
  * @param options - Optional query parameters
49
- * @returns All Recording across all pages, with .meta.totalCount
49
+ * @returns Every Recording across all pages, with .meta.totalCount
50
50
  *
51
51
  * @example
52
52
  * ```ts
@@ -163,7 +163,7 @@ export class RecordingsService extends BaseService {
163
163
  }
164
164
 
165
165
  /**
166
- * Archive a recording
166
+ * Archive a recording; bc3 answers 403 for types it never lets be archived, timesheet entries among them
167
167
  * @param recordingId - The recording ID
168
168
  * @returns void
169
169
  * @throws {BasecampError} If the request fails
@@ -192,7 +192,7 @@ export class RecordingsService extends BaseService {
192
192
  }
193
193
 
194
194
  /**
195
- * Trash a recording. Trashed items can be recovered.
195
+ * Trash a recording; bc3 answers 403 for types it never lets be trashed, timesheet entries among them (DestroyTimesheetEntry removes those, permanently). Trashed items can be recovered.
196
196
  * @param recordingId - The recording ID
197
197
  * @returns void
198
198
  * @throws {BasecampError} If the request fails
@@ -55,7 +55,7 @@ export class ReportsService extends BaseService {
55
55
  /**
56
56
  * Get account-wide activity feed (progress report)
57
57
  * @param options - Optional query parameters
58
- * @returns All TimelineEvent across all pages, with .meta.totalCount
58
+ * @returns Every TimelineEvent across all pages, with .meta.totalCount
59
59
  *
60
60
  * @example
61
61
  * ```ts
@@ -353,7 +353,7 @@ export class SchedulesService extends BaseService {
353
353
  * List entries on a schedule
354
354
  * @param scheduleId - The schedule ID
355
355
  * @param options - Optional query parameters
356
- * @returns All ScheduleEntry across all pages, with .meta.totalCount
356
+ * @returns Every ScheduleEntry across all pages, with .meta.totalCount
357
357
  *
358
358
  * @example
359
359
  * ```ts