npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@apicity/elevenlabs

v0.7.3

Published

ElevenLabs provider for sound effect generation, text-to-speech, and audio APIs.

Readme

@apicity/elevenlabs

npm dependencies TypeScript

ElevenLabs provider for sound effect generation, text-to-speech, and audio APIs.

Runtime dependencies:

  • zod@^4.4.3 — request schemas attached to every POST endpoint as .schema

Installation

npm install @apicity/elevenlabs
# or
pnpm add @apicity/elevenlabs

Quick Start

import { createElevenLabs } from "@apicity/elevenlabs";

const elevenlabs = createElevenLabs({ apiKey: process.env.ELEVENLABS_API_KEY! });

Real-world example: generate a sound effect, then run it through Scribe v2

ElevenLabs' two flagship audio surfaces fit together cleanly: text-to- sound-effects spits out raw MP3 bytes, and Scribe v2 hands back a typed transcript with word-level timestamps plus tagged audio events. The round-trip below — generate a UI click, then transcribe a separate clip with tag_audio_events: true — mirrors what tests/integration/elevenlabs-sound-generation.test.ts and tests/integration/elevenlabs-speech-to-text.test.ts replay against tests/recordings/elevenlabs_2379486140/, so every payload, response field, and byte count below comes straight from the recorded HARs.

import { readFileSync, writeFileSync } from "node:fs";
import { createElevenLabs } from "@apicity/elevenlabs";
import type { ElevenLabsTranscript } from "@apicity/elevenlabs";

const elevenlabs = createElevenLabs({ apiKey: process.env.ELEVENLABS_API_KEY! });

// 1. Generate a 0.5s UI click. soundGeneration returns the raw MP3 as
//    an ArrayBuffer — there's no JSON wrapper, the response body is
//    audio/mpeg straight off the wire. duration_seconds (0.5–30) caps
//    the clip length and prompt_influence (0–1) trades prompt-fidelity
//    for creative variation. The factory also accepts `output_format`
//    on the same request object and silently moves it to the URL query.
const audio = await elevenlabs.v1.soundGeneration({
  text: "soft ui click",
  duration_seconds: 0.5,
  prompt_influence: 0.3,
});

writeFileSync("./click.mp3", new Uint8Array(audio));
console.log(`Generated ${audio.byteLength} bytes of audio/mpeg`);
// → "Generated 11764 bytes of audio/mpeg"
//   ElevenLabs charged 10 characters for this call (visible in the
//   `character-cost` response header on the original request).

// 2. Transcribe a separate audio clip with Scribe v2. The request goes
//    up as multipart/form-data — pass a Blob and the rest as ergonomic
//    fields; the factory packs the form, sets xi-api-key, and parses
//    the JSON response. tag_audio_events: true tells Scribe to surface
//    non-speech events ([phone beeping], [laughter], [applause]) inline
//    with words instead of dropping them.
const phoneBeep = readFileSync("./phone-beeping.mp3"); // 2,528 bytes
const file = new Blob([phoneBeep], { type: "audio/mp3" });

const result = (await elevenlabs.v1.speechToText({
  file,
  model_id: "scribe_v2",
  language_code: "eng",
  tag_audio_events: true,
})) as ElevenLabsTranscript;

// 3. The transcript is rich. `text` is the human-readable form;
//    `words` is the per-token breakdown with absolute timestamps and a
//    `type` discriminator ("word" | "spacing" | "audio_event") plus a
//    `logprob` confidence. `transcription_id` is durable — you can
//    retrieve the same transcript later through the history API.
console.log(
  `${result.language_code} · ${(result.language_probability * 100).toFixed(0)}% confident`,
);
// → "eng · 100% confident"
console.log(
  `${result.audio_duration_secs}s · transcription_id=${result.transcription_id}`,
);
// → "0.5s · transcription_id=CeeidI2QJ8kkN1mcq8HX"
console.log(result.text);
// → "[phone beeping]"

