@hasna/connectors 1.4.1 → 1.4.3

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 (499) hide show
  1. package/bin/index.js +1271 -317
  2. package/bin/mcp.js +524 -211
  3. package/bin/serve.js +1208 -256
  4. package/connectors/adobe/package.json +1 -1
  5. package/connectors/aitableai/package.json +1 -1
  6. package/connectors/alchemy/package.json +1 -1
  7. package/connectors/alerty/package.json +1 -1
  8. package/connectors/alienvault/package.json +1 -1
  9. package/connectors/alphamoon/package.json +1 -1
  10. package/connectors/alttextai/package.json +1 -1
  11. package/connectors/amadeus/package.json +1 -1
  12. package/connectors/amadeus/src/api/client.ts +6 -6
  13. package/connectors/amadeus/src/cli/index.ts +6 -6
  14. package/connectors/amadeus/src/utils/output.ts +5 -5
  15. package/connectors/amazon/package.json +1 -1
  16. package/connectors/amilia/package.json +1 -1
  17. package/connectors/amqpsender/package.json +1 -1
  18. package/connectors/announcekit/package.json +1 -1
  19. package/connectors/anthropic/.env.example +1 -1
  20. package/connectors/anyscale/package.json +1 -1
  21. package/connectors/apiary/package.json +1 -1
  22. package/connectors/apiflash/package.json +1 -1
  23. package/connectors/apitemplateio/package.json +1 -1
  24. package/connectors/apptivegrid/package.json +1 -1
  25. package/connectors/assemblyai/package.json +1 -1
  26. package/connectors/autom/package.json +1 -1
  27. package/connectors/automizy/package.json +1 -1
  28. package/connectors/autopilot/package.json +1 -1
  29. package/connectors/awscognito/package.json +1 -1
  30. package/connectors/bamboohr/package.json +1 -1
  31. package/connectors/bannerbear/package.json +1 -1
  32. package/connectors/baseten/package.json +1 -1
  33. package/connectors/box/package.json +1 -1
  34. package/connectors/brevo/package.json +1 -1
  35. package/connectors/calendly/package.json +1 -1
  36. package/connectors/cerebras/package.json +1 -1
  37. package/connectors/chargebee/package.json +1 -1
  38. package/connectors/clearbit/package.json +1 -1
  39. package/connectors/clickbank/README.md +2 -2
  40. package/connectors/cloudflare-workers/package.json +1 -1
  41. package/connectors/coda/package.json +1 -1
  42. package/connectors/coingecko/package.json +1 -1
  43. package/connectors/convertkit/package.json +1 -1
  44. package/connectors/customerio/package.json +1 -1
  45. package/connectors/databricks/package.json +1 -1
  46. package/connectors/datadog/package.json +1 -1
  47. package/connectors/datasoap/README.md +2 -2
  48. package/connectors/datasoap/package.json +1 -1
  49. package/connectors/datumbox/README.md +2 -2
  50. package/connectors/datumbox/package.json +1 -1
  51. package/connectors/dayschedule/README.md +2 -2
  52. package/connectors/dayschedule/package.json +1 -1
  53. package/connectors/deepgram/package.json +1 -1
  54. package/connectors/deepinfra/README.md +2 -2
  55. package/connectors/deepinfra/package.json +1 -1
  56. package/connectors/deepl/README.md +2 -2
  57. package/connectors/deepl/package.json +1 -1
  58. package/connectors/deepseek/package.json +1 -1
  59. package/connectors/demio/README.md +2 -2
  60. package/connectors/demio/package.json +1 -1
  61. package/connectors/descript/README.md +2 -2
  62. package/connectors/descript/package.json +1 -1
  63. package/connectors/detrack/README.md +2 -2
  64. package/connectors/detrack/package.json +1 -1
  65. package/connectors/devcycle/README.md +2 -2
  66. package/connectors/devcycle/package.json +1 -1
  67. package/connectors/dhl/README.md +2 -2
  68. package/connectors/dhl/package.json +1 -1
  69. package/connectors/docusign/package.json +1 -1
  70. package/connectors/dropbox/package.json +1 -1
  71. package/connectors/fal/package.json +1 -1
  72. package/connectors/fathom/package.json +1 -1
  73. package/connectors/fireworks/package.json +1 -1
  74. package/connectors/gitlab/package.json +1 -1
  75. package/connectors/googlechat/README.md +1 -2
  76. package/connectors/googledrive/src/api/client.ts +5 -5
  77. package/connectors/googledrive/src/api/files.ts +11 -11
  78. package/connectors/googledrive/src/api/folders.ts +2 -2
  79. package/connectors/googledrive/src/cli/index.ts +4 -4
  80. package/connectors/googledrive/src/utils/output.ts +3 -3
  81. package/connectors/googleforms/README.md +1 -2
  82. package/connectors/googleperspective/README.md +1 -2
  83. package/connectors/grafana/package.json +1 -1
  84. package/connectors/growbots/README.md +2 -2
  85. package/connectors/growbots/package.json +1 -1
  86. package/connectors/gumroad/package.json +1 -1
  87. package/connectors/gupshup/README.md +2 -2
  88. package/connectors/gupshup/package.json +1 -1
  89. package/connectors/guru/README.md +2 -2
  90. package/connectors/guru/package.json +1 -1
  91. package/connectors/hackernews/README.md +2 -2
  92. package/connectors/hackernews/package.json +1 -1
  93. package/connectors/halopsa/README.md +2 -2
  94. package/connectors/halopsa/package.json +1 -1
  95. package/connectors/handwrytten/README.md +2 -2
  96. package/connectors/handwrytten/package.json +1 -1
  97. package/connectors/hansei/README.md +2 -2
  98. package/connectors/hansei/package.json +1 -1
  99. package/connectors/harrypotterapi/README.md +2 -2
  100. package/connectors/harrypotterapi/package.json +1 -1
  101. package/connectors/harvest/README.md +2 -2
  102. package/connectors/harvest/package.json +1 -1
  103. package/connectors/headlesstesting/README.md +2 -2
  104. package/connectors/headlesstesting/package.json +1 -1
  105. package/connectors/homeassistant/package.json +1 -1
  106. package/connectors/klaviyo/package.json +1 -1
  107. package/connectors/lemonsqueezy/package.json +1 -1
  108. package/connectors/lighthouse/src/api/index.ts +1 -1
  109. package/connectors/linkedin/package.json +1 -1
  110. package/connectors/linkish/README.md +2 -2
  111. package/connectors/linkish/package.json +1 -1
  112. package/connectors/liveagent/README.md +2 -2
  113. package/connectors/liveagent/package.json +1 -1
  114. package/connectors/localazy/README.md +2 -2
  115. package/connectors/localazy/package.json +1 -1
  116. package/connectors/loginradius/README.md +2 -2
  117. package/connectors/loginradius/package.json +1 -1
  118. package/connectors/lokalise/README.md +2 -2
  119. package/connectors/lokalise/package.json +1 -1
  120. package/connectors/lonescale/README.md +2 -2
  121. package/connectors/lonescale/package.json +1 -1
  122. package/connectors/lucidchart/README.md +2 -2
  123. package/connectors/lucidchart/package.json +1 -1
  124. package/connectors/luma/package.json +1 -1
  125. package/connectors/magento2/README.md +2 -2
  126. package/connectors/magento2/package.json +1 -1
  127. package/connectors/mailcheck/README.md +2 -2
  128. package/connectors/mailcheck/package.json +1 -1
  129. package/connectors/mailchimp/package.json +1 -1
  130. package/connectors/mailerlite/README.md +2 -2
  131. package/connectors/mailerlite/package.json +1 -1
  132. package/connectors/mailersend/README.md +2 -2
  133. package/connectors/mailersend/package.json +1 -1
  134. package/connectors/mailify/README.md +2 -2
  135. package/connectors/mailify/package.json +1 -1
  136. package/connectors/mailjet/README.md +2 -2
  137. package/connectors/mailjet/package.json +1 -1
  138. package/connectors/mailmodo/README.md +2 -2
  139. package/connectors/mailmodo/package.json +1 -1
  140. package/connectors/malcore/README.md +2 -2
  141. package/connectors/malcore/package.json +1 -1
  142. package/connectors/mandrill/README.md +2 -2
  143. package/connectors/mandrill/package.json +1 -1
  144. package/connectors/marcomrobot/README.md +2 -2
  145. package/connectors/marcomrobot/package.json +1 -1
  146. package/connectors/marketingmasterio/README.md +2 -2
  147. package/connectors/marketingmasterio/package.json +1 -1
  148. package/connectors/marketplacer/README.md +2 -2
  149. package/connectors/marketplacer/package.json +1 -1
  150. package/connectors/marketstack/README.md +2 -2
  151. package/connectors/marketstack/package.json +1 -1
  152. package/connectors/matrix/README.md +1 -1
  153. package/connectors/matrix/package.json +1 -1
  154. package/connectors/mattermost/README.md +1 -1
  155. package/connectors/mattermost/package.json +1 -1
  156. package/connectors/mautic/README.md +1 -1
  157. package/connectors/mautic/package.json +1 -1
  158. package/connectors/mav/README.md +1 -1
  159. package/connectors/mav/package.json +1 -1
  160. package/connectors/maverick/README.md +1 -1
  161. package/connectors/maverick/package.json +1 -1
  162. package/connectors/mem/README.md +1 -1
  163. package/connectors/mem/package.json +1 -1
  164. package/connectors/messagebird/package.json +1 -1
  165. package/connectors/metabase/README.md +1 -1
  166. package/connectors/metabase/package.json +1 -1
  167. package/connectors/miro/package.json +1 -1
  168. package/connectors/mocean/package.json +1 -1
  169. package/connectors/modal/package.json +1 -1
  170. package/connectors/monday/package.json +1 -1
  171. package/connectors/monicacrm/package.json +1 -1
  172. package/connectors/moonclerk/package.json +1 -1
  173. package/connectors/moonmail/package.json +1 -1
  174. package/connectors/morph/package.json +1 -1
  175. package/connectors/mqtt/package.json +1 -1
  176. package/connectors/msg91/package.json +1 -1
  177. package/connectors/mubert/package.json +1 -1
  178. package/connectors/murf/package.json +1 -1
  179. package/connectors/mux/package.json +1 -1
  180. package/connectors/netlify/package.json +1 -1
  181. package/connectors/okta/package.json +1 -1
  182. package/connectors/paddle/package.json +1 -1
  183. package/connectors/perplexity/package.json +1 -1
  184. package/connectors/pinterest/package.json +1 -1
  185. package/connectors/pipedrive/package.json +1 -1
  186. package/connectors/plaid/package.json +1 -1
  187. package/connectors/quickchart/README.md +2 -2
  188. package/connectors/quintadb/README.md +2 -2
  189. package/connectors/rabbitmq/README.md +2 -2
  190. package/connectors/radar/README.md +2 -2
  191. package/connectors/raindrop/README.md +2 -2
  192. package/connectors/rapid7insightvm/README.md +2 -2
  193. package/connectors/raventools/README.md +2 -2
  194. package/connectors/rawgvideogamesdatabase/README.md +2 -2
  195. package/connectors/rdstationcrm/README.md +2 -2
  196. package/connectors/readai/README.md +2 -2
  197. package/connectors/roboflow/package.json +1 -1
  198. package/connectors/runway/package.json +1 -1
  199. package/connectors/sendgrid/package.json +1 -1
  200. package/connectors/shuffler/package.json +1 -1
  201. package/connectors/sierrainteractive/package.json +1 -1
  202. package/connectors/sifter/package.json +1 -1
  203. package/connectors/signaturit/package.json +1 -1
  204. package/connectors/signl4/package.json +1 -1
  205. package/connectors/simpleem/package.json +1 -1
  206. package/connectors/simplehash/package.json +1 -1
  207. package/connectors/simplekpi/package.json +1 -1
  208. package/connectors/simplelocalize/package.json +1 -1
  209. package/connectors/simplero/package.json +1 -1
  210. package/connectors/smartrecruiters/package.json +1 -1
  211. package/connectors/smtp2go/package.json +1 -1
  212. package/connectors/snowflake/package.json +1 -1
  213. package/connectors/sparkpost/package.json +1 -1
  214. package/connectors/split-in-batches/CLAUDE.md +1 -1
  215. package/connectors/split-in-batches/README.md +1 -1
  216. package/connectors/split-in-batches/src/api/client.test.ts +16 -17
  217. package/connectors/split-in-batches/src/api/client.ts +4 -3
  218. package/connectors/split-in-batches/src/cli/index.ts +1 -1
  219. package/connectors/split-io/package.json +1 -1
  220. package/connectors/split-io/src/api/client.test.ts +20 -0
  221. package/connectors/split-io/src/cli/index.ts +9 -9
  222. package/connectors/spreadsheet-file/.env.example +1 -1
  223. package/connectors/spreadsheet-file/CLAUDE.md +2 -2
  224. package/connectors/spreadsheet-file/README.md +3 -3
  225. package/connectors/spreadsheet-file/src/api/client.test.ts +8 -9
  226. package/connectors/spreadsheet-file/src/api/client.ts +4 -3
  227. package/connectors/spreadsheet-file/src/cli/index.ts +1 -1
  228. package/connectors/sprinklr/package.json +1 -1
  229. package/connectors/sprout-social/package.json +1 -1
  230. package/connectors/square/package.json +1 -1
  231. package/connectors/sse-trigger/.env.example +1 -1
  232. package/connectors/sse-trigger/CLAUDE.md +2 -2
  233. package/connectors/sse-trigger/README.md +1 -1
  234. package/connectors/sse-trigger/package.json +1 -1
  235. package/connectors/sse-trigger/src/api/client.test.ts +12 -8
  236. package/connectors/sse-trigger/src/api/client.ts +4 -3
  237. package/connectors/sse-trigger/src/api/index.ts +1 -1
  238. package/connectors/sse-trigger/src/cli/index.ts +1 -1
  239. package/connectors/sse-trigger/src/index.ts +1 -1
  240. package/connectors/stability-api-platform/AGENTS.md +2 -2
  241. package/connectors/stability-api-platform/CLAUDE.md +1 -1
  242. package/connectors/stability-api-platform/README.md +2 -2
  243. package/connectors/stability-api-platform/src/api/client.test.ts +17 -12
  244. package/connectors/stability-api-platform/src/api/client.ts +4 -3
  245. package/connectors/stability-api-platform/src/api/index.ts +0 -1
  246. package/connectors/stability-api-platform/src/cli/index.ts +1 -1
  247. package/connectors/stability-api-platform/src/index.ts +0 -1
  248. package/connectors/standout/package.json +1 -1
  249. package/connectors/statuspage/package.json +1 -1
  250. package/connectors/stop-and-error/.env.example +1 -1
  251. package/connectors/stop-and-error/CLAUDE.md +1 -1
  252. package/connectors/stop-and-error/README.md +1 -1
  253. package/connectors/stop-and-error/src/api/client.test.ts +12 -8
  254. package/connectors/stop-and-error/src/api/client.ts +4 -3
  255. package/connectors/stop-and-error/src/cli/index.ts +2 -2
  256. package/connectors/stoplight/package.json +1 -1
  257. package/connectors/stoplight-api-platform/package.json +1 -1
  258. package/connectors/strand-ai/CLAUDE.md +1 -1
  259. package/connectors/stripe-financial-connections/.env.example +1 -1
  260. package/connectors/stripe-financial-connections/CLAUDE.md +2 -2
  261. package/connectors/stripe-financial-connections/package.json +1 -1
  262. package/connectors/stripe-financial-connections/src/api/client.test.ts +34 -0
  263. package/connectors/stripe-financial-connections/src/api/client.ts +4 -3
  264. package/connectors/stripe-financial-connections/src/cli/index.ts +1 -1
  265. package/connectors/stripe-terminal/package.json +1 -1
  266. package/connectors/stytch/package.json +1 -1
  267. package/connectors/sucuri-api-platform/.env.example +1 -1
  268. package/connectors/sucuri-api-platform/CLAUDE.md +1 -1
  269. package/connectors/sucuri-api-platform/README.md +2 -2
  270. package/connectors/sucuri-api-platform/src/api/client.test.ts +9 -7
  271. package/connectors/sucuri-api-platform/src/api/client.ts +4 -3
  272. package/connectors/sucuri-api-platform/src/api/index.ts +1 -1
  273. package/connectors/sucuri-api-platform/src/cli/index.ts +1 -1
  274. package/connectors/sucuri-api-platform/src/index.ts +1 -1
  275. package/connectors/sumo-logic/package.json +1 -1
  276. package/connectors/supabase/package.json +1 -1
  277. package/connectors/supabase-api-platform/package.json +1 -1
  278. package/connectors/sysdig/package.json +1 -1
  279. package/connectors/tableau/package.json +1 -1
  280. package/connectors/takecareos/README.md +2 -2
  281. package/connectors/takecareos/package.json +1 -1
  282. package/connectors/telegram/src/api/bot.ts +20 -0
  283. package/connectors/telegram/src/api/client.ts +32 -0
  284. package/connectors/telegram/src/api/files.test.ts +103 -0
  285. package/connectors/telegram/src/api/index.ts +1 -0
  286. package/connectors/telegram/src/api/messages.test.ts +8 -2
  287. package/connectors/telegram/src/cli/files.test.ts +40 -0
  288. package/connectors/telegram/src/cli/files.ts +38 -0
  289. package/connectors/telegram/src/cli/index.ts +27 -30
  290. package/connectors/telegram/src/cli/updates.test.ts +176 -0
  291. package/connectors/telegram/src/cli/updates.ts +95 -0
  292. package/connectors/telegram/src/index.ts +1 -0
  293. package/connectors/telegram/src/types/index.ts +13 -0
  294. package/connectors/terraform-cloud/package.json +1 -1
  295. package/connectors/tettra-api-platform/CLAUDE.md +1 -1
  296. package/connectors/tettra-api-platform/README.md +2 -2
  297. package/connectors/tettra-api-platform/src/api/client.test.ts +7 -8
  298. package/connectors/tettra-api-platform/src/api/client.ts +4 -3
  299. package/connectors/tettra-api-platform/src/api/index.ts +1 -1
  300. package/connectors/tettra-api-platform/src/cli/index.ts +1 -1
  301. package/connectors/tettra-api-platform/src/index.ts +1 -1
  302. package/connectors/textit/package.json +1 -1
  303. package/connectors/thousandeyes/package.json +1 -1
  304. package/connectors/ticket-tailor/package.json +1 -1
  305. package/connectors/ticketsource/package.json +1 -1
  306. package/connectors/tiktokads/README.md +1 -1
  307. package/connectors/time-saved/package.json +1 -1
  308. package/connectors/tipalti/package.json +1 -1
  309. package/connectors/together-api-platform/.env.example +1 -1
  310. package/connectors/together-api-platform/CLAUDE.md +1 -1
  311. package/connectors/together-api-platform/README.md +1 -1
  312. package/connectors/together-api-platform/src/api/client.test.ts +11 -7
  313. package/connectors/together-api-platform/src/api/client.ts +4 -4
  314. package/connectors/together-api-platform/src/api/index.ts +1 -1
  315. package/connectors/together-api-platform/src/cli/index.ts +1 -1
  316. package/connectors/together-api-platform/src/index.ts +1 -1
  317. package/connectors/tomtom/AGENTS.md +1 -1
  318. package/connectors/totp/package.json +1 -1
  319. package/connectors/traverse/package.json +1 -1
  320. package/connectors/travo-ai/package.json +1 -1
  321. package/connectors/travo-real-estate/CLAUDE.md +1 -1
  322. package/connectors/travo-real-estate/README.md +1 -1
  323. package/connectors/travo-real-estate/src/api/client.test.ts +20 -16
  324. package/connectors/travo-real-estate/src/api/client.ts +4 -3
  325. package/connectors/travo-real-estate/src/utils/config.ts +2 -4
  326. package/connectors/tray-api-platform/CLAUDE.md +1 -1
  327. package/connectors/tray-api-platform/src/api/client.test.ts +17 -13
  328. package/connectors/tray-api-platform/src/api/client.ts +4 -3
  329. package/connectors/tray-api-platform/src/api/index.ts +1 -1
  330. package/connectors/tray-api-platform/src/cli/index.ts +1 -1
  331. package/connectors/tray-api-platform/src/index.ts +0 -1
  332. package/connectors/trigger-dev/package.json +1 -1
  333. package/connectors/trigger-dev-api-platform/package.json +1 -1
  334. package/connectors/turbot-pipes/package.json +1 -1
  335. package/connectors/turso/package.json +1 -1
  336. package/connectors/turso-api-platform/CLAUDE.md +1 -1
  337. package/connectors/turso-api-platform/README.md +2 -2
  338. package/connectors/turso-api-platform/package.json +1 -1
  339. package/connectors/turso-api-platform/src/api/client.test.ts +17 -13
  340. package/connectors/turso-api-platform/src/api/client.ts +4 -3
  341. package/connectors/turso-api-platform/src/cli/index.ts +2 -2
  342. package/connectors/twilio-api-platform/CLAUDE.md +1 -1
  343. package/connectors/twilio-api-platform/src/api/client.test.ts +11 -11
  344. package/connectors/twilio-api-platform/src/api/client.ts +4 -3
  345. package/connectors/twilio-api-platform/src/api/index.ts +1 -1
  346. package/connectors/twilio-api-platform/src/cli/index.ts +1 -1
  347. package/connectors/twilio-api-platform/src/index.ts +1 -1
  348. package/connectors/tyk-api-platform/.env.example +1 -1
  349. package/connectors/tyk-api-platform/CLAUDE.md +2 -2
  350. package/connectors/tyk-api-platform/README.md +1 -1
  351. package/connectors/tyk-api-platform/package.json +1 -1
  352. package/connectors/tyk-api-platform/src/api/client.test.ts +14 -15
  353. package/connectors/tyk-api-platform/src/api/client.ts +4 -3
  354. package/connectors/tyk-api-platform/src/api/index.ts +1 -1
  355. package/connectors/tyk-api-platform/src/cli/index.ts +1 -1
  356. package/connectors/tyk-api-platform/src/index.ts +1 -1
  357. package/connectors/umami/package.json +1 -1
  358. package/connectors/unifold/package.json +1 -1
  359. package/connectors/unione/package.json +1 -1
  360. package/connectors/uniprot/README.md +1 -1
  361. package/connectors/uniswap-api/package.json +1 -1
  362. package/connectors/ups/package.json +1 -1
  363. package/connectors/usereframe/package.json +1 -1
  364. package/connectors/vanta/package.json +1 -1
  365. package/connectors/vector-legal/.env.example +1 -1
  366. package/connectors/vector-legal/AGENTS.md +1 -1
  367. package/connectors/vector-legal/CLAUDE.md +1 -1
  368. package/connectors/vector-legal/README.md +1 -1
  369. package/connectors/vector-legal/src/api/client.test.ts +9 -5
  370. package/connectors/vector-legal/src/api/client.ts +4 -3
  371. package/connectors/vector-legal/src/api/index.ts +1 -1
  372. package/connectors/vector-legal/src/cli/index.ts +2 -2
  373. package/connectors/vector-legal/src/index.ts +0 -1
  374. package/connectors/vector-legal-api/CLAUDE.md +1 -1
  375. package/connectors/vector-legal-api/README.md +2 -2
  376. package/connectors/vector-legal-api/src/api/client.test.ts +12 -7
  377. package/connectors/vector-legal-api/src/api/client.ts +4 -3
  378. package/connectors/vector-legal-api/src/api/index.ts +1 -1
  379. package/connectors/vector-legal-api/src/cli/index.ts +1 -1
  380. package/connectors/vector-legal-api/src/index.ts +1 -2
  381. package/connectors/vela/package.json +1 -1
  382. package/connectors/velum-data-quality/.env.example +1 -1
  383. package/connectors/velum-data-quality/CLAUDE.md +1 -1
  384. package/connectors/velum-data-quality/src/api/client.test.ts +15 -16
  385. package/connectors/velum-data-quality/src/api/client.ts +4 -3
  386. package/connectors/velum-data-quality/src/api/index.ts +1 -1
  387. package/connectors/velum-data-quality/src/cli/index.ts +1 -1
  388. package/connectors/velum-data-quality/src/index.ts +0 -1
  389. package/connectors/velum-labs/package.json +1 -1
  390. package/connectors/vercel/package.json +1 -1
  391. package/connectors/vercel-api-platform/.env.example +1 -1
  392. package/connectors/vercel-api-platform/CLAUDE.md +2 -2
  393. package/connectors/vercel-api-platform/README.md +2 -2
  394. package/connectors/vercel-api-platform/src/api/client.test.ts +27 -6
  395. package/connectors/vercel-api-platform/src/api/client.ts +4 -3
  396. package/connectors/vercel-api-platform/src/api/index.ts +1 -1
  397. package/connectors/vercel-api-platform/src/cli/index.ts +2 -2
  398. package/connectors/vercel-api-platform/src/index.ts +0 -1
  399. package/connectors/vercel-blob/package.json +1 -1
  400. package/connectors/vercel-blob-platform/package.json +1 -1
  401. package/connectors/vercel-edge-config/package.json +1 -1
  402. package/connectors/vercel-edge-config-platform/package.json +1 -1
  403. package/connectors/veriphone/README.md +2 -2
  404. package/connectors/vertex-ai/package.json +1 -1
  405. package/connectors/vidyard/package.json +1 -1
  406. package/connectors/vonage/package.json +1 -1
  407. package/connectors/voygr/package.json +1 -1
  408. package/connectors/wait/package.json +1 -1
  409. package/connectors/walmart-marketplace/package.json +1 -1
  410. package/connectors/wato/package.json +1 -1
  411. package/connectors/wave-accounting/CLAUDE.md +1 -1
  412. package/connectors/wave-accounting/package.json +1 -1
  413. package/connectors/wave-accounting/src/utils/auth.ts +1 -1
  414. package/connectors/wayco/package.json +1 -1
  415. package/connectors/weaviate-api-platform/CLAUDE.md +1 -1
  416. package/connectors/weaviate-api-platform/src/api/client.test.ts +32 -7
  417. package/connectors/weaviate-api-platform/src/api/client.ts +4 -3
  418. package/connectors/weaviate-api-platform/src/api/index.ts +1 -1
  419. package/connectors/weaviate-api-platform/src/cli/index.ts +1 -1
  420. package/connectors/weaviate-api-platform/src/index.ts +1 -1
  421. package/connectors/webpagetest/package.json +1 -1
  422. package/connectors/weezevent/package.json +1 -1
  423. package/connectors/wikipedia/src/api/client.ts +1 -1
  424. package/connectors/wildcard/package.json +1 -1
  425. package/connectors/windmill/package.json +1 -1
  426. package/connectors/wise/package.json +1 -1
  427. package/connectors/withai/package.json +1 -1
  428. package/connectors/wiz/CLAUDE.md +1 -1
  429. package/connectors/wiz/package.json +1 -1
  430. package/connectors/wordfence/package.json +1 -1
  431. package/connectors/wordfence-api-platform/package.json +1 -1
  432. package/connectors/workflow-trigger/.env.example +1 -1
  433. package/connectors/workflow-trigger/CLAUDE.md +1 -1
  434. package/connectors/workflow-trigger/README.md +1 -1
  435. package/connectors/workflow-trigger/src/api/client.test.ts +10 -6
  436. package/connectors/workflow-trigger/src/api/client.ts +4 -3
  437. package/connectors/workflow-trigger/src/cli/index.ts +1 -1
  438. package/connectors/workos/package.json +1 -1
  439. package/connectors/write-binary-file/CLAUDE.md +1 -1
  440. package/connectors/write-binary-file/README.md +1 -1
  441. package/connectors/write-binary-file/package.json +1 -1
  442. package/connectors/write-binary-file/src/api/client.test.ts +16 -12
  443. package/connectors/write-binary-file/src/api/client.ts +4 -3
  444. package/connectors/write-binary-file/src/api/index.ts +1 -1
  445. package/connectors/write-binary-file/src/index.ts +1 -1
  446. package/connectors/wubookratechecker/src/api/client.test.ts +34 -0
  447. package/connectors/wubookratechecker/src/api/client.ts +3 -1
  448. package/connectors/wubookratechecker/src/api/index.ts +1 -1
  449. package/connectors/wubookratechecker/src/types/index.ts +1 -1
  450. package/connectors/xai/.env.example +1 -1
  451. package/connectors/xai-api-platform/.env.example +1 -1
  452. package/connectors/xai-api-platform/CLAUDE.md +1 -1
  453. package/connectors/xai-api-platform/README.md +1 -1
  454. package/connectors/xai-api-platform/src/api/client.test.ts +34 -9
  455. package/connectors/xai-api-platform/src/api/client.ts +4 -3
  456. package/connectors/xai-api-platform/src/api/index.ts +1 -1
  457. package/connectors/xai-api-platform/src/cli/index.ts +1 -1
  458. package/connectors/xai-api-platform/src/index.ts +1 -1
  459. package/connectors/xai-api-platform/src/utils/config.ts +3 -4
  460. package/connectors/xai-grok/.env.example +1 -1
  461. package/connectors/xai-grok/src/api/client.test.ts +3 -3
  462. package/connectors/xai-grok/src/cli/index.ts +1 -1
  463. package/connectors/xai-grok/src/utils/config.ts +1 -1
  464. package/connectors/ynab/package.json +1 -1
  465. package/connectors/you-com/README.md +2 -2
  466. package/connectors/you-com/package.json +1 -1
  467. package/connectors/yousign/package.json +1 -1
  468. package/connectors/zapier-api-platform/CLAUDE.md +1 -1
  469. package/connectors/zapier-api-platform/README.md +1 -1
  470. package/connectors/zapier-api-platform/src/api/client.test.ts +19 -14
  471. package/connectors/zapier-api-platform/src/api/client.ts +4 -3
  472. package/connectors/zapier-api-platform/src/api/index.ts +1 -1
  473. package/connectors/zapier-api-platform/src/cli/index.ts +1 -1
  474. package/connectors/zapier-api-platform/src/index.ts +1 -1
  475. package/connectors/zendesk/.env.example +4 -4
  476. package/connectors/zendesk/CLAUDE.md +1 -3
  477. package/connectors/zendesk/Makefile +18 -5
  478. package/connectors/zendesk/README.md +3 -8
  479. package/connectors/zendesk/SCAFFOLD.md +6 -5
  480. package/connectors/zerosettle/package.json +1 -1
  481. package/connectors/zoho-bigin/CLAUDE.md +1 -1
  482. package/connectors/zoho-campaigns/package.json +1 -1
  483. package/connectors/zoho-sign/package.json +1 -1
  484. package/connectors/zoho-subscriptions/CLAUDE.md +1 -1
  485. package/connectors/zohoprojects/CLAUDE.md +1 -1
  486. package/connectors/zolvo/package.json +1 -1
  487. package/connectors/zoom-api/package.json +1 -1
  488. package/connectors/zymbly/README.md +2 -2
  489. package/connectors/zymbly/package.json +1 -1
  490. package/dashboard/dist/assets/index-8uoGZF7B.js +280 -0
  491. package/dashboard/dist/index.html +1 -1
  492. package/dist/db/locks.d.ts +1 -1
  493. package/dist/index.js +17 -15
  494. package/dist/lib/connector-resolver.d.ts +1 -1
  495. package/dist/lib/llm.d.ts +1 -1
  496. package/dist/lib/open-browser.d.ts +18 -0
  497. package/dist/lib/open-browser.test.d.ts +1 -0
  498. package/package.json +6 -4
  499. package/dashboard/dist/assets/index-DlEljRrW.js +0 -285
