# Microsoft Copilot Search Scraper (`apify/microsoft-copilot-search-scraper`) Actor

Scrape Microsoft Copilot answers at scale without an API. Extract AI-generated responses, cited sources, URLs, and follow-up questions for any prompt. Track brand visibility in AI search, monitor citations, and run GEO research. Export to JSON, CSV, or Excel.

- **URL**: https://apify.com/apify/microsoft-copilot-search-scraper.md
- **Developed by:** [Apify](https://apify.com/apify) (Apify)
- **Categories:** SEO tools, AI, Automation
- **Stats:** 4 total users, 0 monthly users, 60.8% runs succeeded, 0 bookmarks
- **User rating**: 5.00 out of 5 stars

## Pricing

from $3.00 / 1,000 microsoft copilot searches

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
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

## What does Microsoft Copilot Search Scraper do?

**Microsoft Copilot Search Scraper** extracts **Microsoft Copilot search results** at scale. Enter your search queries and get back clean, structured data - including Microsoft Copilot's **AI-generated answer text**, cited sources with URLs, inline citations, any tables Microsoft Copilot returned, and metadata - ready for analysis, monitoring, or integration into your workflows.

Microsoft Copilot is Microsoft's conversational AI search experience that generates detailed, multi-paragraph answers with cited sources. This Actor wraps a battle-tested [Google Search Scraper](https://apify.com/apify/google-search-scraper) so you don't need to worry about proxies, browser fingerprinting, or parsing - just provide your queries and collect the output.

### What can Microsoft Copilot Search Scraper do?

- **Extract Microsoft Copilot answers** - Get the full AI-generated text that Microsoft Copilot produces for each query
- **Choose the Microsoft Copilot mode** - Run each query in `chat`, `reasoning`, `smart`, or `study` mode to match your use case
- **Collect cited sources** - Capture every source title and URL that Microsoft Copilot references in its answer, plus inline citations
- **Capture tables** - Get any structured tables Microsoft Copilot includes in its answer
- **Structured JSON output** - Every result is returned as clean JSON, ready for downstream processing
- **Apify platform benefits** - Access results via REST API, schedule recurring runs with cron expressions, integrate with Zapier/Make/Google Sheets, and leverage automatic proxy rotation
- **Batch processing** - Submit hundreds of queries in a single run and collect all results from one dataset

### What data can you extract?

| Field             | Type   | Description                                                                                      |
| ----------------- | ------ | ------------------------------------------------------------------------------------------------ |
| `query`           | String | The search query you submitted                                                                   |
| `text`            | String | The full Microsoft Copilot answer                                                                |
| `tables`          | Array  | Structured tables Microsoft Copilot included in its answer, each with a title, columns, and rows |
| `sources`         | Array  | List of cited sources, each with `id`, `title`, `url`, and `section` (`citations`/`more`)        |
| `inlineCitations` | Array  | Inline citations linking spans of the answer text to their source                                |

### How to scrape Microsoft Copilot results

1. **Go to the Actor page** - Navigate to [Microsoft Copilot Search Scraper](https://apify.com/apify/microsoft-copilot-search-scraper) on Apify Store and click **Try for free**.
2. **Enter your search queries** - In the Input tab, type or paste your queries into the **Queries** field, one per line. For example: `best project management tools`, `how does photosynthesis work`.
3. **Pick a Microsoft Copilot mode** _(optional)_ - Choose `chat`, `reasoning`, `smart`, or `study` depending on how detailed you want the answer to be.
4. **Start the run** - Click **Start** and wait for the Actor to process your queries. The run time depends on how many queries you submitted - most runs finish within a few minutes.
5. **Export your data** - Once the run completes, go to the **Dataset** tab to preview results. Export as JSON, CSV, Excel, or connect directly to Google Sheets, Zapier, or Make.
6. **Automate with Apify MCP** - Connect to Apify from your AI tool with [Apify MCP](https://docs.apify.com/platform/integrations/mcp) and let your agent run and schedule the Actor and get you results automatically.

### Input parameters

| Parameter                         | Description                                                                                                                                            |
| --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Queries**                       | Your search queries, one per line. Supports bulk input.                                                                                                |
| **Microsoft Copilot search mode** | Which Microsoft Copilot chat mode to use: `chat` (quick answers), `reasoning` (deep analysis), `smart` (balanced), or `study` (detailed, educational). |

For the full list of options, see the **Input** tab on the Actor page.

### Output example

```json
{
    "query": "what are the best crm platforms",
    "text": "The best CRM depends on who you are and what your bottleneck is.\n\n- **HubSpot:** A favorite for user experience - intuitive, with a generous free tier.\n- **Zoho CRM:** The \"value-for-money\" alternative - highly customizable with built-in AI assistants.\n- **Pipedrive:** A clean, drag-and-drop pipeline that sales reps love.\n- **Salesforce:** The enterprise standard - the most powerful and extensible, but with a steeper learning curve.",
    "tables": [],
    "sources": [
        {
            "id": 1,
            "url": "https://www.pcmag.com/picks/the-best-crm-software",
            "title": "The Best CRM Software We've Tested for 2026 | PCMag",
            "section": "citations"
        }
    ],
    "inlineCitations": [
        {
            "id": 1,
            "url": "https://www.pcmag.com/picks/the-best-crm-software",
            "title": "The Best CRM Software We've Tested for 2026 | PCMag",
            "textAnchor": "HubSpot"
        }
    ]
}
````

### Failed queries

Every query Microsoft Copilot can't return a result for is written to a separate **`errors`** dataset instead of the main one - so your results stay clean and you can still see exactly which queries failed and why. Open it from the **Failed queries** link on the run's output, or under **Storage → Datasets**.

```json
{
    "query": "best web scraping tools 2025",
    "error": "No result returned for the query."
}
```

### Other AI search scrapers on Apify

Microsoft Copilot is just one piece of the AI search landscape. Monitor your brand across all major AI-powered search engines:

- **[Google AI Overviews Scraper](https://apify.com/apify/google-ai-overviews-scraper)** - Extract Google AI Overview results, the AI summaries that appear directly on the search results page. Ideal for tracking how Google's AI snippets represent your brand.
- **[Google AI Mode Scraper](https://apify.com/apify/google-ai-mode-scraper)** - Extract Google AI Mode results, the conversational AI answers Google generates for a search query. Track how AI Mode describes your brand and which sources it cites.
- **[Gemini Search Scraper](https://apify.com/apify/gemini-search-scraper)** - Extract Google Gemini search results, the conversational AI answers Gemini generates with cited sources. Track how Gemini describes your brand and which sources it cites.
- **[ChatGPT Search Scraper](https://apify.com/apify/chatgpt-search-scraper)** - Extract AI-generated answers from ChatGPT search and their cited sources. Track how ChatGPT describes your brand and which sources it cites.
- **[Perplexity Search Scraper](https://apify.com/apify/perplexity-search-scraper)** - Extract AI-generated answers from Perplexity and their cited sources. Track how Perplexity describes your brand and which sources it cites.
- **[Google Search Results Scraper](https://apify.com/apify/google-search-scraper)** - Extract SERPs organic and paid results, review ratings and People Also Ask. Ideal for AI SEO workflows.

Use these Actors together for comprehensive **AI search monitoring** - understand how every major AI engine presents information about your brand, products, or topics.

### Frequently asked questions

#### Is it legal to scrape Microsoft Copilot results?

Web scraping of publicly available data is generally legal in most jurisdictions. Microsoft Copilot results are publicly accessible to anyone performing a search. This Actor collects the same information a regular user would see. Always review and comply with applicable terms of service and local regulations for your specific use case.

#### What is Microsoft Copilot?

Microsoft Copilot is Microsoft's conversational AI search experience. Instead of a list of blue links, it generates a detailed answer to your query and cites the web sources it drew from. Microsoft Copilot Search Scraper returns that answer text, any tables, and its cited sources as structured data for any query you submit.

#### What are the Microsoft Copilot search modes?

Microsoft Copilot offers several chat modes, and you can pick one per run: **chat** for quick conversational answers, **reasoning** for complex questions that need logical depth, **smart** for a balance of speed and reasoning (a good default for most use cases), and **study** for detailed, educational, research-oriented answers.

#### What are the best use cases for Microsoft Copilot scraping?

The most popular use cases include **SEO and brand monitoring** (track how Microsoft Copilot describes your brand), **competitive analysis** (compare how Microsoft Copilot answers queries about you vs. competitors), **content research** (discover what sources Microsoft Copilot cites for your target topics), and **AI search trend tracking** (monitor how AI-generated answers evolve over time).

#### Can I integrate Microsoft Copilot Search Scraper with other tools?

Yes. Apify offers native integrations with **Zapier**, **Make**, **Google Sheets**, **Slack**, **webhooks**, and more. You can also use the **Apify API** or **Apify Python/JavaScript clients** to pull data into your own applications, dashboards, or data pipelines. Schedule runs on any cadence - hourly, daily, weekly - for fully automated monitoring.

# Actor input Schema

## `queries` (type: `string`):

The prompts/queries to send to Microsoft Copilot. Enter one query per line.

## `copilotSearch` (type: `object`):

Options that control how Microsoft Copilot answers your queries.

## Actor input object example

```json
{
  "queries": "best SEO tools\napify web scraping",
  "copilotSearch": {
    "copilotSearchMode": "smart"
  }
}
```

# Actor output Schema

## `dataset` (type: `string`):

Dataset containing all scraped data

## `errors` (type: `string`):

Queries that returned no Copilot result, with the failure reason

# 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 = {
    "queries": "What are the top 5 CRM tools",
    "copilotSearch": {
        "copilotSearchMode": "smart"
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("apify/microsoft-copilot-search-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 = {
    "queries": "What are the top 5 CRM tools",
    "copilotSearch": { "copilotSearchMode": "smart" },
}

# Run the Actor and wait for it to finish
run = client.actor("apify/microsoft-copilot-search-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 '{
  "queries": "What are the top 5 CRM tools",
  "copilotSearch": {
    "copilotSearchMode": "smart"
  }
}' |
apify call apify/microsoft-copilot-search-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Microsoft Copilot Search Scraper",
        "description": "Scrape Microsoft Copilot answers at scale without an API. Extract AI-generated responses, cited sources, URLs, and follow-up questions for any prompt. Track brand visibility in AI search, monitor citations, and run GEO research. Export to JSON, CSV, or Excel.",
        "version": "0.0",
        "x-build-id": "7NuscMENg3UALDmA0"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/apify~microsoft-copilot-search-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-apify-microsoft-copilot-search-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/apify~microsoft-copilot-search-scraper/runs": {
            "post": {
                "operationId": "runs-sync-apify-microsoft-copilot-search-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/apify~microsoft-copilot-search-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-apify-microsoft-copilot-search-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": [
                    "queries"
                ],
                "properties": {
                    "queries": {
                        "title": "Search query/queries",
                        "pattern": "[^\\s]+",
                        "type": "string",
                        "description": "The prompts/queries to send to Microsoft Copilot. Enter one query per line."
                    },
                    "copilotSearch": {
                        "title": "Microsoft Copilot options",
                        "type": "object",
                        "description": "Options that control how Microsoft Copilot answers your queries.",
                        "properties": {
                            "copilotSearchMode": {
                                "title": "Microsoft Copilot search mode",
                                "type": "string",
                                "description": "Select which Microsoft Copilot chat mode to use for the request:<br><br>• <b>chat</b> - Standard conversational mode. Best for general queries and quick answers.<br>• <b>reasoning</b> - Deep analytical mode. Best for complex questions requiring logical depth.<br>• <b>smart</b> - Balanced mode combining speed and reasoning for most use cases.<br>• <b>study</b> - Detailed explanatory mode. Best for educational and research-oriented prompts.",
                                "editor": "select",
                                "enum": [
                                    "chat",
                                    "reasoning",
                                    "smart",
                                    "study"
                                ],
                                "enumTitles": [
                                    "Chat",
                                    "Reasoning",
                                    "Smart",
                                    "Study"
                                ]
                            }
                        },
                        "default": {
                            "copilotSearchMode": "smart"
                        }
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
