import { NextRequest, NextResponse } from 'next/server'; const API_BASE_URL = process.env.NEXT_PUBLIC_API_URL || 'http://localhost:8000'; export async function POST(request: NextRequest) { try { const body = await request.json(); const { url, business_name, business_address, rating_snapshot, total_reviews_snapshot } = body; if (!url) { return NextResponse.json({ error: 'URL is required' }, { status: 400 }); } // Call the containerized scraper API with business metadata const response = await fetch(`${API_BASE_URL}/scrape`, { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ url, metadata: { business_name, business_address, rating_snapshot, total_reviews_snapshot, }, }), }); const data = await response.json(); if (!response.ok) { return NextResponse.json( { error: data.detail || 'Failed to start scraping' }, { status: response.status } ); } return NextResponse.json(data); } catch (error) { console.error('Scrape API error:', error); return NextResponse.json( { error: 'Failed to connect to scraper API' }, { status: 500 } ); } }