From e205d16eb12db2d7921b49c09c9d450e4483b15e Mon Sep 17 00:00:00 2001 From: Sai Kumar Battinoju <88789928+saikumarrs@users.noreply.github.com> Date: Tue, 5 Dec 2023 12:02:31 +0530 Subject: [PATCH 1/3] fix: destination definition files and add schema (#1092) --- .github/workflows/deploy-to-prod.yml | 2 +- .github/workflows/test.yml | 6 +- README.md | 1 + oscontrib/README.md | 1 - .../active_campaign/db-config.json | 1 - .../active_campaign/ui-config.json | 4 +- .../destinations/adj/db-config.json | 1 - .../adobe_analytics/db-config.json | 1 - .../destinations/adroll/db-config.json | 1 - .../destinations/af/db-config.json | 1 - .../destinations/airship/db-config.json | 1 - .../destinations/algolia/db-config.json | 1 - .../destinations/am/db-config.json | 1 - .../destinations/appcenter/db-config.json | 1 - .../destinations/appcues/db-config.json | 1 - .../destinations/attentive_tag/db-config.json | 1 - .../destinations/attribution/db-config.json | 4 +- .../destinations/autopilot/db-config.json | 1 - .../destinations/awin/db-config.json | 1 - .../destinations/axeptio/db-config.json | 1 - .../destinations/azure_blob/db-config.json | 2 - .../azure_datalake/db-config.json | 2 - .../azure_event_hub/db-config.json | 1 - .../destinations/azure_synapse/db-config.json | 2 - .../destinations/bingads/db-config.json | 1 - .../bingads_audience/db-config.json | 1 - .../destinations/blueshift/db-config.json | 1 - .../destinations/bq/db-config.json | 2 - .../destinations/bqstream/db-config.json | 1 - .../destinations/branch/db-config.json | 1 - .../destinations/braze/db-config.json | 15 +- .../destinations/braze/schema.json | 10 +- .../destinations/bugsnag/db-config.json | 1 - .../campaign_manager/db-config.json | 1 - .../destinations/candu/db-config.json | 1 - .../destinations/canny/db-config.json | 1 - .../destinations/chartbeat/db-config.json | 1 - .../destinations/clevertap/db-config.json | 1 - .../destinations/clickhouse/db-config.json | 2 - .../destinations/clickup/db-config.json | 1 - .../destinations/comscore/db-config.json | 11 +- .../destinations/comscore/schema.json | 10 +- .../confluent_cloud/db-config.json | 1 - .../destinations/convertflow/db-config.json | 1 - .../destinations/courier/db-config.json | 1 - .../destinations/criteo/db-config.json | 1 - .../criteo_audience/db-config.json | 1 - .../destinations/custify/db-config.json | 1 - .../destinations/customerio/db-config.json | 1 - .../dcm_floodlight/db-config.json | 1 - .../destinations/dcm_floodlight/schema.json | 17 +- .../dcm_floodlight/ui-config.json | 2 +- .../destinations/delighted/db-config.json | 1 - .../destinations/deltalake/db-config.json | 2 - .../digital_ocean_spaces/db-config.json | 2 - .../destinations/discord/db-config.json | 1 - .../destinations/drip/db-config.json | 1 - .../destinations/dynamic_yield/db-config.json | 1 - .../destinations/eloqua/db-config.json | 4 - .../destinations/engage/db-config.json | 1 - .../destinations/eventbridge/db-config.json | 1 - .../facebook_conversions/db-config.json | 3 - .../db-config.json | 1 - .../facebook_pixel/db-config.json | 1 - .../destinations/factorsai/db-config.json | 1 - .../destinations/fb/db-config.json | 5 +- .../fb_custom_audience/db-config.json | 1 - .../destinations/firebase/db-config.json | 1 - .../destinations/firehose/db-config.json | 1 - .../destinations/freshmarketer/db-config.json | 1 - .../destinations/freshsales/db-config.json | 1 - .../destinations/fullstory/db-config.json | 4 +- .../destinations/ga/db-config.json | 1 - .../destinations/ga360/db-config.json | 1 - .../destinations/ga4/db-config.json | 11 +- .../destinations/gainsight/db-config.json | 1 - .../destinations/gainsight_px/db-config.json | 1 - .../destinations/gcs/db-config.json | 1 - .../destinations/gcs_datalake/db-config.json | 1 - .../destinations/gladly/db-config.json | 1 - .../destinations/gladly/ui-config.json | 6 +- .../db-config.json | 1 - .../db-config.json | 1 - .../db-config.json | 1 - .../google_cloud_function/db-config.json | 3 - .../google_optimize/db-config.json | 1 - .../destinations/googleads/db-config.json | 1 - .../destinations/googleads/schema.json | 4 +- .../destinations/googlepubsub/db-config.json | 1 - .../destinations/googlesheets/db-config.json | 1 - .../destinations/gtm/db-config.json | 1 - .../destinations/heap/db-config.json | 1 - .../destinations/hotjar/db-config.json | 1 - .../destinations/hs/db-config.json | 1 - .../destinations/impact/db-config.json | 4 +- .../destinations/indicative/db-config.json | 1 - .../destinations/intercom/db-config.json | 1 - .../destinations/iterable/db-config.json | 1 - .../destinations/iterable/schema.json | 11 +- .../destinations/june/db-config.json | 1 - .../destinations/kafka/db-config.json | 1 - .../destinations/keen/db-config.json | 1 - .../destinations/kinesis/db-config.json | 1 - .../destinations/kissmetrics/db-config.json | 1 - .../destinations/klaviyo/db-config.json | 1 - .../destinations/kochava/db-config.json | 1 - .../destinations/kustomer/db-config.json | 1 - .../destinations/lambda/db-config.json | 1 - .../launchdarkly_audience/db-config.json | 4 - .../destinations/leanplum/db-config.json | 1 - .../destinations/lemnisk/db-config.json | 1 - .../linkedin_insight_tag/db-config.json | 1 - .../destinations/livechat/db-config.json | 1 - .../destinations/lotame/db-config.json | 1 - .../destinations/lotame_mobile/db-config.json | 3 +- .../destinations/lytics/db-config.json | 1 - .../destinations/mailchimp/db-config.json | 1 - .../destinations/mailjet/db-config.json | 1 - .../destinations/mailmodo/db-config.json | 1 - .../destinations/marketo/db-config.json | 1 - .../destinations/marketo/schema.json | 8 +- .../marketo_bulk_upload/db-config.json | 1 - .../marketo_static_list/db-config.json | 1 - .../destinations/matomo/db-config.json | 1 - .../destinations/mautic/db-config.json | 1 - .../microsoft_clarity/db-config.json | 1 - .../destinations/minio/db-config.json | 1 - .../destinations/moengage/db-config.json | 1 - .../destinations/monday/db-config.json | 1 - .../destinations/monetate/db-config.json | 1 - .../destinations/mouseflow/db-config.json | 1 - .../destinations/mp/db-config.json | 1 - .../destinations/mssql/db-config.json | 1 - .../destinations/new_relic/db-config.json | 1 - .../destinations/olark/db-config.json | 1 - .../destinations/ometria/db-config.json | 1 - .../destinations/one_signal/db-config.json | 1 - .../destinations/optimizely/db-config.json | 1 - .../optimizely_fullstack/db-config.json | 1 - .../destinations/ortto/db-config.json | 3 - .../destinations/pagerduty/db-config.json | 1 - .../destinations/pardot/db-config.json | 1 - .../destinations/pendo/db-config.json | 1 - .../destinations/persistiq/db-config.json | 1 - .../destinations/personalize/db-config.json | 1 - .../destinations/pinterest_tag/db-config.json | 1 - .../destinations/pinterest_tag/schema.json | 5 +- .../destinations/pipedream/db-config.json | 1 - .../destinations/pipedrive/db-config.json | 1 - .../destinations/podsights/db-config.json | 1 - .../post_affiliate_pro/db-config.json | 2 - .../destinations/postgres/db-config.json | 1 - .../destinations/posthog/db-config.json | 1 - .../destinations/profitwell/db-config.json | 1 - .../destinations/qualaroo/db-config.json | 1 - .../destinations/qualtrics/db-config.json | 1 - .../destinations/quantummetric/db-config.json | 1 - .../destinations/quora_pixel/db-config.json | 1 - .../destinations/reddit_pixel/db-config.json | 1 - .../destinations/redis/db-config.json | 1 - .../destinations/refiner/db-config.json | 1 - .../destinations/revenue_cat/db-config.json | 1 - .../destinations/rockerbox/db-config.json | 1 - .../destinations/rollbar/db-config.json | 1 - .../destinations/rs/db-config.json | 1 - .../destinations/s3/db-config.json | 1 - .../destinations/s3_datalake/db-config.json | 1 - .../destinations/salesforce/db-config.json | 1 - .../salesforce_oauth/db-config.json | 5 +- .../destinations/satismeter/db-config.json | 1 - .../destinations/segment/db-config.json | 1 - .../destinations/sendgrid/db-config.json | 1 - .../destinations/sendinblue/db-config.json | 1 - .../destinations/sentry/db-config.json | 1 - .../destinations/serenytics/db-config.json | 1 - .../destinations/sfmc/db-config.json | 1 - .../destinations/shynet/db-config.json | 1 - .../destinations/signl4/db-config.json | 1 - .../destinations/singular/db-config.json | 1 - .../destinations/slack/db-config.json | 1 - .../destinations/snap_pixel/db-config.json | 1 - .../snapchat_conversion/db-config.json | 1 - .../snapchat_custom_audience/db-config.json | 1 - .../destinations/snapengage/db-config.json | 1 - .../destinations/snowflake/db-config.json | 1 - .../destinations/splitio/db-config.json | 1 - .../destinations/sprig/db-config.json | 6 +- .../destinations/statsig/db-config.json | 1 - .../destinations/stormly/db-config.json | 1 - .../destinations/tiktok_ads/db-config.json | 1 - .../tiktok_ads_offline_events/db-config.json | 1 - .../tiktok_ads_offline_events/metadata.json | 15 +- .../tiktok_audience/db-config.json | 1 - .../destinations/trengo/db-config.json | 1 - .../destinations/tvsquared/db-config.json | 1 - .../destinations/twitter_ads/db-config.json | 1 - .../destinations/user/db-config.json | 1 - .../destinations/userlist/db-config.json | 1 - .../destinations/variance/db-config.json | 1 - .../destinations/vero/db-config.json | 1 - .../destinations/vitally/db-config.json | 1 - .../destinations/vwo/db-config.json | 1 - .../destinations/webengage/db-config.json | 1 - .../destinations/webhook/db-config.json | 1 - .../destinations/woopra/db-config.json | 1 - .../destinations/wootric/db-config.json | 1 - .../destinations/yahoo_dsp/db-config.json | 1 - .../yandex_metrica/db-config.json | 1 - .../destinations/zapier/db-config.json | 1 - .../destinations/zendesk/db-config.json | 1 - .../sources/bigquery/db-config.json | 5 +- .../sources/databricks/db-config.json | 5 +- .../sources/databricks/ui-config.json | 2 +- .../sources/mysql/db-config.json | 5 +- .../sources/postgres/db-config.json | 5 +- .../sources/redshift/db-config.json | 5 +- .../singer_google_analytics/db-config.json | 4 +- .../sources/snowflake/db-config.json | 5 +- .../sources/trino/db-config.json | 7 +- .../destinations/db-config-schema.json | 538 ++++++++++++++++++ src/schemas/sources/db-config-schema.json | 153 +++++ src/validator/index.ts | 151 ++--- .../destinations/dcm_floodlight.json | 4 +- test/data/validation/destinations/eloqua.json | 2 +- test/data/validation/destinations/ga4.json | 2 +- .../validation/destinations/iterable.json | 2 +- .../data/validation/destinations/lemnisk.json | 2 +- .../data/validation/destinations/marketo.json | 228 ++++---- test/validation.test.ts | 219 ++++--- 229 files changed, 1069 insertions(+), 650 deletions(-) create mode 100644 src/schemas/destinations/db-config-schema.json create mode 100644 src/schemas/sources/db-config-schema.json diff --git a/.github/workflows/deploy-to-prod.yml b/.github/workflows/deploy-to-prod.yml index e5e0f025c..0013ab675 100644 --- a/.github/workflows/deploy-to-prod.yml +++ b/.github/workflows/deploy-to-prod.yml @@ -39,7 +39,7 @@ jobs: echo "version=$version" >> $GITHUB_OUTPUT deploy: - needs: [ extract-version ] + needs: [extract-version] name: Deployment To Production DB # Only merged pull requests from release candidate branches and external workflow calls must trigger if: (((startsWith(github.event.pull_request.head.ref, 'release/') || startsWith(github.event.pull_request.head.ref, 'hotfix-release/')) && github.event.pull_request.merged == true) || github.event_name == 'workflow_call') diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 027a6e6be..d813cd66e 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -28,16 +28,16 @@ jobs: - name: Run Unit Tests run: npm run test:ci - + - name: Set up Python run: scripts/setup-python.sh - + - name: Get changed files id: changed_files uses: tj-actions/changed-files@v36 with: sha: ${{ github.event.pull_request.head.sha }} - + - name: Run schema validation for changed files run: | chmod +x scripts/run-schema-validation.sh diff --git a/README.md b/README.md index 9bfd11772..5572ef11f 100644 --- a/README.md +++ b/README.md @@ -17,6 +17,7 @@

--- + [![codecov](https://codecov.io/gh/rudderlabs/rudder-integrations-config/branch/develop/graph/badge.svg?token=K75QABOWUT)](https://codecov.io/gh/rudderlabs/rudder-integrations-config) # \*\*rudder-config-schema\*\* diff --git a/oscontrib/README.md b/oscontrib/README.md index 6de403c6d..d19229509 100644 --- a/oscontrib/README.md +++ b/oscontrib/README.md @@ -15,7 +15,6 @@ For the above input data, the UI will look like as shown below: connectionSettings configurationSettings - In the input file, you need to provide the destination name you want to display in the UI in the displayName field. Each json object inside the formFields represents a field you want to add as a connection/configuration settings to the destination. diff --git a/src/configurations/destinations/active_campaign/db-config.json b/src/configurations/destinations/active_campaign/db-config.json index f5743097d..e19e160ee 100644 --- a/src/configurations/destinations/active_campaign/db-config.json +++ b/src/configurations/destinations/active_campaign/db-config.json @@ -2,7 +2,6 @@ "name": "ACTIVE_CAMPAIGN", "displayName": "ActiveCampaign", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "isAudienceSupported": true, diff --git a/src/configurations/destinations/active_campaign/ui-config.json b/src/configurations/destinations/active_campaign/ui-config.json index f35f2d5f7..adff0a172 100644 --- a/src/configurations/destinations/active_campaign/ui-config.json +++ b/src/configurations/destinations/active_campaign/ui-config.json @@ -132,9 +132,7 @@ "sdkTemplate": { "title": "SDK settings", "note": "not visible in the ui", - "fields": [ - ] + "fields": [] } } } - diff --git a/src/configurations/destinations/adj/db-config.json b/src/configurations/destinations/adj/db-config.json index 0eaec94c5..427055bf3 100644 --- a/src/configurations/destinations/adj/db-config.json +++ b/src/configurations/destinations/adj/db-config.json @@ -2,7 +2,6 @@ "name": "ADJ", "displayName": "Adjust", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/adobe_analytics/db-config.json b/src/configurations/destinations/adobe_analytics/db-config.json index 4f34e5bf6..a05084144 100644 --- a/src/configurations/destinations/adobe_analytics/db-config.json +++ b/src/configurations/destinations/adobe_analytics/db-config.json @@ -2,7 +2,6 @@ "name": "ADOBE_ANALYTICS", "displayName": "Adobe Analytics", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/adroll/db-config.json b/src/configurations/destinations/adroll/db-config.json index d3b9b3859..0c46ec0de 100644 --- a/src/configurations/destinations/adroll/db-config.json +++ b/src/configurations/destinations/adroll/db-config.json @@ -2,7 +2,6 @@ "name": "ADROLL", "displayName": "Adroll", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/af/db-config.json b/src/configurations/destinations/af/db-config.json index 307dc80b0..b85a93b79 100644 --- a/src/configurations/destinations/af/db-config.json +++ b/src/configurations/destinations/af/db-config.json @@ -2,7 +2,6 @@ "name": "AF", "displayName": "AppsFlyer", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/airship/db-config.json b/src/configurations/destinations/airship/db-config.json index 34166419a..61c3fa60d 100644 --- a/src/configurations/destinations/airship/db-config.json +++ b/src/configurations/destinations/airship/db-config.json @@ -2,7 +2,6 @@ "name": "AIRSHIP", "displayName": "Airship", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/algolia/db-config.json b/src/configurations/destinations/algolia/db-config.json index 0599c49c7..82f84125d 100644 --- a/src/configurations/destinations/algolia/db-config.json +++ b/src/configurations/destinations/algolia/db-config.json @@ -3,7 +3,6 @@ "displayName": "Algolia", "config": { "cdkV2Enabled": true, - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/am/db-config.json b/src/configurations/destinations/am/db-config.json index d78001dd5..d0f4f9826 100644 --- a/src/configurations/destinations/am/db-config.json +++ b/src/configurations/destinations/am/db-config.json @@ -4,7 +4,6 @@ "config": { "isAudienceSupported": false, "supportsVisualMapper": true, - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/appcenter/db-config.json b/src/configurations/destinations/appcenter/db-config.json index f484246b3..e5c40cd96 100644 --- a/src/configurations/destinations/appcenter/db-config.json +++ b/src/configurations/destinations/appcenter/db-config.json @@ -2,7 +2,6 @@ "name": "APPCENTER", "displayName": "App Center", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/appcues/db-config.json b/src/configurations/destinations/appcues/db-config.json index 91d42354d..e18e20193 100644 --- a/src/configurations/destinations/appcues/db-config.json +++ b/src/configurations/destinations/appcues/db-config.json @@ -2,7 +2,6 @@ "name": "APPCUES", "displayName": "Appcues", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/attentive_tag/db-config.json b/src/configurations/destinations/attentive_tag/db-config.json index 8ba5fd304..f28a8a2c7 100644 --- a/src/configurations/destinations/attentive_tag/db-config.json +++ b/src/configurations/destinations/attentive_tag/db-config.json @@ -2,7 +2,6 @@ "name": "ATTENTIVE_TAG", "displayName": "Attentive Tag", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/attribution/db-config.json b/src/configurations/destinations/attribution/db-config.json index c1f793fc6..b30cbe78c 100644 --- a/src/configurations/destinations/attribution/db-config.json +++ b/src/configurations/destinations/attribution/db-config.json @@ -2,7 +2,6 @@ "name": "ATTRIBUTION", "displayName": "Attribution", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": false, "includeKeys": ["oneTrustCookieCategories"], @@ -35,8 +34,7 @@ "shopify": ["cloud"] }, "destConfig": { - "defaultConfig": ["writeKey", "oneTrustCookieCategories"], - "web": [] + "defaultConfig": ["writeKey", "oneTrustCookieCategories"] }, "secretKeys": ["writeKey"] } diff --git a/src/configurations/destinations/autopilot/db-config.json b/src/configurations/destinations/autopilot/db-config.json index eed417c40..3d062faa9 100644 --- a/src/configurations/destinations/autopilot/db-config.json +++ b/src/configurations/destinations/autopilot/db-config.json @@ -2,7 +2,6 @@ "name": "AUTOPILOT", "displayName": "Autopilot", "config": { - "transformAt": "processor", "transformAtV1": "processor", "cdkEnabled": true, "saveDestinationResponse": true, diff --git a/src/configurations/destinations/awin/db-config.json b/src/configurations/destinations/awin/db-config.json index 915704c28..164e724bc 100644 --- a/src/configurations/destinations/awin/db-config.json +++ b/src/configurations/destinations/awin/db-config.json @@ -2,7 +2,6 @@ "name": "AWIN", "displayName": "Awin", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["advertiserId", "eventsToTrack", "oneTrustCookieCategories"], diff --git a/src/configurations/destinations/axeptio/db-config.json b/src/configurations/destinations/axeptio/db-config.json index f46936fef..88221ad30 100644 --- a/src/configurations/destinations/axeptio/db-config.json +++ b/src/configurations/destinations/axeptio/db-config.json @@ -2,7 +2,6 @@ "name": "AXEPTIO", "displayName": "Axeptio", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/azure_blob/db-config.json b/src/configurations/destinations/azure_blob/db-config.json index 676e000a0..b0de46516 100644 --- a/src/configurations/destinations/azure_blob/db-config.json +++ b/src/configurations/destinations/azure_blob/db-config.json @@ -2,7 +2,6 @@ "name": "AZURE_BLOB", "displayName": "Azure Blob Storage", "config": { - "transformAt": "none", "transformAtV1": "none", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], @@ -20,7 +19,6 @@ "cordova", "shopify" ], - "supportedConnectionModes": {}, "destConfig": { "defaultConfig": [ "containerName", diff --git a/src/configurations/destinations/azure_datalake/db-config.json b/src/configurations/destinations/azure_datalake/db-config.json index 9129de67f..0f10358ee 100644 --- a/src/configurations/destinations/azure_datalake/db-config.json +++ b/src/configurations/destinations/azure_datalake/db-config.json @@ -3,7 +3,6 @@ "displayName": "Azure Datalake", "category": "warehouse", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], @@ -21,7 +20,6 @@ "cordova", "shopify" ], - "supportedConnectionModes": {}, "destConfig": { "defaultConfig": [ "containerName", diff --git a/src/configurations/destinations/azure_event_hub/db-config.json b/src/configurations/destinations/azure_event_hub/db-config.json index 99254ca50..d8c569a8d 100644 --- a/src/configurations/destinations/azure_event_hub/db-config.json +++ b/src/configurations/destinations/azure_event_hub/db-config.json @@ -2,7 +2,6 @@ "name": "AZURE_EVENT_HUB", "displayName": "Azure Event Hubs", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/azure_synapse/db-config.json b/src/configurations/destinations/azure_synapse/db-config.json index 4bcc0f054..afbe3da1c 100644 --- a/src/configurations/destinations/azure_synapse/db-config.json +++ b/src/configurations/destinations/azure_synapse/db-config.json @@ -3,7 +3,6 @@ "displayName": "Azure Synapse", "category": "warehouse", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], @@ -21,7 +20,6 @@ "cordova", "shopify" ], - "supportedConnectionModes": {}, "destConfig": { "defaultConfig": [ "host", diff --git a/src/configurations/destinations/bingads/db-config.json b/src/configurations/destinations/bingads/db-config.json index 1277c6bc1..9828174e3 100644 --- a/src/configurations/destinations/bingads/db-config.json +++ b/src/configurations/destinations/bingads/db-config.json @@ -2,7 +2,6 @@ "name": "BINGADS", "displayName": "Bing Ads", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": false, "includeKeys": [ diff --git a/src/configurations/destinations/bingads_audience/db-config.json b/src/configurations/destinations/bingads_audience/db-config.json index 5403b16d4..d20abcf19 100644 --- a/src/configurations/destinations/bingads_audience/db-config.json +++ b/src/configurations/destinations/bingads_audience/db-config.json @@ -7,7 +7,6 @@ "auth": { "type": "OAuth" }, - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/blueshift/db-config.json b/src/configurations/destinations/blueshift/db-config.json index d980063f1..6c3e9f041 100644 --- a/src/configurations/destinations/blueshift/db-config.json +++ b/src/configurations/destinations/blueshift/db-config.json @@ -2,7 +2,6 @@ "name": "BLUESHIFT", "displayName": "Blueshift", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/bq/db-config.json b/src/configurations/destinations/bq/db-config.json index 9f3ca49df..c24401bb6 100644 --- a/src/configurations/destinations/bq/db-config.json +++ b/src/configurations/destinations/bq/db-config.json @@ -3,7 +3,6 @@ "displayName": "BigQuery", "category": "warehouse", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], @@ -21,7 +20,6 @@ "cordova", "shopify" ], - "supportedConnectionModes": {}, "destConfig": { "defaultConfig": [ "project", diff --git a/src/configurations/destinations/bqstream/db-config.json b/src/configurations/destinations/bqstream/db-config.json index 515619975..291bb62e3 100644 --- a/src/configurations/destinations/bqstream/db-config.json +++ b/src/configurations/destinations/bqstream/db-config.json @@ -2,7 +2,6 @@ "name": "BQSTREAM", "displayName": "BigQuery Stream", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/branch/db-config.json b/src/configurations/destinations/branch/db-config.json index 0f1ee7041..b5c71f200 100644 --- a/src/configurations/destinations/branch/db-config.json +++ b/src/configurations/destinations/branch/db-config.json @@ -2,7 +2,6 @@ "name": "BRANCH", "displayName": "Branch Metrics", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/braze/db-config.json b/src/configurations/destinations/braze/db-config.json index 75888b40d..d5a674a4a 100644 --- a/src/configurations/destinations/braze/db-config.json +++ b/src/configurations/destinations/braze/db-config.json @@ -4,7 +4,6 @@ "config": { "isAudienceSupported": true, "supportsVisualMapper": true, - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": [ @@ -61,11 +60,7 @@ }, "hybridModeCloudEventsFilter": { "web": { - "messageType": [ - "identify", - "track", - "page" - ] + "messageType": ["identify", "track", "page"] } }, "destConfig": { @@ -86,7 +81,13 @@ "ios": ["useNativeSDK", "connectionMode"], "reactnative": ["useNativeSDK", "connectionMode"], "flutter": ["useNativeSDK", "connectionMode"], - "web": ["useNativeSDK", "enableBrazeLogging", "connectionMode", "enablePushNotification", "allowUserSuppliedJavascript"] + "web": [ + "useNativeSDK", + "enableBrazeLogging", + "connectionMode", + "enablePushNotification", + "allowUserSuppliedJavascript" + ] }, "secretKeys": ["restApiKey"] } diff --git a/src/configurations/destinations/braze/schema.json b/src/configurations/destinations/braze/schema.json index 7d34ef7d7..29273413a 100644 --- a/src/configurations/destinations/braze/schema.json +++ b/src/configurations/destinations/braze/schema.json @@ -95,8 +95,14 @@ "flutter": { "type": "string", "enum": ["cloud", "device"] } } }, - "enablePushNotification": { "type": "object", "properties": { "web": { "type": "boolean" } } }, - "allowUserSuppliedJavascript": { "type": "object", "properties": { "web": { "type": "boolean" } } } + "enablePushNotification": { + "type": "object", + "properties": { "web": { "type": "boolean" } } + }, + "allowUserSuppliedJavascript": { + "type": "object", + "properties": { "web": { "type": "boolean" } } + } } } } diff --git a/src/configurations/destinations/bugsnag/db-config.json b/src/configurations/destinations/bugsnag/db-config.json index d51799853..34766951b 100644 --- a/src/configurations/destinations/bugsnag/db-config.json +++ b/src/configurations/destinations/bugsnag/db-config.json @@ -2,7 +2,6 @@ "name": "BUGSNAG", "displayName": "Bugsnag", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/campaign_manager/db-config.json b/src/configurations/destinations/campaign_manager/db-config.json index 4595c4e7f..80c414292 100644 --- a/src/configurations/destinations/campaign_manager/db-config.json +++ b/src/configurations/destinations/campaign_manager/db-config.json @@ -8,7 +8,6 @@ "role": "campaign_manager", "rudderScopes": ["delivery"] }, - "transformAt": "router", "transformAtV1": "router", "includeKeys": ["oneTrustCookieCategories"], "excludeKeys": [], diff --git a/src/configurations/destinations/candu/db-config.json b/src/configurations/destinations/candu/db-config.json index 93840edf4..01c6b54c0 100644 --- a/src/configurations/destinations/candu/db-config.json +++ b/src/configurations/destinations/candu/db-config.json @@ -2,7 +2,6 @@ "name": "CANDU", "displayName": "Candu", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["apiKey", "oneTrustCookieCategories"], diff --git a/src/configurations/destinations/canny/db-config.json b/src/configurations/destinations/canny/db-config.json index 3463322c9..6be607714 100644 --- a/src/configurations/destinations/canny/db-config.json +++ b/src/configurations/destinations/canny/db-config.json @@ -2,7 +2,6 @@ "name": "CANNY", "displayName": "Canny", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["apiKey", "eventsToEvents", "oneTrustCookieCategories"], diff --git a/src/configurations/destinations/chartbeat/db-config.json b/src/configurations/destinations/chartbeat/db-config.json index fafd90e38..889b27131 100644 --- a/src/configurations/destinations/chartbeat/db-config.json +++ b/src/configurations/destinations/chartbeat/db-config.json @@ -2,7 +2,6 @@ "name": "CHARTBEAT", "displayName": "Chartbeat", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/clevertap/db-config.json b/src/configurations/destinations/clevertap/db-config.json index 1933e9f77..75b407504 100644 --- a/src/configurations/destinations/clevertap/db-config.json +++ b/src/configurations/destinations/clevertap/db-config.json @@ -2,7 +2,6 @@ "name": "CLEVERTAP", "displayName": "CleverTap", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/clickhouse/db-config.json b/src/configurations/destinations/clickhouse/db-config.json index d879db070..6ae329647 100644 --- a/src/configurations/destinations/clickhouse/db-config.json +++ b/src/configurations/destinations/clickhouse/db-config.json @@ -3,7 +3,6 @@ "displayName": "ClickHouse", "category": "warehouse", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "excludeKeys": [], @@ -21,7 +20,6 @@ "cordova", "shopify" ], - "supportedConnectionModes": {}, "destConfig": { "defaultConfig": [ "host", diff --git a/src/configurations/destinations/clickup/db-config.json b/src/configurations/destinations/clickup/db-config.json index 8f8436af3..10f3e9568 100644 --- a/src/configurations/destinations/clickup/db-config.json +++ b/src/configurations/destinations/clickup/db-config.json @@ -2,7 +2,6 @@ "name": "CLICKUP", "displayName": "ClickUp", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/comscore/db-config.json b/src/configurations/destinations/comscore/db-config.json index 76783c726..15e560769 100644 --- a/src/configurations/destinations/comscore/db-config.json +++ b/src/configurations/destinations/comscore/db-config.json @@ -2,7 +2,6 @@ "name": "COMSCORE", "displayName": "Comscore", "config": { - "transformAt": "processor", "transformAtV1": "processor", "includeKeys": [ "publisherId", @@ -15,8 +14,8 @@ "eventFilteringOption", "oneTrustCookieCategories" ], - "excludeKeys": [ ], - "supportedSourceTypes": [ "android", "ios" ], + "excludeKeys": [], + "supportedSourceTypes": ["android", "ios"], "destConfig": { "defaultConfig": [ "publisherId", @@ -29,9 +28,9 @@ "eventFilteringOption", "oneTrustCookieCategories" ], - "android": [ "useNativeSDK" ], - "ios": [ "useNativeSDK" ] + "android": ["useNativeSDK"], + "ios": ["useNativeSDK"] }, - "secretKeys": [ "publisherId" ] + "secretKeys": ["publisherId"] } } diff --git a/src/configurations/destinations/comscore/schema.json b/src/configurations/destinations/comscore/schema.json index b520be7d8..64a668270 100644 --- a/src/configurations/destinations/comscore/schema.json +++ b/src/configurations/destinations/comscore/schema.json @@ -1,9 +1,7 @@ { "configSchema": { "$schema": "http://json-schema.org/draft-07/schema#", - "required": [ - "publisherId" - ], + "required": ["publisherId"], "type": "object", "properties": { "publisherId": { @@ -34,11 +32,7 @@ }, "eventFilteringOption": { "type": "string", - "enum": [ - "disable", - "whitelistedEvents", - "blacklistedEvents" - ], + "enum": ["disable", "whitelistedEvents", "blacklistedEvents"], "default": "disable" }, "whitelistedEvents": { diff --git a/src/configurations/destinations/confluent_cloud/db-config.json b/src/configurations/destinations/confluent_cloud/db-config.json index e9eb8686b..7d53c8040 100644 --- a/src/configurations/destinations/confluent_cloud/db-config.json +++ b/src/configurations/destinations/confluent_cloud/db-config.json @@ -2,7 +2,6 @@ "name": "CONFLUENT_CLOUD", "displayName": "Confluent Cloud", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/convertflow/db-config.json b/src/configurations/destinations/convertflow/db-config.json index f926bb905..2088420d3 100644 --- a/src/configurations/destinations/convertflow/db-config.json +++ b/src/configurations/destinations/convertflow/db-config.json @@ -2,7 +2,6 @@ "name": "CONVERTFLOW", "displayName": "Convertflow", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/courier/db-config.json b/src/configurations/destinations/courier/db-config.json index 93c1e1bcf..3f6b00630 100644 --- a/src/configurations/destinations/courier/db-config.json +++ b/src/configurations/destinations/courier/db-config.json @@ -2,7 +2,6 @@ "name": "COURIER", "displayName": "Courier", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/criteo/db-config.json b/src/configurations/destinations/criteo/db-config.json index bf1d56102..3ce355a87 100644 --- a/src/configurations/destinations/criteo/db-config.json +++ b/src/configurations/destinations/criteo/db-config.json @@ -2,7 +2,6 @@ "name": "CRITEO", "displayName": "Criteo", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/criteo_audience/db-config.json b/src/configurations/destinations/criteo_audience/db-config.json index 70dedab17..749d21672 100644 --- a/src/configurations/destinations/criteo_audience/db-config.json +++ b/src/configurations/destinations/criteo_audience/db-config.json @@ -9,7 +9,6 @@ "auth": { "type": "OAuth" }, - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/custify/db-config.json b/src/configurations/destinations/custify/db-config.json index 3668b2a52..f82d60825 100644 --- a/src/configurations/destinations/custify/db-config.json +++ b/src/configurations/destinations/custify/db-config.json @@ -2,7 +2,6 @@ "name": "CUSTIFY", "displayName": "Custify", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["apiKey", "sendAnonymousId", "oneTrustCookieCategories"], diff --git a/src/configurations/destinations/customerio/db-config.json b/src/configurations/destinations/customerio/db-config.json index 135369b42..5a049a60e 100644 --- a/src/configurations/destinations/customerio/db-config.json +++ b/src/configurations/destinations/customerio/db-config.json @@ -4,7 +4,6 @@ "config": { "supportsVisualMapper": true, "isAudienceSupported": true, - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/dcm_floodlight/db-config.json b/src/configurations/destinations/dcm_floodlight/db-config.json index 7fcbd5875..6c62985d8 100644 --- a/src/configurations/destinations/dcm_floodlight/db-config.json +++ b/src/configurations/destinations/dcm_floodlight/db-config.json @@ -2,7 +2,6 @@ "name": "DCM_FLOODLIGHT", "displayName": "DCM Floodlight", "config": { - "transformAt": "processor", "transformAtV1": "processor", "cdkEnabled": true, "saveDestinationResponse": true, diff --git a/src/configurations/destinations/dcm_floodlight/schema.json b/src/configurations/destinations/dcm_floodlight/schema.json index f9a0b5fc0..de08dbe6a 100644 --- a/src/configurations/destinations/dcm_floodlight/schema.json +++ b/src/configurations/destinations/dcm_floodlight/schema.json @@ -2,9 +2,7 @@ "configSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "type": "object", - "required": [ - "advertiserId" - ], + "required": ["advertiserId"], "properties": { "advertiserId": { "type": "string", @@ -71,10 +69,7 @@ "properties": { "web": { "type": "string", - "enum": [ - "globalSiteTag", - "iframeTag" - ], + "enum": ["globalSiteTag", "iframeTag"], "default": "globalSiteTag" } } @@ -114,11 +109,7 @@ }, "eventFilteringOption": { "type": "string", - "enum": [ - "disable", - "whitelistedEvents", - "blacklistedEvents" - ], + "enum": ["disable", "whitelistedEvents", "blacklistedEvents"], "default": "disable" }, "whitelistedEvents": { @@ -159,4 +150,4 @@ } } } -} \ No newline at end of file +} diff --git a/src/configurations/destinations/dcm_floodlight/ui-config.json b/src/configurations/destinations/dcm_floodlight/ui-config.json index 28a5b1c33..1caeb5377 100644 --- a/src/configurations/destinations/dcm_floodlight/ui-config.json +++ b/src/configurations/destinations/dcm_floodlight/ui-config.json @@ -217,4 +217,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/src/configurations/destinations/delighted/db-config.json b/src/configurations/destinations/delighted/db-config.json index 9620cafed..e82f80bab 100644 --- a/src/configurations/destinations/delighted/db-config.json +++ b/src/configurations/destinations/delighted/db-config.json @@ -2,7 +2,6 @@ "name": "DELIGHTED", "displayName": "Delighted", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/deltalake/db-config.json b/src/configurations/destinations/deltalake/db-config.json index 845293dca..a67fcb49a 100644 --- a/src/configurations/destinations/deltalake/db-config.json +++ b/src/configurations/destinations/deltalake/db-config.json @@ -3,7 +3,6 @@ "displayName": "Databricks (Delta Lake)", "category": "warehouse", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], @@ -21,7 +20,6 @@ "cordova", "shopify" ], - "supportedConnectionModes": {}, "destConfig": { "defaultConfig": [ "host", diff --git a/src/configurations/destinations/digital_ocean_spaces/db-config.json b/src/configurations/destinations/digital_ocean_spaces/db-config.json index d89f74c13..a0c20a751 100644 --- a/src/configurations/destinations/digital_ocean_spaces/db-config.json +++ b/src/configurations/destinations/digital_ocean_spaces/db-config.json @@ -2,7 +2,6 @@ "name": "DIGITAL_OCEAN_SPACES", "displayName": "DigitalOcean Spaces", "config": { - "transformAt": "none", "transformAtV1": "none", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], @@ -20,7 +19,6 @@ "flutter", "shopify" ], - "supportedConnectionModes": {}, "destConfig": { "defaultConfig": [ "endPoint", diff --git a/src/configurations/destinations/discord/db-config.json b/src/configurations/destinations/discord/db-config.json index 4087168f9..4a6f1010d 100644 --- a/src/configurations/destinations/discord/db-config.json +++ b/src/configurations/destinations/discord/db-config.json @@ -2,7 +2,6 @@ "name": "DISCORD", "displayName": "Discord", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/drip/db-config.json b/src/configurations/destinations/drip/db-config.json index 2ee7171de..79e1b0126 100644 --- a/src/configurations/destinations/drip/db-config.json +++ b/src/configurations/destinations/drip/db-config.json @@ -2,7 +2,6 @@ "name": "DRIP", "displayName": "Drip", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/dynamic_yield/db-config.json b/src/configurations/destinations/dynamic_yield/db-config.json index a9192c080..e759187e0 100644 --- a/src/configurations/destinations/dynamic_yield/db-config.json +++ b/src/configurations/destinations/dynamic_yield/db-config.json @@ -3,7 +3,6 @@ "displayName": "Dynamic Yield", "config": { "cdkV2Enabled": true, - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/eloqua/db-config.json b/src/configurations/destinations/eloqua/db-config.json index 610aa3970..76f16bd72 100644 --- a/src/configurations/destinations/eloqua/db-config.json +++ b/src/configurations/destinations/eloqua/db-config.json @@ -5,13 +5,9 @@ "cdkV2Enabled": true, "supportsVisualMapper": true, "syncBehaviours": ["upsert"], - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, - "includeKeys": [], - "excludeKeys": [], "supportedSourceTypes": ["cloud", "warehouse"], - "supportedConnectionModes": {}, "supportedMessageTypes": { "cloud": ["identify", "track"] }, diff --git a/src/configurations/destinations/engage/db-config.json b/src/configurations/destinations/engage/db-config.json index c56017793..02e955079 100644 --- a/src/configurations/destinations/engage/db-config.json +++ b/src/configurations/destinations/engage/db-config.json @@ -2,7 +2,6 @@ "name": "ENGAGE", "displayName": "Engage", "config": { - "transformAt": "roouter", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/eventbridge/db-config.json b/src/configurations/destinations/eventbridge/db-config.json index 49346637c..7d33b1eda 100644 --- a/src/configurations/destinations/eventbridge/db-config.json +++ b/src/configurations/destinations/eventbridge/db-config.json @@ -2,7 +2,6 @@ "name": "EVENTBRIDGE", "displayName": "AWS EventBridge", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/facebook_conversions/db-config.json b/src/configurations/destinations/facebook_conversions/db-config.json index 4056eecd5..35c2fd1d8 100644 --- a/src/configurations/destinations/facebook_conversions/db-config.json +++ b/src/configurations/destinations/facebook_conversions/db-config.json @@ -2,11 +2,8 @@ "name": "FACEBOOK_CONVERSIONS", "displayName": "Facebook Conversions", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, - "includeKeys": [], - "excludeKeys": [], "supportedSourceTypes": [ "android", "ios", diff --git a/src/configurations/destinations/facebook_offline_conversions/db-config.json b/src/configurations/destinations/facebook_offline_conversions/db-config.json index 2e22f5ca4..6e8c497c1 100644 --- a/src/configurations/destinations/facebook_offline_conversions/db-config.json +++ b/src/configurations/destinations/facebook_offline_conversions/db-config.json @@ -2,7 +2,6 @@ "name": "FACEBOOK_OFFLINE_CONVERSIONS", "displayName": "Facebook Offline Conversions", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/facebook_pixel/db-config.json b/src/configurations/destinations/facebook_pixel/db-config.json index 08372ea5d..827062858 100644 --- a/src/configurations/destinations/facebook_pixel/db-config.json +++ b/src/configurations/destinations/facebook_pixel/db-config.json @@ -2,7 +2,6 @@ "name": "FACEBOOK_PIXEL", "displayName": "Facebook Pixel", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/factorsai/db-config.json b/src/configurations/destinations/factorsai/db-config.json index 425269274..ba58294a6 100644 --- a/src/configurations/destinations/factorsai/db-config.json +++ b/src/configurations/destinations/factorsai/db-config.json @@ -2,7 +2,6 @@ "name": "FACTORSAI", "displayName": "Factors AI", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/fb/db-config.json b/src/configurations/destinations/fb/db-config.json index 69e5fcc1e..539d25cae 100644 --- a/src/configurations/destinations/fb/db-config.json +++ b/src/configurations/destinations/fb/db-config.json @@ -2,7 +2,6 @@ "name": "FB", "displayName": "Facebook App Events", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ @@ -31,8 +30,8 @@ "supportedMessageTypes": { "cloud": ["page", "screen", "track"], "device": { - "android": ["idetify", "page", "screen", "track"], - "ios": ["idetify", "page", "screen", "track"] + "android": ["identify", "page", "screen", "track"], + "ios": ["identify", "page", "screen", "track"] } }, "supportedConnectionModes": { diff --git a/src/configurations/destinations/fb_custom_audience/db-config.json b/src/configurations/destinations/fb_custom_audience/db-config.json index 87898cace..ca96134eb 100644 --- a/src/configurations/destinations/fb_custom_audience/db-config.json +++ b/src/configurations/destinations/fb_custom_audience/db-config.json @@ -6,7 +6,6 @@ "disableJsonMapper": true, "supportsVisualMapper": true, "syncBehaviours": ["mirror"], - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/firebase/db-config.json b/src/configurations/destinations/firebase/db-config.json index 9c4f3e013..bd2f58612 100644 --- a/src/configurations/destinations/firebase/db-config.json +++ b/src/configurations/destinations/firebase/db-config.json @@ -2,7 +2,6 @@ "name": "FIREBASE", "displayName": "Firebase", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": false, "includeKeys": [ diff --git a/src/configurations/destinations/firehose/db-config.json b/src/configurations/destinations/firehose/db-config.json index 007075233..7d5e386c2 100644 --- a/src/configurations/destinations/firehose/db-config.json +++ b/src/configurations/destinations/firehose/db-config.json @@ -2,7 +2,6 @@ "name": "FIREHOSE", "displayName": "Amazon Kinesis Firehose", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/freshmarketer/db-config.json b/src/configurations/destinations/freshmarketer/db-config.json index b0872313d..1d3b48ce2 100644 --- a/src/configurations/destinations/freshmarketer/db-config.json +++ b/src/configurations/destinations/freshmarketer/db-config.json @@ -2,7 +2,6 @@ "name": "FRESHMARKETER", "displayName": "Freshmarketer", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["apiKey", "domain", "oneTrustCookieCategories"], diff --git a/src/configurations/destinations/freshsales/db-config.json b/src/configurations/destinations/freshsales/db-config.json index 8e5d71eb0..a23a997e9 100644 --- a/src/configurations/destinations/freshsales/db-config.json +++ b/src/configurations/destinations/freshsales/db-config.json @@ -2,7 +2,6 @@ "name": "FRESHSALES", "displayName": "Freshsales", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["apiKey", "domain", "oneTrustCookieCategories"], diff --git a/src/configurations/destinations/fullstory/db-config.json b/src/configurations/destinations/fullstory/db-config.json index 0280a63f6..7ae9dad0f 100644 --- a/src/configurations/destinations/fullstory/db-config.json +++ b/src/configurations/destinations/fullstory/db-config.json @@ -3,7 +3,6 @@ "displayName": "Fullstory", "config": { "cdkV2Enabled": true, - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ @@ -44,7 +43,8 @@ "cloud": ["track", "identify"], "device": { "web": ["identify", "track", "page"], - "mobile": ["identify", "track", "page", "screen"] + "android": ["identify", "track", "page", "screen"], + "ios": ["identify", "track", "page", "screen"] } }, "destConfig": { diff --git a/src/configurations/destinations/ga/db-config.json b/src/configurations/destinations/ga/db-config.json index 70db5ab36..5f464802c 100644 --- a/src/configurations/destinations/ga/db-config.json +++ b/src/configurations/destinations/ga/db-config.json @@ -10,7 +10,6 @@ }, "supportsVisualMapper": true, "isAudienceSupported": false, - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": false, "includeKeys": [ diff --git a/src/configurations/destinations/ga360/db-config.json b/src/configurations/destinations/ga360/db-config.json index 1b4b82306..14468d949 100644 --- a/src/configurations/destinations/ga360/db-config.json +++ b/src/configurations/destinations/ga360/db-config.json @@ -2,7 +2,6 @@ "name": "GA360", "displayName": "Google Analytics 360", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": false, "includeKeys": [ diff --git a/src/configurations/destinations/ga4/db-config.json b/src/configurations/destinations/ga4/db-config.json index 4cc7783b0..1a737bd29 100644 --- a/src/configurations/destinations/ga4/db-config.json +++ b/src/configurations/destinations/ga4/db-config.json @@ -2,7 +2,6 @@ "name": "GA4", "displayName": "Google Analytics 4 (GA4)", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": false, "includeKeys": [ @@ -81,14 +80,8 @@ "extendPageViewParams", "overrideClientAndSessionId" ], - "android": [ - "useNativeSDK", - "connectionMode" - ], - "ios": [ - "useNativeSDK", - "connectionMode" - ] + "android": ["useNativeSDK", "connectionMode"], + "ios": ["useNativeSDK", "connectionMode"] }, "secretKeys": ["apiSecret"] }, diff --git a/src/configurations/destinations/gainsight/db-config.json b/src/configurations/destinations/gainsight/db-config.json index b1227f92c..5513d529b 100644 --- a/src/configurations/destinations/gainsight/db-config.json +++ b/src/configurations/destinations/gainsight/db-config.json @@ -2,7 +2,6 @@ "name": "GAINSIGHT", "displayName": "Gainsight", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/gainsight_px/db-config.json b/src/configurations/destinations/gainsight_px/db-config.json index 4f6a3e107..e5790b188 100644 --- a/src/configurations/destinations/gainsight_px/db-config.json +++ b/src/configurations/destinations/gainsight_px/db-config.json @@ -2,7 +2,6 @@ "name": "GAINSIGHT_PX", "displayName": "Gainsight PX", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "throttlingCost": { diff --git a/src/configurations/destinations/gcs/db-config.json b/src/configurations/destinations/gcs/db-config.json index 16a993d0e..6808c3e14 100644 --- a/src/configurations/destinations/gcs/db-config.json +++ b/src/configurations/destinations/gcs/db-config.json @@ -2,7 +2,6 @@ "name": "GCS", "displayName": "Google Cloud Storage", "config": { - "transformAt": "none", "transformAtV1": "none", "saveDestinationResponse": false, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/gcs_datalake/db-config.json b/src/configurations/destinations/gcs_datalake/db-config.json index 134cb9482..83f36d284 100644 --- a/src/configurations/destinations/gcs_datalake/db-config.json +++ b/src/configurations/destinations/gcs_datalake/db-config.json @@ -3,7 +3,6 @@ "displayName": "Google Cloud Storage Datalake", "category": "warehouse", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/gladly/db-config.json b/src/configurations/destinations/gladly/db-config.json index 649abf2d5..caf5dc0a3 100644 --- a/src/configurations/destinations/gladly/db-config.json +++ b/src/configurations/destinations/gladly/db-config.json @@ -3,7 +3,6 @@ "displayName": "Gladly", "config": { "cdkV2Enabled": true, - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/gladly/ui-config.json b/src/configurations/destinations/gladly/ui-config.json index 69a2e9db3..6cc687a33 100644 --- a/src/configurations/destinations/gladly/ui-config.json +++ b/src/configurations/destinations/gladly/ui-config.json @@ -103,9 +103,9 @@ } ], "sdkTemplate": { - "title": "Web SDK settings", - "note": "not visible in the ui", - "fields": [] + "title": "Web SDK settings", + "note": "not visible in the ui", + "fields": [] } } } diff --git a/src/configurations/destinations/google_adwords_enhanced_conversions/db-config.json b/src/configurations/destinations/google_adwords_enhanced_conversions/db-config.json index d82bcbe53..e82f5d79c 100644 --- a/src/configurations/destinations/google_adwords_enhanced_conversions/db-config.json +++ b/src/configurations/destinations/google_adwords_enhanced_conversions/db-config.json @@ -8,7 +8,6 @@ "role": "google_adwords_enhanced_conversions_v1", "rudderScopes": ["delivery"] }, - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/google_adwords_offline_conversions/db-config.json b/src/configurations/destinations/google_adwords_offline_conversions/db-config.json index ded84e850..3663af881 100644 --- a/src/configurations/destinations/google_adwords_offline_conversions/db-config.json +++ b/src/configurations/destinations/google_adwords_offline_conversions/db-config.json @@ -8,7 +8,6 @@ "role": "google_adwords_offline_conversions", "rudderScopes": ["delivery"] }, - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/google_adwords_remarketing_lists/db-config.json b/src/configurations/destinations/google_adwords_remarketing_lists/db-config.json index 54a6572ab..d542e29e1 100644 --- a/src/configurations/destinations/google_adwords_remarketing_lists/db-config.json +++ b/src/configurations/destinations/google_adwords_remarketing_lists/db-config.json @@ -8,7 +8,6 @@ "role": "google_adwords_remarketing_lists_v1", "rudderScopes": ["delivery"] }, - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/google_cloud_function/db-config.json b/src/configurations/destinations/google_cloud_function/db-config.json index c93b41ba9..ddf6c62d0 100644 --- a/src/configurations/destinations/google_cloud_function/db-config.json +++ b/src/configurations/destinations/google_cloud_function/db-config.json @@ -2,11 +2,8 @@ "name": "GOOGLE_CLOUD_FUNCTION", "displayName": "Google Cloud Function", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, - "includeKeys": [], - "excludeKeys": [], "supportedSourceTypes": [ "amp", "android", diff --git a/src/configurations/destinations/google_optimize/db-config.json b/src/configurations/destinations/google_optimize/db-config.json index ffe52e190..ca57bd6b5 100644 --- a/src/configurations/destinations/google_optimize/db-config.json +++ b/src/configurations/destinations/google_optimize/db-config.json @@ -2,7 +2,6 @@ "name": "GOOGLE_OPTIMIZE", "displayName": "Google Optimize", "config": { - "transformAt": "processor", "saveDestinationResponse": true, "includeKeys": [ "ga", diff --git a/src/configurations/destinations/googleads/db-config.json b/src/configurations/destinations/googleads/db-config.json index fede14856..d57465495 100644 --- a/src/configurations/destinations/googleads/db-config.json +++ b/src/configurations/destinations/googleads/db-config.json @@ -2,7 +2,6 @@ "name": "GOOGLEADS", "displayName": "Google Ads", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": false, "includeKeys": [ diff --git a/src/configurations/destinations/googleads/schema.json b/src/configurations/destinations/googleads/schema.json index bb0613903..dda5cdb0e 100644 --- a/src/configurations/destinations/googleads/schema.json +++ b/src/configurations/destinations/googleads/schema.json @@ -139,7 +139,7 @@ "properties": { "trackConversions": { "const": true }, "enableConversionEventsFiltering": { "const": true } - }, + }, "required": ["trackConversions", "enableConversionEventsFiltering"] }, "then": { @@ -177,7 +177,7 @@ "properties": { "trackDynamicRemarketing": { "const": true }, "enableDynamicRemarketingEventsFiltering": { "const": true } - }, + }, "required": ["trackDynamicRemarketing", "enableDynamicRemarketingEventsFiltering"] }, "then": { diff --git a/src/configurations/destinations/googlepubsub/db-config.json b/src/configurations/destinations/googlepubsub/db-config.json index 3d65eb154..689c46df0 100644 --- a/src/configurations/destinations/googlepubsub/db-config.json +++ b/src/configurations/destinations/googlepubsub/db-config.json @@ -2,7 +2,6 @@ "name": "GOOGLEPUBSUB", "displayName": "Google Cloud Pub/Sub", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/googlesheets/db-config.json b/src/configurations/destinations/googlesheets/db-config.json index 0423b3989..832d300f1 100644 --- a/src/configurations/destinations/googlesheets/db-config.json +++ b/src/configurations/destinations/googlesheets/db-config.json @@ -2,7 +2,6 @@ "name": "GOOGLESHEETS", "displayName": "Google Sheets", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/gtm/db-config.json b/src/configurations/destinations/gtm/db-config.json index 10cbb4d90..899eee89a 100644 --- a/src/configurations/destinations/gtm/db-config.json +++ b/src/configurations/destinations/gtm/db-config.json @@ -2,7 +2,6 @@ "name": "GTM", "displayName": "Google Tag Manager", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": false, "includeKeys": [ diff --git a/src/configurations/destinations/heap/db-config.json b/src/configurations/destinations/heap/db-config.json index 49a2ad644..f4480071c 100644 --- a/src/configurations/destinations/heap/db-config.json +++ b/src/configurations/destinations/heap/db-config.json @@ -2,7 +2,6 @@ "name": "HEAP", "displayName": "Heap.io", "config": { - "transformAt": "processor", "transformAtV1": "processor", "cdkEnabled": true, "saveDestinationResponse": true, diff --git a/src/configurations/destinations/hotjar/db-config.json b/src/configurations/destinations/hotjar/db-config.json index af96e2c40..ecea5199a 100644 --- a/src/configurations/destinations/hotjar/db-config.json +++ b/src/configurations/destinations/hotjar/db-config.json @@ -2,7 +2,6 @@ "name": "HOTJAR", "displayName": "Hotjar", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/hs/db-config.json b/src/configurations/destinations/hs/db-config.json index ac6da6816..0379fd7de 100644 --- a/src/configurations/destinations/hs/db-config.json +++ b/src/configurations/destinations/hs/db-config.json @@ -4,7 +4,6 @@ "config": { "isAudienceSupported": true, "supportsVisualMapper": true, - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/impact/db-config.json b/src/configurations/destinations/impact/db-config.json index 8fa28908a..d80474c52 100644 --- a/src/configurations/destinations/impact/db-config.json +++ b/src/configurations/destinations/impact/db-config.json @@ -2,7 +2,6 @@ "name": "IMPACT", "displayName": "impact.com", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], @@ -50,8 +49,7 @@ "actionEventNames", "installEventNames", "oneTrustCookieCategories" - ], - "web": [] + ] }, "secretKeys": ["apiKey"] } diff --git a/src/configurations/destinations/indicative/db-config.json b/src/configurations/destinations/indicative/db-config.json index 641f881f0..2a6f7bfea 100644 --- a/src/configurations/destinations/indicative/db-config.json +++ b/src/configurations/destinations/indicative/db-config.json @@ -2,7 +2,6 @@ "name": "INDICATIVE", "displayName": "Indicative", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/intercom/db-config.json b/src/configurations/destinations/intercom/db-config.json index 3db764db2..d618dcc21 100644 --- a/src/configurations/destinations/intercom/db-config.json +++ b/src/configurations/destinations/intercom/db-config.json @@ -3,7 +3,6 @@ "displayName": "Intercom", "config": { "supportsVisualMapper": true, - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "isAudienceSupported": true, diff --git a/src/configurations/destinations/iterable/db-config.json b/src/configurations/destinations/iterable/db-config.json index 4b0a3f8df..7ace136fd 100644 --- a/src/configurations/destinations/iterable/db-config.json +++ b/src/configurations/destinations/iterable/db-config.json @@ -4,7 +4,6 @@ "config": { "isAudienceSupported": true, "supportsVisualMapper": true, - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/iterable/schema.json b/src/configurations/destinations/iterable/schema.json index 476ef15bf..ce3c54bae 100644 --- a/src/configurations/destinations/iterable/schema.json +++ b/src/configurations/destinations/iterable/schema.json @@ -117,11 +117,7 @@ "properties": { "web": { "type": "string", - "enum": [ - "open-all-new-tab", - "open-all-same-tab", - "external-new-tab" - ], + "enum": ["open-all-new-tab", "open-all-same-tab", "external-new-tab"], "default": "open-all-new-tab" } } @@ -163,10 +159,7 @@ "properties": { "web": { "type": "string", - "enum": [ - "top-right", - "top-left" - ], + "enum": ["top-right", "top-left"], "default": "top-right" } } diff --git a/src/configurations/destinations/june/db-config.json b/src/configurations/destinations/june/db-config.json index 351cf748b..a08ef66c9 100644 --- a/src/configurations/destinations/june/db-config.json +++ b/src/configurations/destinations/june/db-config.json @@ -2,7 +2,6 @@ "name": "JUNE", "displayName": "JUNE", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/kafka/db-config.json b/src/configurations/destinations/kafka/db-config.json index f69f16b90..d712c0235 100644 --- a/src/configurations/destinations/kafka/db-config.json +++ b/src/configurations/destinations/kafka/db-config.json @@ -2,7 +2,6 @@ "name": "KAFKA", "displayName": "Apache Kafka", "config": { - "transformAt": "processor", "transformAtV1": "processor", "configFilters": ["caCertificate"], "saveDestinationResponse": true, diff --git a/src/configurations/destinations/keen/db-config.json b/src/configurations/destinations/keen/db-config.json index 45bd7ef24..22d19b035 100644 --- a/src/configurations/destinations/keen/db-config.json +++ b/src/configurations/destinations/keen/db-config.json @@ -2,7 +2,6 @@ "name": "KEEN", "displayName": "Keen", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/kinesis/db-config.json b/src/configurations/destinations/kinesis/db-config.json index bf2651b79..f31ea8609 100644 --- a/src/configurations/destinations/kinesis/db-config.json +++ b/src/configurations/destinations/kinesis/db-config.json @@ -2,7 +2,6 @@ "name": "KINESIS", "displayName": "Amazon Kinesis", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/kissmetrics/db-config.json b/src/configurations/destinations/kissmetrics/db-config.json index 8621a2d0a..1aa74c3f5 100644 --- a/src/configurations/destinations/kissmetrics/db-config.json +++ b/src/configurations/destinations/kissmetrics/db-config.json @@ -2,7 +2,6 @@ "name": "KISSMETRICS", "displayName": "Kiss Metrics", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/klaviyo/db-config.json b/src/configurations/destinations/klaviyo/db-config.json index f32d4c3cc..e35723df4 100644 --- a/src/configurations/destinations/klaviyo/db-config.json +++ b/src/configurations/destinations/klaviyo/db-config.json @@ -3,7 +3,6 @@ "displayName": "Klaviyo", "config": { "supportsVisualMapper": true, - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "isAudienceSupported": true, diff --git a/src/configurations/destinations/kochava/db-config.json b/src/configurations/destinations/kochava/db-config.json index 6870e11da..bc73827e6 100644 --- a/src/configurations/destinations/kochava/db-config.json +++ b/src/configurations/destinations/kochava/db-config.json @@ -2,7 +2,6 @@ "name": "KOCHAVA", "displayName": "Kochava", "config": { - "transformAt": "processor", "transformAtV1": "processor", "cdkEnabled": true, "saveDestinationResponse": true, diff --git a/src/configurations/destinations/kustomer/db-config.json b/src/configurations/destinations/kustomer/db-config.json index 73c33f272..3c90ee736 100644 --- a/src/configurations/destinations/kustomer/db-config.json +++ b/src/configurations/destinations/kustomer/db-config.json @@ -2,7 +2,6 @@ "name": "KUSTOMER", "displayName": "Kustomer", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/lambda/db-config.json b/src/configurations/destinations/lambda/db-config.json index 811198a65..ea1768a75 100644 --- a/src/configurations/destinations/lambda/db-config.json +++ b/src/configurations/destinations/lambda/db-config.json @@ -2,7 +2,6 @@ "name": "LAMBDA", "displayName": "AWS Lambda", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/launchdarkly_audience/db-config.json b/src/configurations/destinations/launchdarkly_audience/db-config.json index 582b47292..4ac17fc81 100644 --- a/src/configurations/destinations/launchdarkly_audience/db-config.json +++ b/src/configurations/destinations/launchdarkly_audience/db-config.json @@ -3,20 +3,16 @@ "displayName": "LaunchDarkly Segment", "config": { "cdkV2Enabled": true, - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "disableJsonMapper": true, "isAudienceSupported": true, "supportsVisualMapper": true, - "includeKeys": [], - "excludeKeys": [], "supportedSourceTypes": ["cloud", "warehouse"], "supportedMessageTypes": { "cloud": ["audiencelist"] }, "syncBehaviours": ["mirror"], - "supportedConnectionModes": {}, "destConfig": { "defaultConfig": [ "accessToken", diff --git a/src/configurations/destinations/leanplum/db-config.json b/src/configurations/destinations/leanplum/db-config.json index 61e5e6ce6..8c83f92fb 100644 --- a/src/configurations/destinations/leanplum/db-config.json +++ b/src/configurations/destinations/leanplum/db-config.json @@ -2,7 +2,6 @@ "name": "LEANPLUM", "displayName": "Leanplum", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/lemnisk/db-config.json b/src/configurations/destinations/lemnisk/db-config.json index ba3682ea6..16204f88f 100644 --- a/src/configurations/destinations/lemnisk/db-config.json +++ b/src/configurations/destinations/lemnisk/db-config.json @@ -2,7 +2,6 @@ "name": "LEMNISK", "displayName": "Lemnisk Marketing Automation", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/linkedin_insight_tag/db-config.json b/src/configurations/destinations/linkedin_insight_tag/db-config.json index 03feba1b5..262a4e0ee 100644 --- a/src/configurations/destinations/linkedin_insight_tag/db-config.json +++ b/src/configurations/destinations/linkedin_insight_tag/db-config.json @@ -2,7 +2,6 @@ "name": "LINKEDIN_INSIGHT_TAG", "displayName": "Linkedin Insight Tag", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/livechat/db-config.json b/src/configurations/destinations/livechat/db-config.json index 8aab750e0..0fcc99cfa 100644 --- a/src/configurations/destinations/livechat/db-config.json +++ b/src/configurations/destinations/livechat/db-config.json @@ -2,7 +2,6 @@ "name": "LIVECHAT", "displayName": "livechat", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/lotame/db-config.json b/src/configurations/destinations/lotame/db-config.json index 6370a1ba6..124b8f0a7 100644 --- a/src/configurations/destinations/lotame/db-config.json +++ b/src/configurations/destinations/lotame/db-config.json @@ -2,7 +2,6 @@ "name": "LOTAME", "displayName": "Lotame", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/lotame_mobile/db-config.json b/src/configurations/destinations/lotame_mobile/db-config.json index e643b438c..f1e45c997 100644 --- a/src/configurations/destinations/lotame_mobile/db-config.json +++ b/src/configurations/destinations/lotame_mobile/db-config.json @@ -2,7 +2,6 @@ "name": "LOTAME_MOBILE", "displayName": "Lotame Mobile", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ @@ -20,7 +19,7 @@ "android": ["device"], "ios": ["device"] }, - "supportedMessageTypes": { "device": { "mobile": [] } }, + "supportedMessageTypes": { "device": { "ios": [], "android": [] } }, "destConfig": { "defaultConfig": [ "bcpUrlSettingsPixel", diff --git a/src/configurations/destinations/lytics/db-config.json b/src/configurations/destinations/lytics/db-config.json index 1c9f89aa5..e081ed837 100644 --- a/src/configurations/destinations/lytics/db-config.json +++ b/src/configurations/destinations/lytics/db-config.json @@ -2,7 +2,6 @@ "name": "LYTICS", "displayName": "Lytics", "config": { - "transformAt": "processor", "transformAtV1": "processor", "cdkEnabled": true, "saveDestinationResponse": true, diff --git a/src/configurations/destinations/mailchimp/db-config.json b/src/configurations/destinations/mailchimp/db-config.json index d0b9c0080..4eefa4331 100644 --- a/src/configurations/destinations/mailchimp/db-config.json +++ b/src/configurations/destinations/mailchimp/db-config.json @@ -4,7 +4,6 @@ "config": { "isAudienceSupported": false, "supportsVisualMapper": true, - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/mailjet/db-config.json b/src/configurations/destinations/mailjet/db-config.json index b56d376c0..d56ab6a47 100644 --- a/src/configurations/destinations/mailjet/db-config.json +++ b/src/configurations/destinations/mailjet/db-config.json @@ -2,7 +2,6 @@ "name": "MAILJET", "displayName": "Mailjet", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/mailmodo/db-config.json b/src/configurations/destinations/mailmodo/db-config.json index 4def7b868..43a011fd7 100644 --- a/src/configurations/destinations/mailmodo/db-config.json +++ b/src/configurations/destinations/mailmodo/db-config.json @@ -2,7 +2,6 @@ "name": "MAILMODO", "displayName": "Mailmodo", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["apiKey", "listName", "oneTrustCookieCategories"], diff --git a/src/configurations/destinations/marketo/db-config.json b/src/configurations/destinations/marketo/db-config.json index acbfcca52..6d7d02008 100644 --- a/src/configurations/destinations/marketo/db-config.json +++ b/src/configurations/destinations/marketo/db-config.json @@ -4,7 +4,6 @@ "config": { "isAudienceSupported": true, "supportsVisualMapper": true, - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "throttlingCost": { diff --git a/src/configurations/destinations/marketo/schema.json b/src/configurations/destinations/marketo/schema.json index b8bc4e603..06801b265 100644 --- a/src/configurations/destinations/marketo/schema.json +++ b/src/configurations/destinations/marketo/schema.json @@ -1,11 +1,7 @@ { "configSchema": { "$schema": "http://json-schema.org/draft-07/schema#", - "required": [ - "accountId", - "clientId", - "clientSecret" - ], + "required": ["accountId", "clientId", "clientSecret"], "type": "object", "properties": { "accountId": { @@ -94,4 +90,4 @@ } } } -} \ No newline at end of file +} diff --git a/src/configurations/destinations/marketo_bulk_upload/db-config.json b/src/configurations/destinations/marketo_bulk_upload/db-config.json index 45058ee18..05de62130 100644 --- a/src/configurations/destinations/marketo_bulk_upload/db-config.json +++ b/src/configurations/destinations/marketo_bulk_upload/db-config.json @@ -2,7 +2,6 @@ "name": "MARKETO_BULK_UPLOAD", "displayName": "Marketo Lead Import", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/marketo_static_list/db-config.json b/src/configurations/destinations/marketo_static_list/db-config.json index d2521f740..580973634 100644 --- a/src/configurations/destinations/marketo_static_list/db-config.json +++ b/src/configurations/destinations/marketo_static_list/db-config.json @@ -2,7 +2,6 @@ "name": "MARKETO_STATIC_LIST", "displayName": "Marketo Static List", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "isAudienceSupported": true, diff --git a/src/configurations/destinations/matomo/db-config.json b/src/configurations/destinations/matomo/db-config.json index 2d251496b..f0443c52f 100644 --- a/src/configurations/destinations/matomo/db-config.json +++ b/src/configurations/destinations/matomo/db-config.json @@ -2,7 +2,6 @@ "name": "MATOMO", "displayName": "Matomo", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/mautic/db-config.json b/src/configurations/destinations/mautic/db-config.json index 144c8a861..e7b6c08df 100644 --- a/src/configurations/destinations/mautic/db-config.json +++ b/src/configurations/destinations/mautic/db-config.json @@ -2,7 +2,6 @@ "name": "MAUTIC", "displayName": "Mautic", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/microsoft_clarity/db-config.json b/src/configurations/destinations/microsoft_clarity/db-config.json index 925ef1ae6..fc6d4d09f 100644 --- a/src/configurations/destinations/microsoft_clarity/db-config.json +++ b/src/configurations/destinations/microsoft_clarity/db-config.json @@ -2,7 +2,6 @@ "name": "MICROSOFT_CLARITY", "displayName": "Microsoft Clarity", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/minio/db-config.json b/src/configurations/destinations/minio/db-config.json index f665c91d9..41278b1cc 100644 --- a/src/configurations/destinations/minio/db-config.json +++ b/src/configurations/destinations/minio/db-config.json @@ -2,7 +2,6 @@ "name": "MINIO", "displayName": "MinIO", "config": { - "transformAt": "none", "transformAtV1": "none", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/moengage/db-config.json b/src/configurations/destinations/moengage/db-config.json index 48ea5e155..5b1d901b9 100644 --- a/src/configurations/destinations/moengage/db-config.json +++ b/src/configurations/destinations/moengage/db-config.json @@ -2,7 +2,6 @@ "name": "MOENGAGE", "displayName": "MoEngage", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/monday/db-config.json b/src/configurations/destinations/monday/db-config.json index 715573216..e7d3b1f9d 100644 --- a/src/configurations/destinations/monday/db-config.json +++ b/src/configurations/destinations/monday/db-config.json @@ -2,7 +2,6 @@ "name": "MONDAY", "displayName": "Monday", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/monetate/db-config.json b/src/configurations/destinations/monetate/db-config.json index 80ef76eed..aa8bb8484 100644 --- a/src/configurations/destinations/monetate/db-config.json +++ b/src/configurations/destinations/monetate/db-config.json @@ -2,7 +2,6 @@ "name": "MONETATE", "displayName": "Monetate", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "supportedSourceTypes": [ diff --git a/src/configurations/destinations/mouseflow/db-config.json b/src/configurations/destinations/mouseflow/db-config.json index 695642ae7..a04aff668 100644 --- a/src/configurations/destinations/mouseflow/db-config.json +++ b/src/configurations/destinations/mouseflow/db-config.json @@ -2,7 +2,6 @@ "name": "MOUSEFLOW", "displayName": "Mouseflow", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/mp/db-config.json b/src/configurations/destinations/mp/db-config.json index 9e9c8e27c..378743d71 100644 --- a/src/configurations/destinations/mp/db-config.json +++ b/src/configurations/destinations/mp/db-config.json @@ -2,7 +2,6 @@ "name": "MP", "displayName": "Mixpanel", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/mssql/db-config.json b/src/configurations/destinations/mssql/db-config.json index 2e0301024..f626f00d6 100644 --- a/src/configurations/destinations/mssql/db-config.json +++ b/src/configurations/destinations/mssql/db-config.json @@ -3,7 +3,6 @@ "displayName": "Microsoft SQL Server", "category": "warehouse", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/new_relic/db-config.json b/src/configurations/destinations/new_relic/db-config.json index f9f89e134..1f5211e07 100644 --- a/src/configurations/destinations/new_relic/db-config.json +++ b/src/configurations/destinations/new_relic/db-config.json @@ -2,7 +2,6 @@ "name": "NEW_RELIC", "displayName": "New Relic", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "cdkEnabled": true, diff --git a/src/configurations/destinations/olark/db-config.json b/src/configurations/destinations/olark/db-config.json index 7e435ff4f..60ce61078 100644 --- a/src/configurations/destinations/olark/db-config.json +++ b/src/configurations/destinations/olark/db-config.json @@ -2,7 +2,6 @@ "name": "OLARK", "displayName": "Olark", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/ometria/db-config.json b/src/configurations/destinations/ometria/db-config.json index 22a57ec86..62451fd2d 100644 --- a/src/configurations/destinations/ometria/db-config.json +++ b/src/configurations/destinations/ometria/db-config.json @@ -2,7 +2,6 @@ "name": "OMETRIA", "displayName": "Ometria", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/one_signal/db-config.json b/src/configurations/destinations/one_signal/db-config.json index e34092c53..ea6d015ca 100644 --- a/src/configurations/destinations/one_signal/db-config.json +++ b/src/configurations/destinations/one_signal/db-config.json @@ -2,7 +2,6 @@ "name": "ONE_SIGNAL", "displayName": "OneSignal", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/optimizely/db-config.json b/src/configurations/destinations/optimizely/db-config.json index 2836d961e..4182cb6fc 100644 --- a/src/configurations/destinations/optimizely/db-config.json +++ b/src/configurations/destinations/optimizely/db-config.json @@ -2,7 +2,6 @@ "name": "OPTIMIZELY", "displayName": "Optimizely Web", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/optimizely_fullstack/db-config.json b/src/configurations/destinations/optimizely_fullstack/db-config.json index f210adce1..99422063b 100644 --- a/src/configurations/destinations/optimizely_fullstack/db-config.json +++ b/src/configurations/destinations/optimizely_fullstack/db-config.json @@ -3,7 +3,6 @@ "displayName": "Optimizely Fullstack", "config": { "cdkV2Enabled": true, - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/ortto/db-config.json b/src/configurations/destinations/ortto/db-config.json index 7e27bf7ab..ff7c69b28 100644 --- a/src/configurations/destinations/ortto/db-config.json +++ b/src/configurations/destinations/ortto/db-config.json @@ -3,11 +3,8 @@ "displayName": "Ortto", "config": { "cdkV2Enabled": true, - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, - "includeKeys": [], - "excludeKeys": [], "supportedSourceTypes": [ "android", "ios", diff --git a/src/configurations/destinations/pagerduty/db-config.json b/src/configurations/destinations/pagerduty/db-config.json index 37f4f2348..adc161573 100644 --- a/src/configurations/destinations/pagerduty/db-config.json +++ b/src/configurations/destinations/pagerduty/db-config.json @@ -2,7 +2,6 @@ "name": "PAGERDUTY", "displayName": "PagerDuty", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["routingKey", "dedupKeyFieldIdentifier", "oneTrustCookieCategories"], diff --git a/src/configurations/destinations/pardot/db-config.json b/src/configurations/destinations/pardot/db-config.json index 97a9bb581..faa201021 100644 --- a/src/configurations/destinations/pardot/db-config.json +++ b/src/configurations/destinations/pardot/db-config.json @@ -3,7 +3,6 @@ "displayName": "Pardot", "config": { "auth": { "type": "OAuth", "role": "pardot", "rudderScopes": ["delivery"] }, - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/pendo/db-config.json b/src/configurations/destinations/pendo/db-config.json index 9c88fef31..7c2669e3c 100644 --- a/src/configurations/destinations/pendo/db-config.json +++ b/src/configurations/destinations/pendo/db-config.json @@ -2,7 +2,6 @@ "name": "PENDO", "displayName": "Pendo", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/persistiq/db-config.json b/src/configurations/destinations/persistiq/db-config.json index 44b658cb8..8f9af21f6 100644 --- a/src/configurations/destinations/persistiq/db-config.json +++ b/src/configurations/destinations/persistiq/db-config.json @@ -2,7 +2,6 @@ "name": "PERSISTIQ", "displayName": "PersistIQ", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["apiKey", "oneTrustCookieCategories"], diff --git a/src/configurations/destinations/personalize/db-config.json b/src/configurations/destinations/personalize/db-config.json index d76aa2fad..7ce450037 100644 --- a/src/configurations/destinations/personalize/db-config.json +++ b/src/configurations/destinations/personalize/db-config.json @@ -2,7 +2,6 @@ "name": "PERSONALIZE", "displayName": "AWS Personalize", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": false, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/pinterest_tag/db-config.json b/src/configurations/destinations/pinterest_tag/db-config.json index 9d3063383..0a962f935 100644 --- a/src/configurations/destinations/pinterest_tag/db-config.json +++ b/src/configurations/destinations/pinterest_tag/db-config.json @@ -3,7 +3,6 @@ "displayName": "Pinterest Tag", "config": { "cdkV2Enabled": true, - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": false, "includeKeys": [ diff --git a/src/configurations/destinations/pinterest_tag/schema.json b/src/configurations/destinations/pinterest_tag/schema.json index 85d5150aa..c6a91d38c 100644 --- a/src/configurations/destinations/pinterest_tag/schema.json +++ b/src/configurations/destinations/pinterest_tag/schema.json @@ -7,7 +7,10 @@ "tagId": { "type": "string", "pattern": "(^\\{\\{.*\\|\\|(.*)\\}\\}$)|(^env[.].+)|^[0-9]*$" }, "appId": { "type": "string", "pattern": "(^\\{\\{.*\\|\\|(.*)\\}\\}$)|(^env[.].+)|^[0-9]*$" }, "apiVersion": { "type": "string", "enum": ["legacyApi", "newApi"], "default": "legacyApi" }, - "deduplicationKey": { "type": "string", "pattern":"(^\\{\\{.*\\|\\|(.*)\\}\\}$)|(^env[.].+)|^(.{0,100})$"}, + "deduplicationKey": { + "type": "string", + "pattern": "(^\\{\\{.*\\|\\|(.*)\\}\\}$)|(^env[.].+)|^(.{0,100})$" + }, "sendingUnHashedData": { "type": "boolean", "default": true }, "enhancedMatch": { "type": "boolean", "default": true }, "sendExternalId": { "type": "boolean", "default": false }, diff --git a/src/configurations/destinations/pipedream/db-config.json b/src/configurations/destinations/pipedream/db-config.json index 57bfd167a..294c2eb8a 100644 --- a/src/configurations/destinations/pipedream/db-config.json +++ b/src/configurations/destinations/pipedream/db-config.json @@ -2,7 +2,6 @@ "name": "PIPEDREAM", "displayName": "Pipedream", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": false, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/pipedrive/db-config.json b/src/configurations/destinations/pipedrive/db-config.json index 6f1511b81..8ad76e5cc 100644 --- a/src/configurations/destinations/pipedrive/db-config.json +++ b/src/configurations/destinations/pipedrive/db-config.json @@ -2,7 +2,6 @@ "name": "PIPEDRIVE", "displayName": "Pipedrive", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/podsights/db-config.json b/src/configurations/destinations/podsights/db-config.json index b6fb7f748..df1e326b9 100644 --- a/src/configurations/destinations/podsights/db-config.json +++ b/src/configurations/destinations/podsights/db-config.json @@ -2,7 +2,6 @@ "name": "PODSIGHTS", "displayName": "Podsights", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/post_affiliate_pro/db-config.json b/src/configurations/destinations/post_affiliate_pro/db-config.json index f7aee872e..1838617fa 100644 --- a/src/configurations/destinations/post_affiliate_pro/db-config.json +++ b/src/configurations/destinations/post_affiliate_pro/db-config.json @@ -2,7 +2,6 @@ "name": "POST_AFFILIATE_PRO", "displayName": "Post Affiliate Pro", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ @@ -44,7 +43,6 @@ "disableTrackingMethod", "cookieDomain", "affLinkId", - "affLinkId", "idName", "cookieLinkId", "cookieName", diff --git a/src/configurations/destinations/postgres/db-config.json b/src/configurations/destinations/postgres/db-config.json index 6f9c5610f..4c1bfb407 100644 --- a/src/configurations/destinations/postgres/db-config.json +++ b/src/configurations/destinations/postgres/db-config.json @@ -3,7 +3,6 @@ "displayName": "Postgres", "category": "warehouse", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/posthog/db-config.json b/src/configurations/destinations/posthog/db-config.json index 8eb1ee3bd..9f0be7eb5 100644 --- a/src/configurations/destinations/posthog/db-config.json +++ b/src/configurations/destinations/posthog/db-config.json @@ -17,7 +17,6 @@ "eventFilteringOption", "useV2Group" ], - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "excludeKeys": [], diff --git a/src/configurations/destinations/profitwell/db-config.json b/src/configurations/destinations/profitwell/db-config.json index d8240d8eb..baac26c0f 100644 --- a/src/configurations/destinations/profitwell/db-config.json +++ b/src/configurations/destinations/profitwell/db-config.json @@ -2,7 +2,6 @@ "name": "PROFITWELL", "displayName": "ProfitWell", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/qualaroo/db-config.json b/src/configurations/destinations/qualaroo/db-config.json index e38103987..a1b555ade 100644 --- a/src/configurations/destinations/qualaroo/db-config.json +++ b/src/configurations/destinations/qualaroo/db-config.json @@ -2,7 +2,6 @@ "name": "QUALAROO", "displayName": "Qualaroo", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/qualtrics/db-config.json b/src/configurations/destinations/qualtrics/db-config.json index dd03d0873..6f3b6a087 100644 --- a/src/configurations/destinations/qualtrics/db-config.json +++ b/src/configurations/destinations/qualtrics/db-config.json @@ -2,7 +2,6 @@ "name": "QUALTRICS", "displayName": "Qualtrics", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/quantummetric/db-config.json b/src/configurations/destinations/quantummetric/db-config.json index f2fd55f01..ddea68353 100644 --- a/src/configurations/destinations/quantummetric/db-config.json +++ b/src/configurations/destinations/quantummetric/db-config.json @@ -2,7 +2,6 @@ "name": "QUANTUMMETRIC", "displayName": "Quantum Metric", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/quora_pixel/db-config.json b/src/configurations/destinations/quora_pixel/db-config.json index c8d5285e2..80ca24481 100644 --- a/src/configurations/destinations/quora_pixel/db-config.json +++ b/src/configurations/destinations/quora_pixel/db-config.json @@ -2,7 +2,6 @@ "name": "QUORA_PIXEL", "displayName": "Quora Pixel", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/reddit_pixel/db-config.json b/src/configurations/destinations/reddit_pixel/db-config.json index 24aa4990a..9c557513e 100644 --- a/src/configurations/destinations/reddit_pixel/db-config.json +++ b/src/configurations/destinations/reddit_pixel/db-config.json @@ -2,7 +2,6 @@ "name": "REDDIT_PIXEL", "displayName": "Reddit Pixel", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/redis/db-config.json b/src/configurations/destinations/redis/db-config.json index 1e56c3943..f3f6d2325 100644 --- a/src/configurations/destinations/redis/db-config.json +++ b/src/configurations/destinations/redis/db-config.json @@ -2,7 +2,6 @@ "name": "REDIS", "displayName": "Redis", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/refiner/db-config.json b/src/configurations/destinations/refiner/db-config.json index 8a0673acb..6a35704ed 100644 --- a/src/configurations/destinations/refiner/db-config.json +++ b/src/configurations/destinations/refiner/db-config.json @@ -2,7 +2,6 @@ "name": "REFINER", "displayName": "Refiner", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/revenue_cat/db-config.json b/src/configurations/destinations/revenue_cat/db-config.json index 564c404ef..b31c28563 100644 --- a/src/configurations/destinations/revenue_cat/db-config.json +++ b/src/configurations/destinations/revenue_cat/db-config.json @@ -2,7 +2,6 @@ "name": "REVENUE_CAT", "displayName": "Revenue Cat", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/rockerbox/db-config.json b/src/configurations/destinations/rockerbox/db-config.json index 3a171b5ee..6b64f68d8 100644 --- a/src/configurations/destinations/rockerbox/db-config.json +++ b/src/configurations/destinations/rockerbox/db-config.json @@ -2,7 +2,6 @@ "name": "ROCKERBOX", "displayName": "Rockerbox", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/rollbar/db-config.json b/src/configurations/destinations/rollbar/db-config.json index 318884a13..f868ddd9c 100644 --- a/src/configurations/destinations/rollbar/db-config.json +++ b/src/configurations/destinations/rollbar/db-config.json @@ -2,7 +2,6 @@ "name": "ROLLBAR", "displayName": "rollbar", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/rs/db-config.json b/src/configurations/destinations/rs/db-config.json index 41244e5ce..fc2d5e2c5 100644 --- a/src/configurations/destinations/rs/db-config.json +++ b/src/configurations/destinations/rs/db-config.json @@ -3,7 +3,6 @@ "displayName": "Redshift", "category": "warehouse", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/s3/db-config.json b/src/configurations/destinations/s3/db-config.json index 2118b23ce..b80380272 100644 --- a/src/configurations/destinations/s3/db-config.json +++ b/src/configurations/destinations/s3/db-config.json @@ -2,7 +2,6 @@ "name": "S3", "displayName": "Amazon S3", "config": { - "transformAt": "none", "transformAtV1": "none", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/s3_datalake/db-config.json b/src/configurations/destinations/s3_datalake/db-config.json index 757d71783..f32a6b6c4 100644 --- a/src/configurations/destinations/s3_datalake/db-config.json +++ b/src/configurations/destinations/s3_datalake/db-config.json @@ -3,7 +3,6 @@ "displayName": "S3 Datalake", "category": "warehouse", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/salesforce/db-config.json b/src/configurations/destinations/salesforce/db-config.json index 30155d376..5dd9c9a15 100644 --- a/src/configurations/destinations/salesforce/db-config.json +++ b/src/configurations/destinations/salesforce/db-config.json @@ -4,7 +4,6 @@ "config": { "isAudienceSupported": true, "supportsVisualMapper": true, - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "throttlingCost": { diff --git a/src/configurations/destinations/salesforce_oauth/db-config.json b/src/configurations/destinations/salesforce_oauth/db-config.json index f8ce051fc..731480e36 100644 --- a/src/configurations/destinations/salesforce_oauth/db-config.json +++ b/src/configurations/destinations/salesforce_oauth/db-config.json @@ -7,11 +7,8 @@ "auth": { "type": "OAuth", "role": "salesforce", - "rudderScopes": [ - "delivery" - ] + "rudderScopes": ["delivery"] }, - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/satismeter/db-config.json b/src/configurations/destinations/satismeter/db-config.json index 34a97f2a1..35492b9e6 100644 --- a/src/configurations/destinations/satismeter/db-config.json +++ b/src/configurations/destinations/satismeter/db-config.json @@ -2,7 +2,6 @@ "name": "SATISMETER", "displayName": "SatisMeter", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/segment/db-config.json b/src/configurations/destinations/segment/db-config.json index 1369a7d44..19fa8d3e1 100644 --- a/src/configurations/destinations/segment/db-config.json +++ b/src/configurations/destinations/segment/db-config.json @@ -2,7 +2,6 @@ "name": "SEGMENT", "displayName": "Segment", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/sendgrid/db-config.json b/src/configurations/destinations/sendgrid/db-config.json index 8657c141e..217af484d 100644 --- a/src/configurations/destinations/sendgrid/db-config.json +++ b/src/configurations/destinations/sendgrid/db-config.json @@ -3,7 +3,6 @@ "displayName": "Sendgrid", "config": { "isAudienceSupported": true, - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/sendinblue/db-config.json b/src/configurations/destinations/sendinblue/db-config.json index 19d928416..54fc70d17 100644 --- a/src/configurations/destinations/sendinblue/db-config.json +++ b/src/configurations/destinations/sendinblue/db-config.json @@ -2,7 +2,6 @@ "name": "SENDINBLUE", "displayName": "Sendinblue", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/sentry/db-config.json b/src/configurations/destinations/sentry/db-config.json index 74d4fb4c6..fa5682e8e 100644 --- a/src/configurations/destinations/sentry/db-config.json +++ b/src/configurations/destinations/sentry/db-config.json @@ -2,7 +2,6 @@ "name": "SENTRY", "displayName": "Sentry", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/serenytics/db-config.json b/src/configurations/destinations/serenytics/db-config.json index c4439a9f9..fd7afe798 100644 --- a/src/configurations/destinations/serenytics/db-config.json +++ b/src/configurations/destinations/serenytics/db-config.json @@ -2,7 +2,6 @@ "name": "SERENYTICS", "displayName": "Serenytics", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/sfmc/db-config.json b/src/configurations/destinations/sfmc/db-config.json index 5204f9de1..bf1378493 100644 --- a/src/configurations/destinations/sfmc/db-config.json +++ b/src/configurations/destinations/sfmc/db-config.json @@ -2,7 +2,6 @@ "name": "SFMC", "displayName": "Salesforce Marketing Cloud", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "throttlingCost": { diff --git a/src/configurations/destinations/shynet/db-config.json b/src/configurations/destinations/shynet/db-config.json index 28a2b4a1e..720219e35 100644 --- a/src/configurations/destinations/shynet/db-config.json +++ b/src/configurations/destinations/shynet/db-config.json @@ -2,7 +2,6 @@ "name": "SHYNET", "displayName": "Shynet", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/signl4/db-config.json b/src/configurations/destinations/signl4/db-config.json index 062d65efa..1fa5530a1 100644 --- a/src/configurations/destinations/signl4/db-config.json +++ b/src/configurations/destinations/signl4/db-config.json @@ -2,7 +2,6 @@ "name": "SIGNL4", "displayName": "SIGNL4", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/singular/db-config.json b/src/configurations/destinations/singular/db-config.json index ce6290611..fdeb462fe 100644 --- a/src/configurations/destinations/singular/db-config.json +++ b/src/configurations/destinations/singular/db-config.json @@ -2,7 +2,6 @@ "name": "SINGULAR", "displayName": "Singular", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/slack/db-config.json b/src/configurations/destinations/slack/db-config.json index e22aacace..391f2acc0 100644 --- a/src/configurations/destinations/slack/db-config.json +++ b/src/configurations/destinations/slack/db-config.json @@ -2,7 +2,6 @@ "name": "SLACK", "displayName": "Slack", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/snap_pixel/db-config.json b/src/configurations/destinations/snap_pixel/db-config.json index e48720512..bc9ab91a8 100644 --- a/src/configurations/destinations/snap_pixel/db-config.json +++ b/src/configurations/destinations/snap_pixel/db-config.json @@ -2,7 +2,6 @@ "name": "SNAP_PIXEL", "displayName": "Snap Pixel", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/snapchat_conversion/db-config.json b/src/configurations/destinations/snapchat_conversion/db-config.json index 762ea6e25..4317733ac 100644 --- a/src/configurations/destinations/snapchat_conversion/db-config.json +++ b/src/configurations/destinations/snapchat_conversion/db-config.json @@ -2,7 +2,6 @@ "name": "SNAPCHAT_CONVERSION", "displayName": "Snapchat Conversion", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/snapchat_custom_audience/db-config.json b/src/configurations/destinations/snapchat_custom_audience/db-config.json index 2642b58cf..5a535c61b 100644 --- a/src/configurations/destinations/snapchat_custom_audience/db-config.json +++ b/src/configurations/destinations/snapchat_custom_audience/db-config.json @@ -8,7 +8,6 @@ "role": "snapchat_custom_audience", "rudderScopes": ["delivery"] }, - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["segmentId", "schema", "disableHashing", "oneTrustCookieCategories"], diff --git a/src/configurations/destinations/snapengage/db-config.json b/src/configurations/destinations/snapengage/db-config.json index 065ff77ec..e8741fa4f 100644 --- a/src/configurations/destinations/snapengage/db-config.json +++ b/src/configurations/destinations/snapengage/db-config.json @@ -2,7 +2,6 @@ "name": "SNAPENGAGE", "displayName": "SnapEngage", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/snowflake/db-config.json b/src/configurations/destinations/snowflake/db-config.json index 80399a2f0..dfe0b741f 100644 --- a/src/configurations/destinations/snowflake/db-config.json +++ b/src/configurations/destinations/snowflake/db-config.json @@ -3,7 +3,6 @@ "displayName": "Snowflake", "category": "warehouse", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories", "ketchConsentPurposes"], diff --git a/src/configurations/destinations/splitio/db-config.json b/src/configurations/destinations/splitio/db-config.json index 74550c69f..b923b98ea 100644 --- a/src/configurations/destinations/splitio/db-config.json +++ b/src/configurations/destinations/splitio/db-config.json @@ -2,7 +2,6 @@ "name": "SPLITIO", "displayName": "Split.io", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/sprig/db-config.json b/src/configurations/destinations/sprig/db-config.json index 02bbc65cf..9b2ae773a 100644 --- a/src/configurations/destinations/sprig/db-config.json +++ b/src/configurations/destinations/sprig/db-config.json @@ -2,7 +2,6 @@ "name": "SPRIG", "displayName": "Sprig", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": false, "includeKeys": ["apiKey", "whitelistedEvents", "blacklistedEvents", "oneTrustCookieCategories"], @@ -18,10 +17,7 @@ "blacklistedEvents", "oneTrustCookieCategories" ], - "web": [ - "useNativeSDK", - "connectionMode" - ] + "web": ["useNativeSDK", "connectionMode"] }, "secretKeys": ["apiKey"] } diff --git a/src/configurations/destinations/statsig/db-config.json b/src/configurations/destinations/statsig/db-config.json index bcdfdbaba..ff44b2579 100644 --- a/src/configurations/destinations/statsig/db-config.json +++ b/src/configurations/destinations/statsig/db-config.json @@ -2,7 +2,6 @@ "name": "STATSIG", "displayName": "Statsig", "config": { - "transformAt": "router", "transformAtV1": "router", "cdkEnabled": true, "saveDestinationResponse": true, diff --git a/src/configurations/destinations/stormly/db-config.json b/src/configurations/destinations/stormly/db-config.json index d8cc01b11..01081a8fa 100644 --- a/src/configurations/destinations/stormly/db-config.json +++ b/src/configurations/destinations/stormly/db-config.json @@ -2,7 +2,6 @@ "name": "STORMLY", "displayName": "Stormly", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories", "apiKey"], diff --git a/src/configurations/destinations/tiktok_ads/db-config.json b/src/configurations/destinations/tiktok_ads/db-config.json index 5b04437d6..87fdfad6e 100644 --- a/src/configurations/destinations/tiktok_ads/db-config.json +++ b/src/configurations/destinations/tiktok_ads/db-config.json @@ -2,7 +2,6 @@ "name": "TIKTOK_ADS", "displayName": "TikTok Ads", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/tiktok_ads_offline_events/db-config.json b/src/configurations/destinations/tiktok_ads_offline_events/db-config.json index 93827abb1..5379b3184 100644 --- a/src/configurations/destinations/tiktok_ads_offline_events/db-config.json +++ b/src/configurations/destinations/tiktok_ads_offline_events/db-config.json @@ -2,7 +2,6 @@ "name": "TIKTOK_ADS_OFFLINE_EVENTS", "displayName": "TikTok Ads Offline Events", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/tiktok_ads_offline_events/metadata.json b/src/configurations/destinations/tiktok_ads_offline_events/metadata.json index d771a284b..59c4d726b 100644 --- a/src/configurations/destinations/tiktok_ads_offline_events/metadata.json +++ b/src/configurations/destinations/tiktok_ads_offline_events/metadata.json @@ -6,21 +6,12 @@ "logoPath": "", "connectionMode": { "cloud-mode": true, - "device-mode": [ - "web", - "android" - ] + "device-mode": ["web", "android"] }, "supportedMethods": { - "cloud-mode": [ - "track", - "identify" - ], + "cloud-mode": ["track", "identify"], "device-mode": { - "web": [ - "track", - "identify" - ] + "web": ["track", "identify"] } }, "releaseStatus": "beta", diff --git a/src/configurations/destinations/tiktok_audience/db-config.json b/src/configurations/destinations/tiktok_audience/db-config.json index 4a0dea3ad..b74e83bd4 100644 --- a/src/configurations/destinations/tiktok_audience/db-config.json +++ b/src/configurations/destinations/tiktok_audience/db-config.json @@ -16,7 +16,6 @@ "supportedSourceTypes": ["cloud", "warehouse"], "supportsVisualMapper": true, "syncBehaviours": ["mirror"], - "transformAt": "router", "transformAtV1": "router", "destConfig": { "defaultConfig": ["rudderAccountId", "isHashRequired", "oneTrustCookieCategories"], diff --git a/src/configurations/destinations/trengo/db-config.json b/src/configurations/destinations/trengo/db-config.json index 61cb03a14..210629151 100644 --- a/src/configurations/destinations/trengo/db-config.json +++ b/src/configurations/destinations/trengo/db-config.json @@ -2,7 +2,6 @@ "name": "TRENGO", "displayName": "Trengo", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/tvsquared/db-config.json b/src/configurations/destinations/tvsquared/db-config.json index c536a0655..bf92153bf 100644 --- a/src/configurations/destinations/tvsquared/db-config.json +++ b/src/configurations/destinations/tvsquared/db-config.json @@ -2,7 +2,6 @@ "name": "TVSQUARED", "displayName": "TVSquared", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/twitter_ads/db-config.json b/src/configurations/destinations/twitter_ads/db-config.json index 609003fac..8cb716dda 100644 --- a/src/configurations/destinations/twitter_ads/db-config.json +++ b/src/configurations/destinations/twitter_ads/db-config.json @@ -7,7 +7,6 @@ "role": "twitter_ads", "rudderScopes": ["delivery"] }, - "transformAt": "router", "transformAtV1": "router", "excludeKeys": [], "supportedSourceTypes": [ diff --git a/src/configurations/destinations/user/db-config.json b/src/configurations/destinations/user/db-config.json index b667fc5a8..feeb7c9a6 100644 --- a/src/configurations/destinations/user/db-config.json +++ b/src/configurations/destinations/user/db-config.json @@ -2,7 +2,6 @@ "name": "USER", "displayName": "user.com", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/userlist/db-config.json b/src/configurations/destinations/userlist/db-config.json index 00bc9a739..a388110fb 100644 --- a/src/configurations/destinations/userlist/db-config.json +++ b/src/configurations/destinations/userlist/db-config.json @@ -2,7 +2,6 @@ "name": "USERLIST", "displayName": "Userlist", "config": { - "transformAt": "processor", "transformAtV1": "processor", "cdkEnabled": true, "saveDestinationResponse": true, diff --git a/src/configurations/destinations/variance/db-config.json b/src/configurations/destinations/variance/db-config.json index fd0e9d4e1..685eafd6a 100644 --- a/src/configurations/destinations/variance/db-config.json +++ b/src/configurations/destinations/variance/db-config.json @@ -2,7 +2,6 @@ "name": "VARIANCE", "displayName": "Variance", "config": { - "transformAt": "processor", "transformAtV1": "processor", "cdkEnabled": true, "saveDestinationResponse": true, diff --git a/src/configurations/destinations/vero/db-config.json b/src/configurations/destinations/vero/db-config.json index 87333e54e..7f22cde0e 100644 --- a/src/configurations/destinations/vero/db-config.json +++ b/src/configurations/destinations/vero/db-config.json @@ -2,7 +2,6 @@ "name": "VERO", "displayName": "Vero", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/vitally/db-config.json b/src/configurations/destinations/vitally/db-config.json index bb3584a60..3281a5ea5 100644 --- a/src/configurations/destinations/vitally/db-config.json +++ b/src/configurations/destinations/vitally/db-config.json @@ -2,7 +2,6 @@ "name": "VITALLY", "displayName": "Vitally", "config": { - "transformAt": "processor", "transformAtV1": "processor", "cdkEnabled": true, "saveDestinationResponse": true, diff --git a/src/configurations/destinations/vwo/db-config.json b/src/configurations/destinations/vwo/db-config.json index 2face7d72..c169647e5 100644 --- a/src/configurations/destinations/vwo/db-config.json +++ b/src/configurations/destinations/vwo/db-config.json @@ -2,7 +2,6 @@ "name": "VWO", "displayName": "VWO", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/webengage/db-config.json b/src/configurations/destinations/webengage/db-config.json index 9ff5c5819..ca75b2cb0 100644 --- a/src/configurations/destinations/webengage/db-config.json +++ b/src/configurations/destinations/webengage/db-config.json @@ -2,7 +2,6 @@ "name": "WEBENGAGE", "displayName": "WebEngage", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/webhook/db-config.json b/src/configurations/destinations/webhook/db-config.json index 09c8b0f6d..70e846b88 100644 --- a/src/configurations/destinations/webhook/db-config.json +++ b/src/configurations/destinations/webhook/db-config.json @@ -4,7 +4,6 @@ "config": { "cdkV2Enabled": true, "isAudienceSupported": true, - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": false, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/woopra/db-config.json b/src/configurations/destinations/woopra/db-config.json index fdf60ec54..48a09b044 100644 --- a/src/configurations/destinations/woopra/db-config.json +++ b/src/configurations/destinations/woopra/db-config.json @@ -2,7 +2,6 @@ "name": "WOOPRA", "displayName": "WOOPRA", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/wootric/db-config.json b/src/configurations/destinations/wootric/db-config.json index 9b66a3646..54421e983 100644 --- a/src/configurations/destinations/wootric/db-config.json +++ b/src/configurations/destinations/wootric/db-config.json @@ -2,7 +2,6 @@ "name": "WOOTRIC", "displayName": "Wootric", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["username", "password", "accountToken", "oneTrustCookieCategories"], diff --git a/src/configurations/destinations/yahoo_dsp/db-config.json b/src/configurations/destinations/yahoo_dsp/db-config.json index 0f0c6b7b8..0a41b88e5 100644 --- a/src/configurations/destinations/yahoo_dsp/db-config.json +++ b/src/configurations/destinations/yahoo_dsp/db-config.json @@ -2,7 +2,6 @@ "name": "YAHOO_DSP", "displayName": "Yahoo DSP", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/destinations/yandex_metrica/db-config.json b/src/configurations/destinations/yandex_metrica/db-config.json index bf0b5dabc..cb55e80d4 100644 --- a/src/configurations/destinations/yandex_metrica/db-config.json +++ b/src/configurations/destinations/yandex_metrica/db-config.json @@ -2,7 +2,6 @@ "name": "YANDEX_METRICA", "displayName": "Yandex.Metrica", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "includeKeys": [ diff --git a/src/configurations/destinations/zapier/db-config.json b/src/configurations/destinations/zapier/db-config.json index 5858319ea..bfe400df2 100644 --- a/src/configurations/destinations/zapier/db-config.json +++ b/src/configurations/destinations/zapier/db-config.json @@ -2,7 +2,6 @@ "name": "ZAPIER", "displayName": "Zapier", "config": { - "transformAt": "processor", "transformAtV1": "processor", "saveDestinationResponse": true, "cdkEnabled": true, diff --git a/src/configurations/destinations/zendesk/db-config.json b/src/configurations/destinations/zendesk/db-config.json index 03b5f906e..004f24793 100644 --- a/src/configurations/destinations/zendesk/db-config.json +++ b/src/configurations/destinations/zendesk/db-config.json @@ -2,7 +2,6 @@ "name": "ZENDESK", "displayName": "Zendesk", "config": { - "transformAt": "router", "transformAtV1": "router", "saveDestinationResponse": true, "includeKeys": ["oneTrustCookieCategories"], diff --git a/src/configurations/sources/bigquery/db-config.json b/src/configurations/sources/bigquery/db-config.json index b944758da..642051289 100644 --- a/src/configurations/sources/bigquery/db-config.json +++ b/src/configurations/sources/bigquery/db-config.json @@ -3,10 +3,7 @@ "category": "warehouse", "displayName": "BigQuery", "options": { - "syncBehaviours": [ - "upsert", - "mirror" - ], + "syncBehaviours": ["upsert", "mirror"], "isSqlModelSupported": true, "isAudienceSupported": true }, diff --git a/src/configurations/sources/databricks/db-config.json b/src/configurations/sources/databricks/db-config.json index c5c8c7d66..d0917c9ae 100644 --- a/src/configurations/sources/databricks/db-config.json +++ b/src/configurations/sources/databricks/db-config.json @@ -3,10 +3,7 @@ "category": "warehouse", "displayName": "Databricks", "options": { - "syncBehaviours": [ - "upsert", - "mirror" - ], + "syncBehaviours": ["upsert", "mirror"], "isSqlModelSupported": true, "isAudienceSupported": true, "hidden": false diff --git a/src/configurations/sources/databricks/ui-config.json b/src/configurations/sources/databricks/ui-config.json index 8b18725ef..5f04ed181 100644 --- a/src/configurations/sources/databricks/ui-config.json +++ b/src/configurations/sources/databricks/ui-config.json @@ -50,7 +50,7 @@ "required": true, "addInAccountSummary": false, "secret": true, - "inputFieldType":"password" + "inputFieldType": "password" }, { "type": "textInput", diff --git a/src/configurations/sources/mysql/db-config.json b/src/configurations/sources/mysql/db-config.json index adca910d7..0dac79fd6 100644 --- a/src/configurations/sources/mysql/db-config.json +++ b/src/configurations/sources/mysql/db-config.json @@ -3,10 +3,7 @@ "category": "warehouse", "displayName": "MySql", "options": { - "syncBehaviours": [ - "upsert", - "mirror" - ], + "syncBehaviours": ["upsert", "mirror"], "isSqlModelSupported": false }, "type": "warehouse" diff --git a/src/configurations/sources/postgres/db-config.json b/src/configurations/sources/postgres/db-config.json index acc4e2396..ff26e9b38 100644 --- a/src/configurations/sources/postgres/db-config.json +++ b/src/configurations/sources/postgres/db-config.json @@ -3,10 +3,7 @@ "category": "warehouse", "displayName": "Postgres", "options": { - "syncBehaviours": [ - "upsert", - "mirror" - ], + "syncBehaviours": ["upsert", "mirror"], "isSqlModelSupported": true }, "type": "warehouse" diff --git a/src/configurations/sources/redshift/db-config.json b/src/configurations/sources/redshift/db-config.json index 0d40cdb6a..bf6413b87 100644 --- a/src/configurations/sources/redshift/db-config.json +++ b/src/configurations/sources/redshift/db-config.json @@ -3,10 +3,7 @@ "category": "warehouse", "displayName": "Redshift", "options": { - "syncBehaviours": [ - "upsert", - "mirror" - ], + "syncBehaviours": ["upsert", "mirror"], "isSqlModelSupported": true, "isAudienceSupported": true }, diff --git a/src/configurations/sources/singer_google_analytics/db-config.json b/src/configurations/sources/singer_google_analytics/db-config.json index 4fad6ea2f..fe91dc94f 100644 --- a/src/configurations/sources/singer_google_analytics/db-config.json +++ b/src/configurations/sources/singer_google_analytics/db-config.json @@ -8,7 +8,7 @@ "provider": "Google" }, "image": "rudderstack/source-google-analytics:v5.1.0", - "gaMetricIds":[ + "gaMetricIds": [ "ga:users", "ga:visitors", "ga:newUsers", @@ -272,7 +272,7 @@ "ga:totalRefunds", "ga:transactionsPerUser" ], - "gaDimensionIds":[ + "gaDimensionIds": [ "ga:userType", "ga:visitorType", "ga:sessionCount", diff --git a/src/configurations/sources/snowflake/db-config.json b/src/configurations/sources/snowflake/db-config.json index 001b7ec8a..fb6d3174f 100644 --- a/src/configurations/sources/snowflake/db-config.json +++ b/src/configurations/sources/snowflake/db-config.json @@ -3,10 +3,7 @@ "category": "warehouse", "displayName": "Snowflake", "options": { - "syncBehaviours": [ - "upsert", - "mirror" - ], + "syncBehaviours": ["upsert", "mirror"], "isSqlModelSupported": true, "isAudienceSupported": true }, diff --git a/src/configurations/sources/trino/db-config.json b/src/configurations/sources/trino/db-config.json index de11932b7..c3160b686 100644 --- a/src/configurations/sources/trino/db-config.json +++ b/src/configurations/sources/trino/db-config.json @@ -4,12 +4,9 @@ "displayName": "Trino", "options": { "hidden": true, - "syncBehaviours": [ - "upsert", - "mirror" - ], + "syncBehaviours": ["upsert", "mirror"], "isSqlModelSupported": true, "isAudienceSupported": true }, "type": "warehouse" -} \ No newline at end of file +} diff --git a/src/schemas/destinations/db-config-schema.json b/src/schemas/destinations/db-config-schema.json new file mode 100644 index 000000000..a0628d09b --- /dev/null +++ b/src/schemas/destinations/db-config-schema.json @@ -0,0 +1,538 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "required": ["name", "displayName", "config"], + "title": "Destination definition schema", + "description": "The schema for a destination definition. This is used to validate the destination definition configuration files (db-config.json).", + "properties": { + "name": { + "type": "string", + "title": "Name", + "description": "A unique name for a destination without any whitespace or special characters.", + "$comment": "Typically, all the characters are in uppercase with words separated by underscores.", + "pattern": "^[a-zA-Z0-9_-]+$", + "examples": ["BING_ADS", "GOOGLE_ANALYTICS", "FACEBOOK_ADS"] + }, + "displayName": { + "type": "string", + "title": "Display Name", + "description": "A human-readable name for a destination, typically, derived from the branding of the destination.", + "$comment": "This will be used in the front-end (web app), docs, etc. to identify a destination. As this will also be used in the 'integrations' object interpreted by SDKs and the server, it should also be a unique identifier for a destination.", + "pattern": "^[a-zA-Z0-9_ .\\-\\(\\)/]+$", + "examples": [ + "Bing Ads", + "Split.io", + "Google Ads Remarketing Lists (Customer Match)", + "Google Cloud Pub/Sub" + ] + }, + "category": { + "type": "string", + "title": "Category", + "description": "The category of the destination.", + "$comment": "Typically, needs to be defined only for warehouse destinations.", + "enum": ["warehouse"] + }, + "config": { + "type": "object", + "title": "Configuration", + "description": "This hosts all the destination parameters.", + "required": ["supportedSourceTypes", "destConfig"], + "additionalProperties": false, + "properties": { + "transformAtV1": { + "type": "string", + "title": "Transform At V1", + "description": "The module in the server that should initiate destination transformation.", + "$comment": "This field deprecates 'transformAt'.", + "enum": ["processor", "router", "none"], + "default": "processor" + }, + "saveDestinationResponse": { + "type": "boolean", + "title": "Save Destination Response", + "description": "Whether the destination response should be saved for successful jobs in the jobs database.", + "$comment": "By default, the response data is saved for the failed jobs. This flag can be used to control the behavior for successful jobs.", + "default": false + }, + "isAudienceSupported": { + "type": "boolean", + "title": "Is Audience Supported", + "description": "TBD", + "default": false + }, + "throttlingCost": { + "type": "object", + "title": "Throttling Cost", + "description": "Defines the throttling parameters for the destination that can have intermediate API calls during transformation.", + "$comment": "The server uses this information while picking the events from the jobs database during router transformation. This must be defined only for destinations with different rate limits per event type, as the endpoints usually differ.", + "additionalProperties": false, + "properties": { + "eventType": { + "type": "object", + "title": "Event Type", + "description": "The throttling parameters for each event type.", + "patternProperties": { + "^(track|identify|page|screen|alias|group|audiencelist|record)$": { + "type": "integer", + "exclusiveMinimum": 0, + "title": "The maximum number of external API calls that can happen during the destination transformation for the event type." + } + }, + "additionalProperties": false, + "minProperties": 1 + } + }, + "minProperties": 1 + }, + "supportedSourceTypes": { + "type": "array", + "title": "Supported Source Types", + "description": "The source types supported by the destination for connection.", + "$comment": "This is used to display the supported source types in the UI and mandatorily specified.", + "items": { + "type": "string", + "enum": [ + "android", + "ios", + "web", + "unity", + "amp", + "cloud", + "warehouse", + "reactnative", + "flutter", + "cordova", + "shopify", + "cloudSource" + ] + }, + "minItems": 1, + "uniqueItems": true + }, + "supportedMessageTypes": { + "title": "Supported Message Types", + "description": "The message types supported by the destination.", + "$comment": "Define this field only to filter out unsupported event types early in the data pipeline. The server (processor) will drop these events and log them in the proc_error tables instead of destination transformation. If the value is an empty array, all the event types are dropped.", + "oneOf": [ + { + "type": "array", + "description": "An array of event types supported in the cloud mode.", + "$comment": "This needs to be mandatorily defined if a destination supports cloud mode.", + "items": { + "$ref": "#/definitions/eventType" + }, + "uniqueItems": true, + "minItems": 1 + }, + { + "type": "object", + "description": "An object with connection modes as keys. This is the new format for defining the supported message types and will also allow client SDKs to filter out unsupported event types early. However, this is not yet supported by the SDKs.", + "patternProperties": { + "^(cloud|device|hybrid)$": { + "oneOf": [ + { + "type": "array", + "description": "An array of event types.", + "items": { + "$ref": "#/definitions/eventType" + }, + "uniqueItems": true + }, + { + "type": "object", + "description": "An object with source types as keys.", + "patternProperties": { + "^(android|ios|web|unity|amp|cloud|warehouse|reactnative|flutter|cordova|shopify|cloudSource)$": { + "type": "array", + "description": "An array of event types.", + "items": { + "$ref": "#/definitions/eventType" + }, + "uniqueItems": true + } + }, + "additionalProperties": false, + "minProperties": 1 + } + ] + } + }, + "additionalProperties": false, + "minProperties": 1 + } + ] + }, + "supportedConnectionModes": { + "title": "Supported Connection Modes", + "description": "The map of connection modes supported by the destination per source type.", + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/connectionMode" + }, + "minItems": 1, + "uniqueItems": true + }, + { + "type": "object", + "patternProperties": { + "^(android|ios|web|unity|amp|cloud|warehouse|reactnative|flutter|cordova|shopify|cloudSource)$": { + "type": "array", + "title": "Connection Modes", + "description": "The connection modes supported by the destination for the source type.", + "$comment": "This is used to display the supported connection modes in the UI.", + "items": { + "$ref": "#/definitions/connectionMode" + }, + "minItems": 1, + "uniqueItems": true + } + }, + "additionalProperties": false, + "minProperties": 1 + } + ] + }, + "hybridModeCloudEventsFilter": { + "type": "object", + "title": "Hybrid Mode Cloud Events Filter", + "description": "This is a map of event types supported by destination per source type in the hybrid connection mode.", + "$comment": "This is used to filter out cloud events in hybrid mode. This is used only for destinations that support hybrid mode.", + "required": [], + "patternProperties": { + "^(android|ios|web|unity|amp|cloud|warehouse|reactnative|flutter|cordova|shopify|cloudSource)$": { + "type": "object", + "title": "Source Type Filter Map", + "description": "The event types supported by the destination for the source type.", + "required": ["messageType"], + "properties": { + "messageType": { + "type": "array", + "title": "Message Types", + "description": "The event types supported by the destination for the source type.", + "items": { + "$ref": "#/definitions/eventType" + }, + "minItems": 1, + "uniqueItems": true + } + }, + "additionalProperties": false + } + }, + "additionalProperties": false, + "minProperties": 1 + }, + "cdkV2Enabled": { + "type": "boolean", + "title": "CDK V2 Enabled", + "description": "Whether to use CDK V2 implementation for destination transformation.", + "default": false + }, + "cdkEnabled": { + "type": "boolean", + "title": "CDK V1 Enabled", + "description": "Whether to use CDK V2 implementation for destination transformation.", + "default": false + }, + "destConfig": { + "type": "object", + "title": "Destination Configuration", + "description": "The parameters for the destination that the user can configure.", + "$comment": "This is used to display default and source type specific destination configuration in the UI.", + "patternProperties": { + "^(android|ios|web|unity|amp|cloud|warehouse|reactnative|flutter|cordova|shopify|cloudSource|defaultConfig)$": { + "type": "array", + "items": { + "type": "string" + }, + "minItems": 1, + "uniqueItems": true + } + }, + "additionalProperties": false, + "minProperties": 1 + }, + "includeKeys": { + "type": "array", + "title": "Include Keys", + "description": "The only keys that are to be included in the destination configuration sent to the SDKs.", + "$comment": "For destinations that support device mode, this should be mandatorily defined. No fields will be included in the source configuration response if this field is not defined or empty.", + "items": { + "type": "string" + }, + "minItems": 1, + "uniqueItems": true + }, + "excludeKeys": { + "type": "array", + "title": "Exclude Keys", + "description": "The keys to be excluded in the destination configuration sent to the SDKs.", + "$comment": "This field needs to be mandatorily defined if the destination supports device mode. The filter is applied after the 'includeKeys' filtering logic. So, if a key is included in both lists, it'll be eventually dropped.", + "items": { + "type": "string" + }, + "uniqueItems": true + }, + "secretKeys": { + "type": "array", + "title": "Secret Keys", + "description": "The keys that are to be treated as secrets in the destination configuration.", + "$comment": "In the UI, these fields will be masked and only allowed to be edited (not viewed) on the destination configuration page. Moreover, the values for these fields are stored in a separate database.", + "items": { + "type": "string" + }, + "uniqueItems": true + }, + "auth": { + "type": "object", + "title": "Authentication", + "description": "The authentication parameters for the destination.", + "required": ["type"], + "properties": { + "type": { + "type": "string", + "title": "Type", + "description": "The mechanism of authentication active for the destination.", + "enum": ["OAuth"] + }, + "provider": { + "type": "string", + "title": "Provider", + "description": "The authentication provider's name.", + "enum": ["Google"] + }, + "role": { + "type": "string", + "title": "Role", + "description": "This is a unique identifier for the authentication.", + "$comment": "Typically, it is the destination 'name' field but can changed to something else." + }, + "rudderScopes": { + "type": "array", + "title": "Rudder Scopes", + "description": "The operations for which authentication should be used.", + "$comment": "'delivery' - event delivery requests. 'delete' - user deletion requests", + "items": { + "type": "string", + "enum": ["delivery", "delete"] + }, + "minItems": 1, + "uniqueItems": true + } + } + }, + "configFilters": { + "type": "array", + "title": "Config Filters", + "description": "TBD", + "items": { + "type": "string" + } + }, + "supportsBlankAudienceCreation": { + "type": "boolean", + "title": "Supports Blank Audience Creation", + "description": "TBD", + "default": false + }, + "supportsVisualMapper": { + "type": "boolean", + "title": "Supports Visual Mapper", + "description": "TBD" + }, + "disableJsonMapper": { + "type": "boolean", + "title": "Disable JSON Mapper", + "description": "TBD" + }, + "syncBehaviours": { + "type": "array", + "title": "Sync Behaviours", + "description": "TBD", + "items": { + "type": "string", + "enum": ["mirror", "upsert"] + }, + "uniqueItems": true + } + } + }, + "options": { + "type": "object", + "title": "Options", + "description": "The options for the destination.", + "$comment": "This hosts miscellaneous information about the destination.", + "additionalProperties": false, + "minProperties": 1, + "properties": { + "isBeta": { + "type": "boolean", + "title": "Is Beta", + "description": "Whether the destination is in beta.", + "$comment": "This is used to display a 'beta' badge in the UI.", + "default": false + }, + "hidden": { + "type": "boolean", + "title": "Hidden", + "description": "Whether the destination is hidden.", + "$comment": "This is used to hide the destination from the UI.", + "default": false + }, + "deprecated": { + "type": "boolean", + "title": "Deprecated", + "description": "Whether the destination is deprecated.", + "$comment": "This is used to display a 'deprecated' badge in the UI.", + "default": false + }, + "deprecationLabel": { + "type": "string", + "title": "Deprecation Label", + "description": "The deprecation label for the destination.", + "$comment": "This is used to display a deprecation label in the UI when options.deprecated is 'true'.", + "default": "Deprecated" + }, + "destinationFeatures": { + "type": "object", + "title": "Destination Features", + "description": "The features supported by the destination.", + "additionalProperties": false, + "minProperties": 1, + "properties": { + "vdmLabels": { + "type": "object", + "title": "VDM Labels", + "description": "The VDM labels supported by the destination.", + "additionalProperties": false, + "minProperties": 1, + "properties": { + "newAudienceAlternateLabel": { + "type": "string", + "title": "New Audience Alternate Label", + "description": "The alternate label for the 'New Audience' VDM label.", + "$comment": "This is used to display the alternate label in the UI when the destination supports the 'New Audience' VDM label." + }, + "existingAudienceAlternateLabel": { + "type": "string", + "title": "Existing Audience Alternate Label", + "description": "The alternate label for the 'Existing Audience' VDM label.", + "$comment": "This is used to display the alternate label in the UI when the destination supports the 'Existing Audience' VDM label." + }, + "audienceAlternateLabel": { + "type": "string", + "title": "Audience Alternate Label", + "description": "The alternate label for the 'Audience' VDM label.", + "$comment": "This is used to display the alternate label in the UI when the destination supports the 'Audience' VDM label." + } + } + } + } + } + } + }, + "responseRules": { + "type": "object", + "title": "Response Rules", + "description": "Some destinations send 2xx as status code even when the request has some errors. Hence, we have to parse the response body to determine the actual status.", + "$comment": "This method of parsing the response is DEPRECATED now in lieu of transformer proxy.", + "additionalProperties": false, + "required": ["responseType", "rules"], + "properties": { + "responseType": { + "type": "string", + "title": "Response Type", + "description": "The response type from the destination.", + "$comment": "This indicates the type of response returned by the destination.", + "enum": ["JSON", "TXT"] + }, + "rules": { + "type": "object", + "title": "Rules", + "description": "The parsing rules to be applied on the response from the destination.", + "properties": { + "abortable": { + "type": "array", + "title": "Abortable", + "description": "The rules to declare the request as aborted.", + "items": { + "$ref": "#/definitions/responseRule" + }, + "minItems": 1 + }, + "retryable": { + "type": "array", + "title": "Retryable", + "description": "The rules to declare the request as retryable.", + "items": { + "$ref": "#/definitions/responseRule" + }, + "minItems": 1 + }, + "throttled": { + "type": "array", + "title": "Throttled", + "description": "The rules to declare the request as throttled.", + "items": { + "$ref": "#/definitions/responseRule" + }, + "minItems": 1 + } + }, + "additionalProperties": false, + "minProperties": 1 + } + } + } + }, + "definitions": { + "eventType": { + "type": "string", + "enum": ["track", "identify", "page", "screen", "alias", "group", "audiencelist", "record"] + }, + "connectionMode": { + "type": "string", + "enum": ["cloud", "device", "hybrid"] + }, + "sourceType": { + "type": "string", + "enum": [ + "android", + "ios", + "web", + "unity", + "amp", + "cloud", + "warehouse", + "reactnative", + "flutter", + "cordova", + "shopify", + "cloudSource" + ] + }, + "responseRule": { + "type": "object", + "title": "Response Rule", + "description": "The rule to be applied on the response from the destination.", + "patternProperties": { + "^errors\\.[a-zA-Z0-9_]+$": { + "type": "integer", + "exclusiveMinimum": 0 + } + }, + "properties": { + "success": { + "type": "string", + "title": "Success", + "enum": ["true", "false"] + } + }, + "minProperties": 1, + "maxProperties": 2 + } + } +} diff --git a/src/schemas/sources/db-config-schema.json b/src/schemas/sources/db-config-schema.json new file mode 100644 index 000000000..dc1cfa381 --- /dev/null +++ b/src/schemas/sources/db-config-schema.json @@ -0,0 +1,153 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "required": ["name", "displayName", "type"], + "title": "Source definition schema", + "description": "The schema for a source definition. This is used to validate the source definition configuration files (db-config.json).", + "properties": { + "name": { + "type": "string", + "title": "Name", + "description": "A unique name for a source without any whitespace or special characters.", + "$comment": "Typically, all the characters are in lowercase with words separated by underscores.", + "pattern": "^[a-zA-Z0-9_-]+$", + "examples": ["bigquery", "active_campaign"] + }, + "displayName": { + "type": "string", + "title": "Display Name", + "description": "A human-readable name for a source, typically, derived from the branding of the source.", + "$comment": "This will be used in the front-end (web app), docs, etc. to identify a source.", + "pattern": "^[a-zA-Z0-9_ .\\-\\(\\)/]+$", + "examples": ["Active campaign", "Zendesk Chat"] + }, + "category": { + "type": "string", + "title": "Category", + "description": "The category of the source.", + "enum": ["webhook", "cloud", "warehouse", "singer-protocol"] + }, + "type": { + "type": "string", + "title": "Type", + "description": "The type of the source.", + "enum": [ + "cloud", + "cloudSource", + "amp", + "android", + "warehouse", + "cordova", + "flutter", + "ios", + "web", + "reactnative", + "shopify", + "unity" + ] + }, + "options": { + "type": "object", + "title": "Options", + "description": "The options for the source.", + "$comment": "This hosts miscellaneous information about the source.", + "properties": { + "isBeta": { + "type": "boolean", + "title": "Is Beta", + "description": "Whether the source is in beta.", + "$comment": "This is used to display a 'beta' badge in the UI.", + "default": false + }, + "hidden": { + "type": "boolean", + "title": "Hidden", + "description": "Whether the source is hidden.", + "$comment": "This is used to hide the source from the UI.", + "default": false + }, + "syncBehaviours": { + "type": "array", + "title": "Sync Behaviours", + "description": "TBD", + "items": { + "type": "string", + "enum": ["mirror", "upsert"] + }, + "uniqueItems": true + }, + "isSqlModelSupported": { + "type": "boolean", + "title": "Is SQL Model Supported", + "description": "TBD" + }, + "isAudienceSupported": { + "type": "boolean", + "title": "Is Audience Supported", + "description": "TBD" + }, + "isCredentialsValidationSupported": { + "type": "boolean", + "title": "Is Credentials Validation Supported", + "description": "TBD" + }, + "skipWarehouseSchemaConfig": { + "type": "boolean", + "title": "Skip Warehouse Schema Config", + "description": "TBD" + }, + "image": { + "type": "string", + "title": "Image", + "description": "TBD" + }, + "digest": { + "type": "string", + "title": "Digest", + "description": "TBD" + }, + "auth": { + "type": "object", + "title": "Auth", + "description": "TBD", + "properties": { + "provider": { + "type": "string", + "title": "Provider", + "description": "TBD", + "enum": ["Google", "Xero"] + }, + "oauthRole": { + "type": "string", + "title": "OAuth Role", + "description": "TBD" + } + } + }, + "gaMetricIds": { + "type": "array", + "title": "GA Metric IDs", + "description": "TBD", + "items": { + "type": "string" + }, + "uniqueItems": true + }, + "gaDimensionIds": { + "type": "array", + "title": "GA Dimension IDs", + "description": "TBD", + "items": { + "type": "string" + }, + "uniqueItems": true + }, + "supportsDestinationSyncMode": { + "type": "boolean", + "title": "Supports Destination Sync Mode", + "description": "TBD" + } + } + } + } +} diff --git a/src/validator/index.ts b/src/validator/index.ts index 1f50bd866..2c25a6bb4 100644 --- a/src/validator/index.ts +++ b/src/validator/index.ts @@ -59,118 +59,59 @@ export function validateConfig( } } -export function validateHybridModeCloudConfig(destinationDefinition: any): boolean { - const isObject = (val: any): boolean => { - // invalid types condition check - if (!val || typeof val !== 'object' || Array.isArray(val)) { - return false; - } - return true; - }; - - const checkForValidaObjectAndValidateWithMasterList = ( - inputValues: any, - masterList: string[], - logKeys: { location: string; subsetName: string; masterName: string }, - ): { isValid: boolean; valList: string[] } => { - if (!isObject(inputValues)) { - return { isValid: false, valList: [] }; - } - const subsetValues = Object.keys(inputValues); - // no subset defined - if (subsetValues.length === 0) { - return { isValid: false, valList: [] }; - } - - const isSubsetOfMasterList = subsetValues.every((child) => masterList.includes(child)); - if (!isSubsetOfMasterList) { - console.error( - `The ${logKeys.subsetName} mentioned in ${logKeys.location} doesnot exist in ${logKeys.masterName}`, - ); - return { isValid: false, valList: [] }; - } - return { isValid: true, valList: subsetValues }; - }; - if (destinationDefinition?.config?.hybridModeCloudEventsFilter) { - const { hybridModeCloudEventsFilter, supportedSourceTypes } = destinationDefinition.config; - - const { isValid: isSourceTypeValid, valList: sourceTypes } = - checkForValidaObjectAndValidateWithMasterList( - hybridModeCloudEventsFilter, - supportedSourceTypes, - { - masterName: 'supportedSourceTypes', - location: 'hybridModeCloudEventsFilter.[sourceType]', - subsetName: 'source type', - }, - ); - // no source-types defined - if (!isSourceTypeValid) { - console.error( - 'The supported source type mentioned in hybridModeCloudEventsFilter doesnot exist in supportedSourceTypes', - ); - return false; - } - const supportedEventProperties = ['messageType']; - - return sourceTypes.some((srcType: string) => { - const sourceTypeFilterMap = hybridModeCloudEventsFilter[srcType]; - const { isValid: isValidEventProperties, valList: eventProperties } = - checkForValidaObjectAndValidateWithMasterList( - sourceTypeFilterMap, - supportedEventProperties, - { - masterName: `${supportedEventProperties}`, - location: '', - subsetName: `${Object.keys(hybridModeCloudEventsFilter[srcType])}`, - }, - ); - if (!isValidEventProperties) { - return false; - } - - // basic-check - return eventProperties.some((eventProperty) => - Array.isArray(sourceTypeFilterMap[eventProperty]), - ); +export async function validateDestinationDefinitions(destDefConfig: any): Promise { + const ddAjv = new Ajv({ + allErrors: true, + useDefaults: true, + strict: true, + strictSchema: true, + strictRequired: true, + strictNumbers: true, + strictTypes: true, + strictTuples: true, + }); + + const validator = ddAjv.compile( + await importJsonFromFile(path.join(__dirname, '../schemas/destinations/db-config-schema.json')), + ); + + if (validator && !validator(destDefConfig) && validator.errors) { + const errorMessages: string[] = validator.errors.map((e) => { + const propertyName = e.instancePath.slice(1).replace(/\//g, '.'); + return `${propertyName} ${e.message}`; }); + + throw new Error(JSON.stringify(errorMessages)); } + return true; } -export async function validateDestinationDefinitions(destName: string): Promise { - // hybridModeCloudEventsFilter check -- STARTS - const destDefinition = await import(`../configurations/destinations/${destName}/db-config.json`); - const isValidHybridModeCloudConfig = validateHybridModeCloudConfig(destDefinition); - // hybridModeCloudEventsFilter check -- ENDS - return isValidHybridModeCloudConfig; -} +export async function validateSourceDefinitions(srcDefConfig: any): Promise { + const ddAjv = new Ajv({ + allErrors: true, + useDefaults: true, + strict: true, + strictSchema: true, + strictRequired: true, + strictNumbers: true, + strictTypes: true, + strictTuples: true, + }); -export function validateSourceType(sourceDefinition: any) { - // currently these are the valid source-types according to the ServiceUtil.getSourceType logic in config-backend - const validSourceTypes = [ - 'cloud', - 'cloudSource', - 'warehouse', - 'web', - 'android', - 'ios', - 'unity', - 'reactnative', - 'amp', - 'flutter', - 'cordova', - 'shopify', - ]; - return validSourceTypes.includes(sourceDefinition?.type); -} + const validator = ddAjv.compile( + await importJsonFromFile(path.join(__dirname, '../schemas/sources/db-config-schema.json')), + ); -export async function validateSourceDefinitions(srcName: string): Promise { - const sourceDefinition = await import(`../configurations/sources/${srcName}/db-config.json`); - // SourceDefinition.type validation -- STARTS - const isValidSourceType = validateSourceType(sourceDefinition); - // SourceDefinition.type validation -- ENDS - return isValidSourceType; + if (validator && !validator(srcDefConfig) && validator.errors) { + const errorMessages: string[] = validator.errors.map((e) => { + const propertyName = e.instancePath.slice(1).replace(/\//g, '.'); + return `${propertyName} ${e.message}`; + }); + + throw new Error(JSON.stringify(errorMessages)); + } + return true; } export async function init() { diff --git a/test/data/validation/destinations/dcm_floodlight.json b/test/data/validation/destinations/dcm_floodlight.json index 1961e60c3..4fb24366c 100644 --- a/test/data/validation/destinations/dcm_floodlight.json +++ b/test/data/validation/destinations/dcm_floodlight.json @@ -86,7 +86,7 @@ "useNativeSDK": { "web": true }, "conversionLinker": { "web": true }, "allowAdPersonalizationSignals": { "web": true }, - "tagFormat": {"web": "globalSiteTag"}, + "tagFormat": { "web": "globalSiteTag" }, "doubleclickId": { "web": true }, "googleNetworkId": { "web": "1234" }, "oneTrustCookieCategories": [{ "oneTrustCookieCategory": "" }] @@ -123,7 +123,7 @@ "useNativeSDK": { "web": false }, "conversionLinker": { "web": true }, "allowAdPersonalizationSignals": { "web": true }, - "tagFormat": {"web": "iframeTag"}, + "tagFormat": { "web": "iframeTag" }, "doubleclickId": { "web": false }, "googleNetworkId": { "web": "1234" }, "oneTrustCookieCategories": [{ "oneTrustCookieCategory": "" }] diff --git a/test/data/validation/destinations/eloqua.json b/test/data/validation/destinations/eloqua.json index 659a1eaec..6d4e73914 100644 --- a/test/data/validation/destinations/eloqua.json +++ b/test/data/validation/destinations/eloqua.json @@ -26,6 +26,6 @@ "password": "someDummyPassword" }, "result": false, - "err":[" must have required property 'companyName'"] + "err": [" must have required property 'companyName'"] } ] diff --git a/test/data/validation/destinations/ga4.json b/test/data/validation/destinations/ga4.json index 21586e299..e3db15dc0 100644 --- a/test/data/validation/destinations/ga4.json +++ b/test/data/validation/destinations/ga4.json @@ -325,4 +325,4 @@ }, "result": true } -] \ No newline at end of file +] diff --git a/test/data/validation/destinations/iterable.json b/test/data/validation/destinations/iterable.json index 09030fc40..ec0e06be8 100644 --- a/test/data/validation/destinations/iterable.json +++ b/test/data/validation/destinations/iterable.json @@ -182,4 +182,4 @@ " must match a schema in anyOf" ] } -] \ No newline at end of file +] diff --git a/test/data/validation/destinations/lemnisk.json b/test/data/validation/destinations/lemnisk.json index 599cd8d3b..ed886136e 100644 --- a/test/data/validation/destinations/lemnisk.json +++ b/test/data/validation/destinations/lemnisk.json @@ -54,4 +54,4 @@ }, "result": true } -] \ No newline at end of file +] diff --git a/test/data/validation/destinations/marketo.json b/test/data/validation/destinations/marketo.json index 5bccaa537..9ccea570f 100644 --- a/test/data/validation/destinations/marketo.json +++ b/test/data/validation/destinations/marketo.json @@ -1,121 +1,117 @@ [ - { - "config": { - "accountId": "testACCID", - "clientId": "testCLIENTID", - "trackAnonymousEvents": false, - "createIfNotExist": true, - "oneTrustCookieCategories": [ - { - "oneTrustCookieCategory": "" - } - ], - "android-connectionMode": "cloud", - "rudderEventsMapping": [ - { - "event": "test Mapping", - "marketoPrimarykey": "name", - "marketoActivityId": "1023" - } - ], - "leadTraitMapping": [ - { - "from": "leadScore", - "to": "customLeadScore" - } - ] - }, - "result": false, - "err": [ - " must have required property 'clientSecret'" - ] + { + "config": { + "accountId": "testACCID", + "clientId": "testCLIENTID", + "trackAnonymousEvents": false, + "createIfNotExist": true, + "oneTrustCookieCategories": [ + { + "oneTrustCookieCategory": "" + } + ], + "android-connectionMode": "cloud", + "rudderEventsMapping": [ + { + "event": "test Mapping", + "marketoPrimarykey": "name", + "marketoActivityId": "1023" + } + ], + "leadTraitMapping": [ + { + "from": "leadScore", + "to": "customLeadScore" + } + ] }, - { - "config": { - "accountId": "testACCID", - "clientId": "testCLIENTID", - "clientSecret": "******", - "trackAnonymousEvents": false, - "createIfNotExist": true, - "oneTrustCookieCategories": [ - { - "oneTrustCookieCategory": "" - } - ], - "android-connectionMode": "cloud", - "rudderEventsMapping": [ - { - "event": "test Mapping", - "marketoPrimarykey": "name", - "marketoActivityId": "1023" - } - ] - }, - "result": true + "result": false, + "err": [" must have required property 'clientSecret'"] + }, + { + "config": { + "accountId": "testACCID", + "clientId": "testCLIENTID", + "clientSecret": "******", + "trackAnonymousEvents": false, + "createIfNotExist": true, + "oneTrustCookieCategories": [ + { + "oneTrustCookieCategory": "" + } + ], + "android-connectionMode": "cloud", + "rudderEventsMapping": [ + { + "event": "test Mapping", + "marketoPrimarykey": "name", + "marketoActivityId": "1023" + } + ] }, - { - "config": { - "clientId": "1234", - "clientSecret": "******", - "trackAnonymousEvents": false, - "createIfNotExist": true, - "oneTrustCookieCategories": [ - { - "oneTrustCookieCategory": "" - } - ], - "android-connectionMode": "cloud", - "rudderEventsMapping": [ - { - "event": "test Mapping", - "marketoPrimarykey": "name", - "marketoActivityId": "1023" - } - ] - }, - "result": false, - "err": [ - " must have required property 'accountId'" - ] + "result": true + }, + { + "config": { + "clientId": "1234", + "clientSecret": "******", + "trackAnonymousEvents": false, + "createIfNotExist": true, + "oneTrustCookieCategories": [ + { + "oneTrustCookieCategory": "" + } + ], + "android-connectionMode": "cloud", + "rudderEventsMapping": [ + { + "event": "test Mapping", + "marketoPrimarykey": "name", + "marketoActivityId": "1023" + } + ] }, - { - "config": { - "accountId": "testACCID", - "clientId": "testCLIENTID", - "clientSecret": "******", - "trackAnonymousEvents": true, - "createIfNotExist": false, - "oneTrustCookieCategories": [ - { - "oneTrustCookieCategory": "" - } - ], - "android-connectionMode": "cloud" - }, - "result": true + "result": false, + "err": [" must have required property 'accountId'"] + }, + { + "config": { + "accountId": "testACCID", + "clientId": "testCLIENTID", + "clientSecret": "******", + "trackAnonymousEvents": true, + "createIfNotExist": false, + "oneTrustCookieCategories": [ + { + "oneTrustCookieCategory": "" + } + ], + "android-connectionMode": "cloud" }, - { - "config": { - "accountId": "testACCID", - "clientId": "testCLIENTID", - "clientSecret": "******", - "trackAnonymousEvents": false, - "createIfNotExist": true, - "oneTrustCookieCategories": [ - { - "oneTrustCookieCategory": "" - } - ], - "leadTraitMapping": [], - "android-connectionMode": "cloud", - "rudderEventsMapping": [], - "customActivityPropertyMap": [ - { - "from": "name", - "to": "pagename" - } - ] - }, - "result": true - } -] \ No newline at end of file + "result": true + }, + { + "config": { + "accountId": "testACCID", + "clientId": "testCLIENTID", + "clientSecret": "******", + "trackAnonymousEvents": false, + "createIfNotExist": true, + "oneTrustCookieCategories": [ + { + "oneTrustCookieCategory": "" + } + ], + "leadTraitMapping": [], + "android-connectionMode": "cloud", + "rudderEventsMapping": [], + "customActivityPropertyMap": [ + { + "from": "name", + "to": "pagename" + } + ] + }, + "result": true + } +] diff --git a/test/validation.test.ts b/test/validation.test.ts index c694f2cf8..12e4f0ff1 100644 --- a/test/validation.test.ts +++ b/test/validation.test.ts @@ -7,9 +7,7 @@ import { init, validateConfig, validateSourceDefinitions, - validateSourceType, validateDestinationDefinitions, - validateHybridModeCloudConfig, } from '../src'; const command = new Commander.Command(); @@ -72,11 +70,23 @@ srcList.forEach((s) => { if (intgData) srcTcData[s] = intgData; }); +async function getSourceDefinitionConfig(srcName: string) { + const dirPath = path.resolve(`src/configurations/sources/${srcName}`); + const configPath = `${dirPath}/db-config.json`; + return import(configPath); +} + +async function getDestinationDefinitionConfig(destName: string) { + const dirPath = path.resolve(`src/configurations/destinations/${destName}`); + const configPath = `${dirPath}/db-config.json`; + return import(configPath); +} + const dests = getIntegrationNames('destinations'); const sources = getIntegrationNames('sources'); describe('Core Tests', () => { - it('If invalid integration name is provide, throw error', async () => { + it('If invalid integration name is provide, throw error', () => { expect(() => { validateConfig('', {}, 'destinations', true); }).toThrow('Missing definitionName'); @@ -110,7 +120,7 @@ describe('Validation Tests', () => { Object.keys(destTcData).forEach((dest: string, destIdx: number) => { describe(`${destIdx + 1}. Destination - ${dest}`, () => { destTcData[dest].forEach((td: Record, tcIdx: number) => { - it(`TC ${tcIdx + 1}`, async () => { + it(`TC ${tcIdx + 1}`, () => { if (td.result === true) { expect( validateConfig(dest, td.config as Record, 'destinations', true), @@ -129,7 +139,7 @@ describe('Validation Tests', () => { Object.keys(srcTcData).forEach((src: string, srcIdx: number) => { describe(`${srcIdx + 1}. Source - ${src}`, () => { srcTcData[src].forEach((td: Record, tcIdx: number) => { - it(`TC ${tcIdx + 1}`, async () => { + it(`TC ${tcIdx + 1}`, () => { if (td.result === true) { expect( validateConfig(src, td.config as Record, 'sources', true), @@ -148,112 +158,167 @@ describe('Validation Tests', () => { describe('Destination Definition validation tests', () => { dests.forEach((dest) => { it(`${dest} - destination definition test`, async () => { - expect(validateDestinationDefinitions(dest)).resolves.toEqual(true); + const destDefConfig = await getDestinationDefinitionConfig(dest); + await expect(validateDestinationDefinitions(destDefConfig)).resolves.toEqual(true); }); }); -}); -describe('Destination Definition wrong configuration tests', () => { - const supportedSourceTypes = ['web', 'android', 'amp', 'cloud', 'flutter']; - const destinationDefinition = { - config: { - supportedSourceTypes, - hybridModeCloudEventsFilter: {}, - }, - }; - const testCases = [ + const malformedDestDefConfigs = [ { - caseName: - 'should return false, when destinationDefinition.config.hybridModeCloudEventsFilter is not a valid map', - hybridModeCloudEventsFilter: [], - expected: false, + description: 'missing "name" and "displayName" properties', + input: { + config: { + supportedSourceTypes: ['web'], + destConfig: { + defaultConfig: ['temp'], + }, + }, + }, + expected: + '[" must have required property \'name\'"," must have required property \'displayName\'"]', }, { - caseName: - 'should return false, when destinationDefinition.config.hybridModeCloudEventsFilter is empty map', - hybridModeCloudEventsFilter: {}, - expected: false, + description: 'hybridModeCloudEventsFilter is not a valid map', + input: { + name: 'test', + displayName: 'Test', + config: { + destConfig: { + defaultConfig: ['temp'], + }, + supportedSourceTypes: ['web'], + hybridModeCloudEventsFilter: [], + }, + }, + expected: '["config.hybridModeCloudEventsFilter must be object"]', }, { - caseName: - 'should return false, when destinationDefinition.config.hybridModeCloudEventsFilter has sourceType that is not present in supportedSourceTypes', - hybridModeCloudEventsFilter: { - web: { - messageType: ['track'], + description: 'hybridModeCloudEventsFilter is empty map', + input: { + name: 'test', + displayName: 'Test', + config: { + destConfig: { + defaultConfig: ['temp'], + }, + supportedSourceTypes: ['web'], + hybridModeCloudEventsFilter: {}, }, - differentSourceType: { - messageType: ['page', 'group'], + }, + expected: '["config.hybridModeCloudEventsFilter must NOT have fewer than 1 properties"]', + }, + { + description: 'hybridModeCloudEventsFilter has unsupported source types', + input: { + name: 'test', + displayName: 'Test', + config: { + destConfig: { + defaultConfig: ['temp'], + }, + supportedSourceTypes: ['web'], + hybridModeCloudEventsFilter: { + web: { + messageType: ['track'], + }, + differentSourceType: { + messageType: ['page', 'group'], + }, + }, }, }, - expected: false, + expected: '["config.hybridModeCloudEventsFilter must NOT have additional properties"]', }, { - caseName: - 'should return false, destinationDefinition.config.hybridModeCloudEventsFilter[web] = {}', - hybridModeCloudEventsFilter: { - web: {}, + description: 'hybridModeCloudEventsFilter has empty map for web source type', + input: { + name: 'test', + displayName: 'Test', + config: { + destConfig: { + defaultConfig: ['temp'], + }, + supportedSourceTypes: ['web'], + hybridModeCloudEventsFilter: { + web: {}, + }, + }, }, - expected: false, + expected: + '["config.hybridModeCloudEventsFilter.web must have required property \'messageType\'"]', }, { - caseName: - 'should return false, when destinationDefinition.config.hybridModeCloudEventsFilter[web] = { randomType: ["random_1", "random_2"] }', - hybridModeCloudEventsFilter: { - web: { - randomType: ['random_1', 'random_2'], + description: 'hybridModeCloudEventsFilter has invalid fields for web source type', + input: { + name: 'test', + displayName: 'Test', + config: { + destConfig: { + defaultConfig: ['temp'], + }, + supportedSourceTypes: ['web'], + hybridModeCloudEventsFilter: { + web: { + randomType: ['random_1', 'random_2'], + }, + }, }, }, - expected: false, + expected: + '["config.hybridModeCloudEventsFilter.web must have required property \'messageType\'","config.hybridModeCloudEventsFilter.web must NOT have additional properties"]', }, { - caseName: - 'should return false, when destinationDefinition.config.hybridModeCloudEventsFilter[web] = { messageType: "track" }', - hybridModeCloudEventsFilter: { - web: { - messageType: 'track', + description: + 'hybridModeCloudEventsFilter has invalid values for "messageType" for web source type', + input: { + name: 'test', + displayName: 'Test', + config: { + destConfig: { + defaultConfig: ['temp'], + }, + supportedSourceTypes: ['web'], + hybridModeCloudEventsFilter: { + web: { + messageType: 'track', + }, + }, }, }, - expected: false, + expected: '["config.hybridModeCloudEventsFilter.web.messageType must be array"]', }, ]; - it.each(testCases)('$caseName', (testCase) => { - destinationDefinition.config.hybridModeCloudEventsFilter = testCase.hybridModeCloudEventsFilter; - const isValid = validateHybridModeCloudConfig(destinationDefinition); - expect(isValid).toBe(testCase.expected); - }); - - it('should return true, when destinationDefinition is undefined', () => { - expect(validateHybridModeCloudConfig(undefined)).toEqual(true); - }); - it('should return true, when destinationDefinition.config is undefined', () => { - expect(validateHybridModeCloudConfig({ config: undefined })).toEqual(true); - }); - it('should return true, when destinationDefinition.config.supportedSourceTypes is undefined', () => { - expect(validateHybridModeCloudConfig({ config: { supportedSourceTypes: undefined } })).toEqual( - true, + it.each(malformedDestDefConfigs)('$description', async (testCase) => { + await expect(validateDestinationDefinitions(testCase.input)).rejects.toThrow( + new Error(testCase.expected), ); }); - it('should return true, when destinationDefinition.config.hybridModeCloudEventsFilter is undefined', () => { - expect( - validateHybridModeCloudConfig({ - config: { supportedSourceTypes, hybridModeCloudEventsFilter: undefined }, - }), - ).toEqual(true); - }); }); describe('Source Definition validation tests', () => { sources.forEach((src) => { it(`${src} - source definition test`, async () => { - expect(validateSourceDefinitions(src)).resolves.toEqual(true); + const srcDefConfig = await getSourceDefinitionConfig(src); + await expect(validateSourceDefinitions(srcDefConfig)).resolves.toEqual(true); }); }); - it('sourceDefinition does not have valid type', () => { - expect(validateSourceType({ type: 'someSource' })).toEqual(false); - }); - it('sourceDefinition undefined', () => { - expect(validateSourceType(undefined)).toEqual(false); + const malformedSrcDefConfigs = [ + { + description: 'missing "name" and "displayName" properties', + input: { + type: 'cloud', + category: 'webhook', + }, + expected: + '[" must have required property \'name\'"," must have required property \'displayName\'"]', + }, + ]; + + it.each(malformedSrcDefConfigs)('$description', async (testCase) => { + await expect(validateSourceDefinitions(testCase.input)).rejects.toThrow( + new Error(testCase.expected), + ); }); }); From c90e66f12f7f9bda6759751b6e3e2fa9795b0332 Mon Sep 17 00:00:00 2001 From: Debanjan Ganguly Date: Tue, 5 Dec 2023 19:02:08 +0530 Subject: [PATCH 2/3] chore: update base feature github url (#1097) --- .../wht-lib-projects/libres360_base_features/db-config.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/configurations/wht-lib-projects/libres360_base_features/db-config.json b/src/configurations/wht-lib-projects/libres360_base_features/db-config.json index 4307341cf..6bdd8baec 100644 --- a/src/configurations/wht-lib-projects/libres360_base_features/db-config.json +++ b/src/configurations/wht-lib-projects/libres360_base_features/db-config.json @@ -1,6 +1,6 @@ { "name": "base_features", - "githubRepoURL": "https://github.com/rudderlabs/rudderstack-profiles-base-features", + "githubRepoURL": "https://github.com/rudderlabs/rudderstack-profiles-multieventstream-features", "description": "base features", "config": { "sourcesSupported": [ From c00fee0e60731f35cd62a38cf17275696d69a5ee Mon Sep 17 00:00:00 2001 From: Debanjan Ganguly Date: Wed, 6 Dec 2023 12:04:22 +0530 Subject: [PATCH 3/3] chore: update google ads connector (#1098) --- src/configurations/sources/singer_google_ads/db-config.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/configurations/sources/singer_google_ads/db-config.json b/src/configurations/sources/singer_google_ads/db-config.json index d59cd195e..08c2bb53b 100644 --- a/src/configurations/sources/singer_google_ads/db-config.json +++ b/src/configurations/sources/singer_google_ads/db-config.json @@ -6,8 +6,7 @@ "auth": { "provider": "Google" }, - "image": "rudderstack/source-google-ads:v6.2.0-fix-google-ads-error-handling", - "isBeta": false + "image": "rudderstack/source-google-ads:v6.2.0-fix-google-ads-validation-check" }, "type": "cloudSource" }