Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Excerpt

1. Overview

There are the main commands that are available for Web API requests:

ParameterCommandsDescription
cmd






check

Status
colourGreen
titleRecommended
 Global check command that checks text for all enabled types of errors (spelling, grammar, etc.) and its parameters. Check more in Check command.

check_spelling

Check spelling command and its parameters.

grammar_check

Grammar check command and its parameters.

user_dictionary

User dictionary command and actions that can be performed with user dictionaries.
detect_languageDetect the language of given text. Check more in Detect language command.
get_infoGet general information about the languages enabled and other permissions for the current version of the application build.

get_lang_list

Status
colourRed
titleDepricated
A list of languages available and supported for spell checking only in the current version of the application. It won't return languages where there is only grammar check (e.g. Chinese).

ver

The current version of the application installed.

status

Statuses of the application core engines (Spell Check, Grammar, and Thesaurus).

Depending on your tasks and needs, you can form and send your API requests using GET or POST methods. Below you will find templates for both request methods.

1.1. Template of Request URL using GET

Code Block
titleRequest URL (GET): 
https://your_host_name:443/virtual_directory/api?cmd=[command]&[parameter]=[value]

1.2. Template of Request URL using POST

Code Block
titleEndpoint / Request URL (POST): 
https://your_host_name:443/virtual_directory/api?
Code Block
titleBody (Raw): 
cmd=[command]&[parameter]=[value]&customerid=[encrypted_customer_ID]

2. Check Spelling Command

Info

Command name: check_spelling

Here is a list of all possible parameters and values that can be used with the check_spelling command.

#ParameterPossible ValuesDefault ValueDescription
1format
  • json
  • xml
jsonThe response format for output data.
2callback
  • callback function name

A callback function name that will be used to manipulate with the JSON data received from the server. 

Such approach enables sharing of data bypassing same-origin policy. It can be used only along with “format=json”.

3out_type
  • positions Return positions and length of misspelled words in a given text and their suggestions.
  • words Return misspelled words and their suggestions.
wordsA type of data output specifying the way to return misspelled words positions in the provided text or exact words.
4ignore_all_caps
  • 0 Do not ignore all words written in capital letters (e.g. UPPERCASE)
  • 1 Ignore all words written in capital letters.
0Ignore capitalized words.
5ignore_words_with_numbers
  • 0 Do not ignore words that contain numbers (e.g. Number1).
  • 1 Ignore words that contain numbers.
0Ignore words containing numbers.
6ignore_mixed_case
  • 0 Do not ignore words with mixed case letters (e.g. MixedCase).
  • 1 Ignore words with mixed case letters.
0Ignore words written with mixed case letters.
7ignore_domain_names
  • 0 Do not ignore web addresses that start with either “www”, “http:” or “https:” and end with a domain name.
  • 1 Ignore web addresses and domain names.
0Ignore domain names, web addresses.
8text
  • plain text

A piece of text which will be sent for check spelling. The text has to be in the UTF-8 encoding. Any found tags in the text will be interpreted as a plan text as well.
9langen_USA short code of a language which will be used for spell checking.
10user_dictionary
  • user dictionary name (e.g. testdict)

A user dictionary name which will be used during spell checking.
11custom_dictionary
  • custom dictionary ID value assigned in a DicId parameter.

A custom dictionary which will be used for spell checking. 
12user_wordlist
  • additional wordlist

The list of additional comma-separated words which will be used for spell checking.
13version1.01.0The version of Web API.
14customerid1:wiN6M-YQYOz2-PTPoa2-3yaA92-PmWom-3CEx53-jHqwR3-NYK6b-XR5Uh1-M7YAp4

A special customer ID value (activation key) that has to be passed to a request query. It's obtained upon subscription to the Cloud services (paid or trial).

Warning

Applicable only for the Cloud version.

Example 2.1: Check Spelling Request using GET (Output in XML)

Code Block
titleRequest URL (GET): 
http(s)://server_endpoint/?cmd=check_spelling&format=xml&text=This sampl text demonstrates the work of the WebSpellChecker Web API service.&out_type=words&slang=en_US

Parameters:

  • Command: check_spelling
  • Format: XML
  • Text: “This sampl text demonstrates the work of the WebSpellChecker Web API service.”
  • Output: words
  • Language: American English (en_US)

