> For the complete documentation index, see [llms.txt](https://calculatedsystems.gitbook.io/cloud-nifi-processors/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://calculatedsystems.gitbook.io/cloud-nifi-processors/amazon-web-services/comprehend-api.md).

# Comprehend API

Amazon's Comprehend API is their Natural Language Processing (NLP) API. Our processors will accept input strings and return JSON as their output.

## Common Properties

Common properties are properties that are shared between all Comprehend processors This means every Comprehend processor will include these properties, plus whatever additional properties the individual processors add.

{% hint style="info" %}
Properties whose names are in ***bold and italic*** are required.
{% endhint %}

* ***`Data Access Location`*** - Dropdown list that specifies what part of the FlowFile the data should be read from. The value can be set to one of the following
  * `flowfile-body`: the data will be taken from the body of the flowfile
  * `flowfile-attribute`: the data will be taken from the attribute specified in the Raw Data Attribute property
* **`Raw Data Attribute`** - Specifies which FlowFile attribute to pull the raw data string from if the Data Access Location attribute is set to flowfile-attribute
* ***`Destination`*** - A dropdown input that determines what part of the outgoing FlowFile will contain the output information. The value can be set to one of the following:
  * `flowfile-body`: the data will be put to the FlowFile body. Additionally, the FlowFile's mime.type property will be set to application/json
  * `flowfile-attribute`: the data will be put to an attribute, whose name depends on the processor. This name is listed on the processor's documentation page.
* ***`Language Code`*** - the language code of the language your input data is in
* ***`Comprehend Region`*** - a list of AWS Regions, to be set to where you set your Comprehend service's region
* ***`Communications Timeout`*** - how long before the processor routes a FlowFile to failure due to lack of API response
* **`AWS Credentials Provider Service`** - A reusable provider controller service that stores AWS credentials. If this is not set, you will need to put in whatever relevant credentials information manually into their respective properties.
* **`Access Key ID`** - The secret access key ID of an AWS credential
* **`Secret Access Key`** - The body of an AWS credential's secret access key
* **`Credentials File`** - The path to a properties file (on your instance) containing an AWS access key and secret key
* **`SSL Context Service`** - an optional reusable SSL context service which will be used to create connections if provided
