Skip to main content
POST
/
api2
/
v1
/
projects
/
{projectUid}
/
jobs
/
{jobUid}
/
transMemories
/
search
Search job's translation memories
curl --request POST \
  --url https://cloud.memsource.com/web/api2/v1/projects/{projectUid}/jobs/{jobUid}/transMemories/search \
  --header 'Authorization: <api-key>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "segment": "<string>",
  "contextKey": "<string>",
  "maxSegments": 2,
  "maxSubSegments": 2,
  "nextSegment": "<string>",
  "previousSegment": "<string>",
  "scoreThreshold": 0.505,
  "tagMetadata": [
    {
      "content": "<string>",
      "id": "<string>",
      "transAttributes": "<string>",
      "type": "<string>"
    }
  ],
  "workflowLevel": 8
}
'
import requests

url = "https://cloud.memsource.com/web/api2/v1/projects/{projectUid}/jobs/{jobUid}/transMemories/search"

payload = {
"segment": "<string>",
"contextKey": "<string>",
"maxSegments": 2,
"maxSubSegments": 2,
"nextSegment": "<string>",
"previousSegment": "<string>",
"scoreThreshold": 0.505,
"tagMetadata": [
{
"content": "<string>",
"id": "<string>",
"transAttributes": "<string>",
"type": "<string>"
}
],
"workflowLevel": 8
}
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({
segment: '<string>',
contextKey: '<string>',
maxSegments: 2,
maxSubSegments: 2,
nextSegment: '<string>',
previousSegment: '<string>',
scoreThreshold: 0.505,
tagMetadata: [
{
content: '<string>',
id: '<string>',
transAttributes: '<string>',
type: '<string>'
}
],
workflowLevel: 8
})
};

fetch('https://cloud.memsource.com/web/api2/v1/projects/{projectUid}/jobs/{jobUid}/transMemories/search', 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/projects/{projectUid}/jobs/{jobUid}/transMemories/search",
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([
'segment' => '<string>',
'contextKey' => '<string>',
'maxSegments' => 2,
'maxSubSegments' => 2,
'nextSegment' => '<string>',
'previousSegment' => '<string>',
'scoreThreshold' => 0.505,
'tagMetadata' => [
[
'content' => '<string>',
'id' => '<string>',
'transAttributes' => '<string>',
'type' => '<string>'
]
],
'workflowLevel' => 8
]),
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/projects/{projectUid}/jobs/{jobUid}/transMemories/search"

payload := strings.NewReader("{\n \"segment\": \"<string>\",\n \"contextKey\": \"<string>\",\n \"maxSegments\": 2,\n \"maxSubSegments\": 2,\n \"nextSegment\": \"<string>\",\n \"previousSegment\": \"<string>\",\n \"scoreThreshold\": 0.505,\n \"tagMetadata\": [\n {\n \"content\": \"<string>\",\n \"id\": \"<string>\",\n \"transAttributes\": \"<string>\",\n \"type\": \"<string>\"\n }\n ],\n \"workflowLevel\": 8\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/projects/{projectUid}/jobs/{jobUid}/transMemories/search")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"segment\": \"<string>\",\n \"contextKey\": \"<string>\",\n \"maxSegments\": 2,\n \"maxSubSegments\": 2,\n \"nextSegment\": \"<string>\",\n \"previousSegment\": \"<string>\",\n \"scoreThreshold\": 0.505,\n \"tagMetadata\": [\n {\n \"content\": \"<string>\",\n \"id\": \"<string>\",\n \"transAttributes\": \"<string>\",\n \"type\": \"<string>\"\n }\n ],\n \"workflowLevel\": 8\n}")
.asString();
require 'uri'
require 'net/http'

