diff --git a/docs/integrations/sources/surveymonkey.md b/docs/integrations/sources/surveymonkey.md index aef4ec4d7aac6..624e5a4cce6a0 100644 --- a/docs/integrations/sources/surveymonkey.md +++ b/docs/integrations/sources/surveymonkey.md @@ -1,72 +1,84 @@ # SurveyMonkey -This page guides you through the process of setting up the SurveyMonkey source connector. +Set up a SurveyMonkey source connector to extract survey, question, response, and collector data from your SurveyMonkey account. :::note -OAuth for Survey Monkey is officially supported only for the US. We are testing how to enable it in the EU at the moment. If you run into any issues, please [reach out to us](mailto:product@airbyte.io) so we can promptly assist you. +Airbyte officially supports OAuth for SurveyMonkey only for the US. If you have any issues, [contact us](https://support.airbyte.com/). ::: - - ## Prerequisites -**For Airbyte Open Source:** +Before you begin, have the following ready. + + +### For Airbyte Open Source -- Access Token +- A [registered SurveyMonkey app](https://developer.surveymonkey.com/apps/) +- A SurveyMonkey access token, found on the Settings page of your SurveyMonkey app +- If your SurveyMonkey app is a Public app, you also need a Client ID and Client Secret, found on the Settings page of your SurveyMonkey app -## Setup guide + +### For Airbyte Cloud -### Step 1: Set up SurveyMonkey +- A [registered SurveyMonkey application](https://developer.surveymonkey.com/apps/) +- A [paid SurveyMonkey account](https://www.surveymonkey.com/pricing/) + -Please read this [docs](https://developer.surveymonkey.com/api/v3/#getting-started). Register your application [here](https://developer.surveymonkey.com/apps/) Then go to Settings and copy your access token +You may want to review SurveyMonkey's [API docs](https://developer.surveymonkey.com/api/v3/#getting-started), but this isn't strictly necessary. -### Step 2: Set up the source connector in Airbyte +## Create the SurveyMonkey source - -**For Airbyte Cloud:** - -1. [Log into your Airbyte Cloud](https://cloud.airbyte.com/workspaces) account. -2. In the left navigation bar, click **Sources**. In the top-right corner, click **+ new source**. -3. On the source setup page, select **SurveyMonkey** from the Source type dropdown and enter a name for this connector. -4. lick `Authenticate your account`. -5. Log in and Authorize to the SurveyMonkey account -6. Choose required Start date -7. click `Set up source`. +### Airbyte Cloud steps + +1. In the left navigation bar, click **Sources**. +2. Click **New source**. +3. Find and click **SurveyMonkey**. +4. Click **Authenticate your SurveyMonkey account**. Log in and authorize Airbyte to access your SurveyMonkey account. +5. Fill out the form. + - **Source name**: A short, descriptive name to help you identify this source in Airbyte. + - **Start Date**: Any data before this date will not be extracted. + - **Origin datacenter of the SurveyMonkey account**: Airbyte needs to know this because API access URLs may depend on the origin datacenter's location. + - **Survey Monkey survey IDs**: If you want to extract specific surveys, enter the IDs of those surveys. If you want to extract all survey data, leave this blank. +6. Click **Set up source**. Wait a moment while Airbyte tests the connection. - -**For Airbyte Open Source:** - -1. Go to local Airbyte page. -2. In the left navigation bar, click **Sources**. In the top-right corner, click **+ new source**. -3. On the source setup page, select **SurveyMonkey** from the Source type dropdown and enter a name for this connector. -4. Add **Access Token** -5. Choose required Start date -6. Click `Set up source`. +### Airbyte Open Source steps + +1. In the left navigation bar, click **Sources**. +2. Click **New source**. +3. Find and click **SurveyMonkey**. +4. Fill out the form. + - **Source name**: A short, descriptive name to help you identify this source in Airbyte. + - **Access Token**: Your SurveyMonkey app's access token. + - **Client ID**: Your SurveyMonkey app's client id. + - **Client Secret**: Your SurveyMonkey app's client secret. + - **Start Date**: Any data before this date will not be extracted. + - **Origin datacenter of the SurveyMonkey account**: Airbyte needs to know this because API access URLs may depend on the origin datacenter's location. + - **Survey Monkey survey IDs**: If you want to extract specific surveys, enter the IDs of those surveys. If you want to extract all survey data, leave this blank. +6. Click **Set up source**. Wait a moment while Airbyte tests the connection. ## Supported streams and sync modes -- [Surveys](https://api.surveymonkey.com/v3/docs?shell#api-endpoints-get-surveys) \(Incremental\) -- [SurveyPages](https://api.surveymonkey.com/v3/docs?shell#api-endpoints-get-surveys-survey_id-pages) -- [SurveyQuestions](https://api.surveymonkey.com/v3/docs?shell#api-endpoints-get-surveys-survey_id-pages-page_id-questions) -- [SurveyResponses](https://api.surveymonkey.com/v3/docs?shell#api-endpoints-get-surveys-id-responses-bulk) \(Incremental\) -- [SurveyCollectors](https://api.surveymonkey.com/v3/docs?shell#api-endpoints-get-surveys-survey_id-collectors) -- [Collectors](https://api.surveymonkey.com/v3/docs?shell#api-endpoints-get-collectors-collector_id-) - -### Performance considerations +You can stream the following data from SurveyMonkey using the [sync modes](/using-airbyte/core-concepts/sync-modes/) indicated. -The SurveyMonkey API applies heavy API quotas for default private apps, which have the following limits: +| Stream | Sync mode | +| :------ | :--------- | +| [Surveys](https://api.surveymonkey.com/v3/docs?shell#api-endpoints-get-surveys) | Full refresh, incremental | +| [SurveyPages](https://api.surveymonkey.com/v3/docs?shell#api-endpoints-get-surveys-survey_id-pages) | Full refresh | +| [SurveyQuestions](https://api.surveymonkey.com/v3/docs?shell#api-endpoints-get-surveys-survey_id-pages-page_id-questions) | Full refresh | +| [SurveyResponses](https://api.surveymonkey.com/v3/docs?shell#api-endpoints-get-surveys-id-responses-bulk) | Full refresh, incremental | +| [SurveyCollectors](https://api.surveymonkey.com/v3/docs?shell#api-endpoints-get-surveys-survey_id-collectors) | Full refresh | +| [Collectors](https://api.surveymonkey.com/v3/docs?shell#api-endpoints-get-collectors-collector_id-) | Full refresh | -- 125 requests per minute -- 500 requests per day +## Rate limits -To cover more data from this source we use caching. +SurveyMonkey's API has [default rate limits](https://developer.surveymonkey.com/api/v3/#request-and-response-limits) for draft and private apps. Airbyte uses caching to economize its usage of the API. However, if you need a higher quota, SurveyMonkey offers temporary and permanent options to increase your rate limits. ## Changelog