@keystrokehq/servicem8 0.1.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 (258) hide show
  1. package/README.md +17 -0
  2. package/dist/action.cjs +21 -0
  3. package/dist/action.cjs.map +1 -0
  4. package/dist/action.mjs +21 -0
  5. package/dist/action.mjs.map +1 -0
  6. package/dist/actions/create-job-note.cjs +29 -0
  7. package/dist/actions/create-job-note.cjs.map +1 -0
  8. package/dist/actions/create-job-note.d.cts +9 -0
  9. package/dist/actions/create-job-note.d.cts.map +1 -0
  10. package/dist/actions/create-job-note.d.mts +9 -0
  11. package/dist/actions/create-job-note.d.mts.map +1 -0
  12. package/dist/actions/create-job-note.mjs +26 -0
  13. package/dist/actions/create-job-note.mjs.map +1 -0
  14. package/dist/actions/create-job-payment.cjs +32 -0
  15. package/dist/actions/create-job-payment.cjs.map +1 -0
  16. package/dist/actions/create-job-payment.d.cts +9 -0
  17. package/dist/actions/create-job-payment.d.cts.map +1 -0
  18. package/dist/actions/create-job-payment.d.mts +9 -0
  19. package/dist/actions/create-job-payment.d.mts.map +1 -0
  20. package/dist/actions/create-job-payment.mjs +29 -0
  21. package/dist/actions/create-job-payment.mjs.map +1 -0
  22. package/dist/actions/create-jobs.cjs +51 -0
  23. package/dist/actions/create-jobs.cjs.map +1 -0
  24. package/dist/actions/create-jobs.d.cts +9 -0
  25. package/dist/actions/create-jobs.d.cts.map +1 -0
  26. package/dist/actions/create-jobs.d.mts +9 -0
  27. package/dist/actions/create-jobs.d.mts.map +1 -0
  28. package/dist/actions/create-jobs.mjs +50 -0
  29. package/dist/actions/create-jobs.mjs.map +1 -0
  30. package/dist/actions/delete-custom-field.cjs +19 -0
  31. package/dist/actions/delete-custom-field.cjs.map +1 -0
  32. package/dist/actions/delete-custom-field.d.cts +9 -0
  33. package/dist/actions/delete-custom-field.d.cts.map +1 -0
  34. package/dist/actions/delete-custom-field.d.mts +9 -0
  35. package/dist/actions/delete-custom-field.d.mts.map +1 -0
  36. package/dist/actions/delete-custom-field.mjs +16 -0
  37. package/dist/actions/delete-custom-field.mjs.map +1 -0
  38. package/dist/actions/delete-job-note.cjs +24 -0
  39. package/dist/actions/delete-job-note.cjs.map +1 -0
  40. package/dist/actions/delete-job-note.d.cts +9 -0
  41. package/dist/actions/delete-job-note.d.cts.map +1 -0
  42. package/dist/actions/delete-job-note.d.mts +9 -0
  43. package/dist/actions/delete-job-note.d.mts.map +1 -0
  44. package/dist/actions/delete-job-note.mjs +21 -0
  45. package/dist/actions/delete-job-note.mjs.map +1 -0
  46. package/dist/actions/delete-job-payment.cjs +20 -0
  47. package/dist/actions/delete-job-payment.cjs.map +1 -0
  48. package/dist/actions/delete-job-payment.d.cts +9 -0
  49. package/dist/actions/delete-job-payment.d.cts.map +1 -0
  50. package/dist/actions/delete-job-payment.d.mts +9 -0
  51. package/dist/actions/delete-job-payment.d.mts.map +1 -0
  52. package/dist/actions/delete-job-payment.mjs +17 -0
  53. package/dist/actions/delete-job-payment.mjs.map +1 -0
  54. package/dist/actions/index.cjs +57 -0
  55. package/dist/actions/index.d.cts +29 -0
  56. package/dist/actions/index.d.mts +29 -0
  57. package/dist/actions/index.mjs +29 -0
  58. package/dist/actions/list-all-assets.cjs +16 -0
  59. package/dist/actions/list-all-assets.cjs.map +1 -0
  60. package/dist/actions/list-all-assets.d.cts +9 -0
  61. package/dist/actions/list-all-assets.d.cts.map +1 -0
  62. package/dist/actions/list-all-assets.d.mts +9 -0
  63. package/dist/actions/list-all-assets.d.mts.map +1 -0
  64. package/dist/actions/list-all-assets.mjs +13 -0
  65. package/dist/actions/list-all-assets.mjs.map +1 -0
  66. package/dist/actions/list-all-clients.cjs +16 -0
  67. package/dist/actions/list-all-clients.cjs.map +1 -0
  68. package/dist/actions/list-all-clients.d.cts +9 -0
  69. package/dist/actions/list-all-clients.d.cts.map +1 -0
  70. package/dist/actions/list-all-clients.d.mts +9 -0
  71. package/dist/actions/list-all-clients.d.mts.map +1 -0
  72. package/dist/actions/list-all-clients.mjs +13 -0
  73. package/dist/actions/list-all-clients.mjs.map +1 -0
  74. package/dist/actions/list-all-document-templates.cjs +19 -0
  75. package/dist/actions/list-all-document-templates.cjs.map +1 -0
  76. package/dist/actions/list-all-document-templates.d.cts +9 -0
  77. package/dist/actions/list-all-document-templates.d.cts.map +1 -0
  78. package/dist/actions/list-all-document-templates.d.mts +9 -0
  79. package/dist/actions/list-all-document-templates.d.mts.map +1 -0
  80. package/dist/actions/list-all-document-templates.mjs +16 -0
  81. package/dist/actions/list-all-document-templates.mjs.map +1 -0
  82. package/dist/actions/list-all-forms.cjs +16 -0
  83. package/dist/actions/list-all-forms.cjs.map +1 -0
  84. package/dist/actions/list-all-forms.d.cts +9 -0
  85. package/dist/actions/list-all-forms.d.cts.map +1 -0
  86. package/dist/actions/list-all-forms.d.mts +9 -0
  87. package/dist/actions/list-all-forms.d.mts.map +1 -0
  88. package/dist/actions/list-all-forms.mjs +13 -0
  89. package/dist/actions/list-all-forms.mjs.map +1 -0
  90. package/dist/actions/list-all-job-notes.cjs +32 -0
  91. package/dist/actions/list-all-job-notes.cjs.map +1 -0
  92. package/dist/actions/list-all-job-notes.d.cts +9 -0
  93. package/dist/actions/list-all-job-notes.d.cts.map +1 -0
  94. package/dist/actions/list-all-job-notes.d.mts +9 -0
  95. package/dist/actions/list-all-job-notes.d.mts.map +1 -0
  96. package/dist/actions/list-all-job-notes.mjs +31 -0
  97. package/dist/actions/list-all-job-notes.mjs.map +1 -0
  98. package/dist/actions/list-all-job-queues.cjs +16 -0
  99. package/dist/actions/list-all-job-queues.cjs.map +1 -0
  100. package/dist/actions/list-all-job-queues.d.cts +9 -0
  101. package/dist/actions/list-all-job-queues.d.cts.map +1 -0
  102. package/dist/actions/list-all-job-queues.d.mts +9 -0
  103. package/dist/actions/list-all-job-queues.d.mts.map +1 -0
  104. package/dist/actions/list-all-job-queues.mjs +13 -0
  105. package/dist/actions/list-all-job-queues.mjs.map +1 -0
  106. package/dist/actions/list-all-jobs.cjs +69 -0
  107. package/dist/actions/list-all-jobs.cjs.map +1 -0
  108. package/dist/actions/list-all-jobs.d.cts +9 -0
  109. package/dist/actions/list-all-jobs.d.cts.map +1 -0
  110. package/dist/actions/list-all-jobs.d.mts +9 -0
  111. package/dist/actions/list-all-jobs.d.mts.map +1 -0
  112. package/dist/actions/list-all-jobs.mjs +68 -0
  113. package/dist/actions/list-all-jobs.mjs.map +1 -0
  114. package/dist/actions/list-all-locations.cjs +16 -0
  115. package/dist/actions/list-all-locations.cjs.map +1 -0
  116. package/dist/actions/list-all-locations.d.cts +9 -0
  117. package/dist/actions/list-all-locations.d.cts.map +1 -0
  118. package/dist/actions/list-all-locations.d.mts +9 -0
  119. package/dist/actions/list-all-locations.d.mts.map +1 -0
  120. package/dist/actions/list-all-locations.mjs +13 -0
  121. package/dist/actions/list-all-locations.mjs.map +1 -0
  122. package/dist/actions/list-all-materials.cjs +16 -0
  123. package/dist/actions/list-all-materials.cjs.map +1 -0
  124. package/dist/actions/list-all-materials.d.cts +9 -0
  125. package/dist/actions/list-all-materials.d.cts.map +1 -0
  126. package/dist/actions/list-all-materials.d.mts +9 -0
  127. package/dist/actions/list-all-materials.d.mts.map +1 -0
  128. package/dist/actions/list-all-materials.mjs +13 -0
  129. package/dist/actions/list-all-materials.mjs.map +1 -0
  130. package/dist/actions/list-all-tasks.cjs +34 -0
  131. package/dist/actions/list-all-tasks.cjs.map +1 -0
  132. package/dist/actions/list-all-tasks.d.cts +9 -0
  133. package/dist/actions/list-all-tasks.d.cts.map +1 -0
  134. package/dist/actions/list-all-tasks.d.mts +9 -0
  135. package/dist/actions/list-all-tasks.d.mts.map +1 -0
  136. package/dist/actions/list-all-tasks.mjs +33 -0
  137. package/dist/actions/list-all-tasks.mjs.map +1 -0
  138. package/dist/actions/retrieve-client.cjs +41 -0
  139. package/dist/actions/retrieve-client.cjs.map +1 -0
  140. package/dist/actions/retrieve-client.d.cts +9 -0
  141. package/dist/actions/retrieve-client.d.cts.map +1 -0
  142. package/dist/actions/retrieve-client.d.mts +9 -0
  143. package/dist/actions/retrieve-client.d.mts.map +1 -0
  144. package/dist/actions/retrieve-client.mjs +38 -0
  145. package/dist/actions/retrieve-client.mjs.map +1 -0
  146. package/dist/actions/retrieve-form.cjs +22 -0
  147. package/dist/actions/retrieve-form.cjs.map +1 -0
  148. package/dist/actions/retrieve-form.d.cts +9 -0
  149. package/dist/actions/retrieve-form.d.cts.map +1 -0
  150. package/dist/actions/retrieve-form.d.mts +9 -0
  151. package/dist/actions/retrieve-form.d.mts.map +1 -0
  152. package/dist/actions/retrieve-form.mjs +19 -0
  153. package/dist/actions/retrieve-form.mjs.map +1 -0
  154. package/dist/actions/retrieve-job-activity.cjs +35 -0
  155. package/dist/actions/retrieve-job-activity.cjs.map +1 -0
  156. package/dist/actions/retrieve-job-activity.d.cts +9 -0
  157. package/dist/actions/retrieve-job-activity.d.cts.map +1 -0
  158. package/dist/actions/retrieve-job-activity.d.mts +9 -0
  159. package/dist/actions/retrieve-job-activity.d.mts.map +1 -0
  160. package/dist/actions/retrieve-job-activity.mjs +32 -0
  161. package/dist/actions/retrieve-job-activity.mjs.map +1 -0
  162. package/dist/actions/retrieve-job-note.cjs +25 -0
  163. package/dist/actions/retrieve-job-note.cjs.map +1 -0
  164. package/dist/actions/retrieve-job-note.d.cts +9 -0
  165. package/dist/actions/retrieve-job-note.d.cts.map +1 -0
  166. package/dist/actions/retrieve-job-note.d.mts +9 -0
  167. package/dist/actions/retrieve-job-note.d.mts.map +1 -0
  168. package/dist/actions/retrieve-job-note.mjs +22 -0
  169. package/dist/actions/retrieve-job-note.mjs.map +1 -0
  170. package/dist/actions/retrieve-job-payment.cjs +28 -0
  171. package/dist/actions/retrieve-job-payment.cjs.map +1 -0
  172. package/dist/actions/retrieve-job-payment.d.cts +9 -0
  173. package/dist/actions/retrieve-job-payment.d.cts.map +1 -0
  174. package/dist/actions/retrieve-job-payment.d.mts +9 -0
  175. package/dist/actions/retrieve-job-payment.d.mts.map +1 -0
  176. package/dist/actions/retrieve-job-payment.mjs +25 -0
  177. package/dist/actions/retrieve-job-payment.mjs.map +1 -0
  178. package/dist/actions/retrieve-job-queue.cjs +24 -0
  179. package/dist/actions/retrieve-job-queue.cjs.map +1 -0
  180. package/dist/actions/retrieve-job-queue.d.cts +9 -0
  181. package/dist/actions/retrieve-job-queue.d.cts.map +1 -0
  182. package/dist/actions/retrieve-job-queue.d.mts +9 -0
  183. package/dist/actions/retrieve-job-queue.d.mts.map +1 -0
  184. package/dist/actions/retrieve-job-queue.mjs +21 -0
  185. package/dist/actions/retrieve-job-queue.mjs.map +1 -0
  186. package/dist/actions/retrieve-job.cjs +68 -0
  187. package/dist/actions/retrieve-job.cjs.map +1 -0
  188. package/dist/actions/retrieve-job.d.cts +9 -0
  189. package/dist/actions/retrieve-job.d.cts.map +1 -0
  190. package/dist/actions/retrieve-job.d.mts +9 -0
  191. package/dist/actions/retrieve-job.d.mts.map +1 -0
  192. package/dist/actions/retrieve-job.mjs +65 -0
  193. package/dist/actions/retrieve-job.mjs.map +1 -0
  194. package/dist/actions/retrieve-location.cjs +31 -0
  195. package/dist/actions/retrieve-location.cjs.map +1 -0
  196. package/dist/actions/retrieve-location.d.cts +9 -0
  197. package/dist/actions/retrieve-location.d.cts.map +1 -0
  198. package/dist/actions/retrieve-location.d.mts +9 -0
  199. package/dist/actions/retrieve-location.d.mts.map +1 -0
  200. package/dist/actions/retrieve-location.mjs +28 -0
  201. package/dist/actions/retrieve-location.mjs.map +1 -0
  202. package/dist/actions/retrieve-material.cjs +31 -0
  203. package/dist/actions/retrieve-material.cjs.map +1 -0
  204. package/dist/actions/retrieve-material.d.cts +9 -0
  205. package/dist/actions/retrieve-material.d.cts.map +1 -0
  206. package/dist/actions/retrieve-material.d.mts +9 -0
  207. package/dist/actions/retrieve-material.d.mts.map +1 -0
  208. package/dist/actions/retrieve-material.mjs +28 -0
  209. package/dist/actions/retrieve-material.mjs.map +1 -0
  210. package/dist/actions/retrieve-staff-member.cjs +38 -0
  211. package/dist/actions/retrieve-staff-member.cjs.map +1 -0
  212. package/dist/actions/retrieve-staff-member.d.cts +9 -0
  213. package/dist/actions/retrieve-staff-member.d.cts.map +1 -0
  214. package/dist/actions/retrieve-staff-member.d.mts +9 -0
  215. package/dist/actions/retrieve-staff-member.d.mts.map +1 -0
  216. package/dist/actions/retrieve-staff-member.mjs +35 -0
  217. package/dist/actions/retrieve-staff-member.mjs.map +1 -0
  218. package/dist/actions/update-job-note.cjs +29 -0
  219. package/dist/actions/update-job-note.cjs.map +1 -0
  220. package/dist/actions/update-job-note.d.cts +9 -0
  221. package/dist/actions/update-job-note.d.cts.map +1 -0
  222. package/dist/actions/update-job-note.d.mts +9 -0
  223. package/dist/actions/update-job-note.d.mts.map +1 -0
  224. package/dist/actions/update-job-note.mjs +26 -0
  225. package/dist/actions/update-job-note.mjs.map +1 -0
  226. package/dist/actions/update-job-payment.cjs +36 -0
  227. package/dist/actions/update-job-payment.cjs.map +1 -0
  228. package/dist/actions/update-job-payment.d.cts +9 -0
  229. package/dist/actions/update-job-payment.d.cts.map +1 -0
  230. package/dist/actions/update-job-payment.d.mts +9 -0
  231. package/dist/actions/update-job-payment.d.mts.map +1 -0
  232. package/dist/actions/update-job-payment.mjs +33 -0
  233. package/dist/actions/update-job-payment.mjs.map +1 -0
  234. package/dist/app.cjs +9 -0
  235. package/dist/app.cjs.map +1 -0
  236. package/dist/app.d.cts +5 -0
  237. package/dist/app.d.cts.map +1 -0
  238. package/dist/app.d.mts +5 -0
  239. package/dist/app.d.mts.map +1 -0
  240. package/dist/app.mjs +10 -0
  241. package/dist/app.mjs.map +1 -0
  242. package/dist/catalog.cjs +15 -0
  243. package/dist/catalog.cjs.map +1 -0
  244. package/dist/catalog.d.cts +14 -0
  245. package/dist/catalog.d.cts.map +1 -0
  246. package/dist/catalog.d.mts +14 -0
  247. package/dist/catalog.d.mts.map +1 -0
  248. package/dist/catalog.mjs +15 -0
  249. package/dist/catalog.mjs.map +1 -0
  250. package/dist/execute.cjs +18 -0
  251. package/dist/execute.cjs.map +1 -0
  252. package/dist/execute.mjs +18 -0
  253. package/dist/execute.mjs.map +1 -0
  254. package/dist/index.cjs +62 -0
  255. package/dist/index.d.cts +31 -0
  256. package/dist/index.d.mts +31 -0
  257. package/dist/index.mjs +32 -0
  258. package/package.json +49 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-all-forms.mjs","names":[],"sources":["../../src/actions/list-all-forms.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const Servicem8ListAllFormsInput: z.ZodTypeAny = z.object({\n filter: z.string().describe(\"OData-style filter expression to narrow down forms. Supported operators: eq (equals), ne (not equals), gt (greater than), lt (less than). Combine up to 10 conditions with 'and'. String values must use single quotes. Examples: \\\"active eq 1\\\", \\\"name eq 'Safety Checklist'\\\".\").optional(),\n}).describe(\"Request model for listing all ServiceM8 forms. Supports optional filtering.\");\nexport const Servicem8ListAllFormsOutput: z.ZodTypeAny = z.unknown();\n\nexport const servicem8ListAllForms = action(\"SERVICEM8_LIST_ALL_FORMS\", {\n slug: \"servicem8-list-all-forms\",\n name: \"List All Forms\",\n description: \"Tool to list all ServiceM8 forms. Use when you need to fetch available form templates with optional filters.\",\n input: Servicem8ListAllFormsInput,\n output: Servicem8ListAllFormsOutput,\n});\n"],"mappings":";;AASA,MAAa,wBAAwB,OAAO,4BAA4B;CACtE,MAAM;CACN,MAAM;CACN,aAAa;CACb,OATsD,EAAE,OAAO,EAC/D,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,oRAAoR,CAAC,CAAC,SAAS,EAC7T,CAAC,CAAC,CAAC,SAAS,6EAOH;CACP,QAPuD,EAAE,QAOjD;AACV,CAAC"}
@@ -0,0 +1,32 @@
1
+ const require_action = require("../action.cjs");
2
+ let zod = require("zod");
3
+ //#region src/actions/list-all-job-notes.ts
4
+ const Servicem8ListAllJobNotesInput = zod.z.object({
5
+ cursor: zod.z.string().describe("Cursor for pagination. Use '-1' for the first page. For subsequent pages, use the 'next_cursor' value from the previous response. Each page returns up to 5,000 records.").optional(),
6
+ filter: zod.z.string().describe("OData filter expression to filter notes. Common filters include: 'related_object_uuid eq <job_uuid>' to get notes for a specific job, 'active eq 1' for active notes only. Use actual API field names (e.g., related_object_uuid, not job_uuid).").optional()
7
+ }).describe("Request model for listing all job notes. Supports optional filtering and cursor-based pagination.");
8
+ const Servicem8ListAllJobNotes_NoteSchema = zod.z.object({
9
+ note: zod.z.string().describe("Text content of the note."),
10
+ uuid: zod.z.string().describe("Unique identifier for this note."),
11
+ active: zod.z.number().int().describe("Active status flag: 1 = active, 0 = deleted/archived."),
12
+ job_uuid: zod.z.string().describe("UUID of the job this note is attached to (mapped from related_object_uuid)."),
13
+ edit_date: zod.z.string().describe("Timestamp when the note was last modified (YYYY-MM-DD HH:MM:SS format).").nullable().optional(),
14
+ timestamp: zod.z.string().describe("Timestamp when the note was created (YYYY-MM-DD HH:MM:SS format, mapped from create_date)."),
15
+ related_object: zod.z.string().describe("Type of object this note is related to (typically 'job' for job notes).").nullable().optional(),
16
+ created_by_staff_uuid: zod.z.string().describe("UUID of the staff member who created or last edited the note (mapped from edit_by_staff_uuid).").nullable().optional()
17
+ }).describe("A ServiceM8 job note record.");
18
+ const Servicem8ListAllJobNotesOutput = zod.z.object({
19
+ notes: zod.z.array(Servicem8ListAllJobNotes_NoteSchema).describe("List of job note records."),
20
+ next_cursor: zod.z.string().describe("Cursor for fetching the next page of results. If None/null, there are no more pages. Pass this value as the 'cursor' parameter in the next request.").nullable().optional()
21
+ }).describe("Response model for listing all job notes.");
22
+ const servicem8ListAllJobNotes = require_action.action("SERVICEM8_LIST_ALL_JOB_NOTES", {
23
+ slug: "servicem8-list-all-job-notes",
24
+ name: "List All Job Notes",
25
+ description: "List all job notes from ServiceM8. Use this tool to: - Retrieve all notes across all jobs (no filter) - Get notes for a specific job using filter: \"related_object_uuid eq '<job_uuid>'\" - Filter by active status: \"active eq 1\" for active notes only The response contains a list of note records with their content, timestamps, and associated job UUIDs. For large result sets, use cursor-based pagination: pass cursor='-1' for the first page, then use the 'next_cursor' value from each response to fetch subsequent pages. Each page returns up to 5,000 records.",
26
+ input: Servicem8ListAllJobNotesInput,
27
+ output: Servicem8ListAllJobNotesOutput
28
+ });
29
+ //#endregion
30
+ exports.servicem8ListAllJobNotes = servicem8ListAllJobNotes;
31
+
32
+ //# sourceMappingURL=list-all-job-notes.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-all-job-notes.cjs","names":["z","action"],"sources":["../../src/actions/list-all-job-notes.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const Servicem8ListAllJobNotesInput: z.ZodTypeAny = z.object({\n cursor: z.string().describe(\"Cursor for pagination. Use '-1' for the first page. For subsequent pages, use the 'next_cursor' value from the previous response. Each page returns up to 5,000 records.\").optional(),\n filter: z.string().describe(\"OData filter expression to filter notes. Common filters include: 'related_object_uuid eq <job_uuid>' to get notes for a specific job, 'active eq 1' for active notes only. Use actual API field names (e.g., related_object_uuid, not job_uuid).\").optional(),\n}).describe(\"Request model for listing all job notes. Supports optional filtering and cursor-based pagination.\");\nconst Servicem8ListAllJobNotes_NoteSchema: z.ZodTypeAny = z.object({\n note: z.string().describe(\"Text content of the note.\"),\n uuid: z.string().describe(\"Unique identifier for this note.\"),\n active: z.number().int().describe(\"Active status flag: 1 = active, 0 = deleted/archived.\"),\n job_uuid: z.string().describe(\"UUID of the job this note is attached to (mapped from related_object_uuid).\"),\n edit_date: z.string().describe(\"Timestamp when the note was last modified (YYYY-MM-DD HH:MM:SS format).\").nullable().optional(),\n timestamp: z.string().describe(\"Timestamp when the note was created (YYYY-MM-DD HH:MM:SS format, mapped from create_date).\"),\n related_object: z.string().describe(\"Type of object this note is related to (typically 'job' for job notes).\").nullable().optional(),\n created_by_staff_uuid: z.string().describe(\"UUID of the staff member who created or last edited the note (mapped from edit_by_staff_uuid).\").nullable().optional(),\n}).describe(\"A ServiceM8 job note record.\");\nexport const Servicem8ListAllJobNotesOutput: z.ZodTypeAny = z.object({\n notes: z.array(Servicem8ListAllJobNotes_NoteSchema).describe(\"List of job note records.\"),\n next_cursor: z.string().describe(\"Cursor for fetching the next page of results. If None/null, there are no more pages. Pass this value as the 'cursor' parameter in the next request.\").nullable().optional(),\n}).describe(\"Response model for listing all job notes.\");\n\nexport const servicem8ListAllJobNotes = action(\"SERVICEM8_LIST_ALL_JOB_NOTES\", {\n slug: \"servicem8-list-all-job-notes\",\n name: \"List All Job Notes\",\n description: \"List all job notes from ServiceM8. Use this tool to: - Retrieve all notes across all jobs (no filter) - Get notes for a specific job using filter: \\\"related_object_uuid eq '<job_uuid>'\\\" - Filter by active status: \\\"active eq 1\\\" for active notes only The response contains a list of note records with their content, timestamps, and associated job UUIDs. For large result sets, use cursor-based pagination: pass cursor='-1' for the first page, then use the 'next_cursor' value from each response to fetch subsequent pages. Each page returns up to 5,000 records.\",\n input: Servicem8ListAllJobNotesInput,\n output: Servicem8ListAllJobNotesOutput,\n});\n"],"mappings":";;;AAIA,MAAa,gCAA8CA,IAAAA,EAAE,OAAO;CAClE,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,0KAA0K,CAAC,CAAC,SAAS;CACjN,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,kPAAkP,CAAC,CAAC,SAAS;AAC3R,CAAC,CAAC,CAAC,SAAS,mGAAmG;AAC/G,MAAM,sCAAoDA,IAAAA,EAAE,OAAO;CACjE,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,2BAA2B;CACrD,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,kCAAkC;CAC5D,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,uDAAuD;CACzF,UAAUA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,6EAA6E;CAC3G,WAAWA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,yEAAyE,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC9H,WAAWA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,4FAA4F;CAC3H,gBAAgBA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,yEAAyE,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACnI,uBAAuBA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,gGAAgG,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AACnK,CAAC,CAAC,CAAC,SAAS,8BAA8B;AAC1C,MAAa,iCAA+CA,IAAAA,EAAE,OAAO;CACnE,OAAOA,IAAAA,EAAE,MAAM,mCAAmC,CAAC,CAAC,SAAS,2BAA2B;CACxF,aAAaA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,qJAAqJ,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AAC9M,CAAC,CAAC,CAAC,SAAS,2CAA2C;AAEvD,MAAa,2BAA2BC,eAAAA,OAAO,gCAAgC;CAC7E,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/actions/list-all-job-notes.d.ts
4
+ declare const Servicem8ListAllJobNotesInput: z.ZodTypeAny;
5
+ declare const Servicem8ListAllJobNotesOutput: z.ZodTypeAny;
6
+ declare const servicem8ListAllJobNotes: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
7
+ //#endregion
8
+ export { servicem8ListAllJobNotes };
9
+ //# sourceMappingURL=list-all-job-notes.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-all-job-notes.d.cts","names":[],"sources":["../../src/actions/list-all-job-notes.ts"],"mappings":";;;cAIa,6BAAA,EAA+B,CAAA,CAAE,UAGkE;AAAA,cAWnG,8BAAA,EAAgC,CAAA,CAAE,UAGS;AAAA,cAE3C,wBAAA,gCAAwB,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
@@ -0,0 +1,9 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/actions/list-all-job-notes.d.ts
4
+ declare const Servicem8ListAllJobNotesInput: z.ZodTypeAny;
5
+ declare const Servicem8ListAllJobNotesOutput: z.ZodTypeAny;
6
+ declare const servicem8ListAllJobNotes: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
7
+ //#endregion
8
+ export { servicem8ListAllJobNotes };
9
+ //# sourceMappingURL=list-all-job-notes.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-all-job-notes.d.mts","names":[],"sources":["../../src/actions/list-all-job-notes.ts"],"mappings":";;;cAIa,6BAAA,EAA+B,CAAA,CAAE,UAGkE;AAAA,cAWnG,8BAAA,EAAgC,CAAA,CAAE,UAGS;AAAA,cAE3C,wBAAA,gCAAwB,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
@@ -0,0 +1,31 @@
1
+ import { action } from "../action.mjs";
2
+ import { z } from "zod";
3
+ //#region src/actions/list-all-job-notes.ts
4
+ const Servicem8ListAllJobNotesInput = z.object({
5
+ cursor: z.string().describe("Cursor for pagination. Use '-1' for the first page. For subsequent pages, use the 'next_cursor' value from the previous response. Each page returns up to 5,000 records.").optional(),
6
+ filter: z.string().describe("OData filter expression to filter notes. Common filters include: 'related_object_uuid eq <job_uuid>' to get notes for a specific job, 'active eq 1' for active notes only. Use actual API field names (e.g., related_object_uuid, not job_uuid).").optional()
7
+ }).describe("Request model for listing all job notes. Supports optional filtering and cursor-based pagination.");
8
+ const Servicem8ListAllJobNotes_NoteSchema = z.object({
9
+ note: z.string().describe("Text content of the note."),
10
+ uuid: z.string().describe("Unique identifier for this note."),
11
+ active: z.number().int().describe("Active status flag: 1 = active, 0 = deleted/archived."),
12
+ job_uuid: z.string().describe("UUID of the job this note is attached to (mapped from related_object_uuid)."),
13
+ edit_date: z.string().describe("Timestamp when the note was last modified (YYYY-MM-DD HH:MM:SS format).").nullable().optional(),
14
+ timestamp: z.string().describe("Timestamp when the note was created (YYYY-MM-DD HH:MM:SS format, mapped from create_date)."),
15
+ related_object: z.string().describe("Type of object this note is related to (typically 'job' for job notes).").nullable().optional(),
16
+ created_by_staff_uuid: z.string().describe("UUID of the staff member who created or last edited the note (mapped from edit_by_staff_uuid).").nullable().optional()
17
+ }).describe("A ServiceM8 job note record.");
18
+ const servicem8ListAllJobNotes = action("SERVICEM8_LIST_ALL_JOB_NOTES", {
19
+ slug: "servicem8-list-all-job-notes",
20
+ name: "List All Job Notes",
21
+ description: "List all job notes from ServiceM8. Use this tool to: - Retrieve all notes across all jobs (no filter) - Get notes for a specific job using filter: \"related_object_uuid eq '<job_uuid>'\" - Filter by active status: \"active eq 1\" for active notes only The response contains a list of note records with their content, timestamps, and associated job UUIDs. For large result sets, use cursor-based pagination: pass cursor='-1' for the first page, then use the 'next_cursor' value from each response to fetch subsequent pages. Each page returns up to 5,000 records.",
22
+ input: Servicem8ListAllJobNotesInput,
23
+ output: z.object({
24
+ notes: z.array(Servicem8ListAllJobNotes_NoteSchema).describe("List of job note records."),
25
+ next_cursor: z.string().describe("Cursor for fetching the next page of results. If None/null, there are no more pages. Pass this value as the 'cursor' parameter in the next request.").nullable().optional()
26
+ }).describe("Response model for listing all job notes.")
27
+ });
28
+ //#endregion
29
+ export { servicem8ListAllJobNotes };
30
+
31
+ //# sourceMappingURL=list-all-job-notes.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-all-job-notes.mjs","names":[],"sources":["../../src/actions/list-all-job-notes.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const Servicem8ListAllJobNotesInput: z.ZodTypeAny = z.object({\n cursor: z.string().describe(\"Cursor for pagination. Use '-1' for the first page. For subsequent pages, use the 'next_cursor' value from the previous response. Each page returns up to 5,000 records.\").optional(),\n filter: z.string().describe(\"OData filter expression to filter notes. Common filters include: 'related_object_uuid eq <job_uuid>' to get notes for a specific job, 'active eq 1' for active notes only. Use actual API field names (e.g., related_object_uuid, not job_uuid).\").optional(),\n}).describe(\"Request model for listing all job notes. Supports optional filtering and cursor-based pagination.\");\nconst Servicem8ListAllJobNotes_NoteSchema: z.ZodTypeAny = z.object({\n note: z.string().describe(\"Text content of the note.\"),\n uuid: z.string().describe(\"Unique identifier for this note.\"),\n active: z.number().int().describe(\"Active status flag: 1 = active, 0 = deleted/archived.\"),\n job_uuid: z.string().describe(\"UUID of the job this note is attached to (mapped from related_object_uuid).\"),\n edit_date: z.string().describe(\"Timestamp when the note was last modified (YYYY-MM-DD HH:MM:SS format).\").nullable().optional(),\n timestamp: z.string().describe(\"Timestamp when the note was created (YYYY-MM-DD HH:MM:SS format, mapped from create_date).\"),\n related_object: z.string().describe(\"Type of object this note is related to (typically 'job' for job notes).\").nullable().optional(),\n created_by_staff_uuid: z.string().describe(\"UUID of the staff member who created or last edited the note (mapped from edit_by_staff_uuid).\").nullable().optional(),\n}).describe(\"A ServiceM8 job note record.\");\nexport const Servicem8ListAllJobNotesOutput: z.ZodTypeAny = z.object({\n notes: z.array(Servicem8ListAllJobNotes_NoteSchema).describe(\"List of job note records.\"),\n next_cursor: z.string().describe(\"Cursor for fetching the next page of results. If None/null, there are no more pages. Pass this value as the 'cursor' parameter in the next request.\").nullable().optional(),\n}).describe(\"Response model for listing all job notes.\");\n\nexport const servicem8ListAllJobNotes = action(\"SERVICEM8_LIST_ALL_JOB_NOTES\", {\n slug: \"servicem8-list-all-job-notes\",\n name: \"List All Job Notes\",\n description: \"List all job notes from ServiceM8. Use this tool to: - Retrieve all notes across all jobs (no filter) - Get notes for a specific job using filter: \\\"related_object_uuid eq '<job_uuid>'\\\" - Filter by active status: \\\"active eq 1\\\" for active notes only The response contains a list of note records with their content, timestamps, and associated job UUIDs. For large result sets, use cursor-based pagination: pass cursor='-1' for the first page, then use the 'next_cursor' value from each response to fetch subsequent pages. Each page returns up to 5,000 records.\",\n input: Servicem8ListAllJobNotesInput,\n output: Servicem8ListAllJobNotesOutput,\n});\n"],"mappings":";;;AAIA,MAAa,gCAA8C,EAAE,OAAO;CAClE,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,0KAA0K,CAAC,CAAC,SAAS;CACjN,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,kPAAkP,CAAC,CAAC,SAAS;AAC3R,CAAC,CAAC,CAAC,SAAS,mGAAmG;AAC/G,MAAM,sCAAoD,EAAE,OAAO;CACjE,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,2BAA2B;CACrD,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,kCAAkC;CAC5D,QAAQ,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,uDAAuD;CACzF,UAAU,EAAE,OAAO,CAAC,CAAC,SAAS,6EAA6E;CAC3G,WAAW,EAAE,OAAO,CAAC,CAAC,SAAS,yEAAyE,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC9H,WAAW,EAAE,OAAO,CAAC,CAAC,SAAS,4FAA4F;CAC3H,gBAAgB,EAAE,OAAO,CAAC,CAAC,SAAS,yEAAyE,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACnI,uBAAuB,EAAE,OAAO,CAAC,CAAC,SAAS,gGAAgG,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AACnK,CAAC,CAAC,CAAC,SAAS,8BAA8B;AAM1C,MAAa,2BAA2B,OAAO,gCAAgC;CAC7E,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAV0D,EAAE,OAAO;EACnE,OAAO,EAAE,MAAM,mCAAmC,CAAC,CAAC,SAAS,2BAA2B;EACxF,aAAa,EAAE,OAAO,CAAC,CAAC,SAAS,qJAAqJ,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC9M,CAAC,CAAC,CAAC,SAAS,2CAOF;AACV,CAAC"}
@@ -0,0 +1,16 @@
1
+ const require_action = require("../action.cjs");
2
+ let zod = require("zod");
3
+ //#region src/actions/list-all-job-queues.ts
4
+ const Servicem8ListAllJobQueuesInput = zod.z.object({}).describe("Request model for listing all ServiceM8 job queues.");
5
+ const Servicem8ListAllJobQueuesOutput = zod.z.unknown();
6
+ const servicem8ListAllJobQueues = require_action.action("SERVICEM8_LIST_ALL_JOB_QUEUES", {
7
+ slug: "servicem8-list-all-job-queues",
8
+ name: "List All Job Queues",
9
+ description: "List all job queues in ServiceM8. Job queues are virtual folders for organizing jobs on hold. Use this to fetch available queues before assigning jobs to a queue, or to check queue configurations. Returns both regular queues (for jobs waiting on external actions) and assignable queues (for staff assignments).",
10
+ input: Servicem8ListAllJobQueuesInput,
11
+ output: Servicem8ListAllJobQueuesOutput
12
+ });
13
+ //#endregion
14
+ exports.servicem8ListAllJobQueues = servicem8ListAllJobQueues;
15
+
16
+ //# sourceMappingURL=list-all-job-queues.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-all-job-queues.cjs","names":["z","action"],"sources":["../../src/actions/list-all-job-queues.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const Servicem8ListAllJobQueuesInput: z.ZodTypeAny = z.object({}).describe(\"Request model for listing all ServiceM8 job queues.\");\nexport const Servicem8ListAllJobQueuesOutput: z.ZodTypeAny = z.unknown();\n\nexport const servicem8ListAllJobQueues = action(\"SERVICEM8_LIST_ALL_JOB_QUEUES\", {\n slug: \"servicem8-list-all-job-queues\",\n name: \"List All Job Queues\",\n description: \"List all job queues in ServiceM8. Job queues are virtual folders for organizing jobs on hold. Use this to fetch available queues before assigning jobs to a queue, or to check queue configurations. Returns both regular queues (for jobs waiting on external actions) and assignable queues (for staff assignments).\",\n input: Servicem8ListAllJobQueuesInput,\n output: Servicem8ListAllJobQueuesOutput,\n});\n"],"mappings":";;;AAIA,MAAa,iCAA+CA,IAAAA,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,qDAAqD;AACvI,MAAa,kCAAgDA,IAAAA,EAAE,QAAQ;AAEvE,MAAa,4BAA4BC,eAAAA,OAAO,iCAAiC;CAC/E,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/actions/list-all-job-queues.d.ts
4
+ declare const Servicem8ListAllJobQueuesInput: z.ZodTypeAny;
5
+ declare const Servicem8ListAllJobQueuesOutput: z.ZodTypeAny;
6
+ declare const servicem8ListAllJobQueues: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
7
+ //#endregion
8
+ export { servicem8ListAllJobQueues };
9
+ //# sourceMappingURL=list-all-job-queues.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-all-job-queues.d.cts","names":[],"sources":["../../src/actions/list-all-job-queues.ts"],"mappings":";;;cAIa,8BAAA,EAAgC,CAAA,CAAE,UAAyF;AAAA,cAC3H,+BAAA,EAAiC,CAAA,CAAE,UAAwB;AAAA,cAE3D,yBAAA,gCAAyB,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
@@ -0,0 +1,9 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/actions/list-all-job-queues.d.ts
4
+ declare const Servicem8ListAllJobQueuesInput: z.ZodTypeAny;
5
+ declare const Servicem8ListAllJobQueuesOutput: z.ZodTypeAny;
6
+ declare const servicem8ListAllJobQueues: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
7
+ //#endregion
8
+ export { servicem8ListAllJobQueues };
9
+ //# sourceMappingURL=list-all-job-queues.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-all-job-queues.d.mts","names":[],"sources":["../../src/actions/list-all-job-queues.ts"],"mappings":";;;cAIa,8BAAA,EAAgC,CAAA,CAAE,UAAyF;AAAA,cAC3H,+BAAA,EAAiC,CAAA,CAAE,UAAwB;AAAA,cAE3D,yBAAA,gCAAyB,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
@@ -0,0 +1,13 @@
1
+ import { action } from "../action.mjs";
2
+ import { z } from "zod";
3
+ const servicem8ListAllJobQueues = action("SERVICEM8_LIST_ALL_JOB_QUEUES", {
4
+ slug: "servicem8-list-all-job-queues",
5
+ name: "List All Job Queues",
6
+ description: "List all job queues in ServiceM8. Job queues are virtual folders for organizing jobs on hold. Use this to fetch available queues before assigning jobs to a queue, or to check queue configurations. Returns both regular queues (for jobs waiting on external actions) and assignable queues (for staff assignments).",
7
+ input: z.object({}).describe("Request model for listing all ServiceM8 job queues."),
8
+ output: z.unknown()
9
+ });
10
+ //#endregion
11
+ export { servicem8ListAllJobQueues };
12
+
13
+ //# sourceMappingURL=list-all-job-queues.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-all-job-queues.mjs","names":[],"sources":["../../src/actions/list-all-job-queues.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const Servicem8ListAllJobQueuesInput: z.ZodTypeAny = z.object({}).describe(\"Request model for listing all ServiceM8 job queues.\");\nexport const Servicem8ListAllJobQueuesOutput: z.ZodTypeAny = z.unknown();\n\nexport const servicem8ListAllJobQueues = action(\"SERVICEM8_LIST_ALL_JOB_QUEUES\", {\n slug: \"servicem8-list-all-job-queues\",\n name: \"List All Job Queues\",\n description: \"List all job queues in ServiceM8. Job queues are virtual folders for organizing jobs on hold. Use this to fetch available queues before assigning jobs to a queue, or to check queue configurations. Returns both regular queues (for jobs waiting on external actions) and assignable queues (for staff assignments).\",\n input: Servicem8ListAllJobQueuesInput,\n output: Servicem8ListAllJobQueuesOutput,\n});\n"],"mappings":";;AAOA,MAAa,4BAA4B,OAAO,iCAAiC;CAC/E,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAP0D,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,qDAOzE;CACP,QAP2D,EAAE,QAOrD;AACV,CAAC"}
@@ -0,0 +1,69 @@
1
+ const require_action = require("../action.cjs");
2
+ let zod = require("zod");
3
+ //#region src/actions/list-all-jobs.ts
4
+ const Servicem8ListAllJobsInput = zod.z.object({ filter: zod.z.string().describe("OData-style filter expression to narrow down jobs. Supported operators: eq (equals), ne (not equals), gt (greater than), lt (less than). Combine up to 10 conditions with 'and'. String values must use single quotes. Examples: \"status eq 'Completed'\", \"status eq 'Work Order' and active eq 1\", \"date gt '2024-01-01'\".").optional() }).describe("Query parameters for listing ServiceM8 jobs.");
5
+ const Servicem8ListAllJobs_JobSchema = zod.z.object({
6
+ lat: zod.z.number().describe("Latitude coordinate of the job location.").nullable().optional(),
7
+ lng: zod.z.number().describe("Longitude coordinate of the job location.").nullable().optional(),
8
+ date: zod.z.string().describe("Date the job was created or scheduled."),
9
+ uuid: zod.z.string().describe("Unique identifier for this job record."),
10
+ active: zod.z.number().int().describe("Active flag (1 active, 0 deleted).").nullable().optional(),
11
+ badges: zod.z.string().describe("Comma-separated list of badge UUIDs associated with this job.").nullable().optional(),
12
+ status: zod.z.enum([
13
+ "Quote",
14
+ "Work Order",
15
+ "Unsuccessful",
16
+ "Completed"
17
+ ]).describe("Current status of the job."),
18
+ geo_city: zod.z.string().describe("City from geocoded address.").nullable().optional(),
19
+ edit_date: zod.z.string().describe("Timestamp at which the record was last modified.").nullable().optional(),
20
+ geo_state: zod.z.string().describe("State from geocoded address.").nullable().optional(),
21
+ geo_number: zod.z.string().describe("House number from geocoded address.").nullable().optional(),
22
+ geo_street: zod.z.string().describe("Street from geocoded address.").nullable().optional(),
23
+ queue_uuid: zod.z.string().describe("UUID of the queue this job is assigned to.").nullable().optional(),
24
+ quote_date: zod.z.string().describe("Timestamp when the job was quoted.").nullable().optional(),
25
+ quote_sent: zod.z.number().int().describe("Boolean flag (0 or 1) indicating if quote was sent.").nullable().optional(),
26
+ geo_country: zod.z.string().describe("Country from geocoded address.").nullable().optional(),
27
+ job_address: zod.z.string().describe("Physical address where the job is to be performed (max length 500).").nullable().optional(),
28
+ company_uuid: zod.z.string().describe("UUID of the client associated with this job."),
29
+ geo_is_valid: zod.z.string().describe("Whether geocoding for the job address was successful.").nullable().optional(),
30
+ geo_postcode: zod.z.string().describe("Postal code from geocoded address.").nullable().optional(),
31
+ invoice_sent: zod.z.string().describe("Boolean flag indicating whether an invoice has been sent.").nullable().optional(),
32
+ payment_date: zod.z.string().describe("Payment date (not used; refer to JobPayment endpoint).").nullable().optional(),
33
+ category_uuid: zod.z.string().describe("UUID of the job category.").nullable().optional(),
34
+ payment_amount: zod.z.string().describe("Payment amount (not used; refer to JobPayment endpoint).").nullable().optional(),
35
+ payment_method: zod.z.string().describe("Payment method (not used; refer to JobPayment endpoint).").nullable().optional(),
36
+ billing_address: zod.z.string().describe("Address for invoicing; defaults to job address if not specified.").nullable().optional(),
37
+ completion_date: zod.z.string().describe("Timestamp when the job was marked complete.").nullable().optional(),
38
+ job_description: zod.z.string().describe("Description of the job.").nullable().optional(),
39
+ work_order_date: zod.z.string().describe("Timestamp when the job became a work order.").nullable().optional(),
40
+ generated_job_id: zod.z.string().describe("System-generated unique job identifier (read-only).").nullable().optional(),
41
+ payment_received: zod.z.string().describe("Flag indicating payment received status.").nullable().optional(),
42
+ quote_sent_stamp: zod.z.string().describe("Timestamp when the quote was sent (YYYY-MM-DD HH:MM:SS).").nullable().optional(),
43
+ payment_processed: zod.z.string().describe("Flag indicating payment processed status.").nullable().optional(),
44
+ queue_expiry_date: zod.z.string().describe("Timestamp when queue assignment expires (YYYY-MM-DD HH:MM:SS).").nullable().optional(),
45
+ unsuccessful_date: zod.z.string().describe("Timestamp when job was marked unsuccessful.").nullable().optional(),
46
+ invoice_sent_stamp: zod.z.string().describe("Timestamp when the invoice was sent (YYYY-MM-DD HH:MM:SS).").nullable().optional(),
47
+ total_invoice_amount: zod.z.string().describe("Total invoiced amount for the job.").nullable().optional(),
48
+ created_by_staff_uuid: zod.z.string().describe("UUID of the staff member who created this job.").nullable().optional(),
49
+ purchase_order_number: zod.z.string().describe("Client purchase order reference number (max length 100).").nullable().optional(),
50
+ work_done_description: zod.z.string().describe("Work done description.").nullable().optional(),
51
+ payment_received_stamp: zod.z.string().describe("Timestamp when payment was received.").nullable().optional(),
52
+ payment_processed_stamp: zod.z.string().describe("Timestamp when payment was processed.").nullable().optional(),
53
+ payment_actioned_by_uuid: zod.z.string().describe("UUID of staff who actioned payment (not used).").nullable().optional(),
54
+ queue_assigned_staff_uuid: zod.z.string().describe("UUID of staff responsible for the job in the queue.").nullable().optional(),
55
+ completion_actioned_by_uuid: zod.z.string().describe("UUID of staff who marked the job as completed.").nullable().optional(),
56
+ job_is_scheduled_until_stamp: zod.z.string().describe("Timestamp until which the job is scheduled.").nullable().optional()
57
+ });
58
+ const Servicem8ListAllJobsOutput = zod.z.object({ jobs: zod.z.array(Servicem8ListAllJobs_JobSchema).describe("Array of jobs returned by ServiceM8.") }).describe("Response model for listing ServiceM8 jobs.");
59
+ const servicem8ListAllJobs = require_action.action("SERVICEM8_LIST_ALL_JOBS", {
60
+ slug: "servicem8-list-all-jobs",
61
+ name: "List All Jobs",
62
+ description: "Tool to list all jobs. Use when you need to fetch all job records from your ServiceM8 account.",
63
+ input: Servicem8ListAllJobsInput,
64
+ output: Servicem8ListAllJobsOutput
65
+ });
66
+ //#endregion
67
+ exports.servicem8ListAllJobs = servicem8ListAllJobs;
68
+
69
+ //# sourceMappingURL=list-all-jobs.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-all-jobs.cjs","names":["z","action"],"sources":["../../src/actions/list-all-jobs.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const Servicem8ListAllJobsInput: z.ZodTypeAny = z.object({\n filter: z.string().describe(\"OData-style filter expression to narrow down jobs. Supported operators: eq (equals), ne (not equals), gt (greater than), lt (less than). Combine up to 10 conditions with 'and'. String values must use single quotes. Examples: \\\"status eq 'Completed'\\\", \\\"status eq 'Work Order' and active eq 1\\\", \\\"date gt '2024-01-01'\\\".\").optional(),\n}).describe(\"Query parameters for listing ServiceM8 jobs.\");\nconst Servicem8ListAllJobs_JobSchema: z.ZodTypeAny = z.object({\n lat: z.number().describe(\"Latitude coordinate of the job location.\").nullable().optional(),\n lng: z.number().describe(\"Longitude coordinate of the job location.\").nullable().optional(),\n date: z.string().describe(\"Date the job was created or scheduled.\"),\n uuid: z.string().describe(\"Unique identifier for this job record.\"),\n active: z.number().int().describe(\"Active flag (1 active, 0 deleted).\").nullable().optional(),\n badges: z.string().describe(\"Comma-separated list of badge UUIDs associated with this job.\").nullable().optional(),\n status: z.enum([\"Quote\", \"Work Order\", \"Unsuccessful\", \"Completed\"]).describe(\"Current status of the job.\"),\n geo_city: z.string().describe(\"City from geocoded address.\").nullable().optional(),\n edit_date: z.string().describe(\"Timestamp at which the record was last modified.\").nullable().optional(),\n geo_state: z.string().describe(\"State from geocoded address.\").nullable().optional(),\n geo_number: z.string().describe(\"House number from geocoded address.\").nullable().optional(),\n geo_street: z.string().describe(\"Street from geocoded address.\").nullable().optional(),\n queue_uuid: z.string().describe(\"UUID of the queue this job is assigned to.\").nullable().optional(),\n quote_date: z.string().describe(\"Timestamp when the job was quoted.\").nullable().optional(),\n quote_sent: z.number().int().describe(\"Boolean flag (0 or 1) indicating if quote was sent.\").nullable().optional(),\n geo_country: z.string().describe(\"Country from geocoded address.\").nullable().optional(),\n job_address: z.string().describe(\"Physical address where the job is to be performed (max length 500).\").nullable().optional(),\n company_uuid: z.string().describe(\"UUID of the client associated with this job.\"),\n geo_is_valid: z.string().describe(\"Whether geocoding for the job address was successful.\").nullable().optional(),\n geo_postcode: z.string().describe(\"Postal code from geocoded address.\").nullable().optional(),\n invoice_sent: z.string().describe(\"Boolean flag indicating whether an invoice has been sent.\").nullable().optional(),\n payment_date: z.string().describe(\"Payment date (not used; refer to JobPayment endpoint).\").nullable().optional(),\n category_uuid: z.string().describe(\"UUID of the job category.\").nullable().optional(),\n payment_amount: z.string().describe(\"Payment amount (not used; refer to JobPayment endpoint).\").nullable().optional(),\n payment_method: z.string().describe(\"Payment method (not used; refer to JobPayment endpoint).\").nullable().optional(),\n billing_address: z.string().describe(\"Address for invoicing; defaults to job address if not specified.\").nullable().optional(),\n completion_date: z.string().describe(\"Timestamp when the job was marked complete.\").nullable().optional(),\n job_description: z.string().describe(\"Description of the job.\").nullable().optional(),\n work_order_date: z.string().describe(\"Timestamp when the job became a work order.\").nullable().optional(),\n generated_job_id: z.string().describe(\"System-generated unique job identifier (read-only).\").nullable().optional(),\n payment_received: z.string().describe(\"Flag indicating payment received status.\").nullable().optional(),\n quote_sent_stamp: z.string().describe(\"Timestamp when the quote was sent (YYYY-MM-DD HH:MM:SS).\").nullable().optional(),\n payment_processed: z.string().describe(\"Flag indicating payment processed status.\").nullable().optional(),\n queue_expiry_date: z.string().describe(\"Timestamp when queue assignment expires (YYYY-MM-DD HH:MM:SS).\").nullable().optional(),\n unsuccessful_date: z.string().describe(\"Timestamp when job was marked unsuccessful.\").nullable().optional(),\n invoice_sent_stamp: z.string().describe(\"Timestamp when the invoice was sent (YYYY-MM-DD HH:MM:SS).\").nullable().optional(),\n total_invoice_amount: z.string().describe(\"Total invoiced amount for the job.\").nullable().optional(),\n created_by_staff_uuid: z.string().describe(\"UUID of the staff member who created this job.\").nullable().optional(),\n purchase_order_number: z.string().describe(\"Client purchase order reference number (max length 100).\").nullable().optional(),\n work_done_description: z.string().describe(\"Work done description.\").nullable().optional(),\n payment_received_stamp: z.string().describe(\"Timestamp when payment was received.\").nullable().optional(),\n payment_processed_stamp: z.string().describe(\"Timestamp when payment was processed.\").nullable().optional(),\n payment_actioned_by_uuid: z.string().describe(\"UUID of staff who actioned payment (not used).\").nullable().optional(),\n queue_assigned_staff_uuid: z.string().describe(\"UUID of staff responsible for the job in the queue.\").nullable().optional(),\n completion_actioned_by_uuid: z.string().describe(\"UUID of staff who marked the job as completed.\").nullable().optional(),\n job_is_scheduled_until_stamp: z.string().describe(\"Timestamp until which the job is scheduled.\").nullable().optional(),\n});\nexport const Servicem8ListAllJobsOutput: z.ZodTypeAny = z.object({\n jobs: z.array(Servicem8ListAllJobs_JobSchema).describe(\"Array of jobs returned by ServiceM8.\"),\n}).describe(\"Response model for listing ServiceM8 jobs.\");\n\nexport const servicem8ListAllJobs = action(\"SERVICEM8_LIST_ALL_JOBS\", {\n slug: \"servicem8-list-all-jobs\",\n name: \"List All Jobs\",\n description: \"Tool to list all jobs. Use when you need to fetch all job records from your ServiceM8 account.\",\n input: Servicem8ListAllJobsInput,\n output: Servicem8ListAllJobsOutput,\n});\n"],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/actions/list-all-jobs.d.ts
4
+ declare const Servicem8ListAllJobsInput: z.ZodTypeAny;
5
+ declare const Servicem8ListAllJobsOutput: z.ZodTypeAny;
6
+ declare const servicem8ListAllJobs: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
7
+ //#endregion
8
+ export { servicem8ListAllJobs };
9
+ //# sourceMappingURL=list-all-jobs.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-all-jobs.d.cts","names":[],"sources":["../../src/actions/list-all-jobs.ts"],"mappings":";;;cAIa,yBAAA,EAA2B,CAAA,CAAE,UAEiB;AAAA,cAiD9C,0BAAA,EAA4B,CAAA,CAAE,UAEc;AAAA,cAE5C,oBAAA,gCAAoB,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
@@ -0,0 +1,9 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/actions/list-all-jobs.d.ts
4
+ declare const Servicem8ListAllJobsInput: z.ZodTypeAny;
5
+ declare const Servicem8ListAllJobsOutput: z.ZodTypeAny;
6
+ declare const servicem8ListAllJobs: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
7
+ //#endregion
8
+ export { servicem8ListAllJobs };
9
+ //# sourceMappingURL=list-all-jobs.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-all-jobs.d.mts","names":[],"sources":["../../src/actions/list-all-jobs.ts"],"mappings":";;;cAIa,yBAAA,EAA2B,CAAA,CAAE,UAEiB;AAAA,cAiD9C,0BAAA,EAA4B,CAAA,CAAE,UAEc;AAAA,cAE5C,oBAAA,gCAAoB,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
@@ -0,0 +1,68 @@
1
+ import { action } from "../action.mjs";
2
+ import { z } from "zod";
3
+ //#region src/actions/list-all-jobs.ts
4
+ const Servicem8ListAllJobsInput = z.object({ filter: z.string().describe("OData-style filter expression to narrow down jobs. Supported operators: eq (equals), ne (not equals), gt (greater than), lt (less than). Combine up to 10 conditions with 'and'. String values must use single quotes. Examples: \"status eq 'Completed'\", \"status eq 'Work Order' and active eq 1\", \"date gt '2024-01-01'\".").optional() }).describe("Query parameters for listing ServiceM8 jobs.");
5
+ const Servicem8ListAllJobs_JobSchema = z.object({
6
+ lat: z.number().describe("Latitude coordinate of the job location.").nullable().optional(),
7
+ lng: z.number().describe("Longitude coordinate of the job location.").nullable().optional(),
8
+ date: z.string().describe("Date the job was created or scheduled."),
9
+ uuid: z.string().describe("Unique identifier for this job record."),
10
+ active: z.number().int().describe("Active flag (1 active, 0 deleted).").nullable().optional(),
11
+ badges: z.string().describe("Comma-separated list of badge UUIDs associated with this job.").nullable().optional(),
12
+ status: z.enum([
13
+ "Quote",
14
+ "Work Order",
15
+ "Unsuccessful",
16
+ "Completed"
17
+ ]).describe("Current status of the job."),
18
+ geo_city: z.string().describe("City from geocoded address.").nullable().optional(),
19
+ edit_date: z.string().describe("Timestamp at which the record was last modified.").nullable().optional(),
20
+ geo_state: z.string().describe("State from geocoded address.").nullable().optional(),
21
+ geo_number: z.string().describe("House number from geocoded address.").nullable().optional(),
22
+ geo_street: z.string().describe("Street from geocoded address.").nullable().optional(),
23
+ queue_uuid: z.string().describe("UUID of the queue this job is assigned to.").nullable().optional(),
24
+ quote_date: z.string().describe("Timestamp when the job was quoted.").nullable().optional(),
25
+ quote_sent: z.number().int().describe("Boolean flag (0 or 1) indicating if quote was sent.").nullable().optional(),
26
+ geo_country: z.string().describe("Country from geocoded address.").nullable().optional(),
27
+ job_address: z.string().describe("Physical address where the job is to be performed (max length 500).").nullable().optional(),
28
+ company_uuid: z.string().describe("UUID of the client associated with this job."),
29
+ geo_is_valid: z.string().describe("Whether geocoding for the job address was successful.").nullable().optional(),
30
+ geo_postcode: z.string().describe("Postal code from geocoded address.").nullable().optional(),
31
+ invoice_sent: z.string().describe("Boolean flag indicating whether an invoice has been sent.").nullable().optional(),
32
+ payment_date: z.string().describe("Payment date (not used; refer to JobPayment endpoint).").nullable().optional(),
33
+ category_uuid: z.string().describe("UUID of the job category.").nullable().optional(),
34
+ payment_amount: z.string().describe("Payment amount (not used; refer to JobPayment endpoint).").nullable().optional(),
35
+ payment_method: z.string().describe("Payment method (not used; refer to JobPayment endpoint).").nullable().optional(),
36
+ billing_address: z.string().describe("Address for invoicing; defaults to job address if not specified.").nullable().optional(),
37
+ completion_date: z.string().describe("Timestamp when the job was marked complete.").nullable().optional(),
38
+ job_description: z.string().describe("Description of the job.").nullable().optional(),
39
+ work_order_date: z.string().describe("Timestamp when the job became a work order.").nullable().optional(),
40
+ generated_job_id: z.string().describe("System-generated unique job identifier (read-only).").nullable().optional(),
41
+ payment_received: z.string().describe("Flag indicating payment received status.").nullable().optional(),
42
+ quote_sent_stamp: z.string().describe("Timestamp when the quote was sent (YYYY-MM-DD HH:MM:SS).").nullable().optional(),
43
+ payment_processed: z.string().describe("Flag indicating payment processed status.").nullable().optional(),
44
+ queue_expiry_date: z.string().describe("Timestamp when queue assignment expires (YYYY-MM-DD HH:MM:SS).").nullable().optional(),
45
+ unsuccessful_date: z.string().describe("Timestamp when job was marked unsuccessful.").nullable().optional(),
46
+ invoice_sent_stamp: z.string().describe("Timestamp when the invoice was sent (YYYY-MM-DD HH:MM:SS).").nullable().optional(),
47
+ total_invoice_amount: z.string().describe("Total invoiced amount for the job.").nullable().optional(),
48
+ created_by_staff_uuid: z.string().describe("UUID of the staff member who created this job.").nullable().optional(),
49
+ purchase_order_number: z.string().describe("Client purchase order reference number (max length 100).").nullable().optional(),
50
+ work_done_description: z.string().describe("Work done description.").nullable().optional(),
51
+ payment_received_stamp: z.string().describe("Timestamp when payment was received.").nullable().optional(),
52
+ payment_processed_stamp: z.string().describe("Timestamp when payment was processed.").nullable().optional(),
53
+ payment_actioned_by_uuid: z.string().describe("UUID of staff who actioned payment (not used).").nullable().optional(),
54
+ queue_assigned_staff_uuid: z.string().describe("UUID of staff responsible for the job in the queue.").nullable().optional(),
55
+ completion_actioned_by_uuid: z.string().describe("UUID of staff who marked the job as completed.").nullable().optional(),
56
+ job_is_scheduled_until_stamp: z.string().describe("Timestamp until which the job is scheduled.").nullable().optional()
57
+ });
58
+ const servicem8ListAllJobs = action("SERVICEM8_LIST_ALL_JOBS", {
59
+ slug: "servicem8-list-all-jobs",
60
+ name: "List All Jobs",
61
+ description: "Tool to list all jobs. Use when you need to fetch all job records from your ServiceM8 account.",
62
+ input: Servicem8ListAllJobsInput,
63
+ output: z.object({ jobs: z.array(Servicem8ListAllJobs_JobSchema).describe("Array of jobs returned by ServiceM8.") }).describe("Response model for listing ServiceM8 jobs.")
64
+ });
65
+ //#endregion
66
+ export { servicem8ListAllJobs };
67
+
68
+ //# sourceMappingURL=list-all-jobs.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-all-jobs.mjs","names":[],"sources":["../../src/actions/list-all-jobs.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const Servicem8ListAllJobsInput: z.ZodTypeAny = z.object({\n filter: z.string().describe(\"OData-style filter expression to narrow down jobs. Supported operators: eq (equals), ne (not equals), gt (greater than), lt (less than). Combine up to 10 conditions with 'and'. String values must use single quotes. Examples: \\\"status eq 'Completed'\\\", \\\"status eq 'Work Order' and active eq 1\\\", \\\"date gt '2024-01-01'\\\".\").optional(),\n}).describe(\"Query parameters for listing ServiceM8 jobs.\");\nconst Servicem8ListAllJobs_JobSchema: z.ZodTypeAny = z.object({\n lat: z.number().describe(\"Latitude coordinate of the job location.\").nullable().optional(),\n lng: z.number().describe(\"Longitude coordinate of the job location.\").nullable().optional(),\n date: z.string().describe(\"Date the job was created or scheduled.\"),\n uuid: z.string().describe(\"Unique identifier for this job record.\"),\n active: z.number().int().describe(\"Active flag (1 active, 0 deleted).\").nullable().optional(),\n badges: z.string().describe(\"Comma-separated list of badge UUIDs associated with this job.\").nullable().optional(),\n status: z.enum([\"Quote\", \"Work Order\", \"Unsuccessful\", \"Completed\"]).describe(\"Current status of the job.\"),\n geo_city: z.string().describe(\"City from geocoded address.\").nullable().optional(),\n edit_date: z.string().describe(\"Timestamp at which the record was last modified.\").nullable().optional(),\n geo_state: z.string().describe(\"State from geocoded address.\").nullable().optional(),\n geo_number: z.string().describe(\"House number from geocoded address.\").nullable().optional(),\n geo_street: z.string().describe(\"Street from geocoded address.\").nullable().optional(),\n queue_uuid: z.string().describe(\"UUID of the queue this job is assigned to.\").nullable().optional(),\n quote_date: z.string().describe(\"Timestamp when the job was quoted.\").nullable().optional(),\n quote_sent: z.number().int().describe(\"Boolean flag (0 or 1) indicating if quote was sent.\").nullable().optional(),\n geo_country: z.string().describe(\"Country from geocoded address.\").nullable().optional(),\n job_address: z.string().describe(\"Physical address where the job is to be performed (max length 500).\").nullable().optional(),\n company_uuid: z.string().describe(\"UUID of the client associated with this job.\"),\n geo_is_valid: z.string().describe(\"Whether geocoding for the job address was successful.\").nullable().optional(),\n geo_postcode: z.string().describe(\"Postal code from geocoded address.\").nullable().optional(),\n invoice_sent: z.string().describe(\"Boolean flag indicating whether an invoice has been sent.\").nullable().optional(),\n payment_date: z.string().describe(\"Payment date (not used; refer to JobPayment endpoint).\").nullable().optional(),\n category_uuid: z.string().describe(\"UUID of the job category.\").nullable().optional(),\n payment_amount: z.string().describe(\"Payment amount (not used; refer to JobPayment endpoint).\").nullable().optional(),\n payment_method: z.string().describe(\"Payment method (not used; refer to JobPayment endpoint).\").nullable().optional(),\n billing_address: z.string().describe(\"Address for invoicing; defaults to job address if not specified.\").nullable().optional(),\n completion_date: z.string().describe(\"Timestamp when the job was marked complete.\").nullable().optional(),\n job_description: z.string().describe(\"Description of the job.\").nullable().optional(),\n work_order_date: z.string().describe(\"Timestamp when the job became a work order.\").nullable().optional(),\n generated_job_id: z.string().describe(\"System-generated unique job identifier (read-only).\").nullable().optional(),\n payment_received: z.string().describe(\"Flag indicating payment received status.\").nullable().optional(),\n quote_sent_stamp: z.string().describe(\"Timestamp when the quote was sent (YYYY-MM-DD HH:MM:SS).\").nullable().optional(),\n payment_processed: z.string().describe(\"Flag indicating payment processed status.\").nullable().optional(),\n queue_expiry_date: z.string().describe(\"Timestamp when queue assignment expires (YYYY-MM-DD HH:MM:SS).\").nullable().optional(),\n unsuccessful_date: z.string().describe(\"Timestamp when job was marked unsuccessful.\").nullable().optional(),\n invoice_sent_stamp: z.string().describe(\"Timestamp when the invoice was sent (YYYY-MM-DD HH:MM:SS).\").nullable().optional(),\n total_invoice_amount: z.string().describe(\"Total invoiced amount for the job.\").nullable().optional(),\n created_by_staff_uuid: z.string().describe(\"UUID of the staff member who created this job.\").nullable().optional(),\n purchase_order_number: z.string().describe(\"Client purchase order reference number (max length 100).\").nullable().optional(),\n work_done_description: z.string().describe(\"Work done description.\").nullable().optional(),\n payment_received_stamp: z.string().describe(\"Timestamp when payment was received.\").nullable().optional(),\n payment_processed_stamp: z.string().describe(\"Timestamp when payment was processed.\").nullable().optional(),\n payment_actioned_by_uuid: z.string().describe(\"UUID of staff who actioned payment (not used).\").nullable().optional(),\n queue_assigned_staff_uuid: z.string().describe(\"UUID of staff responsible for the job in the queue.\").nullable().optional(),\n completion_actioned_by_uuid: z.string().describe(\"UUID of staff who marked the job as completed.\").nullable().optional(),\n job_is_scheduled_until_stamp: z.string().describe(\"Timestamp until which the job is scheduled.\").nullable().optional(),\n});\nexport const Servicem8ListAllJobsOutput: z.ZodTypeAny = z.object({\n jobs: z.array(Servicem8ListAllJobs_JobSchema).describe(\"Array of jobs returned by ServiceM8.\"),\n}).describe(\"Response model for listing ServiceM8 jobs.\");\n\nexport const servicem8ListAllJobs = action(\"SERVICEM8_LIST_ALL_JOBS\", {\n slug: \"servicem8-list-all-jobs\",\n name: \"List All Jobs\",\n description: \"Tool to list all jobs. Use when you need to fetch all job records from your ServiceM8 account.\",\n input: Servicem8ListAllJobsInput,\n output: Servicem8ListAllJobsOutput,\n});\n"],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ const require_action = require("../action.cjs");
2
+ let zod = require("zod");
3
+ //#region src/actions/list-all-locations.ts
4
+ const Servicem8ListAllLocationsInput = zod.z.object({ filter: zod.z.string().describe("Optional filter expression to narrow down locations using ServiceM8 filtering syntax (e.g., 'active eq 1'). See ServiceM8 filtering docs for syntax details.").optional() }).describe("Request model for listing all ServiceM8 locations.");
5
+ const Servicem8ListAllLocationsOutput = zod.z.unknown();
6
+ const servicem8ListAllLocations = require_action.action("SERVICEM8_LIST_ALL_LOCATIONS", {
7
+ slug: "servicem8-list-all-locations",
8
+ name: "List All Locations",
9
+ description: "Lists all ServiceM8 locations. Use to fetch configured service areas, office locations, or warehouses for job assignments, mapping, or reporting.",
10
+ input: Servicem8ListAllLocationsInput,
11
+ output: Servicem8ListAllLocationsOutput
12
+ });
13
+ //#endregion
14
+ exports.servicem8ListAllLocations = servicem8ListAllLocations;
15
+
16
+ //# sourceMappingURL=list-all-locations.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-all-locations.cjs","names":["z","action"],"sources":["../../src/actions/list-all-locations.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const Servicem8ListAllLocationsInput: z.ZodTypeAny = z.object({\n filter: z.string().describe(\"Optional filter expression to narrow down locations using ServiceM8 filtering syntax (e.g., 'active eq 1'). See ServiceM8 filtering docs for syntax details.\").optional(),\n}).describe(\"Request model for listing all ServiceM8 locations.\");\nexport const Servicem8ListAllLocationsOutput: z.ZodTypeAny = z.unknown();\n\nexport const servicem8ListAllLocations = action(\"SERVICEM8_LIST_ALL_LOCATIONS\", {\n slug: \"servicem8-list-all-locations\",\n name: \"List All Locations\",\n description: \"Lists all ServiceM8 locations. Use to fetch configured service areas, office locations, or warehouses for job assignments, mapping, or reporting.\",\n input: Servicem8ListAllLocationsInput,\n output: Servicem8ListAllLocationsOutput,\n});\n"],"mappings":";;;AAIA,MAAa,iCAA+CA,IAAAA,EAAE,OAAO,EACnE,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,8JAA8J,CAAC,CAAC,SAAS,EACvM,CAAC,CAAC,CAAC,SAAS,oDAAoD;AAChE,MAAa,kCAAgDA,IAAAA,EAAE,QAAQ;AAEvE,MAAa,4BAA4BC,eAAAA,OAAO,gCAAgC;CAC9E,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/actions/list-all-locations.d.ts
4
+ declare const Servicem8ListAllLocationsInput: z.ZodTypeAny;
5
+ declare const Servicem8ListAllLocationsOutput: z.ZodTypeAny;
6
+ declare const servicem8ListAllLocations: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
7
+ //#endregion
8
+ export { servicem8ListAllLocations };
9
+ //# sourceMappingURL=list-all-locations.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-all-locations.d.cts","names":[],"sources":["../../src/actions/list-all-locations.ts"],"mappings":";;;cAIa,8BAAA,EAAgC,CAAA,CAAE,UAEkB;AAAA,cACpD,+BAAA,EAAiC,CAAA,CAAE,UAAwB;AAAA,cAE3D,yBAAA,gCAAyB,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
@@ -0,0 +1,9 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/actions/list-all-locations.d.ts
4
+ declare const Servicem8ListAllLocationsInput: z.ZodTypeAny;
5
+ declare const Servicem8ListAllLocationsOutput: z.ZodTypeAny;
6
+ declare const servicem8ListAllLocations: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
7
+ //#endregion
8
+ export { servicem8ListAllLocations };
9
+ //# sourceMappingURL=list-all-locations.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-all-locations.d.mts","names":[],"sources":["../../src/actions/list-all-locations.ts"],"mappings":";;;cAIa,8BAAA,EAAgC,CAAA,CAAE,UAEkB;AAAA,cACpD,+BAAA,EAAiC,CAAA,CAAE,UAAwB;AAAA,cAE3D,yBAAA,gCAAyB,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
@@ -0,0 +1,13 @@
1
+ import { action } from "../action.mjs";
2
+ import { z } from "zod";
3
+ const servicem8ListAllLocations = action("SERVICEM8_LIST_ALL_LOCATIONS", {
4
+ slug: "servicem8-list-all-locations",
5
+ name: "List All Locations",
6
+ description: "Lists all ServiceM8 locations. Use to fetch configured service areas, office locations, or warehouses for job assignments, mapping, or reporting.",
7
+ input: z.object({ filter: z.string().describe("Optional filter expression to narrow down locations using ServiceM8 filtering syntax (e.g., 'active eq 1'). See ServiceM8 filtering docs for syntax details.").optional() }).describe("Request model for listing all ServiceM8 locations."),
8
+ output: z.unknown()
9
+ });
10
+ //#endregion
11
+ export { servicem8ListAllLocations };
12
+
13
+ //# sourceMappingURL=list-all-locations.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-all-locations.mjs","names":[],"sources":["../../src/actions/list-all-locations.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const Servicem8ListAllLocationsInput: z.ZodTypeAny = z.object({\n filter: z.string().describe(\"Optional filter expression to narrow down locations using ServiceM8 filtering syntax (e.g., 'active eq 1'). See ServiceM8 filtering docs for syntax details.\").optional(),\n}).describe(\"Request model for listing all ServiceM8 locations.\");\nexport const Servicem8ListAllLocationsOutput: z.ZodTypeAny = z.unknown();\n\nexport const servicem8ListAllLocations = action(\"SERVICEM8_LIST_ALL_LOCATIONS\", {\n slug: \"servicem8-list-all-locations\",\n name: \"List All Locations\",\n description: \"Lists all ServiceM8 locations. Use to fetch configured service areas, office locations, or warehouses for job assignments, mapping, or reporting.\",\n input: Servicem8ListAllLocationsInput,\n output: Servicem8ListAllLocationsOutput,\n});\n"],"mappings":";;AASA,MAAa,4BAA4B,OAAO,gCAAgC;CAC9E,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAT0D,EAAE,OAAO,EACnE,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,8JAA8J,CAAC,CAAC,SAAS,EACvM,CAAC,CAAC,CAAC,SAAS,oDAOH;CACP,QAP2D,EAAE,QAOrD;AACV,CAAC"}
@@ -0,0 +1,16 @@
1
+ const require_action = require("../action.cjs");
2
+ let zod = require("zod");
3
+ //#region src/actions/list-all-materials.ts
4
+ const Servicem8ListAllMaterialsInput = zod.z.object({ filter: zod.z.string().describe("Filter expression using ServiceM8 filtering syntax to narrow down results. Examples: 'active eq 1' for active materials only, 'name eq \"Labour\"' for materials with specific name.").optional() }).describe("Request model for listing all materials in ServiceM8 inventory.");
5
+ const Servicem8ListAllMaterialsOutput = zod.z.unknown();
6
+ const servicem8ListAllMaterials = require_action.action("SERVICEM8_LIST_ALL_MATERIALS", {
7
+ slug: "servicem8-list-all-materials",
8
+ name: "List All Materials",
9
+ description: "Retrieve all materials (products, labour rates, inventory items) from ServiceM8. Use this to get a complete catalog of materials for quoting, invoicing, or inventory management. Requires the 'read_inventory' OAuth scope.",
10
+ input: Servicem8ListAllMaterialsInput,
11
+ output: Servicem8ListAllMaterialsOutput
12
+ });
13
+ //#endregion
14
+ exports.servicem8ListAllMaterials = servicem8ListAllMaterials;
15
+
16
+ //# sourceMappingURL=list-all-materials.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-all-materials.cjs","names":["z","action"],"sources":["../../src/actions/list-all-materials.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const Servicem8ListAllMaterialsInput: z.ZodTypeAny = z.object({\n filter: z.string().describe(\"Filter expression using ServiceM8 filtering syntax to narrow down results. Examples: 'active eq 1' for active materials only, 'name eq \\\"Labour\\\"' for materials with specific name.\").optional(),\n}).describe(\"Request model for listing all materials in ServiceM8 inventory.\");\nexport const Servicem8ListAllMaterialsOutput: z.ZodTypeAny = z.unknown();\n\nexport const servicem8ListAllMaterials = action(\"SERVICEM8_LIST_ALL_MATERIALS\", {\n slug: \"servicem8-list-all-materials\",\n name: \"List All Materials\",\n description: \"Retrieve all materials (products, labour rates, inventory items) from ServiceM8. Use this to get a complete catalog of materials for quoting, invoicing, or inventory management. Requires the 'read_inventory' OAuth scope.\",\n input: Servicem8ListAllMaterialsInput,\n output: Servicem8ListAllMaterialsOutput,\n});\n"],"mappings":";;;AAIA,MAAa,iCAA+CA,IAAAA,EAAE,OAAO,EACnE,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,sLAAsL,CAAC,CAAC,SAAS,EAC/N,CAAC,CAAC,CAAC,SAAS,iEAAiE;AAC7E,MAAa,kCAAgDA,IAAAA,EAAE,QAAQ;AAEvE,MAAa,4BAA4BC,eAAAA,OAAO,gCAAgC;CAC9E,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/actions/list-all-materials.d.ts
4
+ declare const Servicem8ListAllMaterialsInput: z.ZodTypeAny;
5
+ declare const Servicem8ListAllMaterialsOutput: z.ZodTypeAny;
6
+ declare const servicem8ListAllMaterials: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
7
+ //#endregion
8
+ export { servicem8ListAllMaterials };
9
+ //# sourceMappingURL=list-all-materials.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-all-materials.d.cts","names":[],"sources":["../../src/actions/list-all-materials.ts"],"mappings":";;;cAIa,8BAAA,EAAgC,CAAA,CAAE,UAE+B;AAAA,cACjE,+BAAA,EAAiC,CAAA,CAAE,UAAwB;AAAA,cAE3D,yBAAA,gCAAyB,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
@@ -0,0 +1,9 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/actions/list-all-materials.d.ts
4
+ declare const Servicem8ListAllMaterialsInput: z.ZodTypeAny;
5
+ declare const Servicem8ListAllMaterialsOutput: z.ZodTypeAny;
6
+ declare const servicem8ListAllMaterials: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
7
+ //#endregion
8
+ export { servicem8ListAllMaterials };
9
+ //# sourceMappingURL=list-all-materials.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-all-materials.d.mts","names":[],"sources":["../../src/actions/list-all-materials.ts"],"mappings":";;;cAIa,8BAAA,EAAgC,CAAA,CAAE,UAE+B;AAAA,cACjE,+BAAA,EAAiC,CAAA,CAAE,UAAwB;AAAA,cAE3D,yBAAA,gCAAyB,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
@@ -0,0 +1,13 @@
1
+ import { action } from "../action.mjs";
2
+ import { z } from "zod";
3
+ const servicem8ListAllMaterials = action("SERVICEM8_LIST_ALL_MATERIALS", {
4
+ slug: "servicem8-list-all-materials",
5
+ name: "List All Materials",
6
+ description: "Retrieve all materials (products, labour rates, inventory items) from ServiceM8. Use this to get a complete catalog of materials for quoting, invoicing, or inventory management. Requires the 'read_inventory' OAuth scope.",
7
+ input: z.object({ filter: z.string().describe("Filter expression using ServiceM8 filtering syntax to narrow down results. Examples: 'active eq 1' for active materials only, 'name eq \"Labour\"' for materials with specific name.").optional() }).describe("Request model for listing all materials in ServiceM8 inventory."),
8
+ output: z.unknown()
9
+ });
10
+ //#endregion
11
+ export { servicem8ListAllMaterials };
12
+
13
+ //# sourceMappingURL=list-all-materials.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-all-materials.mjs","names":[],"sources":["../../src/actions/list-all-materials.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const Servicem8ListAllMaterialsInput: z.ZodTypeAny = z.object({\n filter: z.string().describe(\"Filter expression using ServiceM8 filtering syntax to narrow down results. Examples: 'active eq 1' for active materials only, 'name eq \\\"Labour\\\"' for materials with specific name.\").optional(),\n}).describe(\"Request model for listing all materials in ServiceM8 inventory.\");\nexport const Servicem8ListAllMaterialsOutput: z.ZodTypeAny = z.unknown();\n\nexport const servicem8ListAllMaterials = action(\"SERVICEM8_LIST_ALL_MATERIALS\", {\n slug: \"servicem8-list-all-materials\",\n name: \"List All Materials\",\n description: \"Retrieve all materials (products, labour rates, inventory items) from ServiceM8. Use this to get a complete catalog of materials for quoting, invoicing, or inventory management. Requires the 'read_inventory' OAuth scope.\",\n input: Servicem8ListAllMaterialsInput,\n output: Servicem8ListAllMaterialsOutput,\n});\n"],"mappings":";;AASA,MAAa,4BAA4B,OAAO,gCAAgC;CAC9E,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAT0D,EAAE,OAAO,EACnE,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,sLAAsL,CAAC,CAAC,SAAS,EAC/N,CAAC,CAAC,CAAC,SAAS,iEAOH;CACP,QAP2D,EAAE,QAOrD;AACV,CAAC"}