# SurveyMonkey Apps & Integrations Scraper (`crawlerbros/surveymonkey-apps-scraper`) Actor

Scrape apps and integrations from the SurveyMonkey App Directory. Browse all 100+ integrations, search by keyword, or fetch specific apps by ID. Returns name, tagline, description, publisher, features, pricing type, screenshots, and support links.

- **URL**: https://apify.com/crawlerbros/surveymonkey-apps-scraper.md
- **Developed by:** [Crawler Bros](https://apify.com/crawlerbros) (community)
- **Categories:** Integrations, Automation, Other
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.00 / 1,000 results

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## SurveyMonkey Apps & Integrations Scraper

Scrape the **SurveyMonkey App Directory** (`surveymonkey.com/apps/`) — a catalog of 100+ integrations connecting SurveyMonkey to popular tools like Salesforce, Microsoft Teams, Google Sheets, HubSpot, Mailchimp, Zapier, Slack, and many more.

Data is fetched from SurveyMonkey's public GraphQL API — no authentication, proxy, or API key required.

---

### What you can scrape

| Mode | What it does |
|---|---|
| `browse` | List all apps, optionally filtered by category |
| `search` | Full-text search apps by keyword |
| `getByAppId` | Fetch full details for specific apps by encrypted app ID |

---

### Input parameters

| Parameter | Type | Description |
|---|---|---|
| `mode` | string (required) | `browse`, `search`, or `getByAppId` |
| `query` | string | Keyword to search for (mode=search) |
| `category` | string | Category key to filter (mode=browse) |
| `sortBy` | string | Sort order: `popular`, `az`, `za`, `newest` |
| `fetchDetails` | boolean | Fetch full details (features, pricing, screenshots) for each app |
| `appIds` | array | Encrypted app IDs for getByAppId mode |
| `maxItems` | integer | Maximum records to return (default 100) |

#### Category options

| Key | Title |
|---|---|
| `analytics` | Analytics & Reporting |
| `automation` | Automation |
| `collaboration` | Collaboration |
| `crm` | CRM |
| `customer-support` | Customer Success & Support |
| `digital-web-experience` | Digital/Web Experience |
| `e-commerce` | E-commerce |
| `education` | Education |
| `events` | Events |
| `hris` | HRIS |
| `marketing-email` | Marketing & Email |
| `productivity` | Productivity |
| `rewards` | Rewards |
| `social` | Social |

---

### Output fields

Each record contains:

| Field | Type | Description |
|---|---|---|
| `appId` | string | Encrypted app identifier |
| `name` | string | App name |
| `tagline` | string | Short tagline/summary |
| `isIntegration` | boolean | Whether this is an integration |
| `logoUrl` | string | App logo image URL |
| `appUrl` | string | Full URL to the app's listing page |
| `sourceUrl` | string | Same as appUrl |
| `publisher` | string | Publisher/developer name (with fetchDetails) |
| `fullDescription` | string | HTML-stripped full description (with fetchDetails) |
| `features` | array | List of feature bullet points (with fetchDetails) |
| `pricing` | object | Pricing info: type, label, pricingUrl (with fetchDetails) |
| `screenshotUrls` | array | List of screenshot image URLs (with fetchDetails) |
| `supportUrl` | string | Support/help URL (with fetchDetails) |
| `supportEmail` | string | Support email address (with fetchDetails) |
| `privacyPolicyUrl` | string | Privacy policy URL (with fetchDetails) |
| `recordType` | string | Always `"app"` |
| `scrapedAt` | string | UTC ISO-8601 timestamp |

---

### Example outputs

#### Browse (without details)
```json
{
  "appId": "VPV6PDLNXyscoDCcFChh2w_3D_3D",
  "name": "Microsoft Teams",
  "tagline": "Gather feedback and share analytics right within Teams",
  "logoUrl": "https://surveymonkey-assets.s3.amazonaws.com/papiasset/apps/logos/93c513e0-ecca-4f21-83f5-9959f111c878.png",
  "appUrl": "https://www.surveymonkey.com/apps/VPV6PDLNXyscoDCcFChh2w_3D_3D/details/",
  "sourceUrl": "https://www.surveymonkey.com/apps/VPV6PDLNXyscoDCcFChh2w_3D_3D/details/",
  "recordType": "app",
  "scrapedAt": "2026-05-30T10:00:00+00:00"
}
````

#### Browse (with fetchDetails=true)

```json
{
  "appId": "13055",
  "name": "Microsoft Teams",
  "tagline": "Gather feedback and share analytics right within Teams",
  "isIntegration": false,
  "publisher": "SurveyMonkey",
  "fullDescription": "Manage all your SurveyMonkey and MSFT surveys in one place...",
  "features": [
    "Create surveys with expert templates",
    "Manage and share any survey in Microsoft Teams"
  ],
  "pricing": {
    "type": "FREE",
    "label": "Any Microsoft Teams Plan",
    "pricingUrl": "https://www.microsoft.com/..."
  },
  "screenshotUrls": [
    "https://surveymonkey-assets.s3.amazonaws.com/papiasset/123345/..."
  ],
  "supportUrl": "https://help.surveymonkey.com/contact",
  "privacyPolicyUrl": "https://www.microsoft.com/en/servicesagreement/",
  "recordType": "app",
  "scrapedAt": "2026-05-30T10:00:00+00:00"
}
```

***

### FAQs

**Do I need an API key or login?**\
No — the scraper uses SurveyMonkey's public GraphQL endpoint which requires no authentication.

**What does `fetchDetails` do?**\
When enabled, the actor makes an additional API call for each app to retrieve the full description, features list, pricing info, screenshots, and support links. It takes longer but returns much richer data.

**How many apps are available?**\
SurveyMonkey's app directory contains 100+ published integrations.

**Can I filter by integration type (Built by SurveyMonkey, Built by Partner, etc.)?**\
Not directly via a category filter, but you can use `mode: "search"` with relevant keywords to narrow results.

**What are encrypted app IDs?**\
They are the unique identifiers from SurveyMonkey's system (e.g., `VPV6PDLNXyscoDCcFChh2w_3D_3D`). These appear in the app page URLs on `surveymonkey.com/apps/`.

**Is the data real-time?**\
Yes — data is fetched live from SurveyMonkey's GraphQL API on each run.

# Actor input Schema

## `mode` (type: `string`):

Select the scraping mode.

## `query` (type: `string`):

Keyword to search for (mode=search). E.g. 'salesforce', 'slack', 'google'.

## `category` (type: `string`):

Filter apps by category (used in browse mode). Use the category key value.

## `sortBy` (type: `string`):

How to sort the results.

## `fetchDetails` (type: `boolean`):

If enabled, fetches full app details (description, features, pricing, screenshots) for each app. Slower but more complete.

## `appIds` (type: `array`):

List of encrypted app IDs to fetch (e.g. \['VPV6PDLNXyscoDCcFChh2w\_3D\_3D']). Used only in getByAppId mode.

## `maxItems` (type: `integer`):

Maximum number of apps to return.

## Actor input object example

```json
{
  "mode": "browse",
  "query": "salesforce",
  "category": "",
  "sortBy": "popular",
  "fetchDetails": false,
  "appIds": [],
  "maxItems": 100
}
```

# Actor output Schema

## `apps` (type: `string`):

Dataset containing all scraped SurveyMonkey app/integration records.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "mode": "browse",
    "query": "salesforce",
    "category": "",
    "sortBy": "popular",
    "fetchDetails": false,
    "appIds": [],
    "maxItems": 100
};

// Run the Actor and wait for it to finish
const run = await client.actor("crawlerbros/surveymonkey-apps-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "mode": "browse",
    "query": "salesforce",
    "category": "",
    "sortBy": "popular",
    "fetchDetails": False,
    "appIds": [],
    "maxItems": 100,
}

# Run the Actor and wait for it to finish
run = client.actor("crawlerbros/surveymonkey-apps-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "mode": "browse",
  "query": "salesforce",
  "category": "",
  "sortBy": "popular",
  "fetchDetails": false,
  "appIds": [],
  "maxItems": 100
}' |
apify call crawlerbros/surveymonkey-apps-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=crawlerbros/surveymonkey-apps-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "SurveyMonkey Apps & Integrations Scraper",
        "description": "Scrape apps and integrations from the SurveyMonkey App Directory. Browse all 100+ integrations, search by keyword, or fetch specific apps by ID. Returns name, tagline, description, publisher, features, pricing type, screenshots, and support links.",
        "version": "1.0",
        "x-build-id": "BF8NpgEQLKc3tkM7J"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/crawlerbros~surveymonkey-apps-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-crawlerbros-surveymonkey-apps-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/crawlerbros~surveymonkey-apps-scraper/runs": {
            "post": {
                "operationId": "runs-sync-crawlerbros-surveymonkey-apps-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/crawlerbros~surveymonkey-apps-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-crawlerbros-surveymonkey-apps-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "mode"
                ],
                "properties": {
                    "mode": {
                        "title": "Mode",
                        "enum": [
                            "browse",
                            "search",
                            "getByAppId"
                        ],
                        "type": "string",
                        "description": "Select the scraping mode.",
                        "default": "browse"
                    },
                    "query": {
                        "title": "Search query",
                        "type": "string",
                        "description": "Keyword to search for (mode=search). E.g. 'salesforce', 'slack', 'google'."
                    },
                    "category": {
                        "title": "Category",
                        "enum": [
                            "",
                            "analytics",
                            "automation",
                            "collaboration",
                            "crm",
                            "customer-support",
                            "digital-web-experience",
                            "e-commerce",
                            "education",
                            "events",
                            "hris",
                            "marketing-email",
                            "productivity",
                            "rewards",
                            "social"
                        ],
                        "type": "string",
                        "description": "Filter apps by category (used in browse mode). Use the category key value.",
                        "default": ""
                    },
                    "sortBy": {
                        "title": "Sort order",
                        "enum": [
                            "popular",
                            "alphabetical",
                            "featured",
                            "relevance"
                        ],
                        "type": "string",
                        "description": "How to sort the results.",
                        "default": "popular"
                    },
                    "fetchDetails": {
                        "title": "Fetch full details",
                        "type": "boolean",
                        "description": "If enabled, fetches full app details (description, features, pricing, screenshots) for each app. Slower but more complete.",
                        "default": false
                    },
                    "appIds": {
                        "title": "App IDs (mode=getByAppId)",
                        "type": "array",
                        "description": "List of encrypted app IDs to fetch (e.g. ['VPV6PDLNXyscoDCcFChh2w_3D_3D']). Used only in getByAppId mode.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "maxItems": {
                        "title": "Max items",
                        "minimum": 1,
                        "maximum": 10000,
                        "type": "integer",
                        "description": "Maximum number of apps to return.",
                        "default": 100
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
