@commandable/integration-data 0.3.0 → 0.4.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 (673) hide show
  1. package/dist/credentials-index.d.ts +2 -7
  2. package/dist/credentials-index.d.ts.map +1 -1
  3. package/dist/credentials-index.js +11 -677
  4. package/dist/credentials-index.js.map +1 -1
  5. package/dist/generated/registry.d.ts +3 -0
  6. package/dist/generated/registry.d.ts.map +1 -0
  7. package/dist/generated/registry.js +11889 -0
  8. package/dist/generated/registry.js.map +1 -0
  9. package/dist/index.d.ts +2 -2
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +1 -1
  12. package/dist/index.js.map +1 -1
  13. package/dist/loader.d.ts +1 -133
  14. package/dist/loader.d.ts.map +1 -1
  15. package/dist/loader.js +63 -194
  16. package/dist/loader.js.map +1 -1
  17. package/dist/tools.d.ts +2 -2
  18. package/dist/tools.d.ts.map +1 -1
  19. package/dist/tools.js +1 -1
  20. package/dist/tools.js.map +1 -1
  21. package/dist/types.d.ts +88 -0
  22. package/dist/types.d.ts.map +1 -0
  23. package/dist/types.js +2 -0
  24. package/dist/types.js.map +1 -0
  25. package/package.json +3 -4
  26. package/integrations/README.md +0 -52
  27. package/integrations/__tests__/liveHarness.ts +0 -97
  28. package/integrations/__tests__/usageParity.ts +0 -54
  29. package/integrations/airtable/.env.test +0 -9
  30. package/integrations/airtable/.env.test.example +0 -11
  31. package/integrations/airtable/README.md +0 -27
  32. package/integrations/airtable/__tests__/get_handlers.test.ts +0 -187
  33. package/integrations/airtable/__tests__/usage_parity.test.ts +0 -9
  34. package/integrations/airtable/__tests__/write_and_admin_handlers.test.ts +0 -116
  35. package/integrations/airtable/credentials.json +0 -26
  36. package/integrations/airtable/credentials_hint.md +0 -4
  37. package/integrations/airtable/handlers/create_record.js +0 -12
  38. package/integrations/airtable/handlers/delete_record.js +0 -7
  39. package/integrations/airtable/handlers/get_record.js +0 -4
  40. package/integrations/airtable/handlers/get_table_schema.js +0 -6
  41. package/integrations/airtable/handlers/list_bases.js +0 -4
  42. package/integrations/airtable/handlers/list_records.js +0 -25
  43. package/integrations/airtable/handlers/list_table_fields.js +0 -6
  44. package/integrations/airtable/handlers/list_tables.js +0 -4
  45. package/integrations/airtable/handlers/list_views.js +0 -6
  46. package/integrations/airtable/handlers/search_records.js +0 -6
  47. package/integrations/airtable/handlers/update_record.js +0 -11
  48. package/integrations/airtable/manifest.json +0 -83
  49. package/integrations/airtable/schemas/create_record.json +0 -12
  50. package/integrations/airtable/schemas/delete_record.json +0 -11
  51. package/integrations/airtable/schemas/empty.json +0 -6
  52. package/integrations/airtable/schemas/get_record.json +0 -11
  53. package/integrations/airtable/schemas/id_base.json +0 -9
  54. package/integrations/airtable/schemas/id_base_table.json +0 -10
  55. package/integrations/airtable/schemas/list_records.json +0 -26
  56. package/integrations/airtable/schemas/search_records.json +0 -12
  57. package/integrations/airtable/schemas/update_record.json +0 -13
  58. package/integrations/confluence/.env.test +0 -25
  59. package/integrations/confluence/.env.test.example +0 -36
  60. package/integrations/confluence/README.md +0 -28
  61. package/integrations/confluence/__tests__/get_handlers.test.ts +0 -121
  62. package/integrations/confluence/__tests__/usage_parity.test.ts +0 -14
  63. package/integrations/confluence/__tests__/write_handlers.test.ts +0 -131
  64. package/integrations/confluence/credentials.json +0 -39
  65. package/integrations/confluence/credentials_hint.md +0 -4
  66. package/integrations/confluence/credentials_hint_api_token.md +0 -9
  67. package/integrations/confluence/credentials_hint_oauth_token.md +0 -8
  68. package/integrations/confluence/handlers/add_comment.js +0 -19
  69. package/integrations/confluence/handlers/add_label.js +0 -16
  70. package/integrations/confluence/handlers/create_page.js +0 -22
  71. package/integrations/confluence/handlers/delete_page.js +0 -17
  72. package/integrations/confluence/handlers/get_comments.js +0 -33
  73. package/integrations/confluence/handlers/get_page_children.js +0 -30
  74. package/integrations/confluence/handlers/get_space.js +0 -22
  75. package/integrations/confluence/handlers/list_spaces.js +0 -39
  76. package/integrations/confluence/handlers/read_page.js +0 -49
  77. package/integrations/confluence/handlers/search_pages.js +0 -42
  78. package/integrations/confluence/handlers/update_page.js +0 -42
  79. package/integrations/confluence/manifest.json +0 -85
  80. package/integrations/confluence/prompt.md +0 -55
  81. package/integrations/confluence/schemas/add_comment.json +0 -22
  82. package/integrations/confluence/schemas/add_label.json +0 -19
  83. package/integrations/confluence/schemas/create_page.json +0 -33
  84. package/integrations/confluence/schemas/delete_page.json +0 -23
  85. package/integrations/confluence/schemas/empty.json +0 -6
  86. package/integrations/confluence/schemas/get_comments.json +0 -24
  87. package/integrations/confluence/schemas/get_page_children.json +0 -28
  88. package/integrations/confluence/schemas/get_space.json +0 -18
  89. package/integrations/confluence/schemas/list_spaces.json +0 -36
  90. package/integrations/confluence/schemas/read_page.json +0 -28
  91. package/integrations/confluence/schemas/search_pages.json +0 -26
  92. package/integrations/confluence/schemas/update_page.json +0 -31
  93. package/integrations/github/.env.test +0 -16
  94. package/integrations/github/.env.test.example +0 -17
  95. package/integrations/github/README.md +0 -75
  96. package/integrations/github/__tests__/get_handlers.test.ts +0 -305
  97. package/integrations/github/__tests__/usage_parity.test.ts +0 -22
  98. package/integrations/github/__tests__/write_handlers.test.ts +0 -496
  99. package/integrations/github/credentials.json +0 -47
  100. package/integrations/github/credentials_hint.md +0 -7
  101. package/integrations/github/credentials_hint_classic_pat.md +0 -8
  102. package/integrations/github/credentials_hint_fine_grained_pat.md +0 -9
  103. package/integrations/github/handlers/add_labels_to_issue.js +0 -12
  104. package/integrations/github/handlers/close_issue.js +0 -5
  105. package/integrations/github/handlers/comment_on_issue.js +0 -5
  106. package/integrations/github/handlers/create_branch.js +0 -33
  107. package/integrations/github/handlers/create_commit.js +0 -84
  108. package/integrations/github/handlers/create_file.js +0 -46
  109. package/integrations/github/handlers/create_issue.js +0 -10
  110. package/integrations/github/handlers/create_or_update_file.js +0 -21
  111. package/integrations/github/handlers/create_pull_request.js +0 -16
  112. package/integrations/github/handlers/create_pull_request_review.js +0 -10
  113. package/integrations/github/handlers/create_release.js +0 -14
  114. package/integrations/github/handlers/create_repo.js +0 -11
  115. package/integrations/github/handlers/delete_branch.js +0 -8
  116. package/integrations/github/handlers/delete_file.js +0 -22
  117. package/integrations/github/handlers/delete_repo.js +0 -6
  118. package/integrations/github/handlers/edit_file.js +0 -52
  119. package/integrations/github/handlers/edit_files.js +0 -107
  120. package/integrations/github/handlers/fork_repo.js +0 -10
  121. package/integrations/github/handlers/get_commit.js +0 -8
  122. package/integrations/github/handlers/get_file_contents.js +0 -21
  123. package/integrations/github/handlers/get_issue.js +0 -4
  124. package/integrations/github/handlers/get_job_logs.js +0 -6
  125. package/integrations/github/handlers/get_latest_release.js +0 -4
  126. package/integrations/github/handlers/get_me.js +0 -4
  127. package/integrations/github/handlers/get_pull_request.js +0 -4
  128. package/integrations/github/handlers/get_pull_request_diff.js +0 -8
  129. package/integrations/github/handlers/get_repo.js +0 -4
  130. package/integrations/github/handlers/get_repo_tree.js +0 -12
  131. package/integrations/github/handlers/get_workflow_run.js +0 -4
  132. package/integrations/github/handlers/list_branches.js +0 -9
  133. package/integrations/github/handlers/list_commits.js +0 -11
  134. package/integrations/github/handlers/list_issue_comments.js +0 -8
  135. package/integrations/github/handlers/list_issues.js +0 -11
  136. package/integrations/github/handlers/list_labels.js +0 -8
  137. package/integrations/github/handlers/list_pull_request_comments.js +0 -8
  138. package/integrations/github/handlers/list_pull_request_files.js +0 -8
  139. package/integrations/github/handlers/list_pull_requests.js +0 -13
  140. package/integrations/github/handlers/list_releases.js +0 -8
  141. package/integrations/github/handlers/list_repos_install.js +0 -4
  142. package/integrations/github/handlers/list_repos_user.js +0 -4
  143. package/integrations/github/handlers/list_tags.js +0 -8
  144. package/integrations/github/handlers/list_workflow_runs.js +0 -11
  145. package/integrations/github/handlers/merge_pull_request.js +0 -14
  146. package/integrations/github/handlers/request_pull_request_reviewers.js +0 -10
  147. package/integrations/github/handlers/search_code.js +0 -8
  148. package/integrations/github/handlers/search_issues.js +0 -8
  149. package/integrations/github/handlers/search_pull_requests.js +0 -8
  150. package/integrations/github/handlers/search_repos.js +0 -10
  151. package/integrations/github/handlers/update_issue.js +0 -15
  152. package/integrations/github/handlers/update_pull_request.js +0 -13
  153. package/integrations/github/manifest.json +0 -91
  154. package/integrations/github/prompt.md +0 -36
  155. package/integrations/github/schemas/add_labels_to_issue.json +0 -12
  156. package/integrations/github/schemas/close_issue.json +0 -10
  157. package/integrations/github/schemas/comment_on_issue.json +0 -11
  158. package/integrations/github/schemas/create_branch.json +0 -12
  159. package/integrations/github/schemas/create_commit.json +0 -25
  160. package/integrations/github/schemas/create_file.json +0 -13
  161. package/integrations/github/schemas/create_issue.json +0 -13
  162. package/integrations/github/schemas/create_or_update_file.json +0 -15
  163. package/integrations/github/schemas/create_pull_request.json +0 -15
  164. package/integrations/github/schemas/create_pull_request_review.json +0 -17
  165. package/integrations/github/schemas/create_release.json +0 -16
  166. package/integrations/github/schemas/create_repo.json +0 -12
  167. package/integrations/github/schemas/delete_branch.json +0 -10
  168. package/integrations/github/schemas/delete_file.json +0 -13
  169. package/integrations/github/schemas/delete_repo.json +0 -10
  170. package/integrations/github/schemas/edit_file.json +0 -26
  171. package/integrations/github/schemas/edit_files.json +0 -39
  172. package/integrations/github/schemas/empty.json +0 -5
  173. package/integrations/github/schemas/fork_repo.json +0 -11
  174. package/integrations/github/schemas/get_commit.json +0 -12
  175. package/integrations/github/schemas/get_file_contents.json +0 -11
  176. package/integrations/github/schemas/get_issue.json +0 -10
  177. package/integrations/github/schemas/get_job_logs.json +0 -10
  178. package/integrations/github/schemas/get_pull_request.json +0 -10
  179. package/integrations/github/schemas/get_pull_request_diff.json +0 -10
  180. package/integrations/github/schemas/get_repo.json +0 -9
  181. package/integrations/github/schemas/get_repo_tree.json +0 -12
  182. package/integrations/github/schemas/get_workflow_run.json +0 -10
  183. package/integrations/github/schemas/list_branches.json +0 -12
  184. package/integrations/github/schemas/list_commits.json +0 -14
  185. package/integrations/github/schemas/list_issue_comments.json +0 -12
  186. package/integrations/github/schemas/list_issues.json +0 -14
  187. package/integrations/github/schemas/list_labels.json +0 -11
  188. package/integrations/github/schemas/list_pull_request_comments.json +0 -12
  189. package/integrations/github/schemas/list_pull_request_files.json +0 -12
  190. package/integrations/github/schemas/list_pull_requests.json +0 -16
  191. package/integrations/github/schemas/list_releases.json +0 -11
  192. package/integrations/github/schemas/list_tags.json +0 -11
  193. package/integrations/github/schemas/list_workflow_runs.json +0 -18
  194. package/integrations/github/schemas/merge_pull_request.json +0 -14
  195. package/integrations/github/schemas/owner_repo.json +0 -9
  196. package/integrations/github/schemas/request_pull_request_reviewers.json +0 -20
  197. package/integrations/github/schemas/search_code.json +0 -10
  198. package/integrations/github/schemas/search_issues.json +0 -10
  199. package/integrations/github/schemas/search_pull_requests.json +0 -10
  200. package/integrations/github/schemas/search_repos.json +0 -12
  201. package/integrations/github/schemas/update_issue.json +0 -15
  202. package/integrations/github/schemas/update_pull_request.json +0 -15
  203. package/integrations/google-calendar/.env.test.example +0 -11
  204. package/integrations/google-calendar/README.md +0 -41
  205. package/integrations/google-calendar/__tests__/get_handlers.test.ts +0 -120
  206. package/integrations/google-calendar/__tests__/usage_parity.test.ts +0 -9
  207. package/integrations/google-calendar/__tests__/write_and_admin_handlers.test.ts +0 -155
  208. package/integrations/google-calendar/credentials.json +0 -59
  209. package/integrations/google-calendar/credentials_hint.md +0 -9
  210. package/integrations/google-calendar/credentials_hint_oauth_token.md +0 -8
  211. package/integrations/google-calendar/credentials_hint_service_account.md +0 -10
  212. package/integrations/google-calendar/handlers/create_event.js +0 -6
  213. package/integrations/google-calendar/handlers/delete_acl.js +0 -6
  214. package/integrations/google-calendar/handlers/delete_event.js +0 -7
  215. package/integrations/google-calendar/handlers/freebusy_query.js +0 -4
  216. package/integrations/google-calendar/handlers/get_acl.js +0 -5
  217. package/integrations/google-calendar/handlers/get_calendar.js +0 -4
  218. package/integrations/google-calendar/handlers/get_event.js +0 -9
  219. package/integrations/google-calendar/handlers/insert_acl.js +0 -6
  220. package/integrations/google-calendar/handlers/list_acl.js +0 -5
  221. package/integrations/google-calendar/handlers/list_calendars.js +0 -4
  222. package/integrations/google-calendar/handlers/list_colors.js +0 -4
  223. package/integrations/google-calendar/handlers/list_events.js +0 -23
  224. package/integrations/google-calendar/handlers/list_settings.js +0 -4
  225. package/integrations/google-calendar/handlers/move_event.js +0 -6
  226. package/integrations/google-calendar/handlers/patch_event.js +0 -5
  227. package/integrations/google-calendar/handlers/quick_add.js +0 -6
  228. package/integrations/google-calendar/handlers/update_acl.js +0 -7
  229. package/integrations/google-calendar/manifest.json +0 -35
  230. package/integrations/google-calendar/prompt.md +0 -68
  231. package/integrations/google-calendar/schemas/create_event.json +0 -34
  232. package/integrations/google-calendar/schemas/delete_acl.json +0 -9
  233. package/integrations/google-calendar/schemas/empty.json +0 -1
  234. package/integrations/google-calendar/schemas/freebusy_query.json +0 -13
  235. package/integrations/google-calendar/schemas/get_acl.json +0 -9
  236. package/integrations/google-calendar/schemas/id_calendar.json +0 -8
  237. package/integrations/google-calendar/schemas/id_calendar_event.json +0 -11
  238. package/integrations/google-calendar/schemas/insert_acl.json +0 -18
  239. package/integrations/google-calendar/schemas/list_events.json +0 -17
  240. package/integrations/google-calendar/schemas/move_event.json +0 -10
  241. package/integrations/google-calendar/schemas/patch_event.json +0 -10
  242. package/integrations/google-calendar/schemas/quick_add.json +0 -9
  243. package/integrations/google-calendar/schemas/update_acl.json +0 -10
  244. package/integrations/google-docs/README.md +0 -30
  245. package/integrations/google-docs/__tests__/get_handlers.test.ts +0 -83
  246. package/integrations/google-docs/__tests__/usage_parity.test.ts +0 -9
  247. package/integrations/google-docs/__tests__/write_handlers.test.ts +0 -238
  248. package/integrations/google-docs/credentials.json +0 -57
  249. package/integrations/google-docs/credentials_hint.md +0 -9
  250. package/integrations/google-docs/credentials_hint_oauth_token.md +0 -8
  251. package/integrations/google-docs/credentials_hint_service_account.md +0 -10
  252. package/integrations/google-docs/handlers/append_text.js +0 -12
  253. package/integrations/google-docs/handlers/batch_update.js +0 -13
  254. package/integrations/google-docs/handlers/create_document.js +0 -9
  255. package/integrations/google-docs/handlers/delete_first_match.js +0 -50
  256. package/integrations/google-docs/handlers/insert_inline_image_after_first_match.js +0 -41
  257. package/integrations/google-docs/handlers/insert_page_break_after_first_match.js +0 -49
  258. package/integrations/google-docs/handlers/insert_table_after_first_match.js +0 -49
  259. package/integrations/google-docs/handlers/insert_text_after_first_match.js +0 -51
  260. package/integrations/google-docs/handlers/read_document.js +0 -189
  261. package/integrations/google-docs/handlers/replace_all_text.js +0 -8
  262. package/integrations/google-docs/handlers/style_first_match.js +0 -42
  263. package/integrations/google-docs/handlers/update_document_style.js +0 -8
  264. package/integrations/google-docs/handlers/update_paragraph_style_for_first_match.js +0 -48
  265. package/integrations/google-docs/manifest.json +0 -43
  266. package/integrations/google-docs/prompt.md +0 -49
  267. package/integrations/google-docs/schemas/append_text.json +0 -10
  268. package/integrations/google-docs/schemas/apply_text_style.json +0 -13
  269. package/integrations/google-docs/schemas/batch_update.json +0 -16
  270. package/integrations/google-docs/schemas/create_document.json +0 -8
  271. package/integrations/google-docs/schemas/delete_content_range.json +0 -11
  272. package/integrations/google-docs/schemas/delete_first_match.json +0 -10
  273. package/integrations/google-docs/schemas/insert_inline_image.json +0 -12
  274. package/integrations/google-docs/schemas/insert_inline_image_after_first_match.json +0 -12
  275. package/integrations/google-docs/schemas/insert_page_break.json +0 -10
  276. package/integrations/google-docs/schemas/insert_page_break_after_first_match.json +0 -11
  277. package/integrations/google-docs/schemas/insert_table.json +0 -12
  278. package/integrations/google-docs/schemas/insert_table_after_first_match.json +0 -13
  279. package/integrations/google-docs/schemas/insert_text_after_first_match.json +0 -12
  280. package/integrations/google-docs/schemas/insert_text_at.json +0 -11
  281. package/integrations/google-docs/schemas/read_document.json +0 -12
  282. package/integrations/google-docs/schemas/replace_all_text.json +0 -12
  283. package/integrations/google-docs/schemas/style_first_match.json +0 -12
  284. package/integrations/google-docs/schemas/update_document_style.json +0 -11
  285. package/integrations/google-docs/schemas/update_paragraph_style.json +0 -13
  286. package/integrations/google-docs/schemas/update_paragraph_style_for_first_match.json +0 -12
  287. package/integrations/google-docs/todo.md +0 -18
  288. package/integrations/google-drive/README.md +0 -26
  289. package/integrations/google-drive/__tests__/handlers.test.ts +0 -145
  290. package/integrations/google-drive/__tests__/usage_parity.test.ts +0 -9
  291. package/integrations/google-drive/credentials.json +0 -59
  292. package/integrations/google-drive/credentials_hint_oauth_token.md +0 -8
  293. package/integrations/google-drive/credentials_hint_service_account.md +0 -10
  294. package/integrations/google-drive/handlers/create_file.js +0 -15
  295. package/integrations/google-drive/handlers/create_folder.js +0 -15
  296. package/integrations/google-drive/handlers/delete_file.js +0 -14
  297. package/integrations/google-drive/handlers/get_file.js +0 -5
  298. package/integrations/google-drive/handlers/get_file_content.js +0 -41
  299. package/integrations/google-drive/handlers/list_files.js +0 -15
  300. package/integrations/google-drive/handlers/move_file.js +0 -12
  301. package/integrations/google-drive/handlers/search_files.js +0 -20
  302. package/integrations/google-drive/handlers/share_file.js +0 -20
  303. package/integrations/google-drive/manifest.json +0 -69
  304. package/integrations/google-drive/prompt.md +0 -59
  305. package/integrations/google-drive/schemas/create_file.json +0 -12
  306. package/integrations/google-drive/schemas/create_folder.json +0 -11
  307. package/integrations/google-drive/schemas/delete_file.json +0 -10
  308. package/integrations/google-drive/schemas/get_file.json +0 -10
  309. package/integrations/google-drive/schemas/get_file_content.json +0 -11
  310. package/integrations/google-drive/schemas/list_files.json +0 -12
  311. package/integrations/google-drive/schemas/move_file.json +0 -12
  312. package/integrations/google-drive/schemas/search_files.json +0 -14
  313. package/integrations/google-drive/schemas/share_file.json +0 -23
  314. package/integrations/google-gmail/.env.test.example +0 -11
  315. package/integrations/google-gmail/README.md +0 -49
  316. package/integrations/google-gmail/__tests__/get_handlers.test.ts +0 -134
  317. package/integrations/google-gmail/__tests__/usage_parity.test.ts +0 -9
  318. package/integrations/google-gmail/__tests__/write_and_admin_handlers.test.ts +0 -211
  319. package/integrations/google-gmail/credentials.json +0 -59
  320. package/integrations/google-gmail/credentials_hint_oauth_token.md +0 -8
  321. package/integrations/google-gmail/credentials_hint_service_account.md +0 -10
  322. package/integrations/google-gmail/handlers/create_draft_email.js +0 -27
  323. package/integrations/google-gmail/handlers/create_label.js +0 -12
  324. package/integrations/google-gmail/handlers/delete_draft.js +0 -13
  325. package/integrations/google-gmail/handlers/delete_label.js +0 -13
  326. package/integrations/google-gmail/handlers/delete_message.js +0 -13
  327. package/integrations/google-gmail/handlers/delete_thread.js +0 -13
  328. package/integrations/google-gmail/handlers/get_draft.js +0 -6
  329. package/integrations/google-gmail/handlers/get_label.js +0 -6
  330. package/integrations/google-gmail/handlers/get_message.js +0 -14
  331. package/integrations/google-gmail/handlers/get_profile.js +0 -5
  332. package/integrations/google-gmail/handlers/get_thread.js +0 -14
  333. package/integrations/google-gmail/handlers/list_drafts.js +0 -15
  334. package/integrations/google-gmail/handlers/list_labels.js +0 -5
  335. package/integrations/google-gmail/handlers/list_messages.js +0 -19
  336. package/integrations/google-gmail/handlers/list_threads.js +0 -19
  337. package/integrations/google-gmail/handlers/modify_message.js +0 -11
  338. package/integrations/google-gmail/handlers/modify_thread.js +0 -11
  339. package/integrations/google-gmail/handlers/read_email.js +0 -56
  340. package/integrations/google-gmail/handlers/send_draft.js +0 -15
  341. package/integrations/google-gmail/handlers/send_email.js +0 -22
  342. package/integrations/google-gmail/handlers/trash_message.js +0 -6
  343. package/integrations/google-gmail/handlers/trash_thread.js +0 -6
  344. package/integrations/google-gmail/handlers/untrash_message.js +0 -6
  345. package/integrations/google-gmail/handlers/untrash_thread.js +0 -6
  346. package/integrations/google-gmail/handlers/update_label.js +0 -15
  347. package/integrations/google-gmail/manifest.json +0 -44
  348. package/integrations/google-gmail/prompt.md +0 -52
  349. package/integrations/google-gmail/schemas/create_draft_email.json +0 -16
  350. package/integrations/google-gmail/schemas/create_label.json +0 -26
  351. package/integrations/google-gmail/schemas/get_message.json +0 -20
  352. package/integrations/google-gmail/schemas/get_profile.json +0 -11
  353. package/integrations/google-gmail/schemas/get_thread.json +0 -20
  354. package/integrations/google-gmail/schemas/id_draft.json +0 -16
  355. package/integrations/google-gmail/schemas/id_label.json +0 -16
  356. package/integrations/google-gmail/schemas/id_message.json +0 -16
  357. package/integrations/google-gmail/schemas/id_thread.json +0 -16
  358. package/integrations/google-gmail/schemas/list_drafts.json +0 -30
  359. package/integrations/google-gmail/schemas/list_labels.json +0 -11
  360. package/integrations/google-gmail/schemas/list_messages.json +0 -35
  361. package/integrations/google-gmail/schemas/list_threads.json +0 -35
  362. package/integrations/google-gmail/schemas/modify_message.json +0 -24
  363. package/integrations/google-gmail/schemas/modify_thread.json +0 -24
  364. package/integrations/google-gmail/schemas/read_email.json +0 -10
  365. package/integrations/google-gmail/schemas/send_draft.json +0 -29
  366. package/integrations/google-gmail/schemas/send_email.json +0 -17
  367. package/integrations/google-gmail/schemas/update_label.json +0 -33
  368. package/integrations/google-sheet/README.md +0 -27
  369. package/integrations/google-sheet/__tests__/get_handlers.test.ts +0 -76
  370. package/integrations/google-sheet/__tests__/usage_parity.test.ts +0 -9
  371. package/integrations/google-sheet/__tests__/write_handlers.test.ts +0 -153
  372. package/integrations/google-sheet/credentials.json +0 -57
  373. package/integrations/google-sheet/credentials_hint.md +0 -9
  374. package/integrations/google-sheet/credentials_hint_oauth_token.md +0 -8
  375. package/integrations/google-sheet/credentials_hint_service_account.md +0 -10
  376. package/integrations/google-sheet/handlers/append_values.js +0 -18
  377. package/integrations/google-sheet/handlers/batch_clear_values.js +0 -6
  378. package/integrations/google-sheet/handlers/batch_update.js +0 -14
  379. package/integrations/google-sheet/handlers/batch_update_values.js +0 -16
  380. package/integrations/google-sheet/handlers/clear_values.js +0 -6
  381. package/integrations/google-sheet/handlers/copy_to_spreadsheet.js +0 -6
  382. package/integrations/google-sheet/handlers/create_spreadsheet.js +0 -5
  383. package/integrations/google-sheet/handlers/get_spreadsheet.js +0 -14
  384. package/integrations/google-sheet/handlers/read_sheet.js +0 -75
  385. package/integrations/google-sheet/handlers/update_values.js +0 -16
  386. package/integrations/google-sheet/manifest.json +0 -76
  387. package/integrations/google-sheet/prompt.md +0 -49
  388. package/integrations/google-sheet/schemas/append_values.json +0 -16
  389. package/integrations/google-sheet/schemas/batch_clear_values.json +0 -10
  390. package/integrations/google-sheet/schemas/batch_update.json +0 -13
  391. package/integrations/google-sheet/schemas/batch_update_values.json +0 -25
  392. package/integrations/google-sheet/schemas/clear_values.json +0 -10
  393. package/integrations/google-sheet/schemas/copy_to_spreadsheet.json +0 -11
  394. package/integrations/google-sheet/schemas/create_spreadsheet.json +0 -11
  395. package/integrations/google-sheet/schemas/get_spreadsheet.json +0 -16
  396. package/integrations/google-sheet/schemas/read_sheet.json +0 -21
  397. package/integrations/google-sheet/schemas/update_values.json +0 -15
  398. package/integrations/google-slides/README.md +0 -28
  399. package/integrations/google-slides/__tests__/get_handlers.test.ts +0 -74
  400. package/integrations/google-slides/__tests__/usage_parity.test.ts +0 -9
  401. package/integrations/google-slides/__tests__/write_handlers.test.ts +0 -131
  402. package/integrations/google-slides/credentials.json +0 -57
  403. package/integrations/google-slides/credentials_hint.md +0 -9
  404. package/integrations/google-slides/credentials_hint_oauth_token.md +0 -8
  405. package/integrations/google-slides/credentials_hint_service_account.md +0 -10
  406. package/integrations/google-slides/handlers/append_text_to_title_of_first_slide.js +0 -17
  407. package/integrations/google-slides/handlers/batch_update.js +0 -15
  408. package/integrations/google-slides/handlers/create_presentation.js +0 -8
  409. package/integrations/google-slides/handlers/create_slide_after_first_match.js +0 -20
  410. package/integrations/google-slides/handlers/get_page_thumbnail.js +0 -12
  411. package/integrations/google-slides/handlers/insert_image_after_first_match.js +0 -19
  412. package/integrations/google-slides/handlers/insert_shape_after_first_match.js +0 -21
  413. package/integrations/google-slides/handlers/read_presentation.js +0 -51
  414. package/integrations/google-slides/handlers/replace_text_first_match.js +0 -9
  415. package/integrations/google-slides/handlers/set_background_color_for_slide_index.js +0 -15
  416. package/integrations/google-slides/handlers/style_text_first_match.js +0 -48
  417. package/integrations/google-slides/manifest.json +0 -41
  418. package/integrations/google-slides/prompt.md +0 -56
  419. package/integrations/google-slides/schemas/append_text_to_title_of_first_slide.json +0 -11
  420. package/integrations/google-slides/schemas/batch_update.json +0 -13
  421. package/integrations/google-slides/schemas/create_presentation.json +0 -8
  422. package/integrations/google-slides/schemas/create_slide_after_first_match.json +0 -11
  423. package/integrations/google-slides/schemas/get_page_thumbnail.json +0 -12
  424. package/integrations/google-slides/schemas/get_presentation.json +0 -9
  425. package/integrations/google-slides/schemas/insert_image_after_first_match.json +0 -13
  426. package/integrations/google-slides/schemas/insert_shape_after_first_match.json +0 -13
  427. package/integrations/google-slides/schemas/replace_text_first_match.json +0 -12
  428. package/integrations/google-slides/schemas/set_background_color_for_slide_index.json +0 -11
  429. package/integrations/google-slides/schemas/style_text_first_match.json +0 -12
  430. package/integrations/hubspot/.env.test.example +0 -20
  431. package/integrations/hubspot/README.md +0 -48
  432. package/integrations/hubspot/__tests__/get_handlers.test.ts +0 -151
  433. package/integrations/hubspot/__tests__/usage_parity.test.ts +0 -10
  434. package/integrations/hubspot/__tests__/write_handlers.test.ts +0 -244
  435. package/integrations/hubspot/credentials.json +0 -50
  436. package/integrations/hubspot/credentials_hint.md +0 -20
  437. package/integrations/hubspot/credentials_hint_oauth_token.md +0 -16
  438. package/integrations/hubspot/handlers/archive_company.js +0 -13
  439. package/integrations/hubspot/handlers/archive_contact.js +0 -13
  440. package/integrations/hubspot/handlers/archive_deal.js +0 -13
  441. package/integrations/hubspot/handlers/archive_ticket.js +0 -13
  442. package/integrations/hubspot/handlers/create_association.js +0 -18
  443. package/integrations/hubspot/handlers/create_company.js +0 -13
  444. package/integrations/hubspot/handlers/create_contact.js +0 -14
  445. package/integrations/hubspot/handlers/create_deal.js +0 -16
  446. package/integrations/hubspot/handlers/create_note.js +0 -44
  447. package/integrations/hubspot/handlers/create_task.js +0 -48
  448. package/integrations/hubspot/handlers/create_ticket.js +0 -15
  449. package/integrations/hubspot/handlers/get_associations.js +0 -14
  450. package/integrations/hubspot/handlers/get_company.js +0 -18
  451. package/integrations/hubspot/handlers/get_contact.js +0 -18
  452. package/integrations/hubspot/handlers/get_deal.js +0 -18
  453. package/integrations/hubspot/handlers/get_ticket.js +0 -20
  454. package/integrations/hubspot/handlers/list_owners.js +0 -12
  455. package/integrations/hubspot/handlers/list_pipelines.js +0 -5
  456. package/integrations/hubspot/handlers/list_properties.js +0 -11
  457. package/integrations/hubspot/handlers/remove_association.js +0 -22
  458. package/integrations/hubspot/handlers/search_companies.js +0 -43
  459. package/integrations/hubspot/handlers/search_contacts.js +0 -43
  460. package/integrations/hubspot/handlers/search_deals.js +0 -43
  461. package/integrations/hubspot/handlers/search_notes.js +0 -43
  462. package/integrations/hubspot/handlers/search_tasks.js +0 -43
  463. package/integrations/hubspot/handlers/search_tickets.js +0 -43
  464. package/integrations/hubspot/handlers/update_company.js +0 -13
  465. package/integrations/hubspot/handlers/update_contact.js +0 -14
  466. package/integrations/hubspot/handlers/update_deal.js +0 -16
  467. package/integrations/hubspot/handlers/update_task.js +0 -17
  468. package/integrations/hubspot/handlers/update_ticket.js +0 -15
  469. package/integrations/hubspot/manifest.json +0 -230
  470. package/integrations/hubspot/prompt.md +0 -69
  471. package/integrations/hubspot/schemas/archive_company.json +0 -13
  472. package/integrations/hubspot/schemas/archive_contact.json +0 -13
  473. package/integrations/hubspot/schemas/archive_deal.json +0 -9
  474. package/integrations/hubspot/schemas/archive_ticket.json +0 -9
  475. package/integrations/hubspot/schemas/create_association.json +0 -24
  476. package/integrations/hubspot/schemas/create_company.json +0 -14
  477. package/integrations/hubspot/schemas/create_contact.json +0 -15
  478. package/integrations/hubspot/schemas/create_deal.json +0 -20
  479. package/integrations/hubspot/schemas/create_note.json +0 -37
  480. package/integrations/hubspot/schemas/create_task.json +0 -51
  481. package/integrations/hubspot/schemas/create_ticket.json +0 -16
  482. package/integrations/hubspot/schemas/empty.json +0 -6
  483. package/integrations/hubspot/schemas/get_associations.json +0 -30
  484. package/integrations/hubspot/schemas/get_company.json +0 -27
  485. package/integrations/hubspot/schemas/get_contact.json +0 -27
  486. package/integrations/hubspot/schemas/get_deal.json +0 -20
  487. package/integrations/hubspot/schemas/get_ticket.json +0 -20
  488. package/integrations/hubspot/schemas/list_owners.json +0 -25
  489. package/integrations/hubspot/schemas/list_pipelines.json +0 -13
  490. package/integrations/hubspot/schemas/list_properties.json +0 -17
  491. package/integrations/hubspot/schemas/remove_association.json +0 -24
  492. package/integrations/hubspot/schemas/search_companies.json +0 -56
  493. package/integrations/hubspot/schemas/search_contacts.json +0 -56
  494. package/integrations/hubspot/schemas/search_deals.json +0 -43
  495. package/integrations/hubspot/schemas/search_notes.json +0 -43
  496. package/integrations/hubspot/schemas/search_tasks.json +0 -43
  497. package/integrations/hubspot/schemas/search_tickets.json +0 -43
  498. package/integrations/hubspot/schemas/update_company.json +0 -20
  499. package/integrations/hubspot/schemas/update_contact.json +0 -21
  500. package/integrations/hubspot/schemas/update_deal.json +0 -19
  501. package/integrations/hubspot/schemas/update_task.json +0 -31
  502. package/integrations/hubspot/schemas/update_ticket.json +0 -18
  503. package/integrations/jira/.env.test +0 -46
  504. package/integrations/jira/.env.test.example +0 -41
  505. package/integrations/jira/README.md +0 -46
  506. package/integrations/jira/__tests__/get_handlers.test.ts +0 -193
  507. package/integrations/jira/__tests__/usage_parity.test.ts +0 -14
  508. package/integrations/jira/__tests__/write_handlers.test.ts +0 -157
  509. package/integrations/jira/credentials.json +0 -39
  510. package/integrations/jira/credentials_hint.md +0 -4
  511. package/integrations/jira/credentials_hint_api_token.md +0 -6
  512. package/integrations/jira/credentials_hint_oauth_token.md +0 -6
  513. package/integrations/jira/handlers/add_comment.js +0 -9
  514. package/integrations/jira/handlers/assign_issue.js +0 -11
  515. package/integrations/jira/handlers/create_issue.js +0 -37
  516. package/integrations/jira/handlers/create_sprint.js +0 -19
  517. package/integrations/jira/handlers/delete_issue.js +0 -10
  518. package/integrations/jira/handlers/get_backlog_issues.js +0 -13
  519. package/integrations/jira/handlers/get_board.js +0 -6
  520. package/integrations/jira/handlers/get_issue.js +0 -63
  521. package/integrations/jira/handlers/get_issue_comments.js +0 -31
  522. package/integrations/jira/handlers/get_myself.js +0 -14
  523. package/integrations/jira/handlers/get_project.js +0 -28
  524. package/integrations/jira/handlers/get_sprint.js +0 -5
  525. package/integrations/jira/handlers/get_sprint_issues.js +0 -13
  526. package/integrations/jira/handlers/get_transitions.js +0 -23
  527. package/integrations/jira/handlers/list_boards.js +0 -34
  528. package/integrations/jira/handlers/list_projects.js +0 -29
  529. package/integrations/jira/handlers/list_sprints.js +0 -29
  530. package/integrations/jira/handlers/move_issues_to_sprint.js +0 -11
  531. package/integrations/jira/handlers/search_issues.js +0 -43
  532. package/integrations/jira/handlers/search_users.js +0 -21
  533. package/integrations/jira/handlers/transition_issue.js +0 -44
  534. package/integrations/jira/handlers/update_issue.js +0 -40
  535. package/integrations/jira/handlers/update_sprint.js +0 -20
  536. package/integrations/jira/manifest.json +0 -204
  537. package/integrations/jira/prompt.md +0 -80
  538. package/integrations/jira/schemas/add_comment.json +0 -16
  539. package/integrations/jira/schemas/assign_issue.json +0 -16
  540. package/integrations/jira/schemas/create_issue.json +0 -49
  541. package/integrations/jira/schemas/create_sprint.json +0 -29
  542. package/integrations/jira/schemas/delete_issue.json +0 -12
  543. package/integrations/jira/schemas/empty.json +0 -6
  544. package/integrations/jira/schemas/get_backlog_issues.json +0 -33
  545. package/integrations/jira/schemas/get_board.json +0 -13
  546. package/integrations/jira/schemas/get_issue.json +0 -23
  547. package/integrations/jira/schemas/get_issue_comments.json +0 -23
  548. package/integrations/jira/schemas/get_project.json +0 -17
  549. package/integrations/jira/schemas/get_sprint.json +0 -13
  550. package/integrations/jira/schemas/get_sprint_issues.json +0 -33
  551. package/integrations/jira/schemas/get_transitions.json +0 -12
  552. package/integrations/jira/schemas/list_boards.json +0 -27
  553. package/integrations/jira/schemas/list_projects.json +0 -22
  554. package/integrations/jira/schemas/list_sprints.json +0 -29
  555. package/integrations/jira/schemas/move_issues_to_sprint.json +0 -19
  556. package/integrations/jira/schemas/search_issues.json +0 -28
  557. package/integrations/jira/schemas/search_users.json +0 -18
  558. package/integrations/jira/schemas/transition_issue.json +0 -38
  559. package/integrations/jira/schemas/update_issue.json +0 -47
  560. package/integrations/jira/schemas/update_sprint.json +0 -33
  561. package/integrations/new_integration_prompt.md +0 -216
  562. package/integrations/notion/.env.test +0 -10
  563. package/integrations/notion/.env.test.example +0 -13
  564. package/integrations/notion/README.md +0 -42
  565. package/integrations/notion/__tests__/get_handlers.test.ts +0 -156
  566. package/integrations/notion/__tests__/usage_parity.test.ts +0 -9
  567. package/integrations/notion/__tests__/write_and_admin_handlers.test.ts +0 -186
  568. package/integrations/notion/credentials.json +0 -27
  569. package/integrations/notion/credentials_hint.md +0 -5
  570. package/integrations/notion/handlers/append_block_children.js +0 -7
  571. package/integrations/notion/handlers/create_comment.js +0 -10
  572. package/integrations/notion/handlers/create_database.js +0 -11
  573. package/integrations/notion/handlers/create_page.js +0 -13
  574. package/integrations/notion/handlers/delete_block.js +0 -8
  575. package/integrations/notion/handlers/get_me.js +0 -4
  576. package/integrations/notion/handlers/list_block_children.js +0 -10
  577. package/integrations/notion/handlers/list_comments.js +0 -14
  578. package/integrations/notion/handlers/list_users.js +0 -10
  579. package/integrations/notion/handlers/query_database.js +0 -10
  580. package/integrations/notion/handlers/retrieve_block.js +0 -4
  581. package/integrations/notion/handlers/retrieve_database.js +0 -4
  582. package/integrations/notion/handlers/retrieve_page.js +0 -4
  583. package/integrations/notion/handlers/retrieve_page_property_item.js +0 -10
  584. package/integrations/notion/handlers/retrieve_user.js +0 -4
  585. package/integrations/notion/handlers/search.js +0 -11
  586. package/integrations/notion/handlers/update_block.js +0 -7
  587. package/integrations/notion/handlers/update_database.js +0 -10
  588. package/integrations/notion/handlers/update_page_properties.js +0 -10
  589. package/integrations/notion/manifest.json +0 -168
  590. package/integrations/notion/prompt.md +0 -26
  591. package/integrations/notion/schemas/append_block_children.json +0 -10
  592. package/integrations/notion/schemas/create_comment.json +0 -18
  593. package/integrations/notion/schemas/create_database.json +0 -18
  594. package/integrations/notion/schemas/create_page.json +0 -22
  595. package/integrations/notion/schemas/delete_block.json +0 -9
  596. package/integrations/notion/schemas/empty.json +0 -6
  597. package/integrations/notion/schemas/id_block.json +0 -9
  598. package/integrations/notion/schemas/id_database.json +0 -9
  599. package/integrations/notion/schemas/id_page.json +0 -9
  600. package/integrations/notion/schemas/id_user.json +0 -9
  601. package/integrations/notion/schemas/list_block_children.json +0 -11
  602. package/integrations/notion/schemas/list_comments.json +0 -15
  603. package/integrations/notion/schemas/list_users.json +0 -9
  604. package/integrations/notion/schemas/query_database.json +0 -13
  605. package/integrations/notion/schemas/retrieve_page_property_item.json +0 -12
  606. package/integrations/notion/schemas/search.json +0 -27
  607. package/integrations/notion/schemas/update_block.json +0 -10
  608. package/integrations/notion/schemas/update_database.json +0 -13
  609. package/integrations/notion/schemas/update_page_properties.json +0 -13
  610. package/integrations/trello/.env.test +0 -6
  611. package/integrations/trello/.env.test.example +0 -9
  612. package/integrations/trello/README.md +0 -50
  613. package/integrations/trello/__tests__/get_handlers.test.ts +0 -225
  614. package/integrations/trello/__tests__/usage_parity.test.ts +0 -9
  615. package/integrations/trello/__tests__/write_and_admin_handlers.test.ts +0 -171
  616. package/integrations/trello/credentials.json +0 -32
  617. package/integrations/trello/credentials_hint.md +0 -4
  618. package/integrations/trello/handlers/add_checklist_to_card.js +0 -5
  619. package/integrations/trello/handlers/add_member_to_card.js +0 -5
  620. package/integrations/trello/handlers/archive_list.js +0 -5
  621. package/integrations/trello/handlers/close_board.js +0 -6
  622. package/integrations/trello/handlers/create_board.js +0 -11
  623. package/integrations/trello/handlers/create_card.js +0 -13
  624. package/integrations/trello/handlers/create_list.js +0 -7
  625. package/integrations/trello/handlers/delete_board.js +0 -13
  626. package/integrations/trello/handlers/delete_card.js +0 -9
  627. package/integrations/trello/handlers/get_board.js +0 -4
  628. package/integrations/trello/handlers/get_board_cards.js +0 -4
  629. package/integrations/trello/handlers/get_board_custom_fields.js +0 -4
  630. package/integrations/trello/handlers/get_board_labels.js +0 -4
  631. package/integrations/trello/handlers/get_board_lists.js +0 -4
  632. package/integrations/trello/handlers/get_board_members.js +0 -4
  633. package/integrations/trello/handlers/get_board_memberships.js +0 -4
  634. package/integrations/trello/handlers/get_card.js +0 -4
  635. package/integrations/trello/handlers/get_card_actions.js +0 -4
  636. package/integrations/trello/handlers/get_card_attachments.js +0 -4
  637. package/integrations/trello/handlers/get_card_checklists.js +0 -4
  638. package/integrations/trello/handlers/get_card_custom_field_items.js +0 -4
  639. package/integrations/trello/handlers/get_card_members.js +0 -4
  640. package/integrations/trello/handlers/get_list.js +0 -4
  641. package/integrations/trello/handlers/get_list_cards.js +0 -4
  642. package/integrations/trello/handlers/get_member.js +0 -4
  643. package/integrations/trello/handlers/get_member_boards.js +0 -4
  644. package/integrations/trello/handlers/get_member_organizations.js +0 -4
  645. package/integrations/trello/handlers/get_organization.js +0 -4
  646. package/integrations/trello/handlers/get_organization_boards.js +0 -4
  647. package/integrations/trello/handlers/move_card_to_list.js +0 -5
  648. package/integrations/trello/handlers/remove_member_from_card.js +0 -9
  649. package/integrations/trello/handlers/search.js +0 -5
  650. package/integrations/trello/handlers/update_card.js +0 -19
  651. package/integrations/trello/handlers/update_list.js +0 -11
  652. package/integrations/trello/manifest.json +0 -252
  653. package/integrations/trello/schemas/add_checklist_to_card.json +0 -10
  654. package/integrations/trello/schemas/add_member_to_card.json +0 -10
  655. package/integrations/trello/schemas/archive_list.json +0 -9
  656. package/integrations/trello/schemas/close_board.json +0 -10
  657. package/integrations/trello/schemas/create_board.json +0 -12
  658. package/integrations/trello/schemas/create_card.json +0 -13
  659. package/integrations/trello/schemas/create_list.json +0 -11
  660. package/integrations/trello/schemas/delete_board.json +0 -10
  661. package/integrations/trello/schemas/delete_card.json +0 -9
  662. package/integrations/trello/schemas/display_trello_cards.json +0 -45
  663. package/integrations/trello/schemas/empty.json +0 -5
  664. package/integrations/trello/schemas/get_member.json +0 -5
  665. package/integrations/trello/schemas/id_board.json +0 -8
  666. package/integrations/trello/schemas/id_card.json +0 -8
  667. package/integrations/trello/schemas/id_list.json +0 -8
  668. package/integrations/trello/schemas/id_org.json +0 -8
  669. package/integrations/trello/schemas/move_card_to_list.json +0 -10
  670. package/integrations/trello/schemas/remove_member_from_card.json +0 -10
  671. package/integrations/trello/schemas/search.json +0 -8
  672. package/integrations/trello/schemas/update_card.json +0 -16
  673. package/integrations/trello/schemas/update_list.json +0 -12
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@commandable/integration-data",
3
- "version": "0.3.0",
3
+ "version": "0.4.0",
4
4
  "description": "Integration data (manifests, schemas, handlers, credential configs) for Commandable integrations.",
