Short answer: Drop the "Firecrawl → Firecrawl Web Search" action anywhere in your workflow, map the inputs from upstream nodes, and publish.
Every field can be mapped from an upstream trigger, AI step, table row, or hard-coded literal.
| Field | Type | Required | Description |
|---|---|---|---|
Query query | string | Required | Search query. |
Limit limit | number | Optional | How many results to return per source (1–100). |
Sources sources | array | Optional | Which result types to fetch. Any combination of: web, images, news. The response splits into data.web / data.images / data.news accordingly. |
Scrape Formats scrape_options_formats | array | Optional | Optional. Set to e.g. ["markdown"] to scrape each result page inline. Costs more credits but saves a separate scrape pass. |
{"query": "{{trigger.query}}","limit": "{{trigger.limit}}","sources": "{{trigger.sources}}","scrape_options_formats": "{{trigger.scrape_options_formats}}"}
{"data": {"web": [{"url": "https://example.com","title": "Example page","markdown": "# Example\n\nFull content when scrape was requested.","description": "A short snippet from the page."}],"news": [],"images": []},"success": true}
Use these fields in downstream nodes for routing, logging, or error handling.
Any of these apps can fire this action as part of a workflow.
Triggered by anything in the catalog. Free tier available. No credit card.