Integrations

SurveyMonkey

Connect SurveyMonkey to build surveys, collect and read responses, manage collectors and contacts, and view analytics.

API credentialsPaid plan requiredForms & SurveysSurveyMonkey API docs

You end up with the Access Token from a Private app registered in the SurveyMonkey developer portal, plus your account's data region (us, eu or ca), pasted into PopMCP.

Paid plan required before this connector works

A SurveyMonkey app runs in draft mode for only 90 days; to keep it alive for your own team you must deploy it as a private app, and SurveyMonkey's help centre states an Enterprise plan is required to deploy a private app. A public app - one any SurveyMonkey account can connect - must additionally be reviewed and approved by SurveyMonkey.

Typical wait
None to start (draft app credentials work immediately); Enterprise is a sales conversation, and public app review is not given a published SLA
Cost
No fee for the developer app or the review itself. The gate is the plan: SurveyMonkey's help centre states "An Enterprise plan is required to deploy a private app", and Enterprise is quote-only (contact sales). SurveyMonkey publishes no API price list, so treat any specific per-seat figure you see quoted elsewhere as unverified.
Blocked until approved
After the 90-day draft window an undeployed app is disabled and its tokens stop working. Draft apps are capped at 120 requests/minute and 500 requests/day, and are usable only from the SurveyMonkey account the app is registered to, so you cannot connect a client's or colleague's account. Deploying private removes the review requirement ("Private apps don't need to be reviewed by SurveyMonkey") but gates you behind Enterprise, and every user must be a logged-in member of the SurveyMonkey team the app is registered to on a paid plan that offers direct API access. Public apps instead need SurveyMonkey sign-off, and the Create/Modify Responses and Create/Modify Surveys scopes require explicit approval; View Response Details and Create/Modify Collectors additionally require the connecting user to be on a paid plan.
Works meanwhile
Register a draft app at the SurveyMonkey developer portal and get a client ID, secret and access token instantly. Reading surveys, collectors and responses on your own account works right away within the 500/day draft limit, which is enough to build and test the whole integration.

Where to apply: Create the app at https://developer.surveymonkey.com/apps/ (My Apps > Add a New App). Deploy from the app's Settings tab (Private or Public); for a public app use the Listings tab in My Apps to create a listing and submit it for approval. Extensions to the 90-day draft window and the restricted write scopes are requested by emailing api-support@surveymonkey.com.

  • The 90-day clock starts at app registration, not at first API call - people lose working integrations because they never deployed.
  • Every user of a private app must sit on the same SurveyMonkey team and hold a paid plan that includes direct API access.
  • Public app criteria are strict: the app must offer unique value, must not duplicate SurveyMonkey's own survey features, must not use 'SurveyMonkey' or generic/versioned wording in its name, needs HTTPS with a valid certificate and reachable customer support, and must reach at least five OAuth sign-ins in the first three months.
  • The write scopes (Create/Modify Surveys, Create/Modify Responses) are not self-serve on public apps - selecting them in the console is not the same as being approved for them.
Setup time
6 min
Auth
API credentials
API base URL
https://api.surveymonkey.com/v3
Rate limits
Draft and Private apps start at 120 requests per minute and 500 requests per day. The daily counter resets at 12:00 AM GMT, and higher daily limits can be purchased. SurveyMonkey allows three overages of up to 150 percent in a rolling 30 day window before enforcing.

Before you begin

  • A SurveyMonkey account. Anyone can register a draft app, whose access token queries their own account for 90 days
  • A paid SurveyMonkey plan offering direct API access, needed to deploy the app as Private before the draft window ends
  • All users of a Private app must belong to the same SurveyMonkey team
  • A paid plan for unlimited response detail, since Basic plans are capped at 25 responses per survey
  • Knowledge of whether the account sits on the US, EU or Canada data region

Get your credentials

Sign in to the developer portal

Go to developer.surveymonkey.com and sign in with the SurveyMonkey login that owns the surveys.

Open this screen →

Add a new Private app

Open the MY APPS tab and click Add a New App. Name it PopMCP, select Private App, then click Create App.

Open this screen →

developer.surveymonkey.com/apps
Search the docsops@example.com

My Apps

Apps registered against your SurveyMonkey account.

