TypeScript SDK — @hpprouter/sdk
@hpprouter/sdk is the official TypeScript client for the HPP Router Consumer API. It wraps every consumer endpoint with typed helpers and surfaces HPP Router-specific smart-routing metadata alongside each response.
Installation
- npm
- Yarn
- pnpm
npm install @hpprouter/sdk
yarn add @hpprouter/sdk
pnpm add @hpprouter/sdk
Creating a client
- TypeScript
import { HppRouter } from '@hpprouter/sdk';
const client = new HppRouter({
apiKey: process.env.HPPROUTER_API_KEY!,
baseURL: 'https://router.hpp.io',
});
Chat completions
- TypeScript
const completion = await client.chat.send({
model: 'hpprouter/auto',
messages: [{ role: 'user', content: 'Hello!' }],
});
console.log(completion.data.choices);
console.log(completion.meta.resolvedModel); // smart-routing metadata
Responses expose two parts:
data— the OpenAI-compatible response body (choices,usage, …).meta— HPP Router metadata derived from theX-HPP-Router-*headers (e.g.resolvedModel).
Streaming
- TypeScript
const { stream, meta } = await client.chat.stream({
model: 'openai/gpt-5',
messages: [{ role: 'user', content: 'Stream a short answer.' }],
});
for await (const event of stream) {
console.log(event);
}
console.log(meta.resolvedModel);
See Streaming for the streaming-fallback behavior of hpprouter/auto.
Models
- TypeScript
const models = await client.models.list();
console.log(models.data.data);
Usage and quota
- TypeScript
const usage = await client.usage.get();
const quota = await client.quota.check();
console.log(usage.data.remaining);
console.log(quota.data.has_quota);
See Quota & Usage.
Image generation
- TypeScript
const image = await client.images.generate({
model: 'gpt-image-1',
prompt: 'A serene mountain landscape at sunset',
size: '1024x1024',
quality: 'auto',
});
console.log(image.data.data);
See Image Generation.
Choosing between the SDK and the OpenAI SDK
| Use case | Recommended |
|---|---|
| First-class smart-routing metadata, typed usage/quota/image helpers | @hpprouter/sdk |
| Minimal-change migration of existing OpenAI SDK code | OpenAI SDK (drop-in) |
Reference
The SDK is generated against the Consumer API OpenAPI contract.