DetectSentiment - Amazon Comprehend


Inspects text and returns an inference of the prevailing sentiment (POSITIVE, NEUTRAL, MIXED, or NEGATIVE).

Request Syntax

{ "LanguageCode": "string", "Text": "string" }

Request Parameters

For information about the parameters that are common to all actions, see Common Parameters.

The request accepts the following data in JSON format.


The language of the input documents. You can specify any of the primary languages supported by Amazon Comprehend. All documents must be in the same language.

Type: String

Valid Values: en | es | fr | de | it | pt | ar | hi | ja | ko | zh | zh-TW

Required: Yes


A UTF-8 text string. Each string must contain fewer that 5,000 bytes of UTF-8 encoded characters.

Type: String

Length Constraints: Minimum length of 1.

Required: Yes

Response Syntax

{ "Sentiment": "string", "SentimentScore": { "Mixed": number, "Negative": number, "Neutral": number, "Positive": number } }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.


The inferred sentiment that Amazon Comprehend has the highest level of confidence in.

Type: String



An object that lists the sentiments, and their corresponding confidence levels.

Type: SentimentScore object


For information about the errors that are common to all actions, see Common Errors.


An internal server error occurred. Retry your request.

HTTP Status Code: 500


The request is invalid.

HTTP Status Code: 400


The size of the input text exceeds the limit. Use a smaller document.

HTTP Status Code: 400


Amazon Comprehend can't process the language of the input text. For all custom entity recognition APIs (such as CreateEntityRecognizer), only English, Spanish, French, Italian, German, or Portuguese are accepted. For most other APIs, such as those for Custom Classification, Amazon Comprehend accepts text in all supported languages. For a list of supported languages, see Languages Supported in Amazon Comprehend.

HTTP Status Code: 400


Detect sentiment

If the input text is "Today is my birthday, I am so happy.", the operation returns the following response:

{ "SentimentScore": { "Mixed": 0.0033542951568961143, "Positive": 0.9869875907897949, "Neutral": 0.008563132025301456, "Negative": 0.0010949420975521207 }, "Sentiment": "POSITIVE", } }

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: