diff --git a/_data/taps/schemas/referral-saasquatch/v2/json/referrals.json b/_data/taps/schemas/referral-saasquatch/v2/json/referrals.json new file mode 100644 index 000000000..ae04e86af --- /dev/null +++ b/_data/taps/schemas/referral-saasquatch/v2/json/referrals.json @@ -0,0 +1,91 @@ +{ + "properties": { + "dateConverted": { + "anyOf": [ + { + "type": "date-time" + }, + { + "type": "null" + } + ] + }, + "dateModerated": { + "anyOf": [ + { + "type": "date-time" + }, + { + "type": "null" + } + ] + }, + "dateReferralEnded": { + "anyOf": [ + { + "type": "date-time" + }, + { + "type": "null" + } + ] + }, + "dateReferralPaid": { + "anyOf": [ + { + "type": "date-time" + }, + { + "type": "null" + } + ] + }, + "dateReferralStarted": { + "anyOf": [ + { + "type": "date-time" + }, + { + "type": "null" + } + ] + }, + "id": { + "properties": { + "key": true, + "type": "string" + }, + "type": [ + "object" + ] + }, + "programId": { + "type": "string" + }, + "referredAccount": { + "type": "string" + }, + "referredModerationStatus": { + "type": "string" + }, + "referredReward": { + "type": "string" + }, + "referredUser": { + "type": "string" + }, + "referrerAccount": { + "type": "string" + }, + "referrerModerationStatus": { + "type": "string" + }, + "referrerReward": { + "type": "string" + }, + "referrerUser": { + "type": "string" + } + }, + "type": "object" +} diff --git a/_data/taps/schemas/referral-saasquatch/v2/json/reward_balances.json b/_data/taps/schemas/referral-saasquatch/v2/json/reward_balances.json new file mode 100644 index 000000000..446aad76b --- /dev/null +++ b/_data/taps/schemas/referral-saasquatch/v2/json/reward_balances.json @@ -0,0 +1,32 @@ +{ + "properties": { + "accountId": { + "properties": { + "key": true, + "type": "string" + }, + "type": [ + "object" + ] + }, + "amount": { + "type": "integer" + }, + "type": { + "type": "string" + }, + "unit": { + "type": "string" + }, + "userId": { + "properties": { + "key": true, + "type": "string" + }, + "type": [ + "object" + ] + } + }, + "type": "object" +} diff --git a/_data/taps/schemas/referral-saasquatch/v2/json/users.json b/_data/taps/schemas/referral-saasquatch/v2/json/users.json new file mode 100644 index 000000000..bcba98f90 --- /dev/null +++ b/_data/taps/schemas/referral-saasquatch/v2/json/users.json @@ -0,0 +1,75 @@ +{ + "properties": { + "accountId": { + "properties": { + "key": true, + "type": "string" + }, + "type": [ + "object" + ] + }, + "dateCreated": { + "anyOf": [ + { + "type": "date-time" + }, + { + "type": "null" + } + ] + }, + "email": { + "type": "string" + }, + "emailHash": { + "type": "string" + }, + "emailShareLink": { + "type": "string" + }, + "facebookShareLink": { + "type": "string" + }, + "firstName": { + "type": "string" + }, + "firstSeenIP": { + "type": "string" + }, + "id": { + "properties": { + "key": true, + "type": "string" + }, + "type": [ + "object" + ] + }, + "imageUrl": { + "type": "string" + }, + "lastName": { + "type": "string" + }, + "lastSeenIP": { + "type": "string" + }, + "linkedinShareLink": { + "type": "string" + }, + "locale": { + "type": "string" + }, + "referralSource": { + "type": "string" + }, + "shareLink": { + "type": "string" + }, + "twitterShareLink": { + "type": "string" + } + }, + "type": "object" +} diff --git a/_data/taps/schemas/referral-saasquatch/v2/referral-saasquatch-v2-foreign-keys.yml b/_data/taps/schemas/referral-saasquatch/v2/referral-saasquatch-v2-foreign-keys.yml new file mode 100644 index 000000000..5f6145a09 --- /dev/null +++ b/_data/taps/schemas/referral-saasquatch/v2/referral-saasquatch-v2-foreign-keys.yml @@ -0,0 +1,84 @@ +tap: referral-saasquatch +version: '2' +keys: + users_userId: + - table: referrals + keys: + - referredUser + - referrerUser + - table: reward_balances + keys: + - userId + - table: users + keys: + - id + users_accountId: + - table: referrals + keys: + - referredAccount + - referrerAccount + - table: reward_balances + keys: + - accountId + - table: users + keys: + - accountId +tables: +- table-name: referrals + join: + - table-name: reward_balances + keys: + - key: referredUser + foreign-key: userId + - key: referrerUser + foreign-key: userId + - key: referredAccount + foreign-key: accountId + - key: referrerAccount + foreign-key: accountId + - table-name: users + keys: + - key: referredUser + foreign-key: id + - key: referrerUser + foreign-key: id + - key: referredAccount + foreign-key: accountId + - key: referrerAccount + foreign-key: accountId +- table-name: reward_balances + join: + - table-name: referrals + keys: + - key: userId + foreign-key: referredUser + - key: userId + foreign-key: referrerUser + - key: accountId + foreign-key: referredAccount + - key: accountId + foreign-key: referrerAccount + - table-name: users + keys: + - key: userId + foreign-key: id + - key: accountId + foreign-key: accountId +- table-name: users + join: + - table-name: referrals + keys: + - key: id + foreign-key: referredUser + - key: id + foreign-key: referrerUser + - key: accountId + foreign-key: referredAccount + - key: accountId + foreign-key: referrerAccount + - table-name: reward_balances + keys: + - key: id + foreign-key: userId + - key: accountId + foreign-key: accountId diff --git a/_data/taps/schemas/referral-saasquatch/v2/referral-saasquatch-v2-tables.yml b/_data/taps/schemas/referral-saasquatch/v2/referral-saasquatch-v2-tables.yml new file mode 100644 index 000000000..5d313c119 --- /dev/null +++ b/_data/taps/schemas/referral-saasquatch/v2/referral-saasquatch-v2-tables.yml @@ -0,0 +1,42 @@ +tap: referral-saasquatch +version: '2' +tables: +- name: referrals + description: 'The `{{ table.name }}` table contains info about all of the referrals + in your {{ integration.display_name }} tenant. + + ' + links: + doc-link: https://docs.referralsaasquatch.com/api/methods/#open_list_referrals + singer-schema: https://github.com/singer-io/tap-referral-saasquatch/blob/master/tap_referral_saasquatch/schemas/referrals.json + api-method: https://docs.referralsaasquatch.com/api/methods/#list_referrals + table-details: + replication-method: Key-based Incremental + primary-key: id +- name: reward_balances + description: 'The `{{ table.name }}` table contains info about the balances for + all rewards. + + ' + links: + singer-schema: https://github.com/singer-io/tap-referral-saasquatch/blob/master/tap_referral_saasquatch/schemas/reward_balances.json + api-method: https://docs.referralsaasquatch.com/api/methods#list_balances + table-details: + replication-method: Key-based Incremental + primary-keys: + - userId + - accountId +- name: users + description: 'The `{{ table.name }}` table contains info about the users in your + {{ integration.display_name }} tenant. + + ' + links: + singer-schema: https://github.com/singer-io/tap-referral-saasquatch/blob/master/tap_referral_saasquatch/schemas/users.json + api-method: https://docs.referralsaasquatch.com/api/methods#list_users + table-details: + replication-method: Key-based Incremental + primary-keys: + - id + - accountId +tap-repo-schemas: true diff --git a/_data/taps/versions/referral-saasquatch.yml b/_data/taps/versions/referral-saasquatch.yml index dcd6103b8..7bdb86d1d 100644 --- a/_data/taps/versions/referral-saasquatch.yml +++ b/_data/taps/versions/referral-saasquatch.yml @@ -2,9 +2,13 @@ # REFERRAL SAASQUATCH VERSIONS # # ------------------------------- # -latest-version: "1" +latest-version: "2" released-versions: + - number: "2" + date-released: "Feb 26, 2026" + # date-last-connection: "" + - number: "1" date-released: "March 1, 2017" # date-last-connection: \ No newline at end of file diff --git a/_includes/integrations/shared-setup/data-selection/data-selection-tabs.html b/_includes/integrations/shared-setup/data-selection/data-selection-tabs.html index f6700b5ee..d055228b5 100644 --- a/_includes/integrations/shared-setup/data-selection/data-selection-tabs.html +++ b/_includes/integrations/shared-setup/data-selection/data-selection-tabs.html @@ -72,9 +72,9 @@ {% capture selection-options %} For {{ integration.display_name }} integrations, you can select: -1. **Individual {{ object }}s {% if integration.column-selection == true %} and {{ col }}s{% endif %}** +1. **Individual {{ object }}s{% if integration.column-selection == true %} and {{ col }}s{% endif %}** {% if select-all == true %} -2. **All {{ object }}s and {{ col }}s** {% if integration.collection == "database-integrations" and view-selection == true %}(except views){% endif %} +2. **All {{ object }}s{% if integration.column-selection == true %} and {{ col }}s{% endif %}** {% if integration.collection == "database-integrations" and view-selection == true %}(except views){% endif %} {% endif %} {% if view-selection == true %} diff --git a/_saas-integrations/referral-saasquatch/referral-saasquatch-latest.md b/_saas-integrations/referral-saasquatch/v1/referral-saasquatch-v1.md old mode 100755 new mode 100644 similarity index 96% rename from _saas-integrations/referral-saasquatch/referral-saasquatch-latest.md rename to _saas-integrations/referral-saasquatch/v1/referral-saasquatch-v1.md index 50c5a7e96..882428876 --- a/_saas-integrations/referral-saasquatch/referral-saasquatch-latest.md +++ b/_saas-integrations/referral-saasquatch/v1/referral-saasquatch-v1.md @@ -1,9 +1,10 @@ --- title: Referral SaaSquatch (v1) -permalink: /integrations/saas/referral-saasquatch +permalink: /integrations/saas/referral-saasquatch/v1 keywords: referral saasquatch, integration, schema, etl referral saasquatch, referral saasquatch etl, referral saasquatch schema summary: "Connection instructions and schema details for Stitch's Referral SaaSquatch integration." layout: singer +input: false key: "referral-saasquatch-setup" @@ -95,4 +96,4 @@ setup-steps: # Each table has a its own .md file in /_integration-schemas/referral-saasquatch --- {% assign integration = page %} -{% include misc/data-files.html %} \ No newline at end of file +{% include misc/data-files.html %} diff --git a/_saas-integrations/referral-saasquatch/v2/referral-saasquatch-v2.md b/_saas-integrations/referral-saasquatch/v2/referral-saasquatch-v2.md new file mode 100644 index 000000000..a4b4b6246 --- /dev/null +++ b/_saas-integrations/referral-saasquatch/v2/referral-saasquatch-v2.md @@ -0,0 +1,100 @@ +--- +title: Referral SaaSquatch (v2) +permalink: /integrations/saas/referral-saasquatch +keywords: referral saasquatch, integration, schema, etl referral saasquatch, referral saasquatch etl, referral saasquatch schema +summary: "Connection instructions and schema details for Stitch's Referral SaaSquatch integration." +layout: singer +# input: false + +key: "referral-saasquatch-setup" + +# -------------------------- # +# Tap Details # +# -------------------------- # + +name: "referral-saasquatch" +display_name: "Referral SaaSquatch" + +singer: true +repo-url: https://github.com/singer-io/tap-referral-saasquatch + +this-version: "2" + +api: | + [{{ integration.display_name }} REST API](https://docs.referralsaasquatch.com/api/){:target="new"} + +# -------------------------- # +# Stitch Details # +# -------------------------- # + +certified: false + +historical: "1 year" +frequency: "30 minutes" +tier: "Standard" +status-url: https://twitter.com/getSaasquatch + +api-type: "platform.referral-saasquatch" + +anchor-scheduling: true +cron-scheduling: true + +table-selection: true +column-selection: true + +extraction-logs: true +loading-reports: true + +# -------------------------- # +# Feature Summary # +# -------------------------- # + +feature-summary: | + Stitch's {{ integration.display_name }} integration replicates data using the {{ integration.api | flatify | strip }}. Refer to the [Schema](#schema) section for a list of objects available for replication. + + +# -------------------------- # +# Setup Instructions # +# -------------------------- # + +setup-steps: + - title: "Retrieve your {{ integration.display_name }} API credentials" + anchor: "retrieve-api-credentials" + content: | + 1. Sign into your Referral SaaSquatch account. + 2. In the **Setup** section of the left nav tab, click the **Install** option. + 3. In this page, locate the **Tenant Alias** and **API Key** fields. + 4. In the **API Key** field, click the **Click to Reveal** link to reveal your API Key. + + Leave this page open for now - you'll need it to complete the setup in Stitch. + + - title: "Add {{ integration.display_name }} as a Stitch data source" + anchor: "add-stitch-data-source" + content: | + {% include integrations/shared-setup/connection-setup.html %} + 4. In the **Tenant Alias** field, paste your Referral SaaSquatch Tenant Alias. + 5. In the **API Key** field, paste your Referral SaaSquatch API Key. + - title: "Set objects to replicate" + anchor: "setting-data-to-replicate" + content: | + {% include integrations/shared-setup/data-selection/object-selection.html %} + - title: "Define the historical replication start date" + anchor: "define-historical-sync" + content: | + {% include integrations/saas/setup/historical-sync.html %} + + - title: "Create a replication schedule" + anchor: "define-rep-frequency" + content: | + {% include integrations/shared-setup/replication-frequency.html %} + + +# -------------------------- # +# Table Schemas # +# -------------------------- # + +# Looking for the table schemas & info? +# Each table has a its own .md file in /_integration-schemas/referral-saasquatch +--- +{% assign integration = page %} +{% include misc/data-files.html %}