Browserless
Visão geral
Seção intitulada “Visão geral”Browserless é um serviço de automação de browsers headless que fornece infraestrutura gerenciada para executar scripts Puppeteer e realizar tarefas de automação web sem a necessidade de gerenciar o próprio servidor de browser. Com a integração no SquadOS, seus agentes podem baixar arquivos, executar scripts customizados, buscar HTML de páginas, gerar PDFs, extrair conteúdo via seletores CSS, tirar screenshots e contornar proteções anti-bot de forma confiável.
- Site oficial: https://www.browserless.io/
- Documentação na Composio: docs.composio.dev/toolkits/browserless
Autenticação
Seção intitulada “Autenticação”Esta ferramenta utiliza chave de API (API_KEY) para conectar.
Você vai precisar dos seguintes campos:
| Campo | Obrigatório | Descrição |
|---|---|---|
api_key | Sim | Chave de API da sua conta Browserless, usada para autenticar todas as requisições ao serviço. |
Como obter a credencial
Seção intitulada “Como obter a credencial”- Acesse browserless.io e crie uma conta.
- Após o cadastro, faça login no painel em cloud.browserless.io/account.
- Copie a API Key exibida na página da sua conta — esse é o valor a informar no campo
api_keyao conectar no SquadOS.
Como conectar no SquadOS
Seção intitulada “Como conectar no SquadOS”- Acesse Ferramentas no menu lateral (
/admin/tools). - Abra a aba Disponíveis e procure por
Browserless. - Clique no card para abrir o modal de detalhes e em Conectar.
- Você é levado para a página de conexão segura hospedada pela Composio, onde informa a chave de API obtida acima.
- Ao concluir, você volta para o SquadOS com a conta conectada e a ferramenta disponível para os agentes. (Detalhes do fluxo em Ferramentas da Organização.)
Ações disponíveis
Seção intitulada “Ações disponíveis”Baixar arquivo via script Puppeteer
Seção intitulada “Baixar arquivo via script Puppeteer”BROWSERLESS_DOWNLOAD_FILE
Permite baixar arquivos que o Chrome fez download durante a execução de um script Puppeteer. Cria uma página em branco, um diretório de download limpo, injeta o código fornecido e o executa. Ao final, quaisquer arquivos baixados pelo Chromium são retornados com o cabeçalho de tipo de conteúdo adequado.
Parâmetros de entrada
Seção intitulada “Parâmetros de entrada”| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
code | string | Sim | O script Puppeteer a executar para baixar o arquivo. Deve ser um código JavaScript válido que dispare um download de arquivo. |
context | object | Não | Dados de contexto adicionais a serem passados ao script. |
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
data | string | Sim | Dados retornados pela execução da ação. |
error | string | Não | Mensagem de erro caso a execução tenha falhado. |
successful | boolean | Sim | Indica se a ação foi executada com sucesso. |
Executar função customizada
Seção intitulada “Executar função customizada”BROWSERLESS_EXECUTE_CUSTOM_FUNCTION
Ferramenta que permite executar scripts Puppeteer customizados via requisições HTTP. Possibilita executar tarefas de automação de browser sem gerenciar infraestrutura própria.
Parâmetros de entrada
Seção intitulada “Parâmetros de entrada”| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
code | string | Sim | O código da função Puppeteer a executar. Deve ser um módulo ESM válido com uma função exportada como padrão. |
context | object | Não | Objeto de contexto opcional a passar para a função. Suporta qualquer dado serializável em JSON com aninhamento. |
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
data | string | Sim | Dados retornados pela execução da ação. |
error | string | Não | Mensagem de erro caso a execução tenha falhado. |
successful | boolean | Sim | Indica se a ação foi executada com sucesso. |
Buscar conteúdo HTML
Seção intitulada “Buscar conteúdo HTML”BROWSERLESS_FETCH_HTML_CONTENT
Busca o conteúdo HTML completo de uma página web usando a API de conteúdo do Browserless. Projetada para recuperar o HTML inteiro de qualquer site, incluindo conteúdo gerado dinamicamente.
Parâmetros de entrada
Seção intitulada “Parâmetros de entrada”| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
url | string | Sim | A URL da página web da qual buscar o conteúdo HTML. |
best_attempt | boolean | Não | Se deve continuar em caso de erro. |
goto_options | object | Não | Opções de navegação, como waitUntil. |
wait_for_event | object | Não | Aguarda um evento específico com timeout opcional. |
wait_for_timeout | integer | Não | Aguarda um tempo específico em milissegundos. |
wait_for_selector | object | Não | Aguarda um elemento específico com timeout opcional. |
reject_resource_types | array | Não | Tipos de recursos a bloquear (ex.: imagens, folhas de estilo). |
reject_request_pattern | array | Não | Padrões para bloquear requisições específicas. |
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
data | string | Sim | Dados retornados pela execução da ação. |
error | string | Não | Mensagem de erro caso a execução tenha falhado. |
successful | boolean | Sim | Indica se a ação foi executada com sucesso. |
Gerar PDF de página web
Seção intitulada “Gerar PDF de página web”BROWSERLESS_GENERATE_PDF
Gera um PDF a partir de uma página web especificada usando a API de geração de PDF do Browserless. Permite especificar a URL da página com parâmetros como formato, nome do arquivo e opções de waitUntil para controlar o processo de geração.
Parâmetros de entrada
Seção intitulada “Parâmetros de entrada”| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
url | string | Não | URL da página web para gerar o PDF. |
html | string | Não | Conteúdo HTML para gerar o PDF. |
options | object | Não | Opções de geração de PDF baseadas em PDFOptions do Puppeteer. |
addStyleTag | array | Não | Tags de estilo customizadas a injetar. |
bestAttempt | boolean | Não | Continuar em caso de erro. |
gotoOptions | object | Não | Opções de navegação para carregamento da página. |
addScriptTag | array | Não | Tags de script customizadas a injetar. |
waitForSelector | object | Não | Opções para aguardar um seletor aparecer. |
rejectResourceTypes | array | Não | Tipos de recursos a bloquear. |
rejectRequestPattern | array | Não | Padrões de requisição a bloquear. |
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
data | string | Sim | Dados retornados pela execução da ação. |
error | string | Não | Mensagem de erro caso a execução tenha falhado. |
successful | boolean | Sim | Indica se a ação foi executada com sucesso. |
Extrair conteúdo de página via seletores CSS
Seção intitulada “Extrair conteúdo de página via seletores CSS”BROWSERLESS_SCRAPE_CONTENT
Ferramenta para extrair conteúdo estruturado de uma página web especificando seletores CSS. Navega até a URL indicada, aguarda o carregamento da página (incluindo análise e execução de JavaScript) e retorna os elementos selecionados em formato JSON estruturado.
Parâmetros de entrada
Seção intitulada “Parâmetros de entrada”| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
url | string | Sim | A URL da qual extrair o conteúdo. |
elements | array | Sim | Array de objetos contendo seletores CSS para extração. |
gotoOptions | object | Não | Opções para navegação de página. |
waitForEvent | object | Não | Aguarda um evento específico ocorrer. |
waitForTimeout | integer | Não | Aguarda os milissegundos especificados antes de extrair. |
waitForFunction | object | Não | Aguarda uma função JavaScript customizada retornar verdadeiro. |
waitForSelector | object | Não | Aguarda um seletor específico aparecer. |
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
data | string | Sim | Dados retornados pela execução da ação. |
error | string | Não | Mensagem de erro caso a execução tenha falhado. |
successful | boolean | Sim | Indica se a ação foi executada com sucesso. |
Tirar screenshot
Seção intitulada “Tirar screenshot”BROWSERLESS_TAKE_SCREENSHOT
Ferramenta que captura um screenshot de uma página web usando a API de screenshot do Browserless. Recebe uma URL e retorna uma imagem PNG ou JPEG. Inclui opções para captura de página inteira, tipo de imagem, qualidade e coordenadas de recorte.
Parâmetros de entrada
Seção intitulada “Parâmetros de entrada”| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
url | string | Sim | A URL da página web a capturar. |
clip_x | integer | Não | Coordenada X para recorte do screenshot. |
clip_y | integer | Não | Coordenada Y para recorte do screenshot. |
quality | integer | Não | A qualidade da imagem (0–100, aplica-se apenas a jpeg). |
full_page | boolean | Não | Se deve capturar a página inteira ou apenas o viewport. |
clip_width | integer | Não | Largura da área de recorte. |
image_type | string | Não | O tipo de imagem a retornar (png ou jpeg). |
clip_height | integer | Não | Altura da área de recorte. |
omit_background | boolean | Não | Se deve omitir o fundo no screenshot. |
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
data | string | Sim | Dados retornados pela execução da ação. |
error | string | Não | Mensagem de erro caso a execução tenha falhado. |
successful | boolean | Sim | Indica se a ação foi executada com sucesso. |
Desbloquear conteúdo protegido
Seção intitulada “Desbloquear conteúdo protegido”BROWSERLESS_UNBLOCK_PROTECTED_CONTENT
Fornece acesso a conteúdo de sites que implementam mecanismos de proteção contra bots. Projetada para contornar vários tipos de proteção (como CAPTCHA e detecção de bots) e retornar o conteúdo HTML da página web protegida, com personalização opcional via parâmetros como waitFor, timeout e modo stealth.
Parâmetros de entrada
Seção intitulada “Parâmetros de entrada”| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
ttl | integer | Não | Tempo de vida da instância do browser em milissegundos. |
url | string | Sim | A URL da página web protegida a acessar. |
content | boolean | Não | Se deve retornar o conteúdo HTML da página. |
cookies | boolean | Não | Se deve retornar os cookies da página. |
screenshot | boolean | Não | Se deve retornar um screenshot da página. |
waitForEvent | object | Não | Evento a aguardar antes de retornar a resposta. |
waitForFunction | object | Não | Função a executar e aguardar antes de retornar a resposta. |
waitForSelector | object | Não | Seletor a aguardar antes de retornar a resposta. |
browserWSEndpoint | boolean | Não | Se deve retornar um endpoint WebSocket para automação de browser. |
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
data | string | Sim | Dados retornados pela execução da ação. |
error | string | Não | Mensagem de erro caso a execução tenha falhado. |
successful | boolean | Sim | Indica se a ação foi executada com sucesso. |