Lunos logoLunos

Models & Balance

Retrieve available models and monitor your credit balance programmatically.

List Models

// Get all models
const all = await client.models.list();

// Filter: only models that output images
const imageModels = await client.models.list({ output: "image" });

// Filter: models that accept text+image input and output text
const visionModels = await client.models.list({
  input: "text,image",
  output: "text",
});

Filter Parameters

Parameter Type Description
input string Filter by input modality (e.g. text, text,image)
output string Filter by output modality (e.g. text, image, audio)

Response Format

interface ModelListResponse {
  data: Model[];
}

interface Model {
  id: string;
  object: string;
  created: number;
  owned_by: string;
}

Check Balance

const balance = await client.balance.retrieve();

console.log(`Balance: $${balance.data.balance}`);
console.log(`Low balance alert: ${balance.data.isBalanceLow}`);
console.log(`Alert threshold: $${balance.data.alertBalance}`);

Response Format

interface BalanceResponse {
  success: boolean;
  message: string;
  data: {
    balance: number;
    email: string;
    alertBalance: number;
    enableAlert: number;
    updatedAt: string;
    isAlertEnabled: boolean;
    isBalanceLow: boolean;
  };
}

Use Cases

  • Model discovery — Find models that support specific capabilities
  • Cost monitoring — Track balance and set up alerts
  • Dynamic routing — Choose models based on available capabilities
  • Billing dashboards — Display balance in your own UI