// 4. Walk the words array, splitting audio events from spoken words
//    via the `type` discriminator. On a clip with no speech every
//    entry is an audio_event; on real speech you'll see "word" and
//    "spacing" entries interleaved with bracketed events.
for (const w of result.words) {
  const tag =
    w.type === "audio_event"
      ? "event"
      : w.type === "word"
        ? "word "
        : "space";
  console.log(
    `  ${tag}  [${w.start.toFixed(2)}–${w.end.toFixed(2)}s]  ${w.text}` +
      (w.logprob !== undefined ? ` (logprob ${w.logprob.toFixed(3)})` : ""),
  );
}
// → "  event  [0.00–0.44s]  [phone beeping] (logprob -0.335)"

Notes

  • soundGeneration returns binary, not JSON — the provider already reads it as arrayBuffer() and hands you an ArrayBuffer. Pass output_format: "mp3_44100_128" (or any other ElevenLabs codec string) on the request object and the factory will strip it from the body and move it to the ?output_format= URL query.
  • speechToText accepts either a file Blob or a cloud_storage_url (S3/GCS/HTTP). For long-form audio set webhook: true — the call returns a small ElevenLabsWebhookAcknowledgement instead of the transcript, and the finished result is delivered to your registered webhook. Type-narrow the union with "text" in result before reading transcript fields.
  • Set diarize: true and num_speakers to label words by speaker; the per-word speaker_id field gets populated in that mode. Combine with use_multi_channel: true for stereo audio and the response switches to ElevenLabsMultichannelTranscript (one transcript per channel under transcripts[]).
  • Errors throw ElevenLabsError with status, code, and the parsed body attached. ElevenLabs returns either FastAPI's { detail: [{msg, ...}] } shape or { detail: { status, message } }; the client normalises both into error.message.

API Reference

303 endpoints across 28 groups. Each method mirrors an upstream URL path.

audioIsolation

POST https://api.elevenlabs.io/v1/audio-isolation

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.audioIsolation({ /* ... */ });

Source: packages/provider/elevenlabs/src/audio.ts

DELETE https://api.elevenlabs.io/v1/audio-isolation/history/{historyItemId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.audioIsolation.history.delete({ /* ... */ });

Source: packages/provider/elevenlabs/src/audio.ts

GET https://api.elevenlabs.io/v1/audio-isolation/history

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.audioIsolation.history.list({ /* ... */ });

Source: packages/provider/elevenlabs/src/audio.ts

POST https://api.elevenlabs.io/v1/audio-isolation/stream

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.audioIsolation.stream({ /* ... */ });

Source: packages/provider/elevenlabs/src/audio.ts

audioNative

POST https://api.elevenlabs.io/v1/audio-native

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.audioNative({ /* ... */ });

Source: packages/provider/elevenlabs/src/audio.ts

POST https://api.elevenlabs.io/v1/audio-native/content

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.audioNative.content.fromUrl({ /* ... */ });

Source: packages/provider/elevenlabs/src/audio.ts

POST https://api.elevenlabs.io/v1/audio-native/{projectId}/content

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.audioNative.content.update({ /* ... */ });

Source: packages/provider/elevenlabs/src/audio.ts

GET https://api.elevenlabs.io/v1/audio-native/{projectId}/settings

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.audioNative.settings({ /* ... */ });

Source: packages/provider/elevenlabs/src/audio.ts

convai

