Skip to main content
Unlisted page
This page is unlisted. Search engines will not index it, and only users having a direct link can access it.

SurveyMonkey

This documentation for the SurveyMonkey integration describes the technical capabilities of this integration, including authorization, scopes/permissions, and utilized endpoints. For more information on how to integrate SurveyMonkey, visit our connection instructions.

Version

This integration utilizes the SurveyMonkey API v3.

Base URL

The base URL used for all SurveyMonkey API endpoints:
https://api.surveymonkey.com/v3

Authentication & Authorization

The DataGrail SurveyMonkey integration connects using OAuth 2.0.

Scopes

The SurveyMonkey integration requires specific scopes that must be granted in order to function for a given capability.

ScopeAccessDeletion
contacts_read
collectors_read
surveys_read
responses_read
responses_read_detail
contacts_write
collectors_write
responses_write

Endpoints Utilized

DataGrail uses the following endpoints to authorize and test the connection:


Limits

Limits in SurveyMonkey are calculated using the leaky bucket algorithm. All requests that are made after rate limits have been exceeded are throttled and an HTTP 429 Too Many Requests error is returned. Requests succeed again after enough requests have emptied out of the bucket.

  • DataGrail supports requests throttling to stay within 70-80% of specified service rate limits.
  • DataGrail processes API responses with HTTP 429 status to interrupt requests, waiting and retrying (using an exponential backoff strategy).

Capabilities

Access

DataGrail's SurveyMonkey integration provides Synchronous Access capabilities for the following supported identifier category: Email.

Data Interactions

For Access requests, DataGrail will take the following actions:

  1. Search contacts using configured identifiers.
  2. Fetch all contact lists.
  3. Search contacts using configured identifiers in each of the collected contact lists.
  4. Fetch all surveys owned or shared with the authenticated user.
  5. Fetch collectors for each of the collected surveys.
  6. Fetch recipients for each of the collected collectors.
  7. Select *recipients with email matches to the configured identifiers.
  8. Fetch a list of responses using configured identifiers, including answers to all questions for each of the collected collectors.
  9. Fetch questions for each of the collected responses.
  10. Build related responses collection.

Endpoints Utilized

MethodEndpointPurposeDocs
GET/collectors/collector_id/recipientsGet a list of recipients
GET/collectors/collector_id/responses/bulkGet a list of full expanded responses
GET/contact_listsGet contact lists
GET/contact_lists/list_id/contactsGet all contacts in a contact list
GET/contactsGet contacts
GET/surveysGet a list of surveys
GET/surveys/survey_id/collectorsGet a list of collectors for a given survey
GET/surveys/survey_id/pages/page_id/questions/question_idGet question

Deletion

DataGrail's SurveyMonkey integration provides Synchronous Deletion capabilities for the following supported identifier category: Email.

Data Interactions

For Deletion requests, DataGrail will take the following actions:

  1. Delete a contact.
  2. Delete a recipient.
  3. Delete a response.

Endpoints Utilized


 

Need help?
If you have any questions, please reach out to your dedicated Account Manager or contact us at support@datagrail.io.

Disclaimer: The information contained in this message does not constitute as legal advice. We would advise seeking professional counsel before acting on or interpreting any material.