Request Response:

Code Block
languagexml
themeEmacs
<?xml version="1.0" encoding="utf-8"?>
<check_spelling>
    <misspelling>
        <word>sampl</word>
        <ud>false</ud>
        <suggestions>
            <suggestion>sample</suggestion>
            <suggestion>sampled</suggestion>
            <suggestion>sampler</suggestion>
            <suggestion>samples</suggestion>
            <suggestion>ample</suggestion>
            <suggestion>amply</suggestion>
            <suggestion>scamp</suggestion>
            <suggestion>stamp</suggestion>
        </suggestions>
    </misspelling>
</check_spelling>

Example 2.2: Check Spelling Request (Output in JSON)

Code Block
titleRequest URL (GET): 
http(s)://server_server_endpoint/?cmd=check_spelling&format=json&text=This sampl text demonstrates the work of the WebSpellChecker Web API service.&out_type=words&slang=en_US

Parameters:

  • Command: check_spelling
  • Format: JSON
  • Text: “This sampl text demonstrates the work of the WebSpellChecker Web API service.”
  • Output: words
  • Language: American English (en_US)

Request Response:

Code Block
languagejs
themeEmacs
[
    {
        "word": "sampl",
        "ud": false,
        "suggestions": [
            "sample",
            "sampled",
            "sampler",
            "samples",
            "ample",
            "amply",
            "scamp",
            "stamp"
        ]
    }
]

Example 2.3: Check Spelling Request using POST (Output in JSON)

Here we use the same request and parameters as described in example above but form it as a POST request.

Code Block
titleEndpoint / Request URL (POST): 
https://your_host_name:443/virtual_directory/api?
Code Block
titleBody (Raw): 
cmd=check_spelling&format=json&text=This sampl text demonstrates the work of the WebSpellChecker Web API service.&out_type=words&slang=en_US

Request Response:

Code Block
languagejs
themeEmacs
[
   {
       "word": "sampl",
       "ud": false,
       "suggestions": [
           "sample",
           "sampled",
           "sampler",
           "samples",
           "ample",
           "amply",
           "scamp",
           "stamp"
       ]
   }
]

3. Grammar Check Command

Info

Command name: grammar_check

Here is a list of all possible parameters and values that can be used with the grammar_check command.

#ParameterPossible ValuesDefault ValueDescription
1format
  • json
  • xml
jsonA response format for output data.
2callback
  • callback function name

A callback function name that will be used to manipulate with the JSON data received from the server. 

Such approach enables sharing of data bypassing same-origin policy. It can be used only along with “format=json”.

3text
  • plain text

A piece of text which will be sent for grammar checking. The text has to be in the UTF-8 encoding.

Any found tags in the text will be interpreted as a plan text as well.

4langen_US

A short code of a language which will be used for grammar checking. 

Example 3.1: Grammar Check Request using GET (Output in XML)

Code Block
titleRequest URL (GET): 
http(s)://server_endpoint/?cmd=grammar_check&format=xml&text=web API provides a gramar checking command that will help you builds a custom solution.&slang=en_US

Parameters:

  • Command: grammar_check
  • Format: XML
  • Text: “web API provides a gramar checking command that will help you builds a custom solution.”
  • Language: American English (en_US)

Request Response:

Code Block
languagexml
themeEmacs
<?xml version="1.0" encoding="utf-8"?>
<grammar_check>
    <grammar_problem>
        <phrase>you builds</phrase>
        <description>Pronoun "you" conflicts with verb "builds."</description>
        <problem_id>437780848</problem_id>
        <suggestions>
            <suggestion>you build</suggestion>
            <suggestion>you, builds</suggestion>
        </suggestions>
    </grammar_problem>
</grammar_check>

Example 3.2: Grammar Check Request using GET (Output in JSON)

Code Block
titleRequest URL (GET): 
http(s)://server_endpoint/?cmd=grammar_check&format=json&text=web API provides a gramar checking command that will help you builds a custom solution.&slang=en_US

Parameters:

  • Command: grammar_check
  • Format: JSON
  • Text: “web API provides a gramar checking command that will help you builds a custom solution.”
  • Language: American English (en_US)

Request Response:

