POST https://api.acedata.cloud/webextrator/render
A API de renderização de páginas WebExtrator é um serviço de renderização de páginas baseado em Chromium sem interface. Dado um URL,
retorna o HTML totalmente renderizado (incluindo conteúdo injetado por JS), texto puro, título da página e URL final.
Render é a interface mais básica do WebExtrator. Se você precisar de resultados de extração estruturados
(corpo de artigo, preço de produto, ingredientes de receita …), use
/webextrator/extract —— ela executa um pipeline completo de extração tipada
sobre a mesma base de renderização.
Processo de solicitação
Para usar a página de serviço WebExtrator, primeiro obtenha seu API Token no Console Ace Data Cloud e guarde-o para uso posterior.
Se você ainda não estiver conectado ou registrado, será automaticamente redirecionado para a página de login, convidando você a se registrar e entrar; após a conclusão, você retornará automaticamente à página atual.
Um único API Token permite chamar todos os serviços da plataforma, sem necessidade de solicitar um separadamente para cada serviço. A primeira solicitação concede créditos gratuitos, permitindo uma experiência gratuita; quando os créditos forem insuficientes, você poderá recarregar o saldo geral no Console.
📘 Documentação completa: Página de serviço WebExtrator →
Autenticação
Todas as interfaces WebExtrator usam autenticação padrão Bearer Token:Parâmetros de solicitação
O contrato da plataforma usa uniformemente snake_case. O serviço de renderização interno suporta camelCase, mas chamadas externas sempre usam snake_case.
Estrutura de Cookie
Resposta síncrona
Resposta assíncrona
Quandoasync=true (ou callback_url é fornecido), retorna imediatamente (HTTP 200):
POST para callback_url (se configurado), ou consultado ativamente por meio de
/webextrator/tasks.
Estrutura de callback
A plataforma fazPOST do envelope exatamente igual ao modo síncrono para callback_url,
com Content-Type: application/json. Retornar qualquer 2xx é considerado uma confirmação; 5xx será
repetido com recuo exponencial por aproximadamente 5 minutos.
Resposta de erro
Estrutura de erro:
Exemplos
cURL
Python (requests)
Node.js (fetch)
Assíncrono + callback
{ "success": true, "task_id": "...", "trace_id": "...", "started_at": 1777717800.123 };
quando a tarefa for concluída, a plataforma fará POST do resultado completo para o seu callback_url.
Ignorar o cache à força
Dicas e armadilhas
- Escolher
wait_untilcorretamente é importante.networkidleé o mais estável, mas o mais lento;domcontentloadedé rápido, mas pode deixar de fora conteúdo injetado assincronamente;loadé adequado para páginas estáticas tradicionais. - A chave de cache ignora
async. Solicitações síncronas e assíncronas para a mesma URL atingem a mesma entrada de cache, alternar livremente não a invalidará. - A chave de cache ignora
bypass_cacheecache_ttl_seconds. Esses dois são opções de operação, e não afetam o conteúdo da resposta. cookieseheaderssegmentam o cache. Personalizar esses dois fará com que o primeiro acesso da mesma combinação falhe.- SPAs pesadas frequentemente excedem os 30 segundos padrão. Recomenda-se
timeout: 60,wait_until: "domcontentloaded",delay: 4, e então usarwait_for_selectorpara aguardar os elementos que realmente importam. block_resourcesé o caminho mais rápido para reduzir a latência. Imagens / fontes / mídia já são bloqueadas por padrão; se a sua extração não depende do layout CSS, adicionarstylesheetpode torná-la ainda mais rápida.

