Text Similarity API

The Text Similarity API computes the similarity score between two pieces of text. It uses state-of-the-art NLP machine learning models to first embed (see our Embddings API) the texts into 768-dimension vectors, and then computes the cosine similarity between the two vectors.



Returns a similarity score between 0 and 1 (1 is similar and 0 is dissimilar) of two given texts.

Body Parameters

text_1 (required) - first input text. Maximum 5000 characters.

text_2 (required) - second input text. Maximum 5000 characters.


X-Api-Key (required) - API Key associated with your account.

Sample Request URL

Live Demo!


text_1  text_2

Sample Response

  "similarity": 0.7749438285827637

Code Examples

import requests
body = { 'text_1': 'This is an example sentence.', 'text_2': 'This is just another sample sentence.' }
api_url = 'https://api.api-ninjas.com/v1/textsimilarity'
response = requests.post(api_url, headers={'X-Api-Key': 'YOUR_API_KEY'}, json=body)
if response.status_code == requests.codes.ok:
    print("Error:", response.status_code, response.text)
    method: 'POST',
    url: 'https://api.api-ninjas.com/v1/textsimilarity',
    headers: { 'X-Api-Key': 'YOUR_API_KEY'},
    data: JSON.stringify({ "text_1": "This is an example sentence.", "text_2": "This is just another sample sentence." }),
    success: function(result) {
    error: function ajaxError(jqXHR) {
        console.error('Error: ', jqXHR.responseText);
If your programming language is not listed in the Code Example above, you can still make API calls by using a HTTP request library written in your programming language and following the above documentation.