#!/usr/bin/env node // Create a Document AI processor for the testing environment const { DocumentProcessorServiceClient } = require('@google-cloud/documentai'); async function createProcessor() { console.log('šŸ—ļø Creating Document AI Processor for Testing...'); console.log('==============================================='); try { // Set up client process.env.GOOGLE_APPLICATION_CREDENTIALS = './serviceAccountKey-testing.json'; const client = new DocumentProcessorServiceClient(); const projectId = 'cim-summarizer-testing'; const location = 'us'; const parent = `projects/${projectId}/locations/${location}`; console.log('šŸ“‹ Configuration:'); console.log(' - Project:', projectId); console.log(' - Location:', location); console.log(' - Parent:', parent); // Create processor const request = { parent: parent, processor: { displayName: 'CIM Document Processor (Testing)', type: 'OCR_PROCESSOR' // General OCR processor } }; console.log('\nšŸš€ Creating processor...'); const [processor] = await client.createProcessor(request); console.log('āœ… Processor created successfully!'); console.log('šŸ“‹ Processor Details:'); console.log(' - Name:', processor.name); console.log(' - Display Name:', processor.displayName); console.log(' - Type:', processor.type); console.log(' - State:', processor.state); // Extract processor ID for environment configuration const processorId = processor.name.split('/').pop(); console.log(' - Processor ID:', processorId); console.log('\nšŸ“ Update your .env file with:'); console.log(`DOCUMENT_AI_PROCESSOR_ID=${processorId}`); return processor; } catch (error) { console.error('āŒ Failed to create processor:', error); console.error('Error details:', error.details || 'No additional details'); if (error.code === 7) { console.log('\nšŸ’” This might be a permission issue. Check that the service account has:'); console.log(' - roles/documentai.editor'); console.log(' - Document AI API is enabled'); } throw error; } } createProcessor();