# Text Analytics -------------------------------------------------------------------------------- title: "Introduction" description: "Text Analytics is an AI-driven, ready-to-implement microservice that performs sentiment analysis, NER, and keyword extraction in texts." last_updated: "2026-03-18T07:41:08.704Z" source: "https://docs.catalyst.zoho.com/en/zia-services/help/text-analytics/introduction/" service: "Zia Services" -------------------------------------------------------------------------------- # Text Analytics ## Introduction Text Analytics is a Catalyst Zia Services component that processes textual content to draw structured and quantitative information from it. Text Analytics enables you to obtain useful insights, patterns, and trends from any textual content, which helps you automate the analysis of crucial data and make informed business decisions. It can be widely used in applications that involve R&D, analytics, knowledge management, customer support services, and more. Catalyst Text Analytics is a service that fundamentally encompasses three major features: * {{%bold%}}Sentiment Analysis:{{%/bold%}} Recognizes the tone and sentiment of a text as _Positive_, _Negative_, or _Neutral_ * {{%bold%}}Named Entity Recognition (NER):{{%/bold%}} Extracts key words from a text and groups them into various pre-determined categories * {{%bold%}}Keyword Extraction:{{%/bold%}} Extracts the highlights of a text, such as the key words and key phrases in it Catalyst Text Analytics delivers the results of any or all three of these features, based on your request. The responses of Sentiment Analysis and NER also include confidence scores that inform you of their accuracy. You can code your Catalyst application to process this information or handle it in any way you require. The Catalyst console provides an integrated platform where you can test Text Analytics with a selection of sample text. The console delivers a JSON response, as well as a multifaceted visual response that enables you to understand the results easily. You can learn more about the other components of Catalyst Zia Services from {{%link href="/en/zia-services" %}}this page{{%/link%}}. ### SDK and API for Text Analytics Catalyst provides Text Analytics in the Java, Node.js and Python platforms. You can obtain sample code templates for these platforms from the Catalyst console or from the SDK help, and easily integrate Text Analytics in your web or mobile application. Catalyst also provides individual APIs for each Text Analytics feature. For more information and code samples on working in these programming environments, refer to these help pages: * {{%link href="/en/sdk/java/v1/zia-services/text-analytics/all-text-analytics" %}}Text Analytics - Java SDK{{%/link%}} * {{%link href="/en/sdk/nodejs/v2/zia-services/text-analytics/all-text-analytics" %}}Text Analytics - Node.js SDK{{%/link%}} * {{%link href="/en/sdk/python/v1/zia-services/text-analytics/all-text-analytics" %}}Text Analytics - Python SDK{{%/link%}} * {{%link href="/en/api/code-reference/zia-services/text-analytics/all-text-analytics" %}}Text Analytics - API SDK{{%/link%}} {{%note%}}{{%bold%}}Note:{{%/bold%}} This help document only covers the concepts of the Text Analytics features and testing it from the console.{{%/note%}} -------------------------------------------------------------------------------- title: "Key Concepts" description: "Text Analytics is an AI-driven, ready-to-implement microservice that performs sentiment analysis, NER, and keyword extraction in texts." last_updated: "2026-03-18T07:41:08.705Z" source: "https://docs.catalyst.zoho.com/en/zia-services/help/text-analytics/key-concepts/" service: "Zia Services" -------------------------------------------------------------------------------- # Key Concepts Before you learn about {{%link href="/en/zia-services/help/text-analytics/implementation/#test-text-analytics-in-the-console" %}}testing Text Analytics{{%/link%}} from the Catalyst console, let's discuss the Text Analytics features in detail. ### Sentiment Analysis Sentiment Analysis is a common deep learning tool that performs contextual opinion mining of unstructured text, to extract subjective information about the underlying sentiments in it. It involves the applications of general text analysis, natural language processing, computational linguistics, and other machine learning techniques. The text is generally broken down into its component structures, and weighted sentiment scores are assigned to each entity. This helps the AI determine the overall sentiment of the text, based on a cumulative analysis of the sentiments recognized in each entity. The Zia Sentiment Analysis model analyzes the polarity of the sentiments in text, and categorizes it as one of these three: positive, negative, neutral. Zia determines these sentiments for each sentence in a text after analysing them one after the other, and then predicts if the overall text is {{%bold%}}positive{{%/bold%}}, {{%bold%}}negative{{%/bold%}}, or {{%bold%}}neutral{{%/bold%}}, based on the sentiments of each sentence. #### Response Formats Zia Sentiment Analysis returns the analysis of each sentence, as well as an analysis of the overall text as the response. The response also returns the {{%bold%}}confidence scores{{%/bold%}} for each sentence and the overall text, to showcase the accuracy of the analysis. The response and confidence score formats differ based on the response types: * {{%bold%}}Visual response:{{%/bold%}} The visual response generated when you test Text Analytics in the console displays the sentiment of each sentence in the text, and the overall sentiment of the text in a comprehensive and clear manner. The confidence score of each analysis is presented as a percentage value in the visual response. * {{%bold%}}JSON response:{{%/bold%}} You can obtain a JSON response for Text Analytics in both the API and while testing it in the console. The console generates both types of responses. The JSON response also delivers individual sentiments of each sentence and the overall sentiment. However, the confidence score in the JSON response is presented in the range of 0 to 1\. You can view a complete sample JSON response from the {{%link href="/en/api/code-reference/zia-services/text-analytics/sentiment-analysis/#SentimentAnalysis" %}}API documentation{{%/link%}}. #### Use Cases Sentiment Analysis is crucial for businesses and brands that place a huge value on understanding customer experiences. Sentiment Analysis can be implemented for the following purposes: * Gauging and monitoring sentiments expressed by customers in social media platforms and opinion surveys * Automating the analysis of customer feedbacks and reviews, and reducing the manual workload involved * Identifying and addressing critical situations in real-time, by the automated monitoring of negative sentiments * Upholding brand reputation and integrity by delivering quick and thorough customer support, and taking strategic actions * Implementing a centralized, organized, and unbiased system to arrive at decisions on subjective matters * Useful for data analysts to conduct nuanced market research and deliver actionable data * Making informed business decisions and providing tailor-made services based on the analysed sentiments and perceptions ### Named Entity Recognition Named Entity Recognition is a subset of information extraction that identifies named entities in an unstructured text, and classifies them into pre-determined categories. These categories represent real-world objects such as people, places, or organizations. An entity that contains common traits with a category is grouped into it. NER is concerned with natural language processing and artificial intelligence. It involves undergoing rigorous machine learning using a host of training data to detect and categorize entities with precision. The Zia NER model is efficient and reliable, and can extract and group entities with high accuracy. Zia NER can recognize and label entities that fit into the following pre-defined categories: {{%note%}}Organization, Number, Person, Money, Miscellaneous, Country, State, City, Location, Address, Serving, Length, Weight, Email, Phone, Website, Ordinal, Volume, Area, Serving, Speed, Temperature, Dataspeed, Datamemory, Color, Colorcode, Language, Date, Time, Duration{{%/note%}} That is, it can determine a word in a piece of text to be the name of an organization or a person, and add it to the appropriate category. #### Response Formats NER returns the recognized entities and the categories they belong to each, along with a {{%bold%}}confidence score{{%/bold%}} for each categorization that determines the accuracy of the classification. The response and confidence score formats differ based on the response types: * {{%bold%}}Visual response:{{%/bold%}} The visual response generated when you test Text Analytics in the console displays a list of the recognized entities and their categories. The confidence score of each classification is presented as a percentage value in the visual response. * {{%bold%}}JSON response:{{%/bold%}} You can obtain a JSON response for Text Analytics in both the API and while testing it in the console. The console generates both types of responses. The JSON response also delivers the entities and their categories, with additional information about the position of the entity in the text. The confidence score is presented as a percentage value here as well. You can view a complete sample JSON response from the {{%link href="/en/api/code-reference/zia-services/text-analytics/sentiment-analysis/#SentimentAnalysis" %}}API documentation{{%/link%}}. #### Use Cases NER is highly useful in identifying key elements in large datasets, and conveying their subject matter by grouping relevant or similar information together. NER can be implemented in the following scenarios: * Content classification and clustering applications that require efficient, quick, and real-time management of multiple content categories * Summarizing information in contents like resumes, manuals, news, scientific papers, and group crucial details together * Customer support applications that categorize complaints or requests based on departments, filter priority words, or pinpoint recurring problems * Applications in data science and analytics sectors that require extraction and organization of large scale data, or identifying common themes and trends * Optimizing search and recommendation engines using tags pertaining to entity classifications, and enhancing user experience * Transforming unstructured data into quantitative and meaningful information ### Keyword Extraction Keyword Extraction is a text analysis technique that involves extracting important and relevant terms from a piece of text, which provides an abstraction of the whole text. It also works on the principles of text mining, information retrieval, and natural language processing. Keyword Extraction is similar to other Text Analytics feature in the areas of analyzing human language, and developing precision with more training using rich data sets. It uses simple statistical approach like word frequencies and collocations to advanced machine learning approaches. Zia Keyword Extraction groups the extracted terms into two categories: {{%bold%}}Keywords{{%/bold%}} and {{%bold%}}Keyphrases{{%/bold%}}. These highlights deliver a concise summary of the text and provide valuable insights into its topic. Zia Keyword Extraction returns the response in the same format while testing it in the console, or through the API. Both the visual and JSON response contain an array of Keywords and another array of Keyphrases, which include the extracted terms in them. A confidence score is not returned for this feature. #### Use Cases Keyword Extraction is a highly useful feature if you want to skim through long textual content and just obtain the essential information and action items from it. It enables you to identify the subject matter and the gist of the text at a glance, and save valuable time. Keyword Extraction can be used for the following purposes: * Implementation in online libraries that return key highlights of reading materials as search results * Automating data retrieval, indexing, and organization in large datasets like online forums, customer feedbacks, news reports, and more * Querying for the presence of particular keywords and keyphrases from extracted material, and performing necessary actions accordingly * Implementation in applications that perform real-time analysis and generate automated responses based on the extracted key terms * Obtaining quick and in-depth insights from a huge number of source materials, and saving efforts and time in manual research and processing * Reducing inconsistencies in manual information retrieval, since Keyword Extraction functions on pre-defined parameters <br /> -------------------------------------------------------------------------------- title: "Benefits" description: "Text Analytics is an AI-driven, ready-to-implement microservice that performs sentiment analysis, NER, and keyword extraction in texts." last_updated: "2026-03-18T07:41:08.705Z" source: "https://docs.catalyst.zoho.com/en/zia-services/help/text-analytics/benefits/" service: "Zia Services" -------------------------------------------------------------------------------- ## Benefits of Catalyst Text Analytics 1. {{%bold%}}Integration of Multiple Features{{%/bold%}}<br /> Text Analytics is a combination of three different features that work distinctly to deliver individual, drilled-down results. The integration of these features enables you to process the same content for three different purposes, and obtain multitudes of insights on it, with a single request. This helps you gain layers of insights on your source material, and strategize your actions accordingly. 2. {{%bold%}}Highly Scalable and Efficient{{%/bold%}}<br /> Zia Text Analytics can process large volumes of data in parallel, and generate results in a fast and effective manner. Catalyst ensures a high throughput of data transmission and a minimal latency in serving requests. The quick response time enhances your application's performance, and enables you to deliver instant solutions. 3. {{%bold%}}Advanced and Trained AI{{%/bold%}}<br /> Zia is an AI-driven assistant that undergoes repeated systematic training to generate results with high accuracy and a low error margin. The AI is trained using various machine learning techniques to perform complex analysis and computations. The training model is vigorous, which means it studies and analyzes large volumes of data, and this ensures that the results generated are precise, accurate, and reliable. 4. {{%bold%}}Seamless Integration{{%/bold%}}<br /> You can easily implement Text Analytics in your application without having to worry about the underlying logic or the backend set-up, by incorporating the ready-made code templates provided for the Java, Node.js and Python platforms. Catalyst saves your efforts in customizing the code for your needs, by auto-populating the code with relevant project and environment details. 5. {{%bold%}}Testing in the Console{{%/bold%}}<br /> The testing feature in the console enables you to verify the efficiency of Text Analytics. You can process your own textual content and view both the JSON response and visual results. This allows you to get an idea about the format and accuracy of the response that will be generated when you implement it in your application. -------------------------------------------------------------------------------- title: "Implementation" description: "Text Analytics is an AI-driven, ready-to-implement microservice that performs sentiment analysis, NER, and keyword extraction in texts." last_updated: "2026-03-18T07:41:08.705Z" source: "https://docs.catalyst.zoho.com/en/zia-services/help/text-analytics/implementation/" service: "Zia Services" -------------------------------------------------------------------------------- # Implementation The Implementation section explains the process of testing Text Analytics in the Catalyst console. Refer to the {{%link href="/en/sdk/java/v1/zia-services/text-analytics/all-text-analytics" %}}Java SDK{{%/link%}}, {{%link href="/en/sdk/nodejs/v2/zia-services/text-analytics/all-text-analytics" %}}Node.js SDK{{%/link%}}, {{%link href="/en/sdk/python/v1/zia-services/text-analytics/all-text-analytics" %}}Python SDK{{%/link%}} and {{%link href="/en/api/code-reference/zia-services/text-analytics/all-text-analytics" %}}API{{%/link%}} help pages for help on implementing Text Analytics in your code. The Text Analytics component in the console processes your text and delivers results for all three features: Sentiment Analysis, NER, and Keyword Extraction by default. You can view individual responses for each feature, and a common JSON response for all three features. ### Access Text Analytics in the Console You can access Text Analytics for your project in the Catalyst console in the following way: 1. Navigate to {{%bold%}}Zia Services{{%/bold%}} in the left pane of the Catalyst console and click {{%bold%}}Text Analytics.{{%/bold%}}<br /><br /> 2. Click {{%bold%}}Try a Demo{{%/bold%}} in the Text Analytics feature page.<br /> ### Test Text Analytics in the Console You can test Text Analytics by either selecting an existing sample text, or by providing your own text. You can pass a block of text of upto {{%bold%}}1500 characters{{%/bold%}} to process for Text Analytics. To {{%bold%}}process an existing sample text{{%/bold%}} and obtain the results: 1. Click {{%bold%}}Get Sample Text{{%/bold%}} in the window.<br /> 2. Select a sample text of your choice from the ones shown in the window.<br /> Catalyst will process the text for all three features and display the visual and JSON responses for them. Let's discuss the response of each feature. {{%bold%}}Sentiment Analysis:{{%/bold%}} The results of the {{%link href="/en/zia-services/help/text-analytics/key-concepts/#sentiment-analysis" %}}Sentiment Analysis{{%/link%}} contain the sentiments recognized in each sentence of the text. As mentioned earlier, the visual response presents the range of accuracy of the sentiments in percentages. You can navigate to a sentence either by clicking on it from the text window, or by clicking the arrow marks in the result window displaying each sentence. The overall sentiment and accuracy of the entire text are also displayed in the results window. {{%bold%}}Named Entity Recognition:{{%/bold%}} The results of {{%link href="/en/zia-services/help/text-analytics/key-concepts/#named-entity-recognition" %}}Named Entity Recognition{{%/link%}} contain the list of all entities recognized in the text, and the categories they are classified into, along with the confidence score of each classification in percentages. You can navigate between the entities by clicking on the recognized entity, indicated in grey, in the text window, or by clicking the entity displayed in the results section. You can also filter the results by a specific entity category using the filter drop-down above. Select a category to view the entities that are grouped into it. {{%bold%}}Keyword Extraction:{{%/bold%}} The result section of {{%link href="/en/zia-services/help/text-analytics/key-concepts/#keyword-extraction" %}}Keyword Extraction{{%/link%}} displays a list of keywords and keyphrases extracted from the text that provide highlights of the content. You can navigate between the keywords and keyphrases by clicking on them in the text window, or from the results section. The results section also contains options for you to edit the text that you want to process, or select a different existing sample text at the bottom. Clicking {{%bold%}}Edit Text{{%/bold%}} will open a text window, where you modify or enter your own text. We will discuss at the end of this section. You can view the JSON response of this Text Analytics by clicking {{%bold%}}View Response{{%/bold%}}. <br /> This will open a window with the JSON response that includes the results of all three features. You can check a full sample JSON response of each feature from the {{%link href="/en/api/code-reference/zia-services/text-analytics/sentiment-analysis/#SentimentAnalysis" %}}API documentation{{%/link%}}. You can {{%bold%}}provide your own text{{%/bold%}} for Text Analytics processing in the following way: 1. Click {{%bold%}}Enter Text{{%/bold%}} from the _Text Analytics_ page.<br /><br /> <br /> 2. Enter your own text in the window, then click {{%bold%}}Confirm{{%/bold%}}.<br /><br /> <br /> Catalyst will process your text for all three features, and display the visual and JSON responses for them, in the same manner as discussed in the sample text section. You can check the results for all the features, and the JSON response, in the same way. ### Access Code Templates for Text Analytics As mentioned in the introduction, you can implement Text Analytics in your Catalyst application in the {{%bold%}}Java{{%/bold%}}, {{%bold%}}Node.js{{%/bold%}} and {{%bold%}}Python{{%/bold%}} platforms. The console provides the code templates for both these platforms, below the test window. Click the required tab and copy the code using the copy icon. You can include this code in your web or mobile application's source. In the Java code, the text to be processed for all three Text Analytics feature is passed as a JSON Array to {{%badge%}}getTextAnalytics(){{%/badge%}}. The response returns the results of each Text Analytics feature in their own format. Refer to the {{%link href="/en/sdk/java/v1/zia-services/text-analytics/all-text-analytics/" %}}Java SDK documentation{{%/link%}} for more details on the Java code. The Node.js code references the {{%badge%}}zia{{%/badge%}} component instance and also passes the text to be processed to {{%badge%}}getTextAnalytics(){{%/badge%}}. You can write your own processing logic and error logic. The response returns the results of each Text Analytics feature in their own format. Refer to the {{%link href="/en/sdk/nodejs/v2/zia-services/text-analytics/all-text-analytics/" %}}Node.js SDK documentation{{%/link%}} for more details on the Node.js code. Refer to the {{%link href="/en/sdk/python/v1/zia-services/text-analytics/sentiment-analysis/" %}}Python SDK documentation{{%/link%}} for more details on the Python code. --- ## API Reference — Text Analytics -------------------------------------------------------------------------------- title: "All Text Analytics" description: "This API enables you to perform Sentiment Analysis, Named Entity Recognition, and Keyword Extraction on a block of text." last_updated: "2026-03-18T07:41:08.716Z" source: "https://docs.catalyst.zoho.com/en/api/code-reference/zia-services/text-analytics/all-text-analytics/" service: "Zia Services" -------------------------------------------------------------------------------- {{% section path="/en/api/code-reference/zia-services/text-analytics/all-text-analytics/" id="AllTextAnalytics" %}} {{%divtag class="LeftContent"%}} # Text Analytics {{%link href="/en/zia-services/help/text-analytics/introduction/"%}}Text Analytics{{%/link%}} as a whole includes a combination of the following three features: {{%link href="/en/api/code-reference/zia-services/text-analytics/all-text-analytics/#SentimentAnalysis"%}}Sentiment Analysis{{%/link%}}, {{%link href="/en/api/code-reference/zia-services/text-analytics/all-text-analytics/#NamedEntityRecognition"%}}Named Entity Recognition{{%/link%}}, and {{%link href="/en/api/code-reference/zia-services/text-analytics/all-text-analytics/#KeywordExtraction"%}}Keyword Extraction{{%/link%}}. You can perform all three actions on a specific block of text, and obtain the tone of the text, the categorizations of the entities recognized from it, and key words and phrases that provide a gist of the text. ## Execute All Text Analytics ### Description You can use this API to perform Sentiment Analysis, Named Entity Recognition, and Keyword Extraction on a block of text of upto 1500 characters. You can pass the text in the JSON body of the request, as shown in the sample request. You can also pass optional keywords to perform Sentiment Analysis on the sentences containing only those keywords. {{%note%}}{{%bold class="bold-primary"%}}Note:{{%/bold%}} Refer to the respective API pages of these features for detailed information about each of them.{{%/note%}} ### Request Details #### Request URL {{%request class="apiyellow" req="POST" %}}<p>{api-domain}/baas/v1/project/{project_id}/ml/text-analytics</p>{{%/request%}} {{%request_id id="api-domain" data="URL" %}}The DC-specific domain to access Catalyst API{{%/request_id%}} {{%request_id id="project_id" data="Numerical" %}}The {{%link href="/en/getting-started/set-up-a-catalyst-project/general-settings/"%}}unique ID{{%/link%}} of the project{{%/request_id%}} #### Request Headers {{%scope%}} **Authorization:** Zoho-oauthtoken {oauth_token} <br> **content-type:** application/json {{%/scope%}} **Optional Headers** <br> {{%scope%}} **CATALYST-ORG:** {org_id} {{%/scope%}} {{%scope%}} **Environment:** Development {{%/scope%}} #### Scope {{%scope%}} ZohoCatalyst.mlkit.READ {{%/scope%}} #### Request JSON Properties {{% nested_fields children="open" border="yes" expandable="no" title="document" textformat="string array" condition="mandatory" maxlength=" " %}} The text to be processed for Sentiment Analysis, Named Entity Recognition, and Keyword Extraction{{% /nested_fields %}} {{% nested_fields children="open" border="yes" expandable="no" title="keywords" textformat="string array" condition="optional" maxlength=" " %}} To perform Sentiment Analysis only on the sentences containing these keywords{{% /nested_fields %}} ### Response Details The response contains the results of each of the text analytics feature. Refer to the response details section of each feature individually for detailed information. {{%/divtag%}} {{%divtag class="RightContent"%}} {{% panel_without_adjustment header="Sample Request" class="language-bash" %}}curl -X POST \ https://api.catalyst.zoho.com/baas/v1/project/4000000006007/ml/text-analytics \ -H "Authorization: Zoho-oauthtoken 1000.910*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*16.2f*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*57" \ -H "Content-Type: application/json" \ -d '{ "document":"[Zoho Corporation is an Indian software development company. The focus of Zoho Corporation lies in web-based business tools and information technology.]" }' {{% /panel_without_adjustment %}} {{% panel_with_adjustment header="Sample Response" class="language-json line-numbers"%}} { "status":"success", "data":[ { "keyword_extractor":{ "keywords":[ "focus" ], "keyphrases":[ "Indian software development company", "Zoho Corporation", "web - based business tools", "information technology" ] }, "sentiment_prediction":[ { "document_sentiment":"Neutral", "sentence_analytics":[ { "sentence":"Zoho Corporation is an Indian software development company.", "sentiment":"Neutral", "confidence_scores":{ "negative":0.0, "neutral":1.0, "positive":0.0 } }, { "sentence":"The focus of Zoho Corporation lies in web-based business tools and information technology.", "sentiment":"Neutral", "confidence_scores":{ "negative":0.0, "neutral":1.0, "positive":0.0 } } ], "overall_score":1.0 } ], "ner":{ "general_entities":[ { "start_index":0, "confidence_score":99, "end_index":16, "ner_tag":"Organization", "token":"Zoho Corporation" }, { "start_index":23, "confidence_score":99, "end_index":29, "ner_tag":"Miscellaneous", "token":"Indian" }, { "start_index":73, "confidence_score":99, "end_index":89, "ner_tag":"Organization", "token":"Zoho Corporation" } ] } } ] }{{% /panel_with_adjustment %}} {{% expand-container %}} {{% expand id="sdk_docs" header="SDK Documentation"%}} {{%link href="/en/sdk/java/v1/zia-services/text-analytics/all-text-analytics"%}}Text Analytics: All Text Analytics- Java SDK{{%/link%}}<br><br> {{%link href="/en/sdk/nodejs/v2/zia-services/text-analytics/all-text-analytics"%}}Text Analytics: All Text Analytics- Node.js SDK{{%/link%}}<br><br> {{%link href="/en/sdk/python/v1/zia-services/text-analytics/all-text-analytics"%}}Text Analytics: All Text Analytics- Python SDK{{%/link%}}<br><br> {{%/expand%}} {{%/expand-container%}} {{%/divtag%}} {{%/section%}} -------------------------------------------------------------------------------- title: "Sentiment Analysis" description: "This API enables you to perform Sentiment Analysis on a block of text, and recognize the tone of the message and the sentiments in the text." last_updated: "2026-03-18T07:41:08.734Z" source: "https://docs.catalyst.zoho.com/en/api/code-reference/zia-services/text-analytics/sentiment-analysis/" service: "Zia Services" -------------------------------------------------------------------------------- {{% section path="/en/api/code-reference/zia-services/text-analytics/sentiment-analysis/" id="SentimentAnalysis" %}} {{%divtag class="LeftContent"%}} # Sentiment Analysis {{%link href="/en/zia-services/help/text-analytics/introduction/"%}}Zia Sentiment Analysis{{%/link%}} is a part of Text Analytics that processes textual content to recognize the tone of the message, and the sentiments conveyed through it. It analyses each sentence in the text to determine if its tone is Positive, Negative, or Neutral. It then determines the tone of the overall text as one of the these three sentiments, based on the sentiments recognized in each sentence. The response also returns the confidence scores for each sentence and the overall text, to showcase the accuracy of the analysis. # Execute Sentiment Analysis ### Description You can use this API to perform Sentiment Analysis on a block of text of upto 1500 characters in a single request. You must pass the text in the JSON body of the request, as shown in the sample request. You can also pass optional keywords for the text. This will enable Sentiment Analysis to process only those sentences that contain these keywords, and determine their sentiments. Other sentences will be ignored. ### Request Details #### Request URL {{%request class="apiyellow" req="POST" %}}<p>{api-domain}/baas/v1/project/{project_id}/ml/text-analytics/sentiment-analysis</p>{{%/request%}} {{%request_id id="api-domain" data="URL" %}}The DC-specific domain to access Catalyst API{{%/request_id%}} {{%request_id id="project_id" data="Numerical" %}}The {{%link href="/en/getting-started/set-up-a-catalyst-project/general-settings/"%}}unique ID{{%/link%}} of the project{{%/request_id%}} #### Request Headers {{%scope%}} **Authorization:** Zoho-oauthtoken {oauth_token} <br> **content-type:** application/json {{%/scope%}} **Optional Headers** <br> {{%scope%}} **CATALYST-ORG:** {org_id} {{%/scope%}} {{%scope%}} **Environment:** Development {{%/scope%}} #### Scope {{%scope%}} ZohoCatalyst.mlkit.READ {{%/scope%}} #### Request JSON Properties {{% nested_fields children="open" border="yes" expandable="no" title="document" textformat="string array" condition="mandatory" maxlength=" " %}} The text to be processed for Sentiment Analysis{{% /nested_fields %}} {{% nested_fields children="open" border="yes" expandable="no" title="keywords" textformat="string array" condition="optional" maxlength=" " %}} To perform Sentiment Analysis only on the sentences containing these keywords{{% /nested_fields %}} ### Response Details The response contains the result of individual sentence analysis and the overall text analysis as {{%badge%}}Positive{{%/badge%}}, {{%badge%}}Negative{{%/badge%}}, or {{%badge%}}Neutral{{%/badge%}}, along with the overall confidence score of each analysis. The confidence score lies in the range of 0 to 1. {{%/divtag%}} {{%divtag class="RightContent"%}} {{% panel_without_adjustment header="Sample Request" class="language-bash" %}}curl -X POST \ https://api.catalyst.zoho.com/baas/v1/project/4000000006007/ml/text-analytics/sentiment-analysis -H "Authorization: Zoho-oauthtoken 1000.910*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*16.2f*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*57" \ -H "Content-Type: application/json" \ -d '{"document":"[I love the design of the new model.]", "keywords":"[design]" }' {{% /panel_without_adjustment %}} {{% panel_without_adjustment header="Sample Response" class="language-json line-numbers"%}} { "status":"success", "data":[ { "sentiment_prediction":[ { "document_sentiment":"Positive", "sentence_analytics":[ { "sentence":"I love the design of the new model", "sentiment":"Positive", "confidence_scores":{ "negative":0.0, "neutral":0.0, "positive":1.0 } } ], "keyword":"design", "overall_score":1.0 } ] } ] }{{% /panel_without_adjustment %}} {{% expand-container %}} {{% expand id="sdk_docs" header="SDK Documentation"%}} {{%link href="/en/sdk/java/v1/zia-services/text-analytics/sentiment-analysis"%}}Text Analytics: Sentiment Analysis- Java SDK{{%/link%}}<br><br> {{%link href="/en/sdk/nodejs/v2/zia-services/text-analytics/sentiment-analysis"%}}Text Analytics: Sentiment Analysis- Node.js SDK{{%/link%}}<br><br> {{%link href="/en/sdk/python/v1/zia-services/text-analytics/sentiment-analysis"%}}Text Analytics: Sentiment Analysis- Python SDK{{%/link%}}<br><br> {{%/expand%}} {{%/expand-container%}} {{%/divtag%}} {{%/section%}} -------------------------------------------------------------------------------- title: "Named Entity Recognition" description: "This API enables you to perform Named Entity Recognition on a block of text to extract key words from it and group them into various categorizes" last_updated: "2026-03-18T07:41:08.734Z" source: "https://docs.catalyst.zoho.com/en/api/code-reference/zia-services/text-analytics/named-entity-recognition/" service: "Zia Services" -------------------------------------------------------------------------------- {{% section path="/en/api/code-reference/zia-services/text-analytics/named-entity-recognition/" id="NamedEntityRecognition" %}} {{%divtag class="LeftContent"%}} # Named Entity Recognition {{%link href="/en/zia-services/help/text-analytics/introduction/"%}}Zia Named Entity Recognition{{%/link%}} is a part of Text Analytics that processes textual content to extract key words and group them into various categorizes. For example, it can determine a word in a text to be the name of an organization, the name of a person, or a date, and add it to the appropriate category accordingly. Refer {{%link href="/en/zia-services/help/text-analytics/key-concepts/#named-entity-recognition"%}}here{{%/link%}} for a list of all categories recognized by NER. The response will return the details of all recognized entities, and a tag indicating the category they belong to. It will also contain the confidence score of each recognition to showcase its accuracy, and the locations of the entity in the text. # Execute Named Entity Recognition ### Description You can use this API to perform named entity recognition on a block of text of upto 1500 characters in a single request. You can pass the text in the JSON body of the request, as shown in the sample request. ### Request Details #### Request URL {{%request class="apiyellow" req="POST" %}}<p>{api-domain}/baas/v1/project/{project_id}/ml/text-analytics/ner</p>{{%/request%}} {{%request_id id="api-domain" data="URL" %}}The DC-specific domain to access Catalyst API{{%/request_id%}} {{%request_id id="project_id" data="Numerical" %}}The {{%link href="/en/getting-started/set-up-a-catalyst-project/general-settings/"%}}unique ID{{%/link%}} of the project{{%/request_id%}} #### Request Headers {{%scope%}} **Authorization:** Zoho-oauthtoken {oauth_token} <br> **content-type:** application/json {{%/scope%}} **Optional Headers** <br> {{%scope%}} **CATALYST-ORG:** {org_id} {{%/scope%}} {{%scope%}} **Environment:** Development {{%/scope%}} #### Scope {{%scope%}} ZohoCatalyst.mlkit.READ {{%/scope%}} #### Request JSON Properties {{% nested_fields children="open" border="yes" expandable="no" title="document" textformat="string array" condition="mandatory" maxlength=" " %}} The text to be processed for Named Entity Recognition{{% /nested_fields %}} ### Response Details The response returns an array of all the entities recognized in the text. The details of each entity recognition contains the tag of the entity's categorization, such as {{%badge%}}ORG{{%/badge%}} or{{%badge%}}MISC{{%/badge%}} to indicate the name of an organization or a miscellaneous value respectively. The response also returns the location of each entity in the text through {{%badge%}}start_index{{%/badge%}} and {{%badge%}}end_index{{%/badge%}}, that indicate the start and end indices of the entity. The confidence score determined for each entity classification is represented in percentage values. {{%/divtag%}} {{%divtag class="RightContent"%}} {{% panel_without_adjustment header="Sample Request" class="language-bash" %}}curl -X POST \ https://api.catalyst.zoho.com/baas/v1/project/4000000006007/ml/text-analytics/ner \ -H "Authorization: Zoho-oauthtoken 1000.910*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*16.2f*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*57" \ -H "Content-Type: application/json" \ -d '{ "document":"[The biggest reason for me to love and remember this trek is the beautiful valley itself. Right from the entry, you can see a bed of pink alpine orchids, blue Himalayan poppies, yellow marigolds, and a whole variety of flowers spread out around you. The weather was also very pleasant that day, about 24 degree celsius, which made the experience all the more amazing.]" }' {{% /panel_without_adjustment %}} {{% panel_with_adjustment header="Sample Response" class="language-json line-numbers"%}} { "status": "success", "data": [ { "ner": { "general_entities": [ { "start_index": 21, "confidence_score": 100, "end_index": 25, "ner_tag": "Color", "token": "pink" } ] } }, { "ner": { "general_entities": [ { "start_index": 94, "confidence_score": 56, "end_index": 97, "ner_tag": "Duration", "token": "day" } ] } }, { "ner": { "general_entities": [] } }, { "ner": { "general_entities": [] } }, { "ner": { "general_entities": [ { "start_index": 0, "confidence_score": 100, "end_index": 6, "ner_tag": "Color", "token": "yellow" } ] } }, { "ner": { "general_entities": [ { "start_index": 6, "confidence_score": 100, "end_index": 15, "ner_tag": "Temperature", "token": "24 degree", "fine_entities": [ { "start_index": 9, "end_index": 15, "ner_tag": "Fahrenhiet", "token": "degree" }, { "start_index": 6, "end_index": 8, "ner_tag": "Value", "token": "24" } ] }, { "start_index": 16, "confidence_score": 100, "end_index": 23, "ner_tag": "Unit_temperature", "token": "celsius" } ] } }, { "ner": { "general_entities": [ { "start_index": 5, "confidence_score": 61, "end_index": 14, "ner_tag": "Miscellaneous", "token": "Himalayan" }, { "start_index": 0, "confidence_score": 100, "end_index": 4, "ner_tag": "Color", "token": "blue" } ] } } ] } {{% /panel_with_adjustment %}} {{% expand-container %}} {{% expand id="sdk_docs" header="SDK Documentation"%}} {{%link href="/en/sdk/java/v1/zia-services/text-analytics/named-entity-recognition"%}}Text Analytics: Named Entity Recognition- Java SDK{{%/link%}}<br><br> {{%link href="/en/sdk/nodejs/v2/zia-services/text-analytics/named-entity-recognition"%}}Text Analytics: Named Entity Recognition- Node.js SDK{{%/link%}}<br><br> {{%link href="/en/sdk/python/v1/zia-services/text-analytics/named-entity-recognition"%}}Text Analytics: Named Entity Recognition- Python SDK{{%/link%}}<br><br> {{%/expand%}} {{%/expand-container%}} {{%/divtag%}} {{%/section%}} -------------------------------------------------------------------------------- title: "Keyword Extraction" description: "This API enables you to perform Keyword Extraction on a block of text to extract the highlights in it, in the form of keywords and keyphrases." last_updated: "2026-03-18T07:41:08.734Z" source: "https://docs.catalyst.zoho.com/en/api/code-reference/zia-services/text-analytics/keyword-extraction/" service: "Zia Services" -------------------------------------------------------------------------------- {{% section path="/en/api/code-reference/zia-services/text-analytics/keyword-extraction/" id="KeywordExtraction" %}} {{%divtag class="LeftContent"%}} # Keyword Extraction {{%link href="/en/zia-services/help/text-analytics/introduction/"%}}Zia Keyword Extraction{{%/link%}} is a part of Text Analytics that processes textual content and extracts the highlights of the text. The extracted terms are grouped into two categories: **Keywords** and **Keyphrases**. These highlights deliver a concise summary of the text and provide an abstraction of the whole text. Keyword Extraction is a highly useful feature if you want to skim through long textual content and just obtain the essential information and action items from it. You will be able to identify the subject matter and the gist of the text easily from the response, and save valuable time. # Execute Keyword Extraction ### Description You can use this API to perform Keyword Extraction on a block of text of upto 1500 characters in a single request. You can pass the text in the JSON body of the request, as shown in the sample request. ### Request Details #### Request URL {{%request class="apiyellow" req="POST" %}}<p>{api-domain}/baas/v1/project/{project_id}/ml/text-analytics/keyword-extraction</p>{{%/request%}} {{%request_id id="api-domain" data="URL" %}}The DC-specific domain to access Catalyst API{{%/request_id%}} {{%request_id id="project_id" data="Numerical" %}}The {{%link href="/en/getting-started/set-up-a-catalyst-project/general-settings/"%}}unique ID{{%/link%}} of the project{{%/request_id%}} #### Request Headers {{%scope%}} **Authorization:** Zoho-oauthtoken {oauth_token} <br> **content-type:** application/json {{%/scope%}} **Optional Headers** <br> {{%scope%}} **CATALYST-ORG:** {org_id} {{%/scope%}} {{%scope%}} **Environment:** Development {{%/scope%}} #### Scope {{%scope%}} ZohoCatalyst.mlkit.READ {{%/scope%}} #### Request JSON Properties {{% nested_fields children="open" border="yes" expandable="no" title="document" textformat="string array" condition="mandatory" maxlength=" " %}} The text to be processed for Keyword Extraction{{% /nested_fields %}} ### Response Details The response contains an array of the key words, and another array of the key phrases that are extracted from the text. {{%/divtag%}} {{%divtag class="RightContent"%}} {{% panel_without_adjustment header="Sample Request" class="language-bash" %}}curl -X POST \ https://api.catalyst.zoho.com/baas/v1/project/4000000006007/ml/text-analytics/keyword-extraction \ -H "Authorization: Zoho-oauthtoken 1000.910*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*16.2f*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*57" \ -H "Content-Type: application/json" \ -d '{ "document": "[Catalyst is a full-stack cloud-based serverless development tool, that provides backend functionalities to build applications and microservices on various platforms.]" }' {{% /panel_without_adjustment %}} {{% panel_without_adjustment header="Sample Response" class="language-json line-numbers"%}} { "status": "success", "data": [ { "keyword_extractor": { "keywords": [ "microservices", "applications" ], "keyphrases": [ "backend functionalities", "various platforms" ] } }, { "keyword_extractor": { "keywords": [ "Catalyst" ], "keyphrases": [ "cloud-based serverless development tool" ] } } ] }{{% /panel_without_adjustment %}} {{% expand-container %}} {{% expand id="sdk_docs" header="SDK Documentation"%}} {{%link href="/en/sdk/java/v1/zia-services/text-analytics/keyword-extraction"%}}Text Analytics: Keyword Extraction- Java SDK{{%/link%}}<br><br> {{%link href="/en/sdk/nodejs/v2/zia-services/text-analytics/keyword-extraction"%}}Text Analytics: Keyword Extraction- Node.js SDK{{%/link%}}<br><br> {{%link href="/en/sdk/python/v1/zia-services/text-analytics/keyword-extraction"%}}Text Analytics: Keyword Extraction- Python SDK{{%/link%}}<br><br> {{%/expand%}} {{%/expand-container%}} {{%/divtag%}} {{%/section%}} --- ## SDK — Java — Text Analytics -------------------------------------------------------------------------------- title: "Sentiment Analysis" description: "This page describes the method to use the sentiment analysis feature in your Java application with sample code snippets." last_updated: "2026-03-18T07:41:08.746Z" source: "https://docs.catalyst.zoho.com/en/sdk/java/v1/zia-services/text-analytics/sentiment-analysis/" service: "Zia Services" related: - Sentiment Analysis - API (/en/api/code-reference/zia-services/text-analytics/sentiment-analysis/#SentimentAnalysis) -------------------------------------------------------------------------------- # Sentiment Analysis {{%link href="/en/zia-services/help/text-analytics/key-concepts/#sentiment-analysis" %}}Zia Sentiment Analysis{{%/link%}} is a part of Text Analytics that processes textual content to recognize the tone of the message, and the sentiments conveyed through it. It analyses each sentence in the text to determine if its tone is {{%bold%}}positive{{%/bold%}}, {{%bold%}}negative{{%/bold%}}, or {{%bold%}}neutral{{%/bold%}}. It then determines the tone of the overall text as one of the these three sentiments, based on the sentiments recognized in each sentence. The response also returns the confidence scores for the sentiments detected in each sentence, to showcase the accuracy of the analysis. The confidence score lies in the range of 0 to 1\. A confidence score for the overall analysis is also returned. You can pass a block of text as the input of upto {{%bold%}}1500 characters{{%/bold%}} in a single request. You can also pass optional keywords for the text. This will enable Sentiment Analysis to process only those sentences that contain these keywords, and determine their sentiments. Other sentences will be ignored. The input text is passed to the {{%badge%}}getSentimentAnalysis(){{%/badge%}} function of the {{%badge%}}ZCSentimentAnalysisData{{%/badge%}} class. The code contains statements to fetch the sentiments and confidence score of each sentence, as well as the overall score. #### Sample Code Snippet <br> {{% panel_without_adjustment header="Package Imports" class="language-java line-numbers" %}}import org.json.simple.JSONArray; import com.catalyst.advanced.CatalystAdvancedIOHandler; import com.zc.component.ml.ZCML; import com.zc.component.ml.ZCSentenceAnalytics; import com.zc.component.ml.ZCSentimentAnalysisData; import com.zc.component.ml.ZCSentimentAnalysisDetails; import com.zc.component.ml.ZCSentimentConfidenceScore; import java.io.File; {{% /panel_without_adjustment %}} {{%code class="language-java" scroll="set-scroll" %}}JSONArray textArray = new JSONArray(); textArray.add("ZylkerDB is one of their best products. I've been Zylker's customer for over a decade now, and I've always had a great experience with them."); //Input text to be processed JSONArray keywords = new JSONArray(); keywords.add("Zylker"); //Optional keywords, if you wish to process the sentences containing only these keywords List listOfSentimentAnalysisData = ZCML.getInstance().getSentimentAnalysis(textArray,keywords); //Input text is passed ZCSentimentAnalysisData sentimentAnalysisData = listOfSentimentAnalysisData.get(0); List SentimentAnalysisDetails = sentimentAnalysisData .getSentimentAnalysisDetails(); for (ZCSentimentAnalysisDetails sentimentAnalysis : SentimentAnalysisDetails) { String sentiment = sentimentAnalysis.getDocumentSentiment(); //To obtain the overall sentiment of the text double overallScore = sentimentAnalysis.getOverallScore(); //To obtain the confidence score of the overall analysis List listOfSentenceAnalytics = sentimentAnalysis.getSentenceAnalytics(); //To obtain the sentiment of each sentence ZCSentenceAnalytics sentenceAnalytic = listOfSentenceAnalytics.get(0); String sentenceSentiment = sentenceAnalytic.getSentiment(); String sentence = sentenceAnalytic.getSentence(); ZCSentimentConfidenceScore sentenceLevelConfidenceScore = sentenceAnalytic.getConfidenceScore(); //To obtain the confidence score of each sentence analysis }{{%/code%}} -------------------------------------------------------------------------------- title: "Named Entity Recognition" description: "This page describes the method to use the named entity recognition feature in your Java application with sample code snippets." last_updated: "2026-03-18T07:41:08.747Z" source: "https://docs.catalyst.zoho.com/en/sdk/java/v1/zia-services/text-analytics/named-entity-recognition/" service: "Zia Services" related: - Named Entity Recognition - API (/en/api/code-reference/zia-services/text-analytics/named-entity-recognition/#NamedEntityRecognition) -------------------------------------------------------------------------------- # Named Entity Recognition {{%link href="/en/zia-services/help/text-analytics/key-concepts/#named-entity-recognition" %}}Zia Named Entity Recognition{{%/link%}} is a part of Text Analytics that processes textual content to extract key words and group them into various categorizes. For example, it can determine a word in a text to be the name of an organization, the name of a person, or a date, and add it to the appropriate category accordingly. Refer {{%link href="/en/zia-services/help/text-analytics/#NER" %}}here{{%/link%}} for a list of all categories recognized by NER. The response returns an array of all the entities recognized in the text, and a tag indicating the category they belong to. It will also contain the confidence score of each categorization in percentage values, to showcase its accuracy. The response also returns the location of the entity in the text through its start index and end index. You can pass a block of text as the input of upto {{%bold%}}1500 characters{{%/bold%}} in a single request, as shown below. The text is passed to {{%badge%}}getNERPrediction(){{%/badge%}}. The code contains statements to fetch the entities, their tags, locations, and the confidence scores. #### Sample Code Snippet <br> {{% panel_without_adjustment header="Package Imports" class="language-java line-numbers" %}}import org.json.simple.JSONArray; import com.zc.component.ml.ZCML; import com.zc.component.ml.ZCNERData; import com.zc.component.ml.ZCNERDetails; import java.io.File; {{% /panel_without_adjustment %}} {{%code class="language-java" scroll="set-scroll" %}}JSONArray textArray = new JSONArray(); textArray.add("Zoho Corporation, is an Indian multinational technology company that makes web-based business tools.It is best known for Zoho Office Suite. The company was founded by Sridhar Vembu and Tony Thomas and has a presence in seven locations with its global headquarters in Chennai, India, and corporate headquarters in Pleasanton, California."); //Input text to be processed List listOfNERData = ZCML.getInstance().getNERPrediction(textArray); //Pass the input text List nerDetails = listOfNERData.get(0).getNERList(); String token = nerDetails.get(0).getToken(); //To recognize the entity String tag = nerDetails.get(0).getNERTag(); //To fetch the category of each entity double confidenceScore = nerDetails.get(0).getConfidenceScore(); //To fetch the confidence score of each classification int startIndex = nerDetails.get(0).getStartIndex(); //To fetch the start index of each entity int endIndex = nerDetails.get(0).getEndIndex(); //To fetch the end index of each entity {{%/code%}} -------------------------------------------------------------------------------- title: "Keyword Extraction" description: "This page describes the method to use the keyword extraction feature in your Java application with sample code snippets." last_updated: "2026-03-18T07:41:08.747Z" source: "https://docs.catalyst.zoho.com/en/sdk/java/v1/zia-services/text-analytics/keyword-extraction/" service: "Zia Services" related: - Keyword Extraction - API (/en/api/code-reference/zia-services/text-analytics/keyword-extraction/#KeywordExtraction) -------------------------------------------------------------------------------- # Keyword Extraction {{%link href="/en/zia-services/help/text-analytics/key-concepts/#keyword-extraction" %}}Zia Keyword Extraction{{%/link%}} is a part of Text Analytics that processes textual content and extracts the highlights of the text. The extracted terms are grouped into two categories: {{%bold%}}Keywords{{%/bold%}} and {{%bold%}}Keyphrases{{%/bold%}}. These highlights deliver a concise summary of the text and provide an abstraction of the whole text. The response contains an array of the key words, and another array of the key phrases that are extracted from the text. You can pass a block of text as the input of upto {{%bold%}}1500 characters{{%/bold%}} in a single request, as shown below. The text is passed to {{%badge%}}getKeywordExtraction(){{%/badge%}}. The keywords and keyphrases are then fetched as individual lists. #### Sample Code Snippet <br> {{% panel_without_adjustment header="Package Imports" class="language-java line-numbers" %}}import org.json.simple.JSONArray; import com.zc.component.ml.ZCKeywordExtractionData; import com.zc.component.ml.ZCML; import java.io.File; {{% /panel_without_adjustment %}} {{%code class="language-java" scroll="set-scroll" %}}JSONArray textArray = new JSONArray(); textArray.add("Zoho Corporation, is an Indian multinational technology company that makes web-based business tools. It is best known for Zoho Office Suite. The company was founded by Sridhar Vembu and Tony Thomas and has a presence in seven locations with its global headquarters in Chennai, India, and corporate headquarters in Pleasanton, California."); //Input text to be processed List listOfKeywordExtractionData = ZCML.getInstance().getKeywordExtraction(textArray); //Text is passed ZCKeywordExtractionData keywordExtractionData = listOfKeywordExtractionData.get(0); List keywordsList = keywordExtractionData.getKeywords(); //To fetch the keywords List keyphrasesList = keywordExtractionData.getKeyphrases(); //To fetch the keyphrases {{%/code%}} -------------------------------------------------------------------------------- title: "All Text Analytics" description: "This page describes the method to use the text analytics feature in your Java application with sample code snippets." last_updated: "2026-03-18T07:41:08.747Z" source: "https://docs.catalyst.zoho.com/en/sdk/java/v1/zia-services/text-analytics/all-text-analytics/" service: "Zia Services" related: - All Text Analytics - API (/en/api/code-reference/zia-services/text-analytics/all-text-analytics/#AllTextAnalytics) -------------------------------------------------------------------------------- # All Text Analytics {{%link href="/en/zia-services/help/text-analytics/introduction" %}}Text Analytics{{%/link%}} as a whole includes a combination of all three features specified in the previous sections: {{%bold%}}Sentiment Analysis{{%/bold%}}, {{%bold%}}Named Entity Recognition{{%/bold%}}, and {{%bold%}}Keyword Extraction{{%/bold%}}. You can perform all three actions on a specific block of text, and obtain the tone of the text, the categorizations of the entities recognized from it, and key words and phrases that provide a gist of the text. You can pass a block of text as the input of upto {{%bold%}}1500 characters{{%/bold%}} in a single request, as shown below. The text is passed to {{%badge%}}getTextAnalytics(){{%/badge%}}. You can also pass optional keywords to perform Sentiment Analysis on the sentences containing only those keywords. The response contains the results of each of the text analytics feature. Refer to each feature page for detailed information on their respective functionalities and responses. #### Sample Code Snippet <br> {{% panel_without_adjustment header="Package Imports" class="language-java line-numbers" %}}import org.json.simple.JSONArray; import com.zc.component.ml.ZCKeywordExtractionData; import com.zc.component.ml.ZCML; import com.zc.component.ml.ZCNERData; import com.zc.component.ml.ZCSentimentAnalysisData; import com.zc.component.ml.ZCTextAnalyticsData; import java.io.File; {{% /panel_without_adjustment %}} {{%code class="language-java" scroll="set-scroll" %}}JSONArray textArray = new JSONArray(); textArray.add("Zoho Corporation, is an Indian multinational technology company that makes web-based business tools. It is best known for Zoho Office Suite. The company was founded by Sridhar Vembu and Tony Thomas and has a presence in seven locations with its global headquarters in Chennai, India, and corporate headquarters in Pleasanton,California."); //Input text to be processed JSONArray keywords = new JSONArray(); keywords.add("Zoho"); //Optional keywords for Sentiment Analysis List listOfTextAnalyticsData = ZCML.getInstance().getTextAnalytics(textArray,keywords); //Text and keywords are passed ZCTextAnalyticsData textAnalyticsData = listOfTextAnalyticsData.get(0); ZCKeywordExtractionData keywordExtractionData = textAnalyticsData.getKeywordExtractionData(); //To perform Keyword Extraction on the text Z CNERData nerData = textAnalyticsData.getNERData(); //To perform NER on the text ZCSentimentAnalysisData sentimentAnalysisData = textAnalyticsData.getSentimentAnalysisData(); //To perform Sentiment Analysis on the text {{%/code%}} --- ## SDK — Node JS — Text Analytics -------------------------------------------------------------------------------- title: "Sentiment analysis" description: "This page describes the method to use the sentiment analysis feature in your NodeJS application with sample code snippets." last_updated: "2026-03-18T07:41:08.748Z" source: "https://docs.catalyst.zoho.com/en/sdk/nodejs/v2/zia-services/text-analytics/sentiment-analysis/" service: "Zia Services" related: - Sentiment Analysis - API (/en/api/code-reference/zia-services/text-analytics/sentiment-analysis/#SentimentAnalysis) - Text Analytics (/en/zia-services/help/text-analytics/introduction) -------------------------------------------------------------------------------- # Sentiment Analysis {{%link href="/en/zia-services/help/text-analytics/introduction" %}}Zia Sentiment Analysis{{%/link%}} is a part of Text Analytics that processes textual content to recognize the tone of the message, and the sentiments conveyed through it. It analyses each sentence in the text to determine if its tone is {{%bold%}}positive{{%/bold%}}, {{%bold%}}negative{{%/bold%}}, or {{%bold%}}neutral{{%/bold%}}. It then determines the tone of the overall text as one of the these three sentiments, based on the sentiments recognized in each sentence. The response also returns the confidence scores for the sentiments detected in each sentence, to showcase the accuracy of the analysis. The confidence score lies in the range of 0 to 1\. A confidence score for the overall analysis is also returned. You can pass a block of text as the input of upto {{%bold%}}1500 characters{{%/bold%}} in a single request. The input text is passed to {{%badge%}}getSentimentAnalysis(){{%/badge%}}. You can also pass optional keywords for the text. This will enable Sentiment Analysis to process only those sentences that contain these keywords, and determine their sentiments. Other sentences will be ignored. The {{%badge%}}zia{{%/badge%}} reference used below is defined in the {{%link href="/en/sdk/nodejs/v2/zia-services/get-component-instance" %}}component instance page{{%/link%}}. {{%code class="language-javascript" scroll="set-scroll" %}}zia.getSentimentAnalysis(['Zoho Corporation, is an Indian multinational technology company that makes web-based business tools. It is best known for Zoho Office Suite. The company was founded by Sridhar Vembu and Tony Thomas and has a presence in seven locations with its global headquarters in Chennai, India, and corporate headquarters in Pleasanton, California.'], ['Zoho']) //Pass the text and the optional keyword to process .then((result) => console.log(result)) .catch((error) => console.log(error.toString()));{{% /code%}} A sample response that you will receive is shown below. The response is the same for both versions of Node.js. #### Node js {{%code class="language-json line-numbers" scroll="set-scroll" %}}"sentiment_prediction": [ { "document_sentiment": "Neutral", "sentence_analytics": [ { "sentence": "Zoho Corporation, is an Indian multinational technology company that makes web-based business tools.", "sentiment": "Neutral", "confidence_scores": { "negative": 0, "neutral": 1, "positive": 0 } }, { "sentence": "It is best known for Zoho Office Suite.", "sentiment": "Neutral", "confidence_scores": { "negative": 0, "neutral": 0.6, "positive": 0.4 } }, { "sentence": "The company was founded by Sridhar Vembu and Tony Thomas and has a presence in seven locations with its global headquarters in Chennai, India, and corporate headquarters in Pleasanton, California.", "sentiment": "Neutral", "confidence_scores": { "negative": 0, "neutral": 0.88, "positive": 0.12 } } ], "overall_score": 0.83 } ]{{% /code%}} -------------------------------------------------------------------------------- title: "Named Entity Recognition" description: "This page describes the method to use the named entity recognition feature in your Java application with sample code snippets." last_updated: "2026-03-18T07:41:08.748Z" source: "https://docs.catalyst.zoho.com/en/sdk/nodejs/v2/zia-services/text-analytics/named-entity-recognition/" service: "Zia Services" related: - Text Analytics (/en/zia-services/help/text-analytics/introduction) - Named Entity Recognition - API (/en/api/code-reference/zia-services/text-analytics/named-entity-recognition/#NamedEntityRecognition) -------------------------------------------------------------------------------- # Named Entity Recognition {{%link href="/en/zia-services/help/text-analytics/introduction" %}}Zia Named Entity Recognition{{%/link%}} is a part of Text Analytics that processes textual content to extract key words and group them into various categorizes. For example, it can determine a word in a text to be the name of an organization, the name of a person, or a date, and add it to the appropriate category accordingly. Refer {{%link href="/en/zia-services/help/text-analytics/introduction" %}}here{{%/link%}} for a list of all categories recognized by NER. The response returns an array of all the entities recognized in the text, and a tag indicating the category they belong to. It will also contain the confidence score of each categorization in percentage values, to showcase its accuracy. The response also returns the location of the entity in the text through its start index and end index. You can pass a block of text as the input of upto {{%bold%}}1500 characters{{%/bold%}} in a single request, as shown below. The text is passed to {{%badge%}}getNERPrediction(){{%/badge%}}. The {{%badge%}}zia{{%/badge%}} reference used below is defined in the {{%link href="/en/sdk/nodejs/v2/zia-services/get-component-instance" %}}component instance page{{%/link%}}. {{%code class="language-javascript" scroll="set-scroll" %}}zia.getNERPrediction(['Zoho Corporation, is an Indian multinational technology company that makes web-based business tools. It is best known for Zoho Office Suite. The company was founded by Sridhar Vembu and Tony Thomas and has a presence in seven locations with its global headquarters in Chennai, India, and corporate headquarters in Pleasanton, California.']) //Pass the input text .then((result) => console.log(result)) .catch((error) => console.log(error.toString()));{{% /code%}} A sample response that you will receive is shown below. The response is the same for both versions of Node.js. #### Node js {{%code class="language-json line-numbers" scroll="set-scroll" %}}"ner": { "general_entities": [ { "start_index": 0, "confidence_score": 98, "end_index": 16, "ner_tag": "Organization", "token": "Zoho Corporation" }, { "start_index": 24, "confidence_score": 99, "end_index": 30, "ner_tag": "Miscellaneous", "token": "Indian" }, { "start_index": 122, "confidence_score": 90, "end_index": 139, "ner_tag": "Miscellaneous", "token": "Zoho Office Suite" }, { "start_index": 168, "confidence_score": 99, "end_index": 181, "ner_tag": "Person", "token": "Sridhar Vembu" }, { "start_index": 186, "confidence_score": 96, "end_index": 197, "ner_tag": "Person", "token": "Tony Thomas" }, { "start_index": 220, "confidence_score": 100, "end_index": 225, "ner_tag": "Number", "token": "seven" }, { "start_index": 268, "confidence_score": 99, "end_index": 275, "ner_tag": "City", "token": "Chennai" }, { "start_index": 277, "confidence_score": 98, "end_index": 282, "ner_tag": "Country", "token": "India" }, { "start_index": 314, "confidence_score": 99, "end_index": 324, "ner_tag": "City", "token": "Pleasanton" }, { "start_index": 326, "confidence_score": 91, "end_index": 336, "ner_tag": "State", "token": "California" } ] }{{% /code%}} -------------------------------------------------------------------------------- title: "Keyword extraction" description: "This page describes the method to use the keyword extraction feature in your NodeJS application with sample code snippets." last_updated: "2026-03-18T07:41:08.748Z" source: "https://docs.catalyst.zoho.com/en/sdk/nodejs/v2/zia-services/text-analytics/keyword-extraction/" service: "Zia Services" related: - Text Analytics (/en/zia-services/help/text-analytics/introduction) - Keyword Extraction - API (/en/api/code-reference/zia-services/text-analytics/keyword-extraction/#KeywordExtraction) -------------------------------------------------------------------------------- # Keyword Extraction {{%link href="/en/zia-services/help/text-analytics/introduction" %}}Zia Keyword Extraction{{%/link%}} is a part of Text Analytics that processes textual content and extracts the highlights of the text. The extracted terms are grouped into two categories: {{%bold%}}{{%badge%}}Keywords{{%/badge%}}{{%/bold%}} and {{%bold%}}{{%badge%}} Keyphrases{{%/badge%}}{{%/bold%}}. These highlights deliver a concise summary of the text and provide an abstraction of the whole text. The response contains an array of the key words, and another array of the key phrases that are extracted from the text. You can pass a block of text as the input of upto {{%bold%}}1500 characters{{%/bold%}} in a single request, as shown below. The text is passed to {{%badge%}}getKeywordExtraction(){{%/badge%}}. The keywords and keyphrases are then fetched as individual lists. The {{%badge%}}zia{{%/badge%}} reference used below is defined in the {{%link href="/en/sdk/nodejs/v2/zia-services/get-component-instance" %}}component instance page{{%/link%}}. {{%code class="language-javascript" scroll="set-scroll" %}}zia.getKeywordExtraction(['Zoho Corporation, is an Indian multinational technology company that makes web-based business tools. It is best known for Zoho Office Suite. The company was founded by Sridhar Vembu and Tony Thomas and has a presence in seven locations with its global headquarters in Chennai, India, and corporate headquarters in Pleasanton, California.']) //Pass the input text to be processed .then((result) => console.log(result)) .catch((error) => console.log(error.toString()));{{% /code%}} A sample response that you will receive is shown below. The response is the same for both versions of Node.js. #### Node js {{%code class="language-json line-numbers" scroll="set-scroll" %}}"keyword_extractor": { "keywords": [ "Chennai", "company", "India", "Indian", "presence", "locations", "Pleasanton", "California" ], "keyphrases": [ "corporate headquarters", "multinational technology company", "Zoho Corporation", "Zoho Office Suite", "global headquarters", "Tony Thomas", "web-based business tools", "Sridhar Vembu" ] }{{% /code%}} -------------------------------------------------------------------------------- title: "All text analytics" description: "This page describes the method to use the text analytics feature in your NodeJS application with sample code snippets." last_updated: "2026-03-18T07:41:08.748Z" source: "https://docs.catalyst.zoho.com/en/sdk/nodejs/v2/zia-services/text-analytics/all-text-analytics/" service: "Zia Services" related: - All Text Analytics - API (/en/api/code-reference/zia-services/text-analytics/all-text-analytics/#AllTextAnalytics) - Text Analytics (/en/zia-services/help/text-analytics/introduction) -------------------------------------------------------------------------------- # All Text Analytics {{%link href="/en/zia-services/help/text-analytics/introduction" %}}Text Analytics{{%/link%}} as a whole includes a combination of all three features specified in the previous sections: {{%bold%}}Sentiment Analysis{{%/bold%}}, {{%bold%}}Named Entity Recognition{{%/bold%}}, and {{%bold%}}Keyword Extraction{{%/bold%}}. You can perform all three actions on a specific block of text, and obtain the tone of the text, the categorizations of the entities recognized from it, and key words and phrases that provide a gist of the text. You can pass a block of text as the input of upto {{%bold%}}1500 characters{{%/bold%}} in a single request, as shown below. The text is passed to {{%badge%}}getTextAnalytics(){{%/badge%}}. You can also pass optional keywords to perform Sentiment Analysis on the sentences containing only those keywords. The response contains the results of each of the text analytics feature. Refer to each feature page for detailed information on their respective functionalities and responses. The {{%badge%}}zia{{%/badge%}} reference used below is defined in the {{%link href="/en/sdk/nodejs/v2/zia-services/get-component-instance" %}}component instance page{{%/link%}}. {{%code class="language-javascript" scroll="set-scroll" %}}zia.getTextAnalytics(['Zoho Corporation, is an Indian multinational technology company that makes web-based business tools. It is best known for Zoho Office Suite. The company was founded by Sridhar Vembu and Tony Thomas and has a presence in seven locations with its global headquarters in Chennai, India, and corporate headquarters in Pleasanton, California.'], ['Zoho']) //Pass the input text for all Text Analytics, and the keywords for Sentiment Analysis .then((result) => console.log(result)) .catch((error) => console.log(error));{{% /code%}} A sample response that you will receive is shown below. The response is the same for both versions of Node.js. {{%code class="language-json line-numbers" scroll="set-scroll" %}}[ { "keyword_extractor": { "keywords": [ "Chennai", "company", "India", "Indian", "presence", "locations", "Pleasanton", "California" ], "keyphrases": [ "corporate headquarters", "multinational technology company", "Zoho Corporation", "Zoho Office Suite", "global headquarters", "Tony Thomas", "web-based business tools", "Sridhar Vembu" ] }, "sentiment_prediction": [ { "document_sentiment": "Neutral", "sentence_analytics": [ { "sentence": "Zoho Corporation, is an Indian multinational technology company that makes web-based business tools.", "sentiment": "Neutral", "confidence_scores": { "negative": 0, "neutral": 1, "positive": 0 } }, { "sentence": "It is best known for Zoho Office Suite.", "sentiment": "Neutral", "confidence_scores": { "negative": 0, "neutral": 0.6, "positive": 0.4 } }, { "sentence": "The company was founded by Sridhar Vembu and Tony Thomas and has a presence in seven locations with its global headquarters in Chennai, India, and corporate headquarters in Pleasanton, California.", "sentiment": "Neutral", "confidence_scores": { "negative": 0, "neutral": 0.88, "positive": 0.12 } } ], "overall_score": 0.83 } ], "ner": { "general_entities": [ { "start_index": 0, "confidence_score": 98, "end_index": 16, "ner_tag": "Organization", "token": "Zoho Corporation" }, { "start_index": 24, "confidence_score": 99, "end_index": 30, "ner_tag": "Miscellaneous", "token": "Indian" }, { "start_index": 122, "confidence_score": 90, "end_index": 139, "ner_tag": "Miscellaneous", "token": "Zoho Office Suite" }, { "start_index": 168, "confidence_score": 99, "end_index": 181, "ner_tag": "Person", "token": "Sridhar Vembu" }, { "start_index": 186, "confidence_score": 96, "end_index": 197, "ner_tag": "Person", "token": "Tony Thomas" }, { "start_index": 220, "confidence_score": 100, "end_index": 225, "ner_tag": "Number", "token": "seven" }, { "start_index": 268, "confidence_score": 99, "end_index": 275, "ner_tag": "City", "token": "Chennai" }, { "start_index": 277, "confidence_score": 98, "end_index": 282, "ner_tag": "Country", "token": "India" }, { "start_index": 314, "confidence_score": 99, "end_index": 324, "ner_tag": "City", "token": "Pleasanton" }, { "start_index": 326, "confidence_score": 91, "end_index": 336, "ner_tag": "State", "token": "California" } ] } }{{% /code%}} --- ## SDK — Python — Text Analytics -------------------------------------------------------------------------------- title: "Sentiment Analysis" description: "This page describes the method to use the sentiment analysis feature in your Python application with sample code snippets." last_updated: "2026-03-18T07:41:08.749Z" source: "https://docs.catalyst.zoho.com/en/sdk/python/v1/zia-services/text-analytics/sentiment-analysis/" service: "Zia Services" related: - Sentiment Analysis - API (/en/api/code-reference/zia-services/text-analytics/sentiment-analysis/#SentimentAnalysis) - Sentiment Analysis Help (/en/zia-services/help/text-analytics/key-concepts/#sentiment-analysis) - SDK Scopes (/en/sdk/python/v1/sdk-scopes) -------------------------------------------------------------------------------- # Sentiment Analysis {{%link href="/en/zia-services/help/text-analytics/key-concepts/#sentiment-analysis" %}}Zia Sentiment Analysis{{%/link%}} is a part of Text Analytics that processes textual content to recognize the tone of the message, and the sentiments conveyed through it. It analyzes each sentence in the text to determine if its tone is {{%bold%}}positive{{%/bold%}}, {{%bold%}}negative{{%/bold%}}, or {{%bold%}}neutral{{%/bold%}}. It then determines the tone of the overall text as one of the these three sentiments, based on the sentiments recognized in each sentence. The response also returns the confidence scores for the sentiments detected in each sentence, to showcase the accuracy of the analysis. The confidence score lies in the range of 0 to 1\. A confidence score for the overall analysis is also returned. You can pass a block of text as the input of upto {{%bold%}}1500 characters{{%/bold%}} in a single request. The input text is passed to {{%badge%}}get_sentiment_analysis(){{%/badge%}}. You can also pass optional keywords for the text. This will enable Sentiment Analysis to process only those sentences that contain these keywords, and determine their sentiments. Other sentences will be ignored. This method takes in a second parameter as an empty list. To know more about the component instance {{%badge%}}zia{{%/badge%}} used below, please refer to {{%link href="/en/sdk/python/v1/zia-services/get-component-instance/" %}}this help section{{%/link%}}. **Parameters Used** <table class="content-table"> <thead> <tr> <th class="w20p">Parameter Name</th> <th class="w20p">Data Type</th> <th class="w60p">Definition</th> </tr> </thead> <tbody> <tr> <td>{{%badge%}}text{{%/badge%}}</td> <td>String</td> <td>A {{%bold%}}Mandatory{{%/bold%}} parameter. Will store the text to be analyzed.</td> </tr> <tr> <td>{{%badge%}}keyword{{%/badge%}}</td> <td>String</td> <td>A {{%bold%}}Optional{{%/bold%}} parameter. Will store the keywords to filter sentences containing them and analyze their sentiments.</td> </tr> </tbody> </table> {{%code class="language-python" scroll="set-scroll" %}}zia = app.zia() result = zia.get_sentiment_analysis( [ "Zoho Corporation, is an Indian multinational technology company that makes web-based business tools. It is best known for Zoho Office Suite. The company was founded by Sridhar Vembu and Tony Thomas and has a presence in seven locations with its global headquarters in Chennai, India, and corporate headquarters in Pleasanton, California.","Zoho"], [], ) {{% /code%}} A sample response is shown below : {{%code class="language-json line-numbers" scroll="set-scroll" %}} { "sentiment_prediction":[ { "document_sentiment":"Neutral", "sentence_analytics":[ { "sentence":"Zoho Corporation, is an Indian multinational technology company that makes web-based business tools.", "sentiment":"Neutral", "confidence_scores":{ "negative":0, "neutral":1, "positive":0 } }, { "sentence":"It is best known for Zoho Office Suite.", "sentiment":"Neutral", "confidence_scores":{ "negative":0, "neutral":0.6, "positive":0.4 } } ], "overall_score":0.83 } ] } {{% /code%}} {{%note%}}{{%bold%}}Info :{{%/bold%}} Refer to the {{%link href="/en/sdk/python/v1/sdk-scopes" %}}SDK Scopes table{{%/link%}} to determine the required permission level for performing the above operation.{{%/note%}} -------------------------------------------------------------------------------- title: "Named Entity Recognition" description: "This page describes the method to use the named entity recognition feature in your Python application with sample code snippets." last_updated: "2026-03-18T07:41:08.749Z" source: "https://docs.catalyst.zoho.com/en/sdk/python/v1/zia-services/text-analytics/named-entity-recognition/" service: "Zia Services" related: - Named Entity Recognition Help (/en/zia-services/help/text-analytics/key-concepts/#named-entity-recognition) - Named Entity Recognition - API (/en/api/code-reference/zia-services/text-analytics/named-entity-recognition/#NamedEntityRecognition) - SDK Scopes (/en/sdk/python/v1/sdk-scopes) -------------------------------------------------------------------------------- # Named Entity Recognition {{%link href="/en/zia-services/help/text-analytics/key-concepts/#named-entity-recognition" %}}Zia Named Entity Recognition{{%/link%}} is a part of Text Analytics that processes textual content to extract key words and group them into various categorizes. For example, it can determine a word in a text to be the name of an organization, the name of a person, or a date, and add it to the appropriate category accordingly. Refer {{%link href="/en/zia-services/help/text-analytics/key-concepts/#named-entity-recognition" %}}here{{%/link%}} for a list of all categories recognized by NER. The response returns an array of all the entities recognized in the text, and a tag indicating the category they belong to. It will also contain the confidence score of each categorization in percentage values, to showcase its accuracy. The response also returns the location of the entity in the text through its start index and end index. You can pass a block of text as the input of upto {{%bold%}}1500 characters{{%/bold%}} in a single request, as shown below. The text is passed to {{%badge%}}get_NER_prediction(){{%/badge%}}. To know more about the component instance {{%badge%}}zia{{%/badge%}} used below, please refer to {{%link href="/en/sdk/python/v1/zia-services/get-component-instance/" %}}this help section{{%/link%}}. **Parameters Used** <table class="content-table"> <thead> <tr> <th class="w20p">Parameter Name</th> <th class="w20p">Data Type</th> <th class="w60p">Definition</th> </tr> </thead> <tbody> <tr> <td>{{%badge%}}text{{%/badge%}}</td> <td>String</td> <td>A {{%bold%}}Mandatory{{%/bold%}} parameter. Will store the text in which entities has to be recognized.</td> </tr> </tbody> </table> {{%code class="language-python" scroll="set-scroll" %}}zia = app.zia() result = zia.get_NER_prediction( [ "Zoho Corporation, is an Indian multinational technology company that makes web-based business tools. It is best known for Zoho Office Suite. The company was founded by Sridhar Vembu and Tony Thomas and has a presence in seven locations with its global headquarters in Chennai, India, and corporate headquarters in Pleasanton, California." ] ) {{% /code%}} The sample response is shown below : {{%code class="language-json line-numbers" scroll="set-scroll" %}} { "ner":{ "general_entities":[ { "start_index":0, "confidence_score":98, "end_index":16, "ner_tag":"Organization", "token":"Zoho Corporation" }, { "start_index":24, "confidence_score":99, "end_index":30, "ner_tag":"Miscellaneous", "token":"Indian" }, { "start_index":122, "confidence_score":90, "end_index":139, "ner_tag":"Miscellaneous", "token":"Zoho Office Suite" }, { "start_index":168, "confidence_score":99, "end_index":181, "ner_tag":"Person", "token":"Sridhar Vembu" }, { "start_index":186, "confidence_score":96, "end_index":197, "ner_tag":"Person", "token":"Tony Thomas" }, { "start_index":220, "confidence_score":100, "end_index":225, "ner_tag":"Number", "token":"seven" }, { "start_index":268, "confidence_score":99, "end_index":275, "ner_tag":"City", "token":"Chennai" }, { "start_index":277, "confidence_score":98, "end_index":282, "ner_tag":"Country", "token":"India" }, { "start_index":314, "confidence_score":99, "end_index":324, "ner_tag":"City", "token":"Pleasanton" }, { "start_index":326, "confidence_score":91, "end_index":336, "ner_tag":"State", "token":"California" } ] } } {{% /code%}} {{%note%}}{{%bold%}}Info :{{%/bold%}} Refer to the {{%link href="/en/sdk/python/v1/sdk-scopes" %}}SDK Scopes table{{%/link%}} to determine the required permission level for performing the above operation.{{%/note%}} -------------------------------------------------------------------------------- title: "Keyword Extraction" description: "This page describes the method to use the keyword extraction feature in your Python application with sample code snippets." last_updated: "2026-03-18T07:41:08.749Z" source: "https://docs.catalyst.zoho.com/en/sdk/python/v1/zia-services/text-analytics/keyword-extraction/" service: "Zia Services" related: - Keyword Extraction Help (/en/zia-services/help/text-analytics/key-concepts/#keyword-extraction) - Keyword Extraction - API (/en/api/code-reference/zia-services/text-analytics/keyword-extraction/#KeywordExtraction) - SDK Scopes (/en/sdk/python/v1/sdk-scopes) -------------------------------------------------------------------------------- # Keyword Extraction {{%link href="/en/zia-services/help/text-analytics/key-concepts/#keyword-extraction" %}}Zia Keyword Extraction{{%/link%}} is a part of Text Analytics that processes textual content and extracts the highlights of the text. The extracted terms are grouped into two categories: {{%bold%}}{{%badge%}}Keywords{{%/badge%}}{{%/bold%}} and {{%bold%}}{{%badge%}} Keyphrases{{%/badge%}}{{%/bold%}}. These highlights deliver a concise summary of the text and provide an abstraction of the whole text. The response contains an array of the key words, and another array of the key phrases that are extracted from the text. You can pass a block of text as the input of upto {{%bold%}}1500 characters{{%/bold%}} in a single request, as shown below. The text is passed to {{%badge%}}get_keyword_extraction(){{%/badge%}}. The keywords and keyphrases are then fetched as individual lists. To know more about the component instance {{%badge%}}zia{{%/badge%}} used below, please refer to {{%link href="/en/sdk/python/v1/zia-services/get-component-instance/" %}}this help section{{%/link%}}. **Parameters Used** <table class="content-table"> <thead> <tr> <th class="w20p">Parameter Name</th> <th class="w20p">Data Type</th> <th class="w60p">Definition</th> </tr> </thead> <tbody> <tr> <td>{{%badge%}}text{{%/badge%}}</td> <td>String</td> <td>A {{%bold%}}Mandatory{{%/bold%}} parameter. Will store the text from which keywords has to be extracted.</td> </tr> </tbody> </table> {{%code class="language-python" scroll="set-scroll" %}}zia = app.zia() result = zia.get_keyword_extraction( [ "Zoho Corporation, is an Indian multinational technology company that makes web-based business tools. It is best known for Zoho Office Suite. The company was founded by Sridhar Vembu and Tony Thomas and has a presence in seven locations with its global headquarters in Chennai, India, and corporate headquarters in Pleasanton, California." ] ) {{% /code%}} The sample response is shown below : {{%code class="language-json line-numbers" scroll="set-scroll" %}} { "keyword_extractor":{ "keywords":[ "Chennai", "company", "India", "Indian", "presence", "locations", "Pleasanton", "California" ], "keyphrases":[ "corporate headquarters", "multinational technology company", "Zoho Corporation", "Zoho Office Suite", "global headquarters", "Tony Thomas", "web-based business tools", "Sridhar Vembu" ] } } {{% /code%}} {{%note%}}{{%bold%}}Info :{{%/bold%}} Refer to the {{%link href="/en/sdk/python/v1/sdk-scopes" %}}SDK Scopes table{{%/link%}} to determine the required permission level for performing the above operation.{{%/note%}} -------------------------------------------------------------------------------- title: "All Text Analytics" description: "This page describes the method to use the text analytics feature in your Python application with sample code snippets." last_updated: "2026-03-18T07:41:08.749Z" source: "https://docs.catalyst.zoho.com/en/sdk/python/v1/zia-services/text-analytics/all-text-analytics/" service: "Zia Services" related: - All Text Analytics - API (/en/api/code-reference/zia-services/text-analytics/all-text-analytics/#AllTextAnalytics) - All Text Analytics Help (/en/zia-services/help/text-analytics/introduction) - SDK Scopes (/en/sdk/python/v1/sdk-scopes) -------------------------------------------------------------------------------- # All Text Analytics {{%link href="/en/zia-services/help/text-analytics/introduction" %}}Text Analytics{{%/link%}} as a whole includes a combination of all three features specified in the previous sections: {{%bold%}}Sentiment Analysis{{%/bold%}}, {{%bold%}}Named Entity Recognition{{%/bold%}}, and {{%bold%}}Keyword Extraction{{%/bold%}}. You can perform all three actions on a specific block of text, and obtain the tone of the text, the categorizations of the entities recognized from it, and key words and phrases that provide a gist of the text. You can pass a block of text as the input of upto {{%bold%}}1500 characters{{%/bold%}} in a single request, as shown below. The text is passed to {{%badge%}}get_text_analytics(){{%/badge%}}. You can also pass optional keywords to perform Sentiment Analysis on the sentences containing only those keywords. This method takes in a second parameter as an empty list. The response contains the results of each of the text analytics feature. Refer to each feature page for detailed information on their respective functionalities and responses. To know more about the component instance {{%badge%}}zia{{%/badge%}} used below, please refer to {{%link href="/en/sdk/python/v1/zia-services/get-component-instance/" %}}this help section{{%/link%}}. **Parameters Used** <table class="content-table"> <thead> <tr> <th class="w20p">Parameter Name</th> <th class="w20p">Data Type</th> <th class="w60p">Definition</th> </tr> </thead> <tbody> <tr> <td>{{%badge%}}text{{%/badge%}}</td> <td>String</td> <td>A {{%bold%}}Mandatory{{%/bold%}} parameter. Will store the text to be analyzed.</td> </tr> </tbody> </table> {{%code class="language-python" scroll="set-scroll" %}}zia = app.zia() result = zia.get_text_analytics( [ "Zoho Corporation, is an Indian multinational technology company that makes web-based business tools. It is best known for Zoho Office Suite. The company was founded by Sridhar Vembu and Tony Thomas and has a presence in seven locations with its global headquarters in Chennai, India, and corporate headquarters in Pleasanton, California.","Zoho"], [] ) {{% /code%}} A sample response is shown below : {{%code class="language-json line-numbers" scroll="set-scroll" %}} [ { "keyword_extractor":{ "keywords":[ "Chennai", "company", "India", "Indian", "presence", "locations", "Pleasanton", "California" ], "keyphrases":[ "corporate headquarters", "multinational technology company", "Zoho Corporation", "Zoho Office Suite", "global headquarters", "Tony Thomas", "web-based business tools", "Sridhar Vembu" ] }, "sentiment_prediction":[ { "document_sentiment":"Neutral", "sentence_analytics":[ { "sentence":"Zoho Corporation, is an Indian multinational technology company that makes web-based business tools.", "sentiment":"Neutral", "confidence_scores":{ "negative":0, "neutral":1, "positive":0 } }, { "sentence":"It is best known for Zoho Office Suite.", "sentiment":"Neutral", "confidence_scores":{ "negative":0, "neutral":0.6, "positive":0.4 } }, { "sentence":"The company was founded by Sridhar Vembu and Tony Thomas and has a presence in seven locations with its global headquarters in Chennai, India, and corporate headquarters in Pleasanton, California.", "sentiment":"Neutral", "confidence_scores":{ "negative":0, "neutral":0.88, "positive":0.12 } } ], "overall_score":0.83 } ], "ner":{ "general_entities":[ { "start_index":0, "confidence_score":98, "end_index":16, "ner_tag":"Organization", "token":"Zoho Corporation" }, { "start_index":24, "confidence_score":99, "end_index":30, "ner_tag":"Miscellaneous", "token":"Indian" }, { "start_index":122, "confidence_score":90, "end_index":139, "ner_tag":"Miscellaneous", "token":"Zoho Office Suite" }, { "start_index":168, "confidence_score":99, "end_index":181, "ner_tag":"Person", "token":"Sridhar Vembu" }, { "start_index":186, "confidence_score":96, "end_index":197, "ner_tag":"Person", "token":"Tony Thomas" }, { "start_index":220, "confidence_score":100, "end_index":225, "ner_tag":"Number", "token":"seven" }, { "start_index":268, "confidence_score":99, "end_index":275, "ner_tag":"City", "token":"Chennai" }, { "start_index":277, "confidence_score":98, "end_index":282, "ner_tag":"Country", "token":"India" }, { "start_index":314, "confidence_score":99, "end_index":324, "ner_tag":"City", "token":"Pleasanton" }, { "start_index":326, "confidence_score":91, "end_index":336, "ner_tag":"State", "token":"California" } ] } } ] {{% /code%}} {{%note%}}{{%bold%}}Info :{{%/bold%}} Refer to the {{%link href="/en/sdk/python/v1/sdk-scopes" %}}SDK Scopes table{{%/link%}} to determine the required permission level for performing the above operation.{{%/note%}}