@@ -46,6 +46,6 @@
46
46
  },
47
47
  "repository": {
48
48
  "type": "git",
49
- "url": "git+https://github.com/hasna/open-connectors.git"
49
+ "url": "git+https://github.com/hasna/apps.git"
50
50
  }
51
51
  }
@@ -46,6 +46,6 @@
46
46
  },
47
47
  "repository": {
48
48
  "type": "git",
49
- "url": "git+https://github.com/hasna/open-connectors.git"
49
+ "url": "git+https://github.com/hasna/apps.git"
50
50
  }
51
51
  }
@@ -46,6 +46,6 @@
46
46
  },
47
47
  "repository": {
48
48
  "type": "git",
49
- "url": "git+https://github.com/hasna/open-connectors.git"
49
+ "url": "git+https://github.com/hasna/apps.git"
50
50
  }
51
51
  }
@@ -46,6 +46,6 @@
46
46
  },
47
47
  "repository": {
48
48
  "type": "git",
49
- "url": "git+https://github.com/hasna/open-connectors.git"
49
+ "url": "git+https://github.com/hasna/apps.git"
50
50
  }
51
51
  }
@@ -46,6 +46,6 @@
46
46
  },
47
47
  "repository": {
48
48
  "type": "git",
49
- "url": "git+https://github.com/hasna/open-connectors.git"
49
+ "url": "git+https://github.com/hasna/apps.git"
50
50
  }
