# Analyze text

The method analyzes the input and detects problematic content, sentiment snippets, entities, topics, phrase structure, parts of speech, stopwords, and more.

Endpoint: POST /parse
Version: 4.8.0.0
Security: Tisane-API-Key

## Security:

  - `Tisane-API-Key` (unknown)
    apiKey in header Ocp-Apim-Subscription-Key

## Header parameters:

  - `Content-Type` (string)

## Request fields (application/json):

  - `language` (string, required)

  - `content` (string, required)

  - `settings` (object)

## Request examples:

  - `Hello Tisane` (unknown)

  - `Abuse detection` (unknown)

  - `Extract topics (native standard)` (unknown)

  - `Extract topics (IAB standard)` (unknown)

  - `Adverse media monitoring in fintech` (unknown)

  - `Parse alias w/ sentence structure` (unknown)

  - `Parse hashtag and output words` (unknown)

## Response 200:

  - `200` (unknown)
    Successful response

## Response 200 fields (application/json):

  - `text` (string, required)
    Input text.

  - `language` (string)
    Language code, when the language identification is used.

  - `memory` (object)

  - `memory.flags` (array)

  - `memory.flags.type` (string)
    Feature type. If unspecified: Grammar
    Enum: "Grammar", "Semantics", "Style"

  - `memory.flags.index` (integer, required)
    Feature index (within its type)

  - `memory.flags.value` (string, required)
    Feature value ID

  - `memory.antecedents` (array)
    Previously mentioned elements to be used for coreference resolution.

  - `memory.antecedents.family` (integer)
    The family ID of the antecedent.

  - `memory.assign` (array)
    Conditional assignments to be executed when parsing.

  - `memory.assign.if` (object, required)
    Conditions to match (all conditions must match).

  - `memory.assign.if.family` (integer)
    A family ID of the target lexeme.

  - `memory.assign.if.hypernym` (integer)
    A family ID of a hypernym of the target lexeme.

  - `memory.assign.if.regex` (string)
    A regular expression to match.

  - `memory.assign.then` (object, required)
    Attribute values to assign.

  - `memory.assign.then.family` (integer)
    A family ID to assign.

  - `memory.assign.then.hypernym` (integer)
    A family ID of a hypernym to assign.

  - `memory.assign.then.attribution` (boolean)
    Marks the target as attribution.

  - `topics` (array)

  - `topics.topic` (string, required)

  - `topics.coverage` (number, required)

  - `abuse` (array)

  - `abuse.offset` (integer, required)
    0-based location in the sentence

  - `abuse.length` (integer, required)
    Length of the fragment

  - `abuse.sentence_index` (integer, required)
    Index of the sentence where the fragment is located

  - `abuse.type` (string, required)
    Type of the problematic content
    Enum: "personal_attack", "bigotry", "external_contact", "profanity", "sexual_advances", "criminal_activity", "adult_only", "mental_issues", "contentious", "spam", "social_hierarchy", "no_meaningful_content", "generic"

  - `abuse.severity` (string, required)
    How severe the issue is
    Enum: "low", "medium", "high", "extreme"

  - `abuse.tags` (array)

  - `abuse.text` (string)
    The fragment itself (`snippets` must be set to `true`)

  - `abuse.explanation` (string)
    Human-readable explanation of the rationale for flagging

  - `sentence_list` (array)

  - `sentence_list.offset` (integer, required)
    An offset where the sentence starts.

  - `sentence_list.text` (string, required)
    The sentence itself.

  - `sentence_list.words` (array, required)
    Tokenized array of lexical units/lexical chunks (not necessarily by white space or punctuation). Must have `words` set to `true` to appear.

  - `sentence_list.words.offset` (integer, required)
    The offset at which the lexical chunk starts.

  - `sentence_list.words.length` (integer, required)
    The length of the lexical chunk.

  - `sentence_list.words.type` (string, required)
    The type of the lexical chunk.
    Enum: "word", "numeral", "punctuation"

  - `sentence_list.words.text` (string, required)
    The lexical chunk string.

  - `sentence_list.words.stopword` (boolean)
    Whether it's a stopword.

  - `sentence_list.words.role` (string)
    A semantic role of the word, if assigned.
    Enum: "agent", "patient", "complement", "circumstance", "beneficiary", "verb", "surname", "list_item", "given_name", "social_role", "title", "street_name", "street_type", "nickname", "country", "settlement", "state", "zipcode"

  - `sentence_list.words.description` (string)
    Description of the disambiguated sense in the current context (always in English).

  - `sentence_list.words.definition` (string)
    Dictionary definition of the disambiguated sense in the current context (always in English).

  - `sentence_list.words.wikidata` (string)
    A Wikidata ID of the current word-sense, if exists.

  - `sentence_list.words.lexeme` (integer)
    A unique lexeme identifier.

  - `sentence_list.words.family` (integer)
    A family identifier.

  - `sentence_list.parse_tree` (object, required)
    Hierarchically arranged graph of phrases detected in the sentence. Must have `parses` set to `true` to appear.

  - `sentence_list.parse_tree.id` (integer, required)
    Internal runtime identifier of the sentence parse interpretation.

  - `sentence_list.parse_tree.phrases` (array, required)
    The graph of phrases, with the root phrases at the top level.

  - `sentence_list.parse_tree.phrases.type` (string, required)
    The type of the phrase (NP/VP/ADJP/ADVP/S).

  - `sentence_list.parse_tree.phrases.family` (integer, required)
    The family ID of the phrase.

  - `sentence_list.parse_tree.phrases.offset` (integer, required)
    The offset where the phrase starts.

  - `sentence_list.parse_tree.phrases.length` (integer, required)
    The length of the phrase string.

  - `sentence_list.parse_tree.phrases.text` (string, required)
    The text of the phrase in which members delimited with vertical bars and inner phrases are encapsulated in brackets. For example, *"I|(love|Lucy)"*.

  - `sentence_list.parse_tree.phrases.role` (string)
    Semantic role of the phrase in the sentence.

  - `sentence_list.parse_tree.phrases.children` (array)

  - `sentence_list.corrected_text` (string)
    Sentence text if corrected by the built-in spellchecker.

  - `entities_summary` (array)

  - `entities_summary.type` (any, required)
    Type or types of the entity.

  - `entities_summary.name` (string, required)
    Standard name of the entity.

  - `entities_summary.subtypes` (array)
    Sub-types of the entity.

  - `entities_summary.subtype` (string)
    Main sub-type of the entity.

  - `entities_summary.wikidata` (string)
    Wikidata ID, when exists.

  - `entities_summary.relations` (array)
    Entity relations with other detected entities.

  - `entities_summary.relations.to` (string, required)
    The entity connected to.

  - `entities_summary.relations.links` (array)
    How the entities are connected.

  - `entities_summary.mentions` (array, required)
    Mentions of the entity found in the input text.

  - `entities_summary.mentions.offset` (integer, required)
    0-based location in the sentence

  - `entities_summary.mentions.length` (integer, required)
    Length of the fragment

  - `entities_summary.mentions.sentence_index` (integer, required)
    Index of the sentence where the fragment is located

  - `entities_summary.mentions.text` (string)
    The fragment itself (`snippets` must be set to `true`)

  - `sentiment_expressions` (array)

  - `sentiment_expressions.polarity` (string, required)
    The sentiment polarity
    Enum: "positive", "negative", "mixed", "neutral"

  - `sentiment_expressions.offset` (integer, required)
    0-based location in the sentence

  - `sentiment_expressions.length` (integer, required)
    Length of the fragment

  - `sentiment_expressions.sentence_index` (integer, required)
    Index of the sentence where the fragment is located

  - `sentiment_expressions.targets` (array)
    Targets of aspects (for aspect-based sentiment analysis).

  - `sentiment_expressions.reasons` (array)
    Reason tags (for aspect-based sentiment analysis).

  - `sentiment_expressions.text` (string)
    The fragment itself (`snippets` must be set to `true`)

  - `sentiment_expressions.explanation` (string)
    Human-readable explanation of the rationale for flagging

## Response 400:

  - `400` (unknown)
    Bad request - invalid JSON or language code.

## Response 401:

  - `401` (unknown)
    Unauthorized - invalid API key or quota exceeded.

## Response 500:

  - `500` (unknown)
    Internal server error

## Response 200 examples:

  - `Hello Tisane` (unknown)

  - `Abuse detection` (unknown)

  - `Extract topics (native standard)` (unknown)

  - `Extract topics (IAB standard)` (unknown)

  - `Adverse media monitoring in fintech` (unknown)

  - `Parse alias w/ sentence structure` (unknown)

  - `Parse hashtag and output words` (unknown)

