Detect
    • PDF

    Detect

    • PDF

    Article Summary

    Overview

    This is a REST API that detects the language of the text input. Detects a total of 15 languages.

    Requests

    curl "naveropenapi.apigw.ntruss.com/langs/v1/dect" \
        -d "query=Nice to meet you." \
        -H "Content-Type: application/x-www-form-urlencoded; charset=UTF-8" \
        -H "X-NCP-APIGW-API-KEY-ID: {Client ID value issued upon registering the application}" \
        -H "X-NCP-APIGW-API-KEY: {Client secret value issued upon registering the application}" -v
    

    Request parameters

    • This API does not require any parameters.

    Request header

    Header nameDescription
    X-NCP-APIGW-API-KEY-IDClient ID issued when registering the app
    X-NCP-APIGW-API-KEY-ID:{Client ID}
    X-NCP-APIGW-API-KEYClient secret issued when registering the app
    X-NCP-APIGW-API-KEY:{Client Secret}

    Request body

    Name of request variableTypeRequirement statusDescription
    querystringYText to detect language

    Response

    { "langCode" : "{detected language}" }
    

    Response bodies

    PropertyTypeRequirement statusDescription
    langCodestringYLanguage code corresponding to detected language

    Language code (langCode)

    Language codeLanguage
    koKorean
    enEnglish
    jaJapanese
    zh-CNChinese (simplified)
    zh-TWChinese (traditional)
    viVietnamese
    thThai
    idIndonesian
    frFrench
    esSpanish
    ruRussian
    deGerman
    itItalian
    ptPortuguese
    hiHindi

    Examples

    Request examples

    curl "naveropenapi.apigw.ntruss.com/langs/v1/dect" \
        -d "query=Nice to meet you." \
        -H "Content-Type: application/x-www-form-urlencoded; charset=UTF-8" \
        -H "X-NCP-APIGW-API-KEY-ID: {Client ID value issued upon registering the application}" \
        -H "X-NCP-APIGW-API-KEY: {Client secret value issued upon registering the application}" -v
    

    Response examples

    { "langCode" : "ko" }
    

    API examples

    // NAVER Papago Language Detection API example
    import java.io.BufferedReader;
    import java.io.DataOutputStream;
    import java.io.InputStreamReader;
    import java.net.HttpURLConnection;
    import java.net.URL;
    import java.net.URLEncoder;
    public class APIExamDetectLangs {
    
        public static void main(String[] args) {
            String clientId = "YOUR_CLIENT_ID";//Application client ID value";
            String clientSecret = "YOUR_CLIENT_SECRET";//Application client secret value";
            try {
                String query = URLEncoder.encode("Nice to meet you.", "UTF-8");
                String apiURL = "https://naveropenapi.apigw.ntruss.com/langs/v1/dect";
                URL url = new URL(apiURL);
                HttpURLConnection con = (HttpURLConnection)url.openConnection();
                con.setRequestMethod("POST");
                con.setRequestProperty("X-NCP-APIGW-API-KEY-ID", clientId);
                con.setRequestProperty("X-NCP-APIGW-API-KEY", clientSecret);
                // post request
                String postParams = "query=" + query;
                con.setDoOutput(true);
                DataOutputStream wr = new DataOutputStream(con.getOutputStream());
                wr.writeBytes(postParams);
                wr.flush();
                wr.close();
                int responseCode = con.getResponseCode();
                BufferedReader br;
                if(responseCode==200) { // Successful call
                    br = new BufferedReader(new InputStreamReader(con.getInputStream()));
                } else {  // Error occurred
                    br = new BufferedReader(new InputStreamReader(con.getErrorStream()));
                }
                String inputLine;
                StringBuffer response = new StringBuffer();
                while ((inputLine = br.readLine()) != null) {
                    response.append(inputLine);
                }
                br.close();
                System.out.println(response.toString());
            } catch (Exception e) {
                System.out.println(e);
            }
        }
    }
    
    // NAVER Papago Language Detection API example
    <?php
      $client_id = "YOUR_CLIENT_ID";
      $client_secret = "YOUR_CLIENT_SECRET";
      $encQuery = urlencode("Nice to meet you.");
      $postvars = "query=".$encQuery;
      $url = "https://naveropenapi.apigw.ntruss.com/langs/v1/dect";
      $is_post = true;
      $ch = curl_init();
      curl_setopt($ch, CURLOPT_URL, $url);
      curl_setopt($ch, CURLOPT_POST, $is_post);
      curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
      curl_setopt($ch,CURLOPT_POSTFIELDS, $postvars);
      $headers = array();
      $headers[] = "X-NCP-APIGW-API-KEY-ID: ".$client_id;
      $headers[] = "X-NCP-APIGW-API-KEY: ".$client_secret;
      curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
      $response = curl_exec ($ch);
      $status_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
      echo "status_code:".$status_code."<br/>";
      curl_close ($ch);
      if($status_code == 200) {
        echo $response;
      } else {
        echo "Error content:".$response;
      }
    ?>
    
    // NAVER Papago Language Detection API example
    var express = require('express');
    var app = express();
    var client_id = 'YOUR_CLIENT_ID';
    var client_secret = 'YOUR_CLIENT_SECRET';
    var query = "Enter a sentence to detect language.";
    app.get('/detectLangs', function (req, res) {
       var api_url = 'https://naveropenapi.apigw.ntruss.com/langs/v1/dect';
       var request = require('request');
       var options = {
           url: api_url,
           form: {'query': query},
           headers: {'X-NCP-APIGW-API-KEY-ID':client_id, 'X-NCP-APIGW-API-KEY': client_secret}
        };
       request.post(options, function (error, response, body) {
         if (!error && response.statusCode == 200) {
           res.writeHead(200, {'Content-Type': 'text/json;charset=utf-8'});
           res.end(body);
         } else {
           res.status(response.statusCode).end();
           console.log('error = ' + response.statusCode);
         }
       });
     });
     app.listen(3000, function () {
       console.log('http://127.0.0.1:3000/detectLangs app listening on port 3000!');
     });
    
    # NAVER Papago Language Detection API example
    import os
    import sys
    import urllib.request
    client_id = "YOUR_CLIENT_ID"
    client_secret = "YOUR_CLIENT_SECRET"
    encQuery = urllib.parse.quote("Enter a sentence to detect language")
    data = "query=" + encQuery
    url = "https://naveropenapi.apigw.ntruss.com/langs/v1/dect"
    request = urllib.request.Request(url)
    request.add_header("X-NCP-APIGW-API-KEY-ID",client_id)
    request.add_header("X-NCP-APIGW-API-KEY",client_secret)
    response = urllib.request.urlopen(request, data=data.encode("utf-8"))
    rescode = response.getcode()
    if(rescode==200):
        response_body = response.read()
        print(response_body.decode('utf-8'))
    else:
        print("Error Code:" + rescode)
    
    // NAVER Papago Language Detection API example
    using System;
    using System.Net;
    using System.Text;
    using System.IO;
    
    namespace NaverAPI_Guide
    {
        public class APIExamDetectLangs
        {
            static void Main(string[] args)
            {
                string url = "https://naveropenapi.apigw.ntruss.com/langs/v1/dect";
                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
                request.Headers.Add("X-NCP-APIGW-API-KEY-ID", "YOUR-CLIENT-ID");
                request.Headers.Add("X-NCP-APIGW-API-KEY", "YOUR-CLIENT-SECRET");
                request.Method = "POST";
                string query = "How's the weather today?";
                byte[] byteDataParams = Encoding.UTF8.GetBytes("query=" + query);
                request.ContentType = "application/x-www-form-urlencoded";
                request.ContentLength = byteDataParams.Length;
                Stream st = request.GetRequestStream();
                st.Write(byteDataParams, 0, byteDataParams.Length);
                st.Close();
                HttpWebResponse response = (HttpWebResponse)request.GetResponse();
                Stream stream = response.GetResponseStream();
                StreamReader reader = new StreamReader(stream, Encoding.UTF8);
                string text = reader.ReadToEnd();
                stream.Close();
                response.Close();
                reader.Close();
                Console.WriteLine(text);
            }
        }
    }
    

    Errors

    HttpStatusCodeErrorCodeErrorMessageDescription
    400LD01Empty query parameterNo text to detect language
    400LD03Query parameter exceeds max lengthExceeds the maximum text length limit for language detection (5000 characters)
    500LD99Internal server errorsInternal server error
    Requires contact via customer service forum/board.

    Was this article helpful?

    Changing your password will log you out immediately. Use the new password to log back in.
    First name must have atleast 2 characters. Numbers and special characters are not allowed.
    Last name must have atleast 1 characters. Numbers and special characters are not allowed.
    Enter a valid email
    Enter a valid password
    Your profile has been successfully updated.