> ## Documentation Index
> Fetch the complete documentation index at: https://student-213fb9fc.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Search

> Nota: Ya está disponible una [versión v2 de esta API](/es/api-reference/endpoint/search) con funciones y rendimiento mejorados.

El punto de conexión /search combina la búsqueda web con las capacidades de scraping de Firecrawl para devolver el contenido completo de la página para cualquier consulta.

Incluye `scrapeOptions` con `formats: ["markdown"]` para obtener el contenido completo en Markdown de cada resultado de búsqueda; de lo contrario, de forma predeterminada recibirás los resultados (url, title, description).

<div id="supported-query-operators">
  ## Operadores de consulta compatibles
</div>

Ofrecemos una variedad de operadores de consulta que te permiten filtrar mejor tus búsquedas.

| Operador      | Funcionalidad                                                                   | Ejemplos                          |
| ------------- | ------------------------------------------------------------------------------- | --------------------------------- |
| `""`          | Hace una coincidencia exacta de una cadena de texto                             | `"Firecrawl"`                     |
| `-`           | Excluye ciertas palabras clave o niega otros operadores                         | `-bad`, `-site:firecrawl.dev`     |
| `site:`       | Devuelve solo resultados de un sitio web específico                             | `site:firecrawl.dev`              |
| `inurl:`      | Devuelve solo resultados que incluyan una palabra en la URL                     | `inurl:firecrawl`                 |
| `allinurl:`   | Devuelve solo resultados que incluyan varias palabras en la URL                 | `allinurl:git firecrawl`          |
| `intitle:`    | Devuelve solo resultados que incluyan una palabra en el título de la página     | `intitle:Firecrawl`               |
| `allintitle:` | Devuelve solo resultados que incluyan varias palabras en el título de la página | `allintitle:firecrawl playground` |
| `related:`    | Devuelve solo resultados relacionados con un dominio específico                 | `related:firecrawl.dev`           |

<div id="location-parameter">
  ## Parámetro de ubicación
</div>

Usa el parámetro `location` para obtener resultados de búsqueda con orientación geográfica. Formato: `"string"`. Ejemplos: `"Germany"`, `"San Francisco,California,United States"`.

