Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.prem.io/llms.txt

Use this file to discover all available pages before exploring further.

Basic API Key Authentication

Authenticate using your API key:
import createRvencClient from "@premai/api-sdk";

const client = await createRvencClient({
  apiKey: process.env.API_KEY,
  clientKEK: process.env.CLIENT_KEK
});

// Verify authentication
const response = await client.chat.completions.create({
  model: "openai/gpt-oss-120b",
  messages: [{ role: "user", content: "Hello!" }],
});

console.log(response.choices[0].message.content);

Using Pre-generated Keys

Use pre-generated encryption keys for better performance:
import createRvencClient, { generateEncryptionKeys } from "@premai/api-sdk";

// Generate keys once
const encryptionKeys = await generateEncryptionKeys();

// Reuse keys across multiple requests
const client = await createRvencClient({
  apiKey: process.env.API_KEY,
  encryptionKeys,
});

const response = await client.chat.completions.create({
  model: "openai/gpt-oss-120b",
  messages: [{ role: "user", content: "Hello!" }],
});

console.log(response.choices[0].message.content);

Using Custom Options

Configure custom options like timeout and buffer size:
const client = await createRvencClient({
  apiKey: process.env.API_KEY,
  clientKEK: process.env.CLIENT_KEK
  requestTimeoutMs: 60000, // 60 seconds
  maxBufferSize: 20 * 1024 * 1024, // 20MB
});