@oomol-lab/open-connector 1.7.0 → 1.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +19 -14
- package/assets/open-connector/catalog/apps/7_shifts.json +62 -31
- package/assets/open-connector/catalog/apps/a_leads.json +26 -13
- package/assets/open-connector/catalog/apps/ably_control.json +124 -62
- package/assets/open-connector/catalog/apps/abstract.json +16 -8
- package/assets/open-connector/catalog/apps/abuseipdb.json +28 -14
- package/assets/open-connector/catalog/apps/abyssale.json +76 -38
- package/assets/open-connector/catalog/apps/accredible_certificates.json +228 -114
- package/assets/open-connector/catalog/apps/accuweather.json +2 -1
- package/assets/open-connector/catalog/apps/active_trail.json +106 -53
- package/assets/open-connector/catalog/apps/activecampaign.json +110 -55
- package/assets/open-connector/catalog/apps/acuity_scheduling.json +210 -105
- package/assets/open-connector/catalog/apps/adafruit_io.json +108 -54
- package/assets/open-connector/catalog/apps/addressfinder.json +8 -4
- package/assets/open-connector/catalog/apps/addresszen.json +2 -1
- package/assets/open-connector/catalog/apps/adobe_commerce.json +74 -37
- package/assets/open-connector/catalog/apps/adyen.json +78 -39
- package/assets/open-connector/catalog/apps/adyntel.json +68 -34
- package/assets/open-connector/catalog/apps/aerisweather.json +6 -3
- package/assets/open-connector/catalog/apps/affinda.json +4 -2
- package/assets/open-connector/catalog/apps/affinity.json +124 -62
- package/assets/open-connector/catalog/apps/aftership.json +12 -6
- package/assets/open-connector/catalog/apps/agent_mail.json +8 -4
- package/assets/open-connector/catalog/apps/agentql.json +56 -28
- package/assets/open-connector/catalog/apps/agiled.json +340 -170
- package/assets/open-connector/catalog/apps/agora.json +64 -32
- package/assets/open-connector/catalog/apps/aimfox.json +22 -11
- package/assets/open-connector/catalog/apps/airbrake.json +76 -38
- package/assets/open-connector/catalog/apps/aircall.json +30 -15
- package/assets/open-connector/catalog/apps/airtable.json +138 -2
- package/assets/open-connector/catalog/apps/aisa.json +1088 -43
- package/assets/open-connector/catalog/apps/alchemy.json +22 -11
- package/assets/open-connector/catalog/apps/algo_docs.json +6 -3
- package/assets/open-connector/catalog/apps/aliyun_oss.json +34 -17
- package/assets/open-connector/catalog/apps/aliyun_sls.json +26 -13
- package/assets/open-connector/catalog/apps/aliyun_sts.json +8 -4
- package/assets/open-connector/catalog/apps/alt_text_ai.json +114 -57
- package/assets/open-connector/catalog/apps/altiria.json +112 -56
- package/assets/open-connector/catalog/apps/altoviz.json +76 -38
- package/assets/open-connector/catalog/apps/amara.json +68 -34
- package/assets/open-connector/catalog/apps/amazing_marvin.json +615 -0
- package/assets/open-connector/catalog/apps/ambivo.json +188 -94
- package/assets/open-connector/catalog/apps/amilia.json +8 -4
- package/assets/open-connector/catalog/apps/amplemarket.json +230 -115
- package/assets/open-connector/catalog/apps/anchor_browser.json +8 -4
- package/assets/open-connector/catalog/apps/anrok.json +10 -5
- package/assets/open-connector/catalog/apps/anthropic.json +8 -4
- package/assets/open-connector/catalog/apps/anthropic_admin.json +32 -16
- package/assets/open-connector/catalog/apps/anymail_finder.json +40 -20
- package/assets/open-connector/catalog/apps/api2pdf.json +14 -7
- package/assets/open-connector/catalog/apps/api_route.json +203 -0
- package/assets/open-connector/catalog/apps/api_sports.json +220 -110
- package/assets/open-connector/catalog/apps/api_void.json +10 -5
- package/assets/open-connector/catalog/apps/apiframe.json +26 -13
- package/assets/open-connector/catalog/apps/apipie_ai.json +4 -2
- package/assets/open-connector/catalog/apps/apiverve.json +82 -41
- package/assets/open-connector/catalog/apps/app_store_connect.json +7516 -3758
- package/assets/open-connector/catalog/apps/app_store_server.json +126 -63
- package/assets/open-connector/catalog/apps/appcircle.json +24 -12
- package/assets/open-connector/catalog/apps/appcues.json +4 -2
- package/assets/open-connector/catalog/apps/apple_ads.json +6626 -3313
- package/assets/open-connector/catalog/apps/apple_notary.json +12 -6
- package/assets/open-connector/catalog/apps/appledb.json +4 -2
- package/assets/open-connector/catalog/apps/appstle_subscriptions.json +2 -1
- package/assets/open-connector/catalog/apps/aroflo.json +24 -12
- package/assets/open-connector/catalog/apps/arxiv.json +98 -49
- package/assets/open-connector/catalog/apps/asana.json +1016 -508
- package/assets/open-connector/catalog/apps/ashby.json +12 -6
- package/assets/open-connector/catalog/apps/assemblyai.json +142 -71
- package/assets/open-connector/catalog/apps/assured_platform.json +4 -2
- package/assets/open-connector/catalog/apps/atlas_so.json +250 -125
- package/assets/open-connector/catalog/apps/attio.json +22 -11
- package/assets/open-connector/catalog/apps/autobound.json +30 -15
- package/assets/open-connector/catalog/apps/autom.json +14 -7
- package/assets/open-connector/catalog/apps/autotask.json +10 -5
- package/assets/open-connector/catalog/apps/aviationstack.json +60 -30
- package/assets/open-connector/catalog/apps/avochato.json +36 -18
- package/assets/open-connector/catalog/apps/avoma.json +8 -4
- package/assets/open-connector/catalog/apps/aws_s3.json +40 -20
- package/assets/open-connector/catalog/apps/aws_sts.json +12 -6
- package/assets/open-connector/catalog/apps/ayrshare.json +18 -9
- package/assets/open-connector/catalog/apps/baidu_netdisk.json +84 -42
- package/assets/open-connector/catalog/apps/balldontlie_worldcup.json +38 -19
- package/assets/open-connector/catalog/apps/bamboohr.json +8 -4
- package/assets/open-connector/catalog/apps/bannerbear.json +28 -14
- package/assets/open-connector/catalog/apps/baremetrics.json +20 -10
- package/assets/open-connector/catalog/apps/baserow.json +4 -2
- package/assets/open-connector/catalog/apps/bazhuayu.json +14 -7
- package/assets/open-connector/catalog/apps/beaconchain.json +12 -6
- package/assets/open-connector/catalog/apps/beehiiv.json +62 -31
- package/assets/open-connector/catalog/apps/beeminder.json +126 -63
- package/assets/open-connector/catalog/apps/better_proposals.json +96 -48
- package/assets/open-connector/catalog/apps/better_stack.json +220 -110
- package/assets/open-connector/catalog/apps/bettercontact.json +36 -18
- package/assets/open-connector/catalog/apps/bidsketch.json +6 -3
- package/assets/open-connector/catalog/apps/big_commerce.json +58 -29
- package/assets/open-connector/catalog/apps/bigmailer.json +124 -62
- package/assets/open-connector/catalog/apps/bigml.json +106 -53
- package/assets/open-connector/catalog/apps/bigpicture_io.json +84 -42
- package/assets/open-connector/catalog/apps/biorxiv_medrxiv.json +6 -3
- package/assets/open-connector/catalog/apps/bird.json +6 -3
- package/assets/open-connector/catalog/apps/bitbucket.json +164 -82
- package/assets/open-connector/catalog/apps/bitwarden.json +88 -44
- package/assets/open-connector/catalog/apps/bland_ai.json +122 -61
- package/assets/open-connector/catalog/apps/blaze_meter_functional.json +54 -27
- package/assets/open-connector/catalog/apps/blaze_meter_performance.json +108 -54
- package/assets/open-connector/catalog/apps/blaze_meter_service_virtualization.json +54 -27
- package/assets/open-connector/catalog/apps/bluesky.json +10 -5
- package/assets/open-connector/catalog/apps/boldsign.json +54 -27
- package/assets/open-connector/catalog/apps/bolna.json +8 -4
- package/assets/open-connector/catalog/apps/bot_star.json +4 -2
- package/assets/open-connector/catalog/apps/botpress.json +2 -1
- package/assets/open-connector/catalog/apps/box.json +192 -96
- package/assets/open-connector/catalog/apps/boxhero.json +10 -5
- package/assets/open-connector/catalog/apps/brandfetch.json +12 -6
- package/assets/open-connector/catalog/apps/brave_search.json +32 -16
- package/assets/open-connector/catalog/apps/braze.json +12 -6
- package/assets/open-connector/catalog/apps/breezy_hr.json +20 -10
- package/assets/open-connector/catalog/apps/brex.json +160 -80
- package/assets/open-connector/catalog/apps/bright_data.json +4 -2
- package/assets/open-connector/catalog/apps/browse_ai.json +108 -54
- package/assets/open-connector/catalog/apps/browser_use.json +102 -51
- package/assets/open-connector/catalog/apps/browserstack.json +14 -7
- package/assets/open-connector/catalog/apps/bug_herd.json +4 -2
- package/assets/open-connector/catalog/apps/bugbug.json +42 -21
- package/assets/open-connector/catalog/apps/bugsnag.json +20 -10
- package/assets/open-connector/catalog/apps/builder_io.json +24 -12
- package/assets/open-connector/catalog/apps/buildkite.json +32 -16
- package/assets/open-connector/catalog/apps/businessmap.json +40 -20
- package/assets/open-connector/catalog/apps/buttondown.json +154 -77
- package/assets/open-connector/catalog/apps/buzzsprout.json +222 -111
- package/assets/open-connector/catalog/apps/byteforms.json +14 -7
- package/assets/open-connector/catalog/apps/cal.json +62 -25
- package/assets/open-connector/catalog/apps/calendarific.json +24 -12
- package/assets/open-connector/catalog/apps/calendly.json +88 -44
- package/assets/open-connector/catalog/apps/callingly.json +594 -297
- package/assets/open-connector/catalog/apps/callpage.json +30 -15
- package/assets/open-connector/catalog/apps/callrail.json +156 -78
- package/assets/open-connector/catalog/apps/canny.json +2 -1
- package/assets/open-connector/catalog/apps/canva.json +222 -111
- package/assets/open-connector/catalog/apps/canva_cn.json +222 -111
- package/assets/open-connector/catalog/apps/captainbi.json +54 -27
- package/assets/open-connector/catalog/apps/carbone.json +38 -19
- package/assets/open-connector/catalog/apps/cardly.json +42 -21
- package/assets/open-connector/catalog/apps/castingwords.json +2 -1
- package/assets/open-connector/catalog/apps/census_bureau.json +54 -27
- package/assets/open-connector/catalog/apps/central_station_crm.json +418 -209
- package/assets/open-connector/catalog/apps/certifier.json +20 -10
- package/assets/open-connector/catalog/apps/certn.json +62 -31
- package/assets/open-connector/catalog/apps/chargebee.json +8 -4
- package/assets/open-connector/catalog/apps/chargeblast.json +66 -33
- package/assets/open-connector/catalog/apps/chargify.json +80 -40
- package/assets/open-connector/catalog/apps/chartmogul.json +114 -57
- package/assets/open-connector/catalog/apps/chaserhq.json +18 -9
- package/assets/open-connector/catalog/apps/chat_api_for_whatsapp.json +10 -5
- package/assets/open-connector/catalog/apps/chatarmin.json +10 -5
- package/assets/open-connector/catalog/apps/cheaperinference.json +346 -0
- package/assets/open-connector/catalog/apps/check.json +4 -2
- package/assets/open-connector/catalog/apps/chengxin.json +880 -440
- package/assets/open-connector/catalog/apps/chorus.json +2 -1
- package/assets/open-connector/catalog/apps/cin7_core.json +8 -4
- package/assets/open-connector/catalog/apps/circle.json +176 -88
- package/assets/open-connector/catalog/apps/circleci.json +14 -7
- package/assets/open-connector/catalog/apps/cisco_meraki.json +10 -5
- package/assets/open-connector/catalog/apps/claid_ai.json +88 -44
- package/assets/open-connector/catalog/apps/clari_copilot.json +4 -2
- package/assets/open-connector/catalog/apps/classmarker.json +320 -160
- package/assets/open-connector/catalog/apps/clay.json +1204 -0
- package/assets/open-connector/catalog/apps/clearout.json +18 -9
- package/assets/open-connector/catalog/apps/clerk.json +540 -270
- package/assets/open-connector/catalog/apps/clickhelp.json +88 -44
- package/assets/open-connector/catalog/apps/clickhouse.json +58 -29
- package/assets/open-connector/catalog/apps/clickmeeting.json +254 -127
- package/assets/open-connector/catalog/apps/clickup.json +738 -369
- package/assets/open-connector/catalog/apps/clinicaltrials_gov.json +134 -67
- package/assets/open-connector/catalog/apps/clockify.json +12 -6
- package/assets/open-connector/catalog/apps/cloudconvert.json +8 -4
- package/assets/open-connector/catalog/apps/cloudflare_dns.json +16 -8
- package/assets/open-connector/catalog/apps/cloudflare_email_routing.json +2 -1
- package/assets/open-connector/catalog/apps/cloudflare_r2.json +18 -9
- package/assets/open-connector/catalog/apps/cloudflare_worker.json +46 -23
- package/assets/open-connector/catalog/apps/cloudinary.json +2 -1
- package/assets/open-connector/catalog/apps/cockroach_labs.json +10 -5
- package/assets/open-connector/catalog/apps/coda.json +22 -11
- package/assets/open-connector/catalog/apps/codacy.json +8 -4
- package/assets/open-connector/catalog/apps/codegen.json +76 -38
- package/assets/open-connector/catalog/apps/codemagic.json +50 -25
- package/assets/open-connector/catalog/apps/coderabbit.json +50 -25
- package/assets/open-connector/catalog/apps/coderpad.json +26 -13
- package/assets/open-connector/catalog/apps/coingecko.json +132 -66
- package/assets/open-connector/catalog/apps/coinmarketcal.json +10 -5
- package/assets/open-connector/catalog/apps/coinmarketcap.json +118 -59
- package/assets/open-connector/catalog/apps/college_football_data.json +6 -3
- package/assets/open-connector/catalog/apps/commonninja.json +1060 -0
- package/assets/open-connector/catalog/apps/commpeak.json +142 -71
- package/assets/open-connector/catalog/apps/companycam.json +464 -232
- package/assets/open-connector/catalog/apps/companyenrich.json +2 -1
- package/assets/open-connector/catalog/apps/conductor.json +34 -17
- package/assets/open-connector/catalog/apps/configcat.json +36 -18
- package/assets/open-connector/catalog/apps/confluence.json +24 -12
- package/assets/open-connector/catalog/apps/confluent.json +36 -18
- package/assets/open-connector/catalog/apps/consensus.json +16 -8
- package/assets/open-connector/catalog/apps/contentful_graphql.json +2 -1
- package/assets/open-connector/catalog/apps/contentstack_content_delivery.json +6 -3
- package/assets/open-connector/catalog/apps/contentstack_content_management.json +4 -2
- package/assets/open-connector/catalog/apps/convertapi.json +2 -1
- package/assets/open-connector/catalog/apps/convex.json +44 -22
- package/assets/open-connector/catalog/apps/coolify.json +8 -4
- package/assets/open-connector/catalog/apps/coupang.json +8 -4
- package/assets/open-connector/catalog/apps/courier.json +20 -10
- package/assets/open-connector/catalog/apps/craftmypdf.json +6 -3
- package/assets/open-connector/catalog/apps/cratedb_cloud.json +98 -49
- package/assets/open-connector/catalog/apps/credit_repair_cloud.json +48 -24
- package/assets/open-connector/catalog/apps/crisp.json +14 -7
- package/assets/open-connector/catalog/apps/cronlytic.json +804 -0
- package/assets/open-connector/catalog/apps/crossref.json +214 -107
- package/assets/open-connector/catalog/apps/crowdin.json +48 -24
- package/assets/open-connector/catalog/apps/crustdata.json +4 -2
- package/assets/open-connector/catalog/apps/cursor.json +10 -5
- package/assets/open-connector/catalog/apps/customgpt.json +56 -28
- package/assets/open-connector/catalog/apps/daffy.json +24 -12
- package/assets/open-connector/catalog/apps/dart.json +230 -115
- package/assets/open-connector/catalog/apps/databar_ai.json +4 -2
- package/assets/open-connector/catalog/apps/datadog.json +70 -35
- package/assets/open-connector/catalog/apps/dataforseo.json +160 -80
- package/assets/open-connector/catalog/apps/datalust.json +98 -49
- package/assets/open-connector/catalog/apps/daytona.json +2 -1
- package/assets/open-connector/catalog/apps/dealmachine.json +2 -1
- package/assets/open-connector/catalog/apps/deck_co.json +18 -9
- package/assets/open-connector/catalog/apps/deepgram.json +208 -104
- package/assets/open-connector/catalog/apps/deepseek.json +2 -1
- package/assets/open-connector/catalog/apps/delighted.json +26 -13
- package/assets/open-connector/catalog/apps/demio.json +10 -5
- package/assets/open-connector/catalog/apps/demodesk.json +74 -37
- package/assets/open-connector/catalog/apps/descript.json +4 -2
- package/assets/open-connector/catalog/apps/desktime.json +20 -10
- package/assets/open-connector/catalog/apps/detect_language.json +2 -1
- package/assets/open-connector/catalog/apps/detrack.json +130 -65
- package/assets/open-connector/catalog/apps/deutschlandgpt.json +2 -1
- package/assets/open-connector/catalog/apps/devin.json +48 -24
- package/assets/open-connector/catalog/apps/devto.json +16 -8
- package/assets/open-connector/catalog/apps/dialpad_wfm.json +6 -3
- package/assets/open-connector/catalog/apps/diffbot.json +4 -2
- package/assets/open-connector/catalog/apps/diffy.json +2 -1
- package/assets/open-connector/catalog/apps/digistore24.json +208 -104
- package/assets/open-connector/catalog/apps/discolike.json +12 -6
- package/assets/open-connector/catalog/apps/discord.json +8 -4
- package/assets/open-connector/catalog/apps/discordbot.json +100 -51
- package/assets/open-connector/catalog/apps/discourse.json +266 -133
- package/assets/open-connector/catalog/apps/dns_filter.json +60 -30
- package/assets/open-connector/catalog/apps/docker_hub.json +314 -157
- package/assets/open-connector/catalog/apps/docmosis.json +120 -60
- package/assets/open-connector/catalog/apps/docparser.json +54 -27
- package/assets/open-connector/catalog/apps/docraptor.json +4 -2
- package/assets/open-connector/catalog/apps/docsautomator.json +118 -59
- package/assets/open-connector/catalog/apps/docsbot_ai.json +86 -43
- package/assets/open-connector/catalog/apps/docsumo.json +124 -62
- package/assets/open-connector/catalog/apps/documenso.json +32 -16
- package/assets/open-connector/catalog/apps/document360.json +282 -141
- package/assets/open-connector/catalog/apps/docuseal.json +48 -24
- package/assets/open-connector/catalog/apps/doppler_marketing_automation.json +110 -55
- package/assets/open-connector/catalog/apps/dovetail.json +4 -2
- package/assets/open-connector/catalog/apps/drata.json +22 -11
- package/assets/open-connector/catalog/apps/drimify.json +160 -80
- package/assets/open-connector/catalog/apps/dropbox.json +540 -270
- package/assets/open-connector/catalog/apps/dropbox_sign.json +96 -48
- package/assets/open-connector/catalog/apps/dropcontact.json +8 -4
- package/assets/open-connector/catalog/apps/dub.json +202 -101
- package/assets/open-connector/catalog/apps/dynalist.json +880 -0
- package/assets/open-connector/catalog/apps/dynapictures.json +12 -6
- package/assets/open-connector/catalog/apps/dynatrace.json +34 -17
- package/assets/open-connector/catalog/apps/e2b.json +20 -10
- package/assets/open-connector/catalog/apps/eagle_doc.json +64 -32
- package/assets/open-connector/catalog/apps/easy_peasy_ai.json +361 -0
- package/assets/open-connector/catalog/apps/echotik.json +32 -16
- package/assets/open-connector/catalog/apps/edenai.json +8 -4
- package/assets/open-connector/catalog/apps/edgeone_makers.json +935 -0
- package/assets/open-connector/catalog/apps/elasticemail.json +40 -20
- package/assets/open-connector/catalog/apps/elasticsearch.json +164 -82
- package/assets/open-connector/catalog/apps/elevenlabs.json +24 -12
- package/assets/open-connector/catalog/apps/elevio.json +12 -6
- package/assets/open-connector/catalog/apps/elorus.json +12 -6
- package/assets/open-connector/catalog/apps/emaillistverify.json +12 -6
- package/assets/open-connector/catalog/apps/emailoctopus.json +12 -6
- package/assets/open-connector/catalog/apps/embase.json +14 -7
- package/assets/open-connector/catalog/apps/encodian.json +30 -15
- package/assets/open-connector/catalog/apps/energy_performance_certificates.json +6 -3
- package/assets/open-connector/catalog/apps/enigma.json +2 -1
- package/assets/open-connector/catalog/apps/enormail.json +411 -0
- package/assets/open-connector/catalog/apps/envoy.json +44 -22
- package/assets/open-connector/catalog/apps/eodhd_apis.json +142 -71
- package/assets/open-connector/catalog/apps/eraser.json +10 -5
- package/assets/open-connector/catalog/apps/esa.json +44 -22
- package/assets/open-connector/catalog/apps/esignatures_io.json +86 -43
- package/assets/open-connector/catalog/apps/espocrm.json +12 -6
- package/assets/open-connector/catalog/apps/europe_pmc.json +344 -172
- package/assets/open-connector/catalog/apps/eventzilla.json +154 -77
- package/assets/open-connector/catalog/apps/eversign.json +126 -63
- package/assets/open-connector/catalog/apps/exa.json +18 -9
- package/assets/open-connector/catalog/apps/excel.json +12 -6
- package/assets/open-connector/catalog/apps/exhibitday.json +6 -3
- package/assets/open-connector/catalog/apps/explorium.json +498 -0
- package/assets/open-connector/catalog/apps/expofp.json +2 -1
- package/assets/open-connector/catalog/apps/fairing.json +22 -11
- package/assets/open-connector/catalog/apps/faktoora.json +100 -50
- package/assets/open-connector/catalog/apps/fal_ai.json +14 -7
- package/assets/open-connector/catalog/apps/favro.json +12 -6
- package/assets/open-connector/catalog/apps/featurebase.json +10 -5
- package/assets/open-connector/catalog/apps/feedier.json +40 -20
- package/assets/open-connector/catalog/apps/feishu.json +398 -226
- package/assets/open-connector/catalog/apps/feishu_app_bot.json +456 -73
- package/assets/open-connector/catalog/apps/fellow.json +48 -24
- package/assets/open-connector/catalog/apps/felt.json +2 -1
- package/assets/open-connector/catalog/apps/fengshui.json +2424 -0
- package/assets/open-connector/catalog/apps/fern.json +4 -2
- package/assets/open-connector/catalog/apps/ffhub.json +36 -18
- package/assets/open-connector/catalog/apps/fiber_ai.json +6 -3
- package/assets/open-connector/catalog/apps/fidel_api.json +258 -129
- package/assets/open-connector/catalog/apps/figma.json +4 -2
- package/assets/open-connector/catalog/apps/fillout.json +2 -1
- package/assets/open-connector/catalog/apps/findymail.json +2 -1
- package/assets/open-connector/catalog/apps/finlight.json +551 -0
- package/assets/open-connector/catalog/apps/firecrawl.json +18 -4
- package/assets/open-connector/catalog/apps/fireflies.json +2 -1
- package/assets/open-connector/catalog/apps/firehydrant.json +276 -138
- package/assets/open-connector/catalog/apps/firstbase.json +8 -4
- package/assets/open-connector/catalog/apps/fivetran.json +6 -3
- package/assets/open-connector/catalog/apps/float.json +108 -54
- package/assets/open-connector/catalog/apps/flomo.json +58 -29
- package/assets/open-connector/catalog/apps/flotiq.json +379 -0
- package/assets/open-connector/catalog/apps/flowiseai.json +20 -10
- package/assets/open-connector/catalog/apps/fluxguard.json +42 -21
- package/assets/open-connector/catalog/apps/folk.json +144 -72
- package/assets/open-connector/catalog/apps/fomo.json +138 -69
- package/assets/open-connector/catalog/apps/forem.json +190 -95
- package/assets/open-connector/catalog/apps/formaloo.json +8 -4
- package/assets/open-connector/catalog/apps/formbricks.json +44 -22
- package/assets/open-connector/catalog/apps/formcarry.json +4 -2
- package/assets/open-connector/catalog/apps/formspree.json +16 -8
- package/assets/open-connector/catalog/apps/formstack.json +52 -26
- package/assets/open-connector/catalog/apps/framejet.json +2 -1
- package/assets/open-connector/catalog/apps/fraudlabspro.json +16 -8
- package/assets/open-connector/catalog/apps/freeastroapi.json +2986 -0
- package/assets/open-connector/catalog/apps/freepik.json +4 -2
- package/assets/open-connector/catalog/apps/freshdesk.json +2 -1
- package/assets/open-connector/catalog/apps/freshsales.json +2 -1
- package/assets/open-connector/catalog/apps/freshservice.json +6 -3
- package/assets/open-connector/catalog/apps/freshstatus.json +14 -7
- package/assets/open-connector/catalog/apps/freshteam.json +56 -28
- package/assets/open-connector/catalog/apps/front.json +22 -11
- package/assets/open-connector/catalog/apps/full_contact.json +100 -50
- package/assets/open-connector/catalog/apps/fullenrich.json +4 -2
- package/assets/open-connector/catalog/apps/fundzwatch.json +2 -1
- package/assets/open-connector/catalog/apps/fusion-api.json +8 -8
- package/assets/open-connector/catalog/apps/futunn.json +36 -18
- package/assets/open-connector/catalog/apps/fuxin.json +76 -38
- package/assets/open-connector/catalog/apps/fxmacrodata.json +672 -0
- package/assets/open-connector/catalog/apps/gagelist.json +114 -57
- package/assets/open-connector/catalog/apps/gainsight_nxt.json +14 -7
- package/assets/open-connector/catalog/apps/gamma.json +52 -26
- package/assets/open-connector/catalog/apps/gangtise.json +120 -60
- package/assets/open-connector/catalog/apps/gatherup.json +6 -3
- package/assets/open-connector/catalog/apps/geckoboard.json +2 -1
- package/assets/open-connector/catalog/apps/gem.json +24 -12
- package/assets/open-connector/catalog/apps/gender_api.json +8 -4
- package/assets/open-connector/catalog/apps/genderize.json +4 -2
- package/assets/open-connector/catalog/apps/generic_imap.json +74 -37
- package/assets/open-connector/catalog/apps/geoapify.json +2 -1
- package/assets/open-connector/catalog/apps/getnote.json +112 -56
- package/assets/open-connector/catalog/apps/getprospect.json +40 -20
- package/assets/open-connector/catalog/apps/getresponse.json +176 -88
- package/assets/open-connector/catalog/apps/getyoutubetranscript.json +415 -0
- package/assets/open-connector/catalog/apps/ghost.json +18 -9
- package/assets/open-connector/catalog/apps/gift_up.json +438 -219
- package/assets/open-connector/catalog/apps/giphy.json +96 -48
- package/assets/open-connector/catalog/apps/gist.json +52 -26
- package/assets/open-connector/catalog/apps/gitea.json +364 -182
- package/assets/open-connector/catalog/apps/gitee.json +30 -15
- package/assets/open-connector/catalog/apps/github.json +277 -1
- package/assets/open-connector/catalog/apps/gitlab.json +283 -79
- package/assets/open-connector/catalog/apps/gladia.json +4 -2
- package/assets/open-connector/catalog/apps/gleap.json +4 -2
- package/assets/open-connector/catalog/apps/glyphic.json +88 -44
- package/assets/open-connector/catalog/apps/gmail.json +1989 -196
- package/assets/open-connector/catalog/apps/goody.json +4 -2
- package/assets/open-connector/catalog/apps/google_analytics.json +552 -276
- package/assets/open-connector/catalog/apps/google_bigquery.json +10 -5
- package/assets/open-connector/catalog/apps/google_search_console.json +46 -23
- package/assets/open-connector/catalog/apps/googleads.json +20 -18
- package/assets/open-connector/catalog/apps/googlecalendar.json +212 -0
- package/assets/open-connector/catalog/apps/googlechat.json +36 -18
- package/assets/open-connector/catalog/apps/googledocs.json +45 -22
- package/assets/open-connector/catalog/apps/googledrive.json +480 -0
- package/assets/open-connector/catalog/apps/googleforms.json +2 -1
- package/assets/open-connector/catalog/apps/googlemeet.json +14 -7
- package/assets/open-connector/catalog/apps/googlephotos.json +120 -60
- package/assets/open-connector/catalog/apps/googlesheets.json +195 -25
- package/assets/open-connector/catalog/apps/googleslides.json +1 -0
- package/assets/open-connector/catalog/apps/googletasks.json +240 -120
- package/assets/open-connector/catalog/apps/govee.json +2 -1
- package/assets/open-connector/catalog/apps/gptzero.json +42 -21
- package/assets/open-connector/catalog/apps/grafana.json +154 -77
- package/assets/open-connector/catalog/apps/grafana_cloud.json +50 -25
- package/assets/open-connector/catalog/apps/granola.json +42 -21
- package/assets/open-connector/catalog/apps/graphhopper.json +6 -3
- package/assets/open-connector/catalog/apps/greenhouse.json +54 -27
- package/assets/open-connector/catalog/apps/greip.json +405 -0
- package/assets/open-connector/catalog/apps/greynoise.json +118 -0
- package/assets/open-connector/catalog/apps/griptape.json +8 -4
- package/assets/open-connector/catalog/apps/grist.json +24 -12
- package/assets/open-connector/catalog/apps/groqcloud.json +4 -2
- package/assets/open-connector/catalog/apps/growsurf.json +943 -0
- package/assets/open-connector/catalog/apps/gtmetrix.json +12 -6
- package/assets/open-connector/catalog/apps/gumloop.json +2 -1
- package/assets/open-connector/catalog/apps/gumroad.json +8 -4
- package/assets/open-connector/catalog/apps/habitica.json +156 -78
- package/assets/open-connector/catalog/apps/hackernews.json +6 -3
- package/assets/open-connector/catalog/apps/hackerrank_work.json +12 -6
- package/assets/open-connector/catalog/apps/hamsa.json +4 -2
- package/assets/open-connector/catalog/apps/handelsregister_ai.json +4 -2
- package/assets/open-connector/catalog/apps/happy_scribe.json +58 -29
- package/assets/open-connector/catalog/apps/harmonic_ai.json +4 -2
- package/assets/open-connector/catalog/apps/harvest.json +178 -89
- package/assets/open-connector/catalog/apps/hashnode.json +160 -80
- package/assets/open-connector/catalog/apps/haveibeenpwned.json +14 -7
- package/assets/open-connector/catalog/apps/headout.json +190 -95
- package/assets/open-connector/catalog/apps/healthchecks_io.json +2 -1
- package/assets/open-connector/catalog/apps/heartbeat.json +12 -6
- package/assets/open-connector/catalog/apps/helloleads.json +20 -10
- package/assets/open-connector/catalog/apps/helpdesk.json +18 -9
- package/assets/open-connector/catalog/apps/helpscout.json +36 -18
- package/assets/open-connector/catalog/apps/helpscout_docs.json +30 -15
- package/assets/open-connector/catalog/apps/hex.json +18 -9
- package/assets/open-connector/catalog/apps/heygen.json +30 -15
- package/assets/open-connector/catalog/apps/heyreach.json +8 -4
- package/assets/open-connector/catalog/apps/heyy.json +30 -15
- package/assets/open-connector/catalog/apps/heyzine.json +42 -21
- package/assets/open-connector/catalog/apps/higgsfield_ai.json +24 -12
- package/assets/open-connector/catalog/apps/highergov.json +32 -16
- package/assets/open-connector/catalog/apps/hithink_finance.json +92 -46
- package/assets/open-connector/catalog/apps/holded.json +70 -35
- package/assets/open-connector/catalog/apps/home_assistant.json +44 -22
- package/assets/open-connector/catalog/apps/homebox.json +4 -2
- package/assets/open-connector/catalog/apps/honeycomb.json +76 -38
- package/assets/open-connector/catalog/apps/honeyhive.json +4 -2
- package/assets/open-connector/catalog/apps/hookdeck.json +208 -104
- package/assets/open-connector/catalog/apps/hotjar.json +22 -11
- package/assets/open-connector/catalog/apps/hotspotsystem.json +222 -111
- package/assets/open-connector/catalog/apps/httpsms.json +6 -3
- package/assets/open-connector/catalog/apps/hub_planner.json +18 -9
- package/assets/open-connector/catalog/apps/hubspot.json +8 -4
- package/assets/open-connector/catalog/apps/huggingface.json +4 -2
- package/assets/open-connector/catalog/apps/humanitix.json +2 -1
- package/assets/open-connector/catalog/apps/huodingdong_mcp.json +140 -0
- package/assets/open-connector/catalog/apps/hybrid_analysis.json +4 -2
- package/assets/open-connector/catalog/apps/hyperbrowser.json +6 -3
- package/assets/open-connector/catalog/apps/icypeas.json +30 -15
- package/assets/open-connector/catalog/apps/ima.json +144 -72
- package/assets/open-connector/catalog/apps/imgbb.json +4 -2
- package/assets/open-connector/catalog/apps/imgix.json +18 -9
- package/assets/open-connector/catalog/apps/incident_io.json +78 -39
- package/assets/open-connector/catalog/apps/indeed.json +4 -2
- package/assets/open-connector/catalog/apps/indexed.json +1152 -0
- package/assets/open-connector/catalog/apps/indiegogo.json +4 -2
- package/assets/open-connector/catalog/apps/influxdb_cloud.json +2 -1
- package/assets/open-connector/catalog/apps/insites.json +4 -2
- package/assets/open-connector/catalog/apps/instabot.json +28 -14
- package/assets/open-connector/catalog/apps/instantly_ai.json +96 -48
- package/assets/open-connector/catalog/apps/instatus.json +92 -46
- package/assets/open-connector/catalog/apps/intercom.json +92 -46
- package/assets/open-connector/catalog/apps/interzoid.json +70 -35
- package/assets/open-connector/catalog/apps/intrinio.json +4 -2
- package/assets/open-connector/catalog/apps/invoice_ninja.json +134 -67
- package/assets/open-connector/catalog/apps/ipgeolocation_io.json +108 -54
- package/assets/open-connector/catalog/apps/ipqualityscore.json +78 -39
- package/assets/open-connector/catalog/apps/issue_badge.json +468 -0
- package/assets/open-connector/catalog/apps/ixspy.json +116 -58
- package/assets/open-connector/catalog/apps/jamie.json +38 -19
- package/assets/open-connector/catalog/apps/jibble.json +12 -6
- package/assets/open-connector/catalog/apps/jigsawstack.json +40 -20
- package/assets/open-connector/catalog/apps/jiminny.json +6 -3
- package/assets/open-connector/catalog/apps/jin10.json +22 -11
- package/assets/open-connector/catalog/apps/jira.json +6 -3
- package/assets/open-connector/catalog/apps/jumpcloud.json +4 -2
- package/assets/open-connector/catalog/apps/jumpserver.json +24 -12
- package/assets/open-connector/catalog/apps/junglescout.json +124 -62
- package/assets/open-connector/catalog/apps/juniper_mist.json +54 -27
- package/assets/open-connector/catalog/apps/justoneapi.json +22966 -0
- package/assets/open-connector/catalog/apps/kadoa.json +4 -2
- package/assets/open-connector/catalog/apps/kagi.json +120 -0
- package/assets/open-connector/catalog/apps/kandji.json +42 -21
- package/assets/open-connector/catalog/apps/karakeep.json +626 -313
- package/assets/open-connector/catalog/apps/keepa.json +354 -177
- package/assets/open-connector/catalog/apps/kenjo.json +669 -0
- package/assets/open-connector/catalog/apps/kernel.json +42 -21
- package/assets/open-connector/catalog/apps/keyword.json +10 -5
- package/assets/open-connector/catalog/apps/keyzy.json +352 -0
- package/assets/open-connector/catalog/apps/kickofflabs.json +171 -0
- package/assets/open-connector/catalog/apps/kintone.json +54 -27
- package/assets/open-connector/catalog/apps/kit.json +392 -196
- package/assets/open-connector/catalog/apps/klangio.json +2 -1
- package/assets/open-connector/catalog/apps/klaviyo.json +18 -9
- package/assets/open-connector/catalog/apps/klazify.json +300 -150
- package/assets/open-connector/catalog/apps/knack.json +8 -4
- package/assets/open-connector/catalog/apps/knock.json +30 -15
- package/assets/open-connector/catalog/apps/knowbe4.json +78 -39
- package/assets/open-connector/catalog/apps/kobotoolbox.json +30 -15
- package/assets/open-connector/catalog/apps/komari.json +6 -3
- package/assets/open-connector/catalog/apps/kommo.json +304 -152
- package/assets/open-connector/catalog/apps/kontent_ai.json +62 -31
- package/assets/open-connector/catalog/apps/krispcall.json +138 -69
- package/assets/open-connector/catalog/apps/kuaidi100.json +10 -5
- package/assets/open-connector/catalog/apps/kuaimai.json +24 -12
- package/assets/open-connector/catalog/apps/kustomer.json +112 -56
- package/assets/open-connector/catalog/apps/la_growth_machine.json +2 -1
- package/assets/open-connector/catalog/apps/label_studio.json +30 -15
- package/assets/open-connector/catalog/apps/landbot.json +2 -1
- package/assets/open-connector/catalog/apps/langsmith.json +126 -63
- package/assets/open-connector/catalog/apps/laravel_cloud.json +172 -86
- package/assets/open-connector/catalog/apps/latchshot.json +6 -3
- package/assets/open-connector/catalog/apps/lattice.json +8 -4
- package/assets/open-connector/catalog/apps/launch_darkly.json +124 -62
- package/assets/open-connector/catalog/apps/leadiq.json +26 -13
- package/assets/open-connector/catalog/apps/leadmagic.json +104 -52
- package/assets/open-connector/catalog/apps/leexi.json +216 -108
- package/assets/open-connector/catalog/apps/leiga.json +58 -29
- package/assets/open-connector/catalog/apps/leonardo_ai.json +12 -6
- package/assets/open-connector/catalog/apps/lessonspace.json +24 -12
- package/assets/open-connector/catalog/apps/lever.json +6 -3
- package/assets/open-connector/catalog/apps/lexoffice.json +8 -4
- package/assets/open-connector/catalog/apps/lifx.json +8 -4
- package/assets/open-connector/catalog/apps/lightfield.json +48 -24
- package/assets/open-connector/catalog/apps/linear.json +154 -19
- package/assets/open-connector/catalog/apps/linear_mcp.json +6 -3
- package/assets/open-connector/catalog/apps/linguapop.json +4 -2
- package/assets/open-connector/catalog/apps/lingvanex_translation_api.json +10 -5
- package/assets/open-connector/catalog/apps/linkfox.json +458 -229
- package/assets/open-connector/catalog/apps/linkly.json +260 -130
- package/assets/open-connector/catalog/apps/linux_do.json +332 -166
- package/assets/open-connector/catalog/apps/listennotes.json +24 -12
- package/assets/open-connector/catalog/apps/litellm.json +824 -0
- package/assets/open-connector/catalog/apps/liveagent.json +196 -98
- package/assets/open-connector/catalog/apps/livesession.json +12 -6
- package/assets/open-connector/catalog/apps/lodgify.json +36 -18
- package/assets/open-connector/catalog/apps/lokalise.json +6 -3
- package/assets/open-connector/catalog/apps/loomio.json +58 -29
- package/assets/open-connector/catalog/apps/loop_returns.json +112 -56
- package/assets/open-connector/catalog/apps/loops.json +8 -4
- package/assets/open-connector/catalog/apps/loyverse.json +10 -5
- package/assets/open-connector/catalog/apps/luckin_coffee.json +40 -20
- package/assets/open-connector/catalog/apps/luma.json +40 -20
- package/assets/open-connector/catalog/apps/lumos.json +32 -16
- package/assets/open-connector/catalog/apps/magileads.json +10 -5
- package/assets/open-connector/catalog/apps/mailbluster.json +6 -3
- package/assets/open-connector/catalog/apps/mailbox_validator.json +22 -11
- package/assets/open-connector/catalog/apps/mailboxlayer.json +2 -1
- package/assets/open-connector/catalog/apps/mailcheck.json +20 -10
- package/assets/open-connector/catalog/apps/mailcoach.json +140 -70
- package/assets/open-connector/catalog/apps/mailgun.json +20 -10
- package/assets/open-connector/catalog/apps/mailjet.json +40 -20
- package/assets/open-connector/catalog/apps/mailosaur.json +62 -31
- package/assets/open-connector/catalog/apps/mails_so.json +28 -14
- package/assets/open-connector/catalog/apps/mailsoftly.json +116 -58
- package/assets/open-connector/catalog/apps/maintainx.json +116 -58
- package/assets/open-connector/catalog/apps/manatal.json +16 -8
- package/assets/open-connector/catalog/apps/manus.json +4 -2
- package/assets/open-connector/catalog/apps/mapbox.json +4 -2
- package/assets/open-connector/catalog/apps/maple_billing.json +108 -54
- package/assets/open-connector/catalog/apps/marketstack.json +146 -73
- package/assets/open-connector/catalog/apps/mautic.json +12 -6
- package/assets/open-connector/catalog/apps/mcdonalds_cn.json +2 -1
- package/assets/open-connector/catalog/apps/mediastack.json +34 -17
- package/assets/open-connector/catalog/apps/meet_geek.json +6 -3
- package/assets/open-connector/catalog/apps/mem.json +66 -33
- package/assets/open-connector/catalog/apps/mem0.json +68 -18
- package/assets/open-connector/catalog/apps/memberstack.json +42 -21
- package/assets/open-connector/catalog/apps/membervault.json +8 -4
- package/assets/open-connector/catalog/apps/memento_database.json +810 -0
- package/assets/open-connector/catalog/apps/memos.json +10 -5
- package/assets/open-connector/catalog/apps/mendeley.json +16 -8
- package/assets/open-connector/catalog/apps/meta.json +74 -37
- package/assets/open-connector/catalog/apps/metabase.json +44 -22
- package/assets/open-connector/catalog/apps/metaso.json +44 -22
- package/assets/open-connector/catalog/apps/metatraderapi.json +16 -8
- package/assets/open-connector/catalog/apps/metronome.json +56 -28
- package/assets/open-connector/catalog/apps/microsoft_teams.json +96 -48
- package/assets/open-connector/catalog/apps/mindbody.json +22 -11
- package/assets/open-connector/catalog/apps/minerstat.json +28 -14
- package/assets/open-connector/catalog/apps/mingdao.json +18 -9
- package/assets/open-connector/catalog/apps/minimax.json +8 -4
- package/assets/open-connector/catalog/apps/miro.json +14 -7
- package/assets/open-connector/catalog/apps/missive.json +28 -14
- package/assets/open-connector/catalog/apps/mixmax.json +4 -2
- package/assets/open-connector/catalog/apps/mixpanel.json +8 -4
- package/assets/open-connector/catalog/apps/mktindex.json +34 -17
- package/assets/open-connector/catalog/apps/mobile_text_alerts.json +8 -4
- package/assets/open-connector/catalog/apps/moco.json +120 -60
- package/assets/open-connector/catalog/apps/moesif.json +68 -34
- package/assets/open-connector/catalog/apps/momentum_io.json +68 -34
- package/assets/open-connector/catalog/apps/monday.json +8 -4
- package/assets/open-connector/catalog/apps/mongo_db_atlas_administration.json +60 -30
- package/assets/open-connector/catalog/apps/moonclerk.json +312 -156
- package/assets/open-connector/catalog/apps/moorcheh.json +6 -3
- package/assets/open-connector/catalog/apps/moosend.json +42 -21
- package/assets/open-connector/catalog/apps/mopinion.json +24 -12
- package/assets/open-connector/catalog/apps/more_trees.json +8 -4
- package/assets/open-connector/catalog/apps/motion.json +4 -2
- package/assets/open-connector/catalog/apps/msg91.json +14 -7
- package/assets/open-connector/catalog/apps/mumble.json +18 -9
- package/assets/open-connector/catalog/apps/mux.json +26 -13
- package/assets/open-connector/catalog/apps/mx.json +50 -25
- package/assets/open-connector/catalog/apps/mx_toolbox.json +200 -100
- package/assets/open-connector/catalog/apps/n8n.json +60 -30
- package/assets/open-connector/catalog/apps/namely.json +16 -8
- package/assets/open-connector/catalog/apps/nango.json +10 -5
- package/assets/open-connector/catalog/apps/nasdaq.json +62 -31
- package/assets/open-connector/catalog/apps/nationalize.json +190 -0
- package/assets/open-connector/catalog/apps/navigatr.json +803 -0
- package/assets/open-connector/catalog/apps/needle.json +12 -6
- package/assets/open-connector/catalog/apps/neetocal.json +4 -2
- package/assets/open-connector/catalog/apps/neetodesk.json +12 -6
- package/assets/open-connector/catalog/apps/neon.json +14 -7
- package/assets/open-connector/catalog/apps/netease_enterprise_mail.json +74 -37
- package/assets/open-connector/catalog/apps/netease_mail.json +74 -37
- package/assets/open-connector/catalog/apps/netlify.json +18 -9
- package/assets/open-connector/catalog/apps/new_relic.json +28 -14
- package/assets/open-connector/catalog/apps/news_api.json +30 -15
- package/assets/open-connector/catalog/apps/newsdata_io.json +24 -12
- package/assets/open-connector/catalog/apps/next_dns.json +12 -6
- package/assets/open-connector/catalog/apps/ngrok.json +8 -4
- package/assets/open-connector/catalog/apps/nightfall_ai.json +322 -0
- package/assets/open-connector/catalog/apps/nimble.json +2 -1
- package/assets/open-connector/catalog/apps/ninjapear.json +72 -36
- package/assets/open-connector/catalog/apps/ninox.json +58 -29
- package/assets/open-connector/catalog/apps/nocodb.json +12 -6
- package/assets/open-connector/catalog/apps/nocrm_io.json +98 -49
- package/assets/open-connector/catalog/apps/northbeam.json +4 -2
- package/assets/open-connector/catalog/apps/notion.json +178 -18
- package/assets/open-connector/catalog/apps/novu.json +90 -45
- package/assets/open-connector/catalog/apps/nozbe_teams.json +276 -138
- package/assets/open-connector/catalog/apps/npm.json +2 -1
- package/assets/open-connector/catalog/apps/nutrient_document_web_services_api.json +18 -9
- package/assets/open-connector/catalog/apps/nylas.json +58 -29
- package/assets/open-connector/catalog/apps/nyne_ai.json +46 -23
- package/assets/open-connector/catalog/apps/ocr_web_service.json +10 -5
- package/assets/open-connector/catalog/apps/ocrspace.json +10 -5
- package/assets/open-connector/catalog/apps/octave.json +18 -9
- package/assets/open-connector/catalog/apps/oksign.json +2 -1
- package/assets/open-connector/catalog/apps/okta.json +112 -56
- package/assets/open-connector/catalog/apps/omnisend.json +8 -4
- package/assets/open-connector/catalog/apps/oncehub.json +18 -9
- package/assets/open-connector/catalog/apps/one_drive.json +191 -3
- package/assets/open-connector/catalog/apps/onedesk.json +14 -7
- package/assets/open-connector/catalog/apps/onfleet.json +2 -1
- package/assets/open-connector/catalog/apps/onlyoffice_docspace.json +20 -10
- package/assets/open-connector/catalog/apps/oomol_console.json +954 -31
- package/assets/open-connector/catalog/apps/open_hands.json +50 -25
- package/assets/open-connector/catalog/apps/openai.json +16 -8
- package/assets/open-connector/catalog/apps/openalex.json +128 -64
- package/assets/open-connector/catalog/apps/openfda.json +28 -14
- package/assets/open-connector/catalog/apps/opengraph_io.json +4 -2
- package/assets/open-connector/catalog/apps/openpagerank.json +2 -1
- package/assets/open-connector/catalog/apps/opensea.json +84 -42
- package/assets/open-connector/catalog/apps/openstatus.json +16 -8
- package/assets/open-connector/catalog/apps/opper.json +352 -0
- package/assets/open-connector/catalog/apps/optimoroute.json +32 -16
- package/assets/open-connector/catalog/apps/oracle_cloud.json +98 -49
- package/assets/open-connector/catalog/apps/orcid.json +2 -1
- package/assets/open-connector/catalog/apps/ordinal.json +4 -2
- package/assets/open-connector/catalog/apps/ortto.json +20 -10
- package/assets/open-connector/catalog/apps/ossinsight.json +60 -30
- package/assets/open-connector/catalog/apps/otter_ai.json +26 -13
- package/assets/open-connector/catalog/apps/oura.json +46 -23
- package/assets/open-connector/catalog/apps/outline.json +50 -25
- package/assets/open-connector/catalog/apps/outlook.json +190 -4
- package/assets/open-connector/catalog/apps/outlook_calendar.json +32 -16
- package/assets/open-connector/catalog/apps/paddle.json +42 -21
- package/assets/open-connector/catalog/apps/pandadoc.json +8 -4
- package/assets/open-connector/catalog/apps/paperform.json +234 -117
- package/assets/open-connector/catalog/apps/paperless_ngx.json +1358 -679
- package/assets/open-connector/catalog/apps/papertrail.json +8 -4
- package/assets/open-connector/catalog/apps/paradym.json +34 -17
- package/assets/open-connector/catalog/apps/parallel.json +62 -31
- package/assets/open-connector/catalog/apps/parsehub.json +30 -15
- package/assets/open-connector/catalog/apps/parsera.json +2 -1
- package/assets/open-connector/catalog/apps/parseur.json +48 -24
- package/assets/open-connector/catalog/apps/partner_stack_partner.json +42 -21
- package/assets/open-connector/catalog/apps/partnerstack.json +100 -50
- package/assets/open-connector/catalog/apps/passcreator.json +10 -5
- package/assets/open-connector/catalog/apps/payhip.json +110 -55
- package/assets/open-connector/catalog/apps/paystack.json +14 -7
- package/assets/open-connector/catalog/apps/pdf_api_io.json +6 -3
- package/assets/open-connector/catalog/apps/pdf_co.json +136 -68
- package/assets/open-connector/catalog/apps/pdfless.json +16 -8
- package/assets/open-connector/catalog/apps/pdfmonkey.json +94 -47
- package/assets/open-connector/catalog/apps/pendo.json +2 -1
- package/assets/open-connector/catalog/apps/peopledatalabs.json +88 -44
- package/assets/open-connector/catalog/apps/perdoo.json +80 -40
- package/assets/open-connector/catalog/apps/perigon.json +40 -20
- package/assets/open-connector/catalog/apps/persona.json +52 -26
- package/assets/open-connector/catalog/apps/personal_ai.json +38 -19
- package/assets/open-connector/catalog/apps/phantombuster.json +30 -15
- package/assets/open-connector/catalog/apps/phonely.json +8 -4
- package/assets/open-connector/catalog/apps/pi_hole.json +56 -28
- package/assets/open-connector/catalog/apps/picky_assist.json +189 -0
- package/assets/open-connector/catalog/apps/pilvio.json +80 -40
- package/assets/open-connector/catalog/apps/pinata.json +84 -42
- package/assets/open-connector/catalog/apps/pinecone.json +20 -10
- package/assets/open-connector/catalog/apps/pingdom.json +2 -1
- package/assets/open-connector/catalog/apps/pipedream.json +66 -33
- package/assets/open-connector/catalog/apps/pixellab.json +8 -4
- package/assets/open-connector/catalog/apps/placid.json +24 -12
- package/assets/open-connector/catalog/apps/plain.json +28 -14
- package/assets/open-connector/catalog/apps/planetscale.json +12 -6
- package/assets/open-connector/catalog/apps/planhat.json +104 -52
- package/assets/open-connector/catalog/apps/planly.json +738 -0
- package/assets/open-connector/catalog/apps/plasmic.json +6 -3
- package/assets/open-connector/catalog/apps/platerecognizer.json +6 -3
- package/assets/open-connector/catalog/apps/plisio.json +156 -78
- package/assets/open-connector/catalog/apps/plunk.json +12 -6
- package/assets/open-connector/catalog/apps/pointagram.json +848 -0
- package/assets/open-connector/catalog/apps/polygon_io.json +548 -274
- package/assets/open-connector/catalog/apps/positionstack.json +44 -22
- package/assets/open-connector/catalog/apps/postalytics.json +114 -57
- package/assets/open-connector/catalog/apps/posthog.json +1286 -643
- package/assets/open-connector/catalog/apps/practitest.json +8 -4
- package/assets/open-connector/catalog/apps/predis_ai.json +16 -8
- package/assets/open-connector/catalog/apps/prerender.json +8 -4
- package/assets/open-connector/catalog/apps/pretix.json +20 -10
- package/assets/open-connector/catalog/apps/printavo.json +150 -75
- package/assets/open-connector/catalog/apps/product_fruits.json +28 -14
- package/assets/open-connector/catalog/apps/productboard.json +28 -14
- package/assets/open-connector/catalog/apps/productive.json +6 -3
- package/assets/open-connector/catalog/apps/productlane.json +134 -67
- package/assets/open-connector/catalog/apps/promptlayer.json +112 -56
- package/assets/open-connector/catalog/apps/prospeo.json +22 -11
- package/assets/open-connector/catalog/apps/pubmed.json +168 -84
- package/assets/open-connector/catalog/apps/pushinator.json +120 -0
- package/assets/open-connector/catalog/apps/pylon.json +36 -18
- package/assets/open-connector/catalog/apps/qdrant.json +20 -10
- package/assets/open-connector/catalog/apps/qichacha.json +72 -36
- package/assets/open-connector/catalog/apps/qq_mail.json +74 -37
- package/assets/open-connector/catalog/apps/quaderno.json +178 -89
- package/assets/open-connector/catalog/apps/quentn.json +118 -59
- package/assets/open-connector/catalog/apps/quickbooks.json +10351 -0
- package/assets/open-connector/catalog/apps/quickchart.json +2 -1
- package/assets/open-connector/catalog/apps/quintadb.json +4 -2
- package/assets/open-connector/catalog/apps/quipteams.json +4 -2
- package/assets/open-connector/catalog/apps/quo.json +38 -19
- package/assets/open-connector/catalog/apps/ragie.json +10 -5
- package/assets/open-connector/catalog/apps/railway.json +44 -22
- package/assets/open-connector/catalog/apps/raisely.json +8 -4
- package/assets/open-connector/catalog/apps/rawg.json +48 -24
- package/assets/open-connector/catalog/apps/razorpay.json +146 -73
- package/assets/open-connector/catalog/apps/readwise.json +152 -76
- package/assets/open-connector/catalog/apps/realphonevalidation.json +14 -7
- package/assets/open-connector/catalog/apps/recallai.json +10 -5
- package/assets/open-connector/catalog/apps/recharge.json +20 -10
- package/assets/open-connector/catalog/apps/recruitee.json +48 -24
- package/assets/open-connector/catalog/apps/recruiterflow.json +10 -5
- package/assets/open-connector/catalog/apps/recurly.json +194 -97
- package/assets/open-connector/catalog/apps/reddit.json +10 -5
- package/assets/open-connector/catalog/apps/reducto.json +26 -13
- package/assets/open-connector/catalog/apps/referralhero.json +44 -22
- package/assets/open-connector/catalog/apps/refiner.json +16 -8
- package/assets/open-connector/catalog/apps/render.json +6 -3
- package/assets/open-connector/catalog/apps/renderform.json +72 -36
- package/assets/open-connector/catalog/apps/rentman.json +8 -4
- package/assets/open-connector/catalog/apps/replicate.json +16 -8
- package/assets/open-connector/catalog/apps/resend.json +98 -49
- package/assets/open-connector/catalog/apps/respond_io.json +84 -42
- package/assets/open-connector/catalog/apps/retell_ai.json +134 -105
- package/assets/open-connector/catalog/apps/retently.json +44 -22
- package/assets/open-connector/catalog/apps/revenuecat.json +16 -8
- package/assets/open-connector/catalog/apps/reversecontact.json +4 -2
- package/assets/open-connector/catalog/apps/rewiser.json +6 -3
- package/assets/open-connector/catalog/apps/riddle_quiz_maker.json +6 -3
- package/assets/open-connector/catalog/apps/ringover.json +14 -7
- package/assets/open-connector/catalog/apps/ritekit.json +104 -52
- package/assets/open-connector/catalog/apps/riveter.json +2 -1
- package/assets/open-connector/catalog/apps/roam.json +4 -2
- package/assets/open-connector/catalog/apps/roboflow.json +66 -33
- package/assets/open-connector/catalog/apps/rocket_reach.json +166 -83
- package/assets/open-connector/catalog/apps/rollbar.json +62 -31
- package/assets/open-connector/catalog/apps/rosette_text_analytics.json +46 -23
- package/assets/open-connector/catalog/apps/route4me.json +4 -2
- package/assets/open-connector/catalog/apps/roxyapi.json +5135 -0
- package/assets/open-connector/catalog/apps/runscope.json +2 -1
- package/assets/open-connector/catalog/apps/saas_custom_domains.json +72 -36
- package/assets/open-connector/catalog/apps/salesflare.json +32 -16
- package/assets/open-connector/catalog/apps/salesloft.json +14 -7
- package/assets/open-connector/catalog/apps/samcart.json +24 -12
- package/assets/open-connector/catalog/apps/satismeter.json +64 -32
- package/assets/open-connector/catalog/apps/saucelabs.json +64 -32
- package/assets/open-connector/catalog/apps/scanmalware.json +689 -0
- package/assets/open-connector/catalog/apps/scopus.json +66 -33
- package/assets/open-connector/catalog/apps/scrape_creators.json +4 -2
- package/assets/open-connector/catalog/apps/scrape_do.json +24 -12
- package/assets/open-connector/catalog/apps/scraperapi.json +4 -2
- package/assets/open-connector/catalog/apps/scrapfly.json +20 -10
- package/assets/open-connector/catalog/apps/screendesk.json +56 -28
- package/assets/open-connector/catalog/apps/screenshotbase.json +4 -2
- package/assets/open-connector/catalog/apps/sellersprite.json +414 -207
- package/assets/open-connector/catalog/apps/semantic_scholar.json +76 -38
- package/assets/open-connector/catalog/apps/sendbird.json +10 -5
- package/assets/open-connector/catalog/apps/sendblue.json +649 -0
- package/assets/open-connector/catalog/apps/sender.json +132 -66
- package/assets/open-connector/catalog/apps/sendfox.json +68 -34
- package/assets/open-connector/catalog/apps/sendgrid.json +8 -4
- package/assets/open-connector/catalog/apps/sendmator.json +26 -13
- package/assets/open-connector/catalog/apps/sendspark.json +10 -5
- package/assets/open-connector/catalog/apps/sentry.json +20 -10
- package/assets/open-connector/catalog/apps/serply.json +6 -3
- package/assets/open-connector/catalog/apps/serveravatar.json +32 -16
- package/assets/open-connector/catalog/apps/serwersms_pl.json +577 -0
- package/assets/open-connector/catalog/apps/sevdesk.json +312 -156
- package/assets/open-connector/catalog/apps/sf_express.json +76 -38
- package/assets/open-connector/catalog/apps/ship_bob.json +72 -36
- package/assets/open-connector/catalog/apps/ship_station.json +6 -3
- package/assets/open-connector/catalog/apps/shippo.json +8 -4
- package/assets/open-connector/catalog/apps/shopify.json +18639 -1057
- package/assets/open-connector/catalog/apps/shopify_partner.json +24 -12
- package/assets/open-connector/catalog/apps/shopify_storefront.json +116 -58
- package/assets/open-connector/catalog/apps/shortcut.json +398 -199
- package/assets/open-connector/catalog/apps/shorten_rest.json +2 -1
- package/assets/open-connector/catalog/apps/shortpixel.json +46 -23
- package/assets/open-connector/catalog/apps/shotstack.json +6 -3
- package/assets/open-connector/catalog/apps/signaturely.json +8 -4
- package/assets/open-connector/catalog/apps/simla.json +4 -2
- package/assets/open-connector/catalog/apps/simplelocalize.json +4 -2
- package/assets/open-connector/catalog/apps/simplesat.json +22 -11
- package/assets/open-connector/catalog/apps/simpletexting.json +1015 -0
- package/assets/open-connector/catalog/apps/skio.json +16 -8
- package/assets/open-connector/catalog/apps/skyfire.json +36 -18
- package/assets/open-connector/catalog/apps/skyvern.json +30 -15
- package/assets/open-connector/catalog/apps/slab.json +98 -49
- package/assets/open-connector/catalog/apps/slack.json +544 -37
- package/assets/open-connector/catalog/apps/slackbot.json +356 -34
- package/assets/open-connector/catalog/apps/slickdeals.json +26 -13
- package/assets/open-connector/catalog/apps/slicktext.json +72 -36
- package/assets/open-connector/catalog/apps/slite.json +96 -48
- package/assets/open-connector/catalog/apps/smartlead_ai.json +94 -47
- package/assets/open-connector/catalog/apps/smartrecruiters.json +8 -4
- package/assets/open-connector/catalog/apps/smartsheet.json +126 -63
- package/assets/open-connector/catalog/apps/sms_alert.json +1 -1
- package/assets/open-connector/catalog/apps/smtp2go.json +8 -4
- package/assets/open-connector/catalog/apps/snappy.json +1574 -0
- package/assets/open-connector/catalog/apps/snyk.json +6 -3
- package/assets/open-connector/catalog/apps/social_fetch.json +12 -6
- package/assets/open-connector/catalog/apps/softr.json +28 -14
- package/assets/open-connector/catalog/apps/solarwinds_service_desk.json +2561 -0
- package/assets/open-connector/catalog/apps/sonarcloud.json +46 -23
- package/assets/open-connector/catalog/apps/sorftime.json +66 -33
- package/assets/open-connector/catalog/apps/speedtest_tracker.json +80 -40
- package/assets/open-connector/catalog/apps/spotify.json +46 -43
- package/assets/open-connector/catalog/apps/spyfu.json +4 -2
- package/assets/open-connector/catalog/apps/square.json +8 -4
- package/assets/open-connector/catalog/apps/sslmate_cert_spotter_api.json +10 -5
- package/assets/open-connector/catalog/apps/stack_ai.json +20 -10
- package/assets/open-connector/catalog/apps/stannp.json +8 -4
- package/assets/open-connector/catalog/apps/starton.json +80 -40
- package/assets/open-connector/catalog/apps/statamic.json +6 -3
- package/assets/open-connector/catalog/apps/statista.json +24 -12
- package/assets/open-connector/catalog/apps/statsig.json +12 -6
- package/assets/open-connector/catalog/apps/statuscake.json +8 -4
- package/assets/open-connector/catalog/apps/statuspage.json +36 -18
- package/assets/open-connector/catalog/apps/statuspal.json +22 -11
- package/assets/open-connector/catalog/apps/stealthgpt.json +4 -2
- package/assets/open-connector/catalog/apps/store_leads.json +2 -1
- package/assets/open-connector/catalog/apps/storecensus.json +4 -2
- package/assets/open-connector/catalog/apps/storyblok.json +76 -38
- package/assets/open-connector/catalog/apps/stream_estate.json +10 -5
- package/assets/open-connector/catalog/apps/stripe.json +122 -13
- package/assets/open-connector/catalog/apps/subvisory.json +28 -14
- package/assets/open-connector/catalog/apps/sumup.json +2 -1
- package/assets/open-connector/catalog/apps/sunoapi.json +2 -1
- package/assets/open-connector/catalog/apps/supabase.json +36 -18
- package/assets/open-connector/catalog/apps/supermemory.json +16 -8
- package/assets/open-connector/catalog/apps/supportbee.json +218 -109
- package/assets/open-connector/catalog/apps/surecontact.json +96 -48
- package/assets/open-connector/catalog/apps/survey_monkey.json +12 -6
- package/assets/open-connector/catalog/apps/surveymethods.json +6 -3
- package/assets/open-connector/catalog/apps/tabapi.json +2 -1
- package/assets/open-connector/catalog/apps/taggun.json +36 -18
- package/assets/open-connector/catalog/apps/taiga.json +56 -28
- package/assets/open-connector/catalog/apps/tailscale.json +54 -27
- package/assets/open-connector/catalog/apps/tanium.json +2 -1
- package/assets/open-connector/catalog/apps/tapfiliate.json +224 -112
- package/assets/open-connector/catalog/apps/tave.json +212 -106
- package/assets/open-connector/catalog/apps/tavily.json +4 -2
- package/assets/open-connector/catalog/apps/teable.json +4 -2
- package/assets/open-connector/catalog/apps/teamtailor.json +16 -8
- package/assets/open-connector/catalog/apps/teamup.json +4 -2
- package/assets/open-connector/catalog/apps/telegram.json +142 -2
- package/assets/open-connector/catalog/apps/telnyx.json +2 -1
- package/assets/open-connector/catalog/apps/teltel.json +52 -26
- package/assets/open-connector/catalog/apps/templated.json +94 -47
- package/assets/open-connector/catalog/apps/templatefox.json +14 -7
- package/assets/open-connector/catalog/apps/tencent_docs.json +202 -101
- package/assets/open-connector/catalog/apps/terraform.json +72 -36
- package/assets/open-connector/catalog/apps/textcortex.json +38 -19
- package/assets/open-connector/catalog/apps/textit.json +54 -27
- package/assets/open-connector/catalog/apps/textmagic.json +38 -19
- package/assets/open-connector/catalog/apps/the_cat_api.json +8 -4
- package/assets/open-connector/catalog/apps/the_dog_api.json +8 -4
- package/assets/open-connector/catalog/apps/the_swarm.json +4 -2
- package/assets/open-connector/catalog/apps/thehive.json +4 -2
- package/assets/open-connector/catalog/apps/thehive5.json +4 -2
- package/assets/open-connector/catalog/apps/theirstack.json +26 -13
- package/assets/open-connector/catalog/apps/thesportsdb.json +433 -0
- package/assets/open-connector/catalog/apps/tianapi.json +1654 -0
- package/assets/open-connector/catalog/apps/tianyancha.json +16 -8
- package/assets/open-connector/catalog/apps/tick.json +4 -2
- package/assets/open-connector/catalog/apps/ticket_tailor.json +12 -6
- package/assets/open-connector/catalog/apps/ticketmaster.json +156 -78
- package/assets/open-connector/catalog/apps/tidb.json +62 -31
- package/assets/open-connector/catalog/apps/tikhub.json +62 -31
- package/assets/open-connector/catalog/apps/timebuzzer.json +20 -10
- package/assets/open-connector/catalog/apps/timecamp.json +186 -93
- package/assets/open-connector/catalog/apps/timelinesai.json +60 -30
- package/assets/open-connector/catalog/apps/timelink.json +192 -96
- package/assets/open-connector/catalog/apps/timem_space.json +415 -0
- package/assets/open-connector/catalog/apps/tisane.json +18 -9
- package/assets/open-connector/catalog/apps/tmdb.json +50 -25
- package/assets/open-connector/catalog/apps/todoist.json +38 -19
- package/assets/open-connector/catalog/apps/together_ai.json +4 -2
- package/assets/open-connector/catalog/apps/toggl.json +2 -1
- package/assets/open-connector/catalog/apps/tomba.json +6 -3
- package/assets/open-connector/catalog/apps/tongdaxin.json +34 -17
- package/assets/open-connector/catalog/apps/torii.json +24 -12
- package/assets/open-connector/catalog/apps/trello.json +20 -10
- package/assets/open-connector/catalog/apps/trendshift.json +48 -24
- package/assets/open-connector/catalog/apps/trent.json +4 -2
- package/assets/open-connector/catalog/apps/trilium.json +2 -1
- package/assets/open-connector/catalog/apps/triple_whale.json +18 -9
- package/assets/open-connector/catalog/apps/truvera.json +42 -21
- package/assets/open-connector/catalog/apps/turbot_pipes.json +6 -3
- package/assets/open-connector/catalog/apps/tushare.json +134 -67
- package/assets/open-connector/catalog/apps/twenty_crm.json +2 -1
- package/assets/open-connector/catalog/apps/twilio.json +168 -84
- package/assets/open-connector/catalog/apps/twitterapi_io.json +52 -26
- package/assets/open-connector/catalog/apps/twochat.json +24 -12
- package/assets/open-connector/catalog/apps/typebot.json +24 -12
- package/assets/open-connector/catalog/apps/typesafe_ai.json +2 -1
- package/assets/open-connector/catalog/apps/u301.json +4 -2
- package/assets/open-connector/catalog/apps/umami.json +6 -3
- package/assets/open-connector/catalog/apps/unipile.json +72 -36
- package/assets/open-connector/catalog/apps/unirateapi.json +442 -0
- package/assets/open-connector/catalog/apps/uniswap_api.json +46 -23
- package/assets/open-connector/catalog/apps/unsplash.json +22 -11
- package/assets/open-connector/catalog/apps/unthread.json +24 -12
- package/assets/open-connector/catalog/apps/updown_io.json +96 -48
- package/assets/open-connector/catalog/apps/uploadcare.json +44 -22
- package/assets/open-connector/catalog/apps/upstash_redis.json +2 -1
- package/assets/open-connector/catalog/apps/uptimerobot.json +4 -2
- package/assets/open-connector/catalog/apps/userflow.json +26 -13
- package/assets/open-connector/catalog/apps/uspto.json +6 -3
- package/assets/open-connector/catalog/apps/v0.json +20 -10
- package/assets/open-connector/catalog/apps/v2ex.json +38 -19
- package/assets/open-connector/catalog/apps/validemail.json +164 -0
- package/assets/open-connector/catalog/apps/valyu.json +8 -4
- package/assets/open-connector/catalog/apps/vatlayer.json +6 -3
- package/assets/open-connector/catalog/apps/vectera.json +10 -5
- package/assets/open-connector/catalog/apps/venafitlsprotectcloud.json +2 -1
- package/assets/open-connector/catalog/apps/venafitlsprotectdatacenter.json +2 -1
- package/assets/open-connector/catalog/apps/vercel.json +3422 -1469
- package/assets/open-connector/catalog/apps/veremark.json +26 -13
- package/assets/open-connector/catalog/apps/verifiedemail.json +44 -22
- package/assets/open-connector/catalog/apps/viggle.json +68 -34
- package/assets/open-connector/catalog/apps/vimeo.json +74 -37
- package/assets/open-connector/catalog/apps/viral_loops.json +549 -0
- package/assets/open-connector/catalog/apps/vitally.json +4 -2
- package/assets/open-connector/catalog/apps/voiceflow.json +2 -1
- package/assets/open-connector/catalog/apps/vonage.json +112 -56
- package/assets/open-connector/catalog/apps/vtex.json +2 -1
- package/assets/open-connector/catalog/apps/waboxapp.json +12 -6
- package/assets/open-connector/catalog/apps/wachete.json +128 -64
- package/assets/open-connector/catalog/apps/waffo.json +14 -7
- package/assets/open-connector/catalog/apps/waitwhile.json +74 -37
- package/assets/open-connector/catalog/apps/waiverforever.json +24 -12
- package/assets/open-connector/catalog/apps/wakatime.json +2 -1
- package/assets/open-connector/catalog/apps/walmart_marketplace.json +4 -2
- package/assets/open-connector/catalog/apps/wandb.json +6 -3
- package/assets/open-connector/catalog/apps/wangdian.json +14 -7
- package/assets/open-connector/catalog/apps/wappalyzer.json +18 -9
- package/assets/open-connector/catalog/apps/waterfall.json +2 -1
- package/assets/open-connector/catalog/apps/wbiztool.json +510 -0
- package/assets/open-connector/catalog/apps/web_of_science.json +60 -30
- package/assets/open-connector/catalog/apps/web_of_science_expanded.json +166 -83
- package/assets/open-connector/catalog/apps/webex.json +26 -13
- package/assets/open-connector/catalog/apps/webflow.json +102 -51
- package/assets/open-connector/catalog/apps/webscraper_io.json +78 -39
- package/assets/open-connector/catalog/apps/webscraping_ai.json +8 -4
- package/assets/open-connector/catalog/apps/webshare.json +20 -10
- package/assets/open-connector/catalog/apps/weixin_bot.json +8 -4
- package/assets/open-connector/catalog/apps/weixin_store.json +543 -2
- package/assets/open-connector/catalog/apps/whatsapp.json +515 -0
- package/assets/open-connector/catalog/apps/who_gho.json +2 -1
- package/assets/open-connector/catalog/apps/whop.json +124 -62
- package/assets/open-connector/catalog/apps/winston_ai.json +2 -1
- package/assets/open-connector/catalog/apps/wit_ai.json +2 -1
- package/assets/open-connector/catalog/apps/wolfram_alpha_api.json +10 -5
- package/assets/open-connector/catalog/apps/woocommerce.json +1045 -459
- package/assets/open-connector/catalog/apps/woodpecker_co.json +58 -29
- package/assets/open-connector/catalog/apps/woot.json +196 -98
- package/assets/open-connector/catalog/apps/wordpress.json +2425 -525
- package/assets/open-connector/catalog/apps/workable.json +4 -2
- package/assets/open-connector/catalog/apps/workday.json +374 -187
- package/assets/open-connector/catalog/apps/workiom.json +6 -3
- package/assets/open-connector/catalog/apps/workos.json +52 -26
- package/assets/open-connector/catalog/apps/workpath.json +36 -18
- package/assets/open-connector/catalog/apps/world_news_api.json +32 -16
- package/assets/open-connector/catalog/apps/wp_maps.json +150 -75
- package/assets/open-connector/catalog/apps/wrike.json +104 -52
- package/assets/open-connector/catalog/apps/writer.json +4 -2
- package/assets/open-connector/catalog/apps/wttr_in.json +80 -40
- package/assets/open-connector/catalog/apps/wufoo.json +8 -4
- package/assets/open-connector/catalog/apps/x_ai.json +8 -4
- package/assets/open-connector/catalog/apps/xata.json +16 -8
- package/assets/open-connector/catalog/apps/xero.json +104 -52
- package/assets/open-connector/catalog/apps/xingpan.json +1200 -0
- package/assets/open-connector/catalog/apps/y_gy.json +88 -44
- package/assets/open-connector/catalog/apps/yoplanning.json +12 -6
- package/assets/open-connector/catalog/apps/youtube.json +28 -14
- package/assets/open-connector/catalog/apps/yuandian.json +92 -46
- package/assets/open-connector/catalog/apps/yuanfenju.json +2244 -0
- package/assets/open-connector/catalog/apps/zendesk.json +258 -53
- package/assets/open-connector/catalog/apps/zenrows.json +36 -18
- package/assets/open-connector/catalog/apps/zenscrape.json +2 -1
- package/assets/open-connector/catalog/apps/zenserp.json +12 -6
- package/assets/open-connector/catalog/apps/zenventory.json +8 -4
- package/assets/open-connector/catalog/apps/zep.json +22 -11
- package/assets/open-connector/catalog/apps/zerobounce.json +20 -10
- package/assets/open-connector/catalog/apps/zerotier.json +9 -9
- package/assets/open-connector/catalog/apps/zhihu.json +8 -4
- package/assets/open-connector/catalog/apps/zipcodebase.json +16 -8
- package/assets/open-connector/catalog/apps/zoom.json +88 -44
- package/assets/open-connector/catalog/apps/zorus.json +54 -27
- package/assets/open-connector/catalog/apps/zotero.json +22 -11
- package/assets/open-connector/catalog/apps-index.json +1 -1
- package/assets/open-connector/migrations/0014_saas_project.sql +55 -0
- package/assets/open-connector/migrations/0015_saas_cleanup_runtime.sql +8 -0
- package/assets/open-connector/migrations/0016_trigger_policy.sql +1 -0
- package/assets/open-connector/migrations/0017_trigger_subscriptions.sql +17 -0
- package/assets/open-connector/migrations/0018_connection_retirement.sql +17 -0
- package/assets/open-connector/migrations/postgresql/0014_saas_project.sql +55 -0
- package/assets/open-connector/migrations/postgresql/0015_saas_cleanup_runtime.sql +8 -0
- package/assets/open-connector/migrations/postgresql/0016_trigger_policy.sql +1 -0
- package/assets/open-connector/migrations/postgresql/0017_trigger_subscriptions.sql +17 -0
- package/assets/open-connector/migrations/postgresql/0018_connection_retirement.sql +17 -0
- package/package.json +22 -21
- package/src/connection-service.d.ts +73 -10
- package/src/connection-service.js +156 -30
- package/src/core/action-policy.d.ts +8 -1
- package/src/core/action-policy.js +51 -0
- package/src/core/aws-sigv4.d.ts +3 -0
- package/src/core/aws-sigv4.js +2 -1
- package/src/core/cast.d.ts +8 -0
- package/src/core/cast.js +11 -3
- package/src/core/guarded-fetch.d.ts +8 -0
- package/src/core/guarded-fetch.js +44 -11
- package/src/core/json-schema.js +7 -1
- package/src/core/provider-http-dispatch.d.ts +82 -0
- package/src/core/provider-http-dispatch.js +177 -0
- package/src/core/provider-scenarios.js +0 -1
- package/src/core/provider-setup.d.ts +2 -0
- package/src/core/provider-setup.js +1 -0
- package/src/core/remote-http.d.ts +33 -0
- package/src/core/remote-http.js +104 -0
- package/src/core/request.d.ts +21 -0
- package/src/core/request.js +54 -0
- package/src/core/types.d.ts +19 -1
- package/src/marketplace/marketplace-service.d.ts +6 -1
- package/src/marketplace/marketplace-service.js +85 -93
- package/src/mcp.js +19 -5
- package/src/oauth/oauth-client-config-service.js +11 -3
- package/src/oauth/oauth-credential-refresh-service.d.ts +20 -0
- package/src/oauth/oauth-credential-refresh-service.js +58 -3
- package/src/oauth/oauth-flow-service.d.ts +10 -1
- package/src/oauth/oauth-flow-service.js +62 -39
- package/src/oauth/oauth-token.d.ts +33 -3
- package/src/oauth/oauth-token.js +98 -4
- package/src/providers/action-contracts.generated.d.ts +65 -11
- package/src/providers/agenty/runtime.js +5 -4
- package/src/providers/airtable/executors.d.ts +3 -0
- package/src/providers/airtable/executors.js +2 -0
- package/src/providers/airtable/trigger-on-record-changed.d.ts +2 -0
- package/src/providers/airtable/trigger-on-record-changed.definition.d.ts +4 -0
- package/src/providers/airtable/trigger-on-record-changed.definition.js +54 -0
- package/src/providers/airtable/trigger-on-record-changed.js +235 -0
- package/src/providers/aisa/executors.js +206 -22
- package/src/providers/aliyun_oss/executors.js +5 -4
- package/src/providers/amazing_marvin/actions.d.ts +2 -0
- package/src/providers/amazing_marvin/actions.js +145 -0
- package/src/providers/amazing_marvin/executors.d.ts +4 -0
- package/src/providers/amazing_marvin/executors.js +98 -0
- package/src/providers/api_route/executors.js +77 -0
- package/src/providers/aws_s3/executors.js +5 -4
- package/src/providers/baidu_netdisk/runtime.js +5 -4
- package/src/providers/box/executors.js +5 -4
- package/src/providers/cal/actions.js +5 -1
- package/src/providers/campaign_cleaner/executors.js +5 -4
- package/src/providers/cheaperinference/executors.d.ts +4 -0
- package/src/providers/cheaperinference/executors.js +130 -0
- package/src/providers/clay/actions.d.ts +2 -0
- package/src/providers/clay/actions.js +222 -0
- package/src/providers/clay/batch-actions.d.ts +2 -0
- package/src/providers/clay/batch-actions.js +71 -0
- package/src/providers/clay/batch-runtime.d.ts +2 -0
- package/src/providers/clay/batch-runtime.js +79 -0
- package/src/providers/clay/executors.d.ts +4 -0
- package/src/providers/clay/executors.js +78 -0
- package/src/providers/clay/request.d.ts +4 -0
- package/src/providers/clay/request.js +34 -0
- package/src/providers/clay/table-schema.d.ts +2 -0
- package/src/providers/clay/table-schema.js +102 -0
- package/src/providers/cloudflare_r2/runtime.js +5 -4
- package/src/providers/commonninja/executors.d.ts +4 -0
- package/src/providers/commonninja/executors.js +118 -0
- package/src/providers/cronlytic/actions.d.ts +2 -0
- package/src/providers/cronlytic/actions.js +116 -0
- package/src/providers/cronlytic/executors.d.ts +4 -0
- package/src/providers/cronlytic/executors.js +146 -0
- package/src/providers/dataforseo/runtime.js +2 -2
- package/src/providers/dropbox/executors.js +4 -4
- package/src/providers/dynalist/actions.d.ts +2 -0
- package/src/providers/dynalist/actions.js +191 -0
- package/src/providers/dynalist/executors.d.ts +4 -0
- package/src/providers/dynalist/executors.js +58 -0
- package/src/providers/easy_peasy_ai/actions.d.ts +2 -0
- package/src/providers/easy_peasy_ai/actions.js +107 -0
- package/src/providers/easy_peasy_ai/executors.d.ts +4 -0
- package/src/providers/easy_peasy_ai/executors.js +90 -0
- package/src/providers/edgeone_makers/executors.d.ts +4 -0
- package/src/providers/edgeone_makers/executors.js +441 -0
- package/src/providers/elevenlabs/executors.js +23 -19
- package/src/providers/elevenreader/runtime.js +7 -6
- package/src/providers/enormail/executors.d.ts +4 -0
- package/src/providers/enormail/executors.js +97 -0
- package/src/providers/explorium/actions.d.ts +2 -0
- package/src/providers/explorium/actions.js +124 -0
- package/src/providers/explorium/executors.d.ts +4 -0
- package/src/providers/explorium/executors.js +100 -0
- package/src/providers/feishu/executors.d.ts +3 -0
- package/src/providers/feishu/executors.js +47 -2
- package/src/providers/feishu/runtime.js +4 -2
- package/src/providers/feishu/shared/client.js +4 -4
- package/src/providers/feishu/shared/docs-actions.js +27 -1
- package/src/providers/feishu/shared/docs-runtime.js +54 -3
- package/src/providers/feishu/shared/domain-media-runtime.js +1 -1
- package/src/providers/feishu/shared/drive-runtime.js +1 -1
- package/src/providers/feishu/shared/slides-runtime.js +1 -1
- package/src/providers/feishu/shared/vc-actions.js +9 -2
- package/src/providers/feishu/shared/vc-runtime.js +1 -0
- package/src/providers/feishu/shared/wiki-actions.js +2 -3
- package/src/providers/feishu/shared/wiki-runtime.js +1 -2
- package/src/providers/feishu_app_bot/executors.d.ts +3 -0
- package/src/providers/feishu_app_bot/executors.js +11 -8
- package/src/providers/feishu_app_bot/trigger-config.d.ts +1 -0
- package/src/providers/feishu_app_bot/trigger-config.js +10 -0
- package/src/providers/feishu_app_bot/trigger-on-event.d.ts +2 -0
- package/src/providers/feishu_app_bot/trigger-on-event.definition.d.ts +4 -0
- package/src/providers/feishu_app_bot/trigger-on-event.definition.js +63 -0
- package/src/providers/feishu_app_bot/trigger-on-event.js +29 -0
- package/src/providers/feishu_app_bot/trigger-subscriptions.d.ts +5 -0
- package/src/providers/feishu_app_bot/trigger-subscriptions.js +70 -0
- package/src/providers/fengshui/executors.d.ts +4 -0
- package/src/providers/fengshui/executors.js +23 -0
- package/src/providers/fengshui/runtime.d.ts +4 -0
- package/src/providers/fengshui/runtime.js +95 -0
- package/src/providers/files_com/executors.js +17 -18
- package/src/providers/finlight/actions.d.ts +2 -0
- package/src/providers/finlight/actions.js +130 -0
- package/src/providers/finlight/executors.d.ts +4 -0
- package/src/providers/finlight/executors.js +120 -0
- package/src/providers/firecrawl/executors.d.ts +6 -2
- package/src/providers/firecrawl/executors.js +60 -9
- package/src/providers/flotiq/actions.d.ts +2 -0
- package/src/providers/flotiq/actions.js +114 -0
- package/src/providers/flotiq/executors.d.ts +4 -0
- package/src/providers/flotiq/executors.js +135 -0
- package/src/providers/framejet/runtime.js +7 -6
- package/src/providers/freeastroapi/constants.d.ts +8 -0
- package/src/providers/freeastroapi/constants.js +24 -0
- package/src/providers/freeastroapi/executors.d.ts +4 -0
- package/src/providers/freeastroapi/executors.js +18 -0
- package/src/providers/freeastroapi/input-validation.d.ts +2 -0
- package/src/providers/freeastroapi/input-validation.js +186 -0
- package/src/providers/freeastroapi/runtime.d.ts +5 -0
- package/src/providers/freeastroapi/runtime.js +294 -0
- package/src/providers/fusion-api/operations.js +8 -8
- package/src/providers/fuxin/executors.js +9 -8
- package/src/providers/fxmacrodata/executors.d.ts +4 -0
- package/src/providers/fxmacrodata/executors.js +32 -0
- package/src/providers/fxmacrodata/runtime.d.ts +34 -0
- package/src/providers/fxmacrodata/runtime.js +154 -0
- package/src/providers/gemini/runtime.d.ts +1 -1
- package/src/providers/gemini/runtime.js +1 -1
- package/src/providers/getyoutubetranscript/executors.d.ts +4 -0
- package/src/providers/getyoutubetranscript/executors.js +14 -0
- package/src/providers/getyoutubetranscript/runtime.d.ts +8 -0
- package/src/providers/getyoutubetranscript/runtime.js +101 -0
- package/src/providers/github/executors.d.ts +3 -0
- package/src/providers/github/executors.js +6 -0
- package/src/providers/github/runtime-pull-request.js +5 -4
- package/src/providers/github/trigger-on-repo-event.d.ts +2 -0
- package/src/providers/github/trigger-on-repo-event.definition.d.ts +4 -0
- package/src/providers/github/trigger-on-repo-event.definition.js +94 -0
- package/src/providers/github/trigger-on-repo-event.js +168 -0
- package/src/providers/github/trigger-watch-pull-request.d.ts +2 -0
- package/src/providers/github/trigger-watch-pull-request.definition.d.ts +4 -0
- package/src/providers/github/trigger-watch-pull-request.definition.js +49 -0
- package/src/providers/github/trigger-watch-pull-request.js +106 -0
- package/src/providers/gitlab/executors.d.ts +3 -0
- package/src/providers/gitlab/executors.js +2 -0
- package/src/providers/gitlab/trigger-on-project-event.d.ts +2 -0
- package/src/providers/gitlab/trigger-on-project-event.definition.d.ts +5 -0
- package/src/providers/gitlab/trigger-on-project-event.definition.js +63 -0
- package/src/providers/gitlab/trigger-on-project-event.js +186 -0
- package/src/providers/gmail/executors.d.ts +3 -0
- package/src/providers/gmail/executors.js +168 -73
- package/src/providers/gmail/limits.d.ts +3 -0
- package/src/providers/gmail/limits.js +5 -0
- package/src/providers/gmail/message.d.ts +13 -18
- package/src/providers/gmail/message.js +159 -54
- package/src/providers/gmail/mime-attachments.d.ts +8 -0
- package/src/providers/gmail/mime-attachments.js +76 -0
- package/src/providers/gmail/mime.d.ts +49 -0
- package/src/providers/gmail/mime.js +481 -0
- package/src/providers/gmail/scopes.d.ts +8 -5
- package/src/providers/gmail/scopes.js +8 -5
- package/src/providers/gmail/trigger-on-message-received.d.ts +2 -0
- package/src/providers/gmail/trigger-on-message-received.definition.d.ts +4 -0
- package/src/providers/gmail/trigger-on-message-received.definition.js +74 -0
- package/src/providers/gmail/trigger-on-message-received.js +232 -0
- package/src/providers/googleads/executors.d.ts +1 -1
- package/src/providers/googleads/executors.js +9 -9
- package/src/providers/googlecalendar/executors.d.ts +3 -0
- package/src/providers/googlecalendar/executors.js +2 -0
- package/src/providers/googlecalendar/scopes.d.ts +11 -0
- package/src/providers/googlecalendar/scopes.js +18 -0
- package/src/providers/googlecalendar/trigger-on-event-changed.d.ts +2 -0
- package/src/providers/googlecalendar/trigger-on-event-changed.definition.d.ts +4 -0
- package/src/providers/googlecalendar/trigger-on-event-changed.definition.js +74 -0
- package/src/providers/googlecalendar/trigger-on-event-changed.js +233 -0
- package/src/providers/googledrive/executors.d.ts +3 -0
- package/src/providers/googledrive/executors.js +16 -7
- package/src/providers/googledrive/runtime-request.js +43 -3
- package/src/providers/googledrive/trigger-changes.d.ts +12 -0
- package/src/providers/googledrive/trigger-changes.definition.d.ts +7 -0
- package/src/providers/googledrive/trigger-changes.definition.js +101 -0
- package/src/providers/googledrive/trigger-changes.js +458 -0
- package/src/providers/googledrive/trigger-on-file-change.d.ts +2 -0
- package/src/providers/googledrive/trigger-on-file-change.definition.d.ts +4 -0
- package/src/providers/googledrive/trigger-on-file-change.definition.js +77 -0
- package/src/providers/googledrive/trigger-on-file-change.js +258 -0
- package/src/providers/googleforms/executors.d.ts +1 -2
- package/src/providers/googleforms/executors.js +8 -8
- package/src/providers/googlephotos/executors.js +8 -1
- package/src/providers/googlesheets/executors.d.ts +3 -0
- package/src/providers/googlesheets/executors.js +2 -0
- package/src/providers/googlesheets/trigger-on-row-added.d.ts +2 -0
- package/src/providers/googlesheets/trigger-on-row-added.definition.d.ts +4 -0
- package/src/providers/googlesheets/trigger-on-row-added.definition.js +54 -0
- package/src/providers/googlesheets/trigger-on-row-added.js +234 -0
- package/src/providers/greip/actions.d.ts +2 -0
- package/src/providers/greip/actions.js +107 -0
- package/src/providers/greip/executors.d.ts +4 -0
- package/src/providers/greip/executors.js +84 -0
- package/src/providers/greynoise/executors.d.ts +3 -0
- package/src/providers/greynoise/executors.js +17 -0
- package/src/providers/greynoise/runtime.d.ts +9 -0
- package/src/providers/greynoise/runtime.js +71 -0
- package/src/providers/growsurf/actions.d.ts +2 -0
- package/src/providers/growsurf/actions.js +182 -0
- package/src/providers/growsurf/executors.d.ts +4 -0
- package/src/providers/growsurf/executors.js +140 -0
- package/src/providers/hithink_finance/market-dumps.js +58 -12
- package/src/providers/hithink_finance/runtime.js +1 -1
- package/src/providers/http-json-runtime.js +4 -1
- package/src/providers/huodingdong_mcp/executors.d.ts +4 -0
- package/src/providers/huodingdong_mcp/executors.js +58 -0
- package/src/providers/indexed/executors.d.ts +4 -0
- package/src/providers/indexed/executors.js +16 -0
- package/src/providers/indexed/runtime.d.ts +26 -0
- package/src/providers/indexed/runtime.js +128 -0
- package/src/providers/issue_badge/actions.d.ts +2 -0
- package/src/providers/issue_badge/actions.js +95 -0
- package/src/providers/issue_badge/executors.d.ts +4 -0
- package/src/providers/issue_badge/executors.js +98 -0
- package/src/providers/iyunbiao/runtime.js +5 -4
- package/src/providers/justoneapi/actions-commerce.d.ts +2 -0
- package/src/providers/justoneapi/actions-commerce.js +585 -0
- package/src/providers/justoneapi/actions-creators.d.ts +2 -0
- package/src/providers/justoneapi/actions-creators.js +986 -0
- package/src/providers/justoneapi/actions-media.d.ts +2 -0
- package/src/providers/justoneapi/actions-media.js +345 -0
- package/src/providers/justoneapi/actions-social-cn.d.ts +2 -0
- package/src/providers/justoneapi/actions-social-cn.js +1231 -0
- package/src/providers/justoneapi/actions-social-global.d.ts +2 -0
- package/src/providers/justoneapi/actions-social-global.js +455 -0
- package/src/providers/justoneapi/actions.d.ts +4 -0
- package/src/providers/justoneapi/actions.js +32 -0
- package/src/providers/justoneapi/endpoint-definition.d.ts +9 -0
- package/src/providers/justoneapi/endpoint-definition.js +1 -0
- package/src/providers/justoneapi/executors.d.ts +4 -0
- package/src/providers/justoneapi/executors.js +143 -0
- package/src/providers/kagi/actions.d.ts +2 -0
- package/src/providers/kagi/actions.js +36 -0
- package/src/providers/kagi/executors.d.ts +4 -0
- package/src/providers/kagi/executors.js +120 -0
- package/src/providers/karakeep/runtime-assets.js +7 -5
- package/src/providers/kenjo/actions.d.ts +2 -0
- package/src/providers/kenjo/actions.js +112 -0
- package/src/providers/kenjo/executors.d.ts +4 -0
- package/src/providers/kenjo/executors.js +138 -0
- package/src/providers/keyzy/actions.d.ts +2 -0
- package/src/providers/keyzy/actions.js +102 -0
- package/src/providers/keyzy/executors.d.ts +4 -0
- package/src/providers/keyzy/executors.js +114 -0
- package/src/providers/kickofflabs/actions.d.ts +2 -0
- package/src/providers/kickofflabs/actions.js +48 -0
- package/src/providers/kickofflabs/executors.d.ts +4 -0
- package/src/providers/kickofflabs/executors.js +71 -0
- package/src/providers/klangio/runtime.js +10 -8
- package/src/providers/latchshot/executors.js +8 -6
- package/src/providers/linear/executors.d.ts +3 -0
- package/src/providers/linear/executors.js +2 -0
- package/src/providers/linear/trigger-on-issue-changed.d.ts +2 -0
- package/src/providers/linear/trigger-on-issue-changed.definition.d.ts +5 -0
- package/src/providers/linear/trigger-on-issue-changed.definition.js +43 -0
- package/src/providers/linear/trigger-on-issue-changed.js +215 -0
- package/src/providers/lingxing_mcp/runtime.js +39 -24
- package/src/providers/litellm/executors.d.ts +4 -0
- package/src/providers/litellm/executors.js +34 -0
- package/src/providers/litellm/runtime.d.ts +29 -0
- package/src/providers/litellm/runtime.js +227 -0
- package/src/providers/mcp-tools.d.ts +2 -0
- package/src/providers/mcp-tools.js +2 -1
- package/src/providers/mem0/runtime.d.ts +1 -2
- package/src/providers/mem0/runtime.js +3 -4
- package/src/providers/memento_database/actions.d.ts +2 -0
- package/src/providers/memento_database/actions.js +170 -0
- package/src/providers/memento_database/executors.d.ts +4 -0
- package/src/providers/memento_database/executors.js +113 -0
- package/src/providers/mistral_ai/executors.js +5 -4
- package/src/providers/nationalize/executors.d.ts +4 -0
- package/src/providers/nationalize/executors.js +62 -0
- package/src/providers/navigatr/actions.d.ts +2 -0
- package/src/providers/navigatr/actions.js +179 -0
- package/src/providers/navigatr/executors.d.ts +4 -0
- package/src/providers/navigatr/executors.js +118 -0
- package/src/providers/nightfall_ai/actions.d.ts +2 -0
- package/src/providers/nightfall_ai/actions.js +74 -0
- package/src/providers/nightfall_ai/executors.d.ts +4 -0
- package/src/providers/nightfall_ai/executors.js +62 -0
- package/src/providers/notion/executors.d.ts +3 -0
- package/src/providers/notion/executors.js +2 -0
- package/src/providers/notion/trigger-on-database-page-event.d.ts +2 -0
- package/src/providers/notion/trigger-on-database-page-event.definition.d.ts +4 -0
- package/src/providers/notion/trigger-on-database-page-event.definition.js +63 -0
- package/src/providers/notion/trigger-on-database-page-event.js +293 -0
- package/src/providers/one_drive/executors.d.ts +3 -0
- package/src/providers/one_drive/executors.js +7 -4
- package/src/providers/one_drive/trigger-on-item-changed.d.ts +2 -0
- package/src/providers/one_drive/trigger-on-item-changed.definition.d.ts +4 -0
- package/src/providers/one_drive/trigger-on-item-changed.definition.js +63 -0
- package/src/providers/one_drive/trigger-on-item-changed.js +214 -0
- package/src/providers/oomol_console/permission-groups.d.ts +12 -0
- package/src/providers/oomol_console/permission-groups.js +28 -3
- package/src/providers/oomol_console/runtime.js +29 -3
- package/src/providers/opper/executors.d.ts +4 -0
- package/src/providers/opper/executors.js +89 -0
- package/src/providers/outlook/executors.d.ts +3 -0
- package/src/providers/outlook/executors.js +5 -3
- package/src/providers/outlook/trigger-on-message-received.d.ts +2 -0
- package/src/providers/outlook/trigger-on-message-received.definition.d.ts +4 -0
- package/src/providers/outlook/trigger-on-message-received.definition.js +93 -0
- package/src/providers/outlook/trigger-on-message-received.js +226 -0
- package/src/providers/outlook_calendar/executors.js +6 -0
- package/src/providers/picky_assist/actions.d.ts +2 -0
- package/src/providers/picky_assist/actions.js +61 -0
- package/src/providers/picky_assist/executors.d.ts +4 -0
- package/src/providers/picky_assist/executors.js +68 -0
- package/src/providers/pixellab/runtime.js +6 -5
- package/src/providers/planly/actions.d.ts +2 -0
- package/src/providers/planly/actions.js +155 -0
- package/src/providers/planly/executors.d.ts +4 -0
- package/src/providers/planly/executors.js +83 -0
- package/src/providers/pointagram/actions.d.ts +2 -0
- package/src/providers/pointagram/actions.js +167 -0
- package/src/providers/pointagram/executors.d.ts +4 -0
- package/src/providers/pointagram/executors.js +107 -0
- package/src/providers/provider-loader.d.ts +5 -0
- package/src/providers/provider-loader.js +4 -0
- package/src/providers/provider-runtime.d.ts +9 -2
- package/src/providers/provider-runtime.js +69 -15
- package/src/providers/pushinator/actions.d.ts +2 -0
- package/src/providers/pushinator/actions.js +34 -0
- package/src/providers/pushinator/executors.d.ts +4 -0
- package/src/providers/pushinator/executors.js +61 -0
- package/src/providers/quickbooks/constants.d.ts +18 -0
- package/src/providers/quickbooks/constants.js +15 -0
- package/src/providers/quickbooks/executors.d.ts +9 -0
- package/src/providers/quickbooks/executors.js +407 -0
- package/src/providers/quickbooks/oauth.d.ts +11 -0
- package/src/providers/quickbooks/oauth.js +103 -0
- package/src/providers/quickbooks/payloads.d.ts +7 -0
- package/src/providers/quickbooks/payloads.js +104 -0
- package/src/providers/quickbooks/resources.d.ts +37 -0
- package/src/providers/quickbooks/resources.js +256 -0
- package/src/providers/quickbooks/runtime.d.ts +93 -0
- package/src/providers/quickbooks/runtime.js +278 -0
- package/src/providers/registry.generated.js +55 -1
- package/src/providers/retell_ai/executors.d.ts +0 -5
- package/src/providers/retell_ai/executors.js +60 -93
- package/src/providers/roxyapi/executors.d.ts +4 -0
- package/src/providers/roxyapi/executors.js +25 -0
- package/src/providers/roxyapi/runtime.d.ts +10 -0
- package/src/providers/roxyapi/runtime.js +279 -0
- package/src/providers/scanmalware/executors.d.ts +3 -0
- package/src/providers/scanmalware/executors.js +17 -0
- package/src/providers/scanmalware/runtime.d.ts +9 -0
- package/src/providers/scanmalware/runtime.js +120 -0
- package/src/providers/screenshotone/runtime.js +7 -6
- package/src/providers/sendblue/actions.d.ts +2 -0
- package/src/providers/sendblue/actions.js +163 -0
- package/src/providers/sendblue/executors.d.ts +4 -0
- package/src/providers/sendblue/executors.js +156 -0
- package/src/providers/serwersms_pl/actions.d.ts +2 -0
- package/src/providers/serwersms_pl/actions.js +166 -0
- package/src/providers/serwersms_pl/executors.d.ts +4 -0
- package/src/providers/serwersms_pl/executors.js +85 -0
- package/src/providers/shopify/bulk.d.ts +2 -0
- package/src/providers/shopify/bulk.js +139 -0
- package/src/providers/shopify/catalog.d.ts +2 -0
- package/src/providers/shopify/catalog.js +301 -0
- package/src/providers/shopify/client.d.ts +13 -0
- package/src/providers/shopify/client.js +67 -0
- package/src/providers/shopify/content-runtime.d.ts +2 -0
- package/src/providers/shopify/{runtime.js → content-runtime.js} +14 -206
- package/src/providers/shopify/context.d.ts +10 -0
- package/src/providers/shopify/context.js +1 -0
- package/src/providers/shopify/customers.d.ts +2 -0
- package/src/providers/shopify/customers.js +118 -0
- package/src/providers/shopify/executors.d.ts +5 -0
- package/src/providers/shopify/executors.js +50 -7
- package/src/providers/shopify/graphql.d.ts +2 -0
- package/src/providers/shopify/graphql.js +17 -0
- package/src/providers/shopify/inventory.d.ts +2 -0
- package/src/providers/shopify/inventory.js +362 -0
- package/src/providers/shopify/oauth.d.ts +2 -0
- package/src/providers/shopify/oauth.js +94 -0
- package/src/providers/shopify/operation-definitions.d.ts +13 -0
- package/src/providers/shopify/operation-definitions.js +414 -0
- package/src/providers/shopify/operation-queries.d.ts +1 -0
- package/src/providers/shopify/operation-queries.js +62 -0
- package/src/providers/shopify/operations.d.ts +2 -0
- package/src/providers/shopify/operations.js +48 -0
- package/src/providers/shopify/orders.d.ts +2 -0
- package/src/providers/shopify/orders.js +357 -0
- package/src/providers/shopify/runtime-common.d.ts +16 -0
- package/src/providers/shopify/runtime-common.js +85 -0
- package/src/providers/shopify/shop-domain.d.ts +1 -0
- package/src/providers/shopify/shop-domain.js +49 -0
- package/src/providers/shopify/shop.d.ts +2 -0
- package/src/providers/shopify/shop.js +14 -0
- package/src/providers/shopify/trigger-on-shop-event.d.ts +2 -0
- package/src/providers/shopify/trigger-on-shop-event.definition.d.ts +4 -0
- package/src/providers/shopify/trigger-on-shop-event.definition.js +214 -0
- package/src/providers/shopify/trigger-on-shop-event.js +165 -0
- package/src/providers/simpletexting/actions.d.ts +2 -0
- package/src/providers/simpletexting/actions.js +195 -0
- package/src/providers/simpletexting/executors.d.ts +4 -0
- package/src/providers/simpletexting/executors.js +157 -0
- package/src/providers/slack/actions.js +44 -0
- package/src/providers/slack/executors.d.ts +3 -0
- package/src/providers/slack/executors.js +2 -0
- package/src/providers/slack/runtime.js +65 -6
- package/src/providers/slack/trigger-on-message-posted.d.ts +2 -0
- package/src/providers/slack/trigger-on-message-posted.definition.d.ts +4 -0
- package/src/providers/slack/trigger-on-message-posted.definition.js +80 -0
- package/src/providers/slack/trigger-on-message-posted.js +176 -0
- package/src/providers/snappy/actions.d.ts +2 -0
- package/src/providers/snappy/actions.js +318 -0
- package/src/providers/snappy/executors.d.ts +4 -0
- package/src/providers/snappy/executors.js +89 -0
- package/src/providers/solarwinds_service_desk/actions.d.ts +2 -0
- package/src/providers/solarwinds_service_desk/actions.js +207 -0
- package/src/providers/solarwinds_service_desk/executors.d.ts +4 -0
- package/src/providers/solarwinds_service_desk/executors.js +160 -0
- package/src/providers/spotify/runtime.js +15 -4
- package/src/providers/stripe/executors.d.ts +3 -0
- package/src/providers/stripe/executors.js +2 -0
- package/src/providers/stripe/trigger-on-event.d.ts +2 -0
- package/src/providers/stripe/trigger-on-event.definition.d.ts +4 -0
- package/src/providers/stripe/trigger-on-event.definition.js +43 -0
- package/src/providers/stripe/trigger-on-event.js +212 -0
- package/src/providers/supabase/runtime.js +5 -4
- package/src/providers/telegram/executors.d.ts +3 -0
- package/src/providers/telegram/executors.js +2 -0
- package/src/providers/telegram/trigger-on-update.d.ts +2 -0
- package/src/providers/telegram/trigger-on-update.definition.d.ts +5 -0
- package/src/providers/telegram/trigger-on-update.definition.js +78 -0
- package/src/providers/telegram/trigger-on-update.js +141 -0
- package/src/providers/templatedocs/runtime.js +8 -5
- package/src/providers/thesportsdb/actions.d.ts +2 -0
- package/src/providers/thesportsdb/actions.js +116 -0
- package/src/providers/thesportsdb/executors.d.ts +4 -0
- package/src/providers/thesportsdb/executors.js +114 -0
- package/src/providers/tianapi/executors.d.ts +4 -0
- package/src/providers/tianapi/executors.js +18 -0
- package/src/providers/tianapi/runtime.d.ts +5 -0
- package/src/providers/tianapi/runtime.js +315 -0
- package/src/providers/timem_space/actions.d.ts +2 -0
- package/src/providers/timem_space/actions.js +112 -0
- package/src/providers/timem_space/executors.d.ts +3 -0
- package/src/providers/timem_space/executors.js +52 -0
- package/src/providers/tinypng/runtime.js +8 -7
- package/src/providers/unirateapi/actions.d.ts +2 -0
- package/src/providers/unirateapi/actions.js +122 -0
- package/src/providers/unirateapi/executors.d.ts +4 -0
- package/src/providers/unirateapi/executors.js +89 -0
- package/src/providers/validemail/executors.d.ts +4 -0
- package/src/providers/validemail/executors.js +65 -0
- package/src/providers/vercel/executors.js +1 -0
- package/src/providers/vercel/runtime.d.ts +1 -0
- package/src/providers/vercel/runtime.js +737 -27
- package/src/providers/vimeo/runtime.js +5 -4
- package/src/providers/viral_loops/actions.d.ts +2 -0
- package/src/providers/viral_loops/actions.js +90 -0
- package/src/providers/viral_loops/executors.d.ts +4 -0
- package/src/providers/viral_loops/executors.js +81 -0
- package/src/providers/wbiztool/actions.d.ts +2 -0
- package/src/providers/wbiztool/actions.js +127 -0
- package/src/providers/wbiztool/executors.d.ts +4 -0
- package/src/providers/wbiztool/executors.js +140 -0
- package/src/providers/weixin_store/access-token.d.ts +2 -1
- package/src/providers/weixin_store/access-token.js +15 -4
- package/src/providers/weixin_store/executors.js +97 -12
- package/src/providers/whatsapp/runtime.js +223 -3
- package/src/providers/woocommerce/executors.d.ts +3 -0
- package/src/providers/woocommerce/executors.js +2 -0
- package/src/providers/woocommerce/trigger-on-store-event.d.ts +2 -0
- package/src/providers/woocommerce/trigger-on-store-event.definition.d.ts +4 -0
- package/src/providers/woocommerce/trigger-on-store-event.definition.js +55 -0
- package/src/providers/woocommerce/trigger-on-store-event.js +179 -0
- package/src/providers/wordpress/runtime.d.ts +0 -9
- package/src/providers/wordpress/runtime.js +354 -91
- package/src/providers/xingpan/constants.d.ts +1 -0
- package/src/providers/xingpan/constants.js +14 -0
- package/src/providers/xingpan/executors.d.ts +4 -0
- package/src/providers/xingpan/executors.js +18 -0
- package/src/providers/xingpan/runtime.d.ts +5 -0
- package/src/providers/xingpan/runtime.js +229 -0
- package/src/providers/youtube/runtime.js +5 -4
- package/src/providers/yuanfenju/executors.d.ts +4 -0
- package/src/providers/yuanfenju/executors.js +28 -0
- package/src/providers/yuanfenju/runtime.d.ts +10 -0
- package/src/providers/yuanfenju/runtime.js +281 -0
- package/src/providers/zendesk/executors.d.ts +3 -0
- package/src/providers/zendesk/executors.js +2 -0
- package/src/providers/zendesk/trigger-on-event.d.ts +2 -0
- package/src/providers/zendesk/trigger-on-event.definition.d.ts +5 -0
- package/src/providers/zendesk/trigger-on-event.definition.js +101 -0
- package/src/providers/zendesk/trigger-on-event.js +188 -0
- package/src/saas/saas-cleanup-service.d.ts +26 -0
- package/src/saas/saas-cleanup-service.js +124 -0
- package/src/saas/saas-client.d.ts +86 -0
- package/src/saas/saas-client.js +369 -0
- package/src/saas/saas-execution-service.d.ts +15 -0
- package/src/saas/saas-execution-service.js +21 -0
- package/src/saas/saas-oauth-service.d.ts +25 -0
- package/src/saas/saas-oauth-service.js +197 -0
- package/src/saas/saas-project-service.d.ts +61 -0
- package/src/saas/saas-project-service.js +211 -0
- package/src/server/actions/action-idempotency.d.ts +1 -0
- package/src/server/actions/action-idempotency.js +1 -0
- package/src/server/actions/action-runner.d.ts +10 -0
- package/src/server/actions/action-runner.js +60 -7
- package/src/server/actions/run-log-summary.js +10 -0
- package/src/server/api/action-example.d.ts +3 -0
- package/src/server/api/action-example.js +402 -0
- package/src/server/api/action-markdown.js +1 -35
- package/src/server/api/auth.d.ts +1 -0
- package/src/server/api/auth.js +20 -2
- package/src/server/api/cache-policy.js +7 -5
- package/src/server/api/connection-input.d.ts +7 -1
- package/src/server/api/connection-input.js +7 -1
- package/src/server/api/connection-routes.d.ts +3 -1
- package/src/server/api/connection-routes.js +21 -3
- package/src/server/api/http-utils.d.ts +4 -3
- package/src/server/api/oauth-completion-page.d.ts +127 -1
- package/src/server/api/oauth-completion-page.js +117 -20
- package/src/server/api/openapi.js +134 -19
- package/src/server/api/pattern-example.d.ts +22 -0
- package/src/server/api/pattern-example.js +413 -0
- package/src/server/api/policy-input.js +6 -0
- package/src/server/api/runtime-api.d.ts +10 -2
- package/src/server/api/runtime-api.js +25 -6
- package/src/server/api/saas-completion-page.d.ts +2 -0
- package/src/server/api/saas-completion-page.js +103 -0
- package/src/server/connect-app.d.ts +8 -0
- package/src/server/connect-app.js +55 -0
- package/src/server/connect-server.d.ts +18 -0
- package/src/server/connect-server.js +188 -20
- package/src/server/connector-runtime.d.ts +8 -1
- package/src/server/connector-runtime.js +11 -2
- package/src/server/files/node-transit-file-upload.js +7 -3
- package/src/server/files/transit-file-store.js +10 -4
- package/src/server/files/transit-files.d.ts +18 -0
- package/src/server/files/transit-files.js +90 -20
- package/src/server/proxy/proxy-runner.d.ts +8 -1
- package/src/server/proxy/proxy-runner.js +95 -28
- package/src/server/storage/connection-request-store.d.ts +41 -1
- package/src/server/storage/connection-request-store.js +260 -22
- package/src/server/storage/connection-retirement.d.ts +7 -0
- package/src/server/storage/connection-retirement.js +21 -0
- package/src/server/storage/connection-store.d.ts +19 -0
- package/src/server/storage/connection-store.js +172 -0
- package/src/server/storage/node-runtime-database.js +3 -3
- package/src/server/storage/oauth-state-store.d.ts +12 -0
- package/src/server/storage/oauth-state-store.js +36 -0
- package/src/server/storage/{postgres-migrations.d.ts → postgres/migrations.d.ts} +2 -2
- package/src/server/storage/{postgres-migrations.js → postgres/migrations.js} +1 -1
- package/src/server/storage/postgres/runtime-store.d.ts +43 -0
- package/src/server/storage/{postgres-runtime-store.js → postgres/runtime-store.js} +62 -122
- package/src/server/storage/runtime-database.d.ts +4 -0
- package/src/server/storage/runtime-sql.d.ts +1 -1
- package/src/server/storage/runtime-sql.js +2 -1
- package/src/server/storage/runtime-store.d.ts +1 -0
- package/src/server/storage/runtime-token-service.d.ts +2 -0
- package/src/server/storage/runtime-token-service.js +3 -0
- package/src/server/storage/saas-project-store.d.ts +77 -0
- package/src/server/storage/saas-project-store.js +273 -0
- package/src/server/storage/{sqlite-runtime-store.d.ts → sqlite/runtime-store.d.ts} +22 -34
- package/src/server/storage/{sqlite-runtime-store.js → sqlite/runtime-store.js} +104 -142
- package/src/server/storage/trigger-store.d.ts +16 -0
- package/src/server/storage/trigger-store.js +96 -0
- package/src/triggers/common/config.d.ts +2 -0
- package/src/triggers/common/config.js +17 -0
- package/src/triggers/common/configOptions.d.ts +13 -0
- package/src/triggers/common/configOptions.js +1 -0
- package/src/triggers/common/encoding.d.ts +3 -0
- package/src/triggers/common/encoding.js +19 -0
- package/src/triggers/common/integration.d.ts +115 -0
- package/src/triggers/common/integration.js +31 -0
- package/src/triggers/common/json.d.ts +6 -0
- package/src/triggers/common/json.js +91 -0
- package/src/triggers/common/poll.d.ts +41 -0
- package/src/triggers/common/poll.js +15 -0
- package/src/triggers/common/proxy.d.ts +14 -0
- package/src/triggers/common/proxy.js +1 -0
- package/src/triggers/common/types.d.ts +42 -0
- package/src/triggers/common/types.js +1 -0
- package/src/triggers/maintenance.d.ts +40 -0
- package/src/triggers/maintenance.js +120 -0
- package/src/triggers/metadata.d.ts +8 -0
- package/src/triggers/metadata.js +1 -0
- package/src/triggers/request.d.ts +33 -0
- package/src/triggers/request.js +52 -0
- package/src/triggers/resources.d.ts +12 -0
- package/src/triggers/resources.js +121 -0
- package/src/triggers/signature.d.ts +4 -0
- package/src/triggers/signature.js +48 -0
- package/src/triggers/store.d.ts +29 -0
- package/src/triggers/store.js +1 -0
- package/src/triggers/subscriptions.d.ts +22 -0
- package/src/triggers/subscriptions.js +220 -0
- package/src/triggers/trigger-runner.d.ts +38 -0
- package/src/triggers/trigger-runner.js +183 -0
- package/assets/open-connector/catalog/apps/shopify_admin.json +0 -5423
- package/src/providers/shopify/runtime.d.ts +0 -14
- package/src/providers/shopify/scopes.d.ts +0 -3
- package/src/providers/shopify/scopes.js +0 -3
- package/src/providers/shopify_admin/executors.js +0 -37
- package/src/providers/shopify_admin/runtime.d.ts +0 -23
- package/src/providers/shopify_admin/runtime.js +0 -1486
- package/src/server/storage/postgres-runtime-store.d.ts +0 -39
- /package/src/providers/{shopify_admin → api_route}/executors.d.ts +0 -0
|
@@ -1,8 +1,60 @@
|
|
|
1
|
+
import { createHash } from "node:crypto";
|
|
2
|
+
import { createReadStream, createWriteStream } from "node:fs";
|
|
3
|
+
import { mkdtemp, rm } from "node:fs/promises";
|
|
4
|
+
import { tmpdir } from "node:os";
|
|
5
|
+
import { join } from "node:path";
|
|
6
|
+
import { Readable } from "node:stream";
|
|
7
|
+
import { pipeline } from "node:stream/promises";
|
|
1
8
|
import { compactObject, looseArray, optionalBoolean, optionalNumber, optionalRecord, optionalString, } from "../../core/cast.js";
|
|
2
|
-
import { jsonObject,
|
|
3
|
-
import { ProviderRequestError, providerUserAgent, requiredResponseRecord } from "../provider-runtime.js";
|
|
9
|
+
import { jsonObject, queryParams } from "../../core/request.js";
|
|
10
|
+
import { providerInputError, runProviderRequest, ProviderRequestError, providerUserAgent, requiredResponseRecord, } from "../provider-runtime.js";
|
|
4
11
|
export const vercelApiBaseUrl = "https://api.vercel.com";
|
|
5
12
|
export const vercelActionHandlers = {
|
|
13
|
+
create_git_deployment(input, context) {
|
|
14
|
+
return vercelCreateGitDeployment(input, context);
|
|
15
|
+
},
|
|
16
|
+
redeploy_deployment(input, context) {
|
|
17
|
+
return vercelRedeployDeployment(input, context);
|
|
18
|
+
},
|
|
19
|
+
upload_deployment_file_from_url(input, context) {
|
|
20
|
+
return vercelUploadDeploymentFileFromUrl(input, context);
|
|
21
|
+
},
|
|
22
|
+
create_file_deployment(input, context) {
|
|
23
|
+
return vercelCreateFileDeployment(input, context);
|
|
24
|
+
},
|
|
25
|
+
list_deployment_files(input, context) {
|
|
26
|
+
return vercelListDeploymentFiles(input, context);
|
|
27
|
+
},
|
|
28
|
+
get_deployment_file_contents(input, context) {
|
|
29
|
+
return vercelGetDeploymentFileContents(input, context);
|
|
30
|
+
},
|
|
31
|
+
list_deployment_aliases(input, context) {
|
|
32
|
+
return vercelListDeploymentAliases(input, context);
|
|
33
|
+
},
|
|
34
|
+
assign_deployment_alias(input, context) {
|
|
35
|
+
return vercelAssignDeploymentAlias(input, context);
|
|
36
|
+
},
|
|
37
|
+
update_deployment_integration_action(input, context) {
|
|
38
|
+
return vercelUpdateDeploymentIntegrationAction(input, context);
|
|
39
|
+
},
|
|
40
|
+
cancel_deployment(input, context) {
|
|
41
|
+
return vercelCancelDeployment(input, context);
|
|
42
|
+
},
|
|
43
|
+
delete_deployment(input, context) {
|
|
44
|
+
return vercelDeleteDeployment(input, context);
|
|
45
|
+
},
|
|
46
|
+
promote_deployment(input, context) {
|
|
47
|
+
return vercelPromoteDeployment(input, context);
|
|
48
|
+
},
|
|
49
|
+
rollback_deployment(input, context) {
|
|
50
|
+
return vercelRollbackDeployment(input, context);
|
|
51
|
+
},
|
|
52
|
+
get_latest_deployment_promotion_aliases(input, context) {
|
|
53
|
+
return vercelGetLatestDeploymentPromotionAliases(input, context);
|
|
54
|
+
},
|
|
55
|
+
update_deployment_rollback_description(input, context) {
|
|
56
|
+
return vercelUpdateDeploymentRollbackDescription(input, context);
|
|
57
|
+
},
|
|
6
58
|
get_auth_user(input, context) {
|
|
7
59
|
return vercelGetAuthUser(input, context);
|
|
8
60
|
},
|
|
@@ -339,18 +391,26 @@ async function vercelUpdateProject(input, context) {
|
|
|
339
391
|
};
|
|
340
392
|
}
|
|
341
393
|
async function vercelListDeployments(input, context) {
|
|
394
|
+
rejectConflictingDeploymentProjectFilters(input);
|
|
342
395
|
const payload = await requestVercelJson({
|
|
343
|
-
path: "/
|
|
396
|
+
path: "/v7/deployments",
|
|
344
397
|
apiKey: context.apiKey,
|
|
398
|
+
scope: resolveTeamScope(input, context),
|
|
345
399
|
fetcher: context.fetcher,
|
|
346
400
|
mode: "execute",
|
|
347
|
-
query:
|
|
348
|
-
|
|
401
|
+
query: compactObject({
|
|
402
|
+
app: optionalString(input.app),
|
|
403
|
+
limit: toQueryString(optionalNumber(input.limit)),
|
|
349
404
|
projectId: optionalString(input.projectId),
|
|
350
|
-
|
|
351
|
-
|
|
405
|
+
projectIds: normalizeStringArray(input.projectIds),
|
|
406
|
+
since: toQueryString(optionalNumber(input.since)),
|
|
407
|
+
until: toQueryString(optionalNumber(input.until)),
|
|
352
408
|
target: optionalString(input.target),
|
|
353
|
-
state:
|
|
409
|
+
state: toCommaSeparatedString(input.states),
|
|
410
|
+
users: toCommaSeparatedString(input.userIds),
|
|
411
|
+
rollbackCandidate: toQueryBoolean(optionalBoolean(input.rollbackCandidate)),
|
|
412
|
+
branch: optionalString(input.branch),
|
|
413
|
+
sha: optionalString(input.sha),
|
|
354
414
|
}),
|
|
355
415
|
});
|
|
356
416
|
return compactObject({
|
|
@@ -363,10 +423,11 @@ async function vercelGetDeployment(input, context) {
|
|
|
363
423
|
const payload = await requestVercelJson({
|
|
364
424
|
path: `/v13/deployments/${encodeURIComponent(idOrUrl)}`,
|
|
365
425
|
apiKey: context.apiKey,
|
|
426
|
+
scope: resolveTeamScope(input, context),
|
|
366
427
|
fetcher: context.fetcher,
|
|
367
428
|
mode: "execute",
|
|
368
|
-
query:
|
|
369
|
-
withGitRepoInfo: optionalBoolean(input.withGitRepoInfo),
|
|
429
|
+
query: compactObject({
|
|
430
|
+
withGitRepoInfo: toQueryBoolean(optionalBoolean(input.withGitRepoInfo)),
|
|
370
431
|
}),
|
|
371
432
|
notFoundAsInvalidInput: true,
|
|
372
433
|
});
|
|
@@ -379,14 +440,18 @@ async function vercelGetDeploymentEvents(input, context) {
|
|
|
379
440
|
const payload = await requestVercelJson({
|
|
380
441
|
path: `/v3/deployments/${encodeURIComponent(idOrUrl)}/events`,
|
|
381
442
|
apiKey: context.apiKey,
|
|
443
|
+
scope: resolveTeamScope(input, context),
|
|
382
444
|
fetcher: context.fetcher,
|
|
383
445
|
mode: "execute",
|
|
384
|
-
query:
|
|
385
|
-
builds:
|
|
446
|
+
query: compactObject({
|
|
447
|
+
builds: toQueryFlag(optionalBoolean(input.builds)),
|
|
448
|
+
delimiter: toQueryFlag(optionalBoolean(input.delimiter)),
|
|
386
449
|
direction: optionalString(input.direction),
|
|
387
|
-
limit: optionalNumber(input.limit),
|
|
388
|
-
|
|
389
|
-
|
|
450
|
+
limit: toQueryString(optionalNumber(input.limit)),
|
|
451
|
+
name: optionalString(input.buildId),
|
|
452
|
+
since: toQueryString(optionalNumber(input.since)),
|
|
453
|
+
statusCode: optionalString(input.statusCode),
|
|
454
|
+
until: toQueryString(optionalNumber(input.until)),
|
|
390
455
|
}),
|
|
391
456
|
notFoundAsInvalidInput: true,
|
|
392
457
|
});
|
|
@@ -644,6 +709,10 @@ async function requestVercelJson(options) {
|
|
|
644
709
|
if (!response.ok) {
|
|
645
710
|
throw await mapVercelError(response, options.mode, options.notFoundAsInvalidInput ?? false);
|
|
646
711
|
}
|
|
712
|
+
if (options.responseBody === "none") {
|
|
713
|
+
await response.body?.cancel();
|
|
714
|
+
return undefined;
|
|
715
|
+
}
|
|
647
716
|
if (response.status === 204) {
|
|
648
717
|
throw new ProviderRequestError(502, "vercel returned 204 No Content for a JSON request");
|
|
649
718
|
}
|
|
@@ -669,33 +738,47 @@ async function requestVercelNoContent(options) {
|
|
|
669
738
|
throw new ProviderRequestError(502, "vercel returned a response body for a no-content request");
|
|
670
739
|
}
|
|
671
740
|
async function requestVercel(options) {
|
|
672
|
-
const url = buildVercelUrl(options.path,
|
|
741
|
+
const url = buildVercelUrl(options.path, {
|
|
742
|
+
...options.query,
|
|
743
|
+
...(options.includeTeamScope === false ? {} : options.scope),
|
|
744
|
+
});
|
|
673
745
|
try {
|
|
674
746
|
return await options.fetcher(url, {
|
|
747
|
+
signal: options.signal,
|
|
675
748
|
method: options.method ?? "GET",
|
|
676
|
-
headers: vercelHeaders(options.apiKey, options.body !== undefined),
|
|
677
|
-
|
|
749
|
+
headers: vercelHeaders(options.apiKey, options.body !== undefined, options.headers),
|
|
750
|
+
body: options.rawBody ?? (options.body === undefined ? undefined : JSON.stringify(options.body)),
|
|
751
|
+
...(options.rawBody instanceof ReadableStream ? { duplex: "half" } : {}),
|
|
678
752
|
});
|
|
679
753
|
}
|
|
680
754
|
catch (error) {
|
|
755
|
+
if (error instanceof ProviderRequestError)
|
|
756
|
+
throw error;
|
|
681
757
|
throw new ProviderRequestError(502, error instanceof Error ? error.message : "vercel request failed");
|
|
682
758
|
}
|
|
683
759
|
}
|
|
684
760
|
function buildVercelUrl(path, query) {
|
|
685
761
|
const url = new URL(path, vercelApiBaseUrl);
|
|
686
762
|
for (const [key, value] of Object.entries(query ?? {})) {
|
|
687
|
-
if (value
|
|
763
|
+
if (Array.isArray(value)) {
|
|
764
|
+
for (const item of value) {
|
|
765
|
+
url.searchParams.append(key, item);
|
|
766
|
+
}
|
|
767
|
+
}
|
|
768
|
+
else if (value !== undefined) {
|
|
688
769
|
url.searchParams.set(key, value);
|
|
689
770
|
}
|
|
690
771
|
}
|
|
691
772
|
return url.toString();
|
|
692
773
|
}
|
|
693
|
-
function vercelHeaders(apiKey, hasJsonBody) {
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
774
|
+
function vercelHeaders(apiKey, hasJsonBody, additional) {
|
|
775
|
+
const headers = new Headers(additional);
|
|
776
|
+
headers.set("authorization", `Bearer ${apiKey}`);
|
|
777
|
+
headers.set("user-agent", providerUserAgent);
|
|
778
|
+
if (hasJsonBody && !headers.has("content-type")) {
|
|
779
|
+
headers.set("content-type", "application/json");
|
|
780
|
+
}
|
|
781
|
+
return headers;
|
|
699
782
|
}
|
|
700
783
|
async function mapVercelError(response, mode, notFoundAsInvalidInput) {
|
|
701
784
|
const error = await readVercelError(response);
|
|
@@ -703,7 +786,7 @@ async function mapVercelError(response, mode, notFoundAsInvalidInput) {
|
|
|
703
786
|
return new ProviderRequestError(400, error.message, error);
|
|
704
787
|
}
|
|
705
788
|
if (response.status === 401) {
|
|
706
|
-
return new ProviderRequestError(
|
|
789
|
+
return new ProviderRequestError(response.status, error.message, error, "provider_error");
|
|
707
790
|
}
|
|
708
791
|
if ((response.status === 404 || response.status === 410) && notFoundAsInvalidInput) {
|
|
709
792
|
return new ProviderRequestError(400, error.message, error);
|
|
@@ -789,7 +872,7 @@ function mapProject(value) {
|
|
|
789
872
|
function mapDeployment(value) {
|
|
790
873
|
const deployment = requiredResponseRecord(value, "deployment");
|
|
791
874
|
return compactObject({
|
|
792
|
-
id: requireString(deployment.id, "deployment.id"),
|
|
875
|
+
id: requireString(deployment.id ?? deployment.uid, "deployment.id or deployment.uid"),
|
|
793
876
|
name: optionalString(deployment.name),
|
|
794
877
|
url: optionalString(deployment.url),
|
|
795
878
|
state: optionalString(deployment.state),
|
|
@@ -896,3 +979,630 @@ function rejectSensitiveDevelopmentConflict(input) {
|
|
|
896
979
|
throw new ProviderRequestError(400, "sensitive env does not support development target");
|
|
897
980
|
}
|
|
898
981
|
}
|
|
982
|
+
async function vercelCreateGitDeployment(input, context) {
|
|
983
|
+
validateDeploymentGitSource(input);
|
|
984
|
+
const gitProvider = requireString(input.gitProvider, "gitProvider");
|
|
985
|
+
const payload = await requestVercelJson({
|
|
986
|
+
path: "/v13/deployments",
|
|
987
|
+
apiKey: context.apiKey,
|
|
988
|
+
scope: resolveTeamScope(input, context),
|
|
989
|
+
fetcher: context.fetcher,
|
|
990
|
+
mode: "execute",
|
|
991
|
+
method: "POST",
|
|
992
|
+
query: deploymentSubmissionQuery(input),
|
|
993
|
+
body: compactObject({
|
|
994
|
+
...deploymentSubmissionBody(input),
|
|
995
|
+
gitSource: buildVercelGitSource(gitProvider, input),
|
|
996
|
+
gitAccessToken: optionalString(input.gitAccessToken),
|
|
997
|
+
gitMetadata: optionalRecord(input.gitMetadata),
|
|
998
|
+
}),
|
|
999
|
+
});
|
|
1000
|
+
return { deployment: mapDeployment(payload) };
|
|
1001
|
+
}
|
|
1002
|
+
async function vercelRedeployDeployment(input, context) {
|
|
1003
|
+
const payload = await requestVercelJson({
|
|
1004
|
+
path: "/v13/deployments",
|
|
1005
|
+
apiKey: context.apiKey,
|
|
1006
|
+
scope: resolveTeamScope(input, context),
|
|
1007
|
+
fetcher: context.fetcher,
|
|
1008
|
+
mode: "execute",
|
|
1009
|
+
method: "POST",
|
|
1010
|
+
query: deploymentSubmissionQuery(input),
|
|
1011
|
+
body: compactObject({
|
|
1012
|
+
...deploymentSubmissionBody(input),
|
|
1013
|
+
deploymentId: optionalString(input.deploymentId),
|
|
1014
|
+
withLatestCommit: optionalBoolean(input.withLatestCommit),
|
|
1015
|
+
}),
|
|
1016
|
+
});
|
|
1017
|
+
return { deployment: mapDeployment(payload) };
|
|
1018
|
+
}
|
|
1019
|
+
async function vercelUploadDeploymentFileFromUrl(input, context) {
|
|
1020
|
+
return runProviderRequest({ label: "Vercel file upload", signal: context.signal, timeoutMs: 300_000 }, async (signal) => {
|
|
1021
|
+
validateOptionalUploadDigest(input);
|
|
1022
|
+
const fileUrl = requireString(input.fileUrl, "fileUrl");
|
|
1023
|
+
const suppliedSha = optionalString(input.sha);
|
|
1024
|
+
const suppliedSize = optionalNumber(input.size);
|
|
1025
|
+
const hasSuppliedMetadata = suppliedSha !== undefined && suppliedSize !== undefined;
|
|
1026
|
+
if (suppliedSize !== undefined && suppliedSize > vercelConnectorMaxDeploymentFileBytes) {
|
|
1027
|
+
throw new ProviderRequestError(413, `size exceeds the Connector deployment upload safety limit of ${vercelConnectorMaxDeploymentFileBytes} bytes`, undefined, "invalid_input");
|
|
1028
|
+
}
|
|
1029
|
+
const staged = hasSuppliedMetadata
|
|
1030
|
+
? undefined
|
|
1031
|
+
: await stageRemoteDeploymentFile(fileUrl, context.fetcher, signal);
|
|
1032
|
+
const metadata = staged
|
|
1033
|
+
? { sha: staged.sha, size: staged.size }
|
|
1034
|
+
: { sha: requireSha1(suppliedSha ?? ""), size: suppliedSize ?? 0 };
|
|
1035
|
+
const sourceResponse = staged ? undefined : await context.fetcher(fileUrl, { signal });
|
|
1036
|
+
if (sourceResponse && (!sourceResponse.ok || !sourceResponse.body)) {
|
|
1037
|
+
await sourceResponse.body?.cancel().catch(() => undefined);
|
|
1038
|
+
throw new ProviderRequestError(502, `Vercel upload source download failed with HTTP ${sourceResponse.status}`, undefined, "provider_error");
|
|
1039
|
+
}
|
|
1040
|
+
const declaredSourceLength = sourceResponse?.headers.get("content-length");
|
|
1041
|
+
const declaredSourceBytes = declaredSourceLength === undefined || declaredSourceLength === null ? undefined : Number(declaredSourceLength);
|
|
1042
|
+
if (sourceResponse?.body &&
|
|
1043
|
+
declaredSourceBytes !== undefined &&
|
|
1044
|
+
Number.isFinite(declaredSourceBytes) &&
|
|
1045
|
+
declaredSourceBytes !== metadata.size) {
|
|
1046
|
+
await sourceResponse.body.cancel().catch(() => undefined);
|
|
1047
|
+
throw new ProviderRequestError(400, `fileUrl content-length ${declaredSourceBytes} does not match size ${metadata.size}`, undefined, "invalid_input");
|
|
1048
|
+
}
|
|
1049
|
+
const stagedReadStream = staged ? createReadStream(staged.filePath) : undefined;
|
|
1050
|
+
const rawBody = stagedReadStream
|
|
1051
|
+
? Readable.toWeb(stagedReadStream)
|
|
1052
|
+
: sourceResponse?.body
|
|
1053
|
+
? createSizeCheckedUploadBody(sourceResponse.body, metadata.size)
|
|
1054
|
+
: undefined;
|
|
1055
|
+
try {
|
|
1056
|
+
await requestVercelJson({
|
|
1057
|
+
path: "/v2/files",
|
|
1058
|
+
apiKey: context.apiKey,
|
|
1059
|
+
scope: resolveTeamScope(input, context),
|
|
1060
|
+
fetcher: context.fetcher,
|
|
1061
|
+
signal,
|
|
1062
|
+
mode: "execute",
|
|
1063
|
+
method: "POST",
|
|
1064
|
+
rawBody,
|
|
1065
|
+
headers: {
|
|
1066
|
+
"content-length": String(metadata.size),
|
|
1067
|
+
"content-type": "application/octet-stream",
|
|
1068
|
+
"x-vercel-digest": metadata.sha,
|
|
1069
|
+
},
|
|
1070
|
+
responseBody: "none",
|
|
1071
|
+
});
|
|
1072
|
+
return metadata;
|
|
1073
|
+
}
|
|
1074
|
+
finally {
|
|
1075
|
+
stagedReadStream?.destroy();
|
|
1076
|
+
await sourceResponse?.body?.cancel().catch(() => undefined);
|
|
1077
|
+
await staged?.cleanup();
|
|
1078
|
+
}
|
|
1079
|
+
});
|
|
1080
|
+
}
|
|
1081
|
+
async function vercelCreateFileDeployment(input, context) {
|
|
1082
|
+
const payload = await requestVercelJson({
|
|
1083
|
+
path: "/v13/deployments",
|
|
1084
|
+
apiKey: context.apiKey,
|
|
1085
|
+
scope: resolveTeamScope(input, context),
|
|
1086
|
+
fetcher: context.fetcher,
|
|
1087
|
+
mode: "execute",
|
|
1088
|
+
method: "POST",
|
|
1089
|
+
query: deploymentSubmissionQuery(input),
|
|
1090
|
+
body: compactObject({
|
|
1091
|
+
...deploymentSubmissionBody(input),
|
|
1092
|
+
files: normalizeDeploymentFileReferences(input.files),
|
|
1093
|
+
}),
|
|
1094
|
+
});
|
|
1095
|
+
return { deployment: mapDeployment(payload) };
|
|
1096
|
+
}
|
|
1097
|
+
async function vercelListDeploymentFiles(input, context) {
|
|
1098
|
+
const deploymentId = requireString(input.deploymentId, "deploymentId");
|
|
1099
|
+
const payload = await requestVercelJson({
|
|
1100
|
+
path: `/v6/deployments/${encodeURIComponent(deploymentId)}/files`,
|
|
1101
|
+
apiKey: context.apiKey,
|
|
1102
|
+
scope: resolveTeamScope(input, context),
|
|
1103
|
+
fetcher: context.fetcher,
|
|
1104
|
+
mode: "execute",
|
|
1105
|
+
notFoundAsInvalidInput: true,
|
|
1106
|
+
});
|
|
1107
|
+
return {
|
|
1108
|
+
files: normalizeArrayPayload(payload, "files").map((file) => mapDeploymentFile(file)),
|
|
1109
|
+
};
|
|
1110
|
+
}
|
|
1111
|
+
async function vercelGetDeploymentFileContents(input, context) {
|
|
1112
|
+
const deploymentId = requireString(input.deploymentId, "deploymentId");
|
|
1113
|
+
const fileId = requireString(input.fileId, "fileId");
|
|
1114
|
+
const response = await requestVercelResponse({
|
|
1115
|
+
path: `/v8/deployments/${encodeURIComponent(deploymentId)}/files/${encodeURIComponent(fileId)}`,
|
|
1116
|
+
apiKey: context.apiKey,
|
|
1117
|
+
scope: resolveTeamScope(input, context),
|
|
1118
|
+
fetcher: context.fetcher,
|
|
1119
|
+
mode: "execute",
|
|
1120
|
+
query: compactObject({ path: optionalString(input.path) }),
|
|
1121
|
+
notFoundAsInvalidInput: true,
|
|
1122
|
+
});
|
|
1123
|
+
return { contentBase64: await readDeploymentFileBase64(response) };
|
|
1124
|
+
}
|
|
1125
|
+
async function vercelListDeploymentAliases(input, context) {
|
|
1126
|
+
const deploymentId = requireString(input.deploymentId, "deploymentId");
|
|
1127
|
+
const payload = await requestVercelJson({
|
|
1128
|
+
path: `/v2/deployments/${encodeURIComponent(deploymentId)}/aliases`,
|
|
1129
|
+
apiKey: context.apiKey,
|
|
1130
|
+
scope: resolveTeamScope(input, context),
|
|
1131
|
+
fetcher: context.fetcher,
|
|
1132
|
+
mode: "execute",
|
|
1133
|
+
notFoundAsInvalidInput: true,
|
|
1134
|
+
});
|
|
1135
|
+
return {
|
|
1136
|
+
aliases: looseArray(payload.aliases).map((alias) => mapDeploymentAlias(alias)),
|
|
1137
|
+
};
|
|
1138
|
+
}
|
|
1139
|
+
async function vercelAssignDeploymentAlias(input, context) {
|
|
1140
|
+
const deploymentId = requireString(input.deploymentId, "deploymentId");
|
|
1141
|
+
const payload = await requestVercelJson({
|
|
1142
|
+
path: `/v2/deployments/${encodeURIComponent(deploymentId)}/aliases`,
|
|
1143
|
+
apiKey: context.apiKey,
|
|
1144
|
+
scope: resolveTeamScope(input, context),
|
|
1145
|
+
fetcher: context.fetcher,
|
|
1146
|
+
mode: "execute",
|
|
1147
|
+
method: "POST",
|
|
1148
|
+
body: compactObject({
|
|
1149
|
+
alias: optionalString(input.alias),
|
|
1150
|
+
redirect: input.redirect === null ? null : optionalString(input.redirect),
|
|
1151
|
+
}),
|
|
1152
|
+
notFoundAsInvalidInput: true,
|
|
1153
|
+
});
|
|
1154
|
+
return { alias: mapDeploymentAlias(payload) };
|
|
1155
|
+
}
|
|
1156
|
+
async function vercelUpdateDeploymentIntegrationAction(input, context) {
|
|
1157
|
+
validateIntegrationStatusUrl(input);
|
|
1158
|
+
const deploymentId = requireString(input.deploymentId, "deploymentId");
|
|
1159
|
+
const integrationConfigurationId = requireString(input.integrationConfigurationId, "integrationConfigurationId");
|
|
1160
|
+
const resourceId = requireString(input.resourceId, "resourceId");
|
|
1161
|
+
const action = requireString(input.action, "action");
|
|
1162
|
+
await requestVercelJson({
|
|
1163
|
+
path: `/v1/deployments/${encodeURIComponent(deploymentId)}/integrations/${encodeURIComponent(integrationConfigurationId)}/resources/${encodeURIComponent(resourceId)}/actions/${encodeURIComponent(action)}`,
|
|
1164
|
+
apiKey: context.apiKey,
|
|
1165
|
+
scope: resolveTeamScope(input, context),
|
|
1166
|
+
fetcher: context.fetcher,
|
|
1167
|
+
mode: "execute",
|
|
1168
|
+
method: "PATCH",
|
|
1169
|
+
body: compactObject({
|
|
1170
|
+
status: optionalString(input.status),
|
|
1171
|
+
statusText: optionalString(input.statusText),
|
|
1172
|
+
statusUrl: optionalString(input.statusUrl),
|
|
1173
|
+
outcomes: Array.isArray(input.outcomes) ? input.outcomes : undefined,
|
|
1174
|
+
}),
|
|
1175
|
+
responseBody: "none",
|
|
1176
|
+
notFoundAsInvalidInput: true,
|
|
1177
|
+
includeTeamScope: false,
|
|
1178
|
+
});
|
|
1179
|
+
return { success: true, deploymentId, action };
|
|
1180
|
+
}
|
|
1181
|
+
function deploymentSubmissionBody(input) {
|
|
1182
|
+
return compactObject({
|
|
1183
|
+
name: optionalString(input.name),
|
|
1184
|
+
project: optionalString(input.project),
|
|
1185
|
+
target: optionalString(input.target),
|
|
1186
|
+
customEnvironmentSlugOrId: optionalString(input.customEnvironmentSlugOrId),
|
|
1187
|
+
buildMachine: optionalString(input.buildMachine),
|
|
1188
|
+
monorepoManager: optionalString(input.monorepoManager),
|
|
1189
|
+
meta: optionalRecord(input.meta),
|
|
1190
|
+
projectSettings: optionalRecord(input.projectSettings),
|
|
1191
|
+
});
|
|
1192
|
+
}
|
|
1193
|
+
function buildVercelGitSource(gitProvider, input) {
|
|
1194
|
+
const repositoryId = optionalString(input.repositoryId);
|
|
1195
|
+
const repositoryOwner = optionalString(input.repositoryOwner);
|
|
1196
|
+
const repositoryName = optionalString(input.repositoryName);
|
|
1197
|
+
const common = compactObject({
|
|
1198
|
+
type: gitProvider,
|
|
1199
|
+
ref: optionalString(input.ref),
|
|
1200
|
+
sha: optionalString(input.sha),
|
|
1201
|
+
});
|
|
1202
|
+
if (gitProvider === "gitlab") {
|
|
1203
|
+
return { ...common, projectId: repositoryId };
|
|
1204
|
+
}
|
|
1205
|
+
if (gitProvider === "bitbucket") {
|
|
1206
|
+
return repositoryId
|
|
1207
|
+
? compactObject({
|
|
1208
|
+
...common,
|
|
1209
|
+
repoUuid: repositoryId,
|
|
1210
|
+
workspaceUuid: optionalString(input.workspaceUuid),
|
|
1211
|
+
})
|
|
1212
|
+
: { ...common, owner: repositoryOwner, slug: repositoryName };
|
|
1213
|
+
}
|
|
1214
|
+
if (gitProvider === "github" || gitProvider === "github-limited") {
|
|
1215
|
+
return repositoryId
|
|
1216
|
+
? { ...common, repoId: repositoryId }
|
|
1217
|
+
: { ...common, org: repositoryOwner, repo: repositoryName };
|
|
1218
|
+
}
|
|
1219
|
+
return compactObject({
|
|
1220
|
+
...common,
|
|
1221
|
+
repoId: repositoryId,
|
|
1222
|
+
owner: gitProvider === "cursor-origin" ? repositoryOwner : undefined,
|
|
1223
|
+
repo: gitProvider === "cursor-origin" ? repositoryName : undefined,
|
|
1224
|
+
});
|
|
1225
|
+
}
|
|
1226
|
+
async function vercelCancelDeployment(input, context) {
|
|
1227
|
+
const deploymentId = requireString(input.deploymentId, "deploymentId");
|
|
1228
|
+
const payload = await requestVercelJson({
|
|
1229
|
+
path: `/v12/deployments/${encodeURIComponent(deploymentId)}/cancel`,
|
|
1230
|
+
apiKey: context.apiKey,
|
|
1231
|
+
scope: resolveTeamScope(input, context),
|
|
1232
|
+
fetcher: context.fetcher,
|
|
1233
|
+
mode: "execute",
|
|
1234
|
+
method: "PATCH",
|
|
1235
|
+
notFoundAsInvalidInput: true,
|
|
1236
|
+
});
|
|
1237
|
+
return { deployment: mapDeployment(payload) };
|
|
1238
|
+
}
|
|
1239
|
+
async function vercelDeleteDeployment(input, context) {
|
|
1240
|
+
validateDeploymentDeletionTarget(input);
|
|
1241
|
+
const deploymentId = optionalString(input.deploymentId);
|
|
1242
|
+
const deploymentUrl = optionalString(input.url);
|
|
1243
|
+
const expectedDeploymentId = optionalString(input.expectedDeploymentId);
|
|
1244
|
+
if ((deploymentId === undefined) === (deploymentUrl === undefined)) {
|
|
1245
|
+
throw new ProviderRequestError(400, "Configure exactly one of deploymentId or url", undefined, "invalid_input");
|
|
1246
|
+
}
|
|
1247
|
+
let stableDeploymentId = deploymentId;
|
|
1248
|
+
if (deploymentUrl) {
|
|
1249
|
+
if (!expectedDeploymentId) {
|
|
1250
|
+
throw new ProviderRequestError(400, "url deletion requires expectedDeploymentId", undefined, "invalid_input");
|
|
1251
|
+
}
|
|
1252
|
+
const resolved = await requestVercelJson({
|
|
1253
|
+
path: `/v13/deployments/${encodeURIComponent(deploymentUrl)}`,
|
|
1254
|
+
apiKey: context.apiKey,
|
|
1255
|
+
scope: resolveTeamScope(input, context),
|
|
1256
|
+
fetcher: context.fetcher,
|
|
1257
|
+
mode: "execute",
|
|
1258
|
+
notFoundAsInvalidInput: true,
|
|
1259
|
+
});
|
|
1260
|
+
const resolvedDeploymentId = requireString(resolved.id ?? resolved.uid, "resolved deployment.id or deployment.uid");
|
|
1261
|
+
if (resolvedDeploymentId !== expectedDeploymentId) {
|
|
1262
|
+
throw new ProviderRequestError(409, `url resolved to ${resolvedDeploymentId}, expected ${expectedDeploymentId}`, undefined, "invalid_input");
|
|
1263
|
+
}
|
|
1264
|
+
stableDeploymentId = resolvedDeploymentId;
|
|
1265
|
+
}
|
|
1266
|
+
const payload = await requestVercelJson({
|
|
1267
|
+
path: `/v13/deployments/${encodeURIComponent(stableDeploymentId ?? "")}`,
|
|
1268
|
+
apiKey: context.apiKey,
|
|
1269
|
+
scope: resolveTeamScope(input, context),
|
|
1270
|
+
fetcher: context.fetcher,
|
|
1271
|
+
mode: "execute",
|
|
1272
|
+
method: "DELETE",
|
|
1273
|
+
notFoundAsInvalidInput: true,
|
|
1274
|
+
});
|
|
1275
|
+
return {
|
|
1276
|
+
deploymentId: requireString(payload.uid, "deployment.uid"),
|
|
1277
|
+
state: requireString(payload.state, "deployment.state"),
|
|
1278
|
+
};
|
|
1279
|
+
}
|
|
1280
|
+
async function vercelPromoteDeployment(input, context) {
|
|
1281
|
+
const projectId = requireString(input.projectId, "projectId");
|
|
1282
|
+
const deploymentId = requireString(input.deploymentId, "deploymentId");
|
|
1283
|
+
const response = await requestVercelResponse({
|
|
1284
|
+
path: `/v10/projects/${encodeURIComponent(projectId)}/promote/${encodeURIComponent(deploymentId)}`,
|
|
1285
|
+
apiKey: context.apiKey,
|
|
1286
|
+
scope: resolveTeamScope(input, context),
|
|
1287
|
+
fetcher: context.fetcher,
|
|
1288
|
+
mode: "execute",
|
|
1289
|
+
method: "POST",
|
|
1290
|
+
notFoundAsInvalidInput: true,
|
|
1291
|
+
});
|
|
1292
|
+
return { accepted: true, statusCode: response.status, projectId, deploymentId };
|
|
1293
|
+
}
|
|
1294
|
+
async function vercelRollbackDeployment(input, context) {
|
|
1295
|
+
const projectId = requireString(input.projectId, "projectId");
|
|
1296
|
+
const deploymentId = requireString(input.deploymentId, "deploymentId");
|
|
1297
|
+
await requestVercelJson({
|
|
1298
|
+
path: `/v1/projects/${encodeURIComponent(projectId)}/rollback/${encodeURIComponent(deploymentId)}`,
|
|
1299
|
+
apiKey: context.apiKey,
|
|
1300
|
+
scope: resolveTeamScope(input, context),
|
|
1301
|
+
fetcher: context.fetcher,
|
|
1302
|
+
mode: "execute",
|
|
1303
|
+
method: "POST",
|
|
1304
|
+
query: compactObject({
|
|
1305
|
+
description: optionalString(input.description),
|
|
1306
|
+
}),
|
|
1307
|
+
responseBody: "none",
|
|
1308
|
+
notFoundAsInvalidInput: true,
|
|
1309
|
+
});
|
|
1310
|
+
return { success: true, projectId, deploymentId };
|
|
1311
|
+
}
|
|
1312
|
+
async function vercelGetLatestDeploymentPromotionAliases(input, context) {
|
|
1313
|
+
const projectId = requireString(input.projectId, "projectId");
|
|
1314
|
+
const payload = await requestVercelJson({
|
|
1315
|
+
path: `/v1/projects/${encodeURIComponent(projectId)}/promote/aliases`,
|
|
1316
|
+
apiKey: context.apiKey,
|
|
1317
|
+
scope: resolveTeamScope(input, context),
|
|
1318
|
+
fetcher: context.fetcher,
|
|
1319
|
+
mode: "execute",
|
|
1320
|
+
query: compactObject({
|
|
1321
|
+
limit: toQueryString(optionalNumber(input.limit)),
|
|
1322
|
+
since: toQueryString(optionalNumber(input.since)),
|
|
1323
|
+
until: toQueryString(optionalNumber(input.until)),
|
|
1324
|
+
failedOnly: toQueryBoolean(optionalBoolean(input.failedOnly)),
|
|
1325
|
+
}),
|
|
1326
|
+
notFoundAsInvalidInput: true,
|
|
1327
|
+
});
|
|
1328
|
+
return compactObject({
|
|
1329
|
+
aliases: looseArray(payload.aliases).map((alias) => mapPromotionAlias(alias)),
|
|
1330
|
+
pagination: optionalRecord(payload.pagination),
|
|
1331
|
+
});
|
|
1332
|
+
}
|
|
1333
|
+
async function vercelUpdateDeploymentRollbackDescription(input, context) {
|
|
1334
|
+
const projectId = requireString(input.projectId, "projectId");
|
|
1335
|
+
const deploymentId = requireString(input.deploymentId, "deploymentId");
|
|
1336
|
+
await requestVercelJson({
|
|
1337
|
+
path: `/v1/projects/${encodeURIComponent(projectId)}/rollback/${encodeURIComponent(deploymentId)}/update-description`,
|
|
1338
|
+
apiKey: context.apiKey,
|
|
1339
|
+
scope: resolveTeamScope(input, context),
|
|
1340
|
+
fetcher: context.fetcher,
|
|
1341
|
+
mode: "execute",
|
|
1342
|
+
method: "PATCH",
|
|
1343
|
+
body: { description: optionalString(input.description) },
|
|
1344
|
+
responseBody: "none",
|
|
1345
|
+
includeTeamScope: false,
|
|
1346
|
+
});
|
|
1347
|
+
return { success: true, projectId, deploymentId };
|
|
1348
|
+
}
|
|
1349
|
+
function deploymentSubmissionQuery(input) {
|
|
1350
|
+
return compactObject({
|
|
1351
|
+
forceNew: toQueryFlag(optionalBoolean(input.forceNew)),
|
|
1352
|
+
skipAutoDetectionConfirmation: toQueryFlag(optionalBoolean(input.skipAutoDetectionConfirmation)),
|
|
1353
|
+
});
|
|
1354
|
+
}
|
|
1355
|
+
function mapDeploymentFile(value) {
|
|
1356
|
+
const file = requiredResponseRecord(value, "deployment file");
|
|
1357
|
+
return compactObject({
|
|
1358
|
+
name: requireString(file.name, "deployment file.name"),
|
|
1359
|
+
type: requireString(file.type, "deployment file.type"),
|
|
1360
|
+
mode: requireNumber(file.mode, "deployment file.mode"),
|
|
1361
|
+
uid: optionalString(file.uid),
|
|
1362
|
+
contentType: optionalString(file.contentType),
|
|
1363
|
+
children: Array.isArray(file.children) ? file.children.map((child) => mapDeploymentFile(child)) : undefined,
|
|
1364
|
+
});
|
|
1365
|
+
}
|
|
1366
|
+
function mapDeploymentAlias(value) {
|
|
1367
|
+
const alias = requiredResponseRecord(value, "deployment alias");
|
|
1368
|
+
return compactObject({
|
|
1369
|
+
uid: requireString(alias.uid, "deployment alias.uid"),
|
|
1370
|
+
alias: requireString(alias.alias, "deployment alias.alias"),
|
|
1371
|
+
created: requireString(alias.created, "deployment alias.created"),
|
|
1372
|
+
redirect: alias.redirect === null ? null : optionalString(alias.redirect),
|
|
1373
|
+
oldDeploymentId: alias.oldDeploymentId === null ? null : optionalString(alias.oldDeploymentId),
|
|
1374
|
+
protectionBypass: optionalRecord(alias.protectionBypass),
|
|
1375
|
+
});
|
|
1376
|
+
}
|
|
1377
|
+
function mapPromotionAlias(value) {
|
|
1378
|
+
const alias = requiredResponseRecord(value, "promotion alias");
|
|
1379
|
+
return {
|
|
1380
|
+
id: requireString(alias.id, "promotion alias.id"),
|
|
1381
|
+
alias: requireString(alias.alias, "promotion alias.alias"),
|
|
1382
|
+
status: requireString(alias.status, "promotion alias.status"),
|
|
1383
|
+
};
|
|
1384
|
+
}
|
|
1385
|
+
function normalizeDeploymentFileReferences(value) {
|
|
1386
|
+
return looseArray(value).map((item, index) => {
|
|
1387
|
+
const file = requiredResponseRecord(item, `files[${index}]`);
|
|
1388
|
+
return {
|
|
1389
|
+
file: requireString(file.path, `files[${index}].path`),
|
|
1390
|
+
sha: requireSha1(requireString(file.sha, `files[${index}].sha`)),
|
|
1391
|
+
size: requireNumber(file.size, `files[${index}].size`),
|
|
1392
|
+
};
|
|
1393
|
+
});
|
|
1394
|
+
}
|
|
1395
|
+
async function stageRemoteDeploymentFile(fileUrl, fetcher, signal) {
|
|
1396
|
+
const response = await fetcher(fileUrl, { signal });
|
|
1397
|
+
if (!response.ok || !response.body) {
|
|
1398
|
+
await response.body?.cancel().catch(() => undefined);
|
|
1399
|
+
throw new ProviderRequestError(502, `Vercel upload source download failed with HTTP ${response.status}`, undefined, "provider_error");
|
|
1400
|
+
}
|
|
1401
|
+
const declaredSize = Number(response.headers.get("content-length"));
|
|
1402
|
+
if (Number.isFinite(declaredSize) && declaredSize > vercelConnectorMaxDeploymentFileBytes) {
|
|
1403
|
+
await response.body.cancel().catch(() => undefined);
|
|
1404
|
+
throw new ProviderRequestError(413, `fileUrl exceeds the Connector deployment upload safety limit of ${vercelConnectorMaxDeploymentFileBytes} bytes`, undefined, "invalid_input");
|
|
1405
|
+
}
|
|
1406
|
+
const directory = await mkdtemp(join(tmpdir(), "oomol-connector-vercel-"));
|
|
1407
|
+
const filePath = join(directory, "deployment-file");
|
|
1408
|
+
const hasher = createHash("sha1");
|
|
1409
|
+
let size = 0;
|
|
1410
|
+
let completed = false;
|
|
1411
|
+
const chunks = async function* () {
|
|
1412
|
+
for await (const chunk of response.body) {
|
|
1413
|
+
size += chunk.byteLength;
|
|
1414
|
+
if (size > vercelConnectorMaxDeploymentFileBytes) {
|
|
1415
|
+
throw new ProviderRequestError(413, `fileUrl exceeds the Connector deployment upload safety limit of ${vercelConnectorMaxDeploymentFileBytes} bytes`, undefined, "invalid_input");
|
|
1416
|
+
}
|
|
1417
|
+
hasher.update(chunk);
|
|
1418
|
+
yield chunk;
|
|
1419
|
+
}
|
|
1420
|
+
completed = true;
|
|
1421
|
+
};
|
|
1422
|
+
try {
|
|
1423
|
+
const destination = createWriteStream(filePath, { flags: "wx" });
|
|
1424
|
+
const closed = new Promise((resolve) => destination.once("close", resolve));
|
|
1425
|
+
try {
|
|
1426
|
+
await pipeline(Readable.from(chunks()), destination, { signal });
|
|
1427
|
+
}
|
|
1428
|
+
finally {
|
|
1429
|
+
if (!destination.destroyed)
|
|
1430
|
+
destination.destroy();
|
|
1431
|
+
await closed;
|
|
1432
|
+
}
|
|
1433
|
+
return {
|
|
1434
|
+
filePath,
|
|
1435
|
+
sha: hasher.digest("hex"),
|
|
1436
|
+
size,
|
|
1437
|
+
cleanup: () => rm(directory, { recursive: true, force: true }),
|
|
1438
|
+
};
|
|
1439
|
+
}
|
|
1440
|
+
catch (error) {
|
|
1441
|
+
await rm(directory, { recursive: true, force: true });
|
|
1442
|
+
throw error;
|
|
1443
|
+
}
|
|
1444
|
+
finally {
|
|
1445
|
+
if (!completed) {
|
|
1446
|
+
await response.body.cancel().catch(() => undefined);
|
|
1447
|
+
}
|
|
1448
|
+
}
|
|
1449
|
+
}
|
|
1450
|
+
function createSizeCheckedUploadBody(body, expectedBytes) {
|
|
1451
|
+
let receivedBytes = 0;
|
|
1452
|
+
const chunks = async function* () {
|
|
1453
|
+
for await (const chunk of body) {
|
|
1454
|
+
receivedBytes += chunk.byteLength;
|
|
1455
|
+
if (receivedBytes > expectedBytes) {
|
|
1456
|
+
throw new ProviderRequestError(400, `fileUrl returned more than the declared size of ${expectedBytes} bytes`, undefined, "invalid_input");
|
|
1457
|
+
}
|
|
1458
|
+
yield chunk;
|
|
1459
|
+
}
|
|
1460
|
+
if (receivedBytes !== expectedBytes) {
|
|
1461
|
+
throw new ProviderRequestError(400, `fileUrl returned ${receivedBytes} bytes, expected ${expectedBytes}`, undefined, "invalid_input");
|
|
1462
|
+
}
|
|
1463
|
+
};
|
|
1464
|
+
return Readable.toWeb(Readable.from(chunks()));
|
|
1465
|
+
}
|
|
1466
|
+
function requireSha1(value) {
|
|
1467
|
+
const normalized = value.toLowerCase();
|
|
1468
|
+
if (normalized.length !== 40) {
|
|
1469
|
+
throw new ProviderRequestError(400, "sha must be a 40-character SHA-1 digest", undefined, "invalid_input");
|
|
1470
|
+
}
|
|
1471
|
+
for (const character of normalized) {
|
|
1472
|
+
const code = character.charCodeAt(0);
|
|
1473
|
+
const isDigit = code >= 48 && code <= 57;
|
|
1474
|
+
const isLowerHex = code >= 97 && code <= 102;
|
|
1475
|
+
if (!isDigit && !isLowerHex) {
|
|
1476
|
+
throw new ProviderRequestError(400, "sha must be a 40-character SHA-1 digest", undefined, "invalid_input");
|
|
1477
|
+
}
|
|
1478
|
+
}
|
|
1479
|
+
return normalized;
|
|
1480
|
+
}
|
|
1481
|
+
async function readDeploymentFileBase64(response) {
|
|
1482
|
+
const text = await readDeploymentFileResponseText(response);
|
|
1483
|
+
if (!text) {
|
|
1484
|
+
throw new ProviderRequestError(502, "Vercel deployment file response is empty", undefined, "provider_error");
|
|
1485
|
+
}
|
|
1486
|
+
try {
|
|
1487
|
+
const payload = JSON.parse(text);
|
|
1488
|
+
if (typeof payload === "string") {
|
|
1489
|
+
return payload;
|
|
1490
|
+
}
|
|
1491
|
+
const object = optionalRecord(payload);
|
|
1492
|
+
const content = optionalString(object?.content) ?? optionalString(object?.data);
|
|
1493
|
+
if (content !== undefined) {
|
|
1494
|
+
return content;
|
|
1495
|
+
}
|
|
1496
|
+
}
|
|
1497
|
+
catch {
|
|
1498
|
+
return text;
|
|
1499
|
+
}
|
|
1500
|
+
throw new ProviderRequestError(502, "Vercel deployment file response is missing base64 content", undefined, "provider_error");
|
|
1501
|
+
}
|
|
1502
|
+
async function readDeploymentFileResponseText(response) {
|
|
1503
|
+
const declaredBytes = Number(response.headers.get("content-length"));
|
|
1504
|
+
if (Number.isFinite(declaredBytes) && declaredBytes > vercelMaxDeploymentFileContentResponseBytes) {
|
|
1505
|
+
await response.body?.cancel().catch(() => undefined);
|
|
1506
|
+
throw new ProviderRequestError(413, `Vercel deployment file response exceeds ${vercelMaxDeploymentFileContentResponseBytes} bytes`, undefined, "invalid_input");
|
|
1507
|
+
}
|
|
1508
|
+
const reader = response.body?.getReader();
|
|
1509
|
+
if (!reader) {
|
|
1510
|
+
return "";
|
|
1511
|
+
}
|
|
1512
|
+
const decoder = new TextDecoder();
|
|
1513
|
+
let text = "";
|
|
1514
|
+
let receivedBytes = 0;
|
|
1515
|
+
while (true) {
|
|
1516
|
+
const next = await reader.read();
|
|
1517
|
+
if (next.done) {
|
|
1518
|
+
break;
|
|
1519
|
+
}
|
|
1520
|
+
receivedBytes += next.value.byteLength;
|
|
1521
|
+
if (receivedBytes > vercelMaxDeploymentFileContentResponseBytes) {
|
|
1522
|
+
await reader.cancel().catch(() => undefined);
|
|
1523
|
+
throw new ProviderRequestError(413, `Vercel deployment file response exceeds ${vercelMaxDeploymentFileContentResponseBytes} bytes`, undefined, "invalid_input");
|
|
1524
|
+
}
|
|
1525
|
+
text += decoder.decode(next.value, { stream: true });
|
|
1526
|
+
}
|
|
1527
|
+
return text + decoder.decode();
|
|
1528
|
+
}
|
|
1529
|
+
function toQueryString(value) {
|
|
1530
|
+
return value === undefined ? undefined : String(value);
|
|
1531
|
+
}
|
|
1532
|
+
function toQueryFlag(value) {
|
|
1533
|
+
return value === undefined ? undefined : value ? "1" : "0";
|
|
1534
|
+
}
|
|
1535
|
+
function toQueryBoolean(value) {
|
|
1536
|
+
return value === undefined ? undefined : String(value);
|
|
1537
|
+
}
|
|
1538
|
+
function toCommaSeparatedString(value) {
|
|
1539
|
+
const items = normalizeStringArray(value);
|
|
1540
|
+
return items && items.length > 0 ? items.join(",") : undefined;
|
|
1541
|
+
}
|
|
1542
|
+
const vercelConnectorMaxDeploymentFileBytes = 1024 * 1024 * 1024;
|
|
1543
|
+
const vercelMaxDeploymentFileContentResponseBytes = 16 * 1024 * 1024;
|
|
1544
|
+
async function requestVercelResponse(options) {
|
|
1545
|
+
const response = await requestVercel(options);
|
|
1546
|
+
if (!response.ok)
|
|
1547
|
+
throw await mapVercelError(response, options.mode, options.notFoundAsInvalidInput ?? false);
|
|
1548
|
+
return response;
|
|
1549
|
+
}
|
|
1550
|
+
function rejectConflictingDeploymentProjectFilters(value) {
|
|
1551
|
+
if (value.projectId && value.projectIds) {
|
|
1552
|
+
throw providerInputError("projectId and projectIds cannot be used together");
|
|
1553
|
+
}
|
|
1554
|
+
}
|
|
1555
|
+
function validateDeploymentGitSource(value) {
|
|
1556
|
+
const hasRepositoryId = Boolean(value.repositoryId);
|
|
1557
|
+
const hasRepositoryName = Boolean(value.repositoryOwner && value.repositoryName);
|
|
1558
|
+
if (value.gitProvider === "vercel") {
|
|
1559
|
+
if (!hasRepositoryId || !value.sha) {
|
|
1560
|
+
throw providerInputError("vercel git source requires repositoryId and sha");
|
|
1561
|
+
}
|
|
1562
|
+
return;
|
|
1563
|
+
}
|
|
1564
|
+
if (!value.ref) {
|
|
1565
|
+
throw providerInputError(`${value.gitProvider ?? "git"} source requires ref`);
|
|
1566
|
+
}
|
|
1567
|
+
if (value.gitProvider === "github" || value.gitProvider === "github-limited") {
|
|
1568
|
+
if (hasRepositoryId === hasRepositoryName) {
|
|
1569
|
+
throw providerInputError("github source requires exactly one of repositoryId or repositoryOwner + repositoryName");
|
|
1570
|
+
}
|
|
1571
|
+
return;
|
|
1572
|
+
}
|
|
1573
|
+
if (value.gitProvider === "bitbucket") {
|
|
1574
|
+
if (hasRepositoryId === hasRepositoryName) {
|
|
1575
|
+
throw providerInputError("bitbucket source requires exactly one of repositoryId or repositoryOwner + repositoryName");
|
|
1576
|
+
}
|
|
1577
|
+
return;
|
|
1578
|
+
}
|
|
1579
|
+
if (!hasRepositoryId) {
|
|
1580
|
+
throw providerInputError(`${value.gitProvider ?? "git"} source requires repositoryId`);
|
|
1581
|
+
}
|
|
1582
|
+
}
|
|
1583
|
+
function validateOptionalUploadDigest(value) {
|
|
1584
|
+
if (Boolean(value.sha) !== (value.size !== undefined)) {
|
|
1585
|
+
throw providerInputError("sha and size must be supplied together or both omitted");
|
|
1586
|
+
}
|
|
1587
|
+
}
|
|
1588
|
+
function validateIntegrationStatusUrl(value) {
|
|
1589
|
+
if (!value.statusUrl || value.statusUrl.startsWith("sso:")) {
|
|
1590
|
+
return;
|
|
1591
|
+
}
|
|
1592
|
+
try {
|
|
1593
|
+
const url = new URL(value.statusUrl);
|
|
1594
|
+
if (url.protocol === "http:" || url.protocol === "https:") {
|
|
1595
|
+
return;
|
|
1596
|
+
}
|
|
1597
|
+
}
|
|
1598
|
+
catch { }
|
|
1599
|
+
throw providerInputError("statusUrl must use HTTP, HTTPS, or SSO");
|
|
1600
|
+
}
|
|
1601
|
+
function validateDeploymentDeletionTarget(value) {
|
|
1602
|
+
if (value.url && !value.expectedDeploymentId) {
|
|
1603
|
+
throw providerInputError("url deletion requires expectedDeploymentId");
|
|
1604
|
+
}
|
|
1605
|
+
if (value.deploymentId && value.expectedDeploymentId) {
|
|
1606
|
+
throw providerInputError("expectedDeploymentId is only valid with url");
|
|
1607
|
+
}
|
|
1608
|
+
}
|