Consulta la [lista completa de ubicaciones admitidas](https://firecrawl.dev/search_locations.json) para ver todos los países e idiomas disponibles.

<div id="time-based-search">
  ## Búsqueda por tiempo
</div>

Usa el parámetro `tbs` para filtrar los resultados por periodos de tiempo, incluidos los rangos de fechas personalizados. Consulta la [documentación de la función de búsqueda](https://docs.firecrawl.dev/features/search#time-based-search) para ver ejemplos detallados y los formatos compatibles.


## OpenAPI

````yaml es/api-reference/v1-openapi.json post /search
openapi: 3.0.0
info:
  title: Firecrawl API
  version: v1
  description: >-
    API para interactuar con los servicios de Firecrawl y realizar tareas de
    scraping y rastreo web.
  contact:
    name: Firecrawl Support
    url: https://firecrawl.dev/support
    email: support@firecrawl.dev
servers:
  - url: https://api.firecrawl.dev/v1
security:
  - bearerAuth: []
paths:
  /search:
    post:
      tags:
        - Search
      summary: Buscar y, opcionalmente, hacer scraping de los resultados de búsqueda
      operationId: searchAndScrape
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                query:
                  type: string
                  description: Consulta de búsqueda
                limit:
                  type: integer
                  description: Número máximo de resultados que se devolverán
                  default: 5
                  maximum: 100
                  minimum: 1
                tbs:
                  type: string
                  description: >-
                    Parámetro de búsqueda temporal. Admite intervalos de tiempo
                    predefinidos (`qdr:h`, `qdr:d`, `qdr:w`, `qdr:m`, `qdr:y`) y
                    rangos de fechas personalizados
                    (`cdr:1,cd_min:MM/DD/YYYY,cd_max:MM/DD/YYYY`).
                location:
                  type: string
                  description: Parámetro de ubicación para los resultados de búsqueda
                timeout:
                  type: integer
                  description: Tiempo de espera en milisegundos
                  default: 60000
                ignoreInvalidURLs:
                  type: boolean
                  description: >-
                    Excluye de los resultados de búsqueda las URLs que no son
                    válidas para otros endpoints de Firecrawl. Esto ayuda a
                    reducir errores si canalizas datos de la búsqueda hacia
                    otros endpoints de la API de Firecrawl.
                  default: false
                scrapeOptions:
                  allOf:
                    - $ref: '#/components/schemas/BaseScrapeOptions'
                    - type: object
                      properties:
                        formats:
                          type: array
                          items:
                            type: string
                            enum:
                              - markdown
                              - html
                              - rawHtml
                              - links
                              - screenshot
                              - screenshot@fullPage
                              - json
                              - extract
                          default: []
                  description: Opciones para extraer resultados de búsqueda
                  default: {}
              required:
                - query
      responses:
        '200':
          description: Respuesta correcta
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                  data:
                    type: array
                    items:
                      type: object
                      properties:
                        title:
                          type: string
                          description: Título del resultado de la búsqueda
                        description:
                          type: string
                          description: Descripción del resultado de la búsqueda
                        url:
                          type: string
                          description: URL del resultado de la búsqueda
                        markdown:
                          type: string
                          nullable: true
                          description: >-
                            Contenido en formato Markdown si se solicitó
                            scraping
                        html:
                          type: string
                          nullable: true
                          description: Contenido HTML si se solicita en los formatos
                        rawHtml:
                          type: string
                          nullable: true
                          description: >-
                            Contenido HTML sin procesar si se solicita en los
                            formatos
                        links:
                          type: array
                          items:
                            type: string
                          description: Enlaces encontrados si se solicitan en los formatos
                        screenshot:
                          type: string
                          nullable: true
                          description: >-
                            URL de la captura de pantalla si se ha solicitado en
                            formatos. Las capturas de pantalla caducan después
                            de 24 horas y dejan de estar disponibles para su
                            descarga.
                        metadata:
                          type: object
                          properties:
                            title:
                              oneOf:
                                - type: string
                                - type: array
                                  items:
                                    type: string
                              description: >-
                                Título extraído de la página; puede ser una
                                cadena o una matriz de cadenas
                            description:
                              oneOf:
                                - type: string
                                - type: array
                                  items:
                                    type: string
                              description: >-
                                Descripción extraída de la página; puede ser una
                                cadena o una matriz de cadenas
                            sourceURL:
                              type: string
                            statusCode:
                              type: integer
                            error:
                              type: string
                              nullable: true
                  warning:
                    type: string
                    nullable: true
                    description: Mensaje de advertencia si ocurre algún problema
                  id:
                    type: string
                    description: El ID de la tarea de búsqueda
        '408':
          description: Tiempo de espera de la solicitud excedido
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: false
                  error:
                    type: string
                    example: Request timed out
        '500':
          description: Error del servidor
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: false
                  error:
                    type: string
                    example: An unexpected error occurred on the server.
      security:
        - bearerAuth: []
components:
  schemas:
    BaseScrapeOptions:
      type: object
      properties:
        onlyMainContent:
          type: boolean
          description: >-
            Devuelve únicamente el contenido principal de la página, excluyendo
            encabezados, elementos de navegación, pies de página, etc.
          default: true
        includeTags:
          type: array
          items:
            type: string
          description: Etiquetas que se deben incluir en la salida.
        excludeTags:
          type: array
          items:
            type: string
          description: Etiquetas que se excluirán de la salida.
        maxAge:
          type: integer
          description: >-
            Devuelve una versión en caché de la página si su antigüedad es menor
            que este valor, en milisegundos. Si la versión en caché de la página
            es más antigua que este valor, la página se volverá a scrapear. Si
            no necesitas datos extremadamente recientes, activar esta opción
            puede acelerar tus procesos de scraping hasta un 500 %. El valor
            predeterminado es 0, lo que desactiva la caché.
          default: 0
        headers:
          type: object
          description: >-
            Cabeceras que se enviarán con la solicitud. Pueden usarse para
            enviar cookies, user-agent, etc.
        waitFor:
          type: integer
          description: >-
            Especifica un retraso, en milisegundos, antes de obtener el
            contenido, permitiendo que la página tenga tiempo suficiente para
            cargarse.
          default: 0
        mobile:
          type: boolean
          description: >-
            Configúralo en `true` si quieres emular el scraping desde un
            dispositivo móvil. Es útil para probar páginas responsive y tomar
            capturas de pantalla en dispositivos móviles.
          default: false
        skipTlsVerification:
          type: boolean
          description: Omitir la verificación del certificado TLS al realizar solicitudes
          default: false
        timeout:
          type: integer
          description: Tiempo de espera de la solicitud en milisegundos
          default: 30000
        parsePDF:
          type: boolean
          description: >-
            Controla cómo se procesan los archivos PDF durante el scraping.
            Cuando es true, el contenido del PDF se extrae y se convierte al
            formato Markdown, y la facturación se basa en el número de páginas
            (1 crédito por página). Cuando es false, el archivo PDF se devuelve
            codificado en base64 con una tarifa plana total de 1 crédito.
          default: true
        jsonOptions:
          type: object
          description: Objeto de opciones JSON
          properties:
            schema:
              type: object
              description: >-
                El esquema que se utilizará para la extracción (opcional). Debe
                ajustarse a [JSON Schema](https://json-schema.org/).
            systemPrompt:
              type: string
              description: El prompt del sistema que se usará para la extracción (opcional)
            prompt:
              type: string
              description: >-
                El prompt que se utilizará para la extracción sin esquema
                (opcional)
        actions:
          type: array
          description: >-
            Acciones que se ejecutarán en la página antes de extraer el
            contenido
          items:
            oneOf:
              - type: object
                title: Wait
                properties:
                  type:
                    type: string
                    enum:
                      - wait
                    description: Espera una cantidad de milisegundos especificada
                  milliseconds:
                    type: integer
                    minimum: 1
                    description: Número de milisegundos que se debe esperar
                  selector:
                    type: string
                    description: Selector de búsqueda para encontrar el elemento por
                    example: '#my-element'
                required:
                  - type
              - type: object
                title: Screenshot
                properties:
                  type:
                    type: string
                    enum:
                      - screenshot
                    description: >-
                      Haz una captura de pantalla. Los enlaces estarán en el
                      array `actions.screenshots` de la respuesta.
                  fullPage:
                    type: boolean
                    description: >-
                      Indica si se debe capturar una captura de pantalla de toda
                      la página o solo del viewport actual.
                    default: false
                  quality:
                    type: integer
                    description: >-
                      La calidad de la captura de pantalla, de 1 a 100; 100 es
                      la máxima calidad.
                required:
                  - type
              - type: object
                title: Click
                properties:
                  type:
                    type: string
                    enum:
                      - click
                    description: Haz clic en un elemento
                  selector:
                    type: string
                    description: Selector de consulta para buscar el elemento por
                    example: '#load-more-button'
                  all:
                    type: boolean
                    description: >-
                      Hace clic en todos los elementos que coinciden con el
                      selector, no solo en el primero. No genera un error si
                      ningún elemento coincide con el selector.
                    default: false
                required:
                  - type
                  - selector
              - type: object
                title: Write text
                properties:
                  type:
                    type: string
                    enum:
                      - write
                    description: >-
                      Escribe texto en un campo de entrada, área de texto o
                      elemento contenteditable. Nota: primero debes poner el
                      foco en el elemento usando una acción de «clic» antes de
                      escribir. El texto se tecleará carácter por carácter para
                      simular la entrada por teclado.
                  text:
                    type: string
                    description: Texto a escribir
                    example: Hello, world!
                required:
                  - type
                  - text
              - type: object
                title: Press a key
                description: >-
                  Pulsa una tecla en esta página. Consulta
                  https://asawicki.info/nosense/doc/devices/keyboard/key_codes.html
                  para ver los códigos de teclado.
                properties:
                  type:
                    type: string
                    enum:
                      - press
                    description: Pulsa una tecla en la página
                  key:
                    type: string
                    description: Tecla a pulsar
                    example: Enter
                required:
                  - type
                  - key
              - type: object
                title: Scroll
                properties:
                  type:
                    type: string
                    enum:
                      - scroll
                    description: Desplazar la página o un elemento específico
                  direction:
                    type: string
                    enum:
                      - up
                      - down
                    description: Dirección de desplazamiento
                    default: down
                  selector:
                    type: string
                    description: Selector (query selector) del elemento que se desplazará
                    example: '#my-element'
                required:
                  - type
              - type: object
                title: Scrape
                properties:
                  type:
                    type: string
                    enum:
                      - scrape
                    description: >-
                      Extrae el contenido de la página actual y devuelve la URL
                      y el HTML.
                required:
                  - type
              - type: object
                title: Execute JavaScript
                properties:
                  type:
                    type: string
                    enum:
                      - executeJavascript
                    description: Ejecutar código JavaScript en la página
                  script:
                    type: string
                    description: Código JavaScript a ejecutar
                    example: document.querySelector('.button').click();
                required:
                  - type
                  - script
              - type: object
                title: Generate PDF
                properties:
                  type:
                    type: string
                    enum:
                      - pdf
                    description: >-
                      Genera un PDF de la página actual. El PDF se devolverá en
                      el array `actions.pdfs` de la respuesta.
                  format:
                    type: string
                    enum:
                      - A0
                      - A1
                      - A2
                      - A3
                      - A4
                      - A5
                      - A6
                      - Letter
                      - Legal
                      - Tabloid
                      - Ledger
                    description: El tamaño de la página del PDF resultante
                    default: Letter
                  landscape:
                    type: boolean
                    description: Indica si se debe generar el PDF en orientación horizontal
                    default: false
                  scale:
                    type: number
                    description: El factor de escala del PDF resultante
                    default: 1
                required:
                  - type
        location:
          type: object
          description: >-
            Configuración de ubicación de la solicitud. Cuando se especifique,
            usará un proxy adecuado si está disponible y emulará la
            configuración de idioma y zona horaria correspondientes. Si no se
            especifica, el valor predeterminado es 'US'.
          properties:
            country:
              type: string
              description: >-
                Código de país ISO 3166-1 alfa-2 (por ejemplo, «US», «AU», «DE»,
                «JP»)
              pattern: ^[A-Z]{2}$
              default: US
            languages:
              type: array
              description: >-
                Idiomas y configuraciones regionales preferidos para la
                solicitud, en orden de prioridad. De forma predeterminada, se
                usa el idioma de la ubicación especificada. Más información en
                https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept-Language
              items:
                type: string
                example: en-US
        removeBase64Images:
          type: boolean
          description: >-
            Elimina todas las imágenes en formato base64 de la salida, que
            pueden hacerla excesivamente larga. El texto alternativo de la
            imagen se conserva en la salida, pero la URL se reemplaza por un
            marcador de posición.
          default: true
        blockAds:
          type: boolean
          description: Habilita el bloqueo de anuncios y ventanas emergentes de cookies.
          default: true
        proxy:
          type: string
          enum:
            - basic
            - enhanced
            - auto
          description: >-
            Especifica el tipo de proxy que se va a utilizar.


            - **basic**: Proxies para hacer scraping de sitios con sistemas
            anti‑bots nulos o básicos. Es rápido y suele funcionar.

            - **enhanced**: Proxies mejorados para hacer scraping de sitios con
            sistemas anti‑bots avanzados. Es más lento, pero más fiable en
            ciertos sitios. Cuesta hasta 5 créditos por solicitud.

            - **auto**: Firecrawl reintentará automáticamente el scraping con
            proxies mejorados si el proxy básico falla. Si el reintento con
            enhanced tiene éxito, se cobrarán 5 créditos por la extracción. Si
            el primer intento con basic tiene éxito, solo se cobrará el coste
            estándar.


            Si no especificas un proxy, Firecrawl usará basic por defecto.
        storeInCache:
          type: boolean
          description: >-
            Si es true, la página se almacenará en el índice y la caché de
            Firecrawl. Establecerlo en false es útil si tu actividad de scraping
            puede implicar problemas de protección de datos. El uso de algunos
            parámetros asociados con scraping sensible (acciones, headers) hará
            que este parámetro tenga que ser false.
          default: true
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````