Skip to main content
Every integration channel provides Auriko’s routing, fallback, cost optimization, and rate limiting — these features are server-side. The channel you choose affects developer ergonomics, not platform capability.

Which integration should I use?

If you…UseTier
Want the full Auriko experienceNative SDK (TypeScript) (auriko.AsyncClient)1 — Primary
Already use LangChain, LlamaIndex, CrewAI, or ADKFramework adapter2 — Framework
Use the Vercel AI SDK (TypeScript)@auriko/ai-sdk-provider2 — Framework
Use Claude Code or Claude Agent SDKSet ANTHROPIC_BASE_URL env var (guide)2 — Framework
Want to point existing OpenAI code at AurikoAsyncOpenAI(base_url="https://api.auriko.ai/v1")3 — Migration
Need to pass an OpenAI client to a framework that discards routing metadataAurikoAsyncOpenAI (experimental)4 — Experimental
If you just want to point existing OpenAI code at Auriko, use AsyncOpenAI(base_url=...) directly. AurikoAsyncOpenAI is experimental and only needed when a framework discards routing metadata from responses.

Feature comparison

FeatureNative SDKFramework AdaptersPlain OpenAI APIAurikoAsyncOpenAI (experimental)Vercel AI SDK ProviderClaude Agent SDK / Anthropic SDK
Routing optionsgateway={...} or GatewayOptions(...)Adapter-specific paramsextra_body={"gateway": {...}}extra_body={"gateway": {...}}createAuriko({ routing })extra_body={"gateway": {...}}
Metadata accessresponse.routing_metadataAdapter-specificparse_routing_metadata(response) or headersclient.last_routing_metadataresult.providerMetadata?.aurikoResponse headers
Error typesAurikoAPIError hierarchyAurikoAPIError (automatic)openai.APIStatusErrorDual-inheritance (both hierarchies)APICallError (@ai-sdk/provider)anthropic.APIStatusError
Streaming metadataOn stream objectAdapter-specificResponse headersAutomaticawait result.providerMetadataauriko_metadata SSE event
Dependenciesaurikoauriko[framework]openai (or any HTTP client)auriko[openai-compat]@auriko/ai-sdk-provider + ai ^6.0.0anthropic SDK or Claude Code CLI

Error behavior by channel

ChannelError typeAutomatic?
Native SDKAurikoAPIError hierarchyYes
Framework adaptersAurikoAPIError via map_openai_error()Yes
Plain OpenAI APIopenai.APIStatusErrorOpt-in via map_openai_error()
AurikoAsyncOpenAI (experimental)Dual-inheritance (both hierarchies)HTTP-level only
Vercel AI SDK providerAPICallError (@ai-sdk/provider)Yes
Claude Agent SDK / Anthropic SDKanthropic.APIStatusErrorYes
AurikoAsyncOpenAI dual-inheritance errors are catchable as both auriko.RateLimitError and openai.RateLimitError. Mid-stream SSE errors (raised after the HTTP 200 during stream=True) remain unmapped openai.APIError — the bridge covers HTTP-level status errors only.