@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.
- package/bin/index.js +1271 -317
- package/bin/mcp.js +524 -211
- package/bin/serve.js +1208 -256
- package/connectors/adobe/package.json +1 -1
- package/connectors/aitableai/package.json +1 -1
- package/connectors/alchemy/package.json +1 -1
- package/connectors/alerty/package.json +1 -1
- package/connectors/alienvault/package.json +1 -1
- package/connectors/alphamoon/package.json +1 -1
- package/connectors/alttextai/package.json +1 -1
- package/connectors/amadeus/package.json +1 -1
- package/connectors/amadeus/src/api/client.ts +6 -6
- package/connectors/amadeus/src/cli/index.ts +6 -6
- package/connectors/amadeus/src/utils/output.ts +5 -5
- package/connectors/amazon/package.json +1 -1
- package/connectors/amilia/package.json +1 -1
- package/connectors/amqpsender/package.json +1 -1
- package/connectors/announcekit/package.json +1 -1
- package/connectors/anthropic/.env.example +1 -1
- package/connectors/anyscale/package.json +1 -1
- package/connectors/apiary/package.json +1 -1
- package/connectors/apiflash/package.json +1 -1
- package/connectors/apitemplateio/package.json +1 -1
- package/connectors/apptivegrid/package.json +1 -1
- package/connectors/assemblyai/package.json +1 -1
- package/connectors/autom/package.json +1 -1
- package/connectors/automizy/package.json +1 -1
- package/connectors/autopilot/package.json +1 -1
- package/connectors/awscognito/package.json +1 -1
- package/connectors/bamboohr/package.json +1 -1
- package/connectors/bannerbear/package.json +1 -1
- package/connectors/baseten/package.json +1 -1
- package/connectors/box/package.json +1 -1
- package/connectors/brevo/package.json +1 -1
- package/connectors/calendly/package.json +1 -1
- package/connectors/cerebras/package.json +1 -1
- package/connectors/chargebee/package.json +1 -1
- package/connectors/clearbit/package.json +1 -1
- package/connectors/clickbank/README.md +2 -2
- package/connectors/cloudflare-workers/package.json +1 -1
- package/connectors/coda/package.json +1 -1
- package/connectors/coingecko/package.json +1 -1
- package/connectors/convertkit/package.json +1 -1
- package/connectors/customerio/package.json +1 -1
- package/connectors/databricks/package.json +1 -1
- package/connectors/datadog/package.json +1 -1
- package/connectors/datasoap/README.md +2 -2
- package/connectors/datasoap/package.json +1 -1
- package/connectors/datumbox/README.md +2 -2
- package/connectors/datumbox/package.json +1 -1
- package/connectors/dayschedule/README.md +2 -2
- package/connectors/dayschedule/package.json +1 -1
- package/connectors/deepgram/package.json +1 -1
- package/connectors/deepinfra/README.md +2 -2
- package/connectors/deepinfra/package.json +1 -1
- package/connectors/deepl/README.md +2 -2
- package/connectors/deepl/package.json +1 -1
- package/connectors/deepseek/package.json +1 -1
- package/connectors/demio/README.md +2 -2
- package/connectors/demio/package.json +1 -1
- package/connectors/descript/README.md +2 -2
- package/connectors/descript/package.json +1 -1
- package/connectors/detrack/README.md +2 -2
- package/connectors/detrack/package.json +1 -1
- package/connectors/devcycle/README.md +2 -2
- package/connectors/devcycle/package.json +1 -1
- package/connectors/dhl/README.md +2 -2
- package/connectors/dhl/package.json +1 -1
- package/connectors/docusign/package.json +1 -1
- package/connectors/dropbox/package.json +1 -1
- package/connectors/fal/package.json +1 -1
- package/connectors/fathom/package.json +1 -1
- package/connectors/fireworks/package.json +1 -1
- package/connectors/gitlab/package.json +1 -1
- package/connectors/googlechat/README.md +1 -2
- package/connectors/googledrive/src/api/client.ts +5 -5
- package/connectors/googledrive/src/api/files.ts +11 -11
- package/connectors/googledrive/src/api/folders.ts +2 -2
- package/connectors/googledrive/src/cli/index.ts +4 -4
- package/connectors/googledrive/src/utils/output.ts +3 -3
- package/connectors/googleforms/README.md +1 -2
- package/connectors/googleperspective/README.md +1 -2
- package/connectors/grafana/package.json +1 -1
- package/connectors/growbots/README.md +2 -2
- package/connectors/growbots/package.json +1 -1
- package/connectors/gumroad/package.json +1 -1
- package/connectors/gupshup/README.md +2 -2
- package/connectors/gupshup/package.json +1 -1
- package/connectors/guru/README.md +2 -2
- package/connectors/guru/package.json +1 -1
- package/connectors/hackernews/README.md +2 -2
- package/connectors/hackernews/package.json +1 -1
- package/connectors/halopsa/README.md +2 -2
- package/connectors/halopsa/package.json +1 -1
- package/connectors/handwrytten/README.md +2 -2
- package/connectors/handwrytten/package.json +1 -1
- package/connectors/hansei/README.md +2 -2
- package/connectors/hansei/package.json +1 -1
- package/connectors/harrypotterapi/README.md +2 -2
- package/connectors/harrypotterapi/package.json +1 -1
- package/connectors/harvest/README.md +2 -2
- package/connectors/harvest/package.json +1 -1
- package/connectors/headlesstesting/README.md +2 -2
- package/connectors/headlesstesting/package.json +1 -1
- package/connectors/homeassistant/package.json +1 -1
- package/connectors/klaviyo/package.json +1 -1
- package/connectors/lemonsqueezy/package.json +1 -1
- package/connectors/lighthouse/src/api/index.ts +1 -1
- package/connectors/linkedin/package.json +1 -1
- package/connectors/linkish/README.md +2 -2
- package/connectors/linkish/package.json +1 -1
- package/connectors/liveagent/README.md +2 -2
- package/connectors/liveagent/package.json +1 -1
- package/connectors/localazy/README.md +2 -2
- package/connectors/localazy/package.json +1 -1
- package/connectors/loginradius/README.md +2 -2
- package/connectors/loginradius/package.json +1 -1
- package/connectors/lokalise/README.md +2 -2
- package/connectors/lokalise/package.json +1 -1
- package/connectors/lonescale/README.md +2 -2
- package/connectors/lonescale/package.json +1 -1
- package/connectors/lucidchart/README.md +2 -2
- package/connectors/lucidchart/package.json +1 -1
- package/connectors/luma/package.json +1 -1
- package/connectors/magento2/README.md +2 -2
- package/connectors/magento2/package.json +1 -1
- package/connectors/mailcheck/README.md +2 -2
- package/connectors/mailcheck/package.json +1 -1
- package/connectors/mailchimp/package.json +1 -1
- package/connectors/mailerlite/README.md +2 -2
- package/connectors/mailerlite/package.json +1 -1
- package/connectors/mailersend/README.md +2 -2
- package/connectors/mailersend/package.json +1 -1
- package/connectors/mailify/README.md +2 -2
- package/connectors/mailify/package.json +1 -1
- package/connectors/mailjet/README.md +2 -2
- package/connectors/mailjet/package.json +1 -1
- package/connectors/mailmodo/README.md +2 -2
- package/connectors/mailmodo/package.json +1 -1
- package/connectors/malcore/README.md +2 -2
- package/connectors/malcore/package.json +1 -1
- package/connectors/mandrill/README.md +2 -2
- package/connectors/mandrill/package.json +1 -1
- package/connectors/marcomrobot/README.md +2 -2
- package/connectors/marcomrobot/package.json +1 -1
- package/connectors/marketingmasterio/README.md +2 -2
- package/connectors/marketingmasterio/package.json +1 -1
- package/connectors/marketplacer/README.md +2 -2
- package/connectors/marketplacer/package.json +1 -1
- package/connectors/marketstack/README.md +2 -2
- package/connectors/marketstack/package.json +1 -1
- package/connectors/matrix/README.md +1 -1
- package/connectors/matrix/package.json +1 -1
- package/connectors/mattermost/README.md +1 -1
- package/connectors/mattermost/package.json +1 -1
- package/connectors/mautic/README.md +1 -1
- package/connectors/mautic/package.json +1 -1
- package/connectors/mav/README.md +1 -1
- package/connectors/mav/package.json +1 -1
- package/connectors/maverick/README.md +1 -1
- package/connectors/maverick/package.json +1 -1
- package/connectors/mem/README.md +1 -1
- package/connectors/mem/package.json +1 -1
- package/connectors/messagebird/package.json +1 -1
- package/connectors/metabase/README.md +1 -1
- package/connectors/metabase/package.json +1 -1
- package/connectors/miro/package.json +1 -1
- package/connectors/mocean/package.json +1 -1
- package/connectors/modal/package.json +1 -1
- package/connectors/monday/package.json +1 -1
- package/connectors/monicacrm/package.json +1 -1
- package/connectors/moonclerk/package.json +1 -1
- package/connectors/moonmail/package.json +1 -1
- package/connectors/morph/package.json +1 -1
- package/connectors/mqtt/package.json +1 -1
- package/connectors/msg91/package.json +1 -1
- package/connectors/mubert/package.json +1 -1
- package/connectors/murf/package.json +1 -1
- package/connectors/mux/package.json +1 -1
- package/connectors/netlify/package.json +1 -1
- package/connectors/okta/package.json +1 -1
- package/connectors/paddle/package.json +1 -1
- package/connectors/perplexity/package.json +1 -1
- package/connectors/pinterest/package.json +1 -1
- package/connectors/pipedrive/package.json +1 -1
- package/connectors/plaid/package.json +1 -1
- package/connectors/quickchart/README.md +2 -2
- package/connectors/quintadb/README.md +2 -2
- package/connectors/rabbitmq/README.md +2 -2
- package/connectors/radar/README.md +2 -2
- package/connectors/raindrop/README.md +2 -2
- package/connectors/rapid7insightvm/README.md +2 -2
- package/connectors/raventools/README.md +2 -2
- package/connectors/rawgvideogamesdatabase/README.md +2 -2
- package/connectors/rdstationcrm/README.md +2 -2
- package/connectors/readai/README.md +2 -2
- package/connectors/roboflow/package.json +1 -1
- package/connectors/runway/package.json +1 -1
- package/connectors/sendgrid/package.json +1 -1
- package/connectors/shuffler/package.json +1 -1
- package/connectors/sierrainteractive/package.json +1 -1
- package/connectors/sifter/package.json +1 -1
- package/connectors/signaturit/package.json +1 -1
- package/connectors/signl4/package.json +1 -1
- package/connectors/simpleem/package.json +1 -1
- package/connectors/simplehash/package.json +1 -1
- package/connectors/simplekpi/package.json +1 -1
- package/connectors/simplelocalize/package.json +1 -1
- package/connectors/simplero/package.json +1 -1
- package/connectors/smartrecruiters/package.json +1 -1
- package/connectors/smtp2go/package.json +1 -1
- package/connectors/snowflake/package.json +1 -1
- package/connectors/sparkpost/package.json +1 -1
- package/connectors/split-in-batches/CLAUDE.md +1 -1
- package/connectors/split-in-batches/README.md +1 -1
- package/connectors/split-in-batches/src/api/client.test.ts +16 -17
- package/connectors/split-in-batches/src/api/client.ts +4 -3
- package/connectors/split-in-batches/src/cli/index.ts +1 -1
- package/connectors/split-io/package.json +1 -1
- package/connectors/split-io/src/api/client.test.ts +20 -0
- package/connectors/split-io/src/cli/index.ts +9 -9
- package/connectors/spreadsheet-file/.env.example +1 -1
- package/connectors/spreadsheet-file/CLAUDE.md +2 -2
- package/connectors/spreadsheet-file/README.md +3 -3
- package/connectors/spreadsheet-file/src/api/client.test.ts +8 -9
- package/connectors/spreadsheet-file/src/api/client.ts +4 -3
- package/connectors/spreadsheet-file/src/cli/index.ts +1 -1
- package/connectors/sprinklr/package.json +1 -1
- package/connectors/sprout-social/package.json +1 -1
- package/connectors/square/package.json +1 -1
- package/connectors/sse-trigger/.env.example +1 -1
- package/connectors/sse-trigger/CLAUDE.md +2 -2
- package/connectors/sse-trigger/README.md +1 -1
- package/connectors/sse-trigger/package.json +1 -1
- package/connectors/sse-trigger/src/api/client.test.ts +12 -8
- package/connectors/sse-trigger/src/api/client.ts +4 -3
- package/connectors/sse-trigger/src/api/index.ts +1 -1
- package/connectors/sse-trigger/src/cli/index.ts +1 -1
- package/connectors/sse-trigger/src/index.ts +1 -1
- package/connectors/stability-api-platform/AGENTS.md +2 -2
- package/connectors/stability-api-platform/CLAUDE.md +1 -1
- package/connectors/stability-api-platform/README.md +2 -2
- package/connectors/stability-api-platform/src/api/client.test.ts +17 -12
- package/connectors/stability-api-platform/src/api/client.ts +4 -3
- package/connectors/stability-api-platform/src/api/index.ts +0 -1
- package/connectors/stability-api-platform/src/cli/index.ts +1 -1
- package/connectors/stability-api-platform/src/index.ts +0 -1
- package/connectors/standout/package.json +1 -1
- package/connectors/statuspage/package.json +1 -1
- package/connectors/stop-and-error/.env.example +1 -1
- package/connectors/stop-and-error/CLAUDE.md +1 -1
- package/connectors/stop-and-error/README.md +1 -1
- package/connectors/stop-and-error/src/api/client.test.ts +12 -8
- package/connectors/stop-and-error/src/api/client.ts +4 -3
- package/connectors/stop-and-error/src/cli/index.ts +2 -2
- package/connectors/stoplight/package.json +1 -1
- package/connectors/stoplight-api-platform/package.json +1 -1
- package/connectors/strand-ai/CLAUDE.md +1 -1
- package/connectors/stripe-financial-connections/.env.example +1 -1
- package/connectors/stripe-financial-connections/CLAUDE.md +2 -2
- package/connectors/stripe-financial-connections/package.json +1 -1
- package/connectors/stripe-financial-connections/src/api/client.test.ts +34 -0
- package/connectors/stripe-financial-connections/src/api/client.ts +4 -3
- package/connectors/stripe-financial-connections/src/cli/index.ts +1 -1
- package/connectors/stripe-terminal/package.json +1 -1
- package/connectors/stytch/package.json +1 -1
- package/connectors/sucuri-api-platform/.env.example +1 -1
- package/connectors/sucuri-api-platform/CLAUDE.md +1 -1
- package/connectors/sucuri-api-platform/README.md +2 -2
- package/connectors/sucuri-api-platform/src/api/client.test.ts +9 -7
- package/connectors/sucuri-api-platform/src/api/client.ts +4 -3
- package/connectors/sucuri-api-platform/src/api/index.ts +1 -1
- package/connectors/sucuri-api-platform/src/cli/index.ts +1 -1
- package/connectors/sucuri-api-platform/src/index.ts +1 -1
- package/connectors/sumo-logic/package.json +1 -1
- package/connectors/supabase/package.json +1 -1
- package/connectors/supabase-api-platform/package.json +1 -1
- package/connectors/sysdig/package.json +1 -1
- package/connectors/tableau/package.json +1 -1
- package/connectors/takecareos/README.md +2 -2
- package/connectors/takecareos/package.json +1 -1
- package/connectors/telegram/src/api/bot.ts +20 -0
- package/connectors/telegram/src/api/client.ts +32 -0
- package/connectors/telegram/src/api/files.test.ts +103 -0
- package/connectors/telegram/src/api/index.ts +1 -0
- package/connectors/telegram/src/api/messages.test.ts +8 -2
- package/connectors/telegram/src/cli/files.test.ts +40 -0
- package/connectors/telegram/src/cli/files.ts +38 -0
- package/connectors/telegram/src/cli/index.ts +27 -30
- package/connectors/telegram/src/cli/updates.test.ts +176 -0
- package/connectors/telegram/src/cli/updates.ts +95 -0
- package/connectors/telegram/src/index.ts +1 -0
- package/connectors/telegram/src/types/index.ts +13 -0
- package/connectors/terraform-cloud/package.json +1 -1
- package/connectors/tettra-api-platform/CLAUDE.md +1 -1
- package/connectors/tettra-api-platform/README.md +2 -2
- package/connectors/tettra-api-platform/src/api/client.test.ts +7 -8
- package/connectors/tettra-api-platform/src/api/client.ts +4 -3
- package/connectors/tettra-api-platform/src/api/index.ts +1 -1
- package/connectors/tettra-api-platform/src/cli/index.ts +1 -1
- package/connectors/tettra-api-platform/src/index.ts +1 -1
- package/connectors/textit/package.json +1 -1
- package/connectors/thousandeyes/package.json +1 -1
- package/connectors/ticket-tailor/package.json +1 -1
- package/connectors/ticketsource/package.json +1 -1
- package/connectors/tiktokads/README.md +1 -1
- package/connectors/time-saved/package.json +1 -1
- package/connectors/tipalti/package.json +1 -1
- package/connectors/together-api-platform/.env.example +1 -1
- package/connectors/together-api-platform/CLAUDE.md +1 -1
- package/connectors/together-api-platform/README.md +1 -1
- package/connectors/together-api-platform/src/api/client.test.ts +11 -7
- package/connectors/together-api-platform/src/api/client.ts +4 -4
- package/connectors/together-api-platform/src/api/index.ts +1 -1
- package/connectors/together-api-platform/src/cli/index.ts +1 -1
- package/connectors/together-api-platform/src/index.ts +1 -1
- package/connectors/tomtom/AGENTS.md +1 -1
- package/connectors/totp/package.json +1 -1
- package/connectors/traverse/package.json +1 -1
- package/connectors/travo-ai/package.json +1 -1
- package/connectors/travo-real-estate/CLAUDE.md +1 -1
- package/connectors/travo-real-estate/README.md +1 -1
- package/connectors/travo-real-estate/src/api/client.test.ts +20 -16
- package/connectors/travo-real-estate/src/api/client.ts +4 -3
- package/connectors/travo-real-estate/src/utils/config.ts +2 -4
- package/connectors/tray-api-platform/CLAUDE.md +1 -1
- package/connectors/tray-api-platform/src/api/client.test.ts +17 -13
- package/connectors/tray-api-platform/src/api/client.ts +4 -3
- package/connectors/tray-api-platform/src/api/index.ts +1 -1
- package/connectors/tray-api-platform/src/cli/index.ts +1 -1
- package/connectors/tray-api-platform/src/index.ts +0 -1
- package/connectors/trigger-dev/package.json +1 -1
- package/connectors/trigger-dev-api-platform/package.json +1 -1
- package/connectors/turbot-pipes/package.json +1 -1
- package/connectors/turso/package.json +1 -1
- package/connectors/turso-api-platform/CLAUDE.md +1 -1
- package/connectors/turso-api-platform/README.md +2 -2
- package/connectors/turso-api-platform/package.json +1 -1
- package/connectors/turso-api-platform/src/api/client.test.ts +17 -13
- package/connectors/turso-api-platform/src/api/client.ts +4 -3
- package/connectors/turso-api-platform/src/cli/index.ts +2 -2
- package/connectors/twilio-api-platform/CLAUDE.md +1 -1
- package/connectors/twilio-api-platform/src/api/client.test.ts +11 -11
- package/connectors/twilio-api-platform/src/api/client.ts +4 -3
- package/connectors/twilio-api-platform/src/api/index.ts +1 -1
- package/connectors/twilio-api-platform/src/cli/index.ts +1 -1
- package/connectors/twilio-api-platform/src/index.ts +1 -1
- package/connectors/tyk-api-platform/.env.example +1 -1
- package/connectors/tyk-api-platform/CLAUDE.md +2 -2
- package/connectors/tyk-api-platform/README.md +1 -1
- package/connectors/tyk-api-platform/package.json +1 -1
- package/connectors/tyk-api-platform/src/api/client.test.ts +14 -15
- package/connectors/tyk-api-platform/src/api/client.ts +4 -3
- package/connectors/tyk-api-platform/src/api/index.ts +1 -1
- package/connectors/tyk-api-platform/src/cli/index.ts +1 -1
- package/connectors/tyk-api-platform/src/index.ts +1 -1
- package/connectors/umami/package.json +1 -1
- package/connectors/unifold/package.json +1 -1
- package/connectors/unione/package.json +1 -1
- package/connectors/uniprot/README.md +1 -1
- package/connectors/uniswap-api/package.json +1 -1
- package/connectors/ups/package.json +1 -1
- package/connectors/usereframe/package.json +1 -1
- package/connectors/vanta/package.json +1 -1
- package/connectors/vector-legal/.env.example +1 -1
- package/connectors/vector-legal/AGENTS.md +1 -1
- package/connectors/vector-legal/CLAUDE.md +1 -1
- package/connectors/vector-legal/README.md +1 -1
- package/connectors/vector-legal/src/api/client.test.ts +9 -5
- package/connectors/vector-legal/src/api/client.ts +4 -3
- package/connectors/vector-legal/src/api/index.ts +1 -1
- package/connectors/vector-legal/src/cli/index.ts +2 -2
- package/connectors/vector-legal/src/index.ts +0 -1
- package/connectors/vector-legal-api/CLAUDE.md +1 -1
- package/connectors/vector-legal-api/README.md +2 -2
- package/connectors/vector-legal-api/src/api/client.test.ts +12 -7
- package/connectors/vector-legal-api/src/api/client.ts +4 -3
- package/connectors/vector-legal-api/src/api/index.ts +1 -1
- package/connectors/vector-legal-api/src/cli/index.ts +1 -1
- package/connectors/vector-legal-api/src/index.ts +1 -2
- package/connectors/vela/package.json +1 -1
- package/connectors/velum-data-quality/.env.example +1 -1
- package/connectors/velum-data-quality/CLAUDE.md +1 -1
- package/connectors/velum-data-quality/src/api/client.test.ts +15 -16
- package/connectors/velum-data-quality/src/api/client.ts +4 -3
- package/connectors/velum-data-quality/src/api/index.ts +1 -1
- package/connectors/velum-data-quality/src/cli/index.ts +1 -1
- package/connectors/velum-data-quality/src/index.ts +0 -1
- package/connectors/velum-labs/package.json +1 -1
- package/connectors/vercel/package.json +1 -1
- package/connectors/vercel-api-platform/.env.example +1 -1
- package/connectors/vercel-api-platform/CLAUDE.md +2 -2
- package/connectors/vercel-api-platform/README.md +2 -2
- package/connectors/vercel-api-platform/src/api/client.test.ts +27 -6
- package/connectors/vercel-api-platform/src/api/client.ts +4 -3
- package/connectors/vercel-api-platform/src/api/index.ts +1 -1
- package/connectors/vercel-api-platform/src/cli/index.ts +2 -2
- package/connectors/vercel-api-platform/src/index.ts +0 -1
- package/connectors/vercel-blob/package.json +1 -1
- package/connectors/vercel-blob-platform/package.json +1 -1
- package/connectors/vercel-edge-config/package.json +1 -1
- package/connectors/vercel-edge-config-platform/package.json +1 -1
- package/connectors/veriphone/README.md +2 -2
- package/connectors/vertex-ai/package.json +1 -1
- package/connectors/vidyard/package.json +1 -1
- package/connectors/vonage/package.json +1 -1
- package/connectors/voygr/package.json +1 -1
- package/connectors/wait/package.json +1 -1
- package/connectors/walmart-marketplace/package.json +1 -1
- package/connectors/wato/package.json +1 -1
- package/connectors/wave-accounting/CLAUDE.md +1 -1
- package/connectors/wave-accounting/package.json +1 -1
- package/connectors/wave-accounting/src/utils/auth.ts +1 -1
- package/connectors/wayco/package.json +1 -1
- package/connectors/weaviate-api-platform/CLAUDE.md +1 -1
- package/connectors/weaviate-api-platform/src/api/client.test.ts +32 -7
- package/connectors/weaviate-api-platform/src/api/client.ts +4 -3
- package/connectors/weaviate-api-platform/src/api/index.ts +1 -1
- package/connectors/weaviate-api-platform/src/cli/index.ts +1 -1
- package/connectors/weaviate-api-platform/src/index.ts +1 -1
- package/connectors/webpagetest/package.json +1 -1
- package/connectors/weezevent/package.json +1 -1
- package/connectors/wikipedia/src/api/client.ts +1 -1
- package/connectors/wildcard/package.json +1 -1
- package/connectors/windmill/package.json +1 -1
- package/connectors/wise/package.json +1 -1
- package/connectors/withai/package.json +1 -1
- package/connectors/wiz/CLAUDE.md +1 -1
- package/connectors/wiz/package.json +1 -1
- package/connectors/wordfence/package.json +1 -1
- package/connectors/wordfence-api-platform/package.json +1 -1
- package/connectors/workflow-trigger/.env.example +1 -1
- package/connectors/workflow-trigger/CLAUDE.md +1 -1
- package/connectors/workflow-trigger/README.md +1 -1
- package/connectors/workflow-trigger/src/api/client.test.ts +10 -6
- package/connectors/workflow-trigger/src/api/client.ts +4 -3
- package/connectors/workflow-trigger/src/cli/index.ts +1 -1
- package/connectors/workos/package.json +1 -1
- package/connectors/write-binary-file/CLAUDE.md +1 -1
- package/connectors/write-binary-file/README.md +1 -1
- package/connectors/write-binary-file/package.json +1 -1
- package/connectors/write-binary-file/src/api/client.test.ts +16 -12
- package/connectors/write-binary-file/src/api/client.ts +4 -3
- package/connectors/write-binary-file/src/api/index.ts +1 -1
- package/connectors/write-binary-file/src/index.ts +1 -1
- package/connectors/wubookratechecker/src/api/client.test.ts +34 -0
- package/connectors/wubookratechecker/src/api/client.ts +3 -1
- package/connectors/wubookratechecker/src/api/index.ts +1 -1
- package/connectors/wubookratechecker/src/types/index.ts +1 -1
- package/connectors/xai/.env.example +1 -1
- package/connectors/xai-api-platform/.env.example +1 -1
- package/connectors/xai-api-platform/CLAUDE.md +1 -1
- package/connectors/xai-api-platform/README.md +1 -1
- package/connectors/xai-api-platform/src/api/client.test.ts +34 -9
- package/connectors/xai-api-platform/src/api/client.ts +4 -3
- package/connectors/xai-api-platform/src/api/index.ts +1 -1
- package/connectors/xai-api-platform/src/cli/index.ts +1 -1
- package/connectors/xai-api-platform/src/index.ts +1 -1
- package/connectors/xai-api-platform/src/utils/config.ts +3 -4
- package/connectors/xai-grok/.env.example +1 -1
- package/connectors/xai-grok/src/api/client.test.ts +3 -3
- package/connectors/xai-grok/src/cli/index.ts +1 -1
- package/connectors/xai-grok/src/utils/config.ts +1 -1
- package/connectors/ynab/package.json +1 -1
- package/connectors/you-com/README.md +2 -2
- package/connectors/you-com/package.json +1 -1
- package/connectors/yousign/package.json +1 -1
- package/connectors/zapier-api-platform/CLAUDE.md +1 -1
- package/connectors/zapier-api-platform/README.md +1 -1
- package/connectors/zapier-api-platform/src/api/client.test.ts +19 -14
- package/connectors/zapier-api-platform/src/api/client.ts +4 -3
- package/connectors/zapier-api-platform/src/api/index.ts +1 -1
- package/connectors/zapier-api-platform/src/cli/index.ts +1 -1
- package/connectors/zapier-api-platform/src/index.ts +1 -1
- package/connectors/zendesk/.env.example +4 -4
- package/connectors/zendesk/CLAUDE.md +1 -3
- package/connectors/zendesk/Makefile +18 -5
- package/connectors/zendesk/README.md +3 -8
- package/connectors/zendesk/SCAFFOLD.md +6 -5
- package/connectors/zerosettle/package.json +1 -1
- package/connectors/zoho-bigin/CLAUDE.md +1 -1
- package/connectors/zoho-campaigns/package.json +1 -1
- package/connectors/zoho-sign/package.json +1 -1
- package/connectors/zoho-subscriptions/CLAUDE.md +1 -1
- package/connectors/zohoprojects/CLAUDE.md +1 -1
- package/connectors/zolvo/package.json +1 -1
- package/connectors/zoom-api/package.json +1 -1
- package/connectors/zymbly/README.md +2 -2
- package/connectors/zymbly/package.json +1 -1
- package/dashboard/dist/assets/index-8uoGZF7B.js +280 -0
- package/dashboard/dist/index.html +1 -1
- package/dist/db/locks.d.ts +1 -1
- package/dist/index.js +17 -15
- package/dist/lib/connector-resolver.d.ts +1 -1
- package/dist/lib/llm.d.ts +1 -1
- package/dist/lib/open-browser.d.ts +18 -0
- package/dist/lib/open-browser.test.d.ts +1 -0
- package/package.json +6 -4
- package/dashboard/dist/assets/index-DlEljRrW.js +0 -285
|
@@ -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/
|
|
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/
|
|
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/
|
|
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/
|
|
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/
|
|
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/
|
|
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/
|
|
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/
|
|
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/
|
|
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/
|
|
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"
|
|
@@ -18,7 +18,7 @@ bun test
|
|
|
18
18
|
|
|
19
19
|
## API Details
|
|
20
20
|
|
|
21
|
-
- **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=
|
|
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
|
|
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
|
-
|
|
23
|
-
|
|
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(
|
|
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(
|
|
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(
|
|
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
|
-
|
|
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('
|
|
204
|
+
info(`Base URL: ${baseUrl || chalk.gray('none configured')}`);
|
|
205
205
|
});
|
|
206
206
|
|
|
207
207
|
configCmd
|
|
@@ -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
|
});
|