@zudello/modelcontextprotocol 1.0.0 → 1.1.1

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 (259) hide show
  1. package/README.md +115 -512
  2. package/dist/services/zudello/admin.d.ts +124 -74
  3. package/dist/services/zudello/admin.d.ts.map +1 -1
  4. package/dist/services/zudello/admin.js +443 -112
  5. package/dist/services/zudello/admin.js.map +1 -1
  6. package/dist/services/zudello/document-context.js +2 -2
  7. package/dist/services/zudello/document-context.js.map +1 -1
  8. package/dist/services/zudello/inboxes.d.ts +88 -7
  9. package/dist/services/zudello/inboxes.d.ts.map +1 -1
  10. package/dist/services/zudello/inboxes.js +317 -34
  11. package/dist/services/zudello/inboxes.js.map +1 -1
  12. package/dist/services/zudello/users.d.ts +36 -6
  13. package/dist/services/zudello/users.d.ts.map +1 -1
  14. package/dist/services/zudello/users.js +183 -82
  15. package/dist/services/zudello/users.js.map +1 -1
  16. package/dist/tools/admin/datasets/create-dataset.d.ts +35 -7
  17. package/dist/tools/admin/datasets/create-dataset.d.ts.map +1 -1
  18. package/dist/tools/admin/datasets/create-dataset.js +59 -20
  19. package/dist/tools/admin/datasets/create-dataset.js.map +1 -1
  20. package/dist/tools/admin/datasets/get-dataset.d.ts +1 -1
  21. package/dist/tools/admin/datasets/get-dataset.d.ts.map +1 -1
  22. package/dist/tools/admin/datasets/get-dataset.js +8 -2
  23. package/dist/tools/admin/datasets/get-dataset.js.map +1 -1
  24. package/dist/tools/admin/datasets/list-datasets.d.ts +2 -4
  25. package/dist/tools/admin/datasets/list-datasets.d.ts.map +1 -1
  26. package/dist/tools/admin/datasets/list-datasets.js +21 -11
  27. package/dist/tools/admin/datasets/list-datasets.js.map +1 -1
  28. package/dist/tools/admin/datasets/update-dataset.d.ts +39 -6
  29. package/dist/tools/admin/datasets/update-dataset.d.ts.map +1 -1
  30. package/dist/tools/admin/datasets/update-dataset.js +39 -17
  31. package/dist/tools/admin/datasets/update-dataset.js.map +1 -1
  32. package/dist/tools/admin/fields/create-field.d.ts +7 -17
  33. package/dist/tools/admin/fields/create-field.d.ts.map +1 -1
  34. package/dist/tools/admin/fields/create-field.js +59 -28
  35. package/dist/tools/admin/fields/create-field.js.map +1 -1
  36. package/dist/tools/admin/fields/get-field.d.ts +1 -1
  37. package/dist/tools/admin/fields/get-field.d.ts.map +1 -1
  38. package/dist/tools/admin/fields/get-field.js +9 -2
  39. package/dist/tools/admin/fields/get-field.js.map +1 -1
  40. package/dist/tools/admin/fields/list-fields.d.ts +3 -5
  41. package/dist/tools/admin/fields/list-fields.d.ts.map +1 -1
  42. package/dist/tools/admin/fields/list-fields.js +21 -13
  43. package/dist/tools/admin/fields/list-fields.js.map +1 -1
  44. package/dist/tools/admin/fields/update-field.d.ts +11 -6
  45. package/dist/tools/admin/fields/update-field.d.ts.map +1 -1
  46. package/dist/tools/admin/fields/update-field.js +23 -17
  47. package/dist/tools/admin/fields/update-field.js.map +1 -1
  48. package/dist/tools/admin/quick-actions/create-quick-action.d.ts +9 -9
  49. package/dist/tools/admin/quick-actions/create-quick-action.d.ts.map +1 -1
  50. package/dist/tools/admin/quick-actions/create-quick-action.js +33 -20
  51. package/dist/tools/admin/quick-actions/create-quick-action.js.map +1 -1
  52. package/dist/tools/admin/quick-actions/get-quick-action.d.ts +1 -1
  53. package/dist/tools/admin/quick-actions/get-quick-action.d.ts.map +1 -1
  54. package/dist/tools/admin/quick-actions/get-quick-action.js +3 -2
  55. package/dist/tools/admin/quick-actions/get-quick-action.js.map +1 -1
  56. package/dist/tools/admin/quick-actions/list-quick-actions.d.ts +4 -3
  57. package/dist/tools/admin/quick-actions/list-quick-actions.d.ts.map +1 -1
  58. package/dist/tools/admin/quick-actions/list-quick-actions.js +22 -12
  59. package/dist/tools/admin/quick-actions/list-quick-actions.js.map +1 -1
  60. package/dist/tools/admin/quick-actions/trigger-quick-action.d.ts +4 -6
  61. package/dist/tools/admin/quick-actions/trigger-quick-action.d.ts.map +1 -1
  62. package/dist/tools/admin/quick-actions/trigger-quick-action.js +31 -12
  63. package/dist/tools/admin/quick-actions/trigger-quick-action.js.map +1 -1
  64. package/dist/tools/admin/quick-actions/update-quick-action.d.ts +11 -6
  65. package/dist/tools/admin/quick-actions/update-quick-action.d.ts.map +1 -1
  66. package/dist/tools/admin/quick-actions/update-quick-action.js +22 -14
  67. package/dist/tools/admin/quick-actions/update-quick-action.js.map +1 -1
  68. package/dist/tools/approvals/get-approval-flows.js +3 -3
  69. package/dist/tools/approvals/get-approval-flows.js.map +1 -1
  70. package/dist/tools/automation/get-run-logs-content.d.ts.map +1 -1
  71. package/dist/tools/automation/get-run-logs-content.js +3 -1
  72. package/dist/tools/automation/get-run-logs-content.js.map +1 -1
  73. package/dist/tools/automation/get-run-logs.d.ts.map +1 -1
  74. package/dist/tools/automation/get-run-logs.js +3 -1
  75. package/dist/tools/automation/get-run-logs.js.map +1 -1
  76. package/dist/tools/automation/get-script.d.ts.map +1 -1
  77. package/dist/tools/automation/get-script.js +3 -1
  78. package/dist/tools/automation/get-script.js.map +1 -1
  79. package/dist/tools/automation/get-trigger.d.ts.map +1 -1
  80. package/dist/tools/automation/get-trigger.js +3 -1
  81. package/dist/tools/automation/get-trigger.js.map +1 -1
  82. package/dist/tools/automation/list-scripts.d.ts.map +1 -1
  83. package/dist/tools/automation/list-scripts.js +5 -1
  84. package/dist/tools/automation/list-scripts.js.map +1 -1
  85. package/dist/tools/automation/search-runs.d.ts.map +1 -1
  86. package/dist/tools/automation/search-runs.js +3 -1
  87. package/dist/tools/automation/search-runs.js.map +1 -1
  88. package/dist/tools/config/list-configs.d.ts.map +1 -1
  89. package/dist/tools/config/list-configs.js +10 -3
  90. package/dist/tools/config/list-configs.js.map +1 -1
  91. package/dist/tools/control/initiate-sync.d.ts.map +1 -1
  92. package/dist/tools/control/initiate-sync.js +13 -3
  93. package/dist/tools/control/initiate-sync.js.map +1 -1
  94. package/dist/tools/control/set-trigger-enabled.d.ts.map +1 -1
  95. package/dist/tools/control/set-trigger-enabled.js +13 -3
  96. package/dist/tools/control/set-trigger-enabled.js.map +1 -1
  97. package/dist/tools/core/fetch.d.ts.map +1 -1
  98. package/dist/tools/core/fetch.js +12 -1
  99. package/dist/tools/core/fetch.js.map +1 -1
  100. package/dist/tools/core/push-message.d.ts.map +1 -1
  101. package/dist/tools/core/push-message.js +3 -1
  102. package/dist/tools/core/push-message.js.map +1 -1
  103. package/dist/tools/core/search.d.ts.map +1 -1
  104. package/dist/tools/core/search.js +28 -1
  105. package/dist/tools/core/search.js.map +1 -1
  106. package/dist/tools/document-context/check-contract-pricing.d.ts.map +1 -1
  107. package/dist/tools/document-context/check-contract-pricing.js +44 -1
  108. package/dist/tools/document-context/check-contract-pricing.js.map +1 -1
  109. package/dist/tools/document-context/check-document-budgets.d.ts.map +1 -1
  110. package/dist/tools/document-context/check-document-budgets.js +34 -1
  111. package/dist/tools/document-context/check-document-budgets.js.map +1 -1
  112. package/dist/tools/documents/document-types/create-document-type.d.ts.map +1 -1
  113. package/dist/tools/documents/document-types/create-document-type.js +24 -1
  114. package/dist/tools/documents/document-types/create-document-type.js.map +1 -1
  115. package/dist/tools/documents/document-types/get-document-type.d.ts.map +1 -1
  116. package/dist/tools/documents/document-types/get-document-type.js +11 -1
  117. package/dist/tools/documents/document-types/get-document-type.js.map +1 -1
  118. package/dist/tools/documents/document-types/get-merged-form-metadata.d.ts.map +1 -1
  119. package/dist/tools/documents/document-types/get-merged-form-metadata.js +13 -1
  120. package/dist/tools/documents/document-types/get-merged-form-metadata.js.map +1 -1
  121. package/dist/tools/documents/document-types/list-document-types.d.ts.map +1 -1
  122. package/dist/tools/documents/document-types/list-document-types.js +14 -1
  123. package/dist/tools/documents/document-types/list-document-types.js.map +1 -1
  124. package/dist/tools/documents/document-types/update-document-type.d.ts.map +1 -1
  125. package/dist/tools/documents/document-types/update-document-type.js +32 -1
  126. package/dist/tools/documents/document-types/update-document-type.js.map +1 -1
  127. package/dist/tools/documents/export-templates/create-export-template.d.ts.map +1 -1
  128. package/dist/tools/documents/export-templates/create-export-template.js +35 -1
  129. package/dist/tools/documents/export-templates/create-export-template.js.map +1 -1
  130. package/dist/tools/documents/export-templates/get-export-download-url.d.ts.map +1 -1
  131. package/dist/tools/documents/export-templates/get-export-download-url.js +6 -1
  132. package/dist/tools/documents/export-templates/get-export-download-url.js.map +1 -1
  133. package/dist/tools/documents/export-templates/get-export-template.d.ts.map +1 -1
  134. package/dist/tools/documents/export-templates/get-export-template.js +3 -2
  135. package/dist/tools/documents/export-templates/get-export-template.js.map +1 -1
  136. package/dist/tools/documents/export-templates/list-export-templates.d.ts.map +1 -1
  137. package/dist/tools/documents/export-templates/list-export-templates.js +12 -2
  138. package/dist/tools/documents/export-templates/list-export-templates.js.map +1 -1
  139. package/dist/tools/documents/export-templates/list-exports.d.ts.map +1 -1
  140. package/dist/tools/documents/export-templates/list-exports.js +6 -1
  141. package/dist/tools/documents/export-templates/list-exports.js.map +1 -1
  142. package/dist/tools/documents/export-templates/run-export.d.ts.map +1 -1
  143. package/dist/tools/documents/export-templates/run-export.js +20 -1
  144. package/dist/tools/documents/export-templates/run-export.js.map +1 -1
  145. package/dist/tools/documents/export-templates/update-export-template.d.ts.map +1 -1
  146. package/dist/tools/documents/export-templates/update-export-template.js +9 -1
  147. package/dist/tools/documents/export-templates/update-export-template.js.map +1 -1
  148. package/dist/tools/history/get-history.d.ts.map +1 -1
  149. package/dist/tools/history/get-history.js +9 -1
  150. package/dist/tools/history/get-history.js.map +1 -1
  151. package/dist/tools/inboxes/create-inbox-template.d.ts +1 -1
  152. package/dist/tools/inboxes/create-inbox-template.d.ts.map +1 -1
  153. package/dist/tools/inboxes/create-inbox-template.js +26 -1
  154. package/dist/tools/inboxes/create-inbox-template.js.map +1 -1
  155. package/dist/tools/inboxes/create-inbox.d.ts +1 -1
  156. package/dist/tools/inboxes/create-inbox.d.ts.map +1 -1
  157. package/dist/tools/inboxes/create-inbox.js +22 -1
  158. package/dist/tools/inboxes/create-inbox.js.map +1 -1
  159. package/dist/tools/inboxes/fetch-inbox.d.ts +1 -1
  160. package/dist/tools/inboxes/fetch-inbox.d.ts.map +1 -1
  161. package/dist/tools/inboxes/fetch-inbox.js +14 -1
  162. package/dist/tools/inboxes/fetch-inbox.js.map +1 -1
  163. package/dist/tools/inboxes/get-inbound-domain.d.ts.map +1 -1
  164. package/dist/tools/inboxes/get-inbound-domain.js +14 -1
  165. package/dist/tools/inboxes/get-inbound-domain.js.map +1 -1
  166. package/dist/tools/inboxes/list-inbox-templates.d.ts +1 -1
  167. package/dist/tools/inboxes/list-inbox-templates.d.ts.map +1 -1
  168. package/dist/tools/inboxes/list-inbox-templates.js +26 -1
  169. package/dist/tools/inboxes/list-inbox-templates.js.map +1 -1
  170. package/dist/tools/inboxes/list-inboxes.d.ts +1 -1
  171. package/dist/tools/inboxes/list-inboxes.d.ts.map +1 -1
  172. package/dist/tools/inboxes/list-inboxes.js +22 -1
  173. package/dist/tools/inboxes/list-inboxes.js.map +1 -1
  174. package/dist/tools/inboxes/update-inbox-template.d.ts +1 -1
  175. package/dist/tools/inboxes/update-inbox-template.d.ts.map +1 -1
  176. package/dist/tools/inboxes/update-inbox-template.js +22 -1
  177. package/dist/tools/inboxes/update-inbox-template.js.map +1 -1
  178. package/dist/tools/inboxes/update-inbox.d.ts +1 -1
  179. package/dist/tools/inboxes/update-inbox.d.ts.map +1 -1
  180. package/dist/tools/inboxes/update-inbox.js +25 -3
  181. package/dist/tools/inboxes/update-inbox.js.map +1 -1
  182. package/dist/tools/index.js +2 -2
  183. package/dist/tools/index.js.map +1 -1
  184. package/dist/tools/language/get-language-placeholders.d.ts.map +1 -1
  185. package/dist/tools/language/get-language-placeholders.js +33 -3
  186. package/dist/tools/language/get-language-placeholders.js.map +1 -1
  187. package/dist/tools/language/update-language-placeholders.d.ts.map +1 -1
  188. package/dist/tools/language/update-language-placeholders.js +21 -4
  189. package/dist/tools/language/update-language-placeholders.js.map +1 -1
  190. package/dist/tools/models/list-models.js +2 -2
  191. package/dist/tools/org-admin/teams/fetch-org-team.d.ts.map +1 -1
  192. package/dist/tools/org-admin/teams/fetch-org-team.js +15 -1
  193. package/dist/tools/org-admin/teams/fetch-org-team.js.map +1 -1
  194. package/dist/tools/org-admin/teams/list-org-teams.d.ts.map +1 -1
  195. package/dist/tools/org-admin/teams/list-org-teams.js +17 -1
  196. package/dist/tools/org-admin/teams/list-org-teams.js.map +1 -1
  197. package/dist/tools/org-admin/teams/update-org-team.d.ts.map +1 -1
  198. package/dist/tools/org-admin/teams/update-org-team.js +16 -1
  199. package/dist/tools/org-admin/teams/update-org-team.js.map +1 -1
  200. package/dist/tools/org-admin/users/assign-user-to-team.d.ts +1 -1
  201. package/dist/tools/org-admin/users/assign-user-to-team.d.ts.map +1 -1
  202. package/dist/tools/org-admin/users/assign-user-to-team.js +22 -4
  203. package/dist/tools/org-admin/users/assign-user-to-team.js.map +1 -1
  204. package/dist/tools/org-admin/users/create-org-user.d.ts.map +1 -1
  205. package/dist/tools/org-admin/users/create-org-user.js +15 -1
  206. package/dist/tools/org-admin/users/create-org-user.js.map +1 -1
  207. package/dist/tools/org-admin/users/fetch-org-user.d.ts.map +1 -1
  208. package/dist/tools/org-admin/users/fetch-org-user.js +15 -1
  209. package/dist/tools/org-admin/users/fetch-org-user.js.map +1 -1
  210. package/dist/tools/org-admin/users/index.d.ts +1 -1
  211. package/dist/tools/org-admin/users/index.d.ts.map +1 -1
  212. package/dist/tools/org-admin/users/index.js +1 -1
  213. package/dist/tools/org-admin/users/index.js.map +1 -1
  214. package/dist/tools/org-admin/users/list-org-user-groups.d.ts.map +1 -1
  215. package/dist/tools/org-admin/users/list-org-user-groups.js +20 -1
  216. package/dist/tools/org-admin/users/list-org-user-groups.js.map +1 -1
  217. package/dist/tools/org-admin/users/list-org-users.d.ts.map +1 -1
  218. package/dist/tools/org-admin/users/list-org-users.js +15 -1
  219. package/dist/tools/org-admin/users/list-org-users.js.map +1 -1
  220. package/dist/tools/org-admin/users/update-org-user.d.ts.map +1 -1
  221. package/dist/tools/org-admin/users/update-org-user.js +12 -1
  222. package/dist/tools/org-admin/users/update-org-user.js.map +1 -1
  223. package/dist/tools/resources/get-resources.d.ts.map +1 -1
  224. package/dist/tools/resources/get-resources.js +12 -3
  225. package/dist/tools/resources/get-resources.js.map +1 -1
  226. package/dist/tools/resources/update-or-create-resources.d.ts.map +1 -1
  227. package/dist/tools/resources/update-or-create-resources.js +36 -5
  228. package/dist/tools/resources/update-or-create-resources.js.map +1 -1
  229. package/dist/tools/sentences/create-sentence.d.ts.map +1 -1
  230. package/dist/tools/sentences/create-sentence.js +22 -1
  231. package/dist/tools/sentences/create-sentence.js.map +1 -1
  232. package/dist/tools/sentences/get-sentence-template.d.ts.map +1 -1
  233. package/dist/tools/sentences/get-sentence-template.js +3 -1
  234. package/dist/tools/sentences/get-sentence-template.js.map +1 -1
  235. package/dist/tools/sentences/get-sentence.d.ts.map +1 -1
  236. package/dist/tools/sentences/get-sentence.js +3 -1
  237. package/dist/tools/sentences/get-sentence.js.map +1 -1
  238. package/dist/tools/sentences/list-sentence-resources.d.ts.map +1 -1
  239. package/dist/tools/sentences/list-sentence-resources.js +11 -1
  240. package/dist/tools/sentences/list-sentence-resources.js.map +1 -1
  241. package/dist/tools/sentences/list-sentence-templates.d.ts.map +1 -1
  242. package/dist/tools/sentences/list-sentence-templates.js +5 -1
  243. package/dist/tools/sentences/list-sentence-templates.js.map +1 -1
  244. package/dist/tools/sentences/list-sentences.d.ts.map +1 -1
  245. package/dist/tools/sentences/list-sentences.js +7 -1
  246. package/dist/tools/sentences/list-sentences.js.map +1 -1
  247. package/dist/tools/sentences/update-sentence.d.ts.map +1 -1
  248. package/dist/tools/sentences/update-sentence.js +24 -1
  249. package/dist/tools/sentences/update-sentence.js.map +1 -1
  250. package/dist/tools/sentences/update-sentences-order.d.ts.map +1 -1
  251. package/dist/tools/sentences/update-sentences-order.js +16 -1
  252. package/dist/tools/sentences/update-sentences-order.js.map +1 -1
  253. package/dist/tools/users/get-user-groups.d.ts.map +1 -1
  254. package/dist/tools/users/get-user-groups.js +28 -3
  255. package/dist/tools/users/get-user-groups.js.map +1 -1
  256. package/dist/tools/users/get-users.d.ts.map +1 -1
  257. package/dist/tools/users/get-users.js +34 -3
  258. package/dist/tools/users/get-users.js.map +1 -1
  259. package/package.json +1 -1
