servicem8 0.9.41 → 0.9.42

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 (171) hide show
  1. package/README.md +7 -1
  2. package/api.json +789 -295
  3. package/bin/mcp-server.js +590 -85
  4. package/bin/mcp-server.js.map +19 -10
  5. package/dist/commonjs/funcs/staffMessagesCreateStaffMessages.d.ts +24 -0
  6. package/dist/commonjs/funcs/staffMessagesCreateStaffMessages.d.ts.map +1 -0
  7. package/dist/commonjs/funcs/staffMessagesCreateStaffMessages.js +136 -0
  8. package/dist/commonjs/funcs/staffMessagesCreateStaffMessages.js.map +1 -0
  9. package/dist/commonjs/funcs/staffMessagesDeleteStaffMessages.d.ts +23 -0
  10. package/dist/commonjs/funcs/staffMessagesDeleteStaffMessages.d.ts.map +1 -0
  11. package/dist/commonjs/funcs/staffMessagesDeleteStaffMessages.js +137 -0
  12. package/dist/commonjs/funcs/staffMessagesDeleteStaffMessages.js.map +1 -0
  13. package/dist/commonjs/funcs/staffMessagesUpdateStaffMessages.d.ts +21 -0
  14. package/dist/commonjs/funcs/staffMessagesUpdateStaffMessages.d.ts.map +1 -0
  15. package/dist/commonjs/funcs/staffMessagesUpdateStaffMessages.js +136 -0
  16. package/dist/commonjs/funcs/staffMessagesUpdateStaffMessages.js.map +1 -0
  17. package/dist/commonjs/lib/config.d.ts +3 -3
  18. package/dist/commonjs/lib/config.js +3 -3
  19. package/dist/commonjs/lib/security.d.ts.map +1 -1
  20. package/dist/commonjs/lib/security.js.map +1 -1
  21. package/dist/commonjs/mcp-server/mcp-server.js +1 -1
  22. package/dist/commonjs/mcp-server/server.d.ts.map +1 -1
  23. package/dist/commonjs/mcp-server/server.js +7 -1
  24. package/dist/commonjs/mcp-server/server.js.map +1 -1
  25. package/dist/commonjs/mcp-server/tools/staffMessagesCreateStaffMessages.d.ts +8 -0
  26. package/dist/commonjs/mcp-server/tools/staffMessagesCreateStaffMessages.d.ts.map +1 -0
  27. package/dist/commonjs/mcp-server/tools/staffMessagesCreateStaffMessages.js +74 -0
  28. package/dist/commonjs/mcp-server/tools/staffMessagesCreateStaffMessages.js.map +1 -0
  29. package/dist/commonjs/mcp-server/tools/staffMessagesDeleteStaffMessages.d.ts +8 -0
  30. package/dist/commonjs/mcp-server/tools/staffMessagesDeleteStaffMessages.d.ts.map +1 -0
  31. package/dist/commonjs/mcp-server/tools/staffMessagesDeleteStaffMessages.js +73 -0
  32. package/dist/commonjs/mcp-server/tools/staffMessagesDeleteStaffMessages.js.map +1 -0
  33. package/dist/commonjs/mcp-server/tools/staffMessagesUpdateStaffMessages.d.ts +8 -0
  34. package/dist/commonjs/mcp-server/tools/staffMessagesUpdateStaffMessages.d.ts.map +1 -0
  35. package/dist/commonjs/mcp-server/tools/staffMessagesUpdateStaffMessages.js +69 -0
  36. package/dist/commonjs/mcp-server/tools/staffMessagesUpdateStaffMessages.js.map +1 -0
  37. package/dist/commonjs/models/components/staffmessage.d.ts +49 -0
  38. package/dist/commonjs/models/components/staffmessage.d.ts.map +1 -1
  39. package/dist/commonjs/models/components/staffmessage.js +66 -1
  40. package/dist/commonjs/models/components/staffmessage.js.map +1 -1
  41. package/dist/commonjs/models/components/vendor.d.ts +2 -2
  42. package/dist/commonjs/models/components/vendor.d.ts.map +1 -1
  43. package/dist/commonjs/models/operations/createstaffmessages.d.ts +36 -0
  44. package/dist/commonjs/models/operations/createstaffmessages.d.ts.map +1 -0
  45. package/dist/commonjs/models/operations/createstaffmessages.js +83 -0
  46. package/dist/commonjs/models/operations/createstaffmessages.js.map +1 -0
  47. package/dist/commonjs/models/operations/deletestaffmessages.d.ts +32 -0
  48. package/dist/commonjs/models/operations/deletestaffmessages.d.ts.map +1 -0
  49. package/dist/commonjs/models/operations/deletestaffmessages.js +69 -0
  50. package/dist/commonjs/models/operations/deletestaffmessages.js.map +1 -0
  51. package/dist/commonjs/models/operations/index.d.ts +3 -0
  52. package/dist/commonjs/models/operations/index.d.ts.map +1 -1
  53. package/dist/commonjs/models/operations/index.js +3 -0
  54. package/dist/commonjs/models/operations/index.js.map +1 -1
  55. package/dist/commonjs/models/operations/updatestaffmessages.d.ts +38 -0
  56. package/dist/commonjs/models/operations/updatestaffmessages.d.ts.map +1 -0
  57. package/dist/commonjs/models/operations/updatestaffmessages.js +81 -0
  58. package/dist/commonjs/models/operations/updatestaffmessages.js.map +1 -0
  59. package/dist/commonjs/sdk/staffmessages.d.ts +32 -0
  60. package/dist/commonjs/sdk/staffmessages.d.ts.map +1 -1
  61. package/dist/commonjs/sdk/staffmessages.js +41 -0
  62. package/dist/commonjs/sdk/staffmessages.js.map +1 -1
  63. package/dist/esm/funcs/staffMessagesCreateStaffMessages.d.ts +24 -0
  64. package/dist/esm/funcs/staffMessagesCreateStaffMessages.d.ts.map +1 -0
  65. package/dist/esm/funcs/staffMessagesCreateStaffMessages.js +100 -0
  66. package/dist/esm/funcs/staffMessagesCreateStaffMessages.js.map +1 -0
  67. package/dist/esm/funcs/staffMessagesDeleteStaffMessages.d.ts +23 -0
  68. package/dist/esm/funcs/staffMessagesDeleteStaffMessages.d.ts.map +1 -0
  69. package/dist/esm/funcs/staffMessagesDeleteStaffMessages.js +101 -0
  70. package/dist/esm/funcs/staffMessagesDeleteStaffMessages.js.map +1 -0
  71. package/dist/esm/funcs/staffMessagesUpdateStaffMessages.d.ts +21 -0
  72. package/dist/esm/funcs/staffMessagesUpdateStaffMessages.d.ts.map +1 -0
  73. package/dist/esm/funcs/staffMessagesUpdateStaffMessages.js +100 -0
  74. package/dist/esm/funcs/staffMessagesUpdateStaffMessages.js.map +1 -0
  75. package/dist/esm/lib/config.d.ts +3 -3
  76. package/dist/esm/lib/config.js +3 -3
  77. package/dist/esm/lib/security.d.ts.map +1 -1
  78. package/dist/esm/lib/security.js.map +1 -1
  79. package/dist/esm/mcp-server/mcp-server.js +1 -1
  80. package/dist/esm/mcp-server/server.d.ts.map +1 -1
  81. package/dist/esm/mcp-server/server.js +7 -1
  82. package/dist/esm/mcp-server/server.js.map +1 -1
  83. package/dist/esm/mcp-server/tools/staffMessagesCreateStaffMessages.d.ts +8 -0
  84. package/dist/esm/mcp-server/tools/staffMessagesCreateStaffMessages.d.ts.map +1 -0
  85. package/dist/esm/mcp-server/tools/staffMessagesCreateStaffMessages.js +38 -0
  86. package/dist/esm/mcp-server/tools/staffMessagesCreateStaffMessages.js.map +1 -0
  87. package/dist/esm/mcp-server/tools/staffMessagesDeleteStaffMessages.d.ts +8 -0
  88. package/dist/esm/mcp-server/tools/staffMessagesDeleteStaffMessages.d.ts.map +1 -0
  89. package/dist/esm/mcp-server/tools/staffMessagesDeleteStaffMessages.js +37 -0
  90. package/dist/esm/mcp-server/tools/staffMessagesDeleteStaffMessages.js.map +1 -0
  91. package/dist/esm/mcp-server/tools/staffMessagesUpdateStaffMessages.d.ts +8 -0
  92. package/dist/esm/mcp-server/tools/staffMessagesUpdateStaffMessages.d.ts.map +1 -0
  93. package/dist/esm/mcp-server/tools/staffMessagesUpdateStaffMessages.js +33 -0
  94. package/dist/esm/mcp-server/tools/staffMessagesUpdateStaffMessages.js.map +1 -0
  95. package/dist/esm/models/components/staffmessage.d.ts +49 -0
  96. package/dist/esm/models/components/staffmessage.d.ts.map +1 -1
  97. package/dist/esm/models/components/staffmessage.js +63 -0
  98. package/dist/esm/models/components/staffmessage.js.map +1 -1
  99. package/dist/esm/models/components/vendor.d.ts +2 -2
  100. package/dist/esm/models/components/vendor.d.ts.map +1 -1
  101. package/dist/esm/models/operations/createstaffmessages.d.ts +36 -0
  102. package/dist/esm/models/operations/createstaffmessages.d.ts.map +1 -0
  103. package/dist/esm/models/operations/createstaffmessages.js +45 -0
  104. package/dist/esm/models/operations/createstaffmessages.js.map +1 -0
  105. package/dist/esm/models/operations/deletestaffmessages.d.ts +32 -0
  106. package/dist/esm/models/operations/deletestaffmessages.d.ts.map +1 -0
  107. package/dist/esm/models/operations/deletestaffmessages.js +31 -0
  108. package/dist/esm/models/operations/deletestaffmessages.js.map +1 -0
  109. package/dist/esm/models/operations/index.d.ts +3 -0
  110. package/dist/esm/models/operations/index.d.ts.map +1 -1
  111. package/dist/esm/models/operations/index.js +3 -0
  112. package/dist/esm/models/operations/index.js.map +1 -1
  113. package/dist/esm/models/operations/updatestaffmessages.d.ts +38 -0
  114. package/dist/esm/models/operations/updatestaffmessages.d.ts.map +1 -0
  115. package/dist/esm/models/operations/updatestaffmessages.js +43 -0
  116. package/dist/esm/models/operations/updatestaffmessages.js.map +1 -0
  117. package/dist/esm/sdk/staffmessages.d.ts +32 -0
  118. package/dist/esm/sdk/staffmessages.d.ts.map +1 -1
  119. package/dist/esm/sdk/staffmessages.js +41 -0
  120. package/dist/esm/sdk/staffmessages.js.map +1 -1
  121. package/docs/sdks/allocationwindows/README.md +4 -4
  122. package/docs/sdks/assets/README.md +6 -6
  123. package/docs/sdks/assettypefields/README.md +8 -8
  124. package/docs/sdks/assettypes/README.md +4 -4
  125. package/docs/sdks/badges/README.md +12 -12
  126. package/docs/sdks/bundles/README.md +4 -4
  127. package/docs/sdks/categories/README.md +4 -4
  128. package/docs/sdks/clients/README.md +8 -8
  129. package/docs/sdks/companycontacts/README.md +8 -8
  130. package/docs/sdks/documenttemplates/README.md +4 -4
  131. package/docs/sdks/emailtemplates/README.md +4 -4
  132. package/docs/sdks/feedback/README.md +8 -8
  133. package/docs/sdks/formfields/README.md +8 -8
  134. package/docs/sdks/forms/README.md +8 -8
  135. package/docs/sdks/jobactivities/README.md +20 -20
  136. package/docs/sdks/joballocations/README.md +24 -24
  137. package/docs/sdks/jobchecklists/README.md +32 -32
  138. package/docs/sdks/jobcontacts/README.md +8 -8
  139. package/docs/sdks/jobmaterialbundles/README.md +12 -12
  140. package/docs/sdks/jobmaterials/README.md +20 -20
  141. package/docs/sdks/jobpayments/README.md +16 -16
  142. package/docs/sdks/jobqueues/README.md +4 -4
  143. package/docs/sdks/jobs/README.md +32 -32
  144. package/docs/sdks/knowledgearticles/README.md +4 -4
  145. package/docs/sdks/locations/README.md +4 -4
  146. package/docs/sdks/materials/README.md +8 -8
  147. package/docs/sdks/smstemplates/README.md +4 -4
  148. package/docs/sdks/staffmembers/README.md +12 -12
  149. package/docs/sdks/staffmessages/README.md +305 -0
  150. package/docs/sdks/tasks/README.md +20 -20
  151. package/docs/sdks/taxrates/README.md +4 -4
  152. package/examples/package-lock.json +1 -1
  153. package/jsr.json +1 -1
  154. package/package.json +1 -1
  155. package/src/funcs/staffMessagesCreateStaffMessages.ts +200 -0
  156. package/src/funcs/staffMessagesDeleteStaffMessages.ts +207 -0
  157. package/src/funcs/staffMessagesUpdateStaffMessages.ts +206 -0
  158. package/src/lib/config.ts +3 -3
  159. package/src/lib/security.ts +4 -1
  160. package/src/mcp-server/mcp-server.ts +1 -1
  161. package/src/mcp-server/server.ts +7 -1
  162. package/src/mcp-server/tools/staffMessagesCreateStaffMessages.ts +49 -0
  163. package/src/mcp-server/tools/staffMessagesDeleteStaffMessages.ts +48 -0
  164. package/src/mcp-server/tools/staffMessagesUpdateStaffMessages.ts +44 -0
  165. package/src/models/components/staffmessage.ts +120 -0
  166. package/src/models/components/vendor.ts +2 -2
  167. package/src/models/operations/createstaffmessages.ts +84 -0
  168. package/src/models/operations/deletestaffmessages.ts +69 -0
  169. package/src/models/operations/index.ts +3 -0
  170. package/src/models/operations/updatestaffmessages.ts +86 -0
  171. package/src/sdk/staffmessages.ts +65 -0
