> ## Documentation Index
> Fetch the complete documentation index at: https://docs.buena.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# JavaScript/TypeScript SDK

> Official JavaScript/TypeScript SDK for Buena.ai API

The official JavaScript/TypeScript SDK for the Buena.ai API provides a premium developer experience with automatic updates and enterprise-grade features.

<Info>**🚀 SDK**:</Info>

## 📦 Installation

Install the SDK using npm, yarn, or pnpm:

<CodeGroup>
  ```bash npm theme={null}
  npm install @buena/sdk
  ```

  ```bash yarn theme={null}
  yarn add @buena/sdk
  ```

  ```bash pnpm theme={null}
  pnpm add @buena/sdk
  ```
</CodeGroup>

## 🚀 Quick Start

```typescript theme={null}
import { BuenaSdk } from "@buena/sdk";

// Initialize the client
const buena = new BuenaSdk({
  security: {
    apiKey: "your-api-key",
  },
  serverURL: "https://api.buena.ai/api/v2",
});

// List leads
const leads = await buena.default.listLeads();
console.log(leads);

// Create a new lead
const newLead = await buena.default.createLead({
  firstName: "John",
  lastName: "Doe",
  email: "john@example.com",
  company: "Example Corp",
});
```

## 🔧 Configuration

```typescript theme={null}
import { BuenaSdk } from "@buena/sdk";

const buena = new BuenaSdk({
  security: {
    apiKey: "your-api-key", // Required
  },
  serverURL: "https://api.buena.ai/api/v2", // Optional, defaults to production
  timeoutMs: 30000, // Optional, default 30 seconds
  retryConfig: {
    strategy: "backoff",
    backoff: {
      initialInterval: 1000,
      maxInterval: 10000,
      maxElapsedTime: 60000,
    },
    retryConnectionErrors: true,
  },
});
```

## 📋 Available Operations

### Leads Management

* `buena.default.listLeads()` - List all leads with optional filtering
* `buena.default.createLead()` - Create a new lead
* `buena.default.updateLead()` - Update an existing lead
* `buena.default.deleteLead()` - Delete a lead

### Voice Cloning

* `buena.default.listVoiceClones()` - List all voice clones
* `buena.default.createVoiceClone()` - Create voice clone with audio files
* `buena.default.updateVoiceClone()` - Update voice clone settings
* `buena.default.deleteVoiceClone()` - Delete a voice clone
* `buena.default.generateVoicePreview()` - Generate voice preview audio

### LinkedIn Voice Messaging

* `buena.default.scheduleLinkedInAction()` - Schedule LinkedIn actions including voice messages

### API Keys Management

* `buena.default.listApiKeys()` - List API keys
* `buena.default.createApiKey()` - Create API key

### Health Check

* `buena.default.healthCheck()` - Check API status

## 🔗 Repository & Advanced Usage

For complete documentation, examples, and source code:

<Card title="📁 JavaScript/TypeScript SDK Repository" icon="github" href="https://github.com/buena-ai/sdks/tree/main/typescript">
  Access the full SDK source code, advanced examples, and detailed
  documentation.
</Card>

## 💡 Features

✅ **Complete Type Safety** - Full TypeScript definitions\
✅ **Automatic Retries** - Built-in retry logic with exponential backoff\
✅ **Error Handling** - Comprehensive error types and responses\
✅ **Rate Limiting** - Automatic rate limit handling\
✅ **Auto Updates** - Automatically updated via GitHub Actions\
✅ **Premium Quality** - Enterprise-grade SDK generation

## 🛠️ Error Handling

```typescript theme={null}
import { SDKError } from "@buena/sdk/models/errors";

try {
  const leads = await buena.default.listLeads();
} catch (error) {
  if (error instanceof SDKError) {
    console.error(`API Error: ${error.message}`);
    console.error(`Status: ${error.statusCode}`);
  } else {
    console.error("Unexpected error:", error);
  }
}
```

## 🆘 Support

* **📖 Full Documentation**: [SDK Repository](https://github.com/buena-ai/sdks)
* **💬 Discord**: [Join our community](https://discord.gg/Hb4Y9Rgh6E)
* **📧 Email**: [support@buena.ai](mailto:support@buena.ai)
