diff --git a/apps/api/src/controllers/v1/scrape-status.ts b/apps/api/src/controllers/v1/scrape-status.ts index 416ecdad..fac89b1c 100644 --- a/apps/api/src/controllers/v1/scrape-status.ts +++ b/apps/api/src/controllers/v1/scrape-status.ts @@ -1,5 +1,6 @@ import { Response } from "express"; import { supabaseGetJobByIdOnlyData } from "../../lib/supabase-jobs"; +import { getJob } from "./crawl-status"; export async function scrapeStatusController(req: any, res: any) { const allowedTeams = [ @@ -17,6 +18,13 @@ export async function scrapeStatusController(req: any, res: any) { const job = await supabaseGetJobByIdOnlyData(req.params.jobId); + if (!job) { + return res.status(404).json({ + success: false, + error: "Job not found.", + }); + } + if ( !allowedTeams.includes(job?.team_id) || job?.team_id !== req.auth.team_id @@ -27,7 +35,10 @@ export async function scrapeStatusController(req: any, res: any) { }); } - const data = job?.docs[0]; + const jobData = await getJob(req.params.jobId); + const data = Array.isArray(jobData?.returnvalue) + ? jobData?.returnvalue[0] + : jobData?.returnvalue; return res.status(200).json({ success: true, diff --git a/apps/api/src/lib/supabase-jobs.ts b/apps/api/src/lib/supabase-jobs.ts index e36f3b97..874c5293 100644 --- a/apps/api/src/lib/supabase-jobs.ts +++ b/apps/api/src/lib/supabase-jobs.ts @@ -76,7 +76,7 @@ export const supabaseGetJobsByCrawlId = async (crawlId: string) => { export const supabaseGetJobByIdOnlyData = async (jobId: string) => { const { data, error } = await supabase_rr_service .from("firecrawl_jobs") - .select("docs, team_id") + .select("team_id") .eq("job_id", jobId) .single();