---
title: "Replace a topic's full destination set (map keyed by destination id)"
method: PUT
path: "/topics/{topic_id}/destinations"
tags: ["Topics"]
---

# Replace a topic's full destination set (map keyed by destination id)

`PUT /topics/{topic_id}/destinations`

## Request

- Base URL: `https://api.streamkap.com`
- URL: `https://api.streamkap.com/topics/{topic_id}/destinations`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/streamkap/apis/streamkap-rest-api/docs/topics/:topic_id/destinations/put.ts> (a function with typed inputs; its response is checked against the schema)

## Path parameters

- `topic_id` string, required

## Request body

- ReplaceTopicDestinationsReq: Body for ``PUT /topics/{topic_id}/destinations`` — the topic's full destination set, keyed by destination id. The value object is reserved for future per-link options; an empty object attaches with defaults.
  - `destinations` object

## Response `200`

Successful Response

- TopicDestinationLink[]
  - `binding_id` string, required
  - `source_id` string, required
  - `destination_id` string, required
  - `destination_name` string, required
  - `destination_connector` string, required
  - `topic_ids` string[], required
  - `managed` boolean

## Other responses

- `422`: Validation Error

## Changes

- **2026-10-01** `50e54c2e65f2`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/streamkap/apis/streamkap-rest-api/changes/topics/:topic_id/destinations/put.md)

---

[API](https://skmtc.dev/streamkap/apis/streamkap-rest-api.md) - [All operations](https://skmtc.dev/streamkap/apis/streamkap-rest-api/llms.txt) - [OpenAPI document](https://skmtc.dev/streamkap/apis/streamkap-rest-api/revisions/56dda39bb53c?raw)
