Skip to main content
GET
https://api.crawleo.dev
/
search
Bing Search API
curl --request GET \
  --url https://api.crawleo.dev/search \
  --header 'x-api-key: <x-api-key>'
{
  "status": "<string>",
  "data": {
    "query": "<string>",
    "pages_fetched": 123,
    "time_used": 123,
    "pages": {
      "total_results": "<string>",
      "search_results": [
        {
          "title": "<string>",
          "link": "<string>",
          "date": {},
          "snippet": "<string>",
          "source": "<string>"
        }
      ],
      "related_queries": [
        {}
      ],
      "page_content": {
        "enhanced_html": "<string>",
        "page_markdown": "<string>"
      }
    },
    "credits": 123
  }
}

Overview

The Bing Search API provides real-time web search powered by Bing, with optional automatic crawling and content extraction of search results. It supports granular control over SERP enrichments and multiple output formats (HTML, Markdown, plain text) — making it the ideal choice for LLM applications, RAG pipelines, and AI agents.
Which Search API should I use? Use the Bing Search API for LLM/RAG workflows — it supports auto-crawling and returns page content in Markdown. Use the Google Search API for SEO monitoring, lead generation, and structured SERP analysis.

Endpoint

GET https://api.crawleo.dev/search

Parameters

Required Headers

x-api-key
string
required
Your Crawleo API key for authentication. (Alternatively, use the Authorization: Bearer YOUR_API_KEY header.)Example: x-api-key: YOUR_API_KEY or Authorization: Bearer YOUR_API_KEY

Required Parameters

query
string
required
The search query string.

Pagination Parameters

max_pages
integer
default:"1"
Maximum number of search result pages to fetch. Each page costs 10 credits.

Localization Parameters

setLang
string
Language code for search results (e.g., en, es, fr, de).
cc
string
Country code for search results (e.g., US, GB, DE).
geolocation
string
Geographic location for localized results. Use random for randomized geolocation.

Device Simulation

device
string
default:"desktop"
Device type to simulate. Options: desktop, mobile, tablet.

SERP Enrichment Toggles

copilot_answer
boolean
default:"true"
Include Copilot AI-generated answers in the SERP results.
questions_answers
boolean
default:"true"
Include “People Also Ask” question-and-answer cards in the results.
Include related search queries suggestions.
sidebar
boolean
default:"true"
Include sidebar data (knowledge panels, local results, etc.).
direct_answer
boolean
default:"true"
Include direct answer boxes and instant answers.

Page Content Format Parameters

raw_html
boolean
default:"false"
Return the original HTML source of each result page.
enhanced_html
boolean
default:"false"
Return clean HTML with ads, scripts, and tracking removed.
page_text
boolean
default:"false"
Return plain text content extracted from each result page.
markdown
boolean
default:"false"
Return content as structured Markdown (recommended for RAG/LLM).

Auto-Crawling

auto_crawling
boolean
default:"false"
Automatically crawl each search result URL and include page content.

Example Requests

curl -X GET "https://api.crawleo.dev/search?query=machine%20learning&count=10" \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Accept: application/json"

Search with Auto-Crawling and Markdown Output

curl -X GET "https://api.crawleo.dev/search?query=python%20tutorials&count=5&auto_crawling=true&markdown=true" \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Accept: application/json"
curl -X GET \
  "https://api.crawleo.dev/search?query=Who+is+Elon+Musk%3F&max_pages=1&device=desktop&setLang=en&geolocation=random&enhanced_html=true&raw_html=false&page_text=false&markdown=true&auto_crawling=true&copilot_answer=true&questions_answers=true&related_queries=true&sidebar=true&direct_answer=true" \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Accept: application/json"
curl -X GET "https://api.crawleo.dev/search?query=news&setLang=de&cc=DE&count=10" \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Accept: application/json"

Response

A successful response returns search results with optional crawled content:
{
  "status": "success",
  "data": {
    "query": "Now in Android",
    "pages_fetched": 1,
    "time_used": 1.2119622230529785,
    "pages": {
      "1": {
        "total_results": "About 41,100 results",
        "search_results": [
          {
            "title": "GitHub - android/nowinandroid: A fully functional Android app built ...",
            "link": "https://github.com/android/nowinandroid",
            "date": null,
            "snippet": "Learn how this app was designed and built in the design case study, architecture learning journey and modularization learning journey.",
            "source": "Github"
          },
          {
            "title": "Now in Android | Android Developers",
            "link": "https://developer.android.com/series/now-in-android",
            "date": "Aug 8, 2025",
            "snippet": "Learn about the latest features and best practices of Android development with Now in Android app and podcast.",
            "source": "Android Developers"
          }
        ],
        "related_queries": [
          "latest Android now",
          "Android now gg",
          "what's new in Android development"
        ],
        "page_content": {
          "enhanced_html": "<body>...</body>",
          "page_markdown": "# Search Results\n..."
        }
      }
    },
    "credits": 10
  }
}
status
string
Status of the response (success or error).
data
object
Main data object containing search results and metadata.

Important Updates

This endpoint provides granular control over SERP enrichments through five boolean query parameters:
  • copilot_answer - Control AI-generated answer cards
  • questions_answers - Control People Also Ask suggestions
  • related_queries - Control related search queries
  • sidebar - Control sidebar data and knowledge panels
  • direct_answer - Control instant answer boxes
Advanced SERP features default to true, allowing you to selectively disable them as needed.
Breaking Change: enhanced_html and markdown now default to false. To receive page content, explicitly set enhanced_html=true and/or markdown=true in your request. This makes default responses leaner and more focused on core search results.

Use Cases

Use auto_crawling=true with markdown=true to fetch search results and their full content in a single request, formatted for LLM consumption. This is the primary advantage over the Google Search API.
Feed real-time Bing search results with extracted page content directly into LLM agents. The auto-crawling and Markdown output minimize token usage and post-processing.
Combine with localization parameters to gather region-specific information for AI research agents.
Use enhanced_html=true to collect clean content from multiple sources without ads and scripts.
Use the SERP enrichment toggles to customize which advanced search features are extracted. For example, set questions_answers=false if you only need core results and related queries.

Need Google SERP data instead?

Use the Google Search API for SEO monitoring, lead generation, competitor research, and structured SERP analysis.
Last modified on April 14, 2026