@@ -1,264 +1,595 @@
1
1
  /**
2
2
  * Admin service functions for Zudello MCP Server
3
- * Handles datasets, fields, and quick actions
3
+ * Handles datasets, field settings, and quick actions
4
+ * Uses General Store API with resource_type parameter
4
5
  */
5
6
  import { buildZudelloRequest } from "./core.js";
6
7
  import { logger } from "../../utils/logger.js";
8
+ // ============================================================================
7
9
  // Dataset Functions
10
+ // ============================================================================
11
+ /**
12
+ * List all datasets with simplified response
13
+ */
8
14
  export async function listZudelloDatasets(authContext, options = {}) {
9
15
  try {
10
16
  const { headers, apiBase } = buildZudelloRequest(authContext);
11
- const params = new URLSearchParams();
12
- if (options.model)
13
- params.append("model", options.model);
14
- const query = params.toString() ? `?${params.toString()}` : "";
15
- const url = `${apiBase}/api/v2/datasets${query}`;
17
+ const params = new URLSearchParams({
18
+ resource_type: "dataset",
19
+ });
20
+ const url = `${apiBase}/general-store/api/v1/resources/?${params.toString()}`;
21
+ logger.info("Zudello list datasets request", { url, includeColumns: options.includeColumns });
16
22
  const response = await fetch(url, { method: "GET", headers });
17
23
  if (!response.ok) {
18
- const errorText = await response.text();
19
- logger.error("listZudelloDatasets failed", { status: response.status, error: errorText });
20
- return { success: false, error: `Failed to list datasets: ${response.statusText}` };
24
+ const errorText = await response.text().catch(() => "Unknown error");
25
+ throw new Error(`Zudello API error: ${response.status} - ${errorText}`);
21
26
  }
22
27
  const data = await response.json();
23
- return { success: true, data: data.datasets || [] };
28
+ logger.info("Zudello list datasets response received", {
29
+ httpStatus: response.status,
30
+ success: data.success,
31
+ datasetCount: Array.isArray(data.data) ? data.data.length : 0,
32
+ });
33
+ if (!data.success) {
34
+ return { success: false, error: data.message || "Failed to list datasets" };
35
+ }
36
+ // Return dataset list with optional column definitions
37
+ const datasets = (data.data || []).map((d) => ({
38
+ uuid: d.uuid,
39
+ name: d.payload?.name || "Unnamed Dataset",
40
+ datasetType: d.payload?.settings?.datasetType || "",
41
+ ...(options.includeColumns && { columnDefs: d.payload?.settings?.columnDefs || [] }),
42
+ }));
43
+ return { success: true, data: datasets };
24
44
  }
25
45
  catch (error) {
26
46
  logger.error("listZudelloDatasets error", {}, error);
27
47
  return { success: false, error: error.message };
28
48
  }
29
49
  }
