Update a Datasource
https://mapi.storyblok.com/v1/spaces/:space_id/datasources/:datasource_idUpdate a datasource using it numeric ID.
Path parameters
Section titled “Path parameters”- :space_id required number
Numeric ID of a space
- :datasource_id required number
Numeric id of a datasource
Request body properties
Section titled “Request body properties”- datasource string
Examples
Section titled “Examples”curl "https://mapi.storyblok.com/v1/spaces/288868932106293/datasources/91" \ -X PUT \ -H "Authorization: YOUR_OAUTH_TOKEN" \ -H "Content-Type: application/json" \ -d "{\"datasource\":{\"name\":\"Labels for Website\",\"slug\":\"labels_for_website\"}}"// Using the Universal JavaScript Client:// https://github.com/storyblok/storyblok-js-clientStoryblok.put('spaces/288868932106293/datasources/91', { "datasource": { "name": "Labels for Website", "slug": "labels_for_website" }}) .then(response => { console.log(response) }).catch(error => { console.log(error) })$client = new \Storyblok\ManagementClient('YOUR_OAUTH_TOKEN');
$payload = ["datasource" => ["name" => "Labels for Website","slug" => "labels_for_website"]];
$client->put('spaces/288868932106293/datasources/91', $payload)->getBody();HttpResponse<String> response = Unirest.put("https://mapi.storyblok.com/v1/spaces/288868932106293/datasources/91") .header("Content-Type", "application/json") .header("Authorization", "YOUR_OAUTH_TOKEN") .body({"datasource":{"name":"Labels for Website","slug":"labels_for_website"}}) .asString();var client = new RestClient("https://mapi.storyblok.com/v1/spaces/288868932106293/datasources/91");var request = new RestRequest(Method.PUT);
request.AddHeader("Content-Type", "application/json");request.AddHeader("Authorization", "YOUR_OAUTH_TOKEN");request.AddParameter("application/json", "{\"datasource\":{\"name\":\"Labels for Website\",\"slug\":\"labels_for_website\"}}", ParameterType.RequestBody);IRestResponse response = client.Execute(request);import requests
url = "https://mapi.storyblok.com/v1/spaces/288868932106293/datasources/91"
querystring = {}
payload = {"datasource":{"name":"Labels for Website","slug":"labels_for_website"}}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 = {"datasource" => {"name" => "Labels for Website","slug" => "labels_for_website"}}
client.put('spaces/288868932106293/datasources/91', payload)var request = URLRequest(url: URL(string: "https://mapi.storyblok.com/v1/spaces/288868932106293/datasources/91")!)request.setValue("YOUR_OAUTH_TOKEN", forHTTPHeaderField: "Authorization")request.httpMethod = "PUT"request.httpBody = try JSONSerialization.data(withJSONObject: [ "datasource": [ "name": "Labels for Website", "slug": "labels_for_website", ],])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.put("spaces/288868932106293/datasources/91") { contentType(ContentType.Application.Json) setBody(buildJsonObject { putJsonObject("datasource") { put("name", "Labels for Website") put("slug", "labels_for_website") } })}
println(response.body<JsonElement>())Request for updating values in a specific dimension.
curl "https://mapi.storyblok.com/v1/spaces/288868932106293/datasources/91" \ -X PUT \ -H "Authorization: YOUR_OAUTH_TOKEN" \ -H "Content-Type: application/json" \ -d "{\"datasource\":{\"dimensions_attributes\":[{\"entry_value\":\"another_slug\",\"name\":\"Another Name\"}],\"name\":\"Labels for Website\",\"slug\":\"label\"}}"// Using the Universal JavaScript Client:// https://github.com/storyblok/storyblok-js-clientStoryblok.put('spaces/288868932106293/datasources/91', { "datasource": { "dimensions_attributes": [ { "entry_value": "another_slug", "name": "Another Name" } ], "name": "Labels for Website", "slug": "label" }}) .then(response => { console.log(response) }).catch(error => { console.log(error) })$client = new \Storyblok\ManagementClient('YOUR_OAUTH_TOKEN');
$payload = ["datasource" => ["dimensions_attributes" => [["entry_value" => "another_slug","name" => "Another Name"]],"name" => "Labels for Website","slug" => "label"]];
$client->put('spaces/288868932106293/datasources/91', $payload)->getBody();HttpResponse<String> response = Unirest.put("https://mapi.storyblok.com/v1/spaces/288868932106293/datasources/91") .header("Content-Type", "application/json") .header("Authorization", "YOUR_OAUTH_TOKEN") .body({"datasource":{"dimensions_attributes":[{"entry_value":"another_slug","name":"Another Name"}],"name":"Labels for Website","slug":"label"}}) .asString();var client = new RestClient("https://mapi.storyblok.com/v1/spaces/288868932106293/datasources/91");var request = new RestRequest(Method.PUT);
request.AddHeader("Content-Type", "application/json");request.AddHeader("Authorization", "YOUR_OAUTH_TOKEN");request.AddParameter("application/json", "{\"datasource\":{\"dimensions_attributes\":[{\"entry_value\":\"another_slug\",\"name\":\"Another Name\"}],\"name\":\"Labels for Website\",\"slug\":\"label\"}}", ParameterType.RequestBody);IRestResponse response = client.Execute(request);import requests
url = "https://mapi.storyblok.com/v1/spaces/288868932106293/datasources/91"
querystring = {}
payload = {"datasource":{"dimensions_attributes":[{"entry_value":"another_slug","name":"Another Name"}],"name":"Labels for Website","slug":"label"}}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 = {"datasource" => {"dimensions_attributes" => [{"entry_value" => "another_slug","name" => "Another Name"}],"name" => "Labels for Website","slug" => "label"}}
client.put('spaces/288868932106293/datasources/91', payload)var request = URLRequest(url: URL(string: "https://mapi.storyblok.com/v1/spaces/288868932106293/datasources/91")!)request.setValue("YOUR_OAUTH_TOKEN", forHTTPHeaderField: "Authorization")request.httpMethod = "PUT"request.httpBody = try JSONSerialization.data(withJSONObject: [ "datasource": [ "dimensions_attributes": [ [ "entry_value": "another_slug", "name": "Another Name", ], ], "name": "Labels for Website", "slug": "label", ],])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.put("spaces/288868932106293/datasources/91") { contentType(ContentType.Application.Json) setBody(buildJsonObject { putJsonObject("datasource") { putJsonArray("dimensions_attributes") { addJsonObject { put("entry_value", "another_slug") put("name", "Another Name") } } put("name", "Labels for Website") put("slug", "label") } })}
println(response.body<JsonElement>())Get in touch with the Storyblok community