Skip to content
Firecrawl Docs
Firecrawl Docs
Serverless

Fonctions Vercel

Utilisez Firecrawl avec les fonctions Vercel pour rechercher, extraire et interagir avec des données web dans des déploiements serverless.

npm install firecrawl

Ajoutez FIRECRAWL_API_KEY en tant que variable d’environnement dans les paramètres de votre projet Vercel, ou dans .env.local pour le développement local :

FIRECRAWL_API_KEY=fc-YOUR-API-KEY

Créez api/search.ts (ou app/api/search/route.ts pour Next.js) :

import { Firecrawl } from "firecrawl";

const firecrawl = new Firecrawl({ apiKey: process.env.FIRECRAWL_API_KEY });

export async function POST(request: Request) {
  const { query } = await request.json();
  const results = await firecrawl.search(query, { limit: 5 });

  return new Response(JSON.stringify(results), {
    headers: { "Content-Type": "application/json" },
  });
}

Créez api/scrape.ts (ou app/api/scrape/route.ts pour Next.js) :

import { Firecrawl } from "firecrawl";

const firecrawl = new Firecrawl({ apiKey: process.env.FIRECRAWL_API_KEY });

export async function POST(request: Request) {
  const { url } = await request.json();
  const result = await firecrawl.scrape(url);

  return new Response(JSON.stringify(result), {
    headers: { "Content-Type": "application/json" },
  });
}

Créez api/interact.ts (ou app/api/interact/route.ts pour Next.js) :

import { Firecrawl } from "firecrawl";

const firecrawl = new Firecrawl({ apiKey: process.env.FIRECRAWL_API_KEY });

export async function POST(request: Request) {
  const result = await firecrawl.scrape("https://www.amazon.com", {
    formats: ["markdown"],
  });
  const scrapeId = result.metadata?.scrapeId;

  await firecrawl.interact(scrapeId, {
    prompt: "Search for iPhone 16 Pro Max",
  });
  const response = await firecrawl.interact(scrapeId, {
    prompt: "Click on the first result and tell me the price",
  });

  await firecrawl.stopInteraction(scrapeId);

  return new Response(JSON.stringify({ output: response.output }), {
    headers: { "Content-Type": "application/json" },
  });
}
vercel deploy
curl -X POST https://your-project.vercel.app/api/search \
  -H "Content-Type: application/json" \
  -d '{"query": "firecrawl web scraping"}'

Les Vercel Functions ont un délai d’expiration par défaut de 10 secondes sur l’offre Hobby et de 60 secondes sur l’offre Pro. Pour les gros jobs de crawl, utilisez plutôt l’API asynchrone de Firecrawl avec des webhooks.

Was this page helpful?Suggest editsRaise issue