Node.js Batch Document Summarization for CRM Actions in 5–30 Minutes
Description and use
Implemented asynchronous batch processing of sales call transcripts via a provider‑neutral API, enabling summary collection in 5–30 minutes, evaluation, and subsequent CRM updates.
Problem
Customer‑support teams need to turn sales‑call transcripts into CRM actions, but the summarization can take 5–30 minutes, so a synchronous request is impractical.
Outcome
The workflow reduces latency for the user, isolates failure modes, and allows the model provider to change without affecting CRM logic.
Workflow
- Submit an array of transcripts to the batch API with an idempotency key.
- Poll the batch status endpoint every 30 seconds until the job status is "complete".
- Retrieve the summaries once the job is complete.
- Store the raw summary and source document ID.
- Evaluate the summary against a labelled set for missing steps, wrong owners, invented dates, and malformed fields.
- If evaluation passes, create or update CRM actions.
- If evaluation fails, flag for manual review or retry.
Evidence
Submit the documents together, poll the job, and fetch the summaries after completion.
The usual processing window is 5–30 minutes, so the application needs a small job state machine rather than a request that waits.
First store the raw summary and the source document identifier. Then evaluate the output against a small labelled set... Only then should a separate step create or update CRM actions.
- Record date: 2026-10-25T02:11:24.283Z