51
51
  }
@@ -46,6 +46,6 @@
46
46
  },
47
47
  "repository": {
48
48
  "type": "git",
49
- "url": "git+https://github.com/hasna/open-connectors.git"
49
+ "url": "git+https://github.com/hasna/apps.git"
50
50
  }
51
51
  }
@@ -47,6 +47,6 @@
47
47
  },
48
48
  "repository": {
49
49
  "type": "git",
50
- "url": "git+https://github.com/hasna/open-connectors.git"
50
+ "url": "git+https://github.com/hasna/apps.git"
51
51
  }
52
52
  }
@@ -48,6 +48,6 @@
48
48
  },
49
49
  "repository": {
50
50
  "type": "git",
51
- "url": "git+https://github.com/hasna/open-connectors.git"
51
+ "url": "git+https://github.com/hasna/apps.git"
52
52
  }
53
53
  }
@@ -46,6 +46,6 @@
46
46
  },
47
47
  "repository": {
48
48
  "type": "git",
49
- "url": "git+https://github.com/hasna/open-connectors.git"
49
+ "url": "git+https://github.com/hasna/apps.git"
50
50
  }
51
51
  }
@@ -48,6 +48,6 @@
48
48
  },
49
49
  "repository": {
50
50
  "type": "git",
51
- "url": "git+https://github.com/hasna/open-connectors.git"
51
+ "url": "git+https://github.com/hasna/apps.git"
52
52
  }
