Headless client for fetching and managing OpenRouter models
npm install @cappasoft/openrouter-models
Headless TypeScript client for fetching and grouping OpenRouter models.
``bash`
npm install @cappasoft/openrouter-models
`ts
import { createOpenRouterModelsClient } from '@cappasoft/openrouter-models'
const client = createOpenRouterModelsClient({
apiKey: 'sk-or-v1-...',
})
// Fetch all models grouped by category
const { models, categories } = await client.listModels()
console.log(Found ${models.length} models)Categories: ${categories.map(c => c.name).join(', ')}
console.log()`
Creates a client instance.
`ts`
const client = createOpenRouterModelsClient({
apiKey: string, // Your OpenRouter API key
baseUrl?: string, // API base URL (optional)
})
Fetches all models and groups them by provider.
`ts`
const { models, categories } = await client.listModels()
`ts
interface OpenRouterModel {
id: string
name: string
description?: string
context_length: number
pricing: { prompt: string; completion: string }
// ... more fields
}
interface ModelCategory {
name: string
models: OpenRouterModel[]
}
``
MIT