Azure Document Intelligence — TypeScript SDK Quick Reference
Condensed from azure-ai-document-intelligence-ts. Full patterns (custom models, classifiers, batch polling) in the azure-ai-document-intelligence-ts plugin skill if installed.
Install
npm install @azure-rest/ai-document-intelligence @azure/identityQuick Start
Auth:
DefaultAzureCredentialis for local development. See auth-best-practices.md for production patterns.
import DocumentIntelligence, { isUnexpected, getLongRunningPoller, AnalyzeOperationOutput } from "@azure-rest/ai-document-intelligence";
const client = DocumentIntelligence(endpoint, new DefaultAzureCredential());Non-Obvious Patterns
- REST client —
DocumentIntelligenceis a function, not a class - Analyze path:
client.path("/documentModels/{modelId}:analyze", "prebuilt-layout").post({...}) - Must use
getLongRunningPoller(client, initialResponse)thenpoller.pollUntilDone() - Local file: send as
base64Sourcein body, not as binary stream - Pagination:
import { paginate } from "@azure-rest/ai-document-intelligence"
Best Practices
- Use
getLongRunningPoller()— document analysis is async, always poll - Check
isUnexpected()— type guard for proper error handling - Choose the right model — prebuilt when possible, custom for specialized docs
- Handle confidence scores — set thresholds for your use case
- Use
paginate()helper for listing models - Prefer neural mode for custom models over template