53
53
  }
@@ -46,6 +46,6 @@
46
46
  },
47
47
  "repository": {
48
48
  "type": "git",
49
- "url": "git+https://github.com/hasna/open-connectors.git"
49
+ "url": "git+https://github.com/hasna/apps.git"
50
50
  }
51
51
  }
@@ -46,6 +46,6 @@
46
46
  },
47
47
  "repository": {
48
48
  "type": "git",
49
- "url": "git+https://github.com/hasna/open-connectors.git"
49
+ "url": "git+https://github.com/hasna/apps.git"
50
50
  }
51
51
  }
@@ -53,6 +53,6 @@
53
53
  },
54
54
  "repository": {
55
55
  "type": "git",
56
- "url": "git+https://github.com/hasna/open-connectors.git"
56
+ "url": "git+https://github.com/hasna/apps.git"
57
57
  }
58
58
  }
@@ -47,6 +47,6 @@
47
47
  },
48
48
  "repository": {
49
49
  "type": "git",
50
- "url": "git+https://github.com/hasna/open-connectors.git"
50
+ "url": "git+https://github.com/hasna/apps.git"
51
51
  }
52
52
  }
@@ -47,6 +47,6 @@
47
47
  },
48
48
  "repository": {
49
49
  "type": "git",
50
- "url": "git+https://github.com/hasna/open-connectors.git"
50
+ "url": "git+https://github.com/hasna/apps.git"
51
51
  }
