Manage agent conversations and sessions with audio recording and feedback capabilities.
import { ElevenLabsClient } from "@elevenlabs/elevenlabs-js";
const client = new ElevenLabsClient({ apiKey: "your-api-key" });
// Access this API via: client.conversationalAi.conversations/**
* List conversations
*/
client.conversationalAi.conversations.list(
request?: ConversationsListRequest,
requestOptions?: RequestOptions
): HttpResponsePromise<GetConversationsPageResponseModel>;
/**
* Get conversation details
*/
client.conversationalAi.conversations.get(
conversation_id: string,
requestOptions?: RequestOptions
): HttpResponsePromise<GetConversationResponseModel>;
/**
* Get conversation audio signed URL
*/
client.conversationalAi.conversations.getSignedUrl(
request: ConversationsGetSignedUrlRequest,
requestOptions?: RequestOptions
): HttpResponsePromise<GetConversationSignedUrlResponseModel>;
/**
* Get WebRTC token for real-time conversation
*/
client.conversationalAi.conversations.getWebrtcToken(
request: ConversationsGetWebrtcTokenRequest,
requestOptions?: RequestOptions
): HttpResponsePromise<TokenResponseModel>;
/**
* Delete a conversation
*/
client.conversationalAi.conversations.delete(
conversation_id: string,
requestOptions?: RequestOptions
): HttpResponsePromise<unknown>;Access audio recordings from conversations.
/**
* Get the audio recording of a particular conversation
* @param conversation_id - The conversation ID
* @param requestOptions - Optional request configuration
* @returns Audio stream
* @throws UnprocessableEntityError if request fails
*/
client.conversationalAi.conversations.audio.get(
conversation_id: string,
requestOptions?: RequestOptions
): HttpResponsePromise<ReadableStream<Uint8Array>>;Submit and manage feedback for conversations.
/**
* Send feedback for a conversation
* @param conversation_id - The conversation ID
* @param request - Feedback data (rating, comments)
* @param requestOptions - Optional request configuration
* @throws UnprocessableEntityError if request fails
*/
client.conversationalAi.conversations.feedback.create(
conversation_id: string,
request: ConversationFeedbackRequestModel,
requestOptions?: RequestOptions
): HttpResponsePromise<unknown>;
interface ConversationFeedbackRequestModel {
/** Feedback type: "like", "dislike", or rating */
feedback?: string;
/** Optional comment */
comment?: string;
/** Optional numeric rating */
rating?: number;
}import { ElevenLabsClient } from "@elevenlabs/elevenlabs-js";
const client = new ElevenLabsClient({ apiKey: "your-api-key" });
// List recent conversations
const conversations = await client.conversationalAi.conversations.list({
page_size: 10
});
// Get conversation details
const conversation = await client.conversationalAi.conversations.get(
conversations.items[0].conversation_id
);
// Download audio recording
const audioStream = await client.conversationalAi.conversations.audio.get(
conversation.conversation_id
);
// Submit feedback
await client.conversationalAi.conversations.feedback.create(
conversation.conversation_id,
{
feedback: "like",
rating: 5,
comment: "Great conversation!"
}
);