@workbuddy/piece-workbuddy-edge 1.0.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 (222) hide show
  1. package/package.json +24 -0
  2. package/src/index.d.ts +8 -0
  3. package/src/index.d.ts.map +1 -0
  4. package/src/index.js +199 -0
  5. package/src/index.js.map +1 -0
  6. package/src/index.ts +354 -0
  7. package/src/lib/actions/attachments.d.ts +17 -0
  8. package/src/lib/actions/attachments.d.ts.map +1 -0
  9. package/src/lib/actions/attachments.js +79 -0
  10. package/src/lib/actions/attachments.js.map +1 -0
  11. package/src/lib/actions/attachments.ts +85 -0
  12. package/src/lib/actions/crm->-companies.d.ts +16 -0
  13. package/src/lib/actions/crm->-companies.d.ts.map +1 -0
  14. package/src/lib/actions/crm->-companies.js +77 -0
  15. package/src/lib/actions/crm->-companies.js.map +1 -0
  16. package/src/lib/actions/crm->-companies.ts +84 -0
  17. package/src/lib/actions/crm->-contacts.d.ts +16 -0
  18. package/src/lib/actions/crm->-contacts.d.ts.map +1 -0
  19. package/src/lib/actions/crm->-contacts.js +77 -0
  20. package/src/lib/actions/crm->-contacts.js.map +1 -0
  21. package/src/lib/actions/crm->-contacts.ts +84 -0
  22. package/src/lib/actions/crm->-contractors.d.ts +16 -0
  23. package/src/lib/actions/crm->-contractors.d.ts.map +1 -0
  24. package/src/lib/actions/crm->-contractors.js +77 -0
  25. package/src/lib/actions/crm->-contractors.js.map +1 -0
  26. package/src/lib/actions/crm->-contractors.ts +84 -0
  27. package/src/lib/actions/crm->-customers.d.ts +35 -0
  28. package/src/lib/actions/crm->-customers.d.ts.map +1 -0
  29. package/src/lib/actions/crm->-customers.js +180 -0
  30. package/src/lib/actions/crm->-customers.js.map +1 -0
  31. package/src/lib/actions/crm->-customers.ts +203 -0
  32. package/src/lib/actions/crm->-employees.d.ts +16 -0
  33. package/src/lib/actions/crm->-employees.d.ts.map +1 -0
  34. package/src/lib/actions/crm->-employees.js +77 -0
  35. package/src/lib/actions/crm->-employees.js.map +1 -0
  36. package/src/lib/actions/crm->-employees.ts +84 -0
  37. package/src/lib/actions/crm->-external-users.d.ts +16 -0
  38. package/src/lib/actions/crm->-external-users.d.ts.map +1 -0
  39. package/src/lib/actions/crm->-external-users.js +77 -0
  40. package/src/lib/actions/crm->-external-users.js.map +1 -0
  41. package/src/lib/actions/crm->-external-users.ts +84 -0
  42. package/src/lib/actions/crm->-invites.d.ts +16 -0
  43. package/src/lib/actions/crm->-invites.d.ts.map +1 -0
  44. package/src/lib/actions/crm->-invites.js +77 -0
  45. package/src/lib/actions/crm->-invites.js.map +1 -0
  46. package/src/lib/actions/crm->-invites.ts +84 -0
  47. package/src/lib/actions/crm->-sites.d.ts +17 -0
  48. package/src/lib/actions/crm->-sites.d.ts.map +1 -0
  49. package/src/lib/actions/crm->-sites.js +86 -0
  50. package/src/lib/actions/crm->-sites.js.map +1 -0
  51. package/src/lib/actions/crm->-sites.ts +95 -0
  52. package/src/lib/actions/crm->-suppliers.d.ts +16 -0
  53. package/src/lib/actions/crm->-suppliers.d.ts.map +1 -0
  54. package/src/lib/actions/crm->-suppliers.js +77 -0
  55. package/src/lib/actions/crm->-suppliers.js.map +1 -0
  56. package/src/lib/actions/crm->-suppliers.ts +84 -0
  57. package/src/lib/actions/data-export.d.ts +11 -0
  58. package/src/lib/actions/data-export.d.ts.map +1 -0
  59. package/src/lib/actions/data-export.js +78 -0
  60. package/src/lib/actions/data-export.js.map +1 -0
  61. package/src/lib/actions/data-export.ts +82 -0
  62. package/src/lib/actions/index.d.ts +25 -0
  63. package/src/lib/actions/index.d.ts.map +1 -0
  64. package/src/lib/actions/index.js +41 -0
  65. package/src/lib/actions/index.js.map +1 -0
  66. package/src/lib/actions/index.ts +24 -0
  67. package/src/lib/actions/jobs->-activities.d.ts +87 -0
  68. package/src/lib/actions/jobs->-activities.d.ts.map +1 -0
  69. package/src/lib/actions/jobs->-activities.js +445 -0
  70. package/src/lib/actions/jobs->-activities.js.map +1 -0
  71. package/src/lib/actions/jobs->-activities.ts +473 -0
  72. package/src/lib/actions/jobs->-contacts.d.ts +31 -0
  73. package/src/lib/actions/jobs->-contacts.d.ts.map +1 -0
  74. package/src/lib/actions/jobs->-contacts.js +129 -0
  75. package/src/lib/actions/jobs->-contacts.js.map +1 -0
  76. package/src/lib/actions/jobs->-contacts.ts +141 -0
  77. package/src/lib/actions/jobs->-files.d.ts +31 -0
  78. package/src/lib/actions/jobs->-files.d.ts.map +1 -0
  79. package/src/lib/actions/jobs->-files.js +129 -0
  80. package/src/lib/actions/jobs->-files.js.map +1 -0
  81. package/src/lib/actions/jobs->-files.ts +141 -0
  82. package/src/lib/actions/jobs->-tasks.d.ts +75 -0
  83. package/src/lib/actions/jobs->-tasks.d.ts.map +1 -0
  84. package/src/lib/actions/jobs->-tasks.js +395 -0
  85. package/src/lib/actions/jobs->-tasks.js.map +1 -0
  86. package/src/lib/actions/jobs->-tasks.ts +417 -0
  87. package/src/lib/actions/jobs.d.ts +148 -0
  88. package/src/lib/actions/jobs.d.ts.map +1 -0
  89. package/src/lib/actions/jobs.js +800 -0
  90. package/src/lib/actions/jobs.js.map +1 -0
  91. package/src/lib/actions/jobs.ts +846 -0
  92. package/src/lib/actions/mcp-context.d.ts +16 -0
  93. package/src/lib/actions/mcp-context.d.ts.map +1 -0
  94. package/src/lib/actions/mcp-context.js +82 -0
  95. package/src/lib/actions/mcp-context.js.map +1 -0
  96. package/src/lib/actions/mcp-context.ts +86 -0
  97. package/src/lib/actions/mcp.d.ts +21 -0
  98. package/src/lib/actions/mcp.d.ts.map +1 -0
  99. package/src/lib/actions/mcp.js +104 -0
  100. package/src/lib/actions/mcp.js.map +1 -0
  101. package/src/lib/actions/mcp.ts +112 -0
  102. package/src/lib/actions/settings.d.ts +57 -0
  103. package/src/lib/actions/settings.d.ts.map +1 -0
  104. package/src/lib/actions/settings.js +257 -0
  105. package/src/lib/actions/settings.js.map +1 -0
  106. package/src/lib/actions/settings.ts +301 -0
  107. package/src/lib/actions/stages->-activities.d.ts +87 -0
  108. package/src/lib/actions/stages->-activities.d.ts.map +1 -0
  109. package/src/lib/actions/stages->-activities.js +445 -0
  110. package/src/lib/actions/stages->-activities.js.map +1 -0
  111. package/src/lib/actions/stages->-activities.ts +473 -0
  112. package/src/lib/actions/stages->-files.d.ts +31 -0
  113. package/src/lib/actions/stages->-files.d.ts.map +1 -0
  114. package/src/lib/actions/stages->-files.js +129 -0
  115. package/src/lib/actions/stages->-files.js.map +1 -0
  116. package/src/lib/actions/stages->-files.ts +141 -0
  117. package/src/lib/actions/stages->-resources.d.ts +58 -0
  118. package/src/lib/actions/stages->-resources.d.ts.map +1 -0
  119. package/src/lib/actions/stages->-resources.js +279 -0
  120. package/src/lib/actions/stages->-resources.js.map +1 -0
  121. package/src/lib/actions/stages->-resources.ts +302 -0
  122. package/src/lib/actions/stages->-tasks.d.ts +77 -0
  123. package/src/lib/actions/stages->-tasks.d.ts.map +1 -0
  124. package/src/lib/actions/stages->-tasks.js +405 -0
  125. package/src/lib/actions/stages->-tasks.js.map +1 -0
  126. package/src/lib/actions/stages->-tasks.ts +427 -0
  127. package/src/lib/actions/stages.d.ts +85 -0
  128. package/src/lib/actions/stages.d.ts.map +1 -0
  129. package/src/lib/actions/stages.js +417 -0
  130. package/src/lib/actions/stages.js.map +1 -0
  131. package/src/lib/actions/stages.ts +452 -0
  132. package/src/lib/actions/webhooks-v2.d.ts +72 -0
  133. package/src/lib/actions/webhooks-v2.d.ts.map +1 -0
  134. package/src/lib/actions/webhooks-v2.js +297 -0
  135. package/src/lib/actions/webhooks-v2.js.map +1 -0
  136. package/src/lib/actions/webhooks-v2.ts +337 -0
  137. package/src/lib/actions/webhooks.d.ts +48 -0
  138. package/src/lib/actions/webhooks.d.ts.map +1 -0
  139. package/src/lib/actions/webhooks.js +292 -0
  140. package/src/lib/actions/webhooks.js.map +1 -0
  141. package/src/lib/actions/webhooks.ts +318 -0
  142. package/src/lib/auth.d.ts +18 -0
  143. package/src/lib/auth.d.ts.map +1 -0
  144. package/src/lib/auth.js +77 -0
  145. package/src/lib/auth.js.map +1 -0
  146. package/src/lib/auth.ts +84 -0
  147. package/src/lib/common/index.d.ts +11 -0
  148. package/src/lib/common/index.d.ts.map +1 -0
  149. package/src/lib/common/index.js +8 -0
  150. package/src/lib/common/index.js.map +1 -0
  151. package/src/lib/common/index.ts +12 -0
  152. package/src/lib/triggers/activity.d.ts +77 -0
  153. package/src/lib/triggers/activity.d.ts.map +1 -0
  154. package/src/lib/triggers/activity.js +241 -0
  155. package/src/lib/triggers/activity.js.map +1 -0
  156. package/src/lib/triggers/activity.ts +261 -0
  157. package/src/lib/triggers/allocation.d.ts +53 -0
  158. package/src/lib/triggers/allocation.d.ts.map +1 -0
  159. package/src/lib/triggers/allocation.js +181 -0
  160. package/src/lib/triggers/allocation.js.map +1 -0
  161. package/src/lib/triggers/allocation.ts +198 -0
  162. package/src/lib/triggers/bill.d.ts +102 -0
  163. package/src/lib/triggers/bill.d.ts.map +1 -0
  164. package/src/lib/triggers/bill.js +327 -0
  165. package/src/lib/triggers/bill.js.map +1 -0
  166. package/src/lib/triggers/bill.ts +355 -0
  167. package/src/lib/triggers/form.d.ts +19 -0
  168. package/src/lib/triggers/form.d.ts.map +1 -0
  169. package/src/lib/triggers/form.js +65 -0
  170. package/src/lib/triggers/form.js.map +1 -0
  171. package/src/lib/triggers/form.ts +68 -0
  172. package/src/lib/triggers/index.d.ts +10 -0
  173. package/src/lib/triggers/index.d.ts.map +1 -0
  174. package/src/lib/triggers/index.js +26 -0
  175. package/src/lib/triggers/index.js.map +1 -0
  176. package/src/lib/triggers/index.ts +9 -0
  177. package/src/lib/triggers/invoice.d.ts +102 -0
  178. package/src/lib/triggers/invoice.d.ts.map +1 -0
  179. package/src/lib/triggers/invoice.js +327 -0
  180. package/src/lib/triggers/invoice.js.map +1 -0
  181. package/src/lib/triggers/invoice.ts +355 -0
  182. package/src/lib/triggers/item.d.ts +53 -0
  183. package/src/lib/triggers/item.d.ts.map +1 -0
  184. package/src/lib/triggers/item.js +181 -0
  185. package/src/lib/triggers/item.js.map +1 -0
  186. package/src/lib/triggers/item.ts +198 -0
  187. package/src/lib/triggers/job.d.ts +102 -0
  188. package/src/lib/triggers/job.d.ts.map +1 -0
  189. package/src/lib/triggers/job.js +419 -0
  190. package/src/lib/triggers/job.js.map +1 -0
  191. package/src/lib/triggers/job.ts +447 -0
  192. package/src/lib/triggers/lead.d.ts +102 -0
  193. package/src/lib/triggers/lead.d.ts.map +1 -0
  194. package/src/lib/triggers/lead.js +319 -0
  195. package/src/lib/triggers/lead.js.map +1 -0
  196. package/src/lib/triggers/lead.ts +347 -0
  197. package/src/lib/triggers/opportunity.d.ts +102 -0
  198. package/src/lib/triggers/opportunity.d.ts.map +1 -0
  199. package/src/lib/triggers/opportunity.js +319 -0
  200. package/src/lib/triggers/opportunity.js.map +1 -0
  201. package/src/lib/triggers/opportunity.ts +347 -0
  202. package/src/lib/triggers/quote.d.ts +102 -0
  203. package/src/lib/triggers/quote.d.ts.map +1 -0
  204. package/src/lib/triggers/quote.js +327 -0
  205. package/src/lib/triggers/quote.js.map +1 -0
  206. package/src/lib/triggers/quote.ts +355 -0
  207. package/src/lib/triggers/site.d.ts +19 -0
  208. package/src/lib/triggers/site.d.ts.map +1 -0
  209. package/src/lib/triggers/site.js +65 -0
  210. package/src/lib/triggers/site.js.map +1 -0
  211. package/src/lib/triggers/site.ts +68 -0
  212. package/src/lib/triggers/stage.d.ts +102 -0
  213. package/src/lib/triggers/stage.d.ts.map +1 -0
  214. package/src/lib/triggers/stage.js +487 -0
  215. package/src/lib/triggers/stage.js.map +1 -0
  216. package/src/lib/triggers/stage.ts +515 -0
  217. package/src/lib/triggers/task.d.ts +102 -0
  218. package/src/lib/triggers/task.d.ts.map +1 -0
  219. package/src/lib/triggers/task.js +323 -0
  220. package/src/lib/triggers/task.js.map +1 -0
  221. package/src/lib/triggers/task.ts +351 -0
  222. package/src/lib/workbuddy.svg +5 -0