52
52
  }
@@ -46,6 +46,6 @@
46
46
  },
47
47
  "repository": {
48
48
  "type": "git",
49
- "url": "git+https://github.com/hasna/open-connectors.git"
49
+ "url": "git+https://github.com/hasna/apps.git"
50
50
  }
51
51
  }
@@ -16,8 +16,8 @@ A TypeScript scaffold for building API connector CLIs with multi-profile support
16
16
 
17
17
  ```bash
18
18
  # Clone for your connector
19
- git clone https://github.com/hasna/open-connectors.git connect-yourapi
20
- cd connect-yourapi
19
+ git clone https://github.com/hasna/apps.git
20
+ cd apps/connectors/connectors/connect-yourapi
21
21
 
22
22
  # Update package.json name
23
23
  # Change "@hasna/scaffold-connector" to "@hasna/connect-yourapi"
@@ -16,8 +16,8 @@ A TypeScript scaffold for building API connector CLIs with multi-profile support
16
16
 
17
17
  ```bash
18
18
  # Clone for your connector
19
- git clone https://github.com/hasna/open-connectors.git connect-yourapi
20
- cd connect-yourapi
19
+ git clone https://github.com/hasna/apps.git
20
+ cd apps/connectors/connectors/connect-yourapi
21
21
 
