---
title: Update a Comment
description: Update comments in a particular discussion using the discussion ID and comment ID
url: https://storyblok.com/docs/api/management/discussions/update-a-comment
---

# Update a Comment

PUT

```html
https://mapi.storyblok.com/v1/spaces/:space_id/discussions/:discussion_id/comments/:comment_id
```

Update comments in a particular discussion using the discussion ID and comment ID

## Path parameters

-   `:space_id` (required) (number)
    
    Numeric ID of a space
    
-   `:discussion_id` (required) (number)
    
    The ID of the discussion
    
-   `:comment_id` (required) (number)
    
    The `ID` for a specific comment in a discussion
    

## Request body properties

-   `comment` (The Comments Object)
    
    The [comments object](/docs/api/management/discussions/the-comments-object)
    
    Show `The Comments Object` child properties
    
    -   `message` (null | string)
        
        The message of a comment, with the datatype of `null` or a `string`.
        
    -   `message_json` (required) (object)
        
        The `message_json` property is an array containing JSON objects representing the comments’ messages.
        
        Show `message_json object` child properties
        
        -   `text` (string)
            
            The text part
            
        -   `type` (string)
            
            The type
            
        -   `attrs` (object)
            
            Attributes
            
        
    

## Response properties

-   `comment` (The Comments Object)
    
    The [comments object](/docs/api/management/discussions/the-comments-object)
    

## Examples

-   cURL
    
    ```shellscript
    curl "https://mapi.storyblok.com/v1/spaces/288868932106293/discussions/2345/comments/456" \
      -X PUT \
      -H "Authorization: YOUR_OAUTH_TOKEN" \
      -H "Content-Type: application/json" \
      -d "{\"comment\":{\"message_json\":[{\"text\":\"Updated Comment \",\"type\":\"text\"}]}}"
    ```
    
-   JS
    
    ```javascript
    // storyblok-js-client@>=7, node@>=18
    import Storyblok from "storyblok-js-client";
    
    const storyblok = new Storyblok({
      oauthToken: "YOUR_PERSONAL_ACCESS_TOKEN",
    });
    
    try {
      const response = await storyblok.put('spaces/288868932106293/discussions/2345/comments/456', {
        "comment": {
          "message_json": [
            {
              "text": "Updated Comment ",
              "type": "text"
            }
          ]
        }
      })
      console.log({ response })
    } catch (error) {
      console.log(error)
    }
    ```
    
-   PHP
    
    ```php
    $client = new \Storyblok\ManagementClient('YOUR_OAUTH_TOKEN');
    
    $payload = ["comment" => ["message_json" => [["text" => "Updated Comment ","type" => "text"]]]];
    
    $client->put('spaces/288868932106293/discussions/2345/comments/456', $payload)->getBody();
    ```
    
-   Java
    
    ```java
    HttpResponse<String> response = Unirest.put("https://mapi.storyblok.com/v1/spaces/288868932106293/discussions/2345/comments/456")
      .header("Content-Type", "application/json")
      .header("Authorization", "YOUR_OAUTH_TOKEN")
      .body({"comment":{"message_json":[{"text":"Updated Comment ","type":"text"}]}})
      .asString();
    ```
    
-   C#
    
    ```csharp
    var client = new RestClient("https://mapi.storyblok.com/v1/spaces/288868932106293/discussions/2345/comments/456");
    var request = new RestRequest(Method.PUT);
    
    request.AddHeader("Content-Type", "application/json");
    request.AddHeader("Authorization", "YOUR_OAUTH_TOKEN");
    request.AddParameter("application/json", "{\"comment\":{\"message_json\":[{\"text\":\"Updated Comment \",\"type\":\"text\"}]}}", ParameterType.RequestBody);
    IRestResponse response = client.Execute(request);
    ```
    
-   Python
    
    ```python
    import requests
    
    url = "https://mapi.storyblok.com/v1/spaces/288868932106293/discussions/2345/comments/456"
    
    querystring = {}
    
    payload = {"comment":{"message_json":[{"text":"Updated Comment ","type":"text"}]}}
    headers = {
      'Content-Type': "application/json",
      'Authorization': "YOUR_OAUTH_TOKEN"
    }
    
    response = requests.request("PUT", url, data=payload, headers=headers, params=querystring)
    
    print(response.text)
    ```
    
-   Ruby
    
    ```ruby
    require 'storyblok'
    client = Storyblok::Client.new(oauth_token: 'YOUR_OAUTH_TOKEN')
    
    payload = {"comment" => {"message_json" => [{"text" => "Updated Comment ","type" => "text"}]}}
    
    client.put('spaces/288868932106293/discussions/2345/comments/456', payload)
    ```
    
-   Swift
    
    ```swift
    let storyblok = URLSession(storyblok: .mapi(accessToken: .oauth("YOUR_OAUTH_TOKEN")))
    var request = URLRequest(storyblok: storyblok, path: "spaces/288868932106293/discussions/2345/comments/456")
    request.httpMethod = "PUT"
    request.httpBody = try JSONSerialization.data(withJSONObject: [
        "comment": [
            "message_json": [
                [
                    "text": "Updated Comment ",
                    "type": "text",
                ],
            ],
        ],
    ])
    let (data, _) = try await storyblok.data(for: request)
    print(try JSONSerialization.jsonObject(with: data))
    ```
    
-   Kotlin
    
    ```kotlin
    val client = HttpClient {
        install(Storyblok(MAPI)) {
            accessToken = OAuth("YOUR_OAUTH_TOKEN")
        }
    }
    
    val response = client.put("spaces/288868932106293/discussions/2345/comments/456") {
        setBody(buildJsonObject {
            putJsonObject("comment") {
                putJsonArray("message_json") {
                    addJsonObject {
                        put("text", "Updated Comment ")
                        put("type", "text")
                    }
                }
            }
        })
    }
    
    println(response.body<JsonElement>())
    ```

## Pagination

-   [Previous: The Discussions Object](/docs/api/management/discussions/the-discussions-object)
-   [Next: Extensions](/docs/api/management/extensions)
