Credit optimization
Use this guide to keep credit usage predictable while getting maximum value from each processed recording.
High-impact strategies​
1. Reuse uploaded media​
const media = await conduitClient.primitives.media.upload({ path: "./interview.mp3" })
const a = await conduitClient.reports.create({
source: { mediaId: media.mediaId },
output: { template: "general_report" },
target: { strategy: "magic_hint", hint: "the candidate" },
})
const b = await conduitClient.reports.create({
source: { mediaId: media.mediaId },
output: { template: "general_report" },
target: { strategy: "magic_hint", hint: "the interviewer" },
})
2. Always send idempotency keys​
await conduitClient.reports.create({
source: { mediaId: "media_123" },
output: { template: "general_report" },
target: { strategy: "dominant" },
idempotencyKey: "candidate-42-round-1",
})
3. Reuse entity IDs for recurring speakers​
await conduitClient.reports.create({
source: { mediaId: "media_session_2" },
output: { template: "general_report" },
target: { strategy: "entity_id", entityId: "ent_abc123" },
})
4. Prefer webhooks over polling​
await conduitClient.reports.create({
source: { mediaId: "media_123" },
output: { template: "general_report" },
target: { strategy: "dominant" },
webhook: { url: "https://your-app.com/webhooks/conduit" },
})
Checklist​
- reuse
mediaIdwhen analyzing the same recording again - use idempotency keys on write operations
- switch from
magic_hinttoentity_idonce identity is known - use webhooks as the default completion path
- review plan allowances in Pricing