22
22
  # Update package.json name
23
23
  # Change "@hasna/scaffold-connector" to "@hasna/connect-yourapi"
@@ -16,8 +16,8 @@ A TypeScript scaffold for building API connector CLIs with multi-profile support
16
16
 
17
17
  ```bash
18
18
  # Clone for your connector
19
- git clone https://github.com/hasna/open-connectors.git connect-yourapi
20
- cd connect-yourapi
19
+ git clone https://github.com/hasna/apps.git
20
+ cd apps/connectors/connectors/connect-yourapi
21
21
 
22
22
  # Update package.json name
23
23
  # Change "@hasna/scaffold-connector" to "@hasna/connect-yourapi"
@@ -16,8 +16,8 @@ A TypeScript scaffold for building API connector CLIs with multi-profile support
16
16
 
17
17
  ```bash
18
18
  # Clone for your connector
19
- git clone https://github.com/hasna/open-connectors.git connect-yourapi
20
- cd connect-yourapi
19
+ git clone https://github.com/hasna/apps.git
20
+ cd apps/connectors/connectors/connect-yourapi
21
21
 
22
22
  # Update package.json name
23
23
  # Change "@hasna/scaffold-connector" to "@hasna/connect-yourapi"
@@ -16,8 +16,8 @@ A TypeScript scaffold for building API connector CLIs with multi-profile support
16
16
 
17
17
  ```bash
18
18
  # Clone for your connector
19
- git clone https://github.com/hasna/open-connectors.git connect-yourapi
20
- cd connect-yourapi
19
+ git clone https://github.com/hasna/apps.git
20
+ cd apps/connectors/connectors/connect-yourapi
21
21
 
22
22
  # Update package.json name
23
23
  # Change "@hasna/scaffold-connector" to "@hasna/connect-yourapi"
@@ -16,8 +16,8 @@ A TypeScript scaffold for building API connector CLIs with multi-profile support
16
16
 
17
17
  ```bash
18
18
  # Clone for your connector
19
- git clone https://github.com/hasna/open-connectors.git connect-yourapi
20
- cd connect-yourapi
19
+ git clone https://github.com/hasna/apps.git
20
+ cd apps/connectors/connectors/connect-yourapi
21
21
 
22
22
  # Update package.json name
23
23
  # Change "@hasna/scaffold-connector" to "@hasna/connect-yourapi"
@@ -16,8 +16,8 @@ A TypeScript scaffold for building API connector CLIs with multi-profile support
16
16
 
17
17
  ```bash
18
18
  # Clone for your connector
19
- git clone https://github.com/hasna/open-connectors.git connect-yourapi
20
- cd connect-yourapi
19
+ git clone https://github.com/hasna/apps.git
20
+ cd apps/connectors/connectors/connect-yourapi
21
21
 
22
22
  # Update package.json name
23
23
  # Change "@hasna/scaffold-connector" to "@hasna/connect-yourapi"
@@ -16,8 +16,8 @@ A TypeScript scaffold for building API connector CLIs with multi-profile support
16
16
 
17
17
  ```bash
18
18
  # Clone for your connector
19
- git clone https://github.com/hasna/open-connectors.git connect-yourapi
20
- cd connect-yourapi
19
+ git clone https://github.com/hasna/apps.git
20
+ cd apps/connectors/connectors/connect-yourapi
21
21
 
22
22
  # Update package.json name
23
23
  # Change "@hasna/scaffold-connector" to "@hasna/connect-yourapi"
@@ -16,8 +16,8 @@ A TypeScript scaffold for building API connector CLIs with multi-profile support
16
16
 
17
17
  ```bash
18
18
  # Clone for your connector
19
- git clone https://github.com/hasna/open-connectors.git connect-yourapi
20
- cd connect-yourapi
19
+ git clone https://github.com/hasna/apps.git
20
+ cd apps/connectors/connectors/connect-yourapi
21
21
 
22
22
  # Update package.json name
23
23
  # Change "@hasna/scaffold-connector" to "@hasna/connect-yourapi"
@@ -16,8 +16,8 @@ A TypeScript scaffold for building API connector CLIs with multi-profile support
16
16
 
17
17
  ```bash
18
18
  # Clone for your connector
19
- git clone https://github.com/hasna/open-connectors.git connect-yourapi
20
- cd connect-yourapi
19
+ git clone https://github.com/hasna/apps.git
20
+ cd apps/connectors/connectors/connect-yourapi
21
21
 
22
22
  # Update package.json name
23
23
  # Change "@hasna/scaffold-connector" to "@hasna/connect-yourapi"
@@ -46,6 +46,6 @@
46
46
  },
47
47
  "repository": {
48
48
  "type": "git",
49
- "url": "git+https://github.com/hasna/open-connectors.git"
49
+ "url": "git+https://github.com/hasna/apps.git"
50
50
  }
51
51
  }
@@ -47,6 +47,6 @@
47
47
  },
48
48
  "repository": {
49
49
  "type": "git",
50
- "url": "git+https://github.com/hasna/open-connectors.git"
50
+ "url": "git+https://github.com/hasna/apps.git"
51
51
  }
52
52
  }
@@ -48,6 +48,6 @@
48
48
  },
49
49
  "repository": {
50
50
  "type": "git",
51
- "url": "git+https://github.com/hasna/open-connectors.git"
51
+ "url": "git+https://github.com/hasna/apps.git"
52
52
  }
53
53
  }
@@ -46,6 +46,6 @@
46
46
  },
