Skip to main content

Go

O SDK Go do Firecrawl é um wrapper da API do Firecrawl para ajudar você a transformar sites em markdown com facilidade.
3 min read

Instalação#

O SDK Go oficial é mantido no monorepo do Firecrawl, em apps/go-sdk.

Para instalar o SDK Go do Firecrawl, execute:

Note
Requer Go 1.23 ou superior.

Uso#

  1. Obtenha uma chave de API em firecrawl.dev
  2. Defina a chave de API como uma variável de ambiente chamada FIRECRAWL_API_KEY ou passe-a com option.WithAPIKey(...)

Aqui está um exemplo rápido usando a API atual do SDK:

Fazendo scraping de uma URL#

Para fazer scraping de uma única URL, use o método Scrape.

Extração JSON#

Extraia JSON estruturado usando JsonOptions no endpoint Scrape:

Rastreando um site#

Para rastrear um site e aguardar a conclusão, use Crawl.

Iniciar um rastreamento#

Inicie um job sem aguardar com StartCrawl.

Verificando o status do rastreamento#

Verifique o andamento do rastreamento com GetCrawlStatus.

Cancelar um rastreamento#

Cancele um rastreamento em execução com CancelCrawl.

Mapeando um site#

Descubra links de um site usando Map.

Pesquisando na web#

Pesquise com configurações opcionais de busca usando Search.

Scraping em lote#

Faça o scraping de várias URLs em paralelo com BatchScrape.

Agente#

Execute um agente com IA usando Agent.

Com um schema JSON para resultado estruturado:

Uso & Métricas#

Confira a concorrência e os créditos restantes:

Browser#

O SDK de Go inclui utilitários do Browser Sandbox.

Criar uma sessão#

Executar código#

Sessão interativa vinculada ao scraping#

Use um ID do job de scraping para executar código de navegador subsequente no mesmo contexto reproduzido:

  • Interact(...) executa código na sessão do navegador vinculada ao scraping (e a inicializa no primeiro uso).
  • StopInteractiveBrowser(...) encerra explicitamente a sessão interativa quando você terminar.

Listar & Encerrar Sessões#

Configuração#

firecrawl.NewClient() aceita opções funcionais:

OptionTypeDefaultDescription
option.WithAPIKeystringvariável de ambiente FIRECRAWL_API_KEYSua chave de API do Firecrawl
option.WithAPIURLstringhttps://api.firecrawl.dev (ou FIRECRAWL_API_URL)URL base da API
option.WithTimeouttime.Duration5 * time.MinuteTempo limite do cliente HTTP
option.WithMaxRetriesint3Retentativas automáticas para falhas transitórias
option.WithBackoffFactorfloat640.5Fator de backoff exponencial em segundos
option.WithHTTPClient*http.ClientConstruído com base no tempo limiteInstância de cliente HTTP pré-configurada
option.WithHeaderstring, stringAdiciona um cabeçalho extra a todas as requisições

Cliente HTTP personalizado#

Você pode passar um *http.Client pré-configurado para controlar configurações de transporte, proxy, TLS e muito mais. Quando fornecido, a configuração WithTimeout é ignorada em favor da configuração do próprio cliente.

Suporte a Contexto#

Todos os métodos aceitam um context.Context como primeiro argumento para controle de cancelamento e tempo limite:

Tratamento de erros#

O SDK usa erros tipados no pacote firecrawl.

Lógica de retentativa#

O SDK tenta novamente automaticamente em falhas transitórias:

  • Com retentativa: erros 408, 409, 5xx e falhas de conexão
  • Sem retentativa: erros 401, 429 e outros erros 4xx
  • Backoff: backoff exponencial com fator configurável

Helpers para ponteiros#

O SDK fornece funções auxiliares para campos de ponteiro opcionais:

Você é um agente de IA que precisa de uma chave de API do Firecrawl? Consulte firecrawl.dev/agent-onboarding/SKILL.md para instruções de onboarding automatizado.