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 properties-
namerequired 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_OAUTH_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_OAUTH_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_OAUTH_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_OAUTH_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_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 = {"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: .oauth("YOUR_OAUTH_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 = OAuth("YOUR_OAUTH_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