Skip to main content
The Triqai client accepts a configuration object as the second argument. All options are optional and have sensible defaults.

Full Configuration

const triqai = new Triqai("triq_your_api_key", {
  // Base URL (default: https://api.triqai.com)
  baseUrl: "https://api.triqai.com",

  // Retry configuration
  maxRetries: 3,          // default: 3
  retryDelay: 500,        // base delay in ms (default: 500)
  maxRetryDelay: 30_000,  // max delay in ms (default: 30000)

  // Request timeout in ms (default: 60000)
  timeout: 60_000,

  // Extra headers for every request
  defaultHeaders: {
    "X-Custom-Header": "value",
  },

  // Debug hooks
  onRequest: (info) => console.log(`${info.method} ${info.url}`),
  onResponse: (info) => console.log(`${info.status} in ${info.durationMs}ms`),
});

Options Reference

OptionTypeDefaultDescription
baseUrlstringhttps://api.triqai.comAPI base URL
maxRetriesnumber3Maximum number of retry attempts for transient errors
retryDelaynumber500Base delay between retries in milliseconds
maxRetryDelaynumber30000Maximum delay between retries in milliseconds
timeoutnumber60000Request timeout in milliseconds
defaultHeadersRecord<string, string>{}Extra headers sent with every request
onRequest(info) => voidCalled before each request with method, URL, and headers
onResponse(info) => voidCalled after each response with status, duration, and headers

Debug Hooks

Use onRequest and onResponse to log or monitor API calls without modifying your application logic:
const triqai = new Triqai("triq_your_api_key", {
  onRequest: (info) => {
    console.log(`→ ${info.method} ${info.url}`);
  },
  onResponse: (info) => {
    console.log(`← ${info.status} in ${info.durationMs}ms`);
    // info.headers contains X-RateLimit-* values
  },
});

Environment Variables

A common pattern is to read the API key from an environment variable:
import Triqai from "triqai";

const triqai = new Triqai(process.env.TRIQAI_API_KEY!);
.env
TRIQAI_API_KEY=triq_your_api_key_here