--- title: "Edit topic" slug: "datastream-puttopicid" updated: 2026-09-17T09:47:59Z published: 2026-09-17T09:47:59Z canonical: "api.ncloud-docs.com/datastream-puttopicid" --- > ## Documentation Index > Fetch the complete documentation index at: https://api.ncloud-docs.com/llms.txt > Use this file to discover all available pages before exploring further. # Edit topic Available in VPC Edit topic information. ## Request This section describes the request format. The method and URI are as follows: | Method | URI | | --- | --- | | PUT | /api/v1/topics/{topicId} | ### Request headers For information about the headers common to all Data Stream APIs, see [Data Stream request headers](/docs/en/datastream-overview#%EC%9A%94%EC%B2%AD%ED%97%A4%EB%8D%94). ### Request path parameters You can use the following path parameters with your request: | Field | Type | Required | Description | | --- | --- | --- | --- | | `topicId` | String | Required | Topic ID - See [Get topic list](/docs/en/datastream-gettopic). | ### Request body You can include the following data in the body of your request: | Field | Type | Required | Description | | --- | --- | --- | --- | | `description` | String | Required | Topic description (up to 200 characters) | | `partitions` | Number | Required | Number of topic partitions - 1-16 (default: 1) - Once created, you can't subtract from the number you set, only add to it. | | `retentionMs` | Number | Required | Topic partition message retention period (millisecond) - 3600000-1296000000 (default: 86400000) | ### Request example The request example is as follows: ``` curl --location --request PUT 'https://datastream.apigw.ntruss.com/api/v1/topics/mgNWA*****' \ --header 'x-ncp-apigw-timestamp: {Timestamp}' \ --header 'x-ncp-iam-access-key: {Access Key}' \ --header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' \ --data '{ "description": "This is a description", "partition": 3, "retentionMs": 86400000 }' ``` ## Response This section describes the response format. ### Response body The response body includes the following data: | Field | Type | Required | Description | | --- | --- | --- | --- | | `topicId` | String | - | Topic ID | | `topicName` | String | - | Topic name | | `description` | String | - | Topic description | | `partitions` | Number | - | Number of topic partitions | | `retentionMs` | Number | - | Topic partition data retention period (millisecond) | | `status` | String | - | Topic status - `CREATED` (valid value) - Topic creation completed, normal operation (active) | | `tcpEndpoint` | String | - | TCP endpoint | | `createdDate` | String | - | Topic creation date and time - ISO 8601 format - `YYYY-MM-DDThh:mm:ssZ` | | `updatedDate` | String | - | Topic update date and time - ISO 8601 format - `YYYY-MM-DDThh:mm:ssZ` | ### Response status codes For information about the HTTP status codes common to all Data Stream APIs, see [Data Stream response status codes](/docs/en/datastream-overview#%EC%9D%91%EB%8B%B5%EC%83%81%ED%83%9C%EC%BD%94%EB%93%9C). ### Response example The response example is as follows: ``` { "topicId": "mgNWA*****", "topicName": "h4j6l-ds001", "description": "This is a description", "partitions": 3, "retentionMs": 86400000, "status": "CREATED", "tcpEndpoint": "cluster-1.datastream.naverncp.com:30010", "createdDate": "2025-06-02T15:20:18Z", "updatedDate": "2025-06-05T09:27:47Z" } ```