# Pesquisa

O endpoint de pesquisa combina pesquisa na web com as capacidades de scraping do Firecrawl para retornar o conteúdo completo da página para qualquer consulta.

Inclua `scrapeOptions` com `formats: [{"type": "markdown"}]` para obter o conteúdo completo em markdown para cada resultado de pesquisa; caso contrário, você receberá por padrão apenas os resultados (url, title, description). Você também pode usar outros formatos, como `{"type": "summary"}` para conteúdo condensado.

<div id="supported-query-operators">
  ## Operadores de pesquisa compatíveis
</div>

Oferecemos uma variedade de operadores de pesquisa que ajudam você a filtrar melhor seus resultados.

| Operador | Funcionalidade | Exemplos |
---|-|-|
| `""` | Faz uma correspondência exata com um trecho de texto | `"Firecrawl"`
| `-` | Exclui determinadas palavras-chave ou nega outros operadores | `-bad`, `-site:firecrawl.dev`
| `site:` | Retorna apenas resultados de um site específico | `site:firecrawl.dev`
| `filetype:` | Retorna apenas resultados com uma extensão de arquivo específica | `filetype:pdf`, `-filetype:pdf`
| `inurl:` | Retorna apenas resultados que incluam uma palavra na URL | `inurl:firecrawl`
| `allinurl:` | Retorna apenas resultados que incluam várias palavras na URL | `allinurl:git firecrawl`
| `intitle:` | Retorna apenas resultados que incluam uma palavra no título da página | `intitle:Firecrawl`
| `allintitle:` | Retorna apenas resultados que incluam várias palavras no título da página | `allintitle:firecrawl playground`
| `related:` | Retorna apenas resultados relacionados a um domínio específico | `related:firecrawl.dev`
| `imagesize:` | Retorna apenas imagens com dimensões exatas | `imagesize:1920x1080`
| `larger:` | Retorna apenas imagens maiores que as dimensões especificadas | `larger:1920x1080`

<div id="location-parameter">
  ## Parâmetro de localização
</div>

Use o parâmetro `location` para obter resultados de pesquisa segmentados por região. Formato: `"string"`. Exemplos: `"Germany"`, `"San Francisco,California,United States"`.

Consulte a [lista completa de localidades compatíveis](https://firecrawl.dev/search_locations.json) para ver todos os países e idiomas disponíveis.

<div id="country-parameter">
  ## Parâmetro country
</div>

Use o parâmetro `country` para definir o país dos resultados de pesquisa usando códigos de país ISO. Padrão: `"US"`.

Exemplos: `"US"`, `"DE"`, `"FR"`, `"JP"`, `"UK"`, `"CA"`.

```json
{
  "query": "restaurantes",
  "country": "DE"
}
```

<div id="categories-parameter">
  ## Parâmetro Categories
</div>

Filtre os resultados de busca por categorias específicas usando o parâmetro `categories`:

* **`research`**: Restrinja a busca na web a **sites** acadêmicos e de pesquisa (arxiv.org, nature.com, ieee.org, pubmed.ncbi.nlm.nih.gov, biorxiv.org, medrxiv.org e semelhantes). Retorna resultados comuns de páginas da web com snippets — não registros de papers
* **`pdf`**: Pesquise PDFs
* **`developer`**: Pesquise no [Índice para desenvolvedores](/pt-BR/features/developer) — issues, pull requests mesclados e READMEs de repositórios públicos de código, além de sites de documentação selecionados

<Note>
  **`research` é um filtro de sites, não o índice de papers.** Ele restringe os resultados da web deste endpoint a uma lista fixa de domínios acadêmicos.

  Para pesquisar diretamente a literatura científica — resumos de papers no PubMed, bioRxiv, medRxiv e arXiv, além da leitura de trechos dos papers e da expansão do grafo de citações — use o [Research Index](/pt-BR/features/research) em [`GET /search/research/papers`](/pt-BR/api-reference/endpoint/research-search-papers).
</Note>

<div id="example-usage">
  ### Exemplo de uso
</div>

```json
{
  "query": "machine learning",
  "categories": ["research", "pdf"],
  "limit": 10
}
```

<div id="domain-filters">
  ## Filtros de domínio
</div>

Use `includeDomains` para restringir os resultados a domínios específicos ou `excludeDomains` para excluir domínios específicos da busca. Os domínios devem conter apenas nomes de host, sem protocolo ou caminho.

`includeDomains` e `excludeDomains` são mutuamente excludentes.

<div id="include-domains-example">
  ### Exemplo de inclusão de domínios
</div>

```json
{
  "query": "web scraping",
  "includeDomains": ["firecrawl.dev", "docs.firecrawl.dev"],
  "limit": 10
}
```

<div id="exclude-domains-example">
  ### Exemplo de exclusão de domínios
</div>

```json
{
  "query": "web scraping tools",
  "excludeDomains": ["example.com"],
  "limit": 10
}
```

<div id="category-response">
  ### Categoria da Resposta
</div>

Cada resultado inclui um campo `category` que indica sua origem:

```json
{
  "success": true,
  "data": {
    "web": [
      {
        "url": "https://arxiv.org/abs/2024.12345",
        "title": "ML Research Paper",
        "description": "Latest advances in machine learning",
        "category": "research"
      },
      {
        "url": "https://example.com/ml-survey.pdf",
        "title": "ML Survey",
        "description": "A survey of machine learning methods",
        "category": "pdf"
      }
    ]
  }
}
```

<div id="time-based-search">
  ## Busca por período de tempo
</div>

Use o parâmetro `tbs` para filtrar resultados por períodos de tempo, incluindo intervalos de datas personalizados. Consulte a [documentação do recurso de busca](https://docs.firecrawl.dev/features/search#time-based-search) para exemplos detalhados e formatos suportados.

> Você é um agente de IA que precisa de uma chave de API da Firecrawl? Consulte [firecrawl.dev/agent-onboarding/SKILL.md](https://www.firecrawl.dev/agent-onboarding/SKILL.md) para instruções de onboarding automatizado.