Code Block
languagejs
themeEmacs
[
    {
        "sentence": "web API provides a gramar checking command that will help you builds a custom solution",
        "matches": [
            {
                "message": "This sentence does not start with an uppercase letter",
                "offset": 0,
                "length": 3,
                "rule": {
                    "id": "UPPERCASE_SENTENCE_START"
                },
                "suggestions": [
                    "Web"
                ]
            }
        ]
    }
]

Example 3.3: Grammar Check Request using POST (Output in JSON)

Here we use the same request and parameters as described in example above but form it as a POST request.

Code Block
titleEntry point / Request URL (POST): 
https://your_host_name:443/virtual_directory/api?
Code Block
titleBody (Raw): 
cmd=grammar_check&format=json&text=web API provides a gramar checking command that will help you builds a custom solution.&slang=en_US

Request Response:

Code Block
languagejs
themeEmacs
[
    {
        "sentence": "web API provides a gramar checking command that will help you builds a custom solution",
        "matches": [
            {
                "message": "This sentence does not start with an uppercase letter",
                "offset": 0,
                "length": 3,
                "rule": {
                    "id": "UPPERCASE_SENTENCE_START"
                },
                "suggestions": [
                    "Web"
                ]
            }
        ]
    }
]

4. User Dictionary Command

Info

Command name: user_dictionary

Here is a list of all possible parameters and values that can be used with the user_dictionary command.

#ParameterPossible ValuesDefault ValueDescription
1format
  • json
  • xml
jsonA response format for output data.
2callback
  • callback function name

A callback function name that will be used to manipulate with the JSON data received from the server. Such approach enables sharing of data bypassing same-origin policy. It can be used only along with “format=json”.
3action
  • create – Create a new user dictionary.
  • rename – Rename an existing user dictionary.
  • delete – Delete an existing user dictionary.
  • addword – Add a new word to a specified user dictionary.
  • addwords – Add new words to a specified user dictionary.
    Status
    colourGreen
    titlev5.28.0
  • deleteword – Remove a word from a specified user dictionary.
  • deletewords – Remove words from a specified user dictionary.
    Status
    colourGreen
    titlev5.28.0
  • editword – Edit a word in a specified user dictionary.
  • check – Check if a specified user dictionary exists on the server.
  • getdict – Get content of a specified user dictionary (for JSON only).

An action that can be used to manipulate a user dictionary.

Here is a list of all possible parameters and values that can be used with the user_dictionary action parameter.

#Action ParameterParametersPossible ValuesDescription
1createname
  • name of a new user dictionary
Create a new user dictionary.
wordlist
  • comma-separated words which will be added to a new dictionary
2deletename
  • name of a selected user dictionary
Delete a selected user dictionary.
3renamename
  • name of a selected user dictionary
Rename a specified dictionary and sets a new name.
new_name
  • a new name for a chosen user dictionary
4checkname
  • name of a chosen user dictionary
Check if a specified user dictionary exists on the server.
5getdictname
  • name of a required user dictionary

Request content of a specified user dictionary.

Note

The getdict action is available only for the JSON format.

6addwordname
  • name of a chosen user dictionary
Add a new word to a specified user dictionary.

word
  • a new word which will be added to a specified user dictionary

addwords*wordlist
  • a list of coma-separated words (also possible to add just one word)

Status
colourGreen
titlev5.28.0
.0

7deletewordname
  • name of a chosen user dictionary
Remove a word from a specified user dictionary.

word
  • word which will be removed from a specified user dictionary

deletewords*wordlist
  • a list of coma-separated words (also possible to remove just one word)

Status
colourGreen
titlev5.28.0

8editwordname
  • name of a chosen user dictionary
Replace a word in a specified user dictionary with a new one.
word
  • word which will be edited
new_word
  • a new word which replaces a word picked for editing
Info

Starting from WebSpellChecker Server version 5.28.0.0, we have introduced two additional action parameters: "addwords" and "deletewords," which can be used as equivalents to the existing "addword" and "deleteword" parameters. However, for logical consistency, we recommend using these new parameters in combination with the "wordlist" parameter.

Example 4.1: Create User Dictionary (XML)

