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

# Search (Beta)

> [!WARNING]
>
> **This page documents the v0 API, deprecated on April 1, 2025.** It is kept for
> historical reference and does not describe how Firecrawl works today. Current
> documentation: [Search](https://docs.firecrawl.dev/api-reference/endpoint/search.md). To move an existing v0 integration, see
> [Migrating from v0](https://docs.firecrawl.dev/migrating-from-v0).

The search endpoint combines a search API with the power of Firecrawl to provide a powerful search experience for whatever query.

It automatically searches the web for the query and returns the most relevant results from the top pages in markdown format. The advantage of this endpoint is that it actually scrap each website on the top result so you always get the full content.

This endpoint is currently in beta and is subject to change.


## OpenAPI

````yaml v0/api-reference/v0-openapi.json POST /search
openapi: 3.0.0
info:
  title: Firecrawl API
  version: v0
  description: >-
    API for interacting with Firecrawl services to perform web scraping and
    crawling tasks.
  contact:
    name: Firecrawl Support
    url: https://firecrawl.dev/support
    email: support@firecrawl.dev
servers:
  - url: https://api.firecrawl.dev/v0
security:
  - bearerAuth: []
paths:
  /search:
    post:
      tags:
        - Search
      summary: >-
        Search for a keyword in Google, returns top page results with markdown
        content for each page
      operationId: searchGoogle
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                query:
                  type: string
                  format: uri
                  description: The query to search for
                pageOptions:
                  type: object
                  properties:
                    onlyMainContent:
                      type: boolean
                      description: >-
                        Only return the main content of the page excluding
                        headers, navs, footers, etc.
                      default: false
                    fetchPageContent:
                      type: boolean
                      description: >-
                        Fetch the content of each page. If false, defaults to a
                        basic fast serp API.
                      default: true
                    includeHtml:
                      type: boolean
                      description: >-
                        Include the HTML version of the content on page. Will
                        output a html key in the response.
                      default: false
                    includeRawHtml:
                      type: boolean
                      description: >-
                        Include the raw HTML content of the page. Will output a
                        rawHtml key in the response.
                      default: false
                searchOptions:
                  type: object
                  properties:
                    limit:
                      type: integer
                      description: Maximum number of results. Max is 20 during beta.
              required:
                - query
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SearchResponse'
        '402':
          description: Payment required
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    example: Payment required to access this resource.
        '429':
          description: Too many requests
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    example: >-
                      Request rate limit exceeded. Please wait and try again
                      later.
        '500':
          description: Server error
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    example: An unexpected error occurred on the server.
      security:
        - bearerAuth: []
components:
  schemas:
    SearchResponse:
      type: object
      properties:
        success:
          type: boolean
        data:
          type: array
          items:
            type: object
            properties:
              url:
                type: string
              markdown:
                type: string
              content:
                type: string
              metadata:
                type: object
                properties:
                  title:
                    type: string
                  description:
                    type: string
                  language:
                    type: string
                    nullable: true
                  sourceURL:
                    type: string
                    format: uri
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.