const API_URL = 'https://sdk.senso.ai/api/v1';
const API_KEY = 'YOUR_API_KEY';
async function uploadPDFDocument() {
  try {
    // Prepare form data
    const formData = new FormData();
    const pdfFile = await fetch('./documents/product-guide.pdf');
    const pdfBlob = await pdfFile.blob();
    
    formData.append('file', pdfBlob, 'product-guide.pdf');
    formData.append('title', 'Product Guide 2024');
    formData.append('summary', 'Comprehensive guide to our product features and capabilities');
    
    // Upload the PDF document
    const response = await fetch(`${API_URL}/content/file`, {
      method: 'POST',
      headers: {
        'X-API-Key': API_KEY
      },
      body: formData
    });
    
    const content = await response.json();
    console.log('PDF uploaded successfully!');
    console.log('Content ID:', content.id);
    console.log('Processing status:', content.processing_status);
    
    // Check processing status
    let processedContent = content;
    while (processedContent.processing_status !== 'completed') {
      await new Promise(resolve => setTimeout(resolve, 3000));
      
      const statusResponse = await fetch(`${API_URL}/content/${content.id}`, {
        headers: { 'X-API-Key': API_KEY }
      });
      processedContent = await statusResponse.json();
      console.log('Status:', processedContent.processing_status);
    }
    
    console.log('PDF processing completed!');
    
    // Search within the PDF
    const searchResponse = await fetch(`${API_URL}/search`, {
      method: 'POST',
      headers: {
        'X-API-Key': API_KEY,
        'Content-Type': 'application/json'
      },
      body: JSON.stringify({
        query: 'What are the main product features?',
        max_results: 5
      })
    });
    
    const searchResult = await searchResponse.json();
    console.log('\nSearch Results:');
    console.log('Answer:', searchResult.answer);
    console.log('Number of sources:', searchResult.results.length);
    
    // Generate a summary
    const summaryResponse = await fetch(`${API_URL}/generate`, {
      method: 'POST',
      headers: {
        'X-API-Key': API_KEY,
        'Content-Type': 'application/json'
      },
      body: JSON.stringify({
        content_type: 'product documentation PDF',
        instructions: 'Create a concise executive summary of the key points',
        max_results: 10
      })
    });
    
    const summary = await summaryResponse.json();
    console.log('\nGenerated Summary:');
    console.log(summary.generated_text);
    
  } catch (error) {
    console.error('Error processing PDF:', error);
  }
}
uploadPDFDocument();