Create an Idea
https://mapi.storyblok.com/v1/spaces/:space_id/ideasThis endpoint is to create an Idea in the Ideation Room. In the request body, passing name in the idea object is a minimum requirement.
Path parameters
Section titled “Path parameters”:space_idrequired numberNumeric ID of a space
Request body properties
Section titled “Request body properties”ideaobjectA single idea object
Show
objectchild propertiesnamerequired stringName of the Idea
descriptionstringA description of your Idea
contentobjectThe content of your Idea
statusstringStatus of approval
story_idsnumber[]List of story IDs
is_privatebooleanDefines the public or private status of the idea
bookmarksobjectBookmark URLs and their names with _uid
Show child properties
_uidstringUUID of the bookmark.
linkstringURL of the bookmark.
labelstringDisplay name of the bookmark.
internal_tags_listobject[]List of objects containing the details of tags used for the component
Show child properties
idnumberId of the tag
namestringName of the tag
internal_tag_idsstring[]List of ids of the tags assigned to the component
authorobjectThe author object inside an Idea
Show child properties
idnumberThe numeric ID
avatarstringAvatar of collaborator usually an image
useridstringUser ID of collaborator
friendly_namestringFriendly name of collaborator
assigneeobjectThe assignee object inside an Idea
Show child properties
idnumberThe numeric ID
avatarstringAvatar of collaborator usually an image
useridstringUser ID of collaborator
friendly_namestringFriendly name of collaborator
storiesIdea's Stories ObjectAn array of the idea’s stories object
Show child properties
namestringThe complete name provided for the story
idnumberThe numeric ID
full_slugstringThe full slug of the story, combining the parent folder(s) and the designated story slug
Response properties
Section titled “Response properties”ideaobjectA single idea object
Examples
Section titled “Examples”curl "https://mapi.storyblok.com/v1/spaces/288868932106293/ideas" \ -X POST \ -H "Authorization: YOUR_PERSONAL_ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d "{\"idea\":{\"assignee\":null,\"author\":{\"avatar\":\"avatars/67891/838dcb304c/avatar.jpg\",\"friendly_name\":\"Jon Doe\",\"id\":67891,\"userid\":\"test@email.com\"},\"bookmarks\":[],\"content\":{},\"deleted_at\":null,\"description\":\"First idea\",\"internal_tag_ids\":[\"12345\"],\"internal_tags_list\":[{\"id\":12345,\"name\":\"docs\"}],\"is_private\":true,\"name\":\"My first idea\",\"status\":\"draft\",\"stories\":[],\"story_ids\":[]}}"// storyblok-js-client@>=7, node@>=18import Storyblok from "storyblok-js-client";
const storyblok = new Storyblok({ oauthToken: "YOUR_PERSONAL_ACCESS_TOKEN",});
try { const response = await storyblok.post('spaces/288868932106293/ideas', { "idea": { "assignee": null, "author": { "avatar": "avatars/67891/838dcb304c/avatar.jpg", "friendly_name": "Jon Doe", "id": 67891, "userid": "test@email.com" }, "bookmarks": [], "content": {}, "deleted_at": null, "description": "First idea", "internal_tag_ids": [ "12345" ], "internal_tags_list": [ { "id": 12345, "name": "docs" } ], "is_private": true, "name": "My first idea", "status": "draft", "stories": [], "story_ids": [] } }) console.log({ response })} catch (error) { console.log(error)}$client = new \Storyblok\ManagementClient('YOUR_PERSONAL_ACCESS_TOKEN');
$payload = ["idea" => ["assignee" => null,"author" => ["avatar" => "avatars/67891/838dcb304c/avatar.jpg","friendly_name" => "Jon Doe","id" => 67891,"userid" => "test@email.com"],"bookmarks" => [],"content" => [],"deleted_at" => null,"description" => "First idea","internal_tag_ids" => ["12345"],"internal_tags_list" => [["id" => 12345,"name" => "docs"]],"is_private" => true,"name" => "My first idea","status" => "draft","stories" => [],"story_ids" => []]];
$client->post('spaces/288868932106293/ideas', $payload)->getBody();HttpResponse<String> response = Unirest.post("https://mapi.storyblok.com/v1/spaces/288868932106293/ideas") .header("Content-Type", "application/json") .header("Authorization", "YOUR_PERSONAL_ACCESS_TOKEN") .body({"idea":{"assignee":null,"author":{"avatar":"avatars/67891/838dcb304c/avatar.jpg","friendly_name":"Jon Doe","id":67891,"userid":"test@email.com"},"bookmarks":[],"content":{},"deleted_at":null,"description":"First idea","internal_tag_ids":["12345"],"internal_tags_list":[{"id":12345,"name":"docs"}],"is_private":true,"name":"My first idea","status":"draft","stories":[],"story_ids":[]}}) .asString();var client = new RestClient("https://mapi.storyblok.com/v1/spaces/288868932106293/ideas");var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/json");request.AddHeader("Authorization", "YOUR_PERSONAL_ACCESS_TOKEN");request.AddParameter("application/json", "{\"idea\":{\"assignee\":null,\"author\":{\"avatar\":\"avatars/67891/838dcb304c/avatar.jpg\",\"friendly_name\":\"Jon Doe\",\"id\":67891,\"userid\":\"test@email.com\"},\"bookmarks\":[],\"content\":{},\"deleted_at\":null,\"description\":\"First idea\",\"internal_tag_ids\":[\"12345\"],\"internal_tags_list\":[{\"id\":12345,\"name\":\"docs\"}],\"is_private\":true,\"name\":\"My first idea\",\"status\":\"draft\",\"stories\":[],\"story_ids\":[]}}", ParameterType.RequestBody);IRestResponse response = client.Execute(request);import requests
url = "https://mapi.storyblok.com/v1/spaces/288868932106293/ideas"
querystring = {}
payload = {"idea":{"assignee":null,"author":{"avatar":"avatars/67891/838dcb304c/avatar.jpg","friendly_name":"Jon Doe","id":67891,"userid":"test@email.com"},"bookmarks":[],"content":{},"deleted_at":null,"description":"First idea","internal_tag_ids":["12345"],"internal_tags_list":[{"id":12345,"name":"docs"}],"is_private":true,"name":"My first idea","status":"draft","stories":[],"story_ids":[]}}headers = { 'Content-Type': "application/json", 'Authorization': "YOUR_PERSONAL_ACCESS_TOKEN"}
response = requests.request("POST", url, data=payload, headers=headers, params=querystring)
print(response.text)require 'storyblok'client = Storyblok::Client.new(oauth_token: 'YOUR_PERSONAL_ACCESS_TOKEN')
payload = {"idea" => {"assignee" => null,"author" => {"avatar" => "avatars/67891/838dcb304c/avatar.jpg","friendly_name" => "Jon Doe","id" => 67891,"userid" => "test@email.com"},"bookmarks" => [],"content" => {},"deleted_at" => null,"description" => "First idea","internal_tag_ids" => ["12345"],"internal_tags_list" => [{"id" => 12345,"name" => "docs"}],"is_private" => true,"name" => "My first idea","status" => "draft","stories" => [],"story_ids" => []}}
client.post('spaces/288868932106293/ideas', payload)let storyblok = URLSession(storyblok: .mapi(accessToken: .personal("YOUR_PERSONAL_ACCESS_TOKEN")))var request = URLRequest(storyblok: storyblok, path: "spaces/288868932106293/ideas")request.httpMethod = "POST"request.httpBody = try JSONSerialization.data(withJSONObject: [ "idea": [ "assignee": nil, "author": [ "avatar": "avatars/67891/838dcb304c/avatar.jpg", "friendly_name": "Jon Doe", "id": 67891, "userid": "test@email.com", ], "bookmarks": [ ], "content": [ ], "deleted_at": nil, "description": "First idea", "internal_tag_ids": [ "12345", ], "internal_tags_list": [ [ "id": 12345, "name": "docs", ], ], "is_private": true, "name": "My first idea", "status": "draft", "stories": [ ], "story_ids": [ ], ],])let (data, _) = try await storyblok.data(for: request)print(try JSONSerialization.jsonObject(with: data))val client = HttpClient { install(Storyblok(MAPI)) { accessToken = Personal("YOUR_PERSONAL_ACCESS_TOKEN") }}
val response = client.post("spaces/288868932106293/ideas") { setBody(buildJsonObject { putJsonObject("idea") { put("assignee", null) putJsonObject("author") { put("avatar", "avatars/67891/838dcb304c/avatar.jpg") put("friendly_name", "Jon Doe") put("id", 67891) put("userid", "test@email.com") } putJsonArray("bookmarks") { } putJsonObject("content") { } put("deleted_at", null) put("description", "First idea") putJsonArray("internal_tag_ids") { add("12345") } putJsonArray("internal_tags_list") { addJsonObject { put("id", 12345) put("name", "docs") } } put("is_private", true) put("name", "My first idea") put("status", "draft") putJsonArray("stories") { } putJsonArray("story_ids") { } } })}
println(response.body<JsonElement>())Was this page helpful?
This site uses reCAPTCHA and Google's Privacy Policy (opens in a new window).Terms of Service (opens in a new window) apply.
Get in touch with the Storyblok community