@@ -0,0 +1,487 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.stage_deleted_trigger = exports.stage_status_changed_trigger = exports.stage_updated_trigger = exports.stage_created_trigger = void 0;
4
+ const pieces_framework_1 = require("@activepieces/pieces-framework");
5
+ const pieces_common_1 = require("@activepieces/pieces-common");
6
+ const auth_1 = require("../auth");
7
+ exports.stage_created_trigger = (0, pieces_framework_1.createTrigger)({
8
+ name: 'StageCreated',
9
+ auth: auth_1.workbuddyAuth,
10
+ displayName: 'Stage Created',
11
+ description: 'Triggered when a new stage is created',
12
+ props: {
13
+ filters: pieces_framework_1.Property.Json({
14
+ displayName: 'Filters',
15
+ description: 'Optional webhook filters object. Discover allowed fields with GET /webhooks/entities/:entity/filters.',
16
+ required: false,
17
+ defaultValue: {},
18
+ }),
19
+ },
20
+ sampleData: {
21
+ workOrder: {
22
+ id: '507f1f77bcf86cd799439011',
23
+ name: 'Foundation Work',
24
+ workOrderNumber: 'J10001-5039',
25
+ jobNumber: 'J10001',
26
+ description: 'Sample stage description',
27
+ status: 'In Progress',
28
+ previousStatus: 'Open',
29
+ createdAt: '2026-03-05T10:00:00.000Z',
30
+ updatedAt: '2026-03-05T10:00:00.000Z',
31
+ startDate: '2026-03-05T08:00:00.000Z',
32
+ dueDate: '2026-03-10T17:00:00.000Z',
33
+ completedDate: null,
34
+ finalisedDate: null,
35
+ customer: { id: '507f1f77bcf86cd799439011', name: 'Acme Corp' },
36
+ owner: { id: '507f1f77bcf86cd799439011', name: 'John Smith' },
37
+ stageOwner: { id: '507f1f77bcf86cd799439011', name: 'Jane Doe' },
38
+ technician: { id: '507f1f77bcf86cd799439011', name: 'Mike Tech' },
39
+ subcontractor: null,
40
+ priority: { id: '507f1f77bcf86cd799439011', name: 'High' },
41
+ site: {
42
+ id: '507f1f77bcf86cd799439011',
43
+ name: 'Main Office',
44
+ address: {
45
+ street: '123 Main St',
46
+ suburb: 'Sydney',
47
+ state: 'NSW',
48
+ postcode: '2000',
49
+ country: 'Australia',
50
+ formatted: '123 Main St, Sydney NSW 2000',
51
+ },
52
+ },
53
+ workCategory: { id: '507f1f77bcf86cd799439011', name: 'Electrical' },
54
+ labels: [{ id: '507f1f77bcf86cd799439011', name: 'Urgent' }],
55
+ zones: [{ id: '507f1f77bcf86cd799439011', name: 'North' }],
56
+ billingCompany: { id: '507f1f77bcf86cd799439011', name: 'Acme Corp' },
57
+ },
58
+ technician: { id: '507f1f77bcf86cd799439011', name: 'Mike Tech' },
59
+ billingCompany: { id: '507f1f77bcf86cd799439011', name: 'Acme Corp' },
60
+ site: {
61
+ id: '507f1f77bcf86cd799439011',
62
+ name: 'Main Office',
63
+ address: {
64
+ street: '123 Main St',
65
+ suburb: 'Sydney',
66
+ state: 'NSW',
67
+ postcode: '2000',
68
+ country: 'Australia',
69
+ formatted: '123 Main St, Sydney NSW 2000',
70
+ },
71
+ },
72
+ },
73
+ type: pieces_framework_1.TriggerStrategy.WEBHOOK,
74
+ async onEnable(context) {
75
+ const token = await (0, auth_1.getAccessToken)(context.auth);
76
+ const baseUrl = context.auth.props.baseUrl;
77
+ // Register webhook with WorkBuddy v2 API (server handles upsert - reactivates if exists)
78
+ const response = await pieces_common_1.httpClient.sendRequest({
79
+ method: pieces_common_1.HttpMethod.POST,
80
+ url: `${baseUrl}/api/v2/public/webhooks`,
81
+ headers: {
82
+ Authorization: `Bearer ${token}`,
83
+ 'Content-Type': 'application/json',
84
+ 'X-WorkBuddy-Version': '2026-01',
85
+ },
86
+ body: {
87
+ name: `Activepieces: Stage Created`,
88
+ url: context.webhookUrl,
89
+ entity: 'stage',
90
+ events: ['Stage Created'],
91
+ ...(context.propsValue.filters && Object.keys(context.propsValue.filters).length > 0
92
+ ? { filters: context.propsValue.filters }
93
+ : {}),
94
+ workflow: {
95
+ platform: 'activepieces',
96
+ integrationId: context.webhookUrl,
97
+ },
98
+ },
99
+ });
100
+ // Store webhook ID for cleanup
101
+ await context.store.put('webhookId', response.body.data.id);
102
+ },
103
+ async onDisable(context) {
104
+ const token = await (0, auth_1.getAccessToken)(context.auth);
105
+ const baseUrl = context.auth.props.baseUrl;
106
+ const webhookId = await context.store.get('webhookId');
107
+ if (webhookId) {
108
+ // Pause webhook (server keeps it for potential reactivation)
109
+ await pieces_common_1.httpClient.sendRequest({
110
+ method: pieces_common_1.HttpMethod.PATCH,
111
+ url: `${baseUrl}/api/v2/public/webhooks/${webhookId}`,
112
+ headers: {
113
+ Authorization: `Bearer ${token}`,
114
+ 'Content-Type': 'application/json',
115
+ 'X-WorkBuddy-Version': '2026-01',
116
+ },
117
+ body: {
118
+ status: 'paused',
119
+ },
120
+ });
121
+ }
122
+ },
123
+ async run(context) {
124
+ return [context.payload.body];
125
+ },
126
+ });
127
+ exports.stage_updated_trigger = (0, pieces_framework_1.createTrigger)({
128
+ name: 'StageUpdated',
129
+ auth: auth_1.workbuddyAuth,
130
+ displayName: 'Stage Updated',
131
+ description: 'Triggered when a stage is updated',
132
+ props: {
133
+ filters: pieces_framework_1.Property.Json({
134
+ displayName: 'Filters',
135
+ description: 'Optional webhook filters object. Discover allowed fields with GET /webhooks/entities/:entity/filters.',
136
+ required: false,
137
+ defaultValue: {},
138
+ }),
139
+ },
140
+ sampleData: {
141
+ workOrder: {
142
+ id: '507f1f77bcf86cd799439011',
143
+ name: 'Foundation Work',
144
+ workOrderNumber: 'J10001-5039',
145
+ jobNumber: 'J10001',
146
+ description: 'Sample stage description',
147
+ status: 'In Progress',
148
+ previousStatus: 'Open',
149
+ createdAt: '2026-03-05T10:00:00.000Z',
150
+ updatedAt: '2026-03-05T10:00:00.000Z',
151
+ startDate: '2026-03-05T08:00:00.000Z',
152
+ dueDate: '2026-03-10T17:00:00.000Z',
153
+ completedDate: null,
154
+ finalisedDate: null,
155
+ customer: { id: '507f1f77bcf86cd799439011', name: 'Acme Corp' },
156
+ owner: { id: '507f1f77bcf86cd799439011', name: 'John Smith' },
157
+ stageOwner: { id: '507f1f77bcf86cd799439011', name: 'Jane Doe' },
158
+ technician: { id: '507f1f77bcf86cd799439011', name: 'Mike Tech' },
159
+ subcontractor: null,
160
+ priority: { id: '507f1f77bcf86cd799439011', name: 'High' },
161
+ site: {
162
+ id: '507f1f77bcf86cd799439011',
163
+ name: 'Main Office',
164
+ address: {
165
+ street: '123 Main St',
166
+ suburb: 'Sydney',
167
+ state: 'NSW',
168
+ postcode: '2000',
169
+ country: 'Australia',
170
+ formatted: '123 Main St, Sydney NSW 2000',
171
+ },
172
+ },
173
+ workCategory: { id: '507f1f77bcf86cd799439011', name: 'Electrical' },
174
+ labels: [{ id: '507f1f77bcf86cd799439011', name: 'Urgent' }],
175
+ zones: [{ id: '507f1f77bcf86cd799439011', name: 'North' }],
176
+ billingCompany: { id: '507f1f77bcf86cd799439011', name: 'Acme Corp' },
177
+ },
178
+ technician: { id: '507f1f77bcf86cd799439011', name: 'Mike Tech' },
179
+ billingCompany: { id: '507f1f77bcf86cd799439011', name: 'Acme Corp' },
180
+ site: {
181
+ id: '507f1f77bcf86cd799439011',
182
+ name: 'Main Office',
183
+ address: {
184
+ street: '123 Main St',
185
+ suburb: 'Sydney',
186
+ state: 'NSW',
187
+ postcode: '2000',
188
+ country: 'Australia',
189
+ formatted: '123 Main St, Sydney NSW 2000',
190
+ },
191
+ },
192
+ },
193
+ type: pieces_framework_1.TriggerStrategy.WEBHOOK,
194
+ async onEnable(context) {
195
+ const token = await (0, auth_1.getAccessToken)(context.auth);
196
+ const baseUrl = context.auth.props.baseUrl;
197
+ // Register webhook with WorkBuddy v2 API (server handles upsert - reactivates if exists)
198
+ const response = await pieces_common_1.httpClient.sendRequest({
199
+ method: pieces_common_1.HttpMethod.POST,
200
+ url: `${baseUrl}/api/v2/public/webhooks`,
201
+ headers: {
202
+ Authorization: `Bearer ${token}`,
203
+ 'Content-Type': 'application/json',
204
+ 'X-WorkBuddy-Version': '2026-01',
205
+ },
206
+ body: {
207
+ name: `Activepieces: Stage Updated`,
208
+ url: context.webhookUrl,
209
+ entity: 'stage',
210
+ events: ['Stage Updated'],
211
+ ...(context.propsValue.filters && Object.keys(context.propsValue.filters).length > 0
212
+ ? { filters: context.propsValue.filters }
213
+ : {}),
214
+ workflow: {
215
+ platform: 'activepieces',
216
+ integrationId: context.webhookUrl,
217
+ },
218
+ },
219
+ });
220
+ // Store webhook ID for cleanup
221
+ await context.store.put('webhookId', response.body.data.id);
222
+ },
223
+ async onDisable(context) {
224
+ const token = await (0, auth_1.getAccessToken)(context.auth);
225
+ const baseUrl = context.auth.props.baseUrl;
226
+ const webhookId = await context.store.get('webhookId');
227
+ if (webhookId) {
228
+ // Pause webhook (server keeps it for potential reactivation)
229
+ await pieces_common_1.httpClient.sendRequest({
230
+ method: pieces_common_1.HttpMethod.PATCH,
231
+ url: `${baseUrl}/api/v2/public/webhooks/${webhookId}`,
232
+ headers: {
233
+ Authorization: `Bearer ${token}`,
234
+ 'Content-Type': 'application/json',
235
+ 'X-WorkBuddy-Version': '2026-01',
236
+ },
237
+ body: {
238
+ status: 'paused',
239
+ },
240
+ });
241
+ }
242
+ },
243
+ async run(context) {
244
+ return [context.payload.body];
245
+ },
246
+ });
247
+ exports.stage_status_changed_trigger = (0, pieces_framework_1.createTrigger)({
248
+ name: 'StageStatusChanged',
249
+ auth: auth_1.workbuddyAuth,
250
+ displayName: 'Stage Status Changed',
251
+ description: 'Triggered when a stage status changes',
252
+ props: {
253
+ filters: pieces_framework_1.Property.Json({
254
+ displayName: 'Filters',
255
+ description: 'Optional webhook filters object. Discover allowed fields with GET /webhooks/entities/:entity/filters.',
256
+ required: false,
257
+ defaultValue: {},
258
+ }),
259
+ },
260
+ sampleData: {
261
+ workOrder: {
262
+ id: '507f1f77bcf86cd799439011',
263
+ name: 'Foundation Work',
264
+ workOrderNumber: 'J10001-5039',
265
+ jobNumber: 'J10001',
266
+ description: 'Sample stage description',
267
+ status: 'In Progress',
268
+ previousStatus: 'Open',
269
+ createdAt: '2026-03-05T10:00:00.000Z',
270
+ updatedAt: '2026-03-05T10:00:00.000Z',
271
+ startDate: '2026-03-05T08:00:00.000Z',
272
+ dueDate: '2026-03-10T17:00:00.000Z',
273
+ completedDate: null,
274
+ finalisedDate: null,
275
+ customer: { id: '507f1f77bcf86cd799439011', name: 'Acme Corp' },
276
+ owner: { id: '507f1f77bcf86cd799439011', name: 'John Smith' },
277
+ stageOwner: { id: '507f1f77bcf86cd799439011', name: 'Jane Doe' },
278
+ technician: { id: '507f1f77bcf86cd799439011', name: 'Mike Tech' },
279
+ subcontractor: null,
280
+ priority: { id: '507f1f77bcf86cd799439011', name: 'High' },
281
+ site: {
282
+ id: '507f1f77bcf86cd799439011',
283
+ name: 'Main Office',
284
+ address: {
285
+ street: '123 Main St',
286
+ suburb: 'Sydney',
287
+ state: 'NSW',
288
+ postcode: '2000',
289
+ country: 'Australia',
290
+ formatted: '123 Main St, Sydney NSW 2000',
291
+ },
292
+ },
293
+ workCategory: { id: '507f1f77bcf86cd799439011', name: 'Electrical' },
294
+ labels: [{ id: '507f1f77bcf86cd799439011', name: 'Urgent' }],
295
+ zones: [{ id: '507f1f77bcf86cd799439011', name: 'North' }],
296
+ billingCompany: { id: '507f1f77bcf86cd799439011', name: 'Acme Corp' },
297
+ },
298
+ technician: { id: '507f1f77bcf86cd799439011', name: 'Mike Tech' },
299
+ billingCompany: { id: '507f1f77bcf86cd799439011', name: 'Acme Corp' },
300
+ site: {
301
+ id: '507f1f77bcf86cd799439011',
302
+ name: 'Main Office',
303
+ address: {
304
+ street: '123 Main St',
305
+ suburb: 'Sydney',
306
+ state: 'NSW',
307
+ postcode: '2000',
308
+ country: 'Australia',
309
+ formatted: '123 Main St, Sydney NSW 2000',
310
+ },
311
+ },
312
+ },
313
+ type: pieces_framework_1.TriggerStrategy.WEBHOOK,
314
+ async onEnable(context) {
315
+ const token = await (0, auth_1.getAccessToken)(context.auth);
316
+ const baseUrl = context.auth.props.baseUrl;
317
+ // Register webhook with WorkBuddy v2 API (server handles upsert - reactivates if exists)
318
+ const response = await pieces_common_1.httpClient.sendRequest({
319
+ method: pieces_common_1.HttpMethod.POST,
320
+ url: `${baseUrl}/api/v2/public/webhooks`,
321
+ headers: {
322
+ Authorization: `Bearer ${token}`,
323
+ 'Content-Type': 'application/json',
324
+ 'X-WorkBuddy-Version': '2026-01',
325
+ },
326
+ body: {
327
+ name: `Activepieces: Stage Status Changed`,
328
+ url: context.webhookUrl,
329
+ entity: 'stage',
330
+ events: ['Stage Status Changed'],
331
+ ...(context.propsValue.filters && Object.keys(context.propsValue.filters).length > 0
332
+ ? { filters: context.propsValue.filters }
333
+ : {}),
334
+ workflow: {
335
+ platform: 'activepieces',
336
+ integrationId: context.webhookUrl,
337
+ },
338
+ },
339
+ });
340
+ // Store webhook ID for cleanup
341
+ await context.store.put('webhookId', response.body.data.id);
342
+ },
343
+ async onDisable(context) {
344
+ const token = await (0, auth_1.getAccessToken)(context.auth);
345
+ const baseUrl = context.auth.props.baseUrl;
346
+ const webhookId = await context.store.get('webhookId');
347
+ if (webhookId) {
348
+ // Pause webhook (server keeps it for potential reactivation)
349
+ await pieces_common_1.httpClient.sendRequest({
350
+ method: pieces_common_1.HttpMethod.PATCH,
351
+ url: `${baseUrl}/api/v2/public/webhooks/${webhookId}`,
352
+ headers: {
353
+ Authorization: `Bearer ${token}`,
354
+ 'Content-Type': 'application/json',
355
+ 'X-WorkBuddy-Version': '2026-01',
356
+ },
357
+ body: {
358
+ status: 'paused',
359
+ },
360
+ });
361
+ }
362
+ },
363
+ async run(context) {
364
+ return [context.payload.body];
365
+ },
366
+ });
367
+ exports.stage_deleted_trigger = (0, pieces_framework_1.createTrigger)({
368
+ name: 'StageDeleted',
369
+ auth: auth_1.workbuddyAuth,
370
+ displayName: 'Stage Deleted',
371
+ description: 'Triggered when a stage is deleted',
372
+ props: {
373
+ filters: pieces_framework_1.Property.Json({
374
+ displayName: 'Filters',
375
+ description: 'Optional webhook filters object. Discover allowed fields with GET /webhooks/entities/:entity/filters.',
376
+ required: false,
377
+ defaultValue: {},
378
+ }),
379
+ },
380
+ sampleData: {
381
+ workOrder: {
382
+ id: '507f1f77bcf86cd799439011',
383
+ name: 'Foundation Work',
384
+ workOrderNumber: 'J10001-5039',
385
+ jobNumber: 'J10001',
386
+ description: 'Sample stage description',
387
+ status: 'In Progress',
388
+ previousStatus: 'Open',
389
+ createdAt: '2026-03-05T10:00:00.000Z',
390
+ updatedAt: '2026-03-05T10:00:00.000Z',
391
+ startDate: '2026-03-05T08:00:00.000Z',
392
+ dueDate: '2026-03-10T17:00:00.000Z',
393
+ completedDate: null,
394
+ finalisedDate: null,
395
+ customer: { id: '507f1f77bcf86cd799439011', name: 'Acme Corp' },
396
+ owner: { id: '507f1f77bcf86cd799439011', name: 'John Smith' },
397
+ stageOwner: { id: '507f1f77bcf86cd799439011', name: 'Jane Doe' },
398
+ technician: { id: '507f1f77bcf86cd799439011', name: 'Mike Tech' },
399
+ subcontractor: null,
400
+ priority: { id: '507f1f77bcf86cd799439011', name: 'High' },
401
+ site: {
402
+ id: '507f1f77bcf86cd799439011',
403
+ name: 'Main Office',
404
+ address: {
405
+ street: '123 Main St',
406
+ suburb: 'Sydney',
407
+ state: 'NSW',
408
+ postcode: '2000',
409
+ country: 'Australia',
410
+ formatted: '123 Main St, Sydney NSW 2000',
411
+ },
412
+ },
413
+ workCategory: { id: '507f1f77bcf86cd799439011', name: 'Electrical' },
414
+ labels: [{ id: '507f1f77bcf86cd799439011', name: 'Urgent' }],
415
+ zones: [{ id: '507f1f77bcf86cd799439011', name: 'North' }],
416
+ billingCompany: { id: '507f1f77bcf86cd799439011', name: 'Acme Corp' },
417
+ },
418
+ technician: { id: '507f1f77bcf86cd799439011', name: 'Mike Tech' },
419
+ billingCompany: { id: '507f1f77bcf86cd799439011', name: 'Acme Corp' },
420
+ site: {
421
+ id: '507f1f77bcf86cd799439011',
422
+ name: 'Main Office',
423
+ address: {
424
+ street: '123 Main St',
425
+ suburb: 'Sydney',
426
+ state: 'NSW',
427
+ postcode: '2000',
428
+ country: 'Australia',
429
+ formatted: '123 Main St, Sydney NSW 2000',
430
+ },
431
+ },
432
+ },
433
+ type: pieces_framework_1.TriggerStrategy.WEBHOOK,
434
+ async onEnable(context) {
435
+ const token = await (0, auth_1.getAccessToken)(context.auth);
436
+ const baseUrl = context.auth.props.baseUrl;
437
+ // Register webhook with WorkBuddy v2 API (server handles upsert - reactivates if exists)
438
+ const response = await pieces_common_1.httpClient.sendRequest({
439
+ method: pieces_common_1.HttpMethod.POST,
440
+ url: `${baseUrl}/api/v2/public/webhooks`,
441
+ headers: {
442
+ Authorization: `Bearer ${token}`,
443
+ 'Content-Type': 'application/json',
444
+ 'X-WorkBuddy-Version': '2026-01',
445
+ },
446
+ body: {
447
+ name: `Activepieces: Stage Deleted`,
448
+ url: context.webhookUrl,
449
+ entity: 'stage',
450
+ events: ['Stage Deleted'],
451
+ ...(context.propsValue.filters && Object.keys(context.propsValue.filters).length > 0
452
+ ? { filters: context.propsValue.filters }
453
+ : {}),
454
+ workflow: {
455
+ platform: 'activepieces',
456
+ integrationId: context.webhookUrl,
457
+ },
458
+ },
459
+ });
460
+ // Store webhook ID for cleanup
461
+ await context.store.put('webhookId', response.body.data.id);
462
+ },
463
+ async onDisable(context) {
464
+ const token = await (0, auth_1.getAccessToken)(context.auth);
465
+ const baseUrl = context.auth.props.baseUrl;
466
+ const webhookId = await context.store.get('webhookId');
467
+ if (webhookId) {
468
+ // Pause webhook (server keeps it for potential reactivation)
469
+ await pieces_common_1.httpClient.sendRequest({
470
+ method: pieces_common_1.HttpMethod.PATCH,
471
+ url: `${baseUrl}/api/v2/public/webhooks/${webhookId}`,
472
+ headers: {
473
+ Authorization: `Bearer ${token}`,
474
+ 'Content-Type': 'application/json',
475
+ 'X-WorkBuddy-Version': '2026-01',
476
+ },
477
+ body: {
478
+ status: 'paused',
479
+ },
480
+ });
481
+ }
482
+ },
483
+ async run(context) {
484
+ return [context.payload.body];
485
+ },
486
+ });
487
+ //# sourceMappingURL=stage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stage.js","sourceRoot":"","sources":["stage.ts"],"names":[],"mappings":"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"}