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,42 +1,25 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
url.searchParams.set(k, String(v));
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
|
-
const opts = {
|
|
1
|
+
import { credentialJson, pathSegment } from "../../_shared/credentials.js";
|
|
2
|
+
import { gotowebinarCredential } from "./credentials.js";
|
|
3
|
+
function apiRequest(ctx, method, endpoint, body, qs) {
|
|
4
|
+
return credentialJson(ctx, gotowebinarCredential, "gotowebinar", {
|
|
5
|
+
target: "api",
|
|
6
|
+
path: endpoint,
|
|
11
7
|
method,
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
};
|
|
18
|
-
if (body !== undefined && method !== "GET" && method !== "DELETE") {
|
|
19
|
-
opts.body = JSON.stringify(body);
|
|
20
|
-
}
|
|
21
|
-
const res = await fetch(url.toString(), opts);
|
|
22
|
-
if (!res.ok)
|
|
23
|
-
throw new Error(`GoToWebinar API error ${res.status}: ${await res.text()}`);
|
|
24
|
-
if (res.status === 204)
|
|
25
|
-
return { success: true };
|
|
26
|
-
const ct = res.headers.get("content-type") ?? "";
|
|
27
|
-
if (ct.includes("json"))
|
|
28
|
-
return res.json();
|
|
29
|
-
return { success: true };
|
|
8
|
+
query: qs,
|
|
9
|
+
...(body !== undefined && method !== "GET" && method !== "DELETE"
|
|
10
|
+
? { json: body }
|
|
11
|
+
: {}),
|
|
12
|
+
});
|
|
30
13
|
}
|
|
31
14
|
function getConn(ctx) {
|
|
32
15
|
return {
|
|
33
|
-
accessToken: ctx.connection.config.accessToken,
|
|
34
16
|
organizerKey: ctx.connection.config.organizerKey,
|
|
35
17
|
};
|
|
36
18
|
}
|
|
37
19
|
export default function gotowebinar(rl) {
|
|
38
20
|
rl.setName("gotowebinar");
|
|
39
21
|
rl.setVersion("0.1.0");
|
|
22
|
+
rl.setCredential(gotowebinarCredential);
|
|
40
23
|
rl.setConnectionSchema({
|
|
41
24
|
accessToken: {
|
|
42
25
|
type: "string",
|
|
@@ -85,7 +68,7 @@ export default function gotowebinar(rl) {
|
|
|
85
68
|
},
|
|
86
69
|
async execute(input, ctx) {
|
|
87
70
|
const { subject, times, description: desc, timeZone, type, isPasswordProtected, } = input;
|
|
88
|
-
const {
|
|
71
|
+
const { organizerKey } = getConn(ctx);
|
|
89
72
|
const body = { subject, times };
|
|
90
73
|
if (desc)
|
|
91
74
|
body.description = desc;
|
|
@@ -95,7 +78,7 @@ export default function gotowebinar(rl) {
|
|
|
95
78
|
body.type = type;
|
|
96
79
|
if (isPasswordProtected !== undefined)
|
|
97
80
|
body.isPasswordProtected = isPasswordProtected;
|
|
98
|
-
return apiRequest(
|
|
81
|
+
return apiRequest(ctx, "POST", `organizers/${pathSegment(organizerKey)}/webinars`, body);
|
|
99
82
|
},
|
|
100
83
|
});
|
|
101
84
|
rl.registerAction("webinar.get", {
|
|
@@ -109,8 +92,8 @@ export default function gotowebinar(rl) {
|
|
|
109
92
|
},
|
|
110
93
|
},
|
|
111
94
|
async execute(input, ctx) {
|
|
112
|
-
const {
|
|
113
|
-
return apiRequest(
|
|
95
|
+
const { organizerKey } = getConn(ctx);
|
|
96
|
+
return apiRequest(ctx, "GET", `organizers/${pathSegment(organizerKey)}/webinars/${pathSegment(input.webinarKey)}`);
|
|
114
97
|
},
|
|
115
98
|
});
|
|
116
99
|
rl.registerAction("webinar.list", {
|
|
@@ -120,8 +103,8 @@ export default function gotowebinar(rl) {
|
|
|
120
103
|
limit: { type: "number", required: false, description: "Max results" },
|
|
121
104
|
},
|
|
122
105
|
async execute(input, ctx) {
|
|
123
|
-
const {
|
|
124
|
-
const data = (await apiRequest(
|
|
106
|
+
const { organizerKey } = getConn(ctx);
|
|
107
|
+
const data = (await apiRequest(ctx, "GET", `organizers/${pathSegment(organizerKey)}/webinars`));
|
|
125
108
|
const list = data._embedded?.webinars ?? data;
|
|
126
109
|
if (input?.limit && Array.isArray(list))
|
|
127
110
|
return list.slice(0, input.limit);
|
|
@@ -152,7 +135,7 @@ export default function gotowebinar(rl) {
|
|
|
152
135
|
},
|
|
153
136
|
async execute(input, ctx) {
|
|
154
137
|
const { webinarKey, subject, description: desc, times, timeZone, } = input;
|
|
155
|
-
const {
|
|
138
|
+
const { organizerKey } = getConn(ctx);
|
|
156
139
|
const body = {};
|
|
157
140
|
if (subject)
|
|
158
141
|
body.subject = subject;
|
|
@@ -162,7 +145,7 @@ export default function gotowebinar(rl) {
|
|
|
162
145
|
body.times = times;
|
|
163
146
|
if (timeZone)
|
|
164
147
|
body.timeZone = timeZone;
|
|
165
|
-
return apiRequest(
|
|
148
|
+
return apiRequest(ctx, "PUT", `organizers/${pathSegment(organizerKey)}/webinars/${pathSegment(webinarKey)}`, body);
|
|
166
149
|
},
|
|
167
150
|
});
|
|
168
151
|
rl.registerAction("webinar.delete", {
|
|
@@ -182,11 +165,11 @@ export default function gotowebinar(rl) {
|
|
|
182
165
|
},
|
|
183
166
|
async execute(input, ctx) {
|
|
184
167
|
const { webinarKey, sendCancellationEmails } = input;
|
|
185
|
-
const {
|
|
168
|
+
const { organizerKey } = getConn(ctx);
|
|
186
169
|
const qs = {};
|
|
187
170
|
if (sendCancellationEmails !== undefined)
|
|
188
171
|
qs.sendCancellationEmails = sendCancellationEmails;
|
|
189
|
-
await apiRequest(
|
|
172
|
+
await apiRequest(ctx, "DELETE", `organizers/${pathSegment(organizerKey)}/webinars/${pathSegment(webinarKey)}`, undefined, qs);
|
|
190
173
|
return { success: true };
|
|
191
174
|
},
|
|
192
175
|
});
|
|
@@ -206,8 +189,8 @@ export default function gotowebinar(rl) {
|
|
|
206
189
|
},
|
|
207
190
|
async execute(input, ctx) {
|
|
208
191
|
const { webinarKey, firstName, lastName, email } = input;
|
|
209
|
-
const {
|
|
210
|
-
return apiRequest(
|
|
192
|
+
const { organizerKey } = getConn(ctx);
|
|
193
|
+
return apiRequest(ctx, "POST", `organizers/${pathSegment(organizerKey)}/webinars/${pathSegment(webinarKey)}/registrants`, { firstName, lastName, email });
|
|
211
194
|
},
|
|
212
195
|
});
|
|
213
196
|
rl.registerAction("registrant.get", {
|
|
@@ -227,8 +210,8 @@ export default function gotowebinar(rl) {
|
|
|
227
210
|
},
|
|
228
211
|
async execute(input, ctx) {
|
|
229
212
|
const { webinarKey, registrantKey } = input;
|
|
230
|
-
const {
|
|
231
|
-
return apiRequest(
|
|
213
|
+
const { organizerKey } = getConn(ctx);
|
|
214
|
+
return apiRequest(ctx, "GET", `organizers/${pathSegment(organizerKey)}/webinars/${pathSegment(webinarKey)}/registrants/${pathSegment(registrantKey)}`);
|
|
232
215
|
},
|
|
233
216
|
});
|
|
234
217
|
rl.registerAction("registrant.list", {
|
|
@@ -242,8 +225,8 @@ export default function gotowebinar(rl) {
|
|
|
242
225
|
},
|
|
243
226
|
},
|
|
244
227
|
async execute(input, ctx) {
|
|
245
|
-
const {
|
|
246
|
-
return apiRequest(
|
|
228
|
+
const { organizerKey } = getConn(ctx);
|
|
229
|
+
return apiRequest(ctx, "GET", `organizers/${pathSegment(organizerKey)}/webinars/${pathSegment(input.webinarKey)}/registrants`);
|
|
247
230
|
},
|
|
248
231
|
});
|
|
249
232
|
rl.registerAction("registrant.delete", {
|
|
@@ -263,8 +246,8 @@ export default function gotowebinar(rl) {
|
|
|
263
246
|
},
|
|
264
247
|
async execute(input, ctx) {
|
|
265
248
|
const { webinarKey, registrantKey } = input;
|
|
266
|
-
const {
|
|
267
|
-
await apiRequest(
|
|
249
|
+
const { organizerKey } = getConn(ctx);
|
|
250
|
+
await apiRequest(ctx, "DELETE", `organizers/${pathSegment(organizerKey)}/webinars/${pathSegment(webinarKey)}/registrants/${pathSegment(registrantKey)}`);
|
|
268
251
|
return { success: true };
|
|
269
252
|
},
|
|
270
253
|
});
|
|
@@ -286,8 +269,8 @@ export default function gotowebinar(rl) {
|
|
|
286
269
|
},
|
|
287
270
|
async execute(input, ctx) {
|
|
288
271
|
const { webinarKey, sessionKey } = input;
|
|
289
|
-
const {
|
|
290
|
-
return apiRequest(
|
|
272
|
+
const { organizerKey } = getConn(ctx);
|
|
273
|
+
return apiRequest(ctx, "GET", `organizers/${pathSegment(organizerKey)}/webinars/${pathSegment(webinarKey)}/sessions/${pathSegment(sessionKey)}`);
|
|
291
274
|
},
|
|
292
275
|
});
|
|
293
276
|
rl.registerAction("session.list", {
|
|
@@ -301,8 +284,8 @@ export default function gotowebinar(rl) {
|
|
|
301
284
|
},
|
|
302
285
|
},
|
|
303
286
|
async execute(input, ctx) {
|
|
304
|
-
const {
|
|
305
|
-
return apiRequest(
|
|
287
|
+
const { organizerKey } = getConn(ctx);
|
|
288
|
+
return apiRequest(ctx, "GET", `organizers/${pathSegment(organizerKey)}/webinars/${pathSegment(input.webinarKey)}/sessions`);
|
|
306
289
|
},
|
|
307
290
|
});
|
|
308
291
|
rl.registerAction("session.getPerformance", {
|
|
@@ -322,8 +305,8 @@ export default function gotowebinar(rl) {
|
|
|
322
305
|
},
|
|
323
306
|
async execute(input, ctx) {
|
|
324
307
|
const { webinarKey, sessionKey } = input;
|
|
325
|
-
const {
|
|
326
|
-
return apiRequest(
|
|
308
|
+
const { organizerKey } = getConn(ctx);
|
|
309
|
+
return apiRequest(ctx, "GET", `organizers/${pathSegment(organizerKey)}/webinars/${pathSegment(webinarKey)}/sessions/${pathSegment(sessionKey)}/performance`);
|
|
327
310
|
},
|
|
328
311
|
});
|
|
329
312
|
// ── Attendee ────────────────────────────────────────
|
|
@@ -349,8 +332,8 @@ export default function gotowebinar(rl) {
|
|
|
349
332
|
},
|
|
350
333
|
async execute(input, ctx) {
|
|
351
334
|
const { webinarKey, sessionKey, registrantKey } = input;
|
|
352
|
-
const {
|
|
353
|
-
return apiRequest(
|
|
335
|
+
const { organizerKey } = getConn(ctx);
|
|
336
|
+
return apiRequest(ctx, "GET", `organizers/${pathSegment(organizerKey)}/webinars/${pathSegment(webinarKey)}/sessions/${pathSegment(sessionKey)}/attendees/${pathSegment(registrantKey)}`);
|
|
354
337
|
},
|
|
355
338
|
});
|
|
356
339
|
rl.registerAction("attendee.list", {
|
|
@@ -370,8 +353,8 @@ export default function gotowebinar(rl) {
|
|
|
370
353
|
},
|
|
371
354
|
async execute(input, ctx) {
|
|
372
355
|
const { webinarKey, sessionKey } = input;
|
|
373
|
-
const {
|
|
374
|
-
return apiRequest(
|
|
356
|
+
const { organizerKey } = getConn(ctx);
|
|
357
|
+
return apiRequest(ctx, "GET", `organizers/${pathSegment(organizerKey)}/webinars/${pathSegment(webinarKey)}/sessions/${pathSegment(sessionKey)}/attendees`);
|
|
375
358
|
},
|
|
376
359
|
});
|
|
377
360
|
// ── Coorganizer ─────────────────────────────────────
|
|
@@ -407,7 +390,7 @@ export default function gotowebinar(rl) {
|
|
|
407
390
|
},
|
|
408
391
|
async execute(input, ctx) {
|
|
409
392
|
const { webinarKey, external, organizerKey: coorgKey, givenName, email, } = input;
|
|
410
|
-
const {
|
|
393
|
+
const { organizerKey } = getConn(ctx);
|
|
411
394
|
const body = { external };
|
|
412
395
|
if (coorgKey)
|
|
413
396
|
body.organizerKey = coorgKey;
|
|
@@ -415,7 +398,7 @@ export default function gotowebinar(rl) {
|
|
|
415
398
|
body.givenName = givenName;
|
|
416
399
|
if (email)
|
|
417
400
|
body.email = email;
|
|
418
|
-
return apiRequest(
|
|
401
|
+
return apiRequest(ctx, "POST", `organizers/${pathSegment(organizerKey)}/webinars/${pathSegment(webinarKey)}/coorganizers`, [body]);
|
|
419
402
|
},
|
|
420
403
|
});
|
|
421
404
|
rl.registerAction("coorganizer.list", {
|
|
@@ -429,8 +412,8 @@ export default function gotowebinar(rl) {
|
|
|
429
412
|
},
|
|
430
413
|
},
|
|
431
414
|
async execute(input, ctx) {
|
|
432
|
-
const {
|
|
433
|
-
return apiRequest(
|
|
415
|
+
const { organizerKey } = getConn(ctx);
|
|
416
|
+
return apiRequest(ctx, "GET", `organizers/${pathSegment(organizerKey)}/webinars/${pathSegment(input.webinarKey)}/coorganizers`);
|
|
434
417
|
},
|
|
435
418
|
});
|
|
436
419
|
rl.registerAction("coorganizer.delete", {
|
|
@@ -455,11 +438,11 @@ export default function gotowebinar(rl) {
|
|
|
455
438
|
},
|
|
456
439
|
async execute(input, ctx) {
|
|
457
440
|
const { webinarKey, coorganizerKey, external } = input;
|
|
458
|
-
const {
|
|
441
|
+
const { organizerKey } = getConn(ctx);
|
|
459
442
|
const qs = {};
|
|
460
443
|
if (external !== undefined)
|
|
461
444
|
qs.external = external;
|
|
462
|
-
await apiRequest(
|
|
445
|
+
await apiRequest(ctx, "DELETE", `organizers/${pathSegment(organizerKey)}/webinars/${pathSegment(webinarKey)}/coorganizers/${pathSegment(coorganizerKey)}`, undefined, qs);
|
|
463
446
|
return { success: true };
|
|
464
447
|
},
|
|
465
448
|
});
|
|
@@ -478,8 +461,8 @@ export default function gotowebinar(rl) {
|
|
|
478
461
|
},
|
|
479
462
|
async execute(input, ctx) {
|
|
480
463
|
const { webinarKey, name, email } = input;
|
|
481
|
-
const {
|
|
482
|
-
return apiRequest(
|
|
464
|
+
const { organizerKey } = getConn(ctx);
|
|
465
|
+
return apiRequest(ctx, "POST", `organizers/${pathSegment(organizerKey)}/webinars/${pathSegment(webinarKey)}/panelists`, [{ name, email }]);
|
|
483
466
|
},
|
|
484
467
|
});
|
|
485
468
|
rl.registerAction("panelist.list", {
|
|
@@ -493,8 +476,8 @@ export default function gotowebinar(rl) {
|
|
|
493
476
|
},
|
|
494
477
|
},
|
|
495
478
|
async execute(input, ctx) {
|
|
496
|
-
const {
|
|
497
|
-
return apiRequest(
|
|
479
|
+
const { organizerKey } = getConn(ctx);
|
|
480
|
+
return apiRequest(ctx, "GET", `organizers/${pathSegment(organizerKey)}/webinars/${pathSegment(input.webinarKey)}/panelists`);
|
|
498
481
|
},
|
|
499
482
|
});
|
|
500
483
|
rl.registerAction("panelist.delete", {
|
|
@@ -514,8 +497,8 @@ export default function gotowebinar(rl) {
|
|
|
514
497
|
},
|
|
515
498
|
async execute(input, ctx) {
|
|
516
499
|
const { webinarKey, panelistKey } = input;
|
|
517
|
-
const {
|
|
518
|
-
await apiRequest(
|
|
500
|
+
const { organizerKey } = getConn(ctx);
|
|
501
|
+
await apiRequest(ctx, "DELETE", `organizers/${pathSegment(organizerKey)}/webinars/${pathSegment(webinarKey)}/panelists/${pathSegment(panelistKey)}`);
|
|
519
502
|
return { success: true };
|
|
520
503
|
},
|
|
521
504
|
});
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { httpsBase, staticCredential } from "../../_shared/credentials.js";
|
|
2
|
+
/**
|
|
3
|
+
* A service-account token or API key, sent as a bearer to the connection's
|
|
4
|
+
* own Grafana instance beneath /api/.
|
|
5
|
+
*/
|
|
6
|
+
export const grafanaCredential = staticCredential({
|
|
7
|
+
id: "grafana",
|
|
8
|
+
auth: { kind: "bearer" },
|
|
9
|
+
local: { secret: "apiKey" },
|
|
10
|
+
targets: (config) => ({
|
|
11
|
+
api: {
|
|
12
|
+
baseUrl: httpsBase(config.baseUrl, "api/"),
|
|
13
|
+
methods: ["GET", "POST", "PUT", "PATCH", "DELETE"],
|
|
14
|
+
},
|
|
15
|
+
}),
|
|
16
|
+
});
|
|
@@ -1,44 +1,23 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
const opts = {
|
|
1
|
+
import { credentialJson, pathSegment } from "../../_shared/credentials.js";
|
|
2
|
+
import { grafanaCredential } from "./credentials.js";
|
|
3
|
+
function gf(ctx, method, path, body, qs) {
|
|
4
|
+
return credentialJson(ctx, grafanaCredential, "grafana", {
|
|
5
|
+
target: "api",
|
|
6
|
+
path,
|
|
10
7
|
method,
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
method !== "DELETE") {
|
|
20
|
-
opts.body = JSON.stringify(body);
|
|
21
|
-
}
|
|
22
|
-
const res = await fetch(url.toString(), opts);
|
|
23
|
-
if (!res.ok)
|
|
24
|
-
throw new Error(`Grafana API error ${res.status}: ${await res.text()}`);
|
|
25
|
-
if (res.status === 204)
|
|
26
|
-
return { success: true };
|
|
27
|
-
return res.json();
|
|
28
|
-
}
|
|
29
|
-
function getConn(ctx) {
|
|
30
|
-
return {
|
|
31
|
-
baseUrl: ctx.connection.config.baseUrl.replace(/\/$/, ""),
|
|
32
|
-
apiKey: ctx.connection.config.apiKey,
|
|
33
|
-
};
|
|
34
|
-
}
|
|
35
|
-
function gf(ctx, method, endpoint, body, qs) {
|
|
36
|
-
const { baseUrl, apiKey } = getConn(ctx);
|
|
37
|
-
return apiRequest(baseUrl, apiKey, method, endpoint, body, qs);
|
|
8
|
+
query: qs,
|
|
9
|
+
...(body &&
|
|
10
|
+
Object.keys(body).length > 0 &&
|
|
11
|
+
method !== "GET" &&
|
|
12
|
+
method !== "DELETE"
|
|
13
|
+
? { json: body }
|
|
14
|
+
: {}),
|
|
15
|
+
});
|
|
38
16
|
}
|
|
39
17
|
export default function grafana(rl) {
|
|
40
18
|
rl.setName("grafana");
|
|
41
19
|
rl.setVersion("0.1.0");
|
|
20
|
+
rl.setCredential(grafanaCredential);
|
|
42
21
|
rl.setConnectionSchema({
|
|
43
22
|
baseUrl: {
|
|
44
23
|
type: "string",
|
|
@@ -80,7 +59,7 @@ export default function grafana(rl) {
|
|
|
80
59
|
body.overwrite = overwrite;
|
|
81
60
|
if (message)
|
|
82
61
|
body.message = message;
|
|
83
|
-
return gf(ctx, "POST", "
|
|
62
|
+
return gf(ctx, "POST", "dashboards/db", body);
|
|
84
63
|
},
|
|
85
64
|
});
|
|
86
65
|
rl.registerAction("dashboard.get", {
|
|
@@ -90,7 +69,7 @@ export default function grafana(rl) {
|
|
|
90
69
|
uid: { type: "string", required: true, description: "Dashboard UID" },
|
|
91
70
|
},
|
|
92
71
|
async execute(input, ctx) {
|
|
93
|
-
return gf(ctx, "GET",
|
|
72
|
+
return gf(ctx, "GET", `dashboards/uid/${pathSegment(input.uid)}`);
|
|
94
73
|
},
|
|
95
74
|
});
|
|
96
75
|
rl.registerAction("dashboard.list", {
|
|
@@ -124,7 +103,7 @@ export default function grafana(rl) {
|
|
|
124
103
|
qs.folderIds = folderId;
|
|
125
104
|
if (limit)
|
|
126
105
|
qs.limit = limit;
|
|
127
|
-
return gf(ctx, "GET", "
|
|
106
|
+
return gf(ctx, "GET", "search", undefined, qs);
|
|
128
107
|
},
|
|
129
108
|
});
|
|
130
109
|
rl.registerAction("dashboard.delete", {
|
|
@@ -134,7 +113,7 @@ export default function grafana(rl) {
|
|
|
134
113
|
uid: { type: "string", required: true, description: "Dashboard UID" },
|
|
135
114
|
},
|
|
136
115
|
async execute(input, ctx) {
|
|
137
|
-
return gf(ctx, "DELETE",
|
|
116
|
+
return gf(ctx, "DELETE", `dashboards/uid/${pathSegment(input.uid)}`);
|
|
138
117
|
},
|
|
139
118
|
});
|
|
140
119
|
rl.registerAction("dashboard.update", {
|
|
@@ -164,7 +143,7 @@ export default function grafana(rl) {
|
|
|
164
143
|
body.folderId = folderId;
|
|
165
144
|
if (message)
|
|
166
145
|
body.message = message;
|
|
167
|
-
return gf(ctx, "POST", "
|
|
146
|
+
return gf(ctx, "POST", "dashboards/db", body);
|
|
168
147
|
},
|
|
169
148
|
});
|
|
170
149
|
// ── Team ────────────────────────────────────────────
|
|
@@ -180,7 +159,7 @@ export default function grafana(rl) {
|
|
|
180
159
|
const body = { name };
|
|
181
160
|
if (email)
|
|
182
161
|
body.email = email;
|
|
183
|
-
return gf(ctx, "POST", "
|
|
162
|
+
return gf(ctx, "POST", "teams", body);
|
|
184
163
|
},
|
|
185
164
|
});
|
|
186
165
|
rl.registerAction("team.get", {
|
|
@@ -190,7 +169,7 @@ export default function grafana(rl) {
|
|
|
190
169
|
teamId: { type: "number", required: true, description: "Team ID" },
|
|
191
170
|
},
|
|
192
171
|
async execute(input, ctx) {
|
|
193
|
-
return gf(ctx, "GET",
|
|
172
|
+
return gf(ctx, "GET", `teams/${pathSegment(input.teamId)}`);
|
|
194
173
|
},
|
|
195
174
|
});
|
|
196
175
|
rl.registerAction("team.list", {
|
|
@@ -210,7 +189,7 @@ export default function grafana(rl) {
|
|
|
210
189
|
qs.perpage = limit;
|
|
211
190
|
if (page)
|
|
212
191
|
qs.page = page;
|
|
213
|
-
const data = (await gf(ctx, "GET", "
|
|
192
|
+
const data = (await gf(ctx, "GET", "teams/search", undefined, qs));
|
|
214
193
|
return data.teams;
|
|
215
194
|
},
|
|
216
195
|
});
|
|
@@ -229,7 +208,7 @@ export default function grafana(rl) {
|
|
|
229
208
|
body.name = name;
|
|
230
209
|
if (email)
|
|
231
210
|
body.email = email;
|
|
232
|
-
return gf(ctx, "PUT",
|
|
211
|
+
return gf(ctx, "PUT", `teams/${pathSegment(teamId)}`, body);
|
|
233
212
|
},
|
|
234
213
|
});
|
|
235
214
|
rl.registerAction("team.delete", {
|
|
@@ -239,7 +218,7 @@ export default function grafana(rl) {
|
|
|
239
218
|
teamId: { type: "number", required: true, description: "Team ID" },
|
|
240
219
|
},
|
|
241
220
|
async execute(input, ctx) {
|
|
242
|
-
return gf(ctx, "DELETE",
|
|
221
|
+
return gf(ctx, "DELETE", `teams/${pathSegment(input.teamId)}`);
|
|
243
222
|
},
|
|
244
223
|
});
|
|
245
224
|
// ── Team Member ─────────────────────────────────────
|
|
@@ -252,7 +231,9 @@ export default function grafana(rl) {
|
|
|
252
231
|
},
|
|
253
232
|
async execute(input, ctx) {
|
|
254
233
|
const { teamId, userId } = input;
|
|
255
|
-
return gf(ctx, "POST",
|
|
234
|
+
return gf(ctx, "POST", `teams/${pathSegment(teamId)}/members`, {
|
|
235
|
+
userId,
|
|
236
|
+
});
|
|
256
237
|
},
|
|
257
238
|
});
|
|
258
239
|
rl.registerAction("teamMember.remove", {
|
|
@@ -268,7 +249,7 @@ export default function grafana(rl) {
|
|
|
268
249
|
},
|
|
269
250
|
async execute(input, ctx) {
|
|
270
251
|
const { teamId, userId } = input;
|
|
271
|
-
return gf(ctx, "DELETE",
|
|
252
|
+
return gf(ctx, "DELETE", `teams/${pathSegment(teamId)}/members/${pathSegment(userId)}`);
|
|
272
253
|
},
|
|
273
254
|
});
|
|
274
255
|
rl.registerAction("teamMember.list", {
|
|
@@ -278,7 +259,7 @@ export default function grafana(rl) {
|
|
|
278
259
|
teamId: { type: "number", required: true, description: "Team ID" },
|
|
279
260
|
},
|
|
280
261
|
async execute(input, ctx) {
|
|
281
|
-
return gf(ctx, "GET",
|
|
262
|
+
return gf(ctx, "GET", `teams/${pathSegment(input.teamId)}/members`);
|
|
282
263
|
},
|
|
283
264
|
});
|
|
284
265
|
// ── User (Org) ──────────────────────────────────────
|
|
@@ -299,14 +280,14 @@ export default function grafana(rl) {
|
|
|
299
280
|
},
|
|
300
281
|
async execute(input, ctx) {
|
|
301
282
|
const { loginOrEmail, role } = input;
|
|
302
|
-
return gf(ctx, "POST", "
|
|
283
|
+
return gf(ctx, "POST", "org/users", { loginOrEmail, role });
|
|
303
284
|
},
|
|
304
285
|
});
|
|
305
286
|
rl.registerAction("user.list", {
|
|
306
287
|
access: "read",
|
|
307
288
|
description: "List users in the current organization",
|
|
308
289
|
async execute(_input, ctx) {
|
|
309
|
-
return gf(ctx, "GET", "
|
|
290
|
+
return gf(ctx, "GET", "org/users");
|
|
310
291
|
},
|
|
311
292
|
});
|
|
312
293
|
rl.registerAction("user.update", {
|
|
@@ -322,7 +303,7 @@ export default function grafana(rl) {
|
|
|
322
303
|
},
|
|
323
304
|
async execute(input, ctx) {
|
|
324
305
|
const { userId, role } = input;
|
|
325
|
-
return gf(ctx, "PATCH",
|
|
306
|
+
return gf(ctx, "PATCH", `org/users/${pathSegment(userId)}`, { role });
|
|
326
307
|
},
|
|
327
308
|
});
|
|
328
309
|
rl.registerAction("user.delete", {
|
|
@@ -332,7 +313,7 @@ export default function grafana(rl) {
|
|
|
332
313
|
userId: { type: "number", required: true, description: "User ID" },
|
|
333
314
|
},
|
|
334
315
|
async execute(input, ctx) {
|
|
335
|
-
return gf(ctx, "DELETE",
|
|
316
|
+
return gf(ctx, "DELETE", `org/users/${pathSegment(input.userId)}`);
|
|
336
317
|
},
|
|
337
318
|
});
|
|
338
319
|
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { httpsBase, staticCredential } from "../../_shared/credentials.js";
|
|
2
|
+
/**
|
|
3
|
+
* The configured endpoint as a target base and the path beneath it:
|
|
4
|
+
* `https://api.example.com/v1/graphql` is the base
|
|
5
|
+
* `https://api.example.com/v1/` and the path `graphql`. Only a plain HTTPS
|
|
6
|
+
* URL is an endpoint.
|
|
7
|
+
*/
|
|
8
|
+
export function endpoint(config) {
|
|
9
|
+
httpsBase(config.endpoint, "");
|
|
10
|
+
const url = new URL(String(config.endpoint));
|
|
11
|
+
const cut = url.pathname.lastIndexOf("/") + 1;
|
|
12
|
+
return {
|
|
13
|
+
base: `${url.origin}${url.pathname.slice(0, cut)}`,
|
|
14
|
+
path: url.pathname.slice(cut),
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
/** The connection's public headers, sent on every request. */
|
|
18
|
+
export function publicHeaders(config) {
|
|
19
|
+
const headers = config.headers;
|
|
20
|
+
if (!headers || typeof headers !== "object")
|
|
21
|
+
return {};
|
|
22
|
+
return Object.fromEntries(Object.entries(headers).map(([name, value]) => [name, String(value)]));
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* An optional Authorization value (`headerAuth`, e.g. `Bearer <token>`),
|
|
26
|
+
* sent whole to the configured endpoint; without it, requests go
|
|
27
|
+
* unsigned. `headers` holds public headers only, and may not claim
|
|
28
|
+
* Authorization: a secret belongs in headerAuth.
|
|
29
|
+
*/
|
|
30
|
+
export const graphqlCredential = staticCredential({
|
|
31
|
+
id: "graphql",
|
|
32
|
+
auth: { kind: "apiKey", header: "Authorization" },
|
|
33
|
+
local: { secret: "headerAuth" },
|
|
34
|
+
optional: true,
|
|
35
|
+
targets: (config) => ({
|
|
36
|
+
api: {
|
|
37
|
+
baseUrl: endpoint(config).base,
|
|
38
|
+
methods: ["POST"],
|
|
39
|
+
allowedHeaders: Object.keys(publicHeaders(config)),
|
|
40
|
+
},
|
|
41
|
+
}),
|
|
42
|
+
});
|