⚠️Draft Content
Storyblok
Search Storyblok's Documentation
  1. Update an Idea

Management API

Update an Idea

Update an idea using an idea uuid. In the request body, it's required to pass the idea object.

https://mapi.storyblok.com/v1/spaces/:space_id/ideas/:idea_id

Path Parameters

  • :space_id

    required number

    Numeric ID of a space

  • :idea_uuid

    required string

    Numeric uuid of an idea

Request Body Properties

  • stories

    Bulk Tags Association Object[]

    Bulk Tags Association Object array

    • story_id

      number

      Numeric ID of the Story

    • tag_list

      string[]

      List of tag names

Response Properties

  • stories

    Bulk Tags Association Object[]

    Bulk Tags Association Object array

    • story_id

      number

      Numeric ID of the Story

    • tag_list

      string[]

      List of tag names

Request
curl "https://mapi.storyblok.com/v1/spaces/606/ideas/ab123cd4-5e6f-7gh8-9ij1-01k112l13m1n" \ 
  -X PUT \
  -H "Authorization: YOUR_OAUTH_TOKEN" \
  -H "Content-Type: application/json" \
  -d "{\"idea\": {\"name\": \"My first idea\",\"description\": \"First idea\",\"content\": {},\"deleted_at\": null,\"status\": \"draft\",\"story_ids\": [],\"is_private\": true,\"bookmarks\": [],\"internal_tags_list\": [{\"id\": 12345,\"name\": \"docs\"}],\"internal_tag_ids\": [\"12345\"],\"author\": {\"id\": 67891,\"userid\": \"test@email.com\",\"friendly_name\": \"Jon Doe\",\"avatar\": \"avatars/67891/838dcb304c/avatar.jpg\"},\"assignee\": null,\"stories\": []}}"
Request
// Using the Universal JavaScript Client:
// https://github.com/storyblok/storyblok-js-client
Storyblok.put('/spaces/606/ideas/ab123cd4-5e6f-7gh8-9ij1-01k112l13m1n', {
  "idea": {
    "name": "My first idea",
    "description": "First idea",
    "content": {},
    "deleted_at": null,
    "status": "draft",
    "story_ids": [],
    "is_private": true,
    "bookmarks": [],
    "internal_tags_list": [
      {
        "id": 12345,
        "name": "docs"
      }
    ],
    "internal_tag_ids": [
      "12345"
    ],
    "author": {
      "id": 67891,
      "userid": "test@email.com",
      "friendly_name": "Jon Doe",
      "avatar": "avatars/67891/838dcb304c/avatar.jpg"
    },
    "assignee": null,
    "stories": []
  }
})
  .then(response => {
    console.log(response)
  }).catch(error => { 
    console.log(error)
  })
Request
$client = new \Storyblok\ManagementClient('YOUR_OAUTH_TOKEN');

$payload = [
  "idea" =>  [
    "name" =>  "My first idea",
    "description" =>  "First idea",
    "content" =>  [],
    "deleted_at" =>  null,
    "status" =>  "draft",
    "story_ids" =>  [],
    "is_private" =>  true,
    "bookmarks" =>  [],
    "internal_tags_list" =>  [
      [
        "id" =>  12345,
        "name" =>  "docs"
      ]
    ],
    "internal_tag_ids" =>  [
      "12345"
    ],
    "author" =>  [
      "id" =>  67891,
      "userid" =>  "test@email.com",
      "friendly_name" =>  "Jon Doe",
      "avatar" =>  "avatars/67891/838dcb304c/avatar.jpg"
    ],
    "assignee" =>  null,
    "stories" =>  []
  ]
];

$client->put('/spaces/606/ideas/ab123cd4-5e6f-7gh8-9ij1-01k112l13m1n', $payload)->getBody();
Request
require 'storyblok'
client = Storyblok::Client.new(oauth_token: 'YOUR_OAUTH_TOKEN')

payload = {
  "idea" =>  {
    "name" =>  "My first idea",
    "description" =>  "First idea",
    "content" =>  {},
    "deleted_at" =>  null,
    "status" =>  "draft",
    "story_ids" =>  [],
    "is_private" =>  true,
    "bookmarks" =>  [],
    "internal_tags_list" =>  [
      {
        "id" =>  12345,
        "name" =>  "docs"
      }
    ],
    "internal_tag_ids" =>  [
      "12345"
    ],
    "author" =>  {
      "id" =>  67891,
      "userid" =>  "test@email.com",
      "friendly_name" =>  "Jon Doe",
      "avatar" =>  "avatars/67891/838dcb304c/avatar.jpg"
    },
    "assignee" =>  null,
    "stories" =>  []
  }
}