Code Block
titleRequest URL (GET): 
http(s)://server_endpoint/?cmd=user_dictionary&format=xml&action=create&name=user_dictionary&wordlist=SCAYT, SpellCheckAsYouType, WSC, WebSpellChecker, WProofreader

Parameters:

  • Command: user_dictionary
  • Action: Create
  • Name: “user_dictionary”
  • Wordlist: “SCAYT, SpellCheckAsYouType, WSC, WebSpellChecker, WProofreader”
  • Format: XML

Request Response:

Code Block
languagexml
themeEmacs
<?xml version="1.0" encoding="utf-8"?>
<dictionary>
    <name>user_dictionary</name>
    <action>create</action>
</dictionary>

Example 4.2: Get User Dictionary Content (JSON)

Code Block
titleRequest URL (GET): 
http(s)://server_endpoint/?cmd=user_dictionary&format=json&action=getdict&name=user_dictionary

Parameters:

  • Command: user_dictionary
  • Action: getdict
  • Name: “user_dictionary”
  • Format: JSON

Request Response:

Code Block
languagejs
themeEmacs
{
    "name": "user_dictionary",
    "action": "getdict",
    "wordlist": [
        "SCAYT",
        "SpellCheckAsYouType",
        "WSC",
        "WebSpellChecker",
        "WProofreader"
    ],
    "modificationTime": 1571762101
}

Example 4.3: Get User Dictionary Content using POST (Output in JSON)

Using the same request and parameters as described in example 4.2 but form it as a POST request.

Code Block
titleRequest URL (POST): 
https://your_host_name:443/virtual_directory/api?
Code Block
titleBody (Raw): 
cmd=user_dictionary&format=json&action=getdict&name=user_dictionary

Request Response:

Code Block
languagejs
themeEmacs
{
    "name": "user_dictionary",
    "action": "getdict",
    "wordlist": [
        "SCAYT",
        "SpellCheckAsYouType",
        "WSC",
        "WebSpellChecker",
        "WProofreader"
    ],
    "modificationTime": 1571762101
}

5. Get Languages List Command

Info

Command name: get_lang_list

Example 5.1: Get Languages List (JSON)

Code Block
titleRequest URL (GET): 
http(s)://server_endpoint/?cmd=get_lang_list

Parameters:

  • Command: get_lang_list
Note

By default, the output format for get_lang_list command is JSON.

Request Response:

Code Block
languagejs
themeEmacs
{
    "langList": {
        "ltr": {
            "en_US": "American English",
            "en_GB": "British English",
            "fr_FR": "French",
            "it_IT": "Italian",
            "de_DE": "German",
            "es_ES": "Spanish",
            "pt_BR": "Brazilian Portuguese",
            "da_DK": "Danish",
            "nl_NL": "Dutch",
            "nb_NO": "Norwegian Bokmal",
            "pt_PT": "Portuguese",
            "sv_SE": "Swedish",
            "el_GR": "Greek",
            "en_CA": "Canadian English",
            "fr_CA": "Canadian French",
            "fi_FI": "Finnish",
            "uk_UA": "Ukrainian"
        },
        "rtl": {}
    }
}

6. Check Version Command

Info

Command name: ver

Note

By default, the output format for ver command is a simple HTML page.

Example 6.1: Check Application Version 

Code Block
titleRequest URL (GET): 
http(s)://server_endpoint/?cmd=ver
Code Block
languagetext
{
    "Copyright": "(c) 2000-2019 WebSpellChecker LLC",
    "ProductWebsite": "webspellchecker.com",
    "ProgramVersion": "5.x.x.x x64 master:xxxxxxx (xxxx) #xx",
    "PackageVersion": "5.x.x.x master:xxxxxxx (xxx) #xx"
}

7. Check Engines Status Command

Info

Command name: status

Note

By default, the output format for status command is a simple text page.

Example 7.1: Check Engines Status 

Code Block
titleRequest URL (GET): 
http(s)://server_endpoint/?cmd=status
Code Block
languagetext
{
    "SpellCheckEngine": {
        "active": true
    },
    "GrammarCheckEngine": {
        "active": true
    },
    "ThesaurusEngine": {
        "active": true
    }
}

8. HTTP Status Codes

Refer to Overview of HTTP Status Codes section for more information on HTTP responses you may get when integrating WebSpellChecker and testing REST API.