import { isInsufficientCreditsError, isMappaError, isStreamError } from "@mappa-ai/mappa-node";
try {
const receipt = await mappa.reports.createJobFromUrl({
url: "https://example.com/call.mp3",
output: { template: "general_report" },
target: { strategy: "dominant" },
});
const report = await receipt.handle?.wait();
console.info(report?.id);
} catch (err) {
if (isInsufficientCreditsError(err)) {
console.error("insufficient credits", err.required, err.available);
throw err;
}
if (isStreamError(err)) {
console.error("stream failed", err.jobId, err.retryCount);
throw err;
}
if (isMappaError(err)) {
console.error("mappa error", err.code, err.requestId, err.message);
throw err;
}
throw err;
}