@@ -8,7 +8,10 @@ Operations related to Staff Messages
8
8
  ### Available Operations
9
9
 
10
10
  * [listStaffMessages](#liststaffmessages) - List all Staff Messages
11
+ * [createStaffMessages](#createstaffmessages) - Create a new Staff Message
11
12
  * [getStaffMessages](#getstaffmessages) - Retrieve a Staff Message
13
+ * [updateStaffMessages](#updatestaffmessages) - Update a Staff Message
14
+ * [deleteStaffMessages](#deletestaffmessages) - Delete a Staff Message
12
15
 
13
16
  ## listStaffMessages
14
17
 
@@ -96,6 +99,110 @@ run();
96
99
  | errors.ErrorT | 500 | application/json |
97
100
  | errors.APIError | 4XX, 5XX | \*/\* |
98
101
 
102
+ ## createStaffMessages
103
+
104
+
105
+
106
+ #### OAuth Scope
107
+ This endpoint requires the following OAuth scope **publish_messages**.
108
+
109
+
110
+
111
+ #### Record UUID
112
+ UUID is optional for record creation. If no UUID is supplied, a UUID will be automatically generated for the new record and returned in the `x-record-uuid` response header.
113
+
114
+
115
+
116
+ ### Example Usage
117
+
118
+ <!-- UsageSnippet language="typescript" operationID="createStaffMessages" method="post" path="/staffmessage.json" -->
119
+ ```typescript
120
+ import { ServiceM8 } from "servicem8";
121
+
122
+ const serviceM8 = new ServiceM8({
123
+ security: {
124
+ apiKey: process.env["SERVICEM8_API_KEY"] ?? "",
125
+ },
126
+ });
127
+
128
+ async function run() {
129
+ const result = await serviceM8.staffMessages.createStaffMessages({
130
+ uuid: "123e4567-7db1-4b8f-9739-232178196ccb",
131
+ fromStaffUuid: "123e4567-58aa-41b9-b125-232176f9385b",
132
+ toStaffUuid: "123e4567-166a-4023-9db9-23217d0e17db",
133
+ sentTimestamp: "2025-08-01 12:00:00",
134
+ deliveredTimestamp: "2025-08-01 12:00:00",
135
+ readTimestamp: "2025-08-01 12:00:00",
136
+ regardingJobUuid: "123e4567-9240-4cd8-8a88-2321749a208b",
137
+ });
138
+
139
+ console.log(result);
140
+ }
141
+
142
+ run();
143
+ ```
144
+
145
+ ### Standalone function
146
+
147
+ The standalone function version of this method:
148
+
149
+ ```typescript
150
+ import { ServiceM8Core } from "servicem8/core.js";
151
+ import { staffMessagesCreateStaffMessages } from "servicem8/funcs/staffMessagesCreateStaffMessages.js";
152
+
153
+ // Use `ServiceM8Core` for best tree-shaking performance.
154
+ // You can create one instance of it to use across an application.
155
+ const serviceM8 = new ServiceM8Core({
156
+ security: {
157
+ apiKey: process.env["SERVICEM8_API_KEY"] ?? "",
158
+ },
159
+ });
160
+
161
+ async function run() {
162
+ const res = await staffMessagesCreateStaffMessages(serviceM8, {
163
+ uuid: "123e4567-7db1-4b8f-9739-232178196ccb",
164
+ fromStaffUuid: "123e4567-58aa-41b9-b125-232176f9385b",
165
+ toStaffUuid: "123e4567-166a-4023-9db9-23217d0e17db",
166
+ sentTimestamp: "2025-08-01 12:00:00",
167
+ deliveredTimestamp: "2025-08-01 12:00:00",
168
+ readTimestamp: "2025-08-01 12:00:00",
169
+ regardingJobUuid: "123e4567-9240-4cd8-8a88-2321749a208b",
170
+ });
171
+ if (res.ok) {
172
+ const { value: result } = res;
173
+ console.log(result);
174
+ } else {
175
+ console.log("staffMessagesCreateStaffMessages failed:", res.error);
176
+ }
177
+ }
178
+
179
+ run();
180
+ ```
181
+
182
+ ### Parameters
183
+
184
+ | Parameter | Type | Required | Description |
185
+ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
186
+ | `request` | [components.StaffMessageInput](../../models/components/staffmessageinput.md) | :heavy_check_mark: | The request object to use for the request. |
187
+ | `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
188
+ | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. |
189
+ | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
190
+
191
+ ### Response
192
+
193
+ **Promise\<[operations.CreateStaffMessagesResponse](../../models/operations/createstaffmessagesresponse.md)\>**
194
+
195
+ ### Errors
196
+
197
+ | Error Type | Status Code | Content Type |
198
+ | -------------------------- | -------------------------- | -------------------------- |
199
+ | errors.ErrorT | 400 | application/json |
200
+ | errors.AuthenticationError | 401 | application/json |
201
+ | errors.ForbiddenError | 403 | application/json |
202
+ | errors.RateLimitError | 429 | application/json |
203
+ | errors.ErrorT | 500 | application/json |
204
+ | errors.APIError | 4XX, 5XX | \*/\* |
205
+
99
206
  ## getStaffMessages
100
207
 
101
208
 
@@ -174,6 +281,204 @@ run();
174
281
 
175
282
  ### Errors
176
283
 
284
+ | Error Type | Status Code | Content Type |
285
+ | -------------------------- | -------------------------- | -------------------------- |
286
+ | errors.ErrorT | 400 | application/json |
287
+ | errors.AuthenticationError | 401 | application/json |
288
+ | errors.ForbiddenError | 403 | application/json |
289
+ | errors.NotFoundError | 404 | application/json |
290
+ | errors.RateLimitError | 429 | application/json |
291
+ | errors.ErrorT | 500 | application/json |
292
+ | errors.APIError | 4XX, 5XX | \*/\* |
293
+
294
+ ## updateStaffMessages
295
+
296
+
297
+
298
+ #### OAuth Scope
299
+ This endpoint requires the following OAuth scope **publish_messages**.
300
+
301
+
302
+
303
+ ### Example Usage
304
+
305
+ <!-- UsageSnippet language="typescript" operationID="updateStaffMessages" method="post" path="/staffmessage/{uuid}.json" -->
306
+ ```typescript
307
+ import { ServiceM8 } from "servicem8";
308
+
309
+ const serviceM8 = new ServiceM8({
310
+ security: {
311
+ apiKey: process.env["SERVICEM8_API_KEY"] ?? "",
312
+ },
313
+ });
314
+
315
+ async function run() {
316
+ const result = await serviceM8.staffMessages.updateStaffMessages({
317
+ uuid: "b5fd0f7a-6810-4261-acdb-e8e543cf4e72",
318
+ staffMessage: {
319
+ uuid: "123e4567-7db1-4b8f-9739-232178196ccb",
320
+ fromStaffUuid: "123e4567-58aa-41b9-b125-232176f9385b",
321
+ toStaffUuid: "123e4567-166a-4023-9db9-23217d0e17db",
322
+ sentTimestamp: "2025-08-01 12:00:00",
323
+ deliveredTimestamp: "2025-08-01 12:00:00",
324
+ readTimestamp: "2025-08-01 12:00:00",
325
+ regardingJobUuid: "123e4567-9240-4cd8-8a88-2321749a208b",
326
+ },
327
+ });
328
+
329
+ console.log(result);
330
+ }
331
+
332
+ run();
333
+ ```
334
+
335
+ ### Standalone function
336
+
337
+ The standalone function version of this method:
338
+
339
+ ```typescript
340
+ import { ServiceM8Core } from "servicem8/core.js";
341
+ import { staffMessagesUpdateStaffMessages } from "servicem8/funcs/staffMessagesUpdateStaffMessages.js";
342
+
343
+ // Use `ServiceM8Core` for best tree-shaking performance.
344
+ // You can create one instance of it to use across an application.
345
+ const serviceM8 = new ServiceM8Core({
346
+ security: {
347
+ apiKey: process.env["SERVICEM8_API_KEY"] ?? "",
348
+ },
349
+ });
350
+
351
+ async function run() {
352
+ const res = await staffMessagesUpdateStaffMessages(serviceM8, {
353
+ uuid: "b5fd0f7a-6810-4261-acdb-e8e543cf4e72",
354
+ staffMessage: {
355
+ uuid: "123e4567-7db1-4b8f-9739-232178196ccb",
356
+ fromStaffUuid: "123e4567-58aa-41b9-b125-232176f9385b",
357
+ toStaffUuid: "123e4567-166a-4023-9db9-23217d0e17db",
358
+ sentTimestamp: "2025-08-01 12:00:00",
359
+ deliveredTimestamp: "2025-08-01 12:00:00",
360
+ readTimestamp: "2025-08-01 12:00:00",
361
+ regardingJobUuid: "123e4567-9240-4cd8-8a88-2321749a208b",
362
+ },
363
+ });
364
+ if (res.ok) {
365
+ const { value: result } = res;
366
+ console.log(result);
367
+ } else {
368
+ console.log("staffMessagesUpdateStaffMessages failed:", res.error);
369
+ }
370
+ }
371
+
372
+ run();
373
+ ```
374
+
375
+ ### Parameters
376
+
377
+ | Parameter | Type | Required | Description |
378
+ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
379
+ | `request` | [operations.UpdateStaffMessagesRequest](../../models/operations/updatestaffmessagesrequest.md) | :heavy_check_mark: | The request object to use for the request. |
380
+ | `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
381
+ | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. |
382
+ | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
383
+
384
+ ### Response
385
+
386
+ **Promise\<[components.Result](../../models/components/result.md)\>**
387
+
388
+ ### Errors
389
+
390
+ | Error Type | Status Code | Content Type |
391
+ | -------------------------- | -------------------------- | -------------------------- |
392
+ | errors.ErrorT | 400 | application/json |
393
+ | errors.AuthenticationError | 401 | application/json |
394
+ | errors.ForbiddenError | 403 | application/json |
395
+ | errors.NotFoundError | 404 | application/json |
396
+ | errors.RateLimitError | 429 | application/json |
397
+ | errors.ErrorT | 500 | application/json |
398
+ | errors.APIError | 4XX, 5XX | \*/\* |
399
+
400
+ ## deleteStaffMessages
401
+
402
+
403
+
404
+ In ServiceM8, deleting a record sets its `active` field to `0`. Inactive records are still accessible on the API, but are hidden in the UI. Inactive records can be restored by setting their `active` field to `1`.
405
+
406
+
407
+
408
+ #### OAuth Scope
409
+ This endpoint requires the following OAuth scope **publish_messages**.
410
+
411
+
412
+
413
+ ### Example Usage
414
+
415
+ <!-- UsageSnippet language="typescript" operationID="deleteStaffMessages" method="delete" path="/staffmessage/{uuid}.json" -->
416
+ ```typescript
417
+ import { ServiceM8 } from "servicem8";
418
+
419
+ const serviceM8 = new ServiceM8({
420
+ security: {
421
+ apiKey: process.env["SERVICEM8_API_KEY"] ?? "",
422
+ },
423
+ });
424
+
425
+ async function run() {
426
+ const result = await serviceM8.staffMessages.deleteStaffMessages({
427
+ uuid: "f09dd42b-85e0-454a-8494-c181a7fff788",
428
+ });
429
+
430
+ console.log(result);
431
+ }
432
+
433
+ run();
434
+ ```
435
+
436
+ ### Standalone function
437
+
438
+ The standalone function version of this method:
439
+
440
+ ```typescript
441
+ import { ServiceM8Core } from "servicem8/core.js";
442
+ import { staffMessagesDeleteStaffMessages } from "servicem8/funcs/staffMessagesDeleteStaffMessages.js";
443
+
444
+ // Use `ServiceM8Core` for best tree-shaking performance.
445
+ // You can create one instance of it to use across an application.
446
+ const serviceM8 = new ServiceM8Core({
447
+ security: {
448
+ apiKey: process.env["SERVICEM8_API_KEY"] ?? "",
449
+ },
450
+ });
451
+
452
+ async function run() {
453
+ const res = await staffMessagesDeleteStaffMessages(serviceM8, {
454
+ uuid: "f09dd42b-85e0-454a-8494-c181a7fff788",
455
+ });
456
+ if (res.ok) {
457
+ const { value: result } = res;
458
+ console.log(result);
459
+ } else {
460
+ console.log("staffMessagesDeleteStaffMessages failed:", res.error);
461
+ }
462
+ }
463
+
464
+ run();
465
+ ```
466
+
467
+ ### Parameters
468
+
469
+ | Parameter | Type | Required | Description |
470
+ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
471
+ | `request` | [operations.DeleteStaffMessagesRequest](../../models/operations/deletestaffmessagesrequest.md) | :heavy_check_mark: | The request object to use for the request. |
472
+ | `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. |
473
+ | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. |
474
+ | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. |
475
+
476
+ ### Response
477
+
478
+ **Promise\<[components.Result](../../models/components/result.md)\>**
479
+
480
+ ### Errors
481
+
177
482
  | Error Type | Status Code | Content Type |
178
483
  | -------------------------- | -------------------------- | -------------------------- |
179
484
  | errors.ErrorT | 400 | application/json |
@@ -129,12 +129,12 @@ async function run() {
129
129
  const result = await serviceM8.tasks.createTasks({
130
130
  dueDate: "YYYY-MM-DD",
131
131
  name: "<value>",
132
- relatedObjectUuid: "123e4567-6467-4eca-8683-2320af34cfbb",
132
+ relatedObjectUuid: "123e4567-da87-43d7-a5cd-23217dc661bb",
133
133
  completedTimestamp: "2025-08-01 12:00:00",
134
- completedByStaffUuid: "123e4567-eb36-4613-9b22-2320a66f422b",
135
- assignedToStaffUuid: "123e4567-cb63-4275-804b-2320a9b8ec1b",
136
- uuid: "123e4567-e912-4818-95a7-2320af480abb",
137
- createdByStaffUuid: "123e4567-fc53-43a0-bce7-2320ac9aa34b",
134
+ completedByStaffUuid: "123e4567-955b-44cb-bbf9-23217f037a8b",
135
+ assignedToStaffUuid: "123e4567-49bf-4c46-8606-232174a475cb",
136
+ uuid: "123e4567-9ac2-4039-b986-23217c392b2b",
137
+ createdByStaffUuid: "123e4567-08a2-4cb2-880a-232173149edb",
138
138
  createDate: "2025-08-01 12:00:00",
139
139
  });
140
140
 
@@ -164,12 +164,12 @@ async function run() {
164
164
  const res = await tasksCreateTasks(serviceM8, {
165
165
  dueDate: "YYYY-MM-DD",
166
166
  name: "<value>",
167
- relatedObjectUuid: "123e4567-6467-4eca-8683-2320af34cfbb",
167
+ relatedObjectUuid: "123e4567-da87-43d7-a5cd-23217dc661bb",
168
168
  completedTimestamp: "2025-08-01 12:00:00",
169
- completedByStaffUuid: "123e4567-eb36-4613-9b22-2320a66f422b",
170
- assignedToStaffUuid: "123e4567-cb63-4275-804b-2320a9b8ec1b",
171
- uuid: "123e4567-e912-4818-95a7-2320af480abb",
172
- createdByStaffUuid: "123e4567-fc53-43a0-bce7-2320ac9aa34b",
169
+ completedByStaffUuid: "123e4567-955b-44cb-bbf9-23217f037a8b",
170
+ assignedToStaffUuid: "123e4567-49bf-4c46-8606-232174a475cb",
171
+ uuid: "123e4567-9ac2-4039-b986-23217c392b2b",
172
+ createdByStaffUuid: "123e4567-08a2-4cb2-880a-232173149edb",
173
173
  createDate: "2025-08-01 12:00:00",
174
174
  });
175
175
  if (res.ok) {
@@ -322,12 +322,12 @@ async function run() {
322
322
  task: {
323
323
  dueDate: "YYYY-MM-DD",
324
324
  name: "<value>",
325
- relatedObjectUuid: "123e4567-6467-4eca-8683-2320af34cfbb",
325
+ relatedObjectUuid: "123e4567-da87-43d7-a5cd-23217dc661bb",
326
326
  completedTimestamp: "2025-08-01 12:00:00",
327
- completedByStaffUuid: "123e4567-eb36-4613-9b22-2320a66f422b",
328
- assignedToStaffUuid: "123e4567-cb63-4275-804b-2320a9b8ec1b",
329
- uuid: "123e4567-e912-4818-95a7-2320af480abb",
330
- createdByStaffUuid: "123e4567-fc53-43a0-bce7-2320ac9aa34b",
327
+ completedByStaffUuid: "123e4567-955b-44cb-bbf9-23217f037a8b",
328
+ assignedToStaffUuid: "123e4567-49bf-4c46-8606-232174a475cb",
329
+ uuid: "123e4567-9ac2-4039-b986-23217c392b2b",
330
+ createdByStaffUuid: "123e4567-08a2-4cb2-880a-232173149edb",
331
331
  createDate: "2025-08-01 12:00:00",
332
332
  },
333
333
  });
@@ -360,12 +360,12 @@ async function run() {
360
360
  task: {
361
361
  dueDate: "YYYY-MM-DD",
362
362
  name: "<value>",
363
- relatedObjectUuid: "123e4567-6467-4eca-8683-2320af34cfbb",
363
+ relatedObjectUuid: "123e4567-da87-43d7-a5cd-23217dc661bb",
364
364
  completedTimestamp: "2025-08-01 12:00:00",
365
- completedByStaffUuid: "123e4567-eb36-4613-9b22-2320a66f422b",
366
- assignedToStaffUuid: "123e4567-cb63-4275-804b-2320a9b8ec1b",
367
- uuid: "123e4567-e912-4818-95a7-2320af480abb",
368
- createdByStaffUuid: "123e4567-fc53-43a0-bce7-2320ac9aa34b",
365
+ completedByStaffUuid: "123e4567-955b-44cb-bbf9-23217f037a8b",
366
+ assignedToStaffUuid: "123e4567-49bf-4c46-8606-232174a475cb",
367
+ uuid: "123e4567-9ac2-4039-b986-23217c392b2b",
368
+ createdByStaffUuid: "123e4567-08a2-4cb2-880a-232173149edb",
369
369
  createDate: "2025-08-01 12:00:00",
370
370
  },
371
371
  });
@@ -127,7 +127,7 @@ const serviceM8 = new ServiceM8({
127
127
 
128
128
  async function run() {
129
129
  const result = await serviceM8.taxRates.createTaxRates({
130
- uuid: "123e4567-ecc2-4b69-8388-2320a2c8343b",
130
+ uuid: "123e4567-33e9-4ce3-b5b5-232170dcfdfb",
131
131
  name: "<value>",
132
132
  });
133
133
 
@@ -155,7 +155,7 @@ const serviceM8 = new ServiceM8Core({
155
155
 
156
156
  async function run() {
157
157
  const res = await taxRatesCreateTaxRates(serviceM8, {
158
- uuid: "123e4567-ecc2-4b69-8388-2320a2c8343b",
158
+ uuid: "123e4567-33e9-4ce3-b5b5-232170dcfdfb",
159
159
  name: "<value>",
160
160
  });
161
161
  if (res.ok) {
@@ -306,7 +306,7 @@ async function run() {
306
306
  const result = await serviceM8.taxRates.updateTaxRates({
307
307
  uuid: "276d45f4-bf8b-41ae-82d4-264af7ec45cc",
308
308
  taxRate: {
309
- uuid: "123e4567-ecc2-4b69-8388-2320a2c8343b",
309
+ uuid: "123e4567-33e9-4ce3-b5b5-232170dcfdfb",
310
310
  name: "<value>",
311
311
  },
312
312
  });
@@ -337,7 +337,7 @@ async function run() {
337
337
  const res = await taxRatesUpdateTaxRates(serviceM8, {
338
338
  uuid: "276d45f4-bf8b-41ae-82d4-264af7ec45cc",
339
339
  taxRate: {
340
- uuid: "123e4567-ecc2-4b69-8388-2320a2c8343b",
340
+ uuid: "123e4567-33e9-4ce3-b5b5-232170dcfdfb",
341
341
  name: "<value>",
342
342
  },
343
343
  });
@@ -18,7 +18,7 @@
18
18
  },
19
19
  "..": {
20
20
  "name": "servicem8",
21
- "version": "0.9.41",
21
+ "version": "0.9.42",
22
22
  "dependencies": {
23
23
  "zod": "^3.20.0"
24
24
  },
package/jsr.json CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  {
4
4
  "name": "servicem8",
5
- "version": "0.9.41",
5
+ "version": "0.9.42",
6
6
  "exports": {
7
7
  ".": "./src/index.ts",
8
8
  "./models/errors": "./src/models/errors/index.ts",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "servicem8",
3
- "version": "0.9.41",
3
+ "version": "0.9.42",
4
4
  "author": "ServiceM8",
5
5
  "type": "module",
6
6
  "bin": {
@@ -0,0 +1,200 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import { ServiceM8Core } from "../core.js";
6
+ import { encodeJSON } from "../lib/encodings.js";
7
+ import * as M from "../lib/matchers.js";
8
+ import { compactMap } from "../lib/primitives.js";
9
+ import { safeParse } from "../lib/schemas.js";
10
+ import { RequestOptions } from "../lib/sdks.js";
11
+ import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js";
12
+ import { pathToFunc } from "../lib/url.js";
13
+ import * as components from "../models/components/index.js";
14
+ import {
15
+ ConnectionError,
16
+ InvalidRequestError,
17
+ RequestAbortedError,
18
+ RequestTimeoutError,
19
+ UnexpectedClientError,
20
+ } from "../models/errors/httpclienterrors.js";
21
+ import * as errors from "../models/errors/index.js";
22
+ import { ResponseValidationError } from "../models/errors/responsevalidationerror.js";
23
+ import { SDKValidationError } from "../models/errors/sdkvalidationerror.js";
24
+ import { ServiceM8Error } from "../models/errors/servicem8error.js";
25
+ import * as operations from "../models/operations/index.js";
26
+ import { APICall, APIPromise } from "../types/async.js";
27
+ import { Result } from "../types/fp.js";
28
+
29
+ /**
30
+ * Create a new Staff Message
31
+ *
32
+ * @remarks
33
+ *
34
+ * #### OAuth Scope
35
+ * This endpoint requires the following OAuth scope **publish_messages**.
36
+ *
37
+ * #### Record UUID
38
+ * UUID is optional for record creation. If no UUID is supplied, a UUID will be automatically generated for the new record and returned in the `x-record-uuid` response header.
39
+ */
40
+ export function staffMessagesCreateStaffMessages(
41
+ client: ServiceM8Core,
42
+ request: components.StaffMessageInput,
43
+ options?: RequestOptions,
44
+ ): APIPromise<
45
+ Result<
46
+ operations.CreateStaffMessagesResponse,
47
+ | errors.ErrorT
48
+ | errors.AuthenticationError
49
+ | errors.ForbiddenError
50
+ | errors.RateLimitError
51
+ | ServiceM8Error
52
+ | ResponseValidationError
53
+ | ConnectionError
54
+ | RequestAbortedError
55
+ | RequestTimeoutError
56
+ | InvalidRequestError
57
+ | UnexpectedClientError
58
+ | SDKValidationError
59
+ >
60
+ > {
61
+ return new APIPromise($do(
62
+ client,
63
+ request,
64
+ options,
65
+ ));
66
+ }
67
+
68
+ async function $do(
69
+ client: ServiceM8Core,
70
+ request: components.StaffMessageInput,
71
+ options?: RequestOptions,
72
+ ): Promise<
73
+ [
74
+ Result<
75
+ operations.CreateStaffMessagesResponse,
76
+ | errors.ErrorT
77
+ | errors.AuthenticationError
78
+ | errors.ForbiddenError
79
+ | errors.RateLimitError
80
+ | ServiceM8Error
81
+ | ResponseValidationError
82
+ | ConnectionError
83
+ | RequestAbortedError
84
+ | RequestTimeoutError
85
+ | InvalidRequestError
86
+ | UnexpectedClientError
87
+ | SDKValidationError
88
+ >,
89
+ APICall,
90
+ ]
91
+ > {
92
+ const parsed = safeParse(
93
+ request,
94
+ (value) => components.StaffMessageInput$outboundSchema.parse(value),
95
+ "Input validation failed",
96
+ );
97
+ if (!parsed.ok) {
98
+ return [parsed, { status: "invalid" }];
99
+ }
100
+ const payload = parsed.value;
101
+ const body = encodeJSON("body", payload, { explode: true });
102
+
103
+ const path = pathToFunc("/staffmessage.json")();
104
+
105
+ const headers = new Headers(compactMap({
106
+ "Content-Type": "application/json",
107
+ Accept: "application/json",
108
+ }));
109
+
110
+ const securityInput = await extractSecurity(client._options.security);
111
+ const requestSecurity = resolveGlobalSecurity(securityInput);
112
+
113
+ const context = {
114
+ options: client._options,
115
+ baseURL: options?.serverURL ?? client._baseURL ?? "",
116
+ operationID: "createStaffMessages",
117
+ oAuth2Scopes: [],
118
+
119
+ resolvedSecurity: requestSecurity,
120
+
121
+ securitySource: client._options.security,
122
+ retryConfig: options?.retries
123
+ || client._options.retryConfig
124
+ || {
125
+ strategy: "backoff",
126
+ backoff: {
127
+ initialInterval: 500,
128
+ maxInterval: 60000,
129
+ exponent: 1.5,
130
+ maxElapsedTime: 3600000,
131
+ },
132
+ retryConnectionErrors: true,
133
+ }
134
+ || { strategy: "none" },
135
+ retryCodes: options?.retryCodes || ["5XX", "429"],
136
+ };
137
+
138
+ const requestRes = client._createRequest(context, {
139
+ security: requestSecurity,
140
+ method: "POST",
141
+ baseURL: options?.serverURL,
142
+ path: path,
143
+ headers: headers,
144
+ body: body,
145
+ userAgent: client._options.userAgent,
146
+ timeoutMs: options?.timeoutMs || client._options.timeoutMs || -1,
147
+ }, options);
148
+ if (!requestRes.ok) {
149
+ return [requestRes, { status: "invalid" }];
150
+ }
151
+ const req = requestRes.value;
152
+
153
+ const doResult = await client._do(req, {
154
+ context,
155
+ errorCodes: ["400", "401", "403", "429", "4XX", "500", "5XX"],
156
+ retryConfig: context.retryConfig,
157
+ retryCodes: context.retryCodes,
158
+ });
159
+ if (!doResult.ok) {
160
+ return [doResult, { status: "request-error", request: req }];
161
+ }
162
+ const response = doResult.value;
163
+
164
+ const responseFields = {
165
+ HttpMeta: { Response: response, Request: req },
166
+ };
167
+
168
+ const [result] = await M.match<
169
+ operations.CreateStaffMessagesResponse,
170
+ | errors.ErrorT
171
+ | errors.AuthenticationError
172
+ | errors.ForbiddenError
173
+ | errors.RateLimitError
174
+ | ServiceM8Error
175
+ | ResponseValidationError
176
+ | ConnectionError
177
+ | RequestAbortedError
178
+ | RequestTimeoutError
179
+ | InvalidRequestError
180
+ | UnexpectedClientError
181
+ | SDKValidationError
182
+ >(
183
+ M.json(200, operations.CreateStaffMessagesResponse$inboundSchema, {
184
+ hdrs: true,
185
+ key: "Result",
186
+ }),
187
+ M.jsonErr(400, errors.ErrorT$inboundSchema),
188
+ M.jsonErr(401, errors.AuthenticationError$inboundSchema),
189
+ M.jsonErr(403, errors.ForbiddenError$inboundSchema),
190
+ M.jsonErr(429, errors.RateLimitError$inboundSchema),
191
+ M.jsonErr(500, errors.ErrorT$inboundSchema),
192
+ M.fail("4XX"),
193
+ M.fail("5XX"),
194
+ )(response, req, { extraFields: responseFields });
195
+ if (!result.ok) {
196
+ return [result, { status: "complete", request: req, response }];
197
+ }
198
+
199
+ return [result, { status: "complete", request: req, response }];
200
+ }