DEV Community

Roberto Francisco junior
Roberto Francisco junior

Posted on Originally published at messora.dev

Building an automated web ingestion pipeline in n8n for LLM knowledge bases

Automating weekly competitor intelligence, price tracking, or documentation updates inside n8n often fails when scrapers hit anti-bot challenges or return uncleaned HTML that exceeds context boundaries.

Here is an architectural pattern for an automated ingestion workflow in n8n using HTTP nodes and MESSORA.

Workflow Architecture

[Schedule Trigger (Daily at 08:00)] 
       │
       ▼
[Read URL List / Google Sheet]
       │
       ▼
[HTTP Request: POST /v1/extract (MESSORA)]
       │
       ▼
[Generate Embeddings (OpenAI)]
       │
       ▼
[Upsert to Vector Store (Qdrant / Pinecone)]
Enter fullscreen mode Exit fullscreen mode

The n8n HTTP Node Configuration

In your n8n HTTP Request node:

  1. Method: POST
  2. URL: https://api.messora.dev/v1/extract
  3. Authentication: Generic Credential Type -> Header Auth
    • Header Name: Authorization
    • Header Value: Bearer YOUR_MESSORA_API_KEY
  4. Body Parameters:
   {
     "url": "={{ $json.url }}",
     "only_main_content": true
   }
Enter fullscreen mode Exit fullscreen mode

Handling Output in Downstream Nodes

The response returns clean Markdown under data.markdown:

// Function node: prepare chunks for embedding
const markdown = $input.item.json.markdown;
const sourceUrl = $input.item.json.metadata.url;

return {
  json: {
    text: markdown,
    source: sourceUrl,
    extracted_at: new Date().toISOString(),
  }
};
Enter fullscreen mode Exit fullscreen mode

Advantages over native browser nodes

  • Zero infrastructure management: No headless Chromium instances hanging on your n8n host.
  • Bypass WAFs automatically: Cloudflare, DataDome, and TLS challenges are resolved at the gateway.
  • 75% token reduction: Ingests clean Markdown instead of full DOM hierarchies.

Top comments (0)