47
47
  "repository": {
48
48
  "type": "git",
49
- "url": "git+https://github.com/hasna/open-connectors.git"
49
+ "url": "git+https://github.com/hasna/apps.git"
50
50
  }
51
51
  }
@@ -46,6 +46,6 @@
46
46
  },
47
47
  "repository": {
48
48
  "type": "git",
49
- "url": "git+https://github.com/hasna/open-connectors.git"
49
+ "url": "git+https://github.com/hasna/apps.git"
50
50
  }
51
51
  }
@@ -46,6 +46,6 @@
46
46
  },
47
47
  "repository": {
48
48
  "type": "git",
49
- "url": "git+https://github.com/hasna/open-connectors.git"
49
+ "url": "git+https://github.com/hasna/apps.git"
50
50
  }
51
51
  }
@@ -46,6 +46,6 @@
46
46
  },
47
47
  "repository": {
48
48
  "type": "git",
49
- "url": "git+https://github.com/hasna/open-connectors.git"
49
+ "url": "git+https://github.com/hasna/apps.git"
50
50
  }
51
51
  }
@@ -46,6 +46,6 @@
46
46
  },
47
47
  "repository": {
48
48
  "type": "git",
49
- "url": "git+https://github.com/hasna/open-connectors.git"
49
+ "url": "git+https://github.com/hasna/apps.git"
50
50
  }
51
51
  }
@@ -46,6 +46,6 @@
46
46
  },
47
47
  "repository": {
48
48
  "type": "git",
49
- "url": "git+https://github.com/hasna/open-connectors.git"
49
+ "url": "git+https://github.com/hasna/apps.git"
50
50
  }
51
51
  }
@@ -46,6 +46,6 @@
46
46
  },
47
47
  "repository": {
48
48
  "type": "git",
49
- "url": "git+https://github.com/hasna/open-connectors.git"
49
+ "url": "git+https://github.com/hasna/apps.git"
50
50
  }
51
51
  }
@@ -46,6 +46,6 @@
46
46
  },
47
47
  "repository": {
48
48
  "type": "git",
49
- "url": "git+https://github.com/hasna/open-connectors.git"
49
+ "url": "git+https://github.com/hasna/apps.git"
50
50
  }
51
51
  }
@@ -46,6 +46,6 @@
46
46
  },
47
47
  "repository": {
48
48
  "type": "git",
49
- "url": "git+https://github.com/hasna/open-connectors.git"
49
+ "url": "git+https://github.com/hasna/apps.git"
50
50
  }
51
51
  }
@@ -46,6 +46,6 @@
46
46
  },
47
47
  "repository": {
48
48
  "type": "git",
49
- "url": "git+https://github.com/hasna/open-connectors.git"
49
+ "url": "git+https://github.com/hasna/apps.git"
50
50
  }
51
51
  }
@@ -50,6 +50,6 @@
50
50
  },
51
51
  "repository": {
52
52
  "type": "git",
53
- "url": "git+https://github.com/hasna/open-connectors.git"
53
+ "url": "git+https://github.com/hasna/apps.git"
54
54
  }
55
55
  }
@@ -49,6 +49,6 @@
49
49
  },
50
50
  "repository": {
51
51
  "type": "git",
52
- "url": "git+https://github.com/hasna/open-connectors.git"
52
+ "url": "git+https://github.com/hasna/apps.git"
53
53
  }
54
54
  }
@@ -46,6 +46,6 @@
46
46
  },
47
47
  "repository": {
48
48
  "type": "git",
49
- "url": "git+https://github.com/hasna/open-connectors.git"
49
+ "url": "git+https://github.com/hasna/apps.git"
50
50
  }
51
51
  }
@@ -46,6 +46,6 @@
46
46
  },
47
47
  "repository": {
48
48
  "type": "git",
49
- "url": "git+https://github.com/hasna/open-connectors.git"
49
+ "url": "git+https://github.com/hasna/apps.git"
50
50
  }
51
51
  }
@@ -18,7 +18,7 @@ bun test
18
18
 
19
19
  ## API Details
20
20
 
21
- - **Base URL**: `https://api.split-in-batches.com/v1` (override via profile or `SPLIT_IN_BATCHES_BASE_URL`)
21
+ - **Base URL**: no default (must be configured) (override via profile or `SPLIT_IN_BATCHES_BASE_URL`)
22
22
  - **Auth**: Bearer token via `Authorization: Bearer <API_KEY>`
23
23
 
24
24
  ## API Resources
@@ -15,7 +15,7 @@ Copy `.env.example` to `.env` and set your API key:
15
15
  ```bash
16
16
  SPLIT_IN_BATCHES_API_KEY=your_api_key_here
17
17
  # Optional:
18
- # SPLIT_IN_BATCHES_BASE_URL=https://api.split-in-batches.com/v1
18
+ # SPLIT_IN_BATCHES_BASE_URL=configured.example.com/v1
19
19
  ```
20
20
 
21
21
  Or use the CLI profile/config commands:
@@ -1,5 +1,5 @@
1
1
  import { describe, test, expect, mock, beforeEach, afterEach } from 'bun:test';
2
- import { ConnectorClient, DEFAULT_BASE_URL } from './client';
2
+ import { ConnectorClient } from './client';
3
3
  import { BatchesApi } from './batches';
4
4
  import { Connector } from './index';
5
5
  import { ConnectorApiError } from '../types';
@@ -16,12 +16,11 @@ describe('ConnectorClient', () => {
16
16
  });
17
17
 
18
18
  test('requires apiKey', () => {
19
- expect(() => new ConnectorClient({ apiKey: '' })).toThrow('API key is required');
19
+ expect(() => new ConnectorClient({ apiKey: '', baseUrl: 'https://configured.example.com/v1' })).toThrow('API key is required');
20
20
  });
21
21
 
