@oomol-lab/open-connector 1.9.1 → 1.9.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/README.md +4 -2
- package/assets/open-connector/catalog/apps/aisa.json +1946 -56
- package/assets/open-connector/catalog/apps/akta.json +1181 -0
- package/assets/open-connector/catalog/apps/allratestoday.json +174 -0
- package/assets/open-connector/catalog/apps/asana.json +110 -0
- package/assets/open-connector/catalog/apps/calendly.json +103 -0
- package/assets/open-connector/catalog/apps/clickup.json +104 -0
- package/assets/open-connector/catalog/apps/cloro.json +9289 -0
- package/assets/open-connector/catalog/apps/contextdev.json +20670 -0
- package/assets/open-connector/catalog/apps/deepseek.json +177 -0
- package/assets/open-connector/catalog/apps/defillama.json +23747 -0
- package/assets/open-connector/catalog/apps/fireflies.json +103 -0
- package/assets/open-connector/catalog/apps/fundable.json +7926 -0
- package/assets/open-connector/catalog/apps/intercom.json +110 -0
- package/assets/open-connector/catalog/apps/jira.json +110 -0
- package/assets/open-connector/catalog/apps/keenable.json +235 -0
- package/assets/open-connector/catalog/apps/kolsprite_mcp.json +1227 -0
- package/assets/open-connector/catalog/apps/litescrape.json +52514 -0
- package/assets/open-connector/catalog/apps/magichour.json +5926 -0
- package/assets/open-connector/catalog/apps/minimax.json +24 -14
- package/assets/open-connector/catalog/apps/notion.json +731 -76
- package/assets/open-connector/catalog/apps/octen.json +5248 -0
- package/assets/open-connector/catalog/apps/openrouter.json +10 -0
- package/assets/open-connector/catalog/apps/orbit.json +3574 -0
- package/assets/open-connector/catalog/apps/pandadoc.json +68 -0
- package/assets/open-connector/catalog/apps/pipedrive.json +86 -0
- package/assets/open-connector/catalog/apps/ploid.json +9802 -0
- package/assets/open-connector/catalog/apps/resend.json +100 -0
- package/assets/open-connector/catalog/apps/salesforce.json +2487 -119
- package/assets/open-connector/catalog/apps/saperly.json +7056 -0
- package/assets/open-connector/catalog/apps/search1api.json +2382 -0
- package/assets/open-connector/catalog/apps/sentry.json +129 -0
- package/assets/open-connector/catalog/apps/slackbot.json +250 -2
- package/assets/open-connector/catalog/apps/surf.json +11378 -0
- package/assets/open-connector/catalog/apps/tally.json +113 -0
- package/assets/open-connector/catalog/apps/tinyfish.json +6154 -0
- package/assets/open-connector/catalog/apps/typeform.json +90 -1
- package/assets/open-connector/catalog/apps/vaquill.json +5944 -0
- package/assets/open-connector/catalog/apps/vercel.json +110 -0
- package/assets/open-connector/catalog/apps/weixin_store.json +1256 -7
- package/assets/open-connector/catalog/apps/zoom.json +112 -0
- package/assets/open-connector/catalog/apps-index.json +1 -1
- package/package.json +1 -1
- package/src/connection-error.d.ts +7 -0
- package/src/connection-error.js +10 -0
- package/src/connection-service.d.ts +2 -50
- package/src/connection-service.js +6 -130
- package/src/connection-store.d.ts +41 -0
- package/src/connection-store.js +1 -0
- package/src/core/guarded-fetch.d.ts +3 -0
- package/src/core/guarded-fetch.js +8 -1
- package/src/core/json-schema.d.ts +11 -3
- package/src/core/json-schema.js +13 -3
- package/src/core/provider-network-policy.d.ts +15 -0
- package/src/core/provider-network-policy.js +11 -0
- package/src/core/request.d.ts +18 -14
- package/src/core/request.js +11 -35
- package/src/credential-resolver.d.ts +24 -0
- package/src/credential-resolver.js +131 -0
- package/src/mcp.js +1 -1
- package/src/oauth/oauth-client-config-service.d.ts +1 -1
- package/src/oauth/oauth-client-config-service.js +14 -2
- package/src/oauth/oauth-credential-refresh-service.js +1 -1
- package/src/oauth/oauth-flow-service.d.ts +9 -1
- package/src/oauth/oauth-flow-service.js +11 -1
- package/src/providers/abuseipdb/executors.js +3 -4
- package/src/providers/action-contracts.generated.d.ts +24 -6
- package/src/providers/addressfinder/executors.js +2 -3
- package/src/providers/aeroleads/executors.js +3 -3
- package/src/providers/affinity/runtime.js +6 -7
- package/src/providers/aftership/executors.js +2 -2
- package/src/providers/agent_mail/runtime.js +2 -2
- package/src/providers/agentql/runtime.js +2 -2
- package/src/providers/agenty/runtime.js +5 -6
- package/src/providers/agiled/runtime.d.ts +0 -1
- package/src/providers/agiled/runtime.js +2 -3
- package/src/providers/agility/runtime.js +2 -3
- package/src/providers/ahrefs/runtime.js +3 -3
- package/src/providers/aifinmarket/runtime.js +6 -7
- package/src/providers/airtable/executors.js +3 -3
- package/src/providers/aisa/executors.js +238 -6
- package/src/providers/aisa/firecrawl-actions.d.ts +9 -0
- package/src/providers/aisa/firecrawl-actions.js +115 -0
- package/src/providers/akta/actions.d.ts +9 -0
- package/src/providers/akta/actions.js +420 -0
- package/src/providers/akta/executors.d.ts +4 -0
- package/src/providers/akta/executors.js +103 -0
- package/src/providers/alchemy/runtime.js +2 -2
- package/src/providers/algolia/runtime.js +3 -3
- package/src/providers/aliyun_oss/executors.js +7 -7
- package/src/providers/allratestoday/executors.d.ts +3 -0
- package/src/providers/allratestoday/executors.js +18 -0
- package/src/providers/allratestoday/runtime.d.ts +17 -0
- package/src/providers/allratestoday/runtime.js +104 -0
- package/src/providers/alpaca/runtime.js +2 -3
- package/src/providers/alpha_vantage/runtime.js +2 -2
- package/src/providers/alt_text_ai/runtime.js +2 -2
- package/src/providers/altiria/executors.js +3 -3
- package/src/providers/amap/runtime.js +3 -3
- package/src/providers/ambee/runtime.js +2 -2
- package/src/providers/ambivo/executors.js +3 -3
- package/src/providers/amilia/runtime.js +1 -1
- package/src/providers/amplemarket/runtime.js +2 -2
- package/src/providers/amplitude/runtime.js +3 -3
- package/src/providers/anysearch/runtime.js +4 -4
- package/src/providers/apaleo/runtime.js +2 -2
- package/src/providers/api_sports/executors.js +3 -4
- package/src/providers/apiverve/executors.js +2 -3
- package/src/providers/apollo/executors.js +2 -3
- package/src/providers/appcircle/runtime.js +5 -5
- package/src/providers/appdrag/executors.js +2 -3
- package/src/providers/arcgis_online/executors.js +2 -2
- package/src/providers/asana/executors.d.ts +2 -0
- package/src/providers/asana/executors.js +2 -0
- package/src/providers/asana/trigger-on-task-event.d.ts +2 -0
- package/src/providers/asana/trigger-on-task-event.definition.d.ts +4 -0
- package/src/providers/asana/trigger-on-task-event.definition.js +42 -0
- package/src/providers/asana/trigger-on-task-event.js +160 -0
- package/src/providers/auth0_management/runtime.js +2 -3
- package/src/providers/autoblogger/executors.js +3 -3
- package/src/providers/baidu_maps/runtime.js +3 -3
- package/src/providers/baidu_netdisk/runtime-mcp.js +3 -4
- package/src/providers/bark/executors.js +5 -5
- package/src/providers/bitrise/runtime.js +3 -3
- package/src/providers/bouncer/executors.js +3 -4
- package/src/providers/browse_ai/runtime.js +3 -4
- package/src/providers/browserstack/executors.js +6 -7
- package/src/providers/buildkite/runtime.js +3 -3
- package/src/providers/bunnycdn/runtime.js +3 -3
- package/src/providers/businessmap/runtime.js +6 -7
- package/src/providers/buttondown/runtime.js +2 -2
- package/src/providers/byteforms/runtime.js +2 -2
- package/src/providers/calendly/executors.d.ts +2 -0
- package/src/providers/calendly/executors.js +2 -0
- package/src/providers/calendly/runtime.js +2 -2
- package/src/providers/calendly/trigger-on-booking-event.d.ts +2 -0
- package/src/providers/calendly/trigger-on-booking-event.definition.d.ts +5 -0
- package/src/providers/calendly/trigger-on-booking-event.definition.js +42 -0
- package/src/providers/calendly/trigger-on-booking-event.js +144 -0
- package/src/providers/captainbi/runtime.js +6 -6
- package/src/providers/castingwords/runtime.js +1 -1
- package/src/providers/chatpdf/runtime.js +4 -4
- package/src/providers/check/executors.js +3 -4
- package/src/providers/checkly/executors.js +3 -4
- package/src/providers/chengxin/runtime.js +3 -3
- package/src/providers/cincopa/executors.js +3 -4
- package/src/providers/circle/executors.js +3 -4
- package/src/providers/clearout/executors.js +1 -2
- package/src/providers/clickhelp/runtime.js +5 -5
- package/src/providers/clickhouse/runtime.js +4 -4
- package/src/providers/clickup/executors.d.ts +2 -0
- package/src/providers/clickup/executors.js +2 -0
- package/src/providers/clickup/trigger-on-task-event.d.ts +2 -0
- package/src/providers/clickup/trigger-on-task-event.definition.d.ts +4 -0
- package/src/providers/clickup/trigger-on-task-event.definition.js +41 -0
- package/src/providers/clickup/trigger-on-task-event.js +94 -0
- package/src/providers/clinicalkey/runtime.js +3 -3
- package/src/providers/clinicaltrials_gov/runtime.js +4 -5
- package/src/providers/clockify/runtime.js +4 -4
- package/src/providers/cloro/actions.d.ts +12 -0
- package/src/providers/cloro/actions.js +155 -0
- package/src/providers/cloro/executors.d.ts +4 -0
- package/src/providers/cloro/executors.js +67 -0
- package/src/providers/cloro/inputs.d.ts +10 -0
- package/src/providers/cloro/inputs.js +680 -0
- package/src/providers/close/runtime.js +3 -3
- package/src/providers/cloudconvert/runtime.js +8 -9
- package/src/providers/cloudflare_dns/runtime.js +2 -2
- package/src/providers/cloudflare_email_routing/runtime.js +2 -2
- package/src/providers/cloudflare_r2/runtime.js +5 -5
- package/src/providers/cloudflare_worker/runtime.js +10 -10
- package/src/providers/cloudinary/runtime.js +4 -4
- package/src/providers/cloudlayer/runtime.js +5 -5
- package/src/providers/codacy/runtime.js +2 -2
- package/src/providers/codemagic/runtime.js +2 -2
- package/src/providers/confluence/executors.js +4 -4
- package/src/providers/confluence/runtime.d.ts +0 -1
- package/src/providers/confluence/runtime.js +6 -7
- package/src/providers/contactout/runtime.js +5 -5
- package/src/providers/contentful/runtime.js +2 -2
- package/src/providers/contentstack_content_delivery/runtime.js +1 -1
- package/src/providers/contextdev/actions.d.ts +14 -0
- package/src/providers/contextdev/actions.js +647 -0
- package/src/providers/contextdev/executors.d.ts +4 -0
- package/src/providers/contextdev/executors.js +109 -0
- package/src/providers/contextdev/files.d.ts +3 -0
- package/src/providers/contextdev/files.js +49 -0
- package/src/providers/contextdev/input-schemas.d.ts +49 -0
- package/src/providers/contextdev/input-schemas.js +3082 -0
- package/src/providers/contextdev/output-schemas.d.ts +49 -0
- package/src/providers/contextdev/output-schemas.js +1599 -0
- package/src/providers/cronly/runtime.js +2 -2
- package/src/providers/crossref/runtime.js +3 -3
- package/src/providers/cutt_ly/runtime.js +3 -3
- package/src/providers/cyberimpact/runtime.js +3 -3
- package/src/providers/dachser/executors.js +2 -2
- package/src/providers/dailybot/runtime.js +1 -1
- package/src/providers/databox/runtime.js +2 -2
- package/src/providers/databricks/runtime.js +2 -2
- package/src/providers/datacite/runtime.js +1 -1
- package/src/providers/datadog/executors.js +3 -4
- package/src/providers/datascope/runtime.js +2 -2
- package/src/providers/daytona/executors.js +3 -3
- package/src/providers/deepgram/runtime.js +2 -2
- package/src/providers/deepl/runtime.js +4 -4
- package/src/providers/deepseek/executors.d.ts +0 -5
- package/src/providers/deepseek/executors.js +38 -25
- package/src/providers/defillama/actions.d.ts +24 -0
- package/src/providers/defillama/actions.js +24 -0
- package/src/providers/defillama/dimensions-definitions.d.ts +2 -0
- package/src/providers/defillama/dimensions-definitions.js +1387 -0
- package/src/providers/defillama/ecosystem-definitions.d.ts +2 -0
- package/src/providers/defillama/ecosystem-definitions.js +758 -0
- package/src/providers/defillama/equities-definitions.d.ts +2 -0
- package/src/providers/defillama/equities-definitions.js +733 -0
- package/src/providers/defillama/executors.d.ts +4 -0
- package/src/providers/defillama/executors.js +196 -0
- package/src/providers/defillama/markets-definitions.d.ts +2 -0
- package/src/providers/defillama/markets-definitions.js +624 -0
- package/src/providers/defillama/shared-schemas.d.ts +71 -0
- package/src/providers/defillama/shared-schemas.js +157 -0
- package/src/providers/defillama/tvl-definitions.d.ts +2 -0
- package/src/providers/defillama/tvl-definitions.js +546 -0
- package/src/providers/defillama/yields-definitions.d.ts +2 -0
- package/src/providers/defillama/yields-definitions.js +766 -0
- package/src/providers/detrack/executors.js +5 -5
- package/src/providers/deutschlandgpt/runtime.js +2 -2
- package/src/providers/dialmycalls/runtime.js +4 -4
- package/src/providers/diffbot/executors.js +4 -4
- package/src/providers/digistore24/executors.js +3 -3
- package/src/providers/dingtalk_bot/executors.js +1 -1
- package/src/providers/discourse/executors.d.ts +0 -1
- package/src/providers/discourse/executors.js +6 -7
- package/src/providers/docugenerate/runtime.js +3 -3
- package/src/providers/doppler/runtime.shared.js +3 -3
- package/src/providers/doppler_marketing_automation/runtime.js +4 -4
- package/src/providers/dovetail/runtime.js +2 -2
- package/src/providers/dropcontact/runtime.js +3 -3
- package/src/providers/dub/executors.js +6 -6
- package/src/providers/dumplingai/runtime.js +2 -2
- package/src/providers/elevenlabs/executors.js +4 -4
- package/src/providers/elevenreader/runtime.js +1 -1
- package/src/providers/emailoctopus/runtime.js +4 -4
- package/src/providers/embase/runtime.js +3 -3
- package/src/providers/emelia/executors.js +2 -2
- package/src/providers/enigma/executors.js +3 -3
- package/src/providers/eodhd_apis/executors.js +2 -2
- package/src/providers/eventzilla/runtime.js +3 -4
- package/src/providers/evervault/runtime.js +1 -1
- package/src/providers/excalidraw_mcp/runtime.js +3 -4
- package/src/providers/excel/runtime.js +6 -6
- package/src/providers/expofp/runtime.js +2 -2
- package/src/providers/faktoora/runtime.js +5 -5
- package/src/providers/fast_note_sync/runtime.js +2 -2
- package/src/providers/feathery/executors.js +2 -3
- package/src/providers/feishu_app_bot/executors.js +2 -3
- package/src/providers/feishu_app_bot/trigger-on-event.js +2 -0
- package/src/providers/feishu_custom_bot/executors.js +2 -3
- package/src/providers/ffhub/executors.js +2 -3
- package/src/providers/fidel_api/executors.js +2 -3
- package/src/providers/files_com/executors.js +2 -3
- package/src/providers/fireberry/runtime.d.ts +0 -1
- package/src/providers/fireberry/runtime.js +3 -4
- package/src/providers/fireflies/executors.d.ts +2 -0
- package/src/providers/fireflies/executors.js +2 -0
- package/src/providers/fireflies/trigger-on-meeting-ready.d.ts +2 -0
- package/src/providers/fireflies/trigger-on-meeting-ready.definition.d.ts +4 -0
- package/src/providers/fireflies/trigger-on-meeting-ready.definition.js +44 -0
- package/src/providers/fireflies/trigger-on-meeting-ready.js +60 -0
- package/src/providers/firehydrant/executors.js +2 -3
- package/src/providers/float/executors.js +2 -3
- package/src/providers/flomo/executors.js +5 -6
- package/src/providers/flowiseai/executors.js +2 -3
- package/src/providers/fluxguard/executors.js +2 -3
- package/src/providers/folk/executors.js +2 -3
- package/src/providers/football_data/executors.js +2 -3
- package/src/providers/forem/executors.js +2 -3
- package/src/providers/formbricks/executors.js +2 -3
- package/src/providers/formsite/executors.js +3 -4
- package/src/providers/formspree/executors.js +2 -2
- package/src/providers/freshdesk/executors.js +3 -4
- package/src/providers/freshservice/executors.js +3 -4
- package/src/providers/freshteam/runtime.js +3 -4
- package/src/providers/full_contact/executors.js +3 -3
- package/src/providers/fundable/actions.d.ts +8 -0
- package/src/providers/fundable/actions.js +1515 -0
- package/src/providers/fundable/executors.d.ts +4 -0
- package/src/providers/fundable/executors.js +74 -0
- package/src/providers/fusion-api/runtime.js +2 -3
- package/src/providers/gagelist/executors.js +3 -3
- package/src/providers/gainsight_nxt/executors.js +2 -2
- package/src/providers/gamma/executors.js +4 -3
- package/src/providers/gangtise/runtime.js +3 -4
- package/src/providers/gatherup/runtime.js +1 -1
- package/src/providers/geckoboard/executors.js +2 -3
- package/src/providers/gemini/runtime.d.ts +0 -1
- package/src/providers/gemini/runtime.js +5 -6
- package/src/providers/genpage/runtime.js +2 -2
- package/src/providers/geokeo/executors.js +4 -4
- package/src/providers/getnote/runtime.js +2 -3
- package/src/providers/github/runtime-shared.js +2 -2
- package/src/providers/glyphic/runtime.js +3 -4
- package/src/providers/gmail/executors.js +125 -27
- package/src/providers/gmail/message.d.ts +1 -6
- package/src/providers/gmail/message.js +1 -1
- package/src/providers/gong/runtime.js +6 -7
- package/src/providers/googlecalendar/runtime-shared.js +3 -4
- package/src/providers/googledrive/runtime-request.js +2 -3
- package/src/providers/googlesheets/runtime-shared.js +3 -4
- package/src/providers/gorgias/runtime.js +4 -4
- package/src/providers/gotify/executors.js +7 -8
- package/src/providers/greenhouse/executors.js +3 -3
- package/src/providers/gumloop/executors.js +2 -3
- package/src/providers/gumroad/executors.js +2 -3
- package/src/providers/habitica/executors.js +2 -3
- package/src/providers/hackerrank_work/executors.js +2 -3
- package/src/providers/harvest/executors.js +3 -4
- package/src/providers/haveibeenpwned/executors.js +2 -3
- package/src/providers/headout/executors.js +3 -4
- package/src/providers/healthchecks_io/executors.js +2 -3
- package/src/providers/helium10/runtime.js +4 -5
- package/src/providers/helpdesk/runtime.js +4 -4
- package/src/providers/home_assistant/runtime-ws.js +9 -10
- package/src/providers/hotjar/executors.js +4 -4
- package/src/providers/httpsms/runtime.js +3 -4
- package/src/providers/hub_planner/executors.js +3 -3
- package/src/providers/hubspot/runtime.js +3 -4
- package/src/providers/humaans/runtime.js +3 -3
- package/src/providers/hunter/runtime.js +3 -3
- package/src/providers/icypeas/executors.js +3 -4
- package/src/providers/ima/runtime.js +7 -7
- package/src/providers/infolobby/runtime.js +6 -6
- package/src/providers/instabot/runtime.js +6 -6
- package/src/providers/instatus/runtime.js +4 -4
- package/src/providers/intercom/executors.d.ts +2 -0
- package/src/providers/intercom/executors.js +2 -0
- package/src/providers/intercom/trigger-on-conversation-event.d.ts +2 -0
- package/src/providers/intercom/trigger-on-conversation-event.definition.d.ts +4 -0
- package/src/providers/intercom/trigger-on-conversation-event.definition.js +42 -0
- package/src/providers/intercom/trigger-on-conversation-event.js +23 -0
- package/src/providers/intuiface/executors.js +3 -3
- package/src/providers/iplocate/runtime.js +4 -5
- package/src/providers/ipregistry/executors.js +2 -2
- package/src/providers/jiminny/runtime.js +4 -4
- package/src/providers/jin10/executors.js +4 -5
- package/src/providers/jira/executors.d.ts +2 -0
- package/src/providers/jira/executors.js +6 -4
- package/src/providers/jira/trigger-on-issue-event.d.ts +2 -0
- package/src/providers/jira/trigger-on-issue-event.definition.d.ts +4 -0
- package/src/providers/jira/trigger-on-issue-event.definition.js +44 -0
- package/src/providers/jira/trigger-on-issue-event.js +116 -0
- package/src/providers/jira/trigger-resource.d.ts +4 -0
- package/src/providers/jira/trigger-resource.js +141 -0
- package/src/providers/kaleido/runtime.js +2 -2
- package/src/providers/kandji/runtime.js +2 -2
- package/src/providers/keenable/executors.d.ts +4 -0
- package/src/providers/keenable/executors.js +20 -0
- package/src/providers/keenable/runtime.d.ts +26 -0
- package/src/providers/keenable/runtime.js +89 -0
- package/src/providers/keygen/executors.js +4 -4
- package/src/providers/keyword/runtime.js +2 -2
- package/src/providers/kie_ai/executors.js +1 -1
- package/src/providers/kintone/runtime.js +1 -1
- package/src/providers/kit/runtime.js +2 -2
- package/src/providers/klangio/runtime.js +4 -4
- package/src/providers/klaviyo/executors.js +1 -1
- package/src/providers/klazify/executors.js +3 -3
- package/src/providers/klipfolio/runtime.js +3 -3
- package/src/providers/knack/executors.js +1 -1
- package/src/providers/kolsprite_mcp/actions.d.ts +2 -0
- package/src/providers/kolsprite_mcp/actions.js +519 -0
- package/src/providers/kolsprite_mcp/executors.d.ts +4 -0
- package/src/providers/kolsprite_mcp/executors.js +89 -0
- package/src/providers/kommo/runtime.js +2 -2
- package/src/providers/kontent_ai/executors.js +3 -4
- package/src/providers/l2s/executors.js +3 -4
- package/src/providers/latchshot/executors.js +2 -2
- package/src/providers/leadboxer/runtime.js +4 -4
- package/src/providers/leadiq/runtime.js +4 -4
- package/src/providers/linguapop/runtime.js +1 -1
- package/src/providers/lingvanex_translation_api/runtime.js +5 -6
- package/src/providers/lingxing_mcp/runtime.js +3 -4
- package/src/providers/linkup/runtime.js +5 -6
- package/src/providers/litescrape/actions.d.ts +12 -0
- package/src/providers/litescrape/actions.js +124 -0
- package/src/providers/litescrape/airbnb-schemas.d.ts +2 -0
- package/src/providers/litescrape/airbnb-schemas.js +72 -0
- package/src/providers/litescrape/aliexpress-schemas.d.ts +2 -0
- package/src/providers/litescrape/aliexpress-schemas.js +52 -0
- package/src/providers/litescrape/amazon-schemas.d.ts +2 -0
- package/src/providers/litescrape/amazon-schemas.js +358 -0
- package/src/providers/litescrape/apartments-schemas.d.ts +2 -0
- package/src/providers/litescrape/apartments-schemas.js +45 -0
- package/src/providers/litescrape/apple-schemas.d.ts +2 -0
- package/src/providers/litescrape/apple-schemas.js +215 -0
- package/src/providers/litescrape/ashby-schemas.d.ts +2 -0
- package/src/providers/litescrape/ashby-schemas.js +82 -0
- package/src/providers/litescrape/baidu-schemas.d.ts +2 -0
- package/src/providers/litescrape/baidu-schemas.js +31 -0
- package/src/providers/litescrape/bestbuy-schemas.d.ts +2 -0
- package/src/providers/litescrape/bestbuy-schemas.js +56 -0
- package/src/providers/litescrape/bing-schemas.d.ts +2 -0
- package/src/providers/litescrape/bing-schemas.js +315 -0
- package/src/providers/litescrape/brave-schemas.d.ts +2 -0
- package/src/providers/litescrape/brave-schemas.js +101 -0
- package/src/providers/litescrape/copilot-schemas.d.ts +2 -0
- package/src/providers/litescrape/copilot-schemas.js +590 -0
- package/src/providers/litescrape/duckduckgo-schemas.d.ts +2 -0
- package/src/providers/litescrape/duckduckgo-schemas.js +64 -0
- package/src/providers/litescrape/ebay-schemas.d.ts +2 -0
- package/src/providers/litescrape/ebay-schemas.js +300 -0
- package/src/providers/litescrape/etsy-schemas.d.ts +2 -0
- package/src/providers/litescrape/etsy-schemas.js +52 -0
- package/src/providers/litescrape/eventbrite-schemas.d.ts +2 -0
- package/src/providers/litescrape/eventbrite-schemas.js +43 -0
- package/src/providers/litescrape/executors.d.ts +4 -0
- package/src/providers/litescrape/executors.js +138 -0
- package/src/providers/litescrape/facebook-schemas.d.ts +2 -0
- package/src/providers/litescrape/facebook-schemas.js +283 -0
- package/src/providers/litescrape/glassdoor-schemas.d.ts +2 -0
- package/src/providers/litescrape/glassdoor-schemas.js +147 -0
- package/src/providers/litescrape/google-schemas.d.ts +2 -0
- package/src/providers/litescrape/google-schemas.js +1686 -0
- package/src/providers/litescrape/homedepot-schemas.d.ts +2 -0
- package/src/providers/litescrape/homedepot-schemas.js +58 -0
- package/src/providers/litescrape/homes-schemas.d.ts +2 -0
- package/src/providers/litescrape/homes-schemas.js +45 -0
- package/src/providers/litescrape/ikea-schemas.d.ts +2 -0
- package/src/providers/litescrape/ikea-schemas.js +56 -0
- package/src/providers/litescrape/indeed-schemas.d.ts +2 -0
- package/src/providers/litescrape/indeed-schemas.js +141 -0
- package/src/providers/litescrape/instagram-schemas.d.ts +2 -0
- package/src/providers/litescrape/instagram-schemas.js +234 -0
- package/src/providers/litescrape/kroger-schemas.d.ts +2 -0
- package/src/providers/litescrape/kroger-schemas.js +62 -0
- package/src/providers/litescrape/levels-schemas.d.ts +2 -0
- package/src/providers/litescrape/levels-schemas.js +153 -0
- package/src/providers/litescrape/naver-schemas.d.ts +2 -0
- package/src/providers/litescrape/naver-schemas.js +107 -0
- package/src/providers/litescrape/realtor-schemas.d.ts +2 -0
- package/src/providers/litescrape/realtor-schemas.js +47 -0
- package/src/providers/litescrape/redfin-schemas.d.ts +2 -0
- package/src/providers/litescrape/redfin-schemas.js +112 -0
- package/src/providers/litescrape/shared.d.ts +9 -0
- package/src/providers/litescrape/shared.js +1 -0
- package/src/providers/litescrape/sprouts-schemas.d.ts +2 -0
- package/src/providers/litescrape/sprouts-schemas.js +72 -0
- package/src/providers/litescrape/target-schemas.d.ts +2 -0
- package/src/providers/litescrape/target-schemas.js +56 -0
- package/src/providers/litescrape/tiktok-schemas.d.ts +2 -0
- package/src/providers/litescrape/tiktok-schemas.js +625 -0
- package/src/providers/litescrape/tools.d.ts +2 -0
- package/src/providers/litescrape/tools.js +88 -0
- package/src/providers/litescrape/tripadvisor-schemas.d.ts +2 -0
- package/src/providers/litescrape/tripadvisor-schemas.js +119 -0
- package/src/providers/litescrape/walmart-schemas.d.ts +2 -0
- package/src/providers/litescrape/walmart-schemas.js +52 -0
- package/src/providers/litescrape/wayfair-schemas.d.ts +2 -0
- package/src/providers/litescrape/wayfair-schemas.js +52 -0
- package/src/providers/litescrape/web-schemas.d.ts +2 -0
- package/src/providers/litescrape/web-schemas.js +463 -0
- package/src/providers/litescrape/wholefoods-schemas.d.ts +2 -0
- package/src/providers/litescrape/wholefoods-schemas.js +56 -0
- package/src/providers/litescrape/x-schemas.d.ts +2 -0
- package/src/providers/litescrape/x-schemas.js +128 -0
- package/src/providers/litescrape/yahoo-schemas.d.ts +2 -0
- package/src/providers/litescrape/yahoo-schemas.js +234 -0
- package/src/providers/litescrape/yandex-schemas.d.ts +2 -0
- package/src/providers/litescrape/yandex-schemas.js +179 -0
- package/src/providers/litescrape/yelp-schemas.d.ts +2 -0
- package/src/providers/litescrape/yelp-schemas.js +130 -0
- package/src/providers/litescrape/youtube-schemas.d.ts +2 -0
- package/src/providers/litescrape/youtube-schemas.js +128 -0
- package/src/providers/litescrape/zillow-schemas.d.ts +2 -0
- package/src/providers/litescrape/zillow-schemas.js +128 -0
- package/src/providers/litescrape/ziprecruiter-schemas.d.ts +2 -0
- package/src/providers/litescrape/ziprecruiter-schemas.js +96 -0
- package/src/providers/liveagent/executors.js +6 -6
- package/src/providers/loops/executors.js +2 -2
- package/src/providers/loyjoy/runtime.js +2 -2
- package/src/providers/loyverse/executors.js +4 -4
- package/src/providers/lusha/runtime.js +3 -3
- package/src/providers/magichour/actions.d.ts +22 -0
- package/src/providers/magichour/actions.js +308 -0
- package/src/providers/magichour/audio-schemas.d.ts +2 -0
- package/src/providers/magichour/audio-schemas.js +54 -0
- package/src/providers/magichour/executors.d.ts +4 -0
- package/src/providers/magichour/executors.js +115 -0
- package/src/providers/magichour/image-schemas.d.ts +2 -0
- package/src/providers/magichour/image-schemas.js +443 -0
- package/src/providers/magichour/project-schemas.d.ts +8 -0
- package/src/providers/magichour/project-schemas.js +65 -0
- package/src/providers/magichour/shared-schemas.d.ts +8 -0
- package/src/providers/magichour/shared-schemas.js +18 -0
- package/src/providers/magichour/utility-schemas.d.ts +11 -0
- package/src/providers/magichour/utility-schemas.js +150 -0
- package/src/providers/magichour/video-schemas.d.ts +2 -0
- package/src/providers/magichour/video-schemas.js +629 -0
- package/src/providers/magichour/voices.d.ts +1 -0
- package/src/providers/magichour/voices.js +1268 -0
- package/src/providers/mailbluster/runtime.js +3 -4
- package/src/providers/mailcoach/runtime.js +4 -4
- package/src/providers/mailgenius/executors.js +3 -4
- package/src/providers/mailjet/runtime.js +3 -3
- package/src/providers/mails_so/runtime.js +1 -1
- package/src/providers/mailsoftly/runtime.js +5 -5
- package/src/providers/mailtrap/runtime.js +4 -5
- package/src/providers/manus/runtime.js +3 -3
- package/src/providers/mautic/runtime.js +3 -3
- package/src/providers/megaventory/runtime.js +3 -3
- package/src/providers/memberstack/runtime.js +2 -2
- package/src/providers/mendeley/executors.js +2 -3
- package/src/providers/mindbody/runtime.js +3 -3
- package/src/providers/minerstat/executors.js +3 -3
- package/src/providers/minimax/executors.js +19 -4
- package/src/providers/minimax/text-models.d.ts +2 -0
- package/src/providers/minimax/text-models.js +34 -0
- package/src/providers/mintlify/runtime.js +3 -3
- package/src/providers/missive/executors.js +3 -5
- package/src/providers/mixpanel/executors.js +3 -3
- package/src/providers/mobile_text_alerts/runtime.js +3 -3
- package/src/providers/mocean/executors.js +3 -3
- package/src/providers/moco/executors.js +5 -5
- package/src/providers/moesif/runtime.js +4 -4
- package/src/providers/monday/runtime-common.js +3 -3
- package/src/providers/moneyforward_mcp/manifest.d.ts +0 -2
- package/src/providers/moneyforward_mcp/manifest.js +1 -1
- package/src/providers/monica_crm/runtime.js +4 -4
- package/src/providers/moorcheh/runtime.js +3 -3
- package/src/providers/more_trees/runtime.d.ts +0 -1
- package/src/providers/more_trees/runtime.js +7 -8
- package/src/providers/moxie/runtime.js +2 -2
- package/src/providers/msg91/runtime.js +4 -4
- package/src/providers/mx/runtime.js +1 -1
- package/src/providers/needle/runtime.js +3 -4
- package/src/providers/netlify/runtime.js +2 -3
- package/src/providers/niftyimages/executors.js +2 -2
- package/src/providers/northbeam/runtime.js +1 -1
- package/src/providers/notion/executors.js +36 -3
- package/src/providers/nozbe_teams/executors.js +4 -4
- package/src/providers/npm/runtime.js +4 -4
- package/src/providers/nusii_proposals/runtime.js +2 -2
- package/src/providers/ocr_web_service/executors.js +4 -4
- package/src/providers/octen/actions.d.ts +6 -0
- package/src/providers/octen/actions.js +919 -0
- package/src/providers/octen/executors.d.ts +4 -0
- package/src/providers/octen/executors.js +125 -0
- package/src/providers/octen/inputs.d.ts +2 -0
- package/src/providers/octen/inputs.js +2434 -0
- package/src/providers/octen/research.d.ts +1 -0
- package/src/providers/octen/research.js +86 -0
- package/src/providers/octopus_deploy/executors.js +3 -3
- package/src/providers/oksign/runtime.js +3 -4
- package/src/providers/one_drive/executors.js +6 -6
- package/src/providers/one_password_events/runtime.js +1 -1
- package/src/providers/onfleet/runtime.js +3 -3
- package/src/providers/onlyoffice_docspace/runtime.js +4 -4
- package/src/providers/oomnitza/runtime.js +3 -4
- package/src/providers/openrouter/executors.js +7 -4
- package/src/providers/orbit/actions.d.ts +2 -0
- package/src/providers/orbit/actions.js +3030 -0
- package/src/providers/orbit/executors.d.ts +4 -0
- package/src/providers/orbit/executors.js +106 -0
- package/src/providers/orbit/routes.d.ts +9 -0
- package/src/providers/orbit/routes.js +170 -0
- package/src/providers/otter_ai/executors.js +2 -2
- package/src/providers/oura/runtime.js +1 -1
- package/src/providers/paddle/executors.js +3 -3
- package/src/providers/pagerduty/runtime.js +2 -2
- package/src/providers/pandadoc/executors.d.ts +2 -0
- package/src/providers/pandadoc/executors.js +2 -0
- package/src/providers/pandadoc/trigger-on-document-event.d.ts +2 -0
- package/src/providers/pandadoc/trigger-on-document-event.definition.d.ts +4 -0
- package/src/providers/pandadoc/trigger-on-document-event.definition.js +33 -0
- package/src/providers/pandadoc/trigger-on-document-event.js +96 -0
- package/src/providers/paradym/runtime.js +4 -4
- package/src/providers/parallel/runtime.js +3 -3
- package/src/providers/partner_stack_partner/runtime.js +1 -1
- package/src/providers/payrexx/runtime.js +5 -6
- package/src/providers/permit_io/runtime.js +2 -2
- package/src/providers/pinboard/executors.js +5 -6
- package/src/providers/pinpoint/runtime.js +2 -2
- package/src/providers/pipedrive/executors.d.ts +2 -0
- package/src/providers/pipedrive/executors.js +2 -0
- package/src/providers/pipedrive/trigger-on-crm-event.d.ts +2 -0
- package/src/providers/pipedrive/trigger-on-crm-event.definition.d.ts +4 -0
- package/src/providers/pipedrive/trigger-on-crm-event.definition.js +30 -0
- package/src/providers/pipedrive/trigger-on-crm-event.js +101 -0
- package/src/providers/placid/runtime.js +3 -3
- package/src/providers/plain/runtime.js +5 -5
- package/src/providers/planetscale/runtime.js +2 -2
- package/src/providers/planhat/executors.js +6 -6
- package/src/providers/plausible_analytics/runtime.js +3 -3
- package/src/providers/ploid/actions.d.ts +16 -0
- package/src/providers/ploid/actions.js +23 -0
- package/src/providers/ploid/endpoints.json +8440 -0
- package/src/providers/ploid/executors.d.ts +4 -0
- package/src/providers/ploid/executors.js +119 -0
- package/src/providers/posthog/runtime.js +3 -3
- package/src/providers/predis_ai/executors.js +3 -3
- package/src/providers/printavo/runtime.js +2 -2
- package/src/providers/prospeo/runtime.js +2 -3
- package/src/providers/provider-runtime.d.ts +26 -1
- package/src/providers/provider-runtime.js +62 -14
- package/src/providers/push_by_techulus/executors.js +3 -4
- package/src/providers/pushover/runtime.js +4 -5
- package/src/providers/pushsafer/runtime.js +4 -5
- package/src/providers/pylon/runtime.js +2 -2
- package/src/providers/qase/runtime.js +3 -3
- package/src/providers/qdrant/runtime.js +1 -1
- package/src/providers/qichacha/runtime.js +2 -2
- package/src/providers/qingflow/runtime.js +2 -2
- package/src/providers/quickchart/runtime.js +2 -2
- package/src/providers/quintadb/runtime.js +2 -2
- package/src/providers/quo/runtime.js +2 -2
- package/src/providers/rawg/runtime.js +4 -4
- package/src/providers/razorpay/runtime.js +4 -5
- package/src/providers/readme/runtime.js +6 -6
- package/src/providers/referralhero/runtime.js +3 -3
- package/src/providers/registry.generated.js +18 -0
- package/src/providers/render/executors.js +3 -3
- package/src/providers/resend/executors.d.ts +2 -0
- package/src/providers/resend/executors.js +2 -0
- package/src/providers/resend/trigger-on-email-event.d.ts +2 -0
- package/src/providers/resend/trigger-on-email-event.definition.d.ts +4 -0
- package/src/providers/resend/trigger-on-email-event.definition.js +37 -0
- package/src/providers/resend/trigger-on-email-event.js +125 -0
- package/src/providers/respond_io/executors.js +3 -3
- package/src/providers/reversecontact/runtime.js +3 -3
- package/src/providers/ritekit/executors.js +2 -2
- package/src/providers/riveter/executors.js +2 -3
- package/src/providers/rocket_chat/executors.js +3 -4
- package/src/providers/rocket_reach/executors.js +3 -4
- package/src/providers/salesforce/chatter-routes.d.ts +107 -0
- package/src/providers/salesforce/chatter-routes.js +140 -0
- package/src/providers/salesforce/context.d.ts +2 -2
- package/src/providers/salesforce/context.js +7 -4
- package/src/providers/salesforce/executors.js +10 -0
- package/src/providers/salesforce/runtime-approvals.d.ts +2 -0
- package/src/providers/salesforce/runtime-approvals.js +52 -0
- package/src/providers/salesforce/runtime-base.js +14 -3
- package/src/providers/salesforce/runtime-chatter.d.ts +2 -0
- package/src/providers/salesforce/runtime-chatter.js +78 -0
- package/src/providers/salesforce/runtime-knowledge.d.ts +2 -0
- package/src/providers/salesforce/runtime-knowledge.js +34 -0
- package/src/providers/salesforce/runtime-leads.d.ts +2 -0
- package/src/providers/salesforce/runtime-leads.js +117 -0
- package/src/providers/salesforce/runtime-platform.d.ts +2 -0
- package/src/providers/salesforce/runtime-platform.js +67 -0
- package/src/providers/saperly/actions.d.ts +17 -0
- package/src/providers/saperly/actions.js +869 -0
- package/src/providers/saperly/executors.d.ts +4 -0
- package/src/providers/saperly/executors.js +113 -0
- package/src/providers/saperly/schemas.d.ts +33 -0
- package/src/providers/saperly/schemas.js +601 -0
- package/src/providers/saucelabs/runtime.js +4 -4
- package/src/providers/scopus/runtime.js +3 -3
- package/src/providers/scrape_do/executors.js +2 -2
- package/src/providers/scraperapi/runtime.js +4 -4
- package/src/providers/scrapfly/executors.js +2 -2
- package/src/providers/scrapingant/executors.js +6 -7
- package/src/providers/scrapingbee/executors.js +3 -3
- package/src/providers/scrapingdog/executors.js +1 -1
- package/src/providers/screenshot_fyi/executors.js +3 -4
- package/src/providers/screenshotbase/runtime.js +3 -3
- package/src/providers/search1api/actions.d.ts +2 -0
- package/src/providers/search1api/actions.js +39 -0
- package/src/providers/search1api/executors.d.ts +4 -0
- package/src/providers/search1api/executors.js +72 -0
- package/src/providers/search1api/runtime.d.ts +3 -0
- package/src/providers/search1api/runtime.js +44 -0
- package/src/providers/search1api/schemas.d.ts +3 -0
- package/src/providers/search1api/schemas.js +1834 -0
- package/src/providers/search_api/runtime.js +2 -2
- package/src/providers/securitytrails/executors.js +2 -2
- package/src/providers/semantic_scholar/executors.js +2 -2
- package/src/providers/sendbird/executors.js +2 -2
- package/src/providers/sendfox/executors.js +3 -3
- package/src/providers/sendgrid/executors.js +5 -5
- package/src/providers/sendmator/runtime.js +3 -4
- package/src/providers/sentry/executors.d.ts +2 -0
- package/src/providers/sentry/executors.js +2 -0
- package/src/providers/sentry/trigger-on-issue-alert.d.ts +2 -0
- package/src/providers/sentry/trigger-on-issue-alert.definition.d.ts +4 -0
- package/src/providers/sentry/trigger-on-issue-alert.definition.js +64 -0
- package/src/providers/sentry/trigger-on-issue-alert.js +80 -0
- package/src/providers/seqera/runtime.js +3 -4
- package/src/providers/serveravatar/executors.js +3 -3
- package/src/providers/sf_express/runtime.d.ts +0 -16
- package/src/providers/sf_express/runtime.js +2 -2
- package/src/providers/sheetdb/runtime.js +2 -2
- package/src/providers/short_menu/runtime.js +3 -3
- package/src/providers/shortcut/runtime.js +3 -3
- package/src/providers/shortpixel/runtime.js +2 -2
- package/src/providers/shotstack/runtime.js +4 -4
- package/src/providers/signpath/runtime.js +2 -2
- package/src/providers/signwell/runtime.js +5 -6
- package/src/providers/similarweb_digitalrank_api/runtime.js +3 -3
- package/src/providers/simla/runtime.js +5 -5
- package/src/providers/simplybook_me/executors.js +6 -6
- package/src/providers/sitespeakai/runtime.js +3 -3
- package/src/providers/slack/runtime.d.ts +6 -1
- package/src/providers/slack/runtime.js +21 -0
- package/src/providers/slackbot/actions.js +17 -1
- package/src/providers/slackbot/executors.d.ts +2 -0
- package/src/providers/slackbot/executors.js +5 -1
- package/src/providers/slackbot/trigger-on-event.d.ts +2 -0
- package/src/providers/slackbot/trigger-on-event.definition.d.ts +4 -0
- package/src/providers/slackbot/trigger-on-event.definition.js +57 -0
- package/src/providers/slackbot/trigger-on-event.js +23 -0
- package/src/providers/slickdeals/runtime.js +2 -3
- package/src/providers/smartsuite/runtime.js +3 -3
- package/src/providers/sonarcloud/runtime.js +5 -5
- package/src/providers/sorftime/runtime.js +8 -8
- package/src/providers/spider/runtime.js +2 -2
- package/src/providers/splunk_http_event_collector/runtime.js +7 -8
- package/src/providers/sportsdata/runtime.js +4 -4
- package/src/providers/spyfu/runtime.js +4 -5
- package/src/providers/square/runtime.js +4 -4
- package/src/providers/stannp/runtime.js +2 -2
- package/src/providers/stripe/executors.js +2 -2
- package/src/providers/supermemory/runtime.js +3 -3
- package/src/providers/surf/actions.d.ts +21 -0
- package/src/providers/surf/actions.js +26 -0
- package/src/providers/surf/discovery-definitions.d.ts +2 -0
- package/src/providers/surf/discovery-definitions.js +871 -0
- package/src/providers/surf/equity-definitions.d.ts +2 -0
- package/src/providers/surf/equity-definitions.js +322 -0
- package/src/providers/surf/executors.d.ts +4 -0
- package/src/providers/surf/executors.js +131 -0
- package/src/providers/surf/market-definitions.d.ts +2 -0
- package/src/providers/surf/market-definitions.js +885 -0
- package/src/providers/surf/onchain-definitions.d.ts +2 -0
- package/src/providers/surf/onchain-definitions.js +901 -0
- package/src/providers/surf/prediction-definitions.d.ts +2 -0
- package/src/providers/surf/prediction-definitions.js +683 -0
- package/src/providers/surf/shared-schemas.d.ts +18 -0
- package/src/providers/surf/shared-schemas.js +37 -0
- package/src/providers/survey_monkey/runtime.js +3 -3
- package/src/providers/taiga/runtime.js +4 -4
- package/src/providers/talenox/executors.js +4 -4
- package/src/providers/tally/executors.d.ts +2 -0
- package/src/providers/tally/executors.js +2 -0
- package/src/providers/tally/runtime.js +3 -3
- package/src/providers/tally/trigger-on-form-response.d.ts +2 -0
- package/src/providers/tally/trigger-on-form-response.definition.d.ts +4 -0
- package/src/providers/tally/trigger-on-form-response.definition.js +54 -0
- package/src/providers/tally/trigger-on-form-response.js +166 -0
- package/src/providers/tavily/runtime.js +3 -4
- package/src/providers/teamcamp/executors.js +2 -2
- package/src/providers/teamtailor/executors.js +2 -2
- package/src/providers/telegram/executors.js +6 -7
- package/src/providers/teltel/executors.js +2 -2
- package/src/providers/templated/executors.js +3 -3
- package/src/providers/tencent_docs/runtime.js +4 -4
- package/src/providers/tencent_maps/runtime.js +3 -3
- package/src/providers/textcortex/runtime.js +3 -3
- package/src/providers/the_cat_api/runtime.js +3 -3
- package/src/providers/the_colony/runtime.js +3 -3
- package/src/providers/the_odds_api/runtime.js +3 -4
- package/src/providers/the_official_board/runtime.js +4 -4
- package/src/providers/thehive/runtime.js +1 -1
- package/src/providers/tikhub/endpoint-catalog.js +2 -3
- package/src/providers/tiktok_business/runtime.js +2 -2
- package/src/providers/timecamp/runtime.js +2 -2
- package/src/providers/timelink/runtime.js +2 -2
- package/src/providers/tinyfish/actions.d.ts +6 -0
- package/src/providers/tinyfish/actions.js +19 -0
- package/src/providers/tinyfish/agent-actions.d.ts +2 -0
- package/src/providers/tinyfish/agent-actions.js +268 -0
- package/src/providers/tinyfish/data-actions.d.ts +2 -0
- package/src/providers/tinyfish/data-actions.js +186 -0
- package/src/providers/tinyfish/data-schemas.d.ts +7 -0
- package/src/providers/tinyfish/data-schemas.js +103 -0
- package/src/providers/tinyfish/endpoints.d.ts +14 -0
- package/src/providers/tinyfish/endpoints.js +1 -0
- package/src/providers/tinyfish/executors.d.ts +4 -0
- package/src/providers/tinyfish/executors.js +133 -0
- package/src/providers/tinyfish/management-actions.d.ts +2 -0
- package/src/providers/tinyfish/management-actions.js +524 -0
- package/src/providers/tinyfish/monitor-schemas.d.ts +5 -0
- package/src/providers/tinyfish/monitor-schemas.js +65 -0
- package/src/providers/tinyfish/research-schemas.d.ts +6 -0
- package/src/providers/tinyfish/research-schemas.js +71 -0
- package/src/providers/totp/runtime.js +4 -5
- package/src/providers/trawlingweb/runtime.js +2 -2
- package/src/providers/trello/executors.js +5 -2
- package/src/providers/trilium/runtime.js +2 -2
- package/src/providers/triple_whale/runtime.js +3 -3
- package/src/providers/truvera/runtime.js +2 -2
- package/src/providers/tuskr/runtime.js +2 -2
- package/src/providers/typebot/runtime.js +2 -2
- package/src/providers/typeform/executors.d.ts +2 -0
- package/src/providers/typeform/executors.js +2 -0
- package/src/providers/typeform/runtime.js +2 -2
- package/src/providers/typeform/trigger-on-form-response.d.ts +2 -0
- package/src/providers/typeform/trigger-on-form-response.definition.d.ts +4 -0
- package/src/providers/typeform/trigger-on-form-response.definition.js +40 -0
- package/src/providers/typeform/trigger-on-form-response.js +68 -0
- package/src/providers/uptimerobot/executors.js +3 -4
- package/src/providers/v2ex/runtime.js +8 -9
- package/src/providers/valyu/runtime.js +3 -3
- package/src/providers/vapi/runtime.js +4 -4
- package/src/providers/vaquill/actions.d.ts +13 -0
- package/src/providers/vaquill/actions.js +529 -0
- package/src/providers/vaquill/executors.d.ts +4 -0
- package/src/providers/vaquill/executors.js +141 -0
- package/src/providers/vaquill/schemas.d.ts +67 -0
- package/src/providers/vaquill/schemas.js +4953 -0
- package/src/providers/vectorshift/runtime.js +3 -3
- package/src/providers/venafitlsprotectcloud/runtime.js +2 -3
- package/src/providers/venafitlsprotectdatacenter/runtime.js +2 -3
- package/src/providers/vercel/executors.d.ts +2 -0
- package/src/providers/vercel/executors.js +2 -0
- package/src/providers/vercel/trigger-on-deployment-event.d.ts +2 -0
- package/src/providers/vercel/trigger-on-deployment-event.definition.d.ts +5 -0
- package/src/providers/vercel/trigger-on-deployment-event.definition.js +41 -0
- package/src/providers/vercel/trigger-on-deployment-event.js +102 -0
- package/src/providers/vida/runtime.js +4 -4
- package/src/providers/vonage/runtime.js +3 -3
- package/src/providers/walmart_marketplace/runtime.js +5 -5
- package/src/providers/weatherapi/executors.js +3 -4
- package/src/providers/web_of_science/runtime.js +4 -4
- package/src/providers/web_of_science_expanded/runtime.js +9 -9
- package/src/providers/webex/runtime.js +3 -3
- package/src/providers/webinarjam/runtime.js +4 -4
- package/src/providers/webscraping_ai/runtime.js +3 -3
- package/src/providers/webvizio/runtime.js +3 -4
- package/src/providers/wecom_bot/smart-runtime.js +4 -5
- package/src/providers/wecom_mcp/runtime.js +3 -4
- package/src/providers/weixin_bot/runtime.d.ts +0 -1
- package/src/providers/weixin_bot/runtime.js +1 -1
- package/src/providers/weixin_store/access-token.d.ts +3 -3
- package/src/providers/weixin_store/access-token.js +15 -7
- package/src/providers/weixin_store/executors.js +214 -1
- package/src/providers/wejam_ai/runtime.js +3 -3
- package/src/providers/wolfram_alpha_api/runtime.js +3 -3
- package/src/providers/woocommerce/runtime.js +1 -1
- package/src/providers/woodpecker_co/executors.js +3 -4
- package/src/providers/woot/runtime.js +6 -6
- package/src/providers/workable/runtime.js +3 -3
- package/src/providers/workday/runtime.js +4 -4
- package/src/providers/workiom/runtime.js +2 -2
- package/src/providers/workiz/runtime.js +2 -2
- package/src/providers/workpath/executors.js +3 -4
- package/src/providers/worksnaps/executors.js +2 -2
- package/src/providers/y_gy/runtime.js +2 -2
- package/src/providers/zenscrape/runtime.js +3 -3
- package/src/providers/zep/runtime.js +4 -4
- package/src/providers/zeplin/runtime.js +2 -2
- package/src/providers/zhihu/executors.js +6 -6
- package/src/providers/zoom/executors.d.ts +2 -0
- package/src/providers/zoom/executors.js +2 -0
- package/src/providers/zoom/trigger-on-recording-ready.d.ts +2 -0
- package/src/providers/zoom/trigger-on-recording-ready.definition.d.ts +4 -0
- package/src/providers/zoom/trigger-on-recording-ready.definition.js +44 -0
- package/src/providers/zoom/trigger-on-recording-ready.js +39 -0
- package/src/providers/zylvie/runtime.js +4 -4
- package/src/saas/saas-cleanup-service.d.ts +2 -0
- package/src/saas/saas-cleanup-service.js +2 -1
- package/src/saas/saas-execution-service.d.ts +1 -1
- package/src/server/actions/action-runner.js +1 -1
- package/src/server/api/action-example.js +12 -1
- package/src/server/api/auth.js +3 -0
- package/src/server/api/connection-routes.js +1 -1
- package/src/server/api/console-catalog-routes.js +1 -1
- package/src/server/api/console-oauth-routes.d.ts +3 -1
- package/src/server/api/console-oauth-routes.js +22 -9
- package/src/server/api/oauth-completion-page.d.ts +57 -0
- package/src/server/api/oauth-completion-page.js +135 -10
- package/src/server/api/openapi.d.ts +5 -0
- package/src/server/api/openapi.js +62 -2
- package/src/server/api/pattern-example.js +35 -1
- package/src/server/api/runtime-api.d.ts +2 -1
- package/src/server/api/runtime-app-routes.js +1 -1
- package/src/server/api/runtime-execution-routes.js +2 -1
- package/src/server/api/trigger-routes.js +1 -1
- package/src/server/connect-app.d.ts +4 -0
- package/src/server/connect-app.js +15 -1
- package/src/server/connect-server.d.ts +6 -0
- package/src/server/connect-server.js +114 -4
- package/src/server/connector-runtime.d.ts +6 -8
- package/src/server/connector-runtime.js +8 -28
- package/src/server/proxy/proxy-runner.js +1 -1
- package/src/server/slack-event-verification.d.ts +37 -0
- package/src/server/slack-event-verification.js +91 -0
- package/src/server/storage/connection-request-store.d.ts +1 -1
- package/src/server/storage/connection-store.d.ts +1 -1
- package/src/server/storage/postgres/runtime-store.d.ts +1 -1
- package/src/server/storage/runtime-database.d.ts +1 -1
- package/src/server/storage/saas-project-store.d.ts +1 -1
- package/src/triggers/common/integration.d.ts +15 -3
- package/src/triggers/common/integration.js +5 -0
- package/src/triggers/common/proxy.d.ts +7 -0
- package/src/triggers/maintenance.d.ts +2 -0
- package/src/triggers/maintenance.js +2 -1
- package/src/triggers/managed-webhook.d.ts +13 -0
- package/src/triggers/managed-webhook.js +48 -0
- package/src/triggers/request.d.ts +5 -1
- package/src/triggers/request.js +2 -0
- package/src/triggers/resources.d.ts +8 -2
- package/src/triggers/resources.js +31 -0
- package/src/triggers/signature.d.ts +3 -3
- package/src/triggers/signature.js +4 -6
- package/src/triggers/sources/configuration-schema.d.ts +5 -0
- package/src/triggers/sources/configuration-schema.js +118 -0
- package/src/triggers/sources/configuration.d.ts +115 -0
- package/src/triggers/sources/configuration.js +1 -0
- package/src/triggers/sources/definition.d.ts +61 -0
- package/src/triggers/sources/definition.js +3 -0
- package/src/triggers/sources/feishu-demands.d.ts +6 -0
- package/src/triggers/sources/feishu-demands.js +24 -0
- package/src/triggers/sources/feishu-events.d.ts +19 -0
- package/src/triggers/sources/feishu-events.js +108 -0
- package/src/triggers/sources/feishu.d.ts +3 -0
- package/src/triggers/sources/feishu.js +85 -0
- package/src/triggers/sources/fireflies.d.ts +3 -0
- package/src/triggers/sources/fireflies.js +100 -0
- package/src/triggers/sources/intercom.d.ts +3 -0
- package/src/triggers/sources/intercom.js +86 -0
- package/src/triggers/sources/jira.d.ts +3 -0
- package/src/triggers/sources/jira.js +120 -0
- package/src/triggers/sources/operation.d.ts +42 -0
- package/src/triggers/sources/operation.js +146 -0
- package/src/triggers/sources/sentry.d.ts +3 -0
- package/src/triggers/sources/sentry.js +125 -0
- package/src/triggers/sources/signature.d.ts +1 -0
- package/src/triggers/sources/signature.js +10 -0
- package/src/triggers/sources/slack-signature.d.ts +10 -0
- package/src/triggers/sources/slack-signature.js +13 -0
- package/src/triggers/sources/slack.d.ts +3 -0
- package/src/triggers/sources/slack.js +125 -0
- package/src/triggers/sources/zoom.d.ts +3 -0
- package/src/triggers/sources/zoom.js +113 -0
- package/src/triggers/trigger-runner.d.ts +2 -0
- package/src/triggers/trigger-runner.js +53 -17
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
export const snapshot = {
|
|
2
|
+
key: "jira.on_issue_event",
|
|
3
|
+
provider: "jira",
|
|
4
|
+
name: "on_issue_event",
|
|
5
|
+
displayName: "Issue or Comment Event",
|
|
6
|
+
description: "Receives Jira Cloud issue creation, issue updates and new comments through a shared project webhook with automatic renewal.",
|
|
7
|
+
definitionVersion: 2,
|
|
8
|
+
type: "integration",
|
|
9
|
+
endpoint: {
|
|
10
|
+
methods: ["POST"],
|
|
11
|
+
body: { formats: ["json"], allowArray: false, allowEmpty: false },
|
|
12
|
+
successStatus: 200,
|
|
13
|
+
},
|
|
14
|
+
configInputs: [
|
|
15
|
+
{
|
|
16
|
+
handle: "sourceId",
|
|
17
|
+
jsonSchema: { type: "string", pattern: "^source_[0-9a-f]{32}$", title: "Event source" },
|
|
18
|
+
nullable: false,
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
handle: "eventTypes",
|
|
22
|
+
jsonSchema: {
|
|
23
|
+
type: "array",
|
|
24
|
+
items: {
|
|
25
|
+
type: "string",
|
|
26
|
+
enum: ["jira:issue_created", "jira:issue_updated", "comment_created"],
|
|
27
|
+
},
|
|
28
|
+
minItems: 1,
|
|
29
|
+
maxItems: 3,
|
|
30
|
+
uniqueItems: true,
|
|
31
|
+
title: "Events",
|
|
32
|
+
},
|
|
33
|
+
nullable: false,
|
|
34
|
+
value: ["jira:issue_created", "jira:issue_updated", "comment_created"],
|
|
35
|
+
},
|
|
36
|
+
],
|
|
37
|
+
outputs: [
|
|
38
|
+
{ handle: "event", jsonSchema: { type: "string" }, nullable: false },
|
|
39
|
+
{ handle: "deliveryId", jsonSchema: { type: "string" }, nullable: false },
|
|
40
|
+
{ handle: "cloudId", jsonSchema: { type: "string" }, nullable: false },
|
|
41
|
+
{ handle: "issueId", jsonSchema: { type: "string" }, nullable: false },
|
|
42
|
+
{ handle: "body", jsonSchema: { type: "object" }, nullable: false },
|
|
43
|
+
],
|
|
44
|
+
};
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
import { jwtVerify } from "jose";
|
|
2
|
+
import { IntegrationConnectionError } from "../../triggers/common/integration.js";
|
|
3
|
+
import { PermanentIntegrationError } from "../../triggers/common/integration.js";
|
|
4
|
+
import { isJsonObject } from "../../triggers/common/json.js";
|
|
5
|
+
import { webhookRequest } from "../../triggers/managed-webhook.js";
|
|
6
|
+
import { jiraProject } from "../../triggers/sources/jira.js";
|
|
7
|
+
import { snapshot } from "./trigger-on-issue-event.definition.js";
|
|
8
|
+
import { reconcileJiraResource, requireJiraCloud, jiraEvents } from "./trigger-resource.js";
|
|
9
|
+
export const jiraIssueEvents = {
|
|
10
|
+
snapshot,
|
|
11
|
+
eventSource: "jira",
|
|
12
|
+
source: jiraProject,
|
|
13
|
+
resources: { reconcile: reconcileJiraResource },
|
|
14
|
+
async sourceIdentity(context) {
|
|
15
|
+
const cloudId = requireJiraCloud(context.connector);
|
|
16
|
+
const project = context.config.projectId ?? context.config.project;
|
|
17
|
+
if (typeof project !== "string" || !project || project.length > 256)
|
|
18
|
+
throw new PermanentIntegrationError("Choose a Jira project.");
|
|
19
|
+
const [projectResult, userResult, siteResult] = await Promise.all([
|
|
20
|
+
webhookRequest(context, { method: "GET", endpoint: `/project/${encodeURIComponent(project)}` }),
|
|
21
|
+
webhookRequest(context, { method: "GET", endpoint: "/myself" }),
|
|
22
|
+
webhookRequest(context, { method: "GET", endpoint: "/serverInfo" }),
|
|
23
|
+
]);
|
|
24
|
+
const item = projectResult.data, user = userResult.data, site = siteResult.data;
|
|
25
|
+
if (!isJsonObject(item) ||
|
|
26
|
+
typeof item.id !== "string" ||
|
|
27
|
+
!/^\d+$/.test(item.id) ||
|
|
28
|
+
typeof item.key !== "string" ||
|
|
29
|
+
!isJsonObject(user) ||
|
|
30
|
+
typeof user.accountId !== "string" ||
|
|
31
|
+
!isJsonObject(site) ||
|
|
32
|
+
typeof site.baseUrl !== "string")
|
|
33
|
+
throw new PermanentIntegrationError("Jira did not return a verified project, user and site.");
|
|
34
|
+
const url = new URL(site.baseUrl);
|
|
35
|
+
if (url.protocol !== "https:" || url.username || url.password)
|
|
36
|
+
throw new PermanentIntegrationError("Invalid Jira Cloud site URL.");
|
|
37
|
+
return {
|
|
38
|
+
accountId: context.connector.providerAccountId,
|
|
39
|
+
cloudId,
|
|
40
|
+
userId: user.accountId,
|
|
41
|
+
projectId: item.id,
|
|
42
|
+
projectKey: item.key,
|
|
43
|
+
siteUrl: url.origin,
|
|
44
|
+
};
|
|
45
|
+
},
|
|
46
|
+
async sourceReceive(context) {
|
|
47
|
+
const cloudId = requireJiraCloud(context.connector);
|
|
48
|
+
if (context.config.cloudId !== cloudId)
|
|
49
|
+
throw new IntegrationConnectionError("The Jira connection belongs to another site.");
|
|
50
|
+
const authorization = context.headers.authorization ?? "";
|
|
51
|
+
if (!authorization.startsWith("Bearer "))
|
|
52
|
+
return { outcome: "unauthorized" };
|
|
53
|
+
try {
|
|
54
|
+
await jwtVerify(authorization.slice(7), new TextEncoder().encode(context.connector.oauthClientConfig.clientSecret), { algorithms: ["HS256"], currentDate: context.now, requiredClaims: ["exp"] });
|
|
55
|
+
}
|
|
56
|
+
catch {
|
|
57
|
+
return { outcome: "unauthorized" };
|
|
58
|
+
}
|
|
59
|
+
let payload;
|
|
60
|
+
try {
|
|
61
|
+
payload = JSON.parse(context.rawBody);
|
|
62
|
+
}
|
|
63
|
+
catch {
|
|
64
|
+
return { outcome: "unauthorized" };
|
|
65
|
+
}
|
|
66
|
+
if (!isJsonObject(payload) ||
|
|
67
|
+
typeof payload.webhookEvent !== "string" ||
|
|
68
|
+
!jiraEvents.includes(payload.webhookEvent))
|
|
69
|
+
return { outcome: "ignored" };
|
|
70
|
+
if (!Array.isArray(payload.matchedWebhookIds) || !payload.matchedWebhookIds.includes(context.config.webhookId))
|
|
71
|
+
return { outcome: "ignored" };
|
|
72
|
+
const issue = payload.issue;
|
|
73
|
+
if (!isJsonObject(issue) ||
|
|
74
|
+
typeof issue.id !== "string" ||
|
|
75
|
+
typeof issue.self !== "string" ||
|
|
76
|
+
!isJsonObject(issue.fields) ||
|
|
77
|
+
!isJsonObject(issue.fields.project) ||
|
|
78
|
+
issue.fields.project.id !== context.config.projectId)
|
|
79
|
+
return { outcome: "ignored" };
|
|
80
|
+
let issueUrl;
|
|
81
|
+
try {
|
|
82
|
+
issueUrl = new URL(issue.self);
|
|
83
|
+
}
|
|
84
|
+
catch {
|
|
85
|
+
return { outcome: "ignored" };
|
|
86
|
+
}
|
|
87
|
+
if (issueUrl.origin !== context.config.siteUrl)
|
|
88
|
+
return { outcome: "ignored" };
|
|
89
|
+
const id = context.headers["x-atlassian-webhook-identifier"];
|
|
90
|
+
if (!id || id.length > 256)
|
|
91
|
+
return { outcome: "unauthorized" };
|
|
92
|
+
if (payload.webhookEvent === "comment_created" &&
|
|
93
|
+
(!isJsonObject(payload.comment) || typeof payload.comment.id !== "string"))
|
|
94
|
+
return { outcome: "unauthorized" };
|
|
95
|
+
return {
|
|
96
|
+
outcome: "event",
|
|
97
|
+
id,
|
|
98
|
+
type: payload.webhookEvent,
|
|
99
|
+
payload: { event: payload.webhookEvent, deliveryId: id, cloudId, issueId: issue.id, body: payload },
|
|
100
|
+
};
|
|
101
|
+
},
|
|
102
|
+
receive(context) {
|
|
103
|
+
if (context.eventSourceId !== context.config.sourceId)
|
|
104
|
+
return { outcome: "respond", status: 404, body: "", contentType: "text/plain" };
|
|
105
|
+
const payload = context.payload;
|
|
106
|
+
if (!isJsonObject(payload) ||
|
|
107
|
+
typeof payload.deliveryId !== "string" ||
|
|
108
|
+
!payload.deliveryId ||
|
|
109
|
+
!isJsonObject(payload.body))
|
|
110
|
+
throw new PermanentIntegrationError("Invalid shared Jira event.");
|
|
111
|
+
return { outcome: "event", dedupeKey: payload.deliveryId, outputs: payload };
|
|
112
|
+
},
|
|
113
|
+
async reconcile() {
|
|
114
|
+
throw new PermanentIntegrationError("This deployment does not support shared Jira event sources.");
|
|
115
|
+
},
|
|
116
|
+
};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { IntegrationReconcileContext, IntegrationReconcileResult } from "../../triggers/common/integration.ts";
|
|
2
|
+
export declare const jiraEvents: string[];
|
|
3
|
+
export declare function requireJiraCloud(connector: IntegrationReconcileContext["connector"]): string;
|
|
4
|
+
export declare function reconcileJiraResource(context: IntegrationReconcileContext): Promise<IntegrationReconcileResult>;
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
import { IntegrationConnectionError, PermanentIntegrationError, TransientIntegrationError, } from "../../triggers/common/integration.js";
|
|
2
|
+
import { isJsonObject } from "../../triggers/common/json.js";
|
|
3
|
+
import { webhookRequest } from "../../triggers/managed-webhook.js";
|
|
4
|
+
export const jiraEvents = ["jira:issue_created", "jira:issue_updated", "comment_created"];
|
|
5
|
+
const day = 86_400_000;
|
|
6
|
+
export function requireJiraCloud(connector) {
|
|
7
|
+
const cloudId = /^jira:([^:]+)(?::|$)/.exec(connector.providerAccountId ?? "")?.[1];
|
|
8
|
+
if (connector.authType !== "oauth2" || !cloudId || !connector.oauthClientConfig?.clientSecret)
|
|
9
|
+
throw new IntegrationConnectionError("Jira Cloud OAuth and the matching application client secret are required. Reconnect with webhook permissions.");
|
|
10
|
+
return cloudId;
|
|
11
|
+
}
|
|
12
|
+
async function webhooks(context) {
|
|
13
|
+
const items = [];
|
|
14
|
+
let startAt = 0;
|
|
15
|
+
for (;;) {
|
|
16
|
+
const { data } = await webhookRequest(context, {
|
|
17
|
+
method: "GET",
|
|
18
|
+
endpoint: "/webhook",
|
|
19
|
+
query: { startAt, maxResults: 100 },
|
|
20
|
+
});
|
|
21
|
+
if (!isJsonObject(data) || !Array.isArray(data.values) || typeof data.isLast !== "boolean")
|
|
22
|
+
throw new TransientIntegrationError("Invalid Jira webhook page.");
|
|
23
|
+
for (const item of data.values) {
|
|
24
|
+
if (!isJsonObject(item) ||
|
|
25
|
+
!Number.isSafeInteger(item.id) ||
|
|
26
|
+
Number(item.id) <= 0 ||
|
|
27
|
+
typeof item.url !== "string" ||
|
|
28
|
+
typeof item.jqlFilter !== "string" ||
|
|
29
|
+
!Array.isArray(item.events) ||
|
|
30
|
+
!item.events.every((event) => typeof event === "string") ||
|
|
31
|
+
typeof item.expirationDate !== "string")
|
|
32
|
+
throw new TransientIntegrationError("Invalid Jira webhook record.");
|
|
33
|
+
const expiresAt = Date.parse(item.expirationDate);
|
|
34
|
+
if (!Number.isFinite(expiresAt))
|
|
35
|
+
throw new TransientIntegrationError("Invalid Jira webhook expiration.");
|
|
36
|
+
items.push({
|
|
37
|
+
id: Number(item.id),
|
|
38
|
+
url: item.url,
|
|
39
|
+
jqlFilter: item.jqlFilter,
|
|
40
|
+
events: item.events,
|
|
41
|
+
expiresAt,
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
if (data.isLast)
|
|
45
|
+
return items;
|
|
46
|
+
if (data.values.length === 0 || data.startAt !== startAt)
|
|
47
|
+
throw new TransientIntegrationError("Invalid Jira webhook pagination.");
|
|
48
|
+
startAt += data.values.length;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
export async function reconcileJiraResource(context) {
|
|
52
|
+
requireJiraCloud(context.connector);
|
|
53
|
+
const { projectId } = context.config;
|
|
54
|
+
if (typeof projectId !== "string" || !/^\d+$/.test(projectId))
|
|
55
|
+
throw new PermanentIntegrationError("A verified Jira project ID is required.");
|
|
56
|
+
let endpoint;
|
|
57
|
+
try {
|
|
58
|
+
endpoint = new URL(context.endpointUrl);
|
|
59
|
+
}
|
|
60
|
+
catch {
|
|
61
|
+
throw new PermanentIntegrationError("A public HTTPS callback URL is required.");
|
|
62
|
+
}
|
|
63
|
+
if (endpoint.protocol !== "https:" || endpoint.username || endpoint.password || endpoint.hash)
|
|
64
|
+
throw new PermanentIntegrationError("Jira requires a public HTTPS callback without credentials or a fragment.");
|
|
65
|
+
const now = context.now.getTime();
|
|
66
|
+
const state = context.state;
|
|
67
|
+
const saved = state.subscription;
|
|
68
|
+
if (context.active &&
|
|
69
|
+
typeof saved.checkedAt === "number" &&
|
|
70
|
+
typeof saved.expiresAt === "number" &&
|
|
71
|
+
saved.checkedAt + day > now &&
|
|
72
|
+
saved.expiresAt - 7 * day > now)
|
|
73
|
+
return { outcome: "ready" };
|
|
74
|
+
const save = (value) => state.saveSubscription(value, new Date(now + day));
|
|
75
|
+
let all = await webhooks(context);
|
|
76
|
+
const own = () => {
|
|
77
|
+
const matches = all.filter((item) => item.url === endpoint.href);
|
|
78
|
+
if (matches.length > 1)
|
|
79
|
+
throw new PermanentIntegrationError("Multiple Jira webhooks use this source callback. Resolve the duplicate subscriptions before retrying.");
|
|
80
|
+
return matches[0];
|
|
81
|
+
};
|
|
82
|
+
let hook = own();
|
|
83
|
+
if (!context.active) {
|
|
84
|
+
if (hook)
|
|
85
|
+
await webhookRequest(context, { method: "DELETE", endpoint: "/webhook", body: { webhookIds: [hook.id] } });
|
|
86
|
+
else if (saved.creating === true)
|
|
87
|
+
throw new PermanentIntegrationError("Jira registration is still uncertain. Confirm the remote webhook before cleanup.", "trigger_subscription_uncertain");
|
|
88
|
+
await save({});
|
|
89
|
+
return { outcome: "ready" };
|
|
90
|
+
}
|
|
91
|
+
if (!hook) {
|
|
92
|
+
if (saved.creating === true)
|
|
93
|
+
throw new PermanentIntegrationError("Jira registration is uncertain and no matching webhook is visible. Retry after checking Jira; do not create another source.", "trigger_subscription_uncertain");
|
|
94
|
+
if (all.length >= 5)
|
|
95
|
+
throw new PermanentIntegrationError("Jira OAuth webhook quota reached: five subscriptions per application, user and site. Remove an unused subscription, then retry.", "trigger_quota_exceeded");
|
|
96
|
+
await save({ creating: true });
|
|
97
|
+
const result = await context.connector.execute({
|
|
98
|
+
method: "POST",
|
|
99
|
+
endpoint: "/webhook",
|
|
100
|
+
body: { url: endpoint.href, webhooks: [{ jqlFilter: `project = ${projectId}`, events: jiraEvents }] },
|
|
101
|
+
}, context.signal);
|
|
102
|
+
context.signal?.throwIfAborted();
|
|
103
|
+
if (result.status < 200 || result.status >= 300) {
|
|
104
|
+
if (result.status >= 400 && result.status < 500)
|
|
105
|
+
await save({});
|
|
106
|
+
const message = `Jira webhook registration failed (HTTP ${result.status}). Check OAuth scopes, callback domain and webhook quota.`;
|
|
107
|
+
if (result.status === 429 || result.status >= 500)
|
|
108
|
+
throw new TransientIntegrationError(message);
|
|
109
|
+
throw new PermanentIntegrationError(message);
|
|
110
|
+
}
|
|
111
|
+
const results = isJsonObject(result.data) ? result.data.webhookRegistrationResult : undefined;
|
|
112
|
+
if (!Array.isArray(results) || results.length !== 1 || !isJsonObject(results[0]))
|
|
113
|
+
throw new TransientIntegrationError("Jira registration returned no confirmed webhook ID.");
|
|
114
|
+
const created = results[0];
|
|
115
|
+
if (Array.isArray(created.errors) && created.errors.length) {
|
|
116
|
+
await save({});
|
|
117
|
+
throw new PermanentIntegrationError(`Jira rejected the webhook: ${created.errors.filter((value) => typeof value === "string").join("; ")}`);
|
|
118
|
+
}
|
|
119
|
+
if (!Number.isSafeInteger(created.createdWebhookId) || Number(created.createdWebhookId) <= 0)
|
|
120
|
+
throw new TransientIntegrationError("Jira registration returned no confirmed webhook ID.");
|
|
121
|
+
await save({ creating: true, webhookId: Number(created.createdWebhookId) });
|
|
122
|
+
all = await webhooks(context);
|
|
123
|
+
hook = own();
|
|
124
|
+
if (!hook || hook.id !== created.createdWebhookId)
|
|
125
|
+
throw new TransientIntegrationError("The newly registered Jira webhook is not yet visible.");
|
|
126
|
+
}
|
|
127
|
+
if (hook.jqlFilter !== `project = ${projectId}` ||
|
|
128
|
+
hook.events.length !== jiraEvents.length ||
|
|
129
|
+
!jiraEvents.every((event) => hook.events.includes(event)))
|
|
130
|
+
throw new PermanentIntegrationError("The Jira webhook no longer matches this source's project and events. Remove the source subscription before recreating it.");
|
|
131
|
+
if (hook.expiresAt - 7 * day <= now) {
|
|
132
|
+
await webhookRequest(context, { method: "PUT", endpoint: "/webhook/refresh", body: { webhookIds: [hook.id] } });
|
|
133
|
+
const previousId = hook.id;
|
|
134
|
+
all = await webhooks(context);
|
|
135
|
+
hook = own();
|
|
136
|
+
if (!hook || hook.id !== previousId || hook.expiresAt - 7 * day <= now)
|
|
137
|
+
throw new TransientIntegrationError("Jira did not confirm the renewed webhook expiration.");
|
|
138
|
+
}
|
|
139
|
+
await save({ webhookId: hook.id, expiresAt: hook.expiresAt, checkedAt: now });
|
|
140
|
+
return { outcome: "ready" };
|
|
141
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createHash } from "node:crypto";
|
|
2
2
|
import { compactObject, optionalRecord, optionalString } from "../../core/cast.js";
|
|
3
|
-
import { isAbortLikeError, providerUserAgent, ProviderRequestError } from "../provider-runtime.js";
|
|
3
|
+
import { isAbortLikeError, providerUserAgent, ProviderRequestError, providerInputError } from "../provider-runtime.js";
|
|
4
4
|
import { kaleidoDefaultBaseUrl } from "./constants.js";
|
|
5
5
|
const membershipsValidationPath = "/memberships";
|
|
6
6
|
export const kaleidoActionHandlers = {
|
|
@@ -156,7 +156,7 @@ async function normalizeKaleidoError(response) {
|
|
|
156
156
|
return new ProviderRequestError(401, message);
|
|
157
157
|
}
|
|
158
158
|
if (response.status >= 400 && response.status < 500) {
|
|
159
|
-
return
|
|
159
|
+
return providerInputError(message);
|
|
160
160
|
}
|
|
161
161
|
return new ProviderRequestError(response.status || 500, message);
|
|
162
162
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createHash } from "node:crypto";
|
|
2
2
|
import { compactObject, optionalBoolean, optionalInteger, optionalRecord, optionalString } from "../../core/cast.js";
|
|
3
|
-
import { ProviderRequestError, providerUserAgent, runProviderRequest } from "../provider-runtime.js";
|
|
3
|
+
import { ProviderRequestError, providerUserAgent, runProviderRequest, providerInputError, } from "../provider-runtime.js";
|
|
4
4
|
export const kandjiActionHandlers = {
|
|
5
5
|
async list_blueprints(input, context) {
|
|
6
6
|
const payload = await requestKandjiJson({
|
|
@@ -186,7 +186,7 @@ function createKandjiError(status, payload, phase, notFoundAsInvalidInput) {
|
|
|
186
186
|
return new ProviderRequestError(429, message);
|
|
187
187
|
}
|
|
188
188
|
if (phase === "validate" && status >= 400 && status < 500) {
|
|
189
|
-
return
|
|
189
|
+
return providerInputError(message);
|
|
190
190
|
}
|
|
191
191
|
if (phase === "execute" && status === 401) {
|
|
192
192
|
return new ProviderRequestError(401, message);
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { CredentialValidators, ProviderExecutors, ProviderProxyExecutor } from "../../core/types.ts";
|
|
2
|
+
export declare const executors: ProviderExecutors;
|
|
3
|
+
export declare const proxy: ProviderProxyExecutor;
|
|
4
|
+
export declare const credentialValidators: CredentialValidators;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { defineProviderExecutors, defineProviderProxy } from "../provider-runtime.js";
|
|
2
|
+
import { createKeenableContext, keenableActionHandlers, keenableApiBaseUrl, keenableAppTitle, validateKeenableCredential, } from "./runtime.js";
|
|
3
|
+
const service = "keenable";
|
|
4
|
+
export const executors = defineProviderExecutors({
|
|
5
|
+
service,
|
|
6
|
+
handlers: keenableActionHandlers,
|
|
7
|
+
createContext: createKeenableContext,
|
|
8
|
+
skipDnsValidation: true,
|
|
9
|
+
});
|
|
10
|
+
export const proxy = defineProviderProxy({
|
|
11
|
+
service,
|
|
12
|
+
baseUrl: keenableApiBaseUrl,
|
|
13
|
+
auth: { type: "optional_api_key_header", name: "X-API-Key" },
|
|
14
|
+
skipDnsValidation: true,
|
|
15
|
+
customizeRequest({ headers }) {
|
|
16
|
+
if (!headers.has("x-keenable-title"))
|
|
17
|
+
headers.set("x-keenable-title", keenableAppTitle);
|
|
18
|
+
},
|
|
19
|
+
});
|
|
20
|
+
export const credentialValidators = { apiKey: validateKeenableCredential };
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { CredentialValidationResult, ExecutionContext } from "../../core/types.ts";
|
|
2
|
+
import type { ProviderFetch } from "../provider-runtime.ts";
|
|
3
|
+
export declare const keenableApiBaseUrl = "https://api.keenable.ai";
|
|
4
|
+
/** Keenable requires keyless callers to name their app in the X-Keenable-Title header. */
|
|
5
|
+
export declare const keenableAppTitle = "OpenConnector";
|
|
6
|
+
interface KeenableContext {
|
|
7
|
+
apiKey?: string;
|
|
8
|
+
fetcher: ProviderFetch;
|
|
9
|
+
signal?: AbortSignal;
|
|
10
|
+
}
|
|
11
|
+
type KeenableActionHandler = (input: Record<string, unknown>, context: KeenableContext) => Promise<unknown>;
|
|
12
|
+
export declare const keenableActionHandlers: Record<string, KeenableActionHandler>;
|
|
13
|
+
/**
|
|
14
|
+
* Build the action context. A no_auth connection has no key and uses the keyless endpoints.
|
|
15
|
+
*/
|
|
16
|
+
export declare function createKeenableContext(context: ExecutionContext, fetcher: ProviderFetch): Promise<KeenableContext>;
|
|
17
|
+
/**
|
|
18
|
+
* Validate a key through a one-result search on the keyed endpoint.
|
|
19
|
+
*/
|
|
20
|
+
export declare function validateKeenableCredential(input: {
|
|
21
|
+
apiKey: string;
|
|
22
|
+
}, options: {
|
|
23
|
+
fetcher: ProviderFetch;
|
|
24
|
+
signal?: AbortSignal;
|
|
25
|
+
}): Promise<CredentialValidationResult>;
|
|
26
|
+
export {};
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { optionalRecord, optionalString } from "../../core/cast.js";
|
|
2
|
+
import { parseProviderJsonBodyText, ProviderRequestError, providerUserAgent, readProviderErrorTextBody, readProviderTextBody, requiredResponseRecord, runProviderRequest, setSearchParams, withRetryAfterSeconds, } from "../provider-runtime.js";
|
|
3
|
+
export const keenableApiBaseUrl = "https://api.keenable.ai";
|
|
4
|
+
/** Keenable requires keyless callers to name their app in the X-Keenable-Title header. */
|
|
5
|
+
export const keenableAppTitle = "OpenConnector";
|
|
6
|
+
export const keenableActionHandlers = {
|
|
7
|
+
search(input, context) {
|
|
8
|
+
return requestKeenable({
|
|
9
|
+
context,
|
|
10
|
+
method: "POST",
|
|
11
|
+
path: context.apiKey ? "/v1/search" : "/v1/search/public",
|
|
12
|
+
body: input,
|
|
13
|
+
});
|
|
14
|
+
},
|
|
15
|
+
fetch(input, context) {
|
|
16
|
+
const query = Object.fromEntries(Object.entries(input)
|
|
17
|
+
.filter(([, value]) => value !== undefined)
|
|
18
|
+
.map(([key, value]) => [key, String(value)]));
|
|
19
|
+
return requestKeenable({ context, method: "GET", path: context.apiKey ? "/v1/fetch" : "/v1/fetch/public", query });
|
|
20
|
+
},
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* Build the action context. A no_auth connection has no key and uses the keyless endpoints.
|
|
24
|
+
*/
|
|
25
|
+
export async function createKeenableContext(context, fetcher) {
|
|
26
|
+
const credential = await context.getCredential("keenable");
|
|
27
|
+
return {
|
|
28
|
+
apiKey: credential?.authType === "api_key" ? credential.apiKey : undefined,
|
|
29
|
+
fetcher,
|
|
30
|
+
signal: context.signal,
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Validate a key through a one-result search on the keyed endpoint.
|
|
35
|
+
*/
|
|
36
|
+
export async function validateKeenableCredential(input, options) {
|
|
37
|
+
await requestKeenable({
|
|
38
|
+
context: { apiKey: input.apiKey, fetcher: options.fetcher, signal: options.signal },
|
|
39
|
+
method: "POST",
|
|
40
|
+
path: "/v1/search",
|
|
41
|
+
body: { query: "Keenable", max_results: 1 },
|
|
42
|
+
});
|
|
43
|
+
return {
|
|
44
|
+
profile: { displayName: "Keenable API Key" },
|
|
45
|
+
grantedScopes: [],
|
|
46
|
+
metadata: { apiBaseUrl: keenableApiBaseUrl, validationEndpoint: "/v1/search" },
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
async function requestKeenable(request) {
|
|
50
|
+
const { context } = request;
|
|
51
|
+
const url = new URL(request.path, keenableApiBaseUrl);
|
|
52
|
+
setSearchParams(url, request.query ?? {});
|
|
53
|
+
const headers = new Headers({
|
|
54
|
+
accept: "application/json",
|
|
55
|
+
"user-agent": providerUserAgent,
|
|
56
|
+
"x-keenable-title": keenableAppTitle,
|
|
57
|
+
});
|
|
58
|
+
if (context.apiKey)
|
|
59
|
+
headers.set("x-api-key", context.apiKey);
|
|
60
|
+
if (request.body)
|
|
61
|
+
headers.set("content-type", "application/json");
|
|
62
|
+
return runProviderRequest({ signal: context.signal, label: "Keenable" }, async (signal) => {
|
|
63
|
+
const response = await context.fetcher(url, {
|
|
64
|
+
method: request.method,
|
|
65
|
+
headers,
|
|
66
|
+
body: request.body ? JSON.stringify(request.body) : undefined,
|
|
67
|
+
signal,
|
|
68
|
+
});
|
|
69
|
+
if (!response.ok) {
|
|
70
|
+
throw await readKeenableError(response);
|
|
71
|
+
}
|
|
72
|
+
const payload = parseProviderJsonBodyText(await readProviderTextBody(response, "Keenable response"), {
|
|
73
|
+
emptyBody: {},
|
|
74
|
+
invalidJsonMessage: "Keenable returned malformed JSON",
|
|
75
|
+
});
|
|
76
|
+
return requiredResponseRecord(payload, "Keenable response");
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
async function readKeenableError(response) {
|
|
80
|
+
const status = response.status;
|
|
81
|
+
const body = optionalRecord(parseProviderJsonBodyText(await readProviderErrorTextBody(response, "Keenable error response"), {
|
|
82
|
+
emptyBody: {},
|
|
83
|
+
invalidJsonMessage: "Keenable returned malformed JSON",
|
|
84
|
+
invalidJsonFallback: () => ({}),
|
|
85
|
+
}));
|
|
86
|
+
const message = optionalString(body?.message) ?? optionalString(body?.error) ?? `Keenable request failed with HTTP ${status}`;
|
|
87
|
+
const details = withRetryAfterSeconds(response, body ?? {});
|
|
88
|
+
return new ProviderRequestError(status, message, details, status === 429 ? "rate_limited" : "provider_error");
|
|
89
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { compactObject, optionalRecord, optionalString } from "../../core/cast.js";
|
|
2
|
-
import { defineProviderExecutors, defineProviderProxy, providerUserAgent, ProviderRequestError, requireApiKeyCredential, } from "../provider-runtime.js";
|
|
2
|
+
import { defineProviderExecutors, defineProviderProxy, providerUserAgent, ProviderRequestError, requireApiKeyCredential, providerInputError, } from "../provider-runtime.js";
|
|
3
3
|
const keygenApiBaseUrl = "https://api.keygen.sh/v1/accounts";
|
|
4
4
|
const keygenValidationPath = "/me";
|
|
5
5
|
const service = "keygen";
|
|
@@ -529,16 +529,16 @@ function createKeygenError(response, payload, phase, usedAuth) {
|
|
|
529
529
|
return new ProviderRequestError(429, message);
|
|
530
530
|
}
|
|
531
531
|
if (phase === "validate" && (response.status === 401 || response.status === 403)) {
|
|
532
|
-
return
|
|
532
|
+
return providerInputError(message);
|
|
533
533
|
}
|
|
534
534
|
if (phase === "execute" && usedAuth && (response.status === 401 || response.status === 403)) {
|
|
535
535
|
return new ProviderRequestError(401, message);
|
|
536
536
|
}
|
|
537
537
|
if (phase === "execute" && !usedAuth && (response.status === 401 || response.status === 403)) {
|
|
538
|
-
return
|
|
538
|
+
return providerInputError(message);
|
|
539
539
|
}
|
|
540
540
|
if ([400, 404, 422].includes(response.status)) {
|
|
541
|
-
return
|
|
541
|
+
return providerInputError(message);
|
|
542
542
|
}
|
|
543
543
|
return new ProviderRequestError(response.status || 500, message);
|
|
544
544
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { compactObject, optionalInteger, optionalRecord, optionalString } from "../../core/cast.js";
|
|
2
|
-
import { providerUserAgent, ProviderRequestError, runProviderRequest } from "../provider-runtime.js";
|
|
2
|
+
import { providerUserAgent, ProviderRequestError, runProviderRequest, providerInputError, } from "../provider-runtime.js";
|
|
3
3
|
export const keywordApiBaseUrl = "https://app.keyword.com";
|
|
4
4
|
const keywordApiPathPrefix = "/api/v2";
|
|
5
5
|
export const keywordActionHandlers = {
|
|
@@ -105,7 +105,7 @@ function createKeywordError(response, payload, phase) {
|
|
|
105
105
|
return new ProviderRequestError(429, message);
|
|
106
106
|
}
|
|
107
107
|
if (phase === "validate" && response.status >= 400 && response.status < 500) {
|
|
108
|
-
return
|
|
108
|
+
return providerInputError(message);
|
|
109
109
|
}
|
|
110
110
|
return new ProviderRequestError(response.status || 502, message);
|
|
111
111
|
}
|
|
@@ -103,7 +103,7 @@ function mapKieAiError(code, message, status) {
|
|
|
103
103
|
case 403:
|
|
104
104
|
return new ProviderRequestError(401, message);
|
|
105
105
|
case 422:
|
|
106
|
-
return
|
|
106
|
+
return providerInputError(message);
|
|
107
107
|
case 429:
|
|
108
108
|
return new ProviderRequestError(429, message);
|
|
109
109
|
default:
|
|
@@ -184,7 +184,7 @@ function createKintoneError(status, payload, phase) {
|
|
|
184
184
|
return new ProviderRequestError(429, message);
|
|
185
185
|
}
|
|
186
186
|
if (phase === "validate" && status >= 400 && status < 500) {
|
|
187
|
-
return
|
|
187
|
+
return providerInputError(message);
|
|
188
188
|
}
|
|
189
189
|
if (phase === "execute" && status === 401) {
|
|
190
190
|
return new ProviderRequestError(401, message);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { compactObject, looseArray, optionalBoolean, optionalNumber, optionalRecord, optionalString, } from "../../core/cast.js";
|
|
2
|
-
import { providerUserAgent, ProviderRequestError, runProviderRequest } from "../provider-runtime.js";
|
|
2
|
+
import { providerUserAgent, ProviderRequestError, runProviderRequest, providerInputError, } from "../provider-runtime.js";
|
|
3
3
|
const kitApiBaseUrl = "https://api.kit.com/v4";
|
|
4
4
|
export const kitActionHandlers = {
|
|
5
5
|
async get_current_account(_input, context) {
|
|
@@ -229,7 +229,7 @@ function createKitError(status, payload, phase) {
|
|
|
229
229
|
return new ProviderRequestError(429, message);
|
|
230
230
|
}
|
|
231
231
|
if (phase === "validate" && status >= 400 && status < 500) {
|
|
232
|
-
return
|
|
232
|
+
return providerInputError(message);
|
|
233
233
|
}
|
|
234
234
|
if (phase === "execute" && status === 401) {
|
|
235
235
|
return new ProviderRequestError(401, message);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { optionalRecord, optionalString } from "../../core/cast.js";
|
|
2
2
|
import { assertPublicHttpUrl, readBoundedResponseBytes, storeResponseInTransit } from "../../core/request.js";
|
|
3
|
-
import { providerFetch, providerUserAgent, ProviderRequestError } from "../provider-runtime.js";
|
|
3
|
+
import { providerFetch, providerUserAgent, ProviderRequestError, providerInputError } from "../provider-runtime.js";
|
|
4
4
|
export const klangioApiBaseUrl = "https://api.klang.io";
|
|
5
5
|
const klangioValidationJobId = "00000000-0000-0000-0000-000000000000";
|
|
6
6
|
const maxKlangioUploadSourceBytes = 100 * 1024 * 1024;
|
|
@@ -208,7 +208,7 @@ async function resolveKlangioUploadSource(value, context) {
|
|
|
208
208
|
if (fileUrl) {
|
|
209
209
|
const url = assertPublicHttpUrl(fileUrl, {
|
|
210
210
|
fieldName: "file.url",
|
|
211
|
-
createError:
|
|
211
|
+
createError: providerInputError,
|
|
212
212
|
});
|
|
213
213
|
const response = await providerFetch(url, {
|
|
214
214
|
method: "GET",
|
|
@@ -255,7 +255,7 @@ async function readKlangioUploadSourceBytes(response) {
|
|
|
255
255
|
return readBoundedResponseBytes(response, {
|
|
256
256
|
maxBytes: maxKlangioUploadSourceBytes,
|
|
257
257
|
fieldName: "klangio upload source",
|
|
258
|
-
createError:
|
|
258
|
+
createError: providerInputError,
|
|
259
259
|
});
|
|
260
260
|
}
|
|
261
261
|
function assertUploadSourceSize(byteLength) {
|
|
@@ -321,7 +321,7 @@ function createKlangioError(response, payload) {
|
|
|
321
321
|
return new ProviderRequestError(429, message);
|
|
322
322
|
}
|
|
323
323
|
if (response.status >= 400 && response.status < 500) {
|
|
324
|
-
return
|
|
324
|
+
return providerInputError(message);
|
|
325
325
|
}
|
|
326
326
|
return new ProviderRequestError(response.status || 500, message);
|
|
327
327
|
}
|
|
@@ -272,7 +272,7 @@ function mapKlaviyoHttpError(status, payload, rawBody, phase) {
|
|
|
272
272
|
return new ProviderRequestError(phase === "validate" ? 400 : 401, message);
|
|
273
273
|
}
|
|
274
274
|
if (status === 400 || status === 404 || status === 422) {
|
|
275
|
-
return
|
|
275
|
+
return providerInputError(message);
|
|
276
276
|
}
|
|
277
277
|
if (status === 429) {
|
|
278
278
|
return new ProviderRequestError(429, message);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { compactObject, optionalBoolean, optionalInteger, optionalNumber, optionalRecord, optionalString, } from "../../core/cast.js";
|
|
2
|
-
import { defineApiKeyProviderExecutors, defineProviderProxy, providerUserAgent, ProviderRequestError, runProviderRequest, } from "../provider-runtime.js";
|
|
2
|
+
import { defineApiKeyProviderExecutors, defineProviderProxy, providerUserAgent, ProviderRequestError, runProviderRequest, providerInputError, } from "../provider-runtime.js";
|
|
3
3
|
const service = "klazify";
|
|
4
4
|
const klazifyApiBaseUrl = "https://www.klazify.com/api";
|
|
5
5
|
export const klazifyActionHandlers = {
|
|
@@ -260,11 +260,11 @@ function createKlazifyError(status, payload, phase) {
|
|
|
260
260
|
return new ProviderRequestError(401, message);
|
|
261
261
|
}
|
|
262
262
|
if (normalizedMessage.includes("/unreachable") || normalizedMessage.includes("/no indexable content")) {
|
|
263
|
-
return
|
|
263
|
+
return providerInputError(message);
|
|
264
264
|
}
|
|
265
265
|
}
|
|
266
266
|
if (phase === "validate" && status < 400) {
|
|
267
|
-
return
|
|
267
|
+
return providerInputError(message);
|
|
268
268
|
}
|
|
269
269
|
return new ProviderRequestError(status || 500, message);
|
|
270
270
|
}
|