> ## Documentation Index
> Fetch the complete documentation index at: https://docs.scrapengine.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Bing Search

> Execute a Bing search and retrieve parsed results with web pages, images, videos, and news

## Overview

The `/bing/search` endpoint executes a Bing search query and returns structured, parsed results. This API handles anti-bot measures and provides clean data extraction from Bing's search results.

## Parameters

### Query Parameters

<ParamField query="q" type="string" required>
  The search query
</ParamField>

<ParamField query="mkt" type="string" default="en-US">
  Market code in language-country format (e.g., `en-US`, `en-GB`, `de-DE`, `fr-FR`)
</ParamField>

<ParamField query="cc" type="string">
  Country code to limit results (e.g., `US`, `GB`, `DE`)
</ParamField>

<ParamField query="setLang" type="string" default="en">
  UI language code (e.g., `en`, `es`, `fr`, `de`)
</ParamField>

<ParamField query="count" type="number" default="10">
  Number of results to return (1-50)
</ParamField>

<ParamField query="offset" type="number" default="0">
  Offset for pagination (e.g., `0` for first page, `10` for second)
</ParamField>

<ParamField query="device" type="string" default="desktop">
  Device type to emulate. Options: `desktop`, `mobile`, `tablet`
</ParamField>

<ParamField query="location" type="string">
  Location for geo-targeted results (e.g., `New York, USA`)
</ParamField>

<ParamField query="safeSearch" type="string" default="Moderate">
  Safe search mode. Options: `Off`, `Moderate`, `Strict`
</ParamField>

<ParamField query="freshness" type="string">
  Time filter for results. Options: `Day`, `Week`, `Month`
</ParamField>

<ParamField query="responseFilter" type="string">
  Filter response type. Options: `Webpages`, `Images`, `Videos`, `News`
</ParamField>

<ParamField query="textDecorations" type="boolean" default="false">
  Add bold markers around search terms in snippets
</ParamField>

<ParamField query="textFormat" type="string" default="Raw">
  Text format for snippets. Options: `Raw`, `HTML`
</ParamField>

<ParamField query="rawHtml" type="boolean" default="false">
  Return raw HTML instead of parsed results
</ParamField>

<ParamField query="async" type="boolean" default="false">
  Async mode - returns job ID immediately for later retrieval
</ParamField>

## Example Requests

### Basic Search

<CodeGroup>
  ```bash cURL theme={null}
  curl -X GET "https://api.scrapengine.io/api/v1/bing/search?q=artificial%20intelligence&count=10" \
    -H "Authorization: Bearer YOUR_API_KEY"
  ```

  ```javascript JavaScript theme={null}
  const params = new URLSearchParams({
    q: "artificial intelligence",
    count: "10",
  });

  const response = await fetch(
    `https://api.scrapengine.io/api/v1/bing/search?${params}`,
    {
      headers: {
        Authorization: "Bearer YOUR_API_KEY",
      },
    }
  );

  const data = await response.json();
  console.log(data);
  ```

  ```python Python theme={null}
  import requests

  url = "https://api.scrapengine.io/api/v1/bing/search"
  headers = {"Authorization": "Bearer YOUR_API_KEY"}
  params = {
      "q": "artificial intelligence",
      "count": 10
  }

  response = requests.get(url, headers=headers, params=params)
  print(response.json())
  ```
</CodeGroup>

### News Search with Freshness Filter

<CodeGroup>
  ```bash cURL theme={null}
  curl -X GET "https://api.scrapengine.io/api/v1/bing/search?q=technology&responseFilter=News&freshness=Day" \
    -H "Authorization: Bearer YOUR_API_KEY"
  ```

  ```javascript JavaScript theme={null}
  const params = new URLSearchParams({
    q: "technology",
    responseFilter: "News",
    freshness: "Day",
  });

  const response = await fetch(
    `https://api.scrapengine.io/api/v1/bing/search?${params}`,
    {
      headers: {
        Authorization: "Bearer YOUR_API_KEY",
      },
    }
  );

  const data = await response.json();
  console.log(data);
  ```

  ```python Python theme={null}
  import requests

  url = "https://api.scrapengine.io/api/v1/bing/search"
  headers = {"Authorization": "Bearer YOUR_API_KEY"}
  params = {
      "q": "technology",
      "responseFilter": "News",
      "freshness": "Day"
  }

  response = requests.get(url, headers=headers, params=params)
  print(response.json())
  ```
</CodeGroup>

### Localized Search

<CodeGroup>
  ```bash cURL theme={null}
  curl -X GET "https://api.scrapengine.io/api/v1/bing/search?q=restaurants&mkt=de-DE&cc=DE&location=Berlin" \
    -H "Authorization: Bearer YOUR_API_KEY"
  ```

  ```javascript JavaScript theme={null}
  const params = new URLSearchParams({
    q: "restaurants",
    mkt: "de-DE",
    cc: "DE",
    location: "Berlin",
  });

  const response = await fetch(
    `https://api.scrapengine.io/api/v1/bing/search?${params}`,
    {
      headers: {
        Authorization: "Bearer YOUR_API_KEY",
      },
    }
  );

  const data = await response.json();
  console.log(data);
  ```

  ```python Python theme={null}
  import requests

  url = "https://api.scrapengine.io/api/v1/bing/search"
  headers = {"Authorization": "Bearer YOUR_API_KEY"}
  params = {
      "q": "restaurants",
      "mkt": "de-DE",
      "cc": "DE",
      "location": "Berlin"
  }

  response = requests.get(url, headers=headers, params=params)
  print(response.json())
  ```
</CodeGroup>

## Response

### Success Response (200)

Returns parsed search results:

```json theme={null}
{
  "searchInformation": {
    "totalEstimatedMatches": 25400000,
    "searchTime": 0.32
  },
  "webPages": [
    {
      "position": 1,
      "title": "What is Artificial Intelligence (AI)? | IBM",
      "url": "https://www.ibm.com/topics/artificial-intelligence",
      "displayUrl": "www.ibm.com › topics › artificial-intelligence",
      "snippet": "Artificial intelligence (AI) is technology that enables computers and machines to simulate human intelligence...",
      "datePublished": "2024-01-15"
    },
    {
      "position": 2,
      "title": "Artificial Intelligence - MIT Technology Review",
      "url": "https://www.technologyreview.com/artificial-intelligence/",
      "displayUrl": "www.technologyreview.com › artificial-intelligence",
      "snippet": "Coverage of artificial intelligence and machine learning from MIT Technology Review..."
    }
  ],
  "relatedSearches": [
    {
      "text": "artificial intelligence examples",
      "displayText": "AI examples"
    },
    {
      "text": "artificial intelligence jobs",
      "displayText": "AI jobs"
    }
  ],
  "pagination": {
    "currentOffset": 0,
    "nextOffset": 10,
    "totalEstimatedMatches": 25400000
  }
}
```

### Response Headers

| Header                | Description                       |
| --------------------- | --------------------------------- |
| `x-remaining-credits` | Number of API credits remaining   |
| `x-trace-id`          | Unique identifier for the request |

### Error Responses

| Status | Description                               |
| ------ | ----------------------------------------- |
| `400`  | Bad Request - Invalid query parameters    |
| `401`  | Unauthorized - Invalid or missing API key |
| `500`  | Internal Server Error                     |

## Use Cases

* **Alternative search data**: Get search results from Bing as an alternative to Google
* **SEO research**: Compare rankings across different search engines
* **Market research**: Analyze search trends on Bing's platform
* **News aggregation**: Collect news articles from Bing News
* **Image search**: Find images using Bing's image search
* **Video discovery**: Search for videos across the web