5
5
  "license": "AGPL-3.0-only",
6
6
  "repository": {
@@ -42,12 +42,11 @@
42
42
  },
43
43
  "scripts": {
44
44
  "clean": "node -e \"require('node:fs').rmSync('dist',{ recursive:true, force:true })\"",
45
- "build": "npm run clean && tsc -p tsconfig.json",
45
+ "build": "npm run clean && node scripts/generate-registry.mjs && tsc -p tsconfig.json",
46
46
  "prepack": "npm run build",
47
47
  "test": "vitest run"
48
48
  },
49
49
  "files": [
50
- "dist",
51
- "integrations"
50
+ "dist"
52
51
  ]
53
52
  }
@@ -1,52 +0,0 @@
1
- Integration Data
2
- ================
3
-
4
- Purpose
5
- -------
6
-
7
- This directory contains per-integration metadata and tool templates to inject standard read/write capabilities into tasks.
8
-
9
- Structure
10
- ---------
11
-
12
- Each integration lives under its own folder, e.g. `lib/integration-data/trello/`, with:
13
-
14
- - `manifest.json`: declarative index of tools and files
15
- - `schemas/*.json`: JSON Schemas for tool inputs
16
- - `handlers/*.js`: JavaScript handlers executed in the sandbox; use `integration.fetch()`
17
- - `prompt.md` (optional): extra prompt notes shown to the LLM
18
- - `openapi.json` (optional): reference spec; not used at runtime
19
-
20
- Manifest format
21
- ---------------
22
-
23
- ```
24
- {
25
- "name": string,
26
- "version": string,
27
- "baseUrl"?: string,
28
- "tools": {
29
- "read": [ToolRef],
30
- "write": [ToolRef]
31
- }
32
- }
33
-
34
- ToolRef := {
35
- "name": string,
36
- "description": string,
37
- "inputSchema": string, // path to JSON schema file
38
- "handler": string // path to JS handler file
39
- }
40
- ```
41
-
42
- Handler pattern
43
- ---------------
44
-
45
- Handlers use the `integration.fetch(path, options?)` pattern rather than binding to a concrete integration id. At runtime, the host binds the task's selected integration instance as `integration` in the sandbox.
46
-
47
- Notes
48
- -----
49
-
50
- - Keep schemas strict and aligned with handler expectations.
51
- - Read tools MUST be side-effect free (GET only). Write tools include POST/PUT/DELETE.
52
- - Prefer small, composable tools that mirror API resources.
@@ -1,97 +0,0 @@
1
- import { IntegrationProxy } from '../../../core/src/integrations/proxy.js'
2
- import { loadIntegrationTools } from '../../../core/src/integrations/dataLoader.js'
3
- import { createSafeHandlerFromString } from '../../../core/src/integrations/sandbox.js'
4
- import { buildSandboxUtils } from '../../../core/src/integrations/sandboxUtils.js'
5
-
6
- type ToolDef = {
7
- name: string
8
- handlerCode: string
9
- utils?: string[]
10
- }
11
-
12
- type ToolSet = {
13
- read: ToolDef[]
14
- write: ToolDef[]
15
- admin: ToolDef[]
16
- }
17
-
18
- export function hasEnv(...keys: string[]) {
19
- const env = process.env as Record<string, string | undefined>
20
- return keys.every(k => Boolean(env[k] && String(env[k]).trim().length > 0))
21
- }
22
-
23
- export function safeCleanup(fn: () => Promise<any>) {
24
- return fn().catch(() => {})
25
- }
26
-
27
- export function createCredentialStore(getCredentials: () => Promise<any>) {
28
- return { getCredentials }
29
- }
30
-
31
- export function createIntegrationNode(type: string, opts?: { id?: string, label?: string, credentialId?: string, credentialVariant?: string }) {
32
- const id = opts?.id || `node-${type}`
33
- return {
34
- spaceId: 'ci',
35
- id,
36
- referenceId: id,
37
- type,
38
- label: opts?.label || type,
39
- connectionMethod: 'credentials',
40
- credentialId: opts?.credentialId || `${type}-creds`,
41
- credentialVariant: opts?.credentialVariant,
42
- } as any
43
- }
44
-
45
- export function createProxy(credentialStore: { getCredentials: () => Promise<any> }) {
46
- return new IntegrationProxy({ credentialStore })
47
- }
48
-
49
- function getTools(type: string, credentialVariant?: string): ToolSet {
50
- const tools = loadIntegrationTools(type, { credentialVariant })
51
- if (!tools)
52
- throw new Error(`Missing integration tools for '${type}'`)
53
- return tools as any
54
- }
55
-
56
- function compileTool(proxy: IntegrationProxy, node: any, tool: ToolDef) {
57
- const integration = { fetch: (path: string, init?: RequestInit) => proxy.call(node, path, init) }
58
- const wrapper = `async (input) => {\n const integration = getIntegration('${String(node?.id || 'node')}');\n const __inner = ${tool.handlerCode};\n return await __inner(input);\n}`
59
- const utils = buildSandboxUtils(Array.isArray(tool.utils) ? tool.utils : undefined)
60
- const safeHandler = createSafeHandlerFromString(wrapper, () => integration, utils)
61
- return async (input: any) => {
62
- const res = await safeHandler(input)
63
- if (!res.success)
64
- throw res.result
65
- return res.result
66
- }
67
- }
68
-
69
- export function createToolbox(type: string, proxy: IntegrationProxy, node: any, credentialVariant?: string) {
70
- const tools = getTools(type, credentialVariant)
71
-
72
- const findTool = (scope: keyof ToolSet, name: string) => tools[scope].find(t => t.name === name)
73
-
74
- return {
75
- /** Returns true if the tool exists in this variant's toolset. */
76
- hasTool: (scope: keyof ToolSet, name: string) => !!findTool(scope, name),
77
-
78
- read: (name: string) => {
79
- const tool = findTool('read', name)
80
- if (!tool)
81
- throw new Error(`Missing read tool '${name}' for '${type}' (variant: ${credentialVariant ?? 'default'})`)
82
- return compileTool(proxy, node, tool)
83
- },
84
- write: (name: string) => {
85
- const tool = findTool('write', name)
86
- if (!tool)
87
- throw new Error(`Missing write tool '${name}' for '${type}' (variant: ${credentialVariant ?? 'default'})`)
88
- return compileTool(proxy, node, tool)
89
- },
90
- admin: (name: string) => {
91
- const tool = findTool('admin', name) || findTool('write', name) || findTool('read', name)
92
- if (!tool)
93
- throw new Error(`Missing admin tool '${name}' for '${type}' (variant: ${credentialVariant ?? 'default'})`)
94
- return compileTool(proxy, node, tool)
95
- },
96
- }
97
- }
@@ -1,54 +0,0 @@
1
- import { existsSync, readdirSync, readFileSync } from 'node:fs'
2
- import { resolve } from 'node:path'
3
- import { fileURLToPath } from 'node:url'
4
- import { loadIntegrationManifest } from '../../../core/src/integrations/dataLoader.js'
5
-
6
- function escapeRegExp(str: string): string {
7
- return str.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')
8
- }
9
-
10
- /**
11
- * Returns tool names from the manifest that are not exercised in any test file,
12
- * excluding tools that are restricted to specific credential variants (those are
13
- * covered by their own variant-specific test suites).
14
- */
15
- export function getMissingToolUsages(opts: { integrationName: string, importMetaUrl: string, credentialVariant?: string }): string[] {
16
- const manifest = loadIntegrationManifest(opts.integrationName)
17
- if (!manifest)
18
- throw new Error(`Missing integration manifest for '${opts.integrationName}'`)
19
-
20
- const tools = manifest.tools as any[]
21
-
22
- const relevantTools = tools.filter((t) => {
23
- if (!t.credentialVariants || !Array.isArray(t.credentialVariants) || t.credentialVariants.length === 0)
24
- return true
25
- if (opts.credentialVariant)
26
- return t.credentialVariants.includes(opts.credentialVariant)
27
- return false
28
- })
29
-
30
- const toolNames = relevantTools.map(t => t.name)
31
-
32
- const testsDir = fileURLToPath(new URL('.', opts.importMetaUrl))
33
- if (!existsSync(testsDir))
34
- throw new Error(`Missing tests directory: ${testsDir}`)
35
-
36
- const testFiles = readdirSync(testsDir)
37
- .filter(f => /\.test\.(t|j)s$/.test(f) && !f.includes('usage_parity.test'))
38
- .map(f => resolve(testsDir, f))
39
-
40
- const fileContents = testFiles.map(f => readFileSync(f, 'utf8'))
41
-
42
- const missing: string[] = []
43
- for (const name of toolNames) {
44
- const nameRe = new RegExp(
45
- `(?:build(?:Read|Write|Admin)?(?:Handler)?|\\.(?:read|write|admin))\\(\\s*['\"\`]${escapeRegExp(name)}['\"\`]\\s*\\)`,
46
- 'm',
47
- )
48
- const found = fileContents.some(src => nameRe.test(src))
49
- if (!found)
50
- missing.push(name)
51
- }
52
-
53
- return missing
54
- }
@@ -1,9 +0,0 @@
1
- # Airtable
2
- # Get a token (personal access token): `https://airtable.com/create/tokens`
3
- # - Ensure it has access to the base below with `data.records:read` + `data.records:write`.
4
- AIRTABLE_TOKEN=patf7AMs47t4VXfXx.54919964eace80b86d3d276cd802d76f36986cf98b6b10d4d52632d571925795
5
- # Required for Airtable write tests (the suite creates/updates/deletes records; it does NOT create bases/tables)
6
- # Base/table IDs can be found in the Airtable UI/API docs for your base.
7
- # The table must have a writable text field named `Name`.
8
- AIRTABLE_TEST_WRITE_BASE_ID=appia9Fsf4hSPTOul
9
- AIRTABLE_TEST_WRITE_TABLE_ID=tbldlBE10g1S6aP3v
@@ -1,11 +0,0 @@
1
- # Airtable live integration tests
2
- #
3
- # Get a personal access token at: https://airtable.com/create/tokens
4
- # Ensure it has access to the base below with data.records:read + data.records:write.
5
- AIRTABLE_TOKEN=
6
- #
7
- # Required for write tests (the suite creates/updates/deletes records; it does NOT create
8
- # bases/tables). Base/table IDs can be found in the Airtable UI/API docs for your base.
9
- # The table must have a writable text field named `Name`.
10
- AIRTABLE_TEST_WRITE_BASE_ID=
11
- AIRTABLE_TEST_WRITE_TABLE_ID=
@@ -1,27 +0,0 @@
1
- # Airtable
2
-
3
- **11 tools**
4
-
5
- ![Airtable tests](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/theomccabe/771bd329f303087690c522afa1baa6f3/raw/test-airtable.json)
6
-
7
- ## Credential variants
8
-
9
- | Variant | Label |
10
- |---|---|
11
- | `personal_access_token` | Personal Access Token _(default)_ |
12
-
13
- ## Tools
14
-
15
- | Tool | Scope | Description |
16
- |---|---|---|
17
- | `list_bases` | read | List bases available to the authenticated user. |
18
- | `list_tables` | read | List tables in a base (metadata). |
19
- | `get_table_schema` | read | Fetch a table's schema (fields, views) by tableId via metadata. |
20
- | `list_table_fields` | read | List fields for a table (metadata). |
21
- | `list_views` | read | List views for a table (metadata). |
22
- | `list_records` | read | List records from a table with optional filters. |
23
- | `get_record` | read | Fetch a single record by recordId. |
24
- | `search_records` | read | Search records in a table using a field and value (filterByFormula). |
25
- | `create_record` | write | Create a record in a table. |
26
- | `update_record` | write | Update a record in a table. |
27
- | `delete_record` | write | Delete a record from a table. |
@@ -1,187 +0,0 @@
1
- import { afterAll, beforeAll, describe, expect, it } from 'vitest'
2
- import { IntegrationProxy } from '../../../../core/src/integrations/proxy.js'
3
- import { loadIntegrationTools } from '../../../../core/src/integrations/dataLoader.js'
4
-
5
- // LIVE Airtable integration tests using credentials
6
- // Required env vars:
7
- // - AIRTABLE_TOKEN
8
- // Optional (pins read tests to a specific base/table instead of auto-discovering):
9
- // - AIRTABLE_TEST_WRITE_BASE_ID
10
- // - AIRTABLE_TEST_WRITE_TABLE_ID
11
-
12
- interface Ctx {
13
- baseId?: string
14
- tableId?: string
15
- recordId?: string
16
- ownedRecordId?: string
17
- }
18
-
19
- const env = process.env as Record<string, string>
20
- const hasEnv = (...keys: string[]) => keys.every(k => !!env[k] && env[k].trim().length > 0)
21
- const suite = hasEnv(
22
- 'AIRTABLE_TOKEN',
23
- )
24
- ? describe
25
- : describe.skip
26
-
27
- suite('airtable read handlers (live)', () => {
28
- const ctx: Ctx = {}
29
- let buildHandler: (name: string) => ((input: any) => Promise<any>)
30
- let buildWriteHandler: (name: string) => ((input: any) => Promise<any>)
31
-
32
- beforeAll(async () => {
33
- const credentialStore = {
34
- getCredentials: async () => ({ token: env.AIRTABLE_TOKEN || '' }),
35
- }
36
-
37
- const proxy = new IntegrationProxy({ credentialStore })
38
- const integrationNode = {
39
- spaceId: 'ci',
40
- id: 'node-airtable',
41
- referenceId: 'node-airtable',
42
- type: 'airtable',
43
- label: 'Airtable',
44
- connectionMethod: 'credentials',
45
- credentialId: 'airtable-creds',
46
- } as any
47
-
48
- const tools = loadIntegrationTools('airtable')
49
- expect(tools).toBeTruthy()
50
-
51
- buildHandler = (name: string) => {
52
- const tool = tools!.read.find(t => t.name === name)
53
- expect(tool, `tool ${name} exists`).toBeTruthy()
54
- const integration = {
55
- fetch: (path: string, init?: RequestInit) => proxy.call(integrationNode, path, init),
56
- }
57
- const build = new Function('integration', `return (${tool!.handlerCode});`)
58
- return build(integration) as (input: any) => Promise<any>
59
- }
60
-
61
- buildWriteHandler = (name: string) => {
62
- const tool = tools!.write.find(t => t.name === name)
63
- expect(tool, `write tool ${name} exists`).toBeTruthy()
64
- const integration = {
65
- fetch: (path: string, init?: RequestInit) => proxy.call(integrationNode, path, init),
66
- }
67
- const build = new Function('integration', `return (${tool!.handlerCode});`)
68
- return build(integration) as (input: any) => Promise<any>
69
- }
70
-
71
- // Use explicit test base/table if provided, otherwise auto-discover from first base
72
- if (env.AIRTABLE_TEST_WRITE_BASE_ID && env.AIRTABLE_TEST_WRITE_TABLE_ID) {
73
- ctx.baseId = env.AIRTABLE_TEST_WRITE_BASE_ID
74
- ctx.tableId = env.AIRTABLE_TEST_WRITE_TABLE_ID
75
- }
76
- else {
77
- const list_bases = buildHandler('list_bases')
78
- const bases = await list_bases({})
79
- ctx.baseId = bases?.bases?.[0]?.id || bases?.[0]?.id
80
-
81
- if (ctx.baseId) {
82
- const list_tables = buildHandler('list_tables')
83
- const tablesResp = await list_tables({ baseId: ctx.baseId })
84
- const tables = tablesResp?.tables || tablesResp
85
- ctx.tableId = tables?.[0]?.id
86
- }
87
- }
88
-
89
- // Create a dedicated record so get_record has a stable ID that the concurrent
90
- // write suite cannot accidentally delete out from under us.
91
- if (ctx.baseId && ctx.tableId) {
92
- try {
93
- const create_record = buildWriteHandler('create_record')
94
- const created = await create_record({
95
- baseId: ctx.baseId,
96
- tableId: ctx.tableId,
97
- fields: { Name: `ReadTest ${Date.now()}` },
98
- })
99
- const rec = created?.records?.[0] || created
100
- ctx.ownedRecordId = rec?.id
101
- ctx.recordId = rec?.id
102
- }
103
- catch {
104
- // If create fails (e.g. no write permission), fall back to discovering a record
105
- const list_records = buildHandler('list_records')
106
- const recs = await list_records({ baseId: ctx.baseId, tableId: ctx.tableId, pageSize: 1 })
107
- const records = recs?.records || recs
108
- ctx.recordId = records?.[0]?.id
109
- }
110
- }
111
- }, 60000)
112
-
113
- afterAll(async () => {
114
- if (ctx.ownedRecordId && ctx.baseId && ctx.tableId) {
115
- try {
116
- const delete_record = buildWriteHandler('delete_record')
117
- await delete_record({ baseId: ctx.baseId, tableId: ctx.tableId, recordId: ctx.ownedRecordId })
118
- }
119
- catch {}
120
- }
121
- })
122
-
123
- it('list_bases returns bases', async () => {
124
- const handler = buildHandler('list_bases')
125
- const result = await handler({})
126
- expect(result).toBeTruthy()
127
- }, 30000)
128
-
129
- it('list_tables returns tables for base', async () => {
130
- if (!ctx.baseId)
131
- return expect(true).toBe(true)
132
- const handler = buildHandler('list_tables')
133
- const result = await handler({ baseId: ctx.baseId })
134
- expect(result).toBeTruthy()
135
- }, 30000)
136
-
137
- it('get_table_schema returns a table schema', async () => {
138
- if (!ctx.baseId || !ctx.tableId)
139
- return expect(true).toBe(true)
140
- const handler = buildHandler('get_table_schema')
141
- const result = await handler({ baseId: ctx.baseId, tableId: ctx.tableId })
142
- expect(result?.id || result?.name).toBeTruthy()
143
- }, 30000)
144
-
145
- it('list_table_fields returns fields', async () => {
146
- if (!ctx.baseId || !ctx.tableId)
147
- return expect(true).toBe(true)
148
- const handler = buildHandler('list_table_fields')
149
- const result = await handler({ baseId: ctx.baseId, tableId: ctx.tableId })
150
- expect(Array.isArray(result)).toBe(true)
151
- }, 30000)
152
-
153
- it('list_views returns views', async () => {
154
- if (!ctx.baseId || !ctx.tableId)
155
- return expect(true).toBe(true)
156
- const handler = buildHandler('list_views')
157
- const result = await handler({ baseId: ctx.baseId, tableId: ctx.tableId })
158
- expect(Array.isArray(result)).toBe(true)
159
- }, 30000)
160
-
161
- it('list_records returns records', async () => {
162
- if (!ctx.baseId || !ctx.tableId)
163
- return expect(true).toBe(true)
164
- const handler = buildHandler('list_records')
165
- const result = await handler({ baseId: ctx.baseId, tableId: ctx.tableId, pageSize: 3 })
166
- expect(result).toBeTruthy()
167
- }, 30000)
168
-
169
- it('get_record returns a record by id', async () => {
170
- if (!ctx.baseId || !ctx.tableId || !ctx.recordId)
171
- return expect(true).toBe(true)
172
- const handler = buildHandler('get_record')
173
- const result = await handler({ baseId: ctx.baseId, tableId: ctx.tableId, recordId: ctx.recordId })
174
- expect(result?.id).toBe(ctx.recordId)
175
- }, 30000)
176
-
177
- it('search_records returns matching records', async () => {
178
- if (!ctx.baseId || !ctx.tableId)
179
- return expect(true).toBe(true)
180
- const list_fields = buildHandler('list_table_fields')
181
- const fields: any[] = await list_fields({ baseId: ctx.baseId, tableId: ctx.tableId })
182
- const fieldName = fields?.[0]?.name || 'Name'
183
- const handler = buildHandler('search_records')
184
- const result = await handler({ baseId: ctx.baseId, tableId: ctx.tableId, field: fieldName, value: '' })
185
- expect(result).toBeTruthy()
186
- }, 30000)
187
- })
@@ -1,9 +0,0 @@
1
- import { describe, expect, it } from 'vitest'
2
- import { getMissingToolUsages } from '../../__tests__/usageParity.js'
3
-
4
- describe('airtable static usage parity', () => {
5
- it('every manifest tool is referenced in tests', () => {
6
- const missing = getMissingToolUsages({ integrationName: 'airtable', importMetaUrl: import.meta.url })
7
- expect(missing, `Missing handler usages in tests: ${missing.join(', ')}`).toEqual([])
8
- })
9
- })
@@ -1,116 +0,0 @@
1
- import { beforeAll, describe, expect, it } from 'vitest'
2
- import { IntegrationProxy } from '../../../../core/src/integrations/proxy.js'
3
- import { loadIntegrationTools } from '../../../../core/src/integrations/dataLoader.js'
4
-
5
- // LIVE Airtable write tests using credentials
6
- // Required env vars:
7
- // - AIRTABLE_TOKEN
8
- // Optional env for choosing base/table (otherwise picks first available):
9
- // - AIRTABLE_TEST_WRITE_BASE_ID
10
- // - AIRTABLE_TEST_WRITE_TABLE_ID
11
-
12
- interface Ctx {
13
- baseId?: string
14
- tableId?: string
15
- createdRecordId?: string
16
- }
17
-
18
- const env = process.env as Record<string, string>
19
- const hasEnv = (...keys: string[]) => keys.every(k => !!env[k] && env[k].trim().length > 0)
20
- const suite = hasEnv(
21
- 'AIRTABLE_TOKEN',
22
- )
23
- ? describe
24
- : describe.skip
25
-
26
- suite('airtable write handlers (live)', () => {
27
- const ctx: Ctx = {}
28
- let buildWriteHandler: (name: string) => ((input: any) => Promise<any>)
29
- let buildReadHandler: (name: string) => ((input: any) => Promise<any>)
30
-
31
- beforeAll(async () => {
32
- const credentialStore = {
33
- getCredentials: async () => ({ token: env.AIRTABLE_TOKEN || '' }),
34
- }
35
-
36
- const proxy = new IntegrationProxy({ credentialStore })
37
- const integrationNode = {
38
- spaceId: 'ci',
39
- id: 'node-airtable',
40
- referenceId: 'node-airtable',
41
- type: 'airtable',
42
- label: 'Airtable',
43
- connectionMethod: 'credentials',
44
- credentialId: 'airtable-creds',
45
- } as any
46
-
47
- const tools = loadIntegrationTools('airtable')
48
- expect(tools).toBeTruthy()
49
-
50
- buildWriteHandler = (name: string) => {
51
- const tool = tools!.write.find(t => t.name === name)
52
- expect(tool, `write tool ${name} exists`).toBeTruthy()
53
- const integration = { fetch: (path: string, init?: RequestInit) => proxy.call(integrationNode, path, init) }
54
- const build = new Function('integration', `return (${tool!.handlerCode});`)
55
- return build(integration) as (input: any) => Promise<any>
56
- }
57
-
58
- buildReadHandler = (name: string) => {
59
- const tool = tools!.read.find(t => t.name === name)
60
- expect(tool, `read tool ${name} exists`).toBeTruthy()
61
- const integration = { fetch: (path: string, init?: RequestInit) => proxy.call(integrationNode, path, init) }
62
- const build = new Function('integration', `return (${tool!.handlerCode});`)
63
- return build(integration) as (input: any) => Promise<any>
64
- }
65
-
66
- // Resolve base/table for write tests
67
- ctx.baseId = env.AIRTABLE_TEST_WRITE_BASE_ID
68
- ctx.tableId = env.AIRTABLE_TEST_WRITE_TABLE_ID
69
-
70
- if (!ctx.baseId || !ctx.tableId) {
71
- const list_bases = buildReadHandler('list_bases')
72
- const bases = await list_bases({})
73
- ctx.baseId = ctx.baseId || (bases?.bases?.[0]?.id || bases?.[0]?.id)
74
- if (ctx.baseId) {
75
- const list_tables = buildReadHandler('list_tables')
76
- const tablesResp = await list_tables({ baseId: ctx.baseId })
77
- const tables = tablesResp?.tables || tablesResp
78
- ctx.tableId = ctx.tableId || tables?.[0]?.id
79
- }
80
- }
81
- }, 60000)
82
-
83
- it('create_record -> get_record -> update_record -> delete_record roundtrip', async () => {
84
- if (!ctx.baseId || !ctx.tableId)
85
- return expect(true).toBe(true)
86
-
87
- // Assume a single writable column named 'Name' per test setup
88
- const fieldName = 'Name'
89
-
90
- // Create
91
- const create_record = buildWriteHandler('create_record')
92
- const created = await create_record({ baseId: ctx.baseId, tableId: ctx.tableId, fields: { [fieldName]: `CmdTest ${Date.now()}` } })
93
- const createdRec = created?.records?.[0] || created
94
- expect(createdRec?.id).toBeTruthy()
95
- ctx.createdRecordId = createdRec.id
96
-
97
- // Read
98
- const get_record = buildReadHandler('get_record')
99
- const got = await get_record({ baseId: ctx.baseId, tableId: ctx.tableId, recordId: ctx.createdRecordId })
100
- expect(got?.id).toBe(ctx.createdRecordId)
101
-
102
- // Update
103
- const update_record = buildWriteHandler('update_record')
104
- const updated = await update_record({ baseId: ctx.baseId, tableId: ctx.tableId, recordId: ctx.createdRecordId, fields: { [fieldName]: `CmdTest Updated ${Date.now()}` } })
105
- const updatedRec = updated?.records?.[0] || updated
106
- expect(updatedRec?.id).toBe(ctx.createdRecordId)
107
-
108
- // Delete
109
- const delete_record = buildWriteHandler('delete_record')
110
- const del = await delete_record({ baseId: ctx.baseId, tableId: ctx.tableId, recordId: ctx.createdRecordId })
111
- const deletedRec = del?.records?.[0] || del
112
- expect(deletedRec?.deleted === true || deletedRec?.id === ctx.createdRecordId).toBe(true)
113
- }, 90000)
114
- })
115
-
116
- // Admin operations are not available on standard plans; omitted.
@@ -1,26 +0,0 @@
1
- {
2
- "variants": {
3
- "personal_access_token": {
4
- "label": "Personal Access Token",
5
- "schema": {
6
- "type": "object",
7
- "properties": {
8
- "token": {
9
- "type": "string",
10
- "title": "Personal Access Token",
11
- "description": "Airtable personal access token."
12
- }
13
- },
14
- "required": ["token"],
15
- "additionalProperties": false
16
- },
17
- "injection": {
18
- "headers": {
19
- "Authorization": "Bearer {{token}}"
20
- }
21
- },
22
- "healthCheck": { "path": "/meta/whoami" }
23
- }
24
- },
25
- "default": "personal_access_token"
26
- }
@@ -1,4 +0,0 @@
1
- Create an Airtable personal access token and paste it here.
2
-
3
- You can generate one in Airtable account settings under developer tools / personal access tokens.
4
-
@@ -1,12 +0,0 @@
1
- async (input) => {
2
- const path = `/${input.baseId}/${input.tableId}`
3
- const body = {
4
- records: [
5
- { fields: input.fields },
6
- ],
7
- typecast: !!input.typecast,
8
- }
9
- const res = await integration.fetch(path, { method: 'POST', body })
10
- const data = await res.json()
11
- return data
12
- }
@@ -1,7 +0,0 @@
1
- async (input) => {
2
- const path = `/${input.baseId}/${input.tableId}`
3
- const params = new URLSearchParams()
4
- params.set('records[]', input.recordId)
5
- const res = await integration.fetch(`${path}?${params.toString()}`, { method: 'DELETE' })
6
- return await res.json()
7
- }
@@ -1,4 +0,0 @@
1
- async (input) => {
2
- const res = await integration.fetch(`/${input.baseId}/${input.tableId}/${input.recordId}`)
3
- return await res.json()
4
- }
@@ -1,6 +0,0 @@
1
- async (input) => {
2
- const res = await integration.fetch(`/meta/bases/${input.baseId}/tables`)
3
- const data = await res.json()
4
- const table = (data?.tables || data)?.find?.(t => t.id === input.tableId || t.name === input.tableId)
5
- return table || null
6
- }
@@ -1,4 +0,0 @@
1
- async (input) => {
2
- const res = await integration.fetch(`/meta/bases`)
3
- return await res.json()
4
- }