30
- export async function getZudelloDataset(authContext, uuid) {
50
+ /**
51
+ * Get a specific dataset by UUID
52
+ */
53
+ export async function getZudelloDataset(authContext, datasetUuid) {
31
54
  try {
32
55
  const { headers, apiBase } = buildZudelloRequest(authContext);
33
- const response = await fetch(`${apiBase}/api/v2/datasets/${uuid}`, { method: "GET", headers });
56
+ const params = new URLSearchParams({
57
+ resource_type: "dataset",
58
+ });
59
+ const url = `${apiBase}/general-store/api/v1/resources/${datasetUuid}?${params.toString()}`;
60
+ logger.info("Zudello get dataset request", { url, datasetUuid });
61
+ const response = await fetch(url, { method: "GET", headers });
34
62
  if (!response.ok) {
35
- const errorText = await response.text();
36
- logger.error("getZudelloDataset failed", { uuid, status: response.status, error: errorText });
37
- return { success: false, error: `Failed to get dataset: ${response.statusText}` };
63
+ if (response.status === 404) {
64
+ return { success: false, error: `Dataset not found: ${datasetUuid}` };
65
+ }
66
+ const errorText = await response.text().catch(() => "Unknown error");
67
+ throw new Error(`Zudello API error: ${response.status} - ${errorText}`);
68
+ }
69
+ const data = await response.json();
70
+ logger.info("Zudello get dataset response received", {
71
+ httpStatus: response.status,
72
+ success: data.success,
73
+ hasData: !!data.data,
74
+ });
75
+ if (!data.success || !data.data) {
76
+ return { success: false, error: `Dataset not found: ${datasetUuid}` };
38
77
  }
39
- return { success: true, data: await response.json() };
78
+ return { success: true, data: data.data };
40
79
  }
41
80
  catch (error) {
42
- logger.error("getZudelloDataset error", { uuid }, error);
81
+ logger.error("getZudelloDataset error", { datasetUuid }, error);
43
82
  return { success: false, error: error.message };
44
83
  }
45
84
  }
46
- export async function createZudelloDataset(authContext, dataset) {
85
+ /**
86
+ * Create a new dataset
87
+ */
88
+ export async function createZudelloDataset(authContext, name, columnDefs, datasetType = "", onDimensionMismatch) {
47
89
  try {
48
90
  const { headers, apiBase } = buildZudelloRequest(authContext);
49
- const response = await fetch(`${apiBase}/api/v2/datasets`, {
91
+ const params = new URLSearchParams({
92
+ resource_type: "dataset",
93
+ });
94
+ const url = `${apiBase}/general-store/api/v1/resources/?${params.toString()}`;
95
+ const payload = {
96
+ payload: {
97
+ uuid: "",
98
+ name,
99
+ settings: {
100
+ datasetType,
101
+ columnDefs,
102
+ ...(onDimensionMismatch && { on_dimension_mismatch: onDimensionMismatch }),
103
+ },
104
+ },
105
+ };
106
+ logger.info("Zudello create dataset request", {
107
+ url,
108
+ name,
109
+ columnCount: columnDefs.length,
110
+ datasetType,
111
+ });
112
+ const response = await fetch(url, {
50
113
  method: "POST",
51
114
  headers,
52
- body: JSON.stringify(dataset),
115
+ body: JSON.stringify(payload),
53
116
  });
54
117
  if (!response.ok) {
55
- const errorText = await response.text();
56
- logger.error("createZudelloDataset failed", { status: response.status, error: errorText });
57
- return { success: false, error: `Failed to create dataset: ${response.statusText}` };
118
+ const errorText = await response.text().catch(() => "Unknown error");
119
+ throw new Error(`Zudello API error: ${response.status} - ${errorText}`);
58
120
  }
59
- return { success: true, data: await response.json() };
121
+ const data = await response.json();
122
+ logger.info("Zudello create dataset response received", {
123
+ httpStatus: response.status,
124
+ success: data.success,
125
+ uuid: data.data?.uuid,
126
+ });
127
+ if (!data.success) {
128
+ return { success: false, error: data.message || "Failed to create dataset" };
129
+ }
130
+ // Sync payload.uuid with resource uuid
131
+ const createdUuid = data.data?.uuid;
132
+ if (createdUuid) {
133
+ logger.info("Zudello syncing payload.uuid with resource uuid", { createdUuid });
134
+ const syncResult = await updateZudelloDataset(authContext, createdUuid, name, columnDefs, datasetType, onDimensionMismatch);
135
+ if (!syncResult.success) {
136
+ logger.warn("Zudello failed to sync payload.uuid - dataset may be in inconsistent state", {
137
+ createdUuid,
138
+ error: syncResult.error,
139
+ });
140
+ return { success: true, data: data.data };
141
+ }
142
+ return { success: true, data: syncResult.data };
143
+ }
144
+ return { success: true, data: data.data };
60
145
  }
61
146
  catch (error) {
62
- logger.error("createZudelloDataset error", {}, error);
147
+ logger.error("createZudelloDataset error", { name }, error);
63
148
  return { success: false, error: error.message };
64
149
  }
65
150
  }
66
- export async function updateZudelloDataset(authContext, uuid, updates) {
151
+ /**
152
+ * Update an existing dataset
153
+ */
154
+ export async function updateZudelloDataset(authContext, datasetUuid, name, columnDefs, datasetType = "", onDimensionMismatch) {
67
155
  try {
68
156
  const { headers, apiBase } = buildZudelloRequest(authContext);
69
- const response = await fetch(`${apiBase}/api/v2/datasets/${uuid}`, {
70
- method: "PATCH",
157
+ const params = new URLSearchParams({
158
+ resource_type: "dataset",
159
+ });
160
+ const url = `${apiBase}/general-store/api/v1/resources/${datasetUuid}?${params.toString()}`;
161
+ const payload = {
162
+ payload: {
163
+ uuid: datasetUuid,
164
+ name,
165
+ settings: {
166
+ datasetType,
167
+ columnDefs,
168
+ ...(onDimensionMismatch && { on_dimension_mismatch: onDimensionMismatch }),
169
+ },
170
+ },
171
+ };
172
+ logger.info("Zudello update dataset request", {
173
+ url,
174
+ datasetUuid,
175
+ name,
176
+ columnCount: columnDefs.length,
177
+ datasetType,
178
+ });
179
+ const response = await fetch(url, {
180
+ method: "PUT",
71
181
  headers,
72
- body: JSON.stringify(updates),
182
+ body: JSON.stringify(payload),
73
183
  });
74
184
  if (!response.ok) {
75
- const errorText = await response.text();
76
- logger.error("updateZudelloDataset failed", { uuid, status: response.status, error: errorText });
77
- return { success: false, error: `Failed to update dataset: ${response.statusText}` };
185
+ const errorText = await response.text().catch(() => "Unknown error");
186
+ throw new Error(`Zudello API error: ${response.status} - ${errorText}`);
187
+ }
188
+ const data = await response.json();
189
+ logger.info("Zudello update dataset response received", {
190
+ httpStatus: response.status,
191
+ success: data.success,
192
+ version: data.data?.version,
193
+ });
194
+ if (!data.success) {
195
+ return { success: false, error: data.message || "Failed to update dataset" };
78
196
  }
79
- return { success: true, data: await response.json() };
197
+ return { success: true, data: data.data };
80
198
  }
81
199
  catch (error) {
82
- logger.error("updateZudelloDataset error", { uuid }, error);
200
+ logger.error("updateZudelloDataset error", { datasetUuid }, error);
83
201
  return { success: false, error: error.message };
84
202
  }
85
203
  }
86
- // Field Functions
87
- export async function listZudelloFields(authContext, options = {}) {
204
+ // ============================================================================
205
+ // Field Settings Functions
206
+ // ============================================================================
207
+ /**
208
+ * List all field settings with simplified or full response
209
+ */
210
+ export async function listZudelloFieldSettings(authContext, options = {}) {
88
211
  try {
89
212
  const { headers, apiBase } = buildZudelloRequest(authContext);
90
- const params = new URLSearchParams();
91
- if (options.model)
92
- params.append("model", options.model);
93
- const query = params.toString() ? `?${params.toString()}` : "";
94
- const url = `${apiBase}/api/v2/fields${query}`;
213
+ const params = new URLSearchParams({
214
+ resource_type: "field_settings",
215
+ });
216
+ const url = `${apiBase}/general-store/api/v1/resources/?${params.toString()}`;
217
+ logger.info("Zudello list field settings request", { url, fullObject: options.fullObject });
95
218
  const response = await fetch(url, { method: "GET", headers });
96
219
  if (!response.ok) {
97
- const errorText = await response.text();
98
- logger.error("listZudelloFields failed", { status: response.status, error: errorText });
99
- return { success: false, error: `Failed to list fields: ${response.statusText}` };
220
+ const errorText = await response.text().catch(() => "Unknown error");
221
+ throw new Error(`Zudello API error: ${response.status} - ${errorText}`);
100
222
  }
101
223
  const data = await response.json();
102
- return { success: true, data: data.fields || [] };
224
+ logger.info("Zudello list field settings response received", {
225
+ httpStatus: response.status,
226
+ success: data.success,
227
+ fieldCount: Array.isArray(data.data) ? data.data.length : 0,
228
+ });
229
+ if (!data.success) {
230
+ return { success: false, error: data.message || "Failed to list field settings" };
231
+ }
232
+ if (options.fullObject) {
233
+ return { success: true, data: data.data || [] };
234
+ }
235
+ // Return simplified summaries
236
+ const summaries = (data.data || []).map((fs) => ({
237
+ uuid: fs.uuid,
238
+ path: fs.payload?.path || "",
239
+ label: fs.payload?.label || "",
240
+ model_name: fs.payload?.model_name || "",
241
+ context: fs.context || {},
242
+ }));
243
+ return { success: true, data: summaries };
103
244
  }
104
245
  catch (error) {
105
- logger.error("listZudelloFields error", {}, error);
246
+ logger.error("listZudelloFieldSettings error", {}, error);
106
247
  return { success: false, error: error.message };
107
248
  }
108
249
  }
109
- export async function getZudelloField(authContext, uuid) {
250
+ /**
251
+ * Get a specific field settings by UUID
252
+ */
253
+ export async function getZudelloFieldSettings(authContext, fieldUuid) {
110
254
  try {
111
255
  const { headers, apiBase } = buildZudelloRequest(authContext);
112
- const response = await fetch(`${apiBase}/api/v2/fields/${uuid}`, { method: "GET", headers });
256
+ const params = new URLSearchParams({
257
+ resource_type: "field_settings",
258
+ });
259
+ const url = `${apiBase}/general-store/api/v1/resources/${fieldUuid}?${params.toString()}`;
260
+ logger.info("Zudello get field settings request", { url, fieldUuid });
261
+ const response = await fetch(url, { method: "GET", headers });
113
262
  if (!response.ok) {
114
- const errorText = await response.text();
115
- logger.error("getZudelloField failed", { uuid, status: response.status, error: errorText });
116
- return { success: false, error: `Failed to get field: ${response.statusText}` };
263
+ if (response.status === 404) {
264
+ return { success: false, error: `Field settings not found: ${fieldUuid}` };
265
+ }
266
+ const errorText = await response.text().catch(() => "Unknown error");
267
+ throw new Error(`Zudello API error: ${response.status} - ${errorText}`);
268
+ }
269
+ const data = await response.json();
270
+ logger.info("Zudello get field settings response received", {
271
+ httpStatus: response.status,
272
+ success: data.success,
273
+ hasData: !!data.data,
274
+ });
275
+ if (!data.success || !data.data) {
276
+ return { success: false, error: `Field settings not found: ${fieldUuid}` };
117
277
  }
118
- return { success: true, data: await response.json() };
278
+ return { success: true, data: data.data };
119
279
  }
120
280
  catch (error) {
121
- logger.error("getZudelloField error", { uuid }, error);
281
+ logger.error("getZudelloFieldSettings error", { fieldUuid }, error);
122
282
  return { success: false, error: error.message };
123
283
  }
124
284
  }
125
- export async function createZudelloField(authContext, field) {
285
+ /**
286
+ * Create a new field settings
287
+ */
288
+ export async function createZudelloFieldSettings(authContext, payload, context = {}) {
126
289
  try {
127
290
  const { headers, apiBase } = buildZudelloRequest(authContext);
128
- const response = await fetch(`${apiBase}/api/v2/fields`, {
291
+ const params = new URLSearchParams({
292
+ resource_type: "field_settings",
293
+ });
294
+ const url = `${apiBase}/general-store/api/v1/resources/?${params.toString()}`;
295
+ const body = {
296
+ payload,
297
+ context,
298
+ };
299
+ logger.info("Zudello create field settings request", {
300
+ url,
301
+ path: payload.path,
302
+ label: payload.label,
303
+ model_name: payload.model_name,
304
+ context,
305
+ });
306
+ const response = await fetch(url, {
129
307
  method: "POST",
130
308
  headers,
131
- body: JSON.stringify(field),
309
+ body: JSON.stringify(body),
132
310
  });
133
311
  if (!response.ok) {
134
- const errorText = await response.text();
135
- logger.error("createZudelloField failed", { status: response.status, error: errorText });
136
- return { success: false, error: `Failed to create field: ${response.statusText}` };
312
+ const errorText = await response.text().catch(() => "Unknown error");
313
+ throw new Error(`Zudello API error: ${response.status} - ${errorText}`);
314
+ }
315
+ const data = await response.json();
316
+ logger.info("Zudello create field settings response received", {
317
+ httpStatus: response.status,
318
+ success: data.success,
319
+ uuid: data.data?.uuid,
320
+ });
321
+ if (!data.success) {
322
+ return { success: false, error: data.message || "Failed to create field settings" };
323
+ }
324
+ // Sync payload.uuid with resource uuid
325
+ const createdUuid = data.data?.uuid;
326
+ if (createdUuid && !payload.uuid) {
327
+ logger.info("Zudello syncing payload.uuid with resource uuid", { createdUuid });
328
+ const syncResult = await updateZudelloFieldSettings(authContext, createdUuid, { ...payload, uuid: createdUuid }, context);
329
+ if (!syncResult.success) {
330
+ logger.warn("Zudello failed to sync field settings payload.uuid", {
331
+ createdUuid,
332
+ error: syncResult.error,
333
+ });
334
+ return { success: true, data: data.data };
335
+ }
336
+ return { success: true, data: syncResult.data };
137
337
  }
138
- return { success: true, data: await response.json() };
338
+ return { success: true, data: data.data };
139
339
  }
140
340
  catch (error) {
141
- logger.error("createZudelloField error", {}, error);
341
+ logger.error("createZudelloFieldSettings error", { path: payload.path }, error);
142
342
  return { success: false, error: error.message };
143
343
  }
144
344
  }
145
- export async function updateZudelloField(authContext, uuid, updates) {
345
+ /**
346
+ * Update an existing field settings
347
+ */
348
+ export async function updateZudelloFieldSettings(authContext, fieldUuid, payload, context = {}) {
146
349
  try {
147
350
  const { headers, apiBase } = buildZudelloRequest(authContext);
148
- const response = await fetch(`${apiBase}/api/v2/fields/${uuid}`, {
149
- method: "PATCH",
351
+ const params = new URLSearchParams({
352
+ resource_type: "field_settings",
353
+ });
354
+ const url = `${apiBase}/general-store/api/v1/resources/${fieldUuid}?${params.toString()}`;
355
+ // Ensure payload.uuid matches the resource uuid
356
+ const body = {
357
+ payload: { ...payload, uuid: fieldUuid },
358
+ context,
359
+ };
360
+ logger.info("Zudello update field settings request", {
361
+ url,
362
+ fieldUuid,
363
+ path: payload.path,
364
+ label: payload.label,
365
+ });
366
+ const response = await fetch(url, {
367
+ method: "PUT",
150
368
  headers,
151
- body: JSON.stringify(updates),
369
+ body: JSON.stringify(body),
152
370
  });
153
371
  if (!response.ok) {
154
- const errorText = await response.text();
155
- logger.error("updateZudelloField failed", { uuid, status: response.status, error: errorText });
156
- return { success: false, error: `Failed to update field: ${response.statusText}` };
372
+ const errorText = await response.text().catch(() => "Unknown error");
373
+ throw new Error(`Zudello API error: ${response.status} - ${errorText}`);
157
374
  }
158
- return { success: true, data: await response.json() };
375
+ const data = await response.json();
376
+ logger.info("Zudello update field settings response received", {
377
+ httpStatus: response.status,
378
+ success: data.success,
379
+ version: data.data?.version,
380
+ });
381
+ if (!data.success) {
382
+ return { success: false, error: data.message || "Failed to update field settings" };
383
+ }
384
+ return { success: true, data: data.data };
159
385
  }
160
386
  catch (error) {
161
- logger.error("updateZudelloField error", { uuid }, error);
387
+ logger.error("updateZudelloFieldSettings error", { fieldUuid }, error);
162
388
  return { success: false, error: error.message };
163
389
  }
164
390
  }
391
+ // ============================================================================
165
392
  // Quick Action Functions
166
- export async function listZudelloQuickActions(authContext, options = {}) {
393
+ // ============================================================================
394
+ /**
395
+ * List quick actions
396
+ */
397
+ export async function listZudelloQuickActions(authContext) {
167
398
  try {
168
399
  const { headers, apiBase } = buildZudelloRequest(authContext);
169
- const params = new URLSearchParams();
170
- if (options.model)
171
- params.append("model", options.model);
172
- const query = params.toString() ? `?${params.toString()}` : "";
173
- const url = `${apiBase}/api/v2/quick-actions${query}`;
400
+ const params = new URLSearchParams({
401
+ resource_type: "quick_actions",
402
+ });
403
+ const url = `${apiBase}/general-store/api/v1/resources/?${params.toString()}`;
404
+ logger.info("Zudello list quick actions request", { url });
174
405
  const response = await fetch(url, { method: "GET", headers });
175
406
  if (!response.ok) {
176
- const errorText = await response.text();
177
- logger.error("listZudelloQuickActions failed", { status: response.status, error: errorText });
178
- return { success: false, error: `Failed to list quick actions: ${response.statusText}` };
407
+ throw new Error(`Zudello API error: ${response.status} ${response.statusText}`);
179
408
  }
180
409
  const data = await response.json();
181
- return { success: true, data: data.quickActions || [] };
410
+ logger.info("Zudello list quick actions response received", {
411
+ httpStatus: response.status,
412
+ success: data.success,
413
+ resultCount: Array.isArray(data.data) ? data.data.length : 0,
414
+ });
415
+ return { success: true, data: data.data || [] };
182
416
  }
183
417
  catch (error) {
184
418
  logger.error("listZudelloQuickActions error", {}, error);
185
419
  return { success: false, error: error.message };
186
420
  }
187
421
  }
188
- export async function getZudelloQuickAction(authContext, uuid) {
422
+ /**
423
+ * Get a single quick action by UUID
424
+ */
425
+ export async function getZudelloQuickAction(authContext, quickActionUuid) {
189
426
  try {
190
427
  const { headers, apiBase } = buildZudelloRequest(authContext);
191
- const response = await fetch(`${apiBase}/api/v2/quick-actions/${uuid}`, { method: "GET", headers });
428
+ const params = new URLSearchParams({
429
+ resource_type: "quick_actions",
430
+ });
431
+ const url = `${apiBase}/general-store/api/v1/resources/${quickActionUuid}?${params.toString()}`;
432
+ logger.info("Zudello get quick action request", { url, quickActionUuid });
433
+ const response = await fetch(url, { method: "GET", headers });
192
434
  if (!response.ok) {
193
- const errorText = await response.text();
194
- logger.error("getZudelloQuickAction failed", { uuid, status: response.status, error: errorText });
195
- return { success: false, error: `Failed to get quick action: ${response.statusText}` };
435
+ if (response.status === 404) {
436
+ return { success: false, error: `Quick action not found: ${quickActionUuid}` };
437
+ }
438
+ throw new Error(`Zudello API error: ${response.status} ${response.statusText}`);
439
+ }
440
+ const data = await response.json();
441
+ logger.info("Zudello get quick action response received", {
442
+ httpStatus: response.status,
443
+ success: data.success,
444
+ hasData: !!data.data,
445
+ });
446
+ if (!data.success || !data.data) {
447
+ return { success: false, error: `Quick action not found with UUID: ${quickActionUuid}` };
196
448
  }
197
- return { success: true, data: await response.json() };
449
+ return { success: true, data: data.data };
198
450
  }
199
451
  catch (error) {
200
- logger.error("getZudelloQuickAction error", { uuid }, error);
452
+ logger.error("getZudelloQuickAction error", { quickActionUuid }, error);
201
453
  return { success: false, error: error.message };
202
454
  }
203
455
  }
204
- export async function createZudelloQuickAction(authContext, action) {
456
+ /**
457
+ * Create a new quick action
458
+ */
459
+ export async function createZudelloQuickAction(authContext, payload) {
205
460
  try {
206
461
  const { headers, apiBase } = buildZudelloRequest(authContext);
207
- const response = await fetch(`${apiBase}/api/v2/quick-actions`, {
462
+ const params = new URLSearchParams({
463
+ resource_type: "quick_actions",
464
+ });
465
+ const url = `${apiBase}/general-store/api/v1/resources/?${params.toString()}`;
466
+ const body = { payload };
467
+ logger.info("Zudello create quick action request", {
468
+ url,
469
+ key: payload.key,
470
+ name: payload.name,
471
+ });
472
+ const response = await fetch(url, {
208
473
  method: "POST",
209
474
  headers,
210
- body: JSON.stringify(action),
475
+ body: JSON.stringify(body),
211
476
  });
212
477
  if (!response.ok) {
213
- const errorText = await response.text();
214
- logger.error("createZudelloQuickAction failed", { status: response.status, error: errorText });
215
- return { success: false, error: `Failed to create quick action: ${response.statusText}` };
478
+ const errorText = await response.text().catch(() => "Unknown error");
479
+ throw new Error(`Zudello API error: ${response.status} - ${errorText}`);
216
480
  }
217
- return { success: true, data: await response.json() };
481
+ const data = await response.json();
482
+ logger.info("Zudello create quick action response received", {
483
+ httpStatus: response.status,
484
+ success: data.success,
485
+ uuid: data.data?.uuid,
486
+ });
487
+ if (!data.success) {
488
+ return { success: false, error: data.message || "Failed to create quick action" };
489
+ }
490
+ return { success: true, data: data.data };
218
491
  }
219
492
  catch (error) {
220
- logger.error("createZudelloQuickAction error", {}, error);
493
+ logger.error("createZudelloQuickAction error", { key: payload.key }, error);
221
494
  return { success: false, error: error.message };
222
495
  }
223
496
  }
224
- export async function updateZudelloQuickAction(authContext, uuid, updates) {
497
+ /**
498
+ * Update an existing quick action
499
+ */
500
+ export async function updateZudelloQuickAction(authContext, quickActionUuid, payload) {
225
501
  try {
226
502
  const { headers, apiBase } = buildZudelloRequest(authContext);
227
- const response = await fetch(`${apiBase}/api/v2/quick-actions/${uuid}`, {
228
- method: "PATCH",
503
+ const params = new URLSearchParams({
504
+ resource_type: "quick_actions",
505
+ });
506
+ const url = `${apiBase}/general-store/api/v1/resources/${quickActionUuid}?${params.toString()}`;
507
+ const body = { payload };
508
+ logger.info("Zudello update quick action request", {
509
+ url,
510
+ quickActionUuid,
511
+ key: payload.key,
512
+ name: payload.name,
513
+ });
514
+ const response = await fetch(url, {
515
+ method: "PUT",
229
516
  headers,
230
- body: JSON.stringify(updates),
517
+ body: JSON.stringify(body),
231
518
  });
232
519
  if (!response.ok) {
233
- const errorText = await response.text();
234
- logger.error("updateZudelloQuickAction failed", { uuid, status: response.status, error: errorText });
235
- return { success: false, error: `Failed to update quick action: ${response.statusText}` };
520
+ const errorText = await response.text().catch(() => "Unknown error");
521
+ throw new Error(`Zudello API error: ${response.status} - ${errorText}`);
522
+ }
523
+ const data = await response.json();
524
+ logger.info("Zudello update quick action response received", {
525
+ httpStatus: response.status,
526
+ success: data.success,
527
+ version: data.data?.version,
528
+ });
529
+ if (!data.success) {
530
+ return { success: false, error: data.message || "Failed to update quick action" };
236
531
  }
237
- return { success: true, data: await response.json() };
532
+ return { success: true, data: data.data };
238
533
  }
239
534
  catch (error) {
240
- logger.error("updateZudelloQuickAction error", { uuid }, error);
535
+ logger.error("updateZudelloQuickAction error", { quickActionUuid }, error);
241
536
  return { success: false, error: error.message };
242
537
  }
243
538
  }
244
- export async function triggerZudelloQuickAction(authContext, uuid, resourceUuids) {
539
+ /**
540
+ * Trigger a quick action on one or more documents
541
+ * This fires a button event that sentences can listen to
542
+ */
543
+ export async function triggerZudelloQuickAction(authContext, key, documentUuids) {
245
544
  try {
246
545
  const { headers, apiBase } = buildZudelloRequest(authContext);
247
- const response = await fetch(`${apiBase}/api/v2/quick-actions/${uuid}/trigger`, {
546
+ const url = `${apiBase}/team-data/v1/resources/button`;
547
+ const body = {
548
+ key,
549
+ uuids: documentUuids,
550
+ };
551
+ logger.info("Zudello trigger quick action request", {
552
+ url,
553
+ key,
554
+ documentCount: documentUuids.length,
555
+ });
556
+ const response = await fetch(url, {
248
557
  method: "POST",
249
558
  headers,
250
- body: JSON.stringify({ resourceUuids }),
559
+ body: JSON.stringify(body),
251
560
  });
252
561
  if (!response.ok) {
253
- const errorText = await response.text();
254
- logger.error("triggerZudelloQuickAction failed", { uuid, status: response.status, error: errorText });
255
- return { success: false, error: `Failed to trigger quick action: ${response.statusText}` };
562
+ const errorText = await response.text().catch(() => "Unknown error");
563
+ throw new Error(`Zudello API error: ${response.status} - ${errorText}`);
256
564
  }
257
- return { success: true, data: await response.json() };
565
+ const data = await response.json();
566
+ logger.info("Zudello trigger quick action response received", {
567
+ httpStatus: response.status,
568
+ success: data.success,
569
+ succeeded: data.succeeded?.length || 0,
570
+ failed: data.failed?.length || 0,
571
+ });
572
+ return {
573
+ success: true,
574
+ data: {
575
+ success: data.success,
576
+ status: data.status,
577
+ succeeded: data.succeeded || [],
578
+ failed: data.failed || [],
579
+ },
580
+ };
258
581
  }
259
582
  catch (error) {
260
- logger.error("triggerZudelloQuickAction error", { uuid }, error);
583
+ logger.error("triggerZudelloQuickAction error", { key }, error);
261
584
  return { success: false, error: error.message };
262
585
  }
263
586
  }
587
+ // ============================================================================
588
+ // Legacy Aliases (for backward compatibility)
589
+ // ============================================================================
590
+ // These aliases maintain backward compatibility with old function names
591
+ export const listZudelloFields = listZudelloFieldSettings;
592
+ export const getZudelloField = getZudelloFieldSettings;
593
+ export const createZudelloField = createZudelloFieldSettings;
594
+ export const updateZudelloField = updateZudelloFieldSettings;
264
595
  //# sourceMappingURL=admin.js.map