curl --request POST \
--url https://cloud.memsource.com/web/api2/v1/analyses \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"jobs": [
{
"uid": "3HYnHHLkTPJfMxBCDbPXFe"
}
],
"callbackUrl": "<string>",
"compareWorkflowLevel": 8,
"countSourceUnits": true,
"includeConfirmedSegments": true,
"includeFuzzyRepetitions": true,
"includeLockedSegments": true,
"includeMachineTranslationMatches": true,
"includeNonTranslatables": true,
"includeNumbers": true,
"includeTransMemory": true,
"machineTranslatePostEditing": true,
"name": "<string>",
"nonTranslatablePostEditing": true,
"separateFuzzyRepetitions": true,
"skipMtScoreThreshold": 123,
"transMemoryPostEditing": true,
"useProjectAnalysisSettings": true
}
'import requests
url = "https://cloud.memsource.com/web/api2/v1/analyses"
payload = {
"jobs": [{ "uid": "3HYnHHLkTPJfMxBCDbPXFe" }],
"callbackUrl": "<string>",
"compareWorkflowLevel": 8,
"countSourceUnits": True,
"includeConfirmedSegments": True,
"includeFuzzyRepetitions": True,
"includeLockedSegments": True,
"includeMachineTranslationMatches": True,
"includeNonTranslatables": True,
"includeNumbers": True,
"includeTransMemory": True,
"machineTranslatePostEditing": True,
"name": "<string>",
"nonTranslatablePostEditing": True,
"separateFuzzyRepetitions": True,
"skipMtScoreThreshold": 123,
"transMemoryPostEditing": True,
"useProjectAnalysisSettings": True
}
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
jobs: [{uid: '3HYnHHLkTPJfMxBCDbPXFe'}],
callbackUrl: '<string>',
compareWorkflowLevel: 8,
countSourceUnits: true,
includeConfirmedSegments: true,
includeFuzzyRepetitions: true,
includeLockedSegments: true,
includeMachineTranslationMatches: true,
includeNonTranslatables: true,
includeNumbers: true,
includeTransMemory: true,
machineTranslatePostEditing: true,
name: '<string>',
nonTranslatablePostEditing: true,
separateFuzzyRepetitions: true,
skipMtScoreThreshold: 123,
transMemoryPostEditing: true,
useProjectAnalysisSettings: true
})
};
fetch('https://cloud.memsource.com/web/api2/v1/analyses', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://cloud.memsource.com/web/api2/v1/analyses",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'jobs' => [
[
'uid' => '3HYnHHLkTPJfMxBCDbPXFe'
]
],
'callbackUrl' => '<string>',
'compareWorkflowLevel' => 8,
'countSourceUnits' => true,
'includeConfirmedSegments' => true,
'includeFuzzyRepetitions' => true,
'includeLockedSegments' => true,
'includeMachineTranslationMatches' => true,
'includeNonTranslatables' => true,
'includeNumbers' => true,
'includeTransMemory' => true,
'machineTranslatePostEditing' => true,
'name' => '<string>',
'nonTranslatablePostEditing' => true,
'separateFuzzyRepetitions' => true,
'skipMtScoreThreshold' => 123,
'transMemoryPostEditing' => true,
'useProjectAnalysisSettings' => true
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://cloud.memsource.com/web/api2/v1/analyses"
payload := strings.NewReader("{\n \"jobs\": [\n {\n \"uid\": \"3HYnHHLkTPJfMxBCDbPXFe\"\n }\n ],\n \"callbackUrl\": \"<string>\",\n \"compareWorkflowLevel\": 8,\n \"countSourceUnits\": true,\n \"includeConfirmedSegments\": true,\n \"includeFuzzyRepetitions\": true,\n \"includeLockedSegments\": true,\n \"includeMachineTranslationMatches\": true,\n \"includeNonTranslatables\": true,\n \"includeNumbers\": true,\n \"includeTransMemory\": true,\n \"machineTranslatePostEditing\": true,\n \"name\": \"<string>\",\n \"nonTranslatablePostEditing\": true,\n \"separateFuzzyRepetitions\": true,\n \"skipMtScoreThreshold\": 123,\n \"transMemoryPostEditing\": true,\n \"useProjectAnalysisSettings\": true\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://cloud.memsource.com/web/api2/v1/analyses")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"jobs\": [\n {\n \"uid\": \"3HYnHHLkTPJfMxBCDbPXFe\"\n }\n ],\n \"callbackUrl\": \"<string>\",\n \"compareWorkflowLevel\": 8,\n \"countSourceUnits\": true,\n \"includeConfirmedSegments\": true,\n \"includeFuzzyRepetitions\": true,\n \"includeLockedSegments\": true,\n \"includeMachineTranslationMatches\": true,\n \"includeNonTranslatables\": true,\n \"includeNumbers\": true,\n \"includeTransMemory\": true,\n \"machineTranslatePostEditing\": true,\n \"name\": \"<string>\",\n \"nonTranslatablePostEditing\": true,\n \"separateFuzzyRepetitions\": true,\n \"skipMtScoreThreshold\": 123,\n \"transMemoryPostEditing\": true,\n \"useProjectAnalysisSettings\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://cloud.memsource.com/web/api2/v1/analyses")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"jobs\": [\n {\n \"uid\": \"3HYnHHLkTPJfMxBCDbPXFe\"\n }\n ],\n \"callbackUrl\": \"<string>\",\n \"compareWorkflowLevel\": 8,\n \"countSourceUnits\": true,\n \"includeConfirmedSegments\": true,\n \"includeFuzzyRepetitions\": true,\n \"includeLockedSegments\": true,\n \"includeMachineTranslationMatches\": true,\n \"includeNonTranslatables\": true,\n \"includeNumbers\": true,\n \"includeTransMemory\": true,\n \"machineTranslatePostEditing\": true,\n \"name\": \"<string>\",\n \"nonTranslatablePostEditing\": true,\n \"separateFuzzyRepetitions\": true,\n \"skipMtScoreThreshold\": 123,\n \"transMemoryPostEditing\": true,\n \"useProjectAnalysisSettings\": true\n}"
response = http.request(request)
puts response.read_body{
"analyse": {},
"asyncRequest": {
"action": "PRE_ANALYSE",
"asyncResponse": {
"acceptedSegmentsCount": 123,
"dateCreated": "2023-11-07T05:31:56Z",
"errorCode": "<string>",
"errorDesc": "<string>",
"errorDetails": [
{
"args": {},
"code": "<string>",
"message": "<string>"
}
],
"warnings": [
{
"args": {},
"code": "<string>",
"message": "<string>"
}
]
},
"createdBy": {
"email": "<string>",
"firstName": "<string>",
"id": "<string>",
"lastName": "<string>",
"role": "SYS_ADMIN",
"uid": "<string>",
"userName": "<string>"
},
"dateCreated": "2023-11-07T05:31:56Z",
"id": "<string>",
"parent": "<unknown>",
"project": {
"name": "<string>",
"uid": "<string>"
}
}
}Create analysis
Deprecated. Use ‘Create analyses by providers’ (byProviders) or ‘Create analyses by languages’ (byLanguages) instead. Requires the CREATE analysis right (internal users).
curl --request POST \
--url https://cloud.memsource.com/web/api2/v1/analyses \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"jobs": [
{
"uid": "3HYnHHLkTPJfMxBCDbPXFe"
}
],
"callbackUrl": "<string>",
"compareWorkflowLevel": 8,
"countSourceUnits": true,
"includeConfirmedSegments": true,
"includeFuzzyRepetitions": true,
"includeLockedSegments": true,
"includeMachineTranslationMatches": true,
"includeNonTranslatables": true,
"includeNumbers": true,
"includeTransMemory": true,
"machineTranslatePostEditing": true,
"name": "<string>",
"nonTranslatablePostEditing": true,
"separateFuzzyRepetitions": true,
"skipMtScoreThreshold": 123,
"transMemoryPostEditing": true,
"useProjectAnalysisSettings": true
}
'import requests
url = "https://cloud.memsource.com/web/api2/v1/analyses"
payload = {
"jobs": [{ "uid": "3HYnHHLkTPJfMxBCDbPXFe" }],
"callbackUrl": "<string>",
"compareWorkflowLevel": 8,
"countSourceUnits": True,
"includeConfirmedSegments": True,
"includeFuzzyRepetitions": True,
"includeLockedSegments": True,
"includeMachineTranslationMatches": True,
"includeNonTranslatables": True,
"includeNumbers": True,
"includeTransMemory": True,
"machineTranslatePostEditing": True,
"name": "<string>",
"nonTranslatablePostEditing": True,
"separateFuzzyRepetitions": True,
"skipMtScoreThreshold": 123,
"transMemoryPostEditing": True,
"useProjectAnalysisSettings": True
}
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
jobs: [{uid: '3HYnHHLkTPJfMxBCDbPXFe'}],
callbackUrl: '<string>',
compareWorkflowLevel: 8,
countSourceUnits: true,
includeConfirmedSegments: true,
includeFuzzyRepetitions: true,
includeLockedSegments: true,
includeMachineTranslationMatches: true,
includeNonTranslatables: true,
includeNumbers: true,
includeTransMemory: true,
machineTranslatePostEditing: true,
name: '<string>',
nonTranslatablePostEditing: true,
separateFuzzyRepetitions: true,
skipMtScoreThreshold: 123,
transMemoryPostEditing: true,
useProjectAnalysisSettings: true
})
};
fetch('https://cloud.memsource.com/web/api2/v1/analyses', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://cloud.memsource.com/web/api2/v1/analyses",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'jobs' => [
[
'uid' => '3HYnHHLkTPJfMxBCDbPXFe'
]
],
'callbackUrl' => '<string>',
'compareWorkflowLevel' => 8,
'countSourceUnits' => true,
'includeConfirmedSegments' => true,
'includeFuzzyRepetitions' => true,
'includeLockedSegments' => true,
'includeMachineTranslationMatches' => true,
'includeNonTranslatables' => true,
'includeNumbers' => true,
'includeTransMemory' => true,
'machineTranslatePostEditing' => true,
'name' => '<string>',
'nonTranslatablePostEditing' => true,
'separateFuzzyRepetitions' => true,
'skipMtScoreThreshold' => 123,
'transMemoryPostEditing' => true,
'useProjectAnalysisSettings' => true
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://cloud.memsource.com/web/api2/v1/analyses"
payload := strings.NewReader("{\n \"jobs\": [\n {\n \"uid\": \"3HYnHHLkTPJfMxBCDbPXFe\"\n }\n ],\n \"callbackUrl\": \"<string>\",\n \"compareWorkflowLevel\": 8,\n \"countSourceUnits\": true,\n \"includeConfirmedSegments\": true,\n \"includeFuzzyRepetitions\": true,\n \"includeLockedSegments\": true,\n \"includeMachineTranslationMatches\": true,\n \"includeNonTranslatables\": true,\n \"includeNumbers\": true,\n \"includeTransMemory\": true,\n \"machineTranslatePostEditing\": true,\n \"name\": \"<string>\",\n \"nonTranslatablePostEditing\": true,\n \"separateFuzzyRepetitions\": true,\n \"skipMtScoreThreshold\": 123,\n \"transMemoryPostEditing\": true,\n \"useProjectAnalysisSettings\": true\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://cloud.memsource.com/web/api2/v1/analyses")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"jobs\": [\n {\n \"uid\": \"3HYnHHLkTPJfMxBCDbPXFe\"\n }\n ],\n \"callbackUrl\": \"<string>\",\n \"compareWorkflowLevel\": 8,\n \"countSourceUnits\": true,\n \"includeConfirmedSegments\": true,\n \"includeFuzzyRepetitions\": true,\n \"includeLockedSegments\": true,\n \"includeMachineTranslationMatches\": true,\n \"includeNonTranslatables\": true,\n \"includeNumbers\": true,\n \"includeTransMemory\": true,\n \"machineTranslatePostEditing\": true,\n \"name\": \"<string>\",\n \"nonTranslatablePostEditing\": true,\n \"separateFuzzyRepetitions\": true,\n \"skipMtScoreThreshold\": 123,\n \"transMemoryPostEditing\": true,\n \"useProjectAnalysisSettings\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://cloud.memsource.com/web/api2/v1/analyses")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"jobs\": [\n {\n \"uid\": \"3HYnHHLkTPJfMxBCDbPXFe\"\n }\n ],\n \"callbackUrl\": \"<string>\",\n \"compareWorkflowLevel\": 8,\n \"countSourceUnits\": true,\n \"includeConfirmedSegments\": true,\n \"includeFuzzyRepetitions\": true,\n \"includeLockedSegments\": true,\n \"includeMachineTranslationMatches\": true,\n \"includeNonTranslatables\": true,\n \"includeNumbers\": true,\n \"includeTransMemory\": true,\n \"machineTranslatePostEditing\": true,\n \"name\": \"<string>\",\n \"nonTranslatablePostEditing\": true,\n \"separateFuzzyRepetitions\": true,\n \"skipMtScoreThreshold\": 123,\n \"transMemoryPostEditing\": true,\n \"useProjectAnalysisSettings\": true\n}"
response = http.request(request)
puts response.read_body{
"analyse": {},
"asyncRequest": {
"action": "PRE_ANALYSE",
"asyncResponse": {
"acceptedSegmentsCount": 123,
"dateCreated": "2023-11-07T05:31:56Z",
"errorCode": "<string>",
"errorDesc": "<string>",
"errorDetails": [
{
"args": {},
"code": "<string>",
"message": "<string>"
}
],
"warnings": [
{
"args": {},
"code": "<string>",
"message": "<string>"
}
]
},
"createdBy": {
"email": "<string>",
"firstName": "<string>",
"id": "<string>",
"lastName": "<string>",
"role": "SYS_ADMIN",
"uid": "<string>",
"userName": "<string>"
},
"dateCreated": "2023-11-07T05:31:56Z",
"id": "<string>",
"parent": "<unknown>",
"project": {
"name": "<string>",
"uid": "<string>"
}
}
}Authorizations
Get a token from auth/login endpoint and then pass it in the Authorization HTTP header in every subsequent API call. For more information visit our help center.
Body
Analysis to create
Job uids of jobs from the same project
1 - 100 elementsShow child attributes
Show child attributes
URL called once the asynchronous analysis creation finishes
Required for type=Compare
1 <= x <= 15Whether the analysis counts source or target word/character units. When true, counts are based on the source language content; when false, counts are based on the target language content. Default: true
When true, confirmed (translated) segments are included in the counts. Default: true
When true, internal fuzzy matches (segments that fuzzily repeat within the analyzed content) are included in the counts. Default: true
When true, locked segments are included in the counts. Default: true
When true, machine translation matches are included in the counts. Default: false. Works only for type=PreAnalyse.
When true, non-translatable segments are included in the counts. Default: false. Works only for type=PreAnalyse.
When true, number-only segments are included in the counts. Default: true
When true, translation memory matches are included in the counts. Default: true. Works only for type=PreAnalyse.
Show child attributes
Show child attributes
When true, measures the post-editing distance against machine translation matches. Default: false. Works only for type=PostAnalyse.
255Show child attributes
Show child attributes
When true, measures the post-editing distance for non-translatable segments. Default: false. Works only for type=PostAnalyse.
When true, internal fuzzy repetitions are counted as a separate category instead of being merged into the Repetitions count. Default: false
Used only for type=PreAnalyse. Threshold above which the MT suggestions are not used. Default: value from PreTranslate settings
When true, measures the post-editing distance against translation memory matches. Default: false. Works only for type=PostAnalyse.
Analysis type: PreAnalyse (source segments analysis), PostAnalyse (machine translation post-editing analysis) or Compare (compares word/character counts across workflow levels). Default: PreAnalyse
PreAnalyse, PostAnalyse, Compare Default: false. Use default project settings. Will be overwritten with setting sent in the API call.
Was this page helpful?