22
- test('uses default base URL', () => {
23
- const client = new ConnectorClient({ apiKey: 'test-key' });
24
- expect(client.getBaseUrl()).toBe(DEFAULT_BASE_URL);
22
+ test('refuses to send without a configured base URL (no default endpoint)', () => {
23
+ expect(() => new ConnectorClient({ apiKey: 'test-key' })).toThrow(/baseUrl/);
25
24
  });
26
25
 
27
26
  test('uses custom base URL and strips trailing slash', () => {
@@ -33,24 +32,24 @@ describe('ConnectorClient', () => {
33
32
  });
34
33
 
35
34
  test('buildUrl constructs batches list endpoint', () => {
36
- const client = new ConnectorClient({ apiKey: 'test-key' });
37
- expect(client.buildUrl('/batches')).toBe(`${DEFAULT_BASE_URL}/batches`);
35
+ const client = new ConnectorClient({ apiKey: 'test-key', baseUrl: 'https://configured.example.com/v1' });
36
+ expect(client.buildUrl('/batches')).toBe(`https://configured.example.com/v1/batches`);
38
37
  });
39
38
 
40
39
  test('buildUrl appends query parameters', () => {
41
- const client = new ConnectorClient({ apiKey: 'test-key' });
40
+ const client = new ConnectorClient({ apiKey: 'test-key', baseUrl: 'https://configured.example.com/v1' });
42
41
  const url = client.buildUrl('/batches', { limit: 10, offset: 0 });
43
- expect(url).toBe(`${DEFAULT_BASE_URL}/batches?limit=10&offset=0`);
42
+ expect(url).toBe(`https://configured.example.com/v1/batches?limit=10&offset=0`);
44
43
  });
45
44
 
46
45
  test('encodePathSegment encodes special characters', () => {
47
- const client = new ConnectorClient({ apiKey: 'test-key' });
46
+ const client = new ConnectorClient({ apiKey: 'test-key', baseUrl: 'https://configured.example.com/v1' });
48
47
  expect(client.encodePathSegment('item/1')).toBe('item%2F1');
49
48
  expect(client.encodePathSegment('batch id')).toBe('batch%20id');
50
49
  });
51
50
 
52
51
  test('request sends Bearer authorization header', async () => {
53
- const client = new ConnectorClient({ apiKey: 'split-in-batches-key' });
52
+ const client = new ConnectorClient({ apiKey: 'split-in-batches-key', baseUrl: 'https://configured.example.com/v1' });
54
53
  let capturedHeaders: Headers | undefined;
55
54
 
56
55
  globalThis.fetch = mock((_url, init) => {
@@ -66,7 +65,7 @@ describe('ConnectorClient', () => {
66
65
  });
67
66
 
68
67
  test('get batch builds encoded URL', async () => {
69
- const client = new ConnectorClient({ apiKey: 'test-key' });
68
+ const client = new ConnectorClient({ apiKey: 'test-key', baseUrl: 'https://configured.example.com/v1' });
70
69
  let capturedUrl = '';
71
70
 
72
71
  globalThis.fetch = mock((url) => {
@@ -79,11 +78,11 @@ describe('ConnectorClient', () => {
79
78
  const batches = new BatchesApi(client);
80
79
  await batches.get('item/1');
81
80
 
82
- expect(capturedUrl).toBe(`${DEFAULT_BASE_URL}/batches/item%2F1`);
81
+ expect(capturedUrl).toBe(`https://configured.example.com/v1/batches/item%2F1`);
83
82
  });
84
83
 
85
84
  test('post sends JSON body', async () => {
86
- const client = new ConnectorClient({ apiKey: 'test-key' });
85
+ const client = new ConnectorClient({ apiKey: 'test-key', baseUrl: 'https://configured.example.com/v1' });
87
86
  let capturedInit: RequestInit | undefined;
88
87
 
89
88
  globalThis.fetch = mock((_url, init) => {
@@ -100,7 +99,7 @@ describe('ConnectorClient', () => {
100
99
  });
101
100
 
102
101
  test('throws ConnectorApiError on HTTP error', async () => {
103
- const client = new ConnectorClient({ apiKey: 'test-key' });
102
+ const client = new ConnectorClient({ apiKey: 'test-key', baseUrl: 'https://configured.example.com/v1' });
104
103
 
105
104
  globalThis.fetch = mock(() =>
106
105
  Promise.resolve(
@@ -112,7 +111,7 @@ describe('ConnectorClient', () => {
112
111
  });
113
112
 
114
113
  test('getApiKeyPreview masks long keys', () => {
115
- const client = new ConnectorClient({ apiKey: 'abcdef1234567890' });
114
+ const client = new ConnectorClient({ apiKey: 'abcdef1234567890', baseUrl: 'https://configured.example.com/v1' });
116
115
  expect(client.getApiKeyPreview()).toBe('abcdef...7890');
117
116
  });
118
117
  });
@@ -128,7 +127,7 @@ describe('Connector', () => {
128
127
  });
129
128
 
130
129
  test('exposes API modules', () => {
131
- const connector = new Connector({ apiKey: 'test-key' });
130
+ const connector = new Connector({ apiKey: 'test-key', baseUrl: 'https://configured.example.com/v1' });
132
131
  expect(connector.batches).toBeDefined();
133
132
  expect(connector.events).toBeDefined();
134
133
  expect(connector.search).toBeDefined();
@@ -1,8 +1,6 @@
1
1
  import type { ConnectorConfig } from '../types';
2
2
  import { ConnectorApiError, parseApiError } from '../types';
3
3
 
4
- export const DEFAULT_BASE_URL = 'https://api.split-in-batches.com/v1';
5
-
6
4
  export interface RequestOptions {
7
5
  method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE';
8
6
  params?: Record<string, string | number | boolean | undefined>;
@@ -20,7 +18,10 @@ export class ConnectorClient {
20
18
  throw new Error('API key is required');
21
19
  }
22
20
  this.apiKey = config.apiKey;
23
- this.baseUrl = (config.baseUrl || DEFAULT_BASE_URL).replace(/\/$/, '');
21
+ if (!config.baseUrl) {
22
+ throw new Error('baseUrl is required: no default endpoint is configured; set baseUrl (profile, config, or the connector BASE_URL environment variable)');
23
+ }
24
+ this.baseUrl = config.baseUrl.replace(/\/$/, '');
24
25
  }
25
26
 
26
27
  buildUrl(
@@ -201,7 +201,7 @@ configCmd
201
201
  console.log(chalk.bold(`Active Profile: ${profileName}`));
202
202
  info(`Config directory: ${getConfigDir()}`);
203
203
  info(`API Key: ${apiKey ? `${apiKey.substring(0, 8)}...` : chalk.gray('not set')}`);
204
- info(`Base URL: ${baseUrl || chalk.gray('default (https://api.split-in-batches.com/v1)')}`);
204
+ info(`Base URL: ${baseUrl || chalk.gray('none configured')}`);
205
205
  });
206
206
 
207
207
  configCmd
@@ -46,6 +46,6 @@
46
46
  },
47
47
  "repository": {
48
48
  "type": "git",
49
- "url": "git+https://github.com/hasna/open-connectors.git"
49
+ "url": "git+https://github.com/hasna/apps.git"
50
50
  }
51
51
  }
@@ -181,4 +181,24 @@ describe('SplitIo API wrapper', () => {
181
181
  expect(capturedUrl).toBe(`${BASE_URL}/segments/prod%20env/beta%20users/uploadKeys?replace=false`);
182
182
  expect(capturedBody).toBe(JSON.stringify({ keys: ['user-1'], comment: 'sync' }));
183
183
  });
184
+
185
+ test('removeKeysFromSegment uses documented PUT remove endpoint', async () => {
186
+ let capturedUrl = '';
187
+ let capturedMethod = '';
188
+ let capturedBody = '';
189
+
190
+ globalThis.fetch = mock(async (input: RequestInfo | URL, init?: RequestInit) => {
191
+ capturedUrl = String(input);
192
+ capturedMethod = init?.method || '';
193
+ capturedBody = String(init?.body || '');
194
+ return new Response(null, { status: 204 });
195
+ }) as unknown as typeof fetch;
196
+
197
+ const api = new SplitIo({ apiKey: API_KEY });
198
+ await api.removeKeysFromSegment('beta users', 'prod env', ['user-1']);
199
+
200
+ expect(capturedMethod).toBe('PUT');
201
+ expect(capturedUrl).toBe(`${BASE_URL}/segments/prod%20env/beta%20users/removeKeys`);
202
+ expect(capturedBody).toBe(JSON.stringify({ keys: ['user-1'] }));
203
+ });
184
204
  });