# Installation ## CLI (Recommended) The ElevenLabs CLI is the fastest way to call the API from the terminal or scripts. ```bash # npm (any platform with Node.js) npm install -g @elevenlabs/cli ``` ```bash # macOS / Linux (Homebrew) brew install elevenlabs/tap/elevenlabs ``` ```powershell # Windows (Scoop) scoop bucket add elevenlabs https://github.com/elevenlabs/scoop-bucket scoop install elevenlabs ``` ```bash # Shell installer (any platform) curl --proto '=https' --tlsv1.2 -LsSf https://github.com/elevenlabs/cli/releases/latest/download/elevenlabs-cli-installer.sh | sh ``` Authenticate with either: ```bash # Option 1: Environment variable (picked up automatically) export ELEVENLABS_API_KEY="your-api-key" # Option 2: OAuth login (stores credentials in the OS keyring) elevenlabs auth login ``` ## JavaScript / TypeScript ```bash npm install @elevenlabs/elevenlabs-js ``` > **Important:** Always use `@elevenlabs/elevenlabs-js`. The old `elevenlabs` npm package (v1.x) is deprecated and should not be used. ```javascript import { ElevenLabsClient } from "@elevenlabs/elevenlabs-js"; // Option 1: Environment variable (recommended) // Set ELEVENLABS_API_KEY in your environment const client = new ElevenLabsClient(); // Option 2: Pass directly const client = new ElevenLabsClient({ apiKey: "your-api-key" }); ``` ### Migrating from deprecated packages If you have old packages installed, remove them: ```bash # Remove deprecated packages npm uninstall elevenlabs # Install the current packages npm install @elevenlabs/elevenlabs-js ``` **Import changes:** ```javascript // OLD (deprecated) import { ElevenLabsClient } from "elevenlabs"; // NEW (current) import { ElevenLabsClient } from "@elevenlabs/elevenlabs-js"; ``` ## Python ```bash pip install elevenlabs ``` ```python from elevenlabs import ElevenLabs # Option 1: Environment variable (recommended) # Set ELEVENLABS_API_KEY in your environment client = ElevenLabs() # Option 2: Pass directly client = ElevenLabs(api_key="your-api-key") ``` ## CLI Usage Once installed and authenticated, no headers or keys are needed on the command line: ```bash elevenlabs text-to-speech convert --voice-id JBFqnCBsd6RMkjVDRZzb \ --text "Hello world" --model-id eleven_multilingual_v2 --output output.mp3 ``` ## Getting an API Key 1. Sign up at [elevenlabs.io](https://elevenlabs.io) 2. Go to [API Keys](https://elevenlabs.io/app/settings/api-keys) 3. Click **Create API Key** 4. Copy and store securely Or use the `setup-api-key` skill for guided setup. ## Environment Variables | Variable | Description | |----------|-------------| | `ELEVENLABS_API_KEY` | Your ElevenLabs API key (required) |