GET https://api.elevenlabs.io/v1/convai/agent/{agentId}/knowledge-base/size

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agent.knowledgeBase.size({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/agent/{agentId}/llm-usage/calculate

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agent.llmUsage.calculate({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/agent-testing/bulk-move

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agentTesting.bulkMove({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/agent-testing/create

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agentTesting.create({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

DELETE https://api.elevenlabs.io/v1/convai/agent-testing/{testId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agentTesting.delete({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/agent-testing/folders

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agentTesting.folders.create({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

DELETE https://api.elevenlabs.io/v1/convai/agent-testing/folders/{folderId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agentTesting.folders.delete({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/agent-testing/folders/{folderId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agentTesting.folders.get({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

PATCH https://api.elevenlabs.io/v1/convai/agent-testing/folders/{folderId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agentTesting.folders.update({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/agent-testing/{testId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agentTesting.get({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/agent-testing

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agentTesting.list({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/agent-testing/summaries

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agentTesting.summaries({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

PUT https://api.elevenlabs.io/v1/convai/agent-testing/{testId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agentTesting.update({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/agents/{agentId}/avatar

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agents.avatar({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/agents/{agentId}/branches

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agents.branches({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/agents/{agentId}/branches

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agents.branches.create({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/agents/{agentId}/branches/{branchId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agents.branches.get({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/agents/{agentId}/branches/{sourceBranchId}/merge

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agents.branches.merge({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/agents/{agentId}/branches/{sourceBranchId}/merge-preview

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agents.branches.mergePreview({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/agents/{agentId}/branches/{branchId}/rebase

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agents.branches.rebase({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/agents/{agentId}/branches/{branchId}/rebase-preview

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agents.branches.rebasePreview({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

PATCH https://api.elevenlabs.io/v1/convai/agents/{agentId}/branches/{branchId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agents.branches.update({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/agents/create

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agents.create({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

DELETE https://api.elevenlabs.io/v1/convai/agents/{agentId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agents.delete({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/agents/{agentId}/deployments

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agents.deployments({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/agents/{agentId}/drafts

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agents.drafts.create({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

DELETE https://api.elevenlabs.io/v1/convai/agents/{agentId}/drafts

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agents.drafts.delete({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/agents/{agentId}/duplicate

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agents.duplicate({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/agents/{agentId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agents.get({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/agents/{agentId}/link

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agents.link({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/agents

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agents.list({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/agents/{agentId}/run-tests

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agents.runTests({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/agents/{agentId}/simulate-conversation

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agents.simulateConversation({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/agents/{agentId}/simulate-conversation/stream

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agents.simulateConversation.stream({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/agents/summaries

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agents.summaries({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/agents/{agentId}/topics

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agents.topics({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

PATCH https://api.elevenlabs.io/v1/convai/agents/{agentId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agents.update({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/agents/{agentId}/versions/{versionId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agents.versions.get({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/agents/{agentId}/widget

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.agents.widget({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/analytics/live-count

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.analytics.liveCount({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/batch-calling/{batchId}/cancel

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.batchCalling.cancel({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

DELETE https://api.elevenlabs.io/v1/convai/batch-calling/{batchId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.batchCalling.delete({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/batch-calling/{batchId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.batchCalling.get({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/batch-calling/{batchId}/retry

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.batchCalling.retry({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/batch-calling/submit

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.batchCalling.submit({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/batch-calling/workspace

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.batchCalling.workspace({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/conversation/get-signed-url

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.conversation.getSignedUrl({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/conversation/token

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.conversation.token({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/conversations/{conversationId}/analysis/run

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.conversations.analysis({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/conversations/{conversationId}/analysis/evaluations/run

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.conversations.analysis.evaluations({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/conversations/{conversationId}/audio

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.conversations.audio({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

DELETE https://api.elevenlabs.io/v1/convai/conversations/{conversationId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.conversations.delete({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/conversations/{conversationId}/feedback

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.conversations.feedback({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/conversations/{conversationId}/files

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.conversations.files({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

DELETE https://api.elevenlabs.io/v1/convai/conversations/{conversationId}/files/{fileId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.conversations.files.delete({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/conversations/{conversationId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.conversations.get({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/conversations

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.conversations.list({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/conversations/messages/smart-search

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.conversations.messages.smartSearch({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/conversations/messages/text-search

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.conversations.messages.textSearch({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/conversations/{conversationId}/sip-messages

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.conversations.sipMessages({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/conversations/{conversationId}/tags

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.conversations.tags({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

DELETE https://api.elevenlabs.io/v1/convai/conversations/{conversationId}/tags/{tagId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.conversations.tags.unassign({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/environment-variables

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.environmentVariables.create({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/environment-variables/{envVarId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.environmentVariables.get({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/environment-variables

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.environmentVariables.list({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

PATCH https://api.elevenlabs.io/v1/convai/environment-variables/{envVarId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.environmentVariables.update({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/exotel/outbound-call

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.exotel.outboundCall({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/knowledge-base/bulk-move

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.knowledgeBase.bulkMove({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/knowledge-base/{documentationId}/chunks

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.knowledgeBase.chunks({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/knowledge-base/{documentationId}/chunk/{chunkId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.knowledgeBase.chunks.get({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/knowledge-base/{documentationId}/content

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.knowledgeBase.content({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

DELETE https://api.elevenlabs.io/v1/convai/knowledge-base/{documentationId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.knowledgeBase.delete({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/knowledge-base/{documentationId}/dependent-agents

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.knowledgeBase.dependentAgents({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/knowledge-base/file

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.knowledgeBase.file({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/knowledge-base/folder

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.knowledgeBase.folder({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/knowledge-base/{documentationId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.knowledgeBase.get({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/knowledge-base

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.knowledgeBase.list({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/knowledge-base/{documentId}/move

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.knowledgeBase.move({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/knowledge-base/rag-index

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.knowledgeBase.ragIndex({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/knowledge-base/rag-index

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.knowledgeBase.ragIndex.batch({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/knowledge-base/{documentationId}/rag-index

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.knowledgeBase.ragIndex.compute({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

DELETE https://api.elevenlabs.io/v1/convai/knowledge-base/{documentationId}/rag-index/{ragIndexId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.knowledgeBase.ragIndex.delete({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/knowledge-base/{documentationId}/rag-index

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.knowledgeBase.ragIndex.get({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/knowledge-base/{documentationId}/refresh

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.knowledgeBase.refresh({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/knowledge-base/search

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.knowledgeBase.search({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/knowledge-base/{documentationId}/source-file-url

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.knowledgeBase.sourceFileUrl({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/knowledge-base/summaries

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.knowledgeBase.summaries({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/knowledge-base/text

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.knowledgeBase.text({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

PATCH https://api.elevenlabs.io/v1/convai/knowledge-base/{documentationId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.knowledgeBase.update({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

PATCH https://api.elevenlabs.io/v1/convai/knowledge-base/{documentationId}/update-file

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.knowledgeBase.updateFile({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/knowledge-base/url

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.knowledgeBase.url({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/llm/list

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.llm.list({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/llm-usage/calculate

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.llmUsage.calculate({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/mcp-servers

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.mcpServers.create({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

DELETE https://api.elevenlabs.io/v1/convai/mcp-servers/{mcpServerId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.mcpServers.delete({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/mcp-servers/{mcpServerId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.mcpServers.get({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/mcp-servers

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.mcpServers.list({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/mcp-servers/{mcpServerId}/tool-approvals

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.mcpServers.toolApprovals.create({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

DELETE https://api.elevenlabs.io/v1/convai/mcp-servers/{mcpServerId}/tool-approvals/{toolName}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.mcpServers.toolApprovals.delete({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/mcp-servers/{mcpServerId}/tool-configs

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.mcpServers.toolConfigs.create({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

DELETE https://api.elevenlabs.io/v1/convai/mcp-servers/{mcpServerId}/tool-configs/{toolName}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.mcpServers.toolConfigs.delete({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/mcp-servers/{mcpServerId}/tool-configs/{toolName}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.mcpServers.toolConfigs.get({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

PATCH https://api.elevenlabs.io/v1/convai/mcp-servers/{mcpServerId}/tool-configs/{toolName}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.mcpServers.toolConfigs.update({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/mcp-servers/{mcpServerId}/tools

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.mcpServers.tools({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

PATCH https://api.elevenlabs.io/v1/convai/mcp-servers/{mcpServerId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.mcpServers.update({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/phone-numbers

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.phoneNumbers.create({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

DELETE https://api.elevenlabs.io/v1/convai/phone-numbers/{phoneNumberId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.phoneNumbers.delete({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/phone-numbers/{phoneNumberId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.phoneNumbers.get({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/phone-numbers

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.phoneNumbers.list({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

GET https://api.elevenlabs.io/v1/convai/phone-numbers/{phoneNumberId}/sip-messages

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.phoneNumbers.sipMessages({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

PATCH https://api.elevenlabs.io/v1/convai/phone-numbers/{phoneNumberId}

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.phoneNumbers.update({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

POST https://api.elevenlabs.io/v1/convai/secrets

Cost tier: expensive

Upstream docs ↗

const res = await elevenlabs.v1.convai.secrets.create({ /* ... */ });

Source: packages/provider/elevenlabs/src/convai.ts

DELETE https://api.elevenlabs.io/v1/convai/secrets/{secretId}

Cost tier: expensive

[Upstream docs ↗](https://e