DocsMy AppsAPI Console
Add a New App
App nameTypeStatusCreated
PopMCPApp ID 8891234560Private AppDraftMar 4, 2026
Internal reportingApp ID 1234567890Private AppDeployedJan 12, 2026

A newly registered app starts as a Draft.

Tick the scopes the connector needs

Open the app's Scopes and mark View Surveys, View Responses and View Response Details as required. Add the create and modify scopes only if the agent should write.

developer.surveymonkey.com/apps/8891234560/settings
Search the docsops@example.com
My Apps / PopMCP

PopMCP

Private App

SettingsScopesListingDeploy
Scopes
View Surveys (surveys_read)No paid plan required
View Responses (responses_read)Response counts and summaries
View Response Details (responses_read_detail)Basic plans see only 25 responses per survey
Create/Modify Surveys (surveys_write)Only if the agent should build surveys
Create/Modify Collectors (collectors_write)Paid plan needed for anything but weblink collectors
View Contacts (contacts_read)Contact lists and recipients
Save Settings

Widening scopes after deployment requires redeploying the app.

Copy the Access Token

Open the app's Settings and copy the value labelled Access Token. Do not copy the Client ID or Secret.

developer.surveymonkey.com/apps/8891234560/settings
Search the docsops@example.com
My Apps / PopMCP

PopMCP

Private App

SettingsScopesListingDeploy
The Access Token field appears only when the app type is set to Private.
Credentials
Client ID
1234567890
Secret
sm_secret_****b71e
Access Token
cH1kZ****9Qd2
Copy Access Token

PopMCP asks for the Access Token, not the Client ID or Secret.

Deploy the app as Private

Open Deploy and publish the app as a Private App before the 90 day draft window ends.

Paste the token and region into PopMCP

In PopMCP's SurveyMonkey connector paste the value into Access token, set Data region to us, eu or ca, then save.

Connect in PopMCP

Open your workspace, choose SurveyMonkey in the marketplace, and fill in the connect dialog:

FieldWhat to enter
Access tokensecretCreate an app at developer.surveymonkey.com (My Apps → New app → Private), then copy the Access Token from the app's Settings and paste it here. Tick the scopes you need (View/Create Surveys, View Responses + View Response Details, View/Create Collectors, Contacts, Webhooks). Note: a free/Draft app's token works for 90 days; a deployed Private app (paid plan with API access) gives a token that doesn't expire. Stored encrypted.Encrypted with AES-256-GCM on save and never shown again.
Data region (us, eu, or ca)textWhere your SurveyMonkey account's data is hosted: us (default, api.surveymonkey.com), eu (api.eu.surveymonkey.com), or ca (api.surveymonkey.ca). A token only works against its own region's host. Leave as us unless your account uses EU or Canada data residency; if the connection is rejected, try the other region.

PopMCP verifies the credential against SurveyMonkey immediately. On success the connection flips to Verified and its MCP tools are provisioned.

Verify it worked

PopMCP shows the SurveyMonkey connector as Connected, and a test call listing your surveys returns their titles and IDs.

Troubleshooting

401 with "Client authentication failed"

Why: The Client ID or Secret was pasted instead of the Access Token, or the token belongs to a different account.

Fix: Copy the value labelled Access Token in the app's Settings and re-paste it.

The Access Token field is not visible in Settings

Why: The app type is not set to Private.

Fix: Change the app type to Private App in the app's Settings, save, then reload the page.

The connection worked for a while, then stopped

Why: The app was left as a Draft, and a draft app is disabled 90 days after registration.

Fix: Deploy the app as a Private app on a plan with direct API access, then re-copy the token into PopMCP.

Every call 404s or is rejected even with a fresh token

Why: Wrong data region. A token only works against api.surveymonkey.com, api.eu.surveymonkey.com or api.surveymonkey.ca respectively.

Fix: Change the Data region field to eu or ca and reconnect.

"Client revoked access grant"

Why: Someone removed the app's authorisation from the SurveyMonkey account.

Fix: Re-authorise the app in the developer portal and copy the token again.

Only 25 responses come back per survey, or calls fail with error 1005

Why: The account is on a Basic plan, which caps responses_read_detail at 25 responses per survey.

Fix: Upgrade the SurveyMonkey plan for unlimited response access. Nothing changes on the PopMCP side.

Reference

On this page