Update an Experiment
Update an experiment’s display name, description, variants, or story associations. The name field is immutable after creation. You can’t update completed experiments.
https://mapi.storyblok.com/v1/spaces/:space_id/experiments/:experiment_idPath parameters
Section titled “Path parameters”-
:space_idrequired numberNumeric ID of a space.
-
:experiment_idrequired numberNumeric ID of the experiment.
Request body properties
Section titled “Request body properties”-
experimentrequired objectThe experiment object that contains the updated information.
Response properties
Section titled “Response properties”-
experimentThe Experiment ObjectThe updated experiment object.
Examples
Section titled “Examples”curl "https://mapi.storyblok.com/v1/spaces/288868932106293/experiments/176070002766742" \ -X PUT \ -H "Authorization: YOUR_OAUTH_TOKEN" \ -H "Content-Type: application/json" \ -d "{\"experiment\":{\"description\":\"Updated description\",\"display_name\":\"A simple test (updated)\",\"experiment_variants_attributes\":[{\"id\":1001,\"weight\":70},{\"id\":1002,\"weight\":40}]}}"// 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.put('spaces/288868932106293/experiments/176070002766742', { "experiment": { "description": "Updated description", "display_name": "A simple test (updated)", "experiment_variants_attributes": [ { "id": 1001, "weight": 70 }, { "id": 1002, "weight": 40 } ] } }) console.log({ response })} catch (error) { console.log(error)}$client = new \Storyblok\ManagementClient('YOUR_OAUTH_TOKEN');
$payload = ["experiment" => ["description" => "Updated description","display_name" => "A simple test (updated)","experiment_variants_attributes" => [["id" => 1001,"weight" => 70],["id" => 1002,"weight" => 40]]]];
$client->put('spaces/288868932106293/experiments/176070002766742', $payload)->getBody();HttpResponse<String> response = Unirest.put("https://mapi.storyblok.com/v1/spaces/288868932106293/experiments/176070002766742") .header("Content-Type", "application/json") .header("Authorization", "YOUR_OAUTH_TOKEN") .body({"experiment":{"description":"Updated description","display_name":"A simple test (updated)","experiment_variants_attributes":[{"id":1001,"weight":70},{"id":1002,"weight":40}]}}) .asString();var client = new RestClient("https://mapi.storyblok.com/v1/spaces/288868932106293/experiments/176070002766742");var request = new RestRequest(Method.PUT);
request.AddHeader("Content-Type", "application/json");request.AddHeader("Authorization", "YOUR_OAUTH_TOKEN");request.AddParameter("application/json", "{\"experiment\":{\"description\":\"Updated description\",\"display_name\":\"A simple test (updated)\",\"experiment_variants_attributes\":[{\"id\":1001,\"weight\":70},{\"id\":1002,\"weight\":40}]}}", ParameterType.RequestBody);IRestResponse response = client.Execute(request);import requests
url = "https://mapi.storyblok.com/v1/spaces/288868932106293/experiments/176070002766742"
querystring = {}
payload = {"experiment":{"description":"Updated description","display_name":"A simple test (updated)","experiment_variants_attributes":[{"id":1001,"weight":70},{"id":1002,"weight":40}]}}headers = { 'Content-Type': "application/json", 'Authorization': "YOUR_OAUTH_TOKEN"}
response = requests.request("PUT", url, data=payload, headers=headers, params=querystring)
print(response.text)require 'storyblok'client = Storyblok::Client.new(oauth_token: 'YOUR_OAUTH_TOKEN')
payload = {"experiment" => {"description" => "Updated description","display_name" => "A simple test (updated)","experiment_variants_attributes" => [{"id" => 1001,"weight" => 70},{"id" => 1002,"weight" => 40}]}}
client.put('spaces/288868932106293/experiments/176070002766742', payload)let storyblok = URLSession(storyblok: .mapi(accessToken: .oauth("YOUR_OAUTH_TOKEN")))var request = URLRequest(storyblok: storyblok, path: "spaces/288868932106293/experiments/176070002766742")request.httpMethod = "PUT"request.httpBody = try JSONSerialization.data(withJSONObject: [ "experiment": [ "description": "Updated description", "display_name": "A simple test (updated)", "experiment_variants_attributes": [ [ "id": 1001, "weight": 70, ], [ "id": 1002, "weight": 40, ], ], ],])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.put("spaces/288868932106293/experiments/176070002766742") { setBody(buildJsonObject { putJsonObject("experiment") { put("description", "Updated description") put("display_name", "A simple test (updated)") putJsonArray("experiment_variants_attributes") { addJsonObject { put("id", 1001) put("weight", 70) } addJsonObject { put("id", 1002) put("weight", 40) } } } })}
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