SurveyMonkey
Connect SurveyMonkey to build surveys, collect and read responses, manage collectors and contacts, and view analytics.
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.
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.
My Apps
Apps registered against your SurveyMonkey account.
| App name | Type | Status | Created |
|---|---|---|---|
| PopMCPApp ID 8891234560 | Private App | Draft | Mar 4, 2026 |
| Internal reportingApp ID 1234567890 | Private App | Deployed | Jan 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.
PopMCP
Private App
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.
PopMCP
Private App
- Client ID
- 1234567890
- Secret
- sm_secret_****b71e
- Access Token
- cH1kZ****9Qd2
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:
| Field | What to enter |
|---|---|
| Access tokensecret | Create 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)text | Where 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.