we are hiring!

Language Detection API reference

Language Detection API is a simple language identification API; it is a tool that may be useful when dealing with texts, so we decided to open it to all our users. It currently supports more than 96 languages.



We support both GET and POST methods to query the API.


Remember to authenticate yourself specifying the $app_id and $app_key parameters. See the API doc about authentication for any questions.

text|url|html|html_fragment required
These parameters define how you send to the Language Detection API the text for which you want the language to be recognized. Only one of them can be used in each request, following these guidelines:
  • use "text" when you have plain text that doesn't need any pre-processing;
  • use "url" when you have an URL and you want the Language Detection API to work on its main content; it will fetch the URL for you, and use an AI algorithm to extract the relevant part of the document to work on; in this case, the main content will also be returned by the API to allow you to properly use the annotation offsets;
  • use "html" when you have an HTML document and you want the Language Detection API to work on its main content, similarly to what the "url" parameter does.
  • use "html_fragment" when you have an HTML snippet and you want the Language Detection API to work on its content. It will remove all HTML tags before analyzing it.
Type string
clean optional
Set this parameter to true if you want the text to be cleaned from urls, email addresses, hashtags, and more, before being processed.
Type boolean
Default value false
Accepted values true | false
Hint: Keep-alive
If you need to send many requests to the server api, it is suggested to use keep-alive to avoid the connection overhead. To know how to enable it, please refer to your http client documentation (eg: python-requests, ruby, php).


The response is structured in JSON as follow:

  "timestamp": "Date and time of the response generation process",
  "time": "Time elapsed for generating the response (milliseconds)",
  "detectedLangs": [
      "lang": "ISO 639-1 code of the detected language",
      "confidence": "Accuracy of the language detection",

For more information about status codes and error handling please refer to the dandelion generic API documentations. The cost of each request can be found in the response headers as described here.



https://api.dandelion.eu/datatxt/li/v1/?text=I%20am%20a%20mighty%20pirate%20von%20Deutschland &$app_id=YOUR_APP_ID&$app_key=YOUR_APP_KEY


Connection: keep-alive
Content-Length: 2748
Content-Type: application/json;charset=UTF-8
Date: Wed, 21 Oct 2015 16:29:37 GMT
Server: Apache-Coyote/1.1
X-DL-units: 0.1
X-DL-units-left: 999.9
X-DL-units-reset: 2015-10-22 00:00:00 +0000
  "timestamp": "2015-10-21T16:29:37",
  "time": 1,
  "text": "The annotated text. Present only if the 'url' or 'html' parameters have been used",
  "url": "The actual URL from which the text has been extracted. Present only if the 'url' parameter has been used",
  "detectedLangs": [
      "lang": "de",
      "confidence": 0.5714284059202707
      "lang": "en",
      "confidence": 0.42857127625587477
SpazioDati Via A. Olivetti 13, 38122, Trento (TN) -

Dandelion API built with by

privacy | tos | cookies

Contact Us


Need more info or a custom project? Write us: hello@dandelion.eu

About Us

We're a startup based in Italy, specialized in Semantics & Big Data.
Find out more about us at spaziodati.eu