import type { LeadDatasetResponse } from './types.js'; import type { SkillClient } from '@clawd/auth-runtime'; /** * Fetch lead-dataset from a completed cold-outreach workflow. */ export async function fetchLeadDataset( client: SkillClient, workflowId: string, ): Promise<{ data: LeadDatasetResponse | null; error: string }> { const result = await client.get(`/ecom/cold-outreach/${workflowId}/lead-dataset`); if (result.status < 200 || result.status >= 300) { const msg = parseError(result.body); return { data: null, error: msg || `lead-dataset fetch failed: HTTP ${result.status}`, }; } try { const data = JSON.parse(result.body) as LeadDatasetResponse; if (!data.success) { return { data: null, error: data.message || 'lead-dataset returned success=false' }; } return { data, error: '' }; } catch { return { data: null, error: 'failed to parse lead-dataset response' }; } } function parseError(body: string): string { try { const data = JSON.parse(body); return data.message || data.error || ''; } catch { return ''; } }