---
updatedAt: 2026-09-14T11:56:52.000Z
agentTools:
  projectIndex: https://docs.d-id.com/llms.txt
---

# Talks Streams Overview

## ⚠️ Legacy Overview - Please Use Agents SDK / Agents Streams

The **Talks/Clips Streams (Live Streaming API)** endpoints are a **legacy feature**.

While they remain **supported for existing integrations**, we highly encourage developers to use the newer **[Agents SDK](https://docs.d-id.com/reference/agents-sdk-overview#/)** or the **<Anchor label="Agents Streams" target="_blank" href="https://docs.d-id.com/reference/createagentstream">Agents Streams</Anchor>** going forward.

<br />

#### **Why migrate?**

* **Better performance & lower latency**
* **Easier integration with the Agents SDK** - no need to manage WebRTC and API calls manually
* **Same core functionality (real-time video streaming) plus more:**
  * Real-time video responses from the LLM, enhanced with Knowledge and RAG.
  * Advanced features like **Fluent streaming + Interrupt** (for Agents with V3 Pro Avatars) and upcoming capabilities
* Future-proof: all new features will be released **only** for Agents SDK / Agents Streams
* **Same pricing** as Talks/Clips Streams

👉 If you’re just getting started: skip this page and head to **<Anchor label="Agents SDK" target="_blank" href="https://docs.d-id.com/reference/agents-sdk-overview#/">Agents SDK</Anchor>** / **[Agents Streams](https://docs.d-id.com/reference/createagentstream)**

👉 If you need to maintain an existing Talks/Clips Streams integration, see the **Legacy mapping** below
to migrate smoothly.

<br />

## Legacy mapping

If you’re migrating from the old **Talks/Streams or Clips/Streams** see the following mapping to transition smoothly:

<Table align={["left","left","left"]}>
  <thead>
    <tr>
      <th>
        Legacy endpoint
      </th>

      <th>
        Agents SDK equivalent
      </th>

      <th>
        Agents Streams equivalent
      </th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>
        _Create a new Stream_

        `POST /talks/streams`

        `POST /clips/streams`
      </td>

      <td>
        `agentManager.connect()`
      </td>

      <td>
        `POST /agents/{agentId}/streams`
      </td>
    </tr>

    <tr>
      <td>
        _Start a WebRTC connection_

        `POST /talks/streams/{streamId}/sdp`

        `POST /clips/streams/{streamId}/sdp`
      </td>

      <td>
        Handled by `agentManager.connect()`
      </td>

      <td>
        `POST /agents/{agentId}/streams/{streamId}/sdp`
      </td>
    </tr>

    <tr>
      <td>
        _Submit network information_

        `POST /talks/streams/{streamId}/ice`

        `POST /clips/streams/{streamId}/ice`
      </td>

      <td>
        Handled by `agentManager.connect()`
      </td>

      <td>
        `POST /agents/{agentId}/streams/{streamId}/ice`
      </td>
    </tr>

    <tr>
      <td>
        _Text/Audio input → Avatar reply_

        _Create a talk stream_

        `POST /talks/streams/{streamId}`

        _Create a clip stream_

        `POST /clips/streams/{streamId}`
      </td>

      <td>
        `agentManager.speak()`
      </td>

      <td>
        _Create a video stream_

        `POST /agents/{agentId}/streams/{streamId}`
      </td>
    </tr>

    <tr>
      <td>
        _LLM response → Avatar reply_

        `N/A`
      </td>

      <td>
        `agentManager.chat()`
      </td>

      <td>
        _Create a chat_

        `POST /agents/{agentId}/chat`

        _Send a message to a Chat_

        `POST /agents/{agentId}/chat/{chatId}`
      </td>
    </tr>

    <tr>
      <td>
        _Close stream_

        `DELETE /talks/streams/{streamId}`

        `DELETE /clips/streams/{streamId}`
      </td>

      <td>
        `agentManager.disconnect()`
      </td>

      <td>
        `DELETE /agents/{agentId}/streams/{streamId}`
      </td>
    </tr>
  </tbody>
</Table>

> Note: Most WebRTC client code (SDP/ICE handlers, RTCPeerConnection wiring) is reusable from the previous demo repository.
> You can still use that repository as a starting point - just update the API calls to the new **Agents Streams endpoints**.
> Keep in mind that creating an Agent is a prerequisite before starting a stream.
>
> When using the **SDK**, all of this is handled for you through simple functions, making integration much easier.

<br />

## Support

<CoolSupport />