HTTP response status codes described in this section indicate whether a specific HTTP request has been successfully completed. Refer to their descriptions below when integrating WebSpellChecker into your applications and testing REST API.

Error response structure

The response structure below is applicable to all error messages you may receive. The difference depends on the command used and the message returned.

{
"error": true,
"is_critical": 0,
"message": "...",
"command": "..."
}

400 Bad Request

The HTTP 400 Bad Request response status code indicates that the server cannot or will not process the request due to something that is perceived to be a client error.

Possible cause 

  • Incorrect syntax;

  • Incorrect spelling of command, parameter, or value name.

Remediation

  • Check the command correctness,
  • Verify if the request command syntax is correct, and the command is not empty,

  • Make sure the request message is framed correctly.

Example 1.1. Command error issue

For example, the following has an error in "check_spelling" command name:

{ 
"error": true,
"is_critical": 0,
"message": "The command value 'check_spellin' for 'cmd' parameter is unknown.
Check available commands. Contact [email protected] for more details.",
"command": "check_spellin"
}

Remediation: Specify a correct command name. Refer to the list of available commands in Web API Cloud  and Web API Server.

Example 1.2. Unspecified command

For example, the command in the request wasn't specified: 

{ 
"error": true,
"is_critical": 0,
"message": "The command value for 'cmd' parameter is not specified in your request.
Contact [email protected] for more details.",
"command": ""
}

Remediation: Specify the command value.

403 Forbidden

The HTTP 403 Forbidden client error status response code indicates that the server understood the request but refuses to authorize it.

Possible causes 

Some issues usages or occurrences in the response, for example: 

  • Language is disabled/unallowed; 

  • Service on the unallowed domain; 

  • Command, check type unallowed; for example, grammar checking command is not available under free services.

  • Product unavailable for the given license; 

  • Exceeded usage limitations;

  • Service subscription expiration.

Remediation

In most cases an error description provides the exact cause of the issue and solution on how to fix the issue in response on your side.

Example 2.1. Incorrect service ID

Example of an incorrect value used for a service/customer ID parameter:

{ 	"error": true, 
"is_critical": 0,
"message": "Service key is incorrect.", "command": "check"
}

Remediation: Check the value used in the service/customer ID parameter and make sure that you have copied and pasted the whole key without any extra characters. For older versions, please note that “1:” is also a part of your activation key.

Example 2.2. Expired subscription

Example of an expired customer ID: 

{ 	"error": true, 
"is_critical": 0,
"message": "Subscription expired. Contact [email protected] for more details.",
"command": "check"
}

RemediationRenew the service subscription.

Example 2.3. Unallowed domains issue

Example of an attempt to use the service on the domain(s) where the use is not granted: 

{ 
"error": true,
"is_critical": 0,
"message": "Requests from 'scayt.com' are not allowed. Check domain permissions. Contact [email protected] for more details.",
"command": "check"
}

Remediation: Verify the subscription covers the domain where you are using the service. Contact [email protected] to whitelist a domain for your subscription.

Example 2.4. Subscription key issue

Example of the subscription key which is either turned off or does not exist yet:

{ 
"error": true,
"is_critical": 0,
"message": "Subscription is disabled or doesn't exist. Contact [email protected] for more details.",
"command": "check"
}

Remediation: Contact our support team for details. If you have just subscribed to the Cloud services, please allow up to 5-10 mins for the changes to take effect.

500 Internal Server Error

The HTTP 500 Internal Server Error server error response code indicates that the server encountered an unexpected condition that prevented it from fulfilling the request. 

Possible cause 

This error response is a generic "catch-all" response. Usually, this indicates the server cannot find a better 5xx error code to respond. This error usually denotes some situation when the server is not aware of how to handle it properly. It can be for example, any exceptions of the server logic including all hardware issues. 

Remediation

If the error message doesn't give clear steps to fix the issue, contact our support team at [email protected].

503 Service Unavailable

The  HTTP 503 Service Unavailable server error response code indicates that the server is not ready to handle the request.

Possible cause

You may encounter this error if the license is invalid.

Remediation

Verify the server license and update/request new license if it is necessary. If you are a holder of the self-hosted, Server version of WebSpellChecker, check if you have any errors in the logs which are located AppServer/Logs folder. Also contact our support team at [email protected].