runline 0.32.0 → 0.34.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/dist/auth/oauth2.d.ts +7 -1
- package/dist/auth/oauth2.js +10 -0
- package/dist/auth/token.d.ts +1 -0
- package/dist/auth/token.js +19 -1
- package/dist/auth/types.d.ts +22 -1
- package/dist/core/engine.d.ts +7 -0
- package/dist/core/engine.js +9 -0
- package/dist/credentials/policy.d.ts +53 -1
- package/dist/credentials/policy.js +146 -6
- package/dist/credentials/registry.d.ts +9 -0
- package/dist/credentials/registry.js +179 -22
- package/dist/credentials/transport.d.ts +48 -2
- package/dist/credentials/transport.js +248 -70
- package/dist/credentials/types.d.ts +167 -10
- package/dist/index.d.ts +5 -5
- package/dist/index.js +2 -2
- package/dist/plugin/api.d.ts +7 -0
- package/dist/plugin/api.js +7 -0
- package/dist/plugin/types.d.ts +12 -0
- package/dist/plugins/_shared/credentialAdapter.js +79 -15
- package/dist/plugins/_shared/credentials.js +389 -0
- package/dist/plugins/_shared/googleAuth.js +9 -40
- package/dist/plugins/_shared/googleCredentials.js +28 -7
- package/dist/plugins/_shared/microsoftAuth.js +13 -44
- package/dist/plugins/_shared/microsoftCredentials.js +30 -8
- package/dist/plugins/_shared/provider.js +2 -14
- package/dist/plugins/_shared/shiftCloud.js +22 -34
- package/dist/plugins/_shared/shiftCredentials.js +83 -0
- package/dist/plugins/_shared/shiftUpload.js +1 -1
- package/dist/plugins/actionNetwork/src/credentials.js +14 -0
- package/dist/plugins/actionNetwork/src/index.js +39 -50
- package/dist/plugins/activeCampaign/src/credentials.js +22 -0
- package/dist/plugins/activeCampaign/src/index.js +61 -132
- package/dist/plugins/adalo/src/credentials.js +16 -0
- package/dist/plugins/adalo/src/index.js +19 -43
- package/dist/plugins/affinity/src/credentials.js +19 -0
- package/dist/plugins/affinity/src/index.js +29 -54
- package/dist/plugins/agileCrm/src/credentials.js +16 -0
- package/dist/plugins/agileCrm/src/index.js +46 -112
- package/dist/plugins/airtable/src/credentials.js +19 -0
- package/dist/plugins/airtable/src/index.js +37 -50
- package/dist/plugins/airtop/src/credentials.js +20 -0
- package/dist/plugins/airtop/src/index.js +51 -75
- package/dist/plugins/apiTemplateIo/src/credentials.js +19 -0
- package/dist/plugins/apiTemplateIo/src/index.js +14 -31
- package/dist/plugins/asana/src/credentials.js +19 -0
- package/dist/plugins/asana/src/index.js +51 -72
- package/dist/plugins/autopilot/src/credentials.js +19 -0
- package/dist/plugins/autopilot/src/index.js +38 -45
- package/dist/plugins/bambooHr/src/credentials.js +16 -0
- package/dist/plugins/bambooHr/src/index.js +41 -67
- package/dist/plugins/bannerbear/src/credentials.js +19 -0
- package/dist/plugins/bannerbear/src/index.js +15 -27
- package/dist/plugins/baserow/src/credentials.js +17 -0
- package/dist/plugins/baserow/src/index.js +23 -49
- package/dist/plugins/beeminder/src/credentials.js +19 -0
- package/dist/plugins/beeminder/src/index.js +32 -54
- package/dist/plugins/bitly/src/credentials.js +19 -0
- package/dist/plugins/bitly/src/index.js +12 -26
- package/dist/plugins/bitwarden/src/credentials.js +62 -0
- package/dist/plugins/bitwarden/src/index.js +34 -80
- package/dist/plugins/box/src/credentials.js +19 -0
- package/dist/plugins/box/src/index.js +24 -49
- package/dist/plugins/brandfetch/src/credentials.js +13 -0
- package/dist/plugins/brandfetch/src/index.js +12 -17
- package/dist/plugins/brevo/src/credentials.js +19 -0
- package/dist/plugins/brevo/src/index.js +30 -51
- package/dist/plugins/bubble/src/credentials.js +28 -0
- package/dist/plugins/bubble/src/index.js +29 -65
- package/dist/plugins/chargebee/src/credentials.js +16 -0
- package/dist/plugins/chargebee/src/index.js +15 -45
- package/dist/plugins/circleci/src/credentials.js +19 -0
- package/dist/plugins/circleci/src/index.js +19 -39
- package/dist/plugins/ciscoWebex/src/credentials.js +19 -0
- package/dist/plugins/ciscoWebex/src/index.js +43 -61
- package/dist/plugins/clearbit/src/credentials.js +22 -0
- package/dist/plugins/clearbit/src/index.js +11 -21
- package/dist/plugins/clickup/src/credentials.js +19 -0
- package/dist/plugins/clickup/src/index.js +85 -117
- package/dist/plugins/clockify/src/credentials.js +19 -0
- package/dist/plugins/clockify/src/index.js +46 -61
- package/dist/plugins/cloudflare/src/credentials.js +19 -0
- package/dist/plugins/cloudflare/src/index.js +19 -34
- package/dist/plugins/cockpit/src/credentials.js +17 -0
- package/dist/plugins/cockpit/src/index.js +18 -31
- package/dist/plugins/coda/src/credentials.js +19 -0
- package/dist/plugins/coda/src/index.js +33 -50
- package/dist/plugins/coingecko/src/credentials.js +20 -0
- package/dist/plugins/coingecko/src/index.js +24 -34
- package/dist/plugins/contentful/src/credentials.js +26 -0
- package/dist/plugins/contentful/src/index.js +19 -40
- package/dist/plugins/convertkit/src/credentials.js +26 -0
- package/dist/plugins/convertkit/src/index.js +27 -45
- package/dist/plugins/copper/src/credentials.js +17 -0
- package/dist/plugins/copper/src/index.js +25 -47
- package/dist/plugins/cortex/src/credentials.js +28 -0
- package/dist/plugins/cortex/src/index.js +26 -49
- package/dist/plugins/currents/src/credentials.js +19 -0
- package/dist/plugins/currents/src/index.js +46 -59
- package/dist/plugins/customerIo/src/credentials.js +52 -0
- package/dist/plugins/customerIo/src/index.js +30 -58
- package/dist/plugins/databricks/src/credentials.js +13 -0
- package/dist/plugins/databricks/src/index.js +51 -103
- package/dist/plugins/deepl/src/credentials.js +19 -0
- package/dist/plugins/deepl/src/index.js +13 -39
- package/dist/plugins/demio/src/credentials.js +26 -0
- package/dist/plugins/demio/src/index.js +17 -41
- package/dist/plugins/dhl/src/credentials.js +13 -0
- package/dist/plugins/dhl/src/index.js +8 -19
- package/dist/plugins/discord/src/credentials.js +19 -0
- package/dist/plugins/discord/src/index.js +30 -58
- package/dist/plugins/discourse/src/credentials.js +18 -0
- package/dist/plugins/discourse/src/index.js +36 -53
- package/dist/plugins/disqus/src/credentials.js +13 -0
- package/dist/plugins/disqus/src/index.js +14 -32
- package/dist/plugins/drift/src/credentials.js +13 -0
- package/dist/plugins/drift/src/index.js +16 -26
- package/dist/plugins/dropbox/src/credentials.js +13 -0
- package/dist/plugins/dropbox/src/index.js +23 -30
- package/dist/plugins/dropcontact/src/credentials.js +13 -0
- package/dist/plugins/dropcontact/src/index.js +13 -18
- package/dist/plugins/egoi/src/credentials.js +19 -0
- package/dist/plugins/egoi/src/index.js +23 -38
- package/dist/plugins/elasticsearch/src/credentials.js +18 -0
- package/dist/plugins/elasticsearch/src/index.js +27 -48
- package/dist/plugins/elevenlabs/src/credentials.js +30 -0
- package/dist/plugins/elevenlabs/src/index.js +4 -1
- package/dist/plugins/elevenlabs/src/schemas.js +2 -1
- package/dist/plugins/elevenlabs/src/shared.js +74 -35
- package/dist/plugins/elevenlabs/src/workflows.js +2 -2
- package/dist/plugins/emelia/src/credentials.js +14 -0
- package/dist/plugins/emelia/src/index.js +19 -23
- package/dist/plugins/erpnext/src/credentials.js +27 -0
- package/dist/plugins/erpnext/src/index.js +21 -42
- package/dist/plugins/facebookGraph/src/credentials.js +20 -0
- package/dist/plugins/facebookGraph/src/index.js +39 -37
- package/dist/plugins/fal/src/credentials.js +14 -0
- package/dist/plugins/fal/src/index.js +4 -2
- package/dist/plugins/fal/src/shared.js +58 -63
- package/dist/plugins/freshdesk/src/credentials.js +20 -0
- package/dist/plugins/freshdesk/src/index.js +25 -46
- package/dist/plugins/freshservice/src/credentials.js +16 -0
- package/dist/plugins/freshservice/src/index.js +37 -58
- package/dist/plugins/freshworksCrm/src/credentials.js +16 -0
- package/dist/plugins/freshworksCrm/src/index.js +20 -39
- package/dist/plugins/getresponse/src/credentials.js +22 -0
- package/dist/plugins/getresponse/src/index.js +20 -32
- package/dist/plugins/gett/src/credentials.js +64 -0
- package/dist/plugins/gett/src/index.js +11 -6
- package/dist/plugins/gett/src/login.js +24 -0
- package/dist/plugins/gett/src/session.js +15 -38
- package/dist/plugins/gett/src/shared.js +41 -84
- package/dist/plugins/ghost/src/credentials.js +36 -0
- package/dist/plugins/ghost/src/index.js +18 -59
- package/dist/plugins/github/src/credentials.js +18 -0
- package/dist/plugins/github/src/index.js +55 -78
- package/dist/plugins/gitlab/src/credentials.js +24 -0
- package/dist/plugins/gitlab/src/index.js +29 -48
- package/dist/plugins/gmail/src/index.js +26 -24
- package/dist/plugins/gong/src/credentials.js +16 -0
- package/dist/plugins/gong/src/index.js +16 -32
- package/dist/plugins/googleAppsScript/src/index.js +108 -42
- package/dist/plugins/googleCalendar/src/index.js +15 -13
- package/dist/plugins/googleContacts/src/index.js +12 -9
- package/dist/plugins/googleDocs/src/index.js +2 -0
- package/dist/plugins/googleDocs/src/shared.js +2 -1
- package/dist/plugins/googleDrive/src/index.js +50 -53
- package/dist/plugins/googleImage/src/credentials.js +14 -0
- package/dist/plugins/googleImage/src/index.js +14 -25
- package/dist/plugins/googleSheets/src/index.js +26 -27
- package/dist/plugins/googleSlides/src/index.js +6 -4
- package/dist/plugins/googleTasks/src/index.js +13 -11
- package/dist/plugins/gotify/src/credentials.js +32 -0
- package/dist/plugins/gotify/src/index.js +14 -36
- package/dist/plugins/gotowebinar/src/credentials.js +13 -0
- package/dist/plugins/gotowebinar/src/index.js +52 -69
- package/dist/plugins/grafana/src/credentials.js +16 -0
- package/dist/plugins/grafana/src/index.js +34 -53
- package/dist/plugins/graphql/src/credentials.js +42 -0
- package/dist/plugins/graphql/src/index.js +21 -46
- package/dist/plugins/grist/src/credentials.js +30 -0
- package/dist/plugins/grist/src/index.js +14 -43
- package/dist/plugins/halopsa/src/credentials.js +56 -0
- package/dist/plugins/halopsa/src/index.js +20 -47
- package/dist/plugins/harvest/src/credentials.js +20 -0
- package/dist/plugins/harvest/src/index.js +24 -43
- package/dist/plugins/helpscout/src/credentials.js +13 -0
- package/dist/plugins/helpscout/src/index.js +26 -38
- package/dist/plugins/highlevel/src/credentials.js +19 -0
- package/dist/plugins/highlevel/src/index.js +34 -63
- package/dist/plugins/homeAssistant/src/credentials.js +27 -0
- package/dist/plugins/homeAssistant/src/index.js +34 -52
- package/dist/plugins/hubspot/src/credentials.js +16 -0
- package/dist/plugins/hubspot/src/index.js +29 -41
- package/dist/plugins/humanticAi/src/credentials.js +13 -0
- package/dist/plugins/humanticAi/src/index.js +15 -22
- package/dist/plugins/hunter/src/credentials.js +13 -0
- package/dist/plugins/hunter/src/index.js +18 -17
- package/dist/plugins/intercom/src/credentials.js +19 -0
- package/dist/plugins/intercom/src/index.js +25 -38
- package/dist/plugins/iterable/src/credentials.js +17 -0
- package/dist/plugins/iterable/src/index.js +26 -40
- package/dist/plugins/jenkins/src/credentials.js +16 -0
- package/dist/plugins/jenkins/src/index.js +22 -36
- package/dist/plugins/jira/src/credentials.js +16 -0
- package/dist/plugins/jira/src/index.js +35 -61
- package/dist/plugins/keap/src/credentials.js +19 -0
- package/dist/plugins/keap/src/index.js +43 -71
- package/dist/plugins/kobotoolbox/src/credentials.js +13 -0
- package/dist/plugins/kobotoolbox/src/index.js +46 -84
- package/dist/plugins/lemlist/src/credentials.js +19 -0
- package/dist/plugins/lemlist/src/index.js +35 -47
- package/dist/plugins/linear/src/attachments.js +7 -7
- package/dist/plugins/linear/src/comments.js +7 -7
- package/dist/plugins/linear/src/credentials.js +17 -0
- package/dist/plugins/linear/src/cycles.js +5 -5
- package/dist/plugins/linear/src/index.js +2 -0
- package/dist/plugins/linear/src/initiatives.js +6 -6
- package/dist/plugins/linear/src/issues.js +14 -14
- package/dist/plugins/linear/src/labels.js +6 -6
- package/dist/plugins/linear/src/organization.js +2 -2
- package/dist/plugins/linear/src/projects.js +12 -12
- package/dist/plugins/linear/src/shared.js +34 -32
- package/dist/plugins/linear/src/states.js +3 -3
- package/dist/plugins/linear/src/teams.js +4 -4
- package/dist/plugins/linear/src/users.js +3 -3
- package/dist/plugins/linear/src/views.js +5 -5
- package/dist/plugins/linear/src/webhooks.js +5 -5
- package/dist/plugins/lingvanex/src/credentials.js +13 -0
- package/dist/plugins/lingvanex/src/index.js +7 -9
- package/dist/plugins/linkedin/src/credentials.js +17 -0
- package/dist/plugins/linkedin/src/index.js +13 -17
- package/dist/plugins/lonescale/src/credentials.js +13 -0
- package/dist/plugins/lonescale/src/index.js +16 -26
- package/dist/plugins/magento/src/credentials.js +16 -0
- package/dist/plugins/magento/src/index.js +67 -84
- package/dist/plugins/mailcheck/src/credentials.js +17 -0
- package/dist/plugins/mailcheck/src/index.js +7 -9
- package/dist/plugins/mailchimp/src/credentials.js +32 -0
- package/dist/plugins/mailchimp/src/index.js +36 -44
- package/dist/plugins/mailerlite/src/credentials.js +13 -0
- package/dist/plugins/mailerlite/src/index.js +19 -32
- package/dist/plugins/mailgun/src/credentials.js +21 -0
- package/dist/plugins/mailgun/src/index.js +15 -21
- package/dist/plugins/mailjet/src/credentials.js +38 -0
- package/dist/plugins/mailjet/src/index.js +60 -115
- package/dist/plugins/mandrill/src/credentials.js +17 -0
- package/dist/plugins/mandrill/src/index.js +11 -12
- package/dist/plugins/marketstack/src/credentials.js +16 -0
- package/dist/plugins/marketstack/src/index.js +18 -28
- package/dist/plugins/matrix/src/credentials.js +19 -0
- package/dist/plugins/matrix/src/index.js +23 -52
- package/dist/plugins/mattermost/src/credentials.js +19 -0
- package/dist/plugins/mattermost/src/index.js +41 -73
- package/dist/plugins/mautic/src/credentials.js +16 -0
- package/dist/plugins/mautic/src/index.js +46 -62
- package/dist/plugins/medium/src/credentials.js +20 -0
- package/dist/plugins/medium/src/index.js +18 -23
- package/dist/plugins/messagebird/src/credentials.js +22 -0
- package/dist/plugins/messagebird/src/index.js +13 -18
- package/dist/plugins/metabase/src/credentials.js +19 -0
- package/dist/plugins/metabase/src/index.js +24 -40
- package/dist/plugins/microsoftCalendar/src/index.js +48 -12
- package/dist/plugins/microsoftFiles/src/index.js +90 -25
- package/dist/plugins/microsoftMail/src/index.js +62 -15
- package/dist/plugins/misp/src/credentials.js +16 -0
- package/dist/plugins/misp/src/index.js +60 -71
- package/dist/plugins/mocean/src/credentials.js +17 -0
- package/dist/plugins/mocean/src/index.js +11 -23
- package/dist/plugins/monday/src/credentials.js +14 -0
- package/dist/plugins/monday/src/index.js +31 -44
- package/dist/plugins/monicaCrm/src/credentials.js +19 -0
- package/dist/plugins/monicaCrm/src/index.js +25 -42
- package/dist/plugins/msg91/src/credentials.js +10 -0
- package/dist/plugins/msg91/src/index.js +15 -11
- package/dist/plugins/nasa/src/credentials.js +22 -0
- package/dist/plugins/nasa/src/index.js +24 -28
- package/dist/plugins/netlify/src/credentials.js +19 -0
- package/dist/plugins/netlify/src/index.js +27 -51
- package/dist/plugins/netscalerAdc/src/credentials.js +18 -0
- package/dist/plugins/netscalerAdc/src/index.js +16 -31
- package/dist/plugins/nextcloud/src/credentials.js +27 -0
- package/dist/plugins/nextcloud/src/index.js +55 -109
- package/dist/plugins/nocodb/src/credentials.js +16 -0
- package/dist/plugins/nocodb/src/index.js +19 -37
- package/dist/plugins/notion/src/credentials.js +21 -0
- package/dist/plugins/notion/src/index.js +25 -38
- package/dist/plugins/npm/src/credentials.js +19 -0
- package/dist/plugins/npm/src/index.js +22 -32
- package/dist/plugins/odoo/src/credentials.js +21 -0
- package/dist/plugins/odoo/src/index.js +53 -69
- package/dist/plugins/okta/src/credentials.js +23 -0
- package/dist/plugins/okta/src/index.js +30 -35
- package/dist/plugins/oneSimpleApi/src/credentials.js +16 -0
- package/dist/plugins/oneSimpleApi/src/index.js +19 -24
- package/dist/plugins/onfleet/src/credentials.js +23 -0
- package/dist/plugins/onfleet/src/index.js +42 -53
- package/dist/plugins/openai/src/credentials.js +13 -0
- package/dist/plugins/openai/src/index.js +15 -23
- package/dist/plugins/openweathermap/src/credentials.js +16 -0
- package/dist/plugins/openweathermap/src/index.js +22 -22
- package/dist/plugins/oura/src/credentials.js +19 -0
- package/dist/plugins/oura/src/index.js +13 -18
- package/dist/plugins/paddle/src/credentials.js +27 -0
- package/dist/plugins/paddle/src/index.js +20 -36
- package/dist/plugins/pagerduty/src/credentials.js +24 -0
- package/dist/plugins/pagerduty/src/index.js +30 -39
- package/dist/plugins/parallel/src/credentials.js +18 -0
- package/dist/plugins/parallel/src/index.js +16 -22
- package/dist/plugins/paypal/src/credentials.js +44 -0
- package/dist/plugins/paypal/src/index.js +14 -40
- package/dist/plugins/peekalink/src/credentials.js +16 -0
- package/dist/plugins/peekalink/src/index.js +10 -11
- package/dist/plugins/phantombuster/src/credentials.js +19 -0
- package/dist/plugins/phantombuster/src/index.js +19 -32
- package/dist/plugins/philipsHue/src/credentials.js +17 -0
- package/dist/plugins/philipsHue/src/index.js +15 -27
- package/dist/plugins/pipedrive/src/credentials.js +26 -0
- package/dist/plugins/pipedrive/src/index.js +43 -73
- package/dist/plugins/plaud/src/index.js +2 -1
- package/dist/plugins/plaud/src/shared.js +23 -19
- package/dist/plugins/plivo/src/credentials.js +20 -0
- package/dist/plugins/plivo/src/index.js +13 -19
- package/dist/plugins/posthog/src/credentials.js +18 -0
- package/dist/plugins/posthog/src/index.js +14 -20
- package/dist/plugins/profitwell/src/credentials.js +22 -0
- package/dist/plugins/profitwell/src/index.js +10 -17
- package/dist/plugins/pushbullet/src/credentials.js +19 -0
- package/dist/plugins/pushbullet/src/index.js +19 -27
- package/dist/plugins/pushcut/src/credentials.js +19 -0
- package/dist/plugins/pushcut/src/index.js +7 -8
- package/dist/plugins/pushover/src/credentials.js +14 -0
- package/dist/plugins/pushover/src/index.js +7 -12
- package/dist/plugins/quickbase/src/credentials.js +15 -0
- package/dist/plugins/quickbase/src/index.js +24 -34
- package/dist/plugins/quickbooks/src/credentials.js +22 -0
- package/dist/plugins/quickbooks/src/index.js +17 -46
- package/dist/plugins/raindrop/src/credentials.js +19 -0
- package/dist/plugins/raindrop/src/index.js +30 -32
- package/dist/plugins/recraft/src/credentials.js +13 -0
- package/dist/plugins/recraft/src/index.js +38 -27
- package/dist/plugins/reddit/src/credentials.js +26 -0
- package/dist/plugins/reddit/src/index.js +30 -34
- package/dist/plugins/replicate/src/credentials.js +23 -0
- package/dist/plugins/replicate/src/index.js +17 -27
- package/dist/plugins/rocketchat/src/credentials.js +17 -0
- package/dist/plugins/rocketchat/src/index.js +8 -19
- package/dist/plugins/rundeck/src/credentials.js +16 -0
- package/dist/plugins/rundeck/src/index.js +12 -28
- package/dist/plugins/salesforce/src/credentials.js +73 -0
- package/dist/plugins/salesforce/src/index.js +6 -0
- package/dist/plugins/salesforce/src/metadata.js +3 -16
- package/dist/plugins/salesforce/src/shared.js +25 -100
- package/dist/plugins/salesforce/src/sobjects.js +10 -9
- package/dist/plugins/salesmate/src/credentials.js +17 -0
- package/dist/plugins/salesmate/src/index.js +20 -37
- package/dist/plugins/securityScorecard/src/credentials.js +22 -0
- package/dist/plugins/securityScorecard/src/index.js +24 -37
- package/dist/plugins/segment/src/credentials.js +16 -0
- package/dist/plugins/segment/src/index.js +12 -16
- package/dist/plugins/sendgrid/src/credentials.js +13 -0
- package/dist/plugins/sendgrid/src/index.js +31 -35
- package/dist/plugins/sendy/src/credentials.js +18 -0
- package/dist/plugins/sendy/src/index.js +18 -24
- package/dist/plugins/sentry/src/credentials.js +16 -0
- package/dist/plugins/sentry/src/index.js +30 -98
- package/dist/plugins/servicenow/src/credentials.js +13 -0
- package/dist/plugins/servicenow/src/index.js +22 -41
- package/dist/plugins/shiftAtlas/src/graph.js +2 -2
- package/dist/plugins/shiftAtlas/src/index.js +2 -0
- package/dist/plugins/shiftAtlas/src/shared.js +3 -1
- package/dist/plugins/shiftBwm/src/collections.js +201 -0
- package/dist/plugins/shiftBwm/src/index.js +35 -0
- package/dist/plugins/shiftBwm/src/records.js +180 -0
- package/dist/plugins/shiftBwm/src/shared.js +168 -0
- package/dist/plugins/shiftBwm/src/vendor/client.js +227 -0
- package/dist/plugins/shiftBwm/src/vendor/contracts.js +59 -0
- package/dist/plugins/shiftBwm/src/vendor/models.js +525 -0
- package/dist/plugins/shiftCrm/src/access.js +2 -2
- package/dist/plugins/shiftCrm/src/accounts.js +3 -3
- package/dist/plugins/shiftCrm/src/activities.js +3 -3
- package/dist/plugins/shiftCrm/src/credentials.js +6 -0
- package/dist/plugins/shiftCrm/src/index.js +2 -0
- package/dist/plugins/shiftCrm/src/opportunities.js +3 -3
- package/dist/plugins/shiftCrm/src/people.js +3 -3
- package/dist/plugins/shiftCrm/src/records.js +2 -2
- package/dist/plugins/shiftCrm/src/shared.js +2 -1
- package/dist/plugins/shiftCrm/src/tasks.js +3 -3
- package/dist/plugins/shiftObjects/src/credentials.js +2 -0
- package/dist/plugins/shiftObjects/src/index.js +2 -0
- package/dist/plugins/shiftObjects/src/objects.js +3 -3
- package/dist/plugins/shiftOcr/src/credentials.js +8 -0
- package/dist/plugins/shiftOcr/src/index.js +5 -2
- package/dist/plugins/shiftPages/src/index.js +2 -0
- package/dist/plugins/shiftPages/src/pages.js +5 -3
- package/dist/plugins/shiftPages/src/shared.js +3 -1
- package/dist/plugins/shiftTranscription/src/index.js +2 -0
- package/dist/plugins/shiftTranscription/src/shared.js +11 -1
- package/dist/plugins/shiftTranscription/src/transcription.js +3 -2
- package/dist/plugins/shiftWork/src/index.js +2 -0
- package/dist/plugins/shiftWork/src/issue-views.js +5 -5
- package/dist/plugins/shiftWork/src/issues.js +11 -7
- package/dist/plugins/shiftWork/src/projects.js +3 -3
- package/dist/plugins/shiftWork/src/shared.js +3 -1
- package/dist/plugins/shopify/src/credentials.js +16 -0
- package/dist/plugins/shopify/src/index.js +32 -59
- package/dist/plugins/signl4/src/credentials.js +17 -0
- package/dist/plugins/signl4/src/index.js +28 -29
- package/dist/plugins/slack/src/credentials.js +19 -0
- package/dist/plugins/slack/src/index.js +51 -60
- package/dist/plugins/sms77/src/credentials.js +17 -0
- package/dist/plugins/sms77/src/index.js +11 -16
- package/dist/plugins/splunk/src/credentials.js +19 -0
- package/dist/plugins/splunk/src/index.js +32 -74
- package/dist/plugins/spotify/src/credentials.js +19 -0
- package/dist/plugins/spotify/src/index.js +40 -55
- package/dist/plugins/stackby/src/credentials.js +13 -0
- package/dist/plugins/stackby/src/index.js +14 -23
- package/dist/plugins/steel/src/auth.js +27 -0
- package/dist/plugins/steel/src/browser.js +4 -3
- package/dist/plugins/steel/src/captchas.js +4 -3
- package/dist/plugins/steel/src/extensions.js +3 -2
- package/dist/plugins/steel/src/files.js +9 -10
- package/dist/plugins/steel/src/index.js +2 -0
- package/dist/plugins/steel/src/page/tools.js +3 -3
- package/dist/plugins/steel/src/profiles.js +4 -3
- package/dist/plugins/steel/src/sessions.js +13 -13
- package/dist/plugins/steel/src/shared.js +21 -51
- package/dist/plugins/storyblok/src/credentials.js +37 -0
- package/dist/plugins/storyblok/src/index.js +22 -66
- package/dist/plugins/strapi/src/credentials.js +71 -0
- package/dist/plugins/strapi/src/index.js +36 -70
- package/dist/plugins/strava/src/credentials.js +19 -0
- package/dist/plugins/strava/src/index.js +16 -33
- package/dist/plugins/stripe/src/credentials.js +19 -0
- package/dist/plugins/stripe/src/index.js +44 -58
- package/dist/plugins/supabase/src/credentials.js +30 -0
- package/dist/plugins/supabase/src/index.js +18 -40
- package/dist/plugins/syncromsp/src/credentials.js +16 -0
- package/dist/plugins/syncromsp/src/index.js +37 -70
- package/dist/plugins/tapfiliate/src/credentials.js +13 -0
- package/dist/plugins/tapfiliate/src/index.js +21 -31
- package/dist/plugins/telegram/src/credentials.js +20 -0
- package/dist/plugins/telegram/src/index.js +31 -39
- package/dist/plugins/thehive/src/credentials.js +14 -0
- package/dist/plugins/thehive/src/index.js +33 -50
- package/dist/plugins/thehiveProject/src/credentials.js +16 -0
- package/dist/plugins/thehiveProject/src/index.js +53 -122
- package/dist/plugins/todoist/src/credentials.js +26 -0
- package/dist/plugins/todoist/src/index.js +49 -79
- package/dist/plugins/together/src/credentials.js +16 -0
- package/dist/plugins/together/src/index.js +30 -32
- package/dist/plugins/travisci/src/credentials.js +24 -0
- package/dist/plugins/travisci/src/index.js +16 -30
- package/dist/plugins/trello/src/credentials.js +29 -0
- package/dist/plugins/trello/src/index.js +49 -64
- package/dist/plugins/twake/src/credentials.js +16 -0
- package/dist/plugins/twake/src/index.js +8 -10
- package/dist/plugins/twilio/src/credentials.js +23 -0
- package/dist/plugins/twilio/src/index.js +12 -26
- package/dist/plugins/twist/src/credentials.js +13 -0
- package/dist/plugins/twist/src/index.js +32 -44
- package/dist/plugins/twitter/src/credentials.js +16 -0
- package/dist/plugins/twitter/src/index.js +25 -37
- package/dist/plugins/typesafe/src/credentials.js +28 -0
- package/dist/plugins/typesafe/src/index.js +3 -1
- package/dist/plugins/typesafe/src/shared.js +23 -35
- package/dist/plugins/unleashedSoftware/src/credentials.js +21 -0
- package/dist/plugins/unleashedSoftware/src/index.js +13 -37
- package/dist/plugins/uplead/src/credentials.js +16 -0
- package/dist/plugins/uplead/src/index.js +11 -16
- package/dist/plugins/uproc/src/credentials.js +14 -0
- package/dist/plugins/uproc/src/index.js +7 -10
- package/dist/plugins/uptimerobot/src/credentials.js +14 -0
- package/dist/plugins/uptimerobot/src/index.js +28 -39
- package/dist/plugins/urlscanio/src/credentials.js +13 -0
- package/dist/plugins/urlscanio/src/index.js +13 -22
- package/dist/plugins/vercel/src/credentials.js +19 -0
- package/dist/plugins/vercel/src/deployments.js +27 -11
- package/dist/plugins/vercel/src/env.js +31 -12
- package/dist/plugins/vercel/src/index.js +2 -0
- package/dist/plugins/vercel/src/projects.js +6 -3
- package/dist/plugins/vercel/src/shared.js +32 -37
- package/dist/plugins/vero/src/credentials.js +17 -0
- package/dist/plugins/vero/src/index.js +18 -21
- package/dist/plugins/vonage/src/credentials.js +17 -0
- package/dist/plugins/vonage/src/index.js +14 -18
- package/dist/plugins/wekan/src/credentials.js +16 -0
- package/dist/plugins/wekan/src/index.js +33 -46
- package/dist/plugins/wolt/src/account.js +6 -0
- package/dist/plugins/wolt/src/catalog.js +2 -2
- package/dist/plugins/wolt/src/credentials.js +64 -0
- package/dist/plugins/wolt/src/index.js +8 -3
- package/dist/plugins/wolt/src/orders.js +2 -2
- package/dist/plugins/wolt/src/public.js +91 -0
- package/dist/plugins/wolt/src/shared.js +49 -158
- package/dist/plugins/woocommerce/src/credentials.js +16 -0
- package/dist/plugins/woocommerce/src/index.js +19 -37
- package/dist/plugins/wordpress/src/credentials.js +16 -0
- package/dist/plugins/wordpress/src/index.js +23 -42
- package/dist/plugins/xai/src/credentials.js +13 -0
- package/dist/plugins/xai/src/index.js +31 -30
- package/dist/plugins/xero/src/credentials.js +17 -0
- package/dist/plugins/xero/src/index.js +19 -36
- package/dist/plugins/yourls/src/credentials.js +17 -0
- package/dist/plugins/yourls/src/index.js +13 -23
- package/dist/plugins/zammad/src/credentials.js +15 -0
- package/dist/plugins/zammad/src/index.js +27 -47
- package/dist/plugins/zendesk/src/credentials.js +26 -0
- package/dist/plugins/zendesk/src/index.js +29 -48
- package/dist/plugins/zoho/src/credentials.js +17 -0
- package/dist/plugins/zoho/src/index.js +18 -38
- package/dist/plugins/zoom/src/credentials.js +19 -0
- package/dist/plugins/zoom/src/index.js +15 -30
- package/dist/plugins/zulip/src/credentials.js +16 -0
- package/dist/plugins/zulip/src/index.js +36 -42
- package/dist/sdk.d.ts +8 -0
- package/dist/sdk.js +3 -0
- package/package.json +3 -2
- package/dist/plugins/_shared/authedFetch.js +0 -33
- package/dist/plugins/_shared/tokenRefresh.js +0 -41
|
@@ -1,24 +1,20 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { credentialJson, pathSegment } from "../../_shared/credentials.js";
|
|
2
|
+
import { mediumCredential } from "./credentials.js";
|
|
3
|
+
function apiRequest(ctx, method, endpoint, body) {
|
|
4
|
+
return credentialJson(ctx, mediumCredential, "medium", {
|
|
5
|
+
target: "api",
|
|
6
|
+
path: endpoint,
|
|
4
7
|
method,
|
|
5
|
-
headers: {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
},
|
|
11
|
-
};
|
|
12
|
-
if (body && Object.keys(body).length > 0 && method !== "GET")
|
|
13
|
-
opts.body = JSON.stringify(body);
|
|
14
|
-
const res = await fetch(`${BASE_URL}${endpoint}`, opts);
|
|
15
|
-
if (!res.ok)
|
|
16
|
-
throw new Error(`Medium API error ${res.status}: ${await res.text()}`);
|
|
17
|
-
return res.json();
|
|
8
|
+
headers: { "Accept-Charset": "utf-8" },
|
|
9
|
+
...(body && Object.keys(body).length > 0 && method !== "GET"
|
|
10
|
+
? { json: body }
|
|
11
|
+
: {}),
|
|
12
|
+
});
|
|
18
13
|
}
|
|
19
14
|
export default function medium(rl) {
|
|
20
15
|
rl.setName("medium");
|
|
21
16
|
rl.setVersion("0.1.0");
|
|
17
|
+
rl.setCredential(mediumCredential);
|
|
22
18
|
rl.setConnectionSchema({
|
|
23
19
|
accessToken: {
|
|
24
20
|
type: "string",
|
|
@@ -27,7 +23,6 @@ export default function medium(rl) {
|
|
|
27
23
|
env: "MEDIUM_ACCESS_TOKEN",
|
|
28
24
|
},
|
|
29
25
|
});
|
|
30
|
-
const tok = (ctx) => ctx.connection.config.accessToken;
|
|
31
26
|
rl.registerAction("post.create", {
|
|
32
27
|
access: "write",
|
|
33
28
|
description: "Create a post on Medium. Posts under the authenticated user by default, or under a publication if publicationId is provided.",
|
|
@@ -95,13 +90,13 @@ export default function medium(rl) {
|
|
|
95
90
|
if (notifyFollowers !== undefined)
|
|
96
91
|
body.notifyFollowers = notifyFollowers;
|
|
97
92
|
if (publicationId) {
|
|
98
|
-
const resp = (await apiRequest(
|
|
93
|
+
const resp = (await apiRequest(ctx, "POST", `publications/${pathSegment(publicationId)}/posts`, body));
|
|
99
94
|
return resp.data;
|
|
100
95
|
}
|
|
101
96
|
// Get authenticated user ID first
|
|
102
|
-
const me = (await apiRequest(
|
|
97
|
+
const me = (await apiRequest(ctx, "GET", "me"));
|
|
103
98
|
const authorId = me.data.id;
|
|
104
|
-
const resp = (await apiRequest(
|
|
99
|
+
const resp = (await apiRequest(ctx, "POST", `users/${pathSegment(authorId)}/posts`, body));
|
|
105
100
|
return resp.data;
|
|
106
101
|
},
|
|
107
102
|
});
|
|
@@ -111,9 +106,9 @@ export default function medium(rl) {
|
|
|
111
106
|
inputSchema: { limit: { type: "number", required: false } },
|
|
112
107
|
async execute(input, ctx) {
|
|
113
108
|
const { limit } = (input ?? {});
|
|
114
|
-
const me = (await apiRequest(
|
|
109
|
+
const me = (await apiRequest(ctx, "GET", "me"));
|
|
115
110
|
const userId = me.data.id;
|
|
116
|
-
const resp = (await apiRequest(
|
|
111
|
+
const resp = (await apiRequest(ctx, "GET", `users/${pathSegment(userId)}/publications`));
|
|
117
112
|
let data = resp.data;
|
|
118
113
|
if (limit)
|
|
119
114
|
data = data.slice(0, limit);
|
|
@@ -124,7 +119,7 @@ export default function medium(rl) {
|
|
|
124
119
|
access: "read",
|
|
125
120
|
description: "Get the authenticated user's profile",
|
|
126
121
|
async execute(_input, ctx) {
|
|
127
|
-
const resp = (await apiRequest(
|
|
122
|
+
const resp = (await apiRequest(ctx, "GET", "me"));
|
|
128
123
|
return resp.data;
|
|
129
124
|
},
|
|
130
125
|
});
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { staticCredential } from "../../_shared/credentials.js";
|
|
2
|
+
/**
|
|
3
|
+
* An access key, sent as `Authorization: AccessKey {key}` to
|
|
4
|
+
* MessageBird's REST origin.
|
|
5
|
+
*/
|
|
6
|
+
export const messagebirdCredential = staticCredential({
|
|
7
|
+
id: "messagebird",
|
|
8
|
+
auth: { kind: "apiKey", header: "Authorization", prefix: "AccessKey " },
|
|
9
|
+
local: { secret: "accessKey" },
|
|
10
|
+
targets: {
|
|
11
|
+
api: {
|
|
12
|
+
baseUrl: "https://rest.messagebird.com/",
|
|
13
|
+
methods: ["GET", "POST"],
|
|
14
|
+
},
|
|
15
|
+
},
|
|
16
|
+
probe: {
|
|
17
|
+
target: "api",
|
|
18
|
+
path: "balance",
|
|
19
|
+
method: "GET",
|
|
20
|
+
acceptedStatuses: [200],
|
|
21
|
+
},
|
|
22
|
+
});
|
|
@@ -1,23 +1,19 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { credentialJson } from "../../_shared/credentials.js";
|
|
2
|
+
import { messagebirdCredential } from "./credentials.js";
|
|
3
|
+
function apiRequest(ctx, method, path, body) {
|
|
4
|
+
return credentialJson(ctx, messagebirdCredential, "messagebird", {
|
|
5
|
+
target: "api",
|
|
6
|
+
path,
|
|
4
7
|
method,
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
},
|
|
10
|
-
};
|
|
11
|
-
if (body && Object.keys(body).length > 0 && method !== "GET")
|
|
12
|
-
opts.body = JSON.stringify(body);
|
|
13
|
-
const res = await fetch(`${BASE_URL}${endpoint}`, opts);
|
|
14
|
-
if (!res.ok)
|
|
15
|
-
throw new Error(`MessageBird API error ${res.status}: ${await res.text()}`);
|
|
16
|
-
return res.json();
|
|
8
|
+
...(body && Object.keys(body).length > 0 && method !== "GET"
|
|
9
|
+
? { json: body }
|
|
10
|
+
: {}),
|
|
11
|
+
});
|
|
17
12
|
}
|
|
18
13
|
export default function messagebird(rl) {
|
|
19
14
|
rl.setName("messagebird");
|
|
20
15
|
rl.setVersion("0.1.0");
|
|
16
|
+
rl.setCredential(messagebirdCredential);
|
|
21
17
|
rl.setConnectionSchema({
|
|
22
18
|
accessKey: {
|
|
23
19
|
type: "string",
|
|
@@ -26,7 +22,6 @@ export default function messagebird(rl) {
|
|
|
26
22
|
env: "MESSAGEBIRD_ACCESS_KEY",
|
|
27
23
|
},
|
|
28
24
|
});
|
|
29
|
-
const key = (ctx) => ctx.connection.config.accessKey;
|
|
30
25
|
rl.registerAction("sms.send", {
|
|
31
26
|
access: "write",
|
|
32
27
|
description: "Send an SMS message",
|
|
@@ -111,14 +106,14 @@ export default function messagebird(rl) {
|
|
|
111
106
|
if (p[k] !== undefined && p[k] !== null)
|
|
112
107
|
body[k] = p[k];
|
|
113
108
|
}
|
|
114
|
-
return apiRequest(
|
|
109
|
+
return apiRequest(ctx, "POST", "messages", body);
|
|
115
110
|
},
|
|
116
111
|
});
|
|
117
112
|
rl.registerAction("balance.get", {
|
|
118
113
|
access: "read",
|
|
119
114
|
description: "Get current account balance",
|
|
120
115
|
async execute(_input, ctx) {
|
|
121
|
-
return apiRequest(
|
|
116
|
+
return apiRequest(ctx, "GET", "balance");
|
|
122
117
|
},
|
|
123
118
|
});
|
|
124
119
|
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { httpsBase, staticCredential } from "../../_shared/credentials.js";
|
|
2
|
+
/** A session token, sent as X-Metabase-Session, to the instance's own /api/. */
|
|
3
|
+
export const metabaseCredential = staticCredential({
|
|
4
|
+
id: "metabase",
|
|
5
|
+
auth: { kind: "apiKey", header: "X-Metabase-Session" },
|
|
6
|
+
local: { secret: "sessionToken" },
|
|
7
|
+
targets: (config) => ({
|
|
8
|
+
api: {
|
|
9
|
+
baseUrl: httpsBase(config.url, "api/"),
|
|
10
|
+
methods: ["GET", "POST"],
|
|
11
|
+
},
|
|
12
|
+
}),
|
|
13
|
+
probe: {
|
|
14
|
+
target: "api",
|
|
15
|
+
path: "user/current",
|
|
16
|
+
method: "GET",
|
|
17
|
+
acceptedStatuses: [200],
|
|
18
|
+
},
|
|
19
|
+
});
|
|
@@ -1,24 +1,22 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import { credentialJson, pathSegment } from "../../_shared/credentials.js";
|
|
2
|
+
import { metabaseCredential } from "./credentials.js";
|
|
3
|
+
function apiRequest(ctx, method, endpoint, body) {
|
|
4
|
+
return credentialJson(ctx, metabaseCredential, "metabase", {
|
|
5
|
+
target: "api",
|
|
6
|
+
path: endpoint,
|
|
3
7
|
method,
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
"
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
method !== "GET" &&
|
|
12
|
-
method !== "DELETE")
|
|
13
|
-
opts.body = JSON.stringify(body);
|
|
14
|
-
const res = await fetch(`${baseUrl}${endpoint}`, opts);
|
|
15
|
-
if (!res.ok)
|
|
16
|
-
throw new Error(`Metabase API error ${res.status}: ${await res.text()}`);
|
|
17
|
-
return res.json();
|
|
8
|
+
...(body &&
|
|
9
|
+
Object.keys(body).length > 0 &&
|
|
10
|
+
method !== "GET" &&
|
|
11
|
+
method !== "DELETE"
|
|
12
|
+
? { json: body }
|
|
13
|
+
: {}),
|
|
14
|
+
});
|
|
18
15
|
}
|
|
19
16
|
export default function metabase(rl) {
|
|
20
17
|
rl.setName("metabase");
|
|
21
18
|
rl.setVersion("0.1.0");
|
|
19
|
+
rl.setCredential(metabaseCredential);
|
|
22
20
|
rl.setConnectionSchema({
|
|
23
21
|
url: {
|
|
24
22
|
type: "string",
|
|
@@ -33,26 +31,20 @@ export default function metabase(rl) {
|
|
|
33
31
|
env: "METABASE_SESSION_TOKEN",
|
|
34
32
|
},
|
|
35
33
|
});
|
|
36
|
-
const conn = (ctx) => ({
|
|
37
|
-
baseUrl: ctx.connection.config.url.replace(/\/$/, ""),
|
|
38
|
-
token: ctx.connection.config.sessionToken,
|
|
39
|
-
});
|
|
40
34
|
// ── Question (Card) ─────────────────────────────────
|
|
41
35
|
rl.registerAction("question.get", {
|
|
42
36
|
access: "read",
|
|
43
37
|
description: "Get a specific question/card",
|
|
44
38
|
inputSchema: { questionId: { type: "number", required: true } },
|
|
45
39
|
async execute(input, ctx) {
|
|
46
|
-
|
|
47
|
-
return apiRequest(baseUrl, token, "GET", `/api/card/${input.questionId}`);
|
|
40
|
+
return apiRequest(ctx, "GET", `card/${pathSegment(input.questionId)}`);
|
|
48
41
|
},
|
|
49
42
|
});
|
|
50
43
|
rl.registerAction("question.list", {
|
|
51
44
|
access: "read",
|
|
52
45
|
description: "List all questions/cards",
|
|
53
46
|
async execute(_input, ctx) {
|
|
54
|
-
|
|
55
|
-
return apiRequest(baseUrl, token, "GET", "/api/card/");
|
|
47
|
+
return apiRequest(ctx, "GET", "card/");
|
|
56
48
|
},
|
|
57
49
|
});
|
|
58
50
|
rl.registerAction("question.getResults", {
|
|
@@ -68,8 +60,7 @@ export default function metabase(rl) {
|
|
|
68
60
|
},
|
|
69
61
|
async execute(input, ctx) {
|
|
70
62
|
const { questionId, format = "json" } = input;
|
|
71
|
-
|
|
72
|
-
return apiRequest(baseUrl, token, "POST", `/api/card/${questionId}/query/${format}`);
|
|
63
|
+
return apiRequest(ctx, "POST", `card/${pathSegment(questionId)}/query/${pathSegment(format)}`);
|
|
73
64
|
},
|
|
74
65
|
});
|
|
75
66
|
// ── Alert ───────────────────────────────────────────
|
|
@@ -78,16 +69,14 @@ export default function metabase(rl) {
|
|
|
78
69
|
description: "Get a specific alert",
|
|
79
70
|
inputSchema: { alertId: { type: "number", required: true } },
|
|
80
71
|
async execute(input, ctx) {
|
|
81
|
-
|
|
82
|
-
return apiRequest(baseUrl, token, "GET", `/api/alert/${input.alertId}`);
|
|
72
|
+
return apiRequest(ctx, "GET", `alert/${pathSegment(input.alertId)}`);
|
|
83
73
|
},
|
|
84
74
|
});
|
|
85
75
|
rl.registerAction("alert.list", {
|
|
86
76
|
access: "read",
|
|
87
77
|
description: "List all alerts",
|
|
88
78
|
async execute(_input, ctx) {
|
|
89
|
-
|
|
90
|
-
return apiRequest(baseUrl, token, "GET", "/api/alert/");
|
|
79
|
+
return apiRequest(ctx, "GET", "alert/");
|
|
91
80
|
},
|
|
92
81
|
});
|
|
93
82
|
// ── Database ────────────────────────────────────────
|
|
@@ -95,8 +84,7 @@ export default function metabase(rl) {
|
|
|
95
84
|
access: "read",
|
|
96
85
|
description: "List all databases",
|
|
97
86
|
async execute(_input, ctx) {
|
|
98
|
-
const
|
|
99
|
-
const data = (await apiRequest(baseUrl, token, "GET", "/api/database/"));
|
|
87
|
+
const data = (await apiRequest(ctx, "GET", "database/"));
|
|
100
88
|
return data.data;
|
|
101
89
|
},
|
|
102
90
|
});
|
|
@@ -105,8 +93,7 @@ export default function metabase(rl) {
|
|
|
105
93
|
description: "Get fields from a database",
|
|
106
94
|
inputSchema: { databaseId: { type: "number", required: true } },
|
|
107
95
|
async execute(input, ctx) {
|
|
108
|
-
|
|
109
|
-
return apiRequest(baseUrl, token, "GET", `/api/database/${input.databaseId}/fields`);
|
|
96
|
+
return apiRequest(ctx, "GET", `database/${pathSegment(input.databaseId)}/fields`);
|
|
110
97
|
},
|
|
111
98
|
});
|
|
112
99
|
rl.registerAction("database.add", {
|
|
@@ -144,7 +131,6 @@ export default function metabase(rl) {
|
|
|
144
131
|
},
|
|
145
132
|
async execute(input, ctx) {
|
|
146
133
|
const { name, engine, host, port, user, password, dbName, isFullSync = true, } = input;
|
|
147
|
-
const { baseUrl, token } = conn(ctx);
|
|
148
134
|
const details = {};
|
|
149
135
|
if (host)
|
|
150
136
|
details.host = host;
|
|
@@ -156,7 +142,7 @@ export default function metabase(rl) {
|
|
|
156
142
|
details.password = password;
|
|
157
143
|
if (dbName)
|
|
158
144
|
details.db = dbName;
|
|
159
|
-
return apiRequest(
|
|
145
|
+
return apiRequest(ctx, "POST", "database", {
|
|
160
146
|
name,
|
|
161
147
|
engine,
|
|
162
148
|
details,
|
|
@@ -170,16 +156,14 @@ export default function metabase(rl) {
|
|
|
170
156
|
description: "Get a specific metric",
|
|
171
157
|
inputSchema: { metricId: { type: "number", required: true } },
|
|
172
158
|
async execute(input, ctx) {
|
|
173
|
-
|
|
174
|
-
return apiRequest(baseUrl, token, "GET", `/api/metric/${input.metricId}`);
|
|
159
|
+
return apiRequest(ctx, "GET", `metric/${pathSegment(input.metricId)}`);
|
|
175
160
|
},
|
|
176
161
|
});
|
|
177
162
|
rl.registerAction("metric.list", {
|
|
178
163
|
access: "read",
|
|
179
164
|
description: "List all metrics",
|
|
180
165
|
async execute(_input, ctx) {
|
|
181
|
-
|
|
182
|
-
return apiRequest(baseUrl, token, "GET", "/api/metric/");
|
|
166
|
+
return apiRequest(ctx, "GET", "metric/");
|
|
183
167
|
},
|
|
184
168
|
});
|
|
185
169
|
}
|
|
@@ -1,16 +1,46 @@
|
|
|
1
|
-
import { graphRequest, microsoftSetupHelp, userBase } from "../../_shared/microsoftAuth.js";
|
|
1
|
+
import { graphRequest, microsoftCredential, microsoftSetupHelp, userBase, } from "../../_shared/microsoftAuth.js";
|
|
2
2
|
const NAME = "microsoftCalendar";
|
|
3
3
|
const SCOPES = ["https://graph.microsoft.com/Calendars.Read"];
|
|
4
4
|
export default function microsoftCalendar(rl) {
|
|
5
5
|
rl.setName(NAME);
|
|
6
6
|
rl.setVersion("1.0.0");
|
|
7
|
+
rl.setCredential(microsoftCredential(NAME, SCOPES));
|
|
7
8
|
rl.setConnectionSchema({
|
|
8
|
-
authMethod: {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
9
|
+
authMethod: {
|
|
10
|
+
type: "string",
|
|
11
|
+
required: false,
|
|
12
|
+
description: "delegated or appOnly; legacy configs infer the method from existing credentials",
|
|
13
|
+
},
|
|
14
|
+
tenantId: {
|
|
15
|
+
type: "string",
|
|
16
|
+
required: false,
|
|
17
|
+
env: "MS_GRAPH_TENANT_ID",
|
|
18
|
+
description: "Entra tenant id (app-only) or omit for OAuth /common",
|
|
19
|
+
},
|
|
20
|
+
clientId: {
|
|
21
|
+
type: "string",
|
|
22
|
+
required: false,
|
|
23
|
+
env: "MS_GRAPH_CLIENT_ID",
|
|
24
|
+
description: "App (client) id",
|
|
25
|
+
},
|
|
26
|
+
clientSecret: {
|
|
27
|
+
type: "string",
|
|
28
|
+
required: false,
|
|
29
|
+
env: "MS_GRAPH_CLIENT_SECRET",
|
|
30
|
+
description: "Client secret VALUE",
|
|
31
|
+
},
|
|
32
|
+
refreshToken: {
|
|
33
|
+
type: "string",
|
|
34
|
+
required: false,
|
|
35
|
+
env: "MICROSOFTCALENDAR_REFRESH_TOKEN",
|
|
36
|
+
description: "OAuth2 refresh token (set by the login flow)",
|
|
37
|
+
},
|
|
38
|
+
userUpn: {
|
|
39
|
+
type: "string",
|
|
40
|
+
required: false,
|
|
41
|
+
env: "MS_GRAPH_USER_UPN",
|
|
42
|
+
description: "App-only only: target user UPN",
|
|
43
|
+
},
|
|
14
44
|
});
|
|
15
45
|
rl.setOAuth({
|
|
16
46
|
authUrl: "https://login.microsoftonline.com/common/oauth2/v2.0/authorize",
|
|
@@ -22,15 +52,20 @@ export default function microsoftCalendar(rl) {
|
|
|
22
52
|
access: "read",
|
|
23
53
|
description: "List calendar events in a date range. Returns [{id,subject,start,end,location,organizer,attendees}].",
|
|
24
54
|
inputSchema: {
|
|
25
|
-
start: {
|
|
55
|
+
start: {
|
|
56
|
+
type: "string",
|
|
57
|
+
required: true,
|
|
58
|
+
description: "ISO start datetime, e.g. 2026-05-01T00:00:00Z",
|
|
59
|
+
},
|
|
26
60
|
end: { type: "string", required: true, description: "ISO end datetime" },
|
|
27
61
|
top: { type: "number", required: false, default: 50 },
|
|
28
62
|
},
|
|
29
63
|
async execute(input, ctx) {
|
|
64
|
+
const p = input;
|
|
30
65
|
const qs = new URLSearchParams({
|
|
31
|
-
startDateTime:
|
|
32
|
-
endDateTime:
|
|
33
|
-
$top: String(
|
|
66
|
+
startDateTime: p.start,
|
|
67
|
+
endDateTime: p.end,
|
|
68
|
+
$top: String(p.top ?? 50),
|
|
34
69
|
$select: "id,subject,start,end,location,organizer,attendees,isAllDay,webLink",
|
|
35
70
|
$orderby: "start/dateTime",
|
|
36
71
|
});
|
|
@@ -43,7 +78,8 @@ export default function microsoftCalendar(rl) {
|
|
|
43
78
|
description: "Get one calendar event by id (full details incl. body).",
|
|
44
79
|
inputSchema: { id: { type: "string", required: true } },
|
|
45
80
|
async execute(input, ctx) {
|
|
46
|
-
|
|
81
|
+
const p = input;
|
|
82
|
+
return graphRequest(ctx, NAME, SCOPES, "GET", `${userBase(ctx)}/events/${encodeURIComponent(p.id)}`);
|
|
47
83
|
},
|
|
48
84
|
});
|
|
49
85
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { jsonAnswer, pathSegment, pathSegments, requestFailed, } from "../../_shared/credentials.js";
|
|
2
|
+
import { graphRequest, graphResponse, microsoftCredential, microsoftDownload, microsoftDriveBase, microsoftSetupHelp, } from "../../_shared/microsoftAuth.js";
|
|
2
3
|
const NAME = "microsoftFiles";
|
|
3
4
|
const SCOPES = [
|
|
4
5
|
"https://graph.microsoft.com/Files.ReadWrite.All",
|
|
@@ -14,15 +15,55 @@ async function binaryFetch(ctx, method, path, body) {
|
|
|
14
15
|
export default function microsoftFiles(rl) {
|
|
15
16
|
rl.setName(NAME);
|
|
16
17
|
rl.setVersion("1.0.0");
|
|
18
|
+
rl.setCredential(microsoftCredential(NAME, SCOPES));
|
|
17
19
|
rl.setConnectionSchema({
|
|
18
|
-
authMethod: {
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
20
|
+
authMethod: {
|
|
21
|
+
type: "string",
|
|
22
|
+
required: false,
|
|
23
|
+
description: "delegated or appOnly; legacy configs infer the method from existing credentials",
|
|
24
|
+
},
|
|
25
|
+
tenantId: {
|
|
26
|
+
type: "string",
|
|
27
|
+
required: false,
|
|
28
|
+
env: "MS_GRAPH_TENANT_ID",
|
|
29
|
+
description: "Entra tenant id (app-only) or omit for OAuth /common",
|
|
30
|
+
},
|
|
31
|
+
clientId: {
|
|
32
|
+
type: "string",
|
|
33
|
+
required: false,
|
|
34
|
+
env: "MS_GRAPH_CLIENT_ID",
|
|
35
|
+
description: "App (client) id",
|
|
36
|
+
},
|
|
37
|
+
clientSecret: {
|
|
38
|
+
type: "string",
|
|
39
|
+
required: false,
|
|
40
|
+
env: "MS_GRAPH_CLIENT_SECRET",
|
|
41
|
+
description: "Client secret VALUE",
|
|
42
|
+
},
|
|
43
|
+
refreshToken: {
|
|
44
|
+
type: "string",
|
|
45
|
+
required: false,
|
|
46
|
+
env: "MICROSOFTFILES_REFRESH_TOKEN",
|
|
47
|
+
description: "OAuth2 refresh token (set by the login flow)",
|
|
48
|
+
},
|
|
49
|
+
userUpn: {
|
|
50
|
+
type: "string",
|
|
51
|
+
required: false,
|
|
52
|
+
env: "MS_GRAPH_USER_UPN",
|
|
53
|
+
description: "App-only only: target user UPN (their OneDrive)",
|
|
54
|
+
},
|
|
55
|
+
siteId: {
|
|
56
|
+
type: "string",
|
|
57
|
+
required: false,
|
|
58
|
+
env: "MS_SHAREPOINT_SITE_ID",
|
|
59
|
+
description: "Optional SharePoint site id (use its default drive)",
|
|
60
|
+
},
|
|
61
|
+
driveId: {
|
|
62
|
+
type: "string",
|
|
63
|
+
required: false,
|
|
64
|
+
env: "MS_GRAPH_DRIVE_ID",
|
|
65
|
+
description: "Optional explicit drive id (overrides site/user)",
|
|
66
|
+
},
|
|
26
67
|
});
|
|
27
68
|
rl.setOAuth({
|
|
28
69
|
authUrl: "https://login.microsoftonline.com/common/oauth2/v2.0/authorize",
|
|
@@ -38,9 +79,10 @@ export default function microsoftFiles(rl) {
|
|
|
38
79
|
top: { type: "number", required: false, default: 25 },
|
|
39
80
|
},
|
|
40
81
|
async execute(input, ctx) {
|
|
41
|
-
const
|
|
82
|
+
const p = input;
|
|
83
|
+
const q = encodeURIComponent(String(p.query).replace(/'/g, "''"));
|
|
42
84
|
const qs = new URLSearchParams({
|
|
43
|
-
$top: String(
|
|
85
|
+
$top: String(p.top ?? 25),
|
|
44
86
|
$select: "id,name,size,lastModifiedDateTime,webUrl,folder,file",
|
|
45
87
|
});
|
|
46
88
|
const r = await graphRequest(ctx, NAME, SCOPES, "GET", `${driveBase(ctx)}/root/search(q='${q}')?${qs}`);
|
|
@@ -51,13 +93,20 @@ export default function microsoftFiles(rl) {
|
|
|
51
93
|
access: "read",
|
|
52
94
|
description: "List children of a folder (default the drive root, or pass folderId).",
|
|
53
95
|
inputSchema: {
|
|
54
|
-
folderId: {
|
|
96
|
+
folderId: {
|
|
97
|
+
type: "string",
|
|
98
|
+
required: false,
|
|
99
|
+
description: "Folder item id; omit for root",
|
|
100
|
+
},
|
|
55
101
|
top: { type: "number", required: false, default: 100 },
|
|
56
102
|
},
|
|
57
103
|
async execute(input, ctx) {
|
|
58
|
-
const
|
|
104
|
+
const p = input;
|
|
105
|
+
const where = p.folderId
|
|
106
|
+
? `/items/${pathSegment(p.folderId)}/children`
|
|
107
|
+
: "/root/children";
|
|
59
108
|
const qs = new URLSearchParams({
|
|
60
|
-
$top: String(
|
|
109
|
+
$top: String(p.top ?? 100),
|
|
61
110
|
$select: "id,name,size,lastModifiedDateTime,webUrl,folder,file",
|
|
62
111
|
});
|
|
63
112
|
const r = await graphRequest(ctx, NAME, SCOPES, "GET", `${driveBase(ctx)}${where}?${qs}`);
|
|
@@ -69,7 +118,8 @@ export default function microsoftFiles(rl) {
|
|
|
69
118
|
description: "Download a file by id. Returns {id,name,size,contentType,base64}. base64 is the file bytes.",
|
|
70
119
|
inputSchema: { id: { type: "string", required: true } },
|
|
71
120
|
async execute(input, ctx) {
|
|
72
|
-
const
|
|
121
|
+
const p = input;
|
|
122
|
+
const meta = await graphRequest(ctx, NAME, SCOPES, "GET", `${driveBase(ctx)}/items/${pathSegment(p.id)}`);
|
|
73
123
|
const res = await microsoftDownload(meta["@microsoft.graph.downloadUrl"]);
|
|
74
124
|
if (!res.ok)
|
|
75
125
|
throw new Error(`${NAME}: download failed (HTTP ${res.status})`);
|
|
@@ -87,16 +137,24 @@ export default function microsoftFiles(rl) {
|
|
|
87
137
|
access: "write",
|
|
88
138
|
description: "Upload a file (base64) to a path in the drive, e.g. a dedicated output folder. Returns the created item. For files up to ~4MB.",
|
|
89
139
|
inputSchema: {
|
|
90
|
-
path: {
|
|
91
|
-
|
|
140
|
+
path: {
|
|
141
|
+
type: "string",
|
|
142
|
+
required: true,
|
|
143
|
+
description: "Drive-relative path incl. filename, e.g. 'Agent Output/report.docx'",
|
|
144
|
+
},
|
|
145
|
+
base64: {
|
|
146
|
+
type: "string",
|
|
147
|
+
required: true,
|
|
148
|
+
description: "File content, base64-encoded",
|
|
149
|
+
},
|
|
92
150
|
},
|
|
93
151
|
async execute(input, ctx) {
|
|
94
|
-
const
|
|
95
|
-
const
|
|
96
|
-
const res = await binaryFetch(ctx, "PUT", `${driveBase(ctx)}/root:/${
|
|
152
|
+
const { path, base64 } = input;
|
|
153
|
+
const bytes = Buffer.from(base64, "base64");
|
|
154
|
+
const res = await binaryFetch(ctx, "PUT", `${driveBase(ctx)}/root:/${pathSegments(path)}:/content`, bytes);
|
|
97
155
|
if (!res.ok)
|
|
98
|
-
throw
|
|
99
|
-
return
|
|
156
|
+
throw requestFailed(NAME, res.status);
|
|
157
|
+
return jsonAnswer(res);
|
|
100
158
|
},
|
|
101
159
|
});
|
|
102
160
|
rl.registerAction("folder.create", {
|
|
@@ -104,12 +162,19 @@ export default function microsoftFiles(rl) {
|
|
|
104
162
|
description: "Create a folder (e.g. a dedicated agent output folder) under the drive root or a parent.",
|
|
105
163
|
inputSchema: {
|
|
106
164
|
name: { type: "string", required: true },
|
|
107
|
-
parentId: {
|
|
165
|
+
parentId: {
|
|
166
|
+
type: "string",
|
|
167
|
+
required: false,
|
|
168
|
+
description: "Parent folder id; omit for root",
|
|
169
|
+
},
|
|
108
170
|
},
|
|
109
171
|
async execute(input, ctx) {
|
|
110
|
-
const
|
|
172
|
+
const p = input;
|
|
173
|
+
const where = p.parentId
|
|
174
|
+
? `/items/${pathSegment(p.parentId)}/children`
|
|
175
|
+
: "/root/children";
|
|
111
176
|
return graphRequest(ctx, NAME, SCOPES, "POST", `${driveBase(ctx)}${where}`, {
|
|
112
|
-
name:
|
|
177
|
+
name: p.name,
|
|
113
178
|
folder: {},
|
|
114
179
|
"@microsoft.graph.conflictBehavior": "rename",
|
|
115
180
|
});
|