TypeScript SDK

View on npm


Installation

bash
npm install @kubbi.ai/sdk

Send a single-content kubbi

typescript
import { KubbiClient } from "@kubbi.ai/sdk";

const client = new KubbiClient({ apiKey: "kb_your_api_key" });

const result = await client.send({
  content: "sensitive data here",
  contentType: "text/plain",
  ttlSeconds: 3600,
  maxRetrievals: 1,
});

console.log(result.claimUrl);
// https://api.kubbi.ai/r/abc123xyz

Send multiple files in one kubbi

typescript
const result = await client.sendFiles({
  files: [
    { name: "config.json", content: '{"env":"prod"}', contentType: "application/json", role: "config" },
    { name: "notes.md", content: "# Notes\nDeploy instructions.", contentType: "text/markdown", role: "instructions" },
  ],
  ttlSeconds: 3600,
  maxRetrievals: 1,
});

console.log(result.claimUrl);
console.log(result.fileCount);  // 2

Claim a kubbi

Consumer methods are static on KubbiClient. No API key needed.

typescript
const result = await KubbiClient.claim("https://api.kubbi.ai/r/abc123xyz");

console.log(result.content);
// "sensitive data here"
console.log(result.contentType);
// "text/plain"

Inspect before claiming

typescript
const meta = await KubbiClient.inspect("https://api.kubbi.ai/r/abc123xyz");

console.log(meta.status);          // "active"
console.log(meta.contentType);     // "text/plain"
console.log(meta.retrievalCount);  // 0
console.log(meta.maxRetrievals);   // 1

Delete a kubbi early

typescript
await client.delete("d290f1ee-6c54-4b01-90e6-d701748f0851");
// Payload is wiped immediately. Further claims return 410 Gone.