Concept Extraction

Extracts the key concepts from the text you submit.

The Concept Extraction API uses statistical methods to extract key concepts from text.

You provide some input text or a document, and the API returns the best terms and phrases. You can use the results as a quick summary of the contents of a document, to highlight key phrases, or to generate links between unstructured information.

Quick Start

The Concept Extraction API accepts input in the form of text, a file, a URL, or a Haven OnDemand reference (created by adding the file by using the Store Object API.

/1/api/[async|sync]/extractconcetps/v1?text= or file= or reference= or url=

The following example finds the key concepts from the wikipedia page about the United Kingdom:


The Concept Extraction API is similar to the Find Related Concepts API. It returns the key concepts for a single document, or some specified text rather than for a set of query results. It uses statistical methods to determine the best terms and phrases.

The response returns a list of the key terms and phrases, and the number of times each term occurs in the input text.

  "concepts": [
      "concept": "United Kingdom",
      "occurrences": 482
      "concept": "Northern Ireland",
      "occurrences": 151
      "concept": "Great Britain",
      "occurrences": 86

You can use the concepts to create a short document summary or an ideas cloud for the document, or to suggest future queries.


This API requires an authentication token to be supplied in the following parameter:

Parameter Description
apikey The API key to use to authenticate the API request.

This API accepts the following parameters:

Name Type Description
binary A file containing the document to process. Multipart POST only.
string A Haven OnDemand reference obtained from either the Expand Container or Store Object API. The corresponding document is passed to the API.
string The text content to process.
string A publicly accessible HTTP URL from which the document can be retrieved.

This API returns a JSON response that is described by the model below. This single model is presented both as an easy to read abstract definition and as the formal JSON schema.

Asynchronous Use

Additional requests are required to get the result if this API is invoked asynchronously.

You can use /1/job/status/<job-id> to get the status of the job, including results if the job is finished.

You can also use /1/job/result/<job-id>, which waits until the job has finished and then returns the result.

This is an abstract definition of the response that describes each of the properties that might be returned.
Concept Extraction Response {
concepts ( array[Concepts] ) A result concept identified in the results set.
Concept Extraction Response:Concepts {
concept ( string ) The text of the identified concept.
occurrences ( number ) The total number of occurrences of this element in the results set.
Model Schema
This is a JSON schema that describes the syntax of the response. See for a complete reference.
    "properties": {
        "concepts": {
            "items": {
                "properties": {
                    "concept": {
                        "type": "string"
                    "occurrences": {
                        "type": "number"
                "required": [
                "type": "object"
            "type": "array"
    "required": [
    "type": "object"
See this API for yourself - select one of our examples below.
United Kingdom
Extract key concepts from United Kingdom Wikipedia page.
Select file Change Remove

Async – Response An error occurred making the API request
Response Code:
Response Body

Making API Request…
Checking result of job

To try this API with your own data and use it in your own applications, you need an API Key. You can create an API Key from your account page - API Keys.

Output Refresh An error occurred making the API request View Input
Rendered RawHtml Response
Result Display
Response Code:
Response Body:

Make this call with curl

Note: The API key used in this call will expire after 24 hours. You can create a persistent API key for use in your application on the Account API Keys page

If you would like to provide us with more information then please use the box below:

We will use your submission to help improve our product.