client.put('/spaces/606/ideas/ab123cd4-5e6f-7gh8-9ij1-01k112l13m1n', payload)
Request
HttpResponse<String> response = Unirest.put("https://mapi.storyblok.com/v1/spaces/606/ideas/ab123cd4-5e6f-7gh8-9ij1-01k112l13m1n")
  .header("Content-Type", "application/json")
  .header("Authorization", "YOUR_OAUTH_TOKEN")
  .body("{\"idea\": {\"name\": \"My first idea\",\"description\": \"First idea\",\"content\": {},\"deleted_at\": null,\"status\": \"draft\",\"story_ids\": [],\"is_private\": true,\"bookmarks\": [],\"internal_tags_list\": [{\"id\": 12345,\"name\": \"docs\"}],\"internal_tag_ids\": [\"12345\"],\"author\": {\"id\": 67891,\"userid\": \"test@email.com\",\"friendly_name\": \"Jon Doe\",\"avatar\": \"avatars/67891/838dcb304c/avatar.jpg\"},\"assignee\": null,\"stories\": []}}")
  .asString();
Request
var client = new RestClient("https://mapi.storyblok.com/v1/spaces/606/ideas/ab123cd4-5e6f-7gh8-9ij1-01k112l13m1n");
var request = new RestRequest(Method.PUT);

request.AddHeader("Content-Type", "application/json");
request.AddHeader("Authorization", "YOUR_OAUTH_TOKEN");
request.AddParameter("application/json", "{\"idea\": {\"name\": \"My first idea\",\"description\": \"First idea\",\"content\": {},\"deleted_at\": null,\"status\": \"draft\",\"story_ids\": [],\"is_private\": true,\"bookmarks\": [],\"internal_tags_list\": [{\"id\": 12345,\"name\": \"docs\"}],\"internal_tag_ids\": [\"12345\"],\"author\": {\"id\": 67891,\"userid\": \"test@email.com\",\"friendly_name\": \"Jon Doe\",\"avatar\": \"avatars/67891/838dcb304c/avatar.jpg\"},\"assignee\": null,\"stories\": []}}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
Request
import Foundation

let headers = [
  "Content-Type": "application/json",
  "Authorization": "YOUR_OAUTH_TOKEN"
]

let postData = NSData(data: "{\"idea\": {\"name\": \"My first idea\",\"description\": \"First idea\",\"content\": {},\"deleted_at\": null,\"status\": \"draft\",\"story_ids\": [],\"is_private\": true,\"bookmarks\": [],\"internal_tags_list\": [{\"id\": 12345,\"name\": \"docs\"}],\"internal_tag_ids\": [\"12345\"],\"author\": {\"id\": 67891,\"userid\": \"test@email.com\",\"friendly_name\": \"Jon Doe\",\"avatar\": \"avatars/67891/838dcb304c/avatar.jpg\"},\"assignee\": null,\"stories\": []}}".data(using: String.Encoding.utf8)!)

let request = NSMutableURLRequest(url: NSURL(string: "https://mapi.storyblok.com/v1/spaces/606/ideas/ab123cd4-5e6f-7gh8-9ij1-01k112l13m1n")! as URL, cachePolicy: .useProtocolCachePolicy, timeoutInterval: 10.0)
request.method = "PUT"
request.allHTTPHeaderFields = headers
request.httpBody = postData as Data

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
Request
import requests

url = "https://mapi.storyblok.com/v1/spaces/606/ideas/ab123cd4-5e6f-7gh8-9ij1-01k112l13m1n"

querystring = {}

payload = "{\"idea\": {\"name\": \"My first idea\",\"description\": \"First idea\",\"content\": {},\"deleted_at\": null,\"status\": \"draft\",\"story_ids\": [],\"is_private\": true,\"bookmarks\": [],\"internal_tags_list\": [{\"id\": 12345,\"name\": \"docs\"}],\"internal_tag_ids\": [\"12345\"],\"author\": {\"id\": 67891,\"userid\": \"test@email.com\",\"friendly_name\": \"Jon Doe\",\"avatar\": \"avatars/67891/838dcb304c/avatar.jpg\"},\"assignee\": null,\"stories\": []}}"
headers = {
  'Content-Type': "application/json",
  'Authorization': "YOUR_OAUTH_TOKEN"
}

response = requests.request("PUT", url, data=payload, headers=headers, params=querystring)

print(response.text)