Translate a Story by AI
https://mapi.storyblok.com/v1/spaces/:space_id/stories/:story_id/ai_translateThis endpoint returns the story content, translated by AI.
Path parameters
Section titled “Path parameters”- :space_id required number
Numeric ID of a space
- :story_id required number
Numeric id of story
Request body properties
Section titled “Request body properties”- lang string
The official language code (e.g.,
en,de,fr) used for localization. - code string
The custom language identifier defined in the Space Settings under Internationalization.
- overwrite boolean
Indicates whether the current value should replace the existing value for the specified language.
- release_id number
Release ID of the story.
Response properties
Section titled “Response properties”- story The Story Object
A single story object, containing the translated fields in its
contentproperty.
Examples
Section titled “Examples”curl "https://mapi.storyblok.com/v1/spaces/606/stories/536503907/ai_translate" \ -X PUT \ -H "Authorization: YOUR_OAUTH_TOKEN" \ -H "Content-Type: application/json" \ -d "{\"code\":\"fr\",\"lang\":\"fr\",\"overwrite\":true,\"release_id\":0}"// Using the Universal JavaScript Client:// https://github.com/storyblok/storyblok-js-clientStoryblok.put('spaces/606/stories/536503907/ai_translate', { "code": "fr", "lang": "fr", "overwrite": true, "release_id": 0}) .then(response => { console.log(response) }).catch(error => { console.log(error) })$client = new \Storyblok\ManagementClient('YOUR_OAUTH_TOKEN');
$payload = ["code" => "fr","lang" => "fr","overwrite" => true,"release_id" => 0];
$client->put('spaces/606/stories/536503907/ai_translate', $payload)->getBody();HttpResponse<String> response = Unirest.put("https://mapi.storyblok.com/v1/spaces/606/stories/536503907/ai_translate") .header("Content-Type", "application/json") .header("Authorization", "YOUR_OAUTH_TOKEN") .body({"code":"fr","lang":"fr","overwrite":true,"release_id":0}) .asString();var client = new RestClient("https://mapi.storyblok.com/v1/spaces/606/stories/536503907/ai_translate");var request = new RestRequest(Method.PUT);
request.AddHeader("Content-Type", "application/json");request.AddHeader("Authorization", "YOUR_OAUTH_TOKEN");request.AddParameter("application/json", "{\"code\":\"fr\",\"lang\":\"fr\",\"overwrite\":true,\"release_id\":0}", ParameterType.RequestBody);IRestResponse response = client.Execute(request);import requests
url = "https://mapi.storyblok.com/v1/spaces/606/stories/536503907/ai_translate"
querystring = {}
payload = {"code":"fr","lang":"fr","overwrite":true,"release_id":0}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 = {"code" => "fr","lang" => "fr","overwrite" => true,"release_id" => 0}
client.put('spaces/606/stories/536503907/ai_translate', payload)import Foundation
let headers = [ "Content-Type": "application/json", "Authorization": "YOUR_OAUTH_TOKEN"]
let postData = NSData(data: {"code":"fr","lang":"fr","overwrite":true,"release_id":0}.data(using: String.Encoding.utf8)!)
let request = NSMutableURLRequest(url: NSURL(string: "https://mapi.storyblok.com/v1/spaces/606/stories/536503907/ai_translate")! as URL, cachePolicy: .useProtocolCachePolicy, timeoutInterval: 10.0)request.method = "PUT"request.allHTTPHeaderFields = headersrequest.httpBody = postData as Data
let session = URLSession.sharedlet 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()You will receive a single story object, containing the translated fields in its content property.
Get in touch with the Storyblok community