url = URI("https://cloud.memsource.com/web/api2/v1/projects/{projectUid}/jobs/{jobUid}/transMemories/search")

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 \"segment\": \"<string>\",\n \"contextKey\": \"<string>\",\n \"maxSegments\": 2,\n \"maxSubSegments\": 2,\n \"nextSegment\": \"<string>\",\n \"previousSegment\": \"<string>\",\n \"scoreThreshold\": 0.505,\n \"tagMetadata\": [\n {\n \"content\": \"<string>\",\n \"id\": \"<string>\",\n \"transAttributes\": \"<string>\",\n \"type\": \"<string>\"\n }\n ],\n \"workflowLevel\": 8\n}"

response = http.request(request)
puts response.read_body
{
  "searchResults": [
    {
      "grossScore": 123,
      "score": 123,
      "segmentId": "<string>",
      "source": {
        "client": {
          "id": 123,
          "name": "<string>"
        },
        "createdAt": 123,
        "createdBy": {
          "email": "<string>",
          "firstName": "<string>",
          "id": "<string>",
          "lastName": "<string>",
          "uid": "<string>",
          "userName": "<string>"
        },
        "domain": {
          "id": 123,
          "name": "<string>"
        },
        "filename": "<string>",
        "id": "<string>",
        "key": "<string>",
        "lang": "<string>",
        "modifiedAt": 123,
        "modifiedBy": {
          "email": "<string>",
          "firstName": "<string>",
          "id": "<string>",
          "lastName": "<string>",
          "uid": "<string>",
          "userName": "<string>"
        },
        "nextSegment": "<string>",
        "previousSegment": "<string>",
        "project": {
          "id": 123,
          "name": "<string>",
          "uid": "<string>"
        },
        "rtl": true,
        "subDomain": {
          "id": 123,
          "name": "<string>"
        },
        "tagMetadata": [
          {
            "content": "<string>",
            "id": "<string>",
            "transAttributes": "<string>",
            "type": "<string>"
          }
        ],
        "text": "<string>"
      },
      "subSegment": true,
      "transMemory": {
        "id": "<string>",
        "name": "<string>",
        "reverse": true,
        "uid": "<string>"
      },
      "translations": [
        {
          "client": {
            "id": 123,
            "name": "<string>"
          },
          "createdAt": 123,
          "createdBy": {
            "email": "<string>",
            "firstName": "<string>",
            "id": "<string>",
            "lastName": "<string>",
            "uid": "<string>",
            "userName": "<string>"
          },
          "domain": {
            "id": 123,
            "name": "<string>"
          },
          "filename": "<string>",
          "id": "<string>",
          "key": "<string>",
          "lang": "<string>",
          "modifiedAt": 123,
          "modifiedBy": {
            "email": "<string>",
            "firstName": "<string>",
            "id": "<string>",
            "lastName": "<string>",
            "uid": "<string>",
            "userName": "<string>"
          },
          "nextSegment": "<string>",
          "previousSegment": "<string>",
          "project": {
            "id": 123,
            "name": "<string>",
            "uid": "<string>"
          },
          "rtl": true,
          "subDomain": {
            "id": 123,
            "name": "<string>"
          },
          "tagMetadata": [
            {
              "content": "<string>",
              "id": "<string>",
              "transAttributes": "<string>",
              "type": "<string>"
            }
          ],
          "text": "<string>"
        }
      ]
    }
  ]
}

Authorizations

Authorization
string
header
required

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.

Path Parameters

projectUid
string
required

Project UID

jobUid
string
required

Job UID

Body

application/json

Segment search request

segment
string
required
contextKey
string

Context key for context-based TM matching

maxSegments
integer<int32>

Maximum number of full-match results to return

Required range: 0 <= x <= 5
maxSubSegments
integer<int32>

Maximum number of subsegment-match results to return

Required range: 0 <= x <= 5
nextSegment
string

Segment following the query segment, used for context-based matching

previousSegment
string

Segment preceding the query segment, used for context-based matching

scoreThreshold
number<double>
Required range: 0 < x < 1.01
tagMetadata
object[]

Tag metadata for tag-sensitive matching

workflowLevel
integer<int32>
Required range: 1 <= x <= 15

Response

OK

searchResults
object[]

Translation memory search results