Create a Discussion
https://mapi.storyblok.com/v1/spaces/space_id/stories/story_id/discussionsThis endpoint creates a new discussion.
Path parameters
Section titled “Path parameters”- :space_id required number
Numeric ID of a space
- :story_id required number
ID of the story
Request body properties
Section titled “Request body properties”- comment required object
The
commentis an object in the discussion that contains amessage_jsonarray object.Show
Themessage_jsonpropertiesmessage_jsonproperty is an array containing JSON objects representing the comments’ messages.- text string
The text part
- type string
The type
- attrs object
Attributes
-
- lang string
Language code to add the discussion to.
- title required string
Title of the discussion field.
- fieldname string
Technical name of the discussion field
- block_uid required string
The ID of discussion block.
- component string
The component/block name to which the discussion belongs to
Response properties
Section titled “Response properties”- discussion The Discussions Object
Examples
Section titled “Examples”curl "https://mapi.storyblok.com/v1/spaces/288868932106293/stories/12367/discussions" \ -X POST \ -H "Authorization: YOUR_OAUTH_TOKEN" \ -H "Content-Type: application/json" \ -d "{\"discussion\":{\"block_uid\":\"f7bd92e3-b309-4441-a8a0-654e499fefc8\",\"comment\":{\"message_json\":[{\"text\":\"this is a comment \",\"type\":\"text\"},{\"attrs\":{\"id\":99734,\"label\":\"Fortune Ikechi\"},\"type\":\"mention\"}]},\"component\":\"feature\",\"fieldname\":\"name\",\"lang\":\"default\",\"title\":\"Name\"}}"// Using the Universal JavaScript Client:// https://github.com/storyblok/storyblok-js-clientStoryblok.post('spaces/288868932106293/stories/12367/discussions', { "discussion": { "block_uid": "f7bd92e3-b309-4441-a8a0-654e499fefc8", "comment": { "message_json": [ { "text": "this is a comment ", "type": "text" }, { "attrs": { "id": 99734, "label": "Fortune Ikechi" }, "type": "mention" } ] }, "component": "feature", "fieldname": "name", "lang": "default", "title": "Name" }}) .then(response => { console.log(response) }).catch(error => { console.log(error) })$client = new \Storyblok\ManagementClient('YOUR_OAUTH_TOKEN');
$payload = ["discussion" => ["block_uid" => "f7bd92e3-b309-4441-a8a0-654e499fefc8","comment" => ["message_json" => [["text" => "this is a comment ","type" => "text"],["attrs" => ["id" => 99734,"label" => "Fortune Ikechi"],"type" => "mention"]]],"component" => "feature","fieldname" => "name","lang" => "default","title" => "Name"]];
$client->post('spaces/288868932106293/stories/12367/discussions', $payload)->getBody();HttpResponse<String> response = Unirest.post("https://mapi.storyblok.com/v1/spaces/288868932106293/stories/12367/discussions") .header("Content-Type", "application/json") .header("Authorization", "YOUR_OAUTH_TOKEN") .body({"discussion":{"block_uid":"f7bd92e3-b309-4441-a8a0-654e499fefc8","comment":{"message_json":[{"text":"this is a comment ","type":"text"},{"attrs":{"id":99734,"label":"Fortune Ikechi"},"type":"mention"}]},"component":"feature","fieldname":"name","lang":"default","title":"Name"}}) .asString();var client = new RestClient("https://mapi.storyblok.com/v1/spaces/288868932106293/stories/12367/discussions");var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/json");request.AddHeader("Authorization", "YOUR_OAUTH_TOKEN");request.AddParameter("application/json", "{\"discussion\":{\"block_uid\":\"f7bd92e3-b309-4441-a8a0-654e499fefc8\",\"comment\":{\"message_json\":[{\"text\":\"this is a comment \",\"type\":\"text\"},{\"attrs\":{\"id\":99734,\"label\":\"Fortune Ikechi\"},\"type\":\"mention\"}]},\"component\":\"feature\",\"fieldname\":\"name\",\"lang\":\"default\",\"title\":\"Name\"}}", ParameterType.RequestBody);IRestResponse response = client.Execute(request);import requests
url = "https://mapi.storyblok.com/v1/spaces/288868932106293/stories/12367/discussions"
querystring = {}
payload = {"discussion":{"block_uid":"f7bd92e3-b309-4441-a8a0-654e499fefc8","comment":{"message_json":[{"text":"this is a comment ","type":"text"},{"attrs":{"id":99734,"label":"Fortune Ikechi"},"type":"mention"}]},"component":"feature","fieldname":"name","lang":"default","title":"Name"}}headers = { 'Content-Type': "application/json", 'Authorization': "YOUR_OAUTH_TOKEN"}
response = requests.request("POST", url, data=payload, headers=headers, params=querystring)
print(response.text)require 'storyblok'client = Storyblok::Client.new(oauth_token: 'YOUR_OAUTH_TOKEN')
payload = {"discussion" => {"block_uid" => "f7bd92e3-b309-4441-a8a0-654e499fefc8","comment" => {"message_json" => [{"text" => "this is a comment ","type" => "text"},{"attrs" => {"id" => 99734,"label" => "Fortune Ikechi"},"type" => "mention"}]},"component" => "feature","fieldname" => "name","lang" => "default","title" => "Name"}}
client.post('spaces/288868932106293/stories/12367/discussions', payload)var request = URLRequest(url: URL(string: "https://mapi.storyblok.com/v1/spaces/288868932106293/stories/12367/discussions")!)request.setValue("YOUR_OAUTH_TOKEN", forHTTPHeaderField: "Authorization")request.httpMethod = "POST"request.httpBody = try JSONSerialization.data(withJSONObject: [ "discussion": [ "block_uid": "f7bd92e3-b309-4441-a8a0-654e499fefc8", "comment": [ "message_json": [ [ "text": "this is a comment ", "type": "text", ], [ "attrs": [ "id": 99734, "label": "Fortune Ikechi", ], "type": "mention", ], ], ], "component": "feature", "fieldname": "name", "lang": "default", "title": "Name", ],])let (data, _) = try await URLSession.shared.data(for: request)print(try JSONSerialization.jsonObject(with: data))val client = HttpClient { install(ContentNegotiation) { json() } install(DefaultRequest) { url { takeFrom("https://mapi.storyblok.com/v1/") headers.append("Authorization", "YOUR_OAUTH_TOKEN") } }}
val response = client.post("spaces/288868932106293/stories/12367/discussions") { contentType(ContentType.Application.Json) setBody(buildJsonObject { putJsonObject("discussion") { put("block_uid", "f7bd92e3-b309-4441-a8a0-654e499fefc8") putJsonObject("comment") { putJsonArray("message_json") { addJsonObject { put("text", "this is a comment ") put("type", "text") } addJsonObject { putJsonObject("attrs") { put("id", 99734) put("label", "Fortune Ikechi") } put("type", "mention") } } } put("component", "feature") put("fieldname", "name") put("lang", "default") put("title", "Name") } })}
println(response.body<JsonElement>())You will receive a discussions object as a response.
Get in touch with the Storyblok community