Introduction

Haven OnDemand is a platform for building cognitive computing solutions using text analysis, speech recognition, image analysis, indexing and search APIs.

Simply put, developers and businesses use APIs to add advanced capabilities such as natural language processing, machine learning, and predictive analytics to their applications.

APIs provide Developers with the means to rapidly integrate new functionality in their applications with a minimal amount of code.

For example, if you wanted to find out what people are saying about your company on social media, you could call the Haven OnDemand sentiment analysis API to analyze the customer messages. If you had to analyze the following message "The restaurant was amazing, but the guest services were terrible".

Calling the Haven OnDemand sentiment analysis API...

You would get the following contextual insights from the results. In this case, each topic is identified and the relating sentiment score determined, as well as an aggregate sentiment score for the entire string or document. The score is a numeric value between -1 and 1, with 0 being neutral. A value close to -1 is negative. A value close to 1 is positive.

Many of the APIs are powered by the HPE IDOL (Intelligent Data Operating Layer) engine, the same one that Gartner puts as a leader for Enterprise Search in their Magic Quadrant.

Early Access

We're providing early access to the APIs at no charge, so you can use the APIs, provide feedback, and help to shape our roadmap. More than 10,000 users are already taking advantage of this program already. Full terms of service including guidance on commercial use can be found here, and we will be sure to let all our users know when we are planning to move to full service and out of early access. Developers are encouraged to get support via our forums, read the documentation, and check out the community contributed tutorials.

Security Overview

Haven OnDemand takes the confidentiality, integrity, and availability of customer information as axiomatic. Customers retain ownership of all information that they upload.

The Haven OnDemand team have included multiple layers of security control throughout the Haven OnDemand platform to protect against a wide range of threats. Learn more about our security policy here.

Exclusive Preview APIs

We're passionate about providing you with the tools needed to expand your ability to tackle the toughest information challenges. That's why we've pledged our unyielding commitment to R&D excellence. We're constantly advancing existing APIs and innovating new Preview APIs to provide you with a diverse set of tools needed to build a new class of apps.

Can't wait to get your hands on the next Haven OnDemand API? As a Haven OnDemand Innovator, you gain exclusive access to our Preview APIs. Be one of the first to experience the latest Haven OnDemand technology without having to wait for feature releases.

Sign up for a free account today for exclusive access.

*Please note that Preview APIs are being continually improved, updated, and enhanced.

Haven OnDemand has the following Preview API groups:

  • Connectors
  • Document Classification
  • Policy
  • Prediction
  • Unstructured Text Indexing
  • User Management
  • Vertica Service

The following additional Preview APIs are available:

  • Create Query Profile
  • Delete Query Profile
  • Update Query Profile
  • Document Categorization
  • OCR Document

For a full list of Preview APIs, go to the APIs page, and click View, then click Preview

Analytics DB

You can use this API to create objects in a database and perform CRUD operations on them.

Audio-Video Analytics

The first and only API in this group enables the speech-to-text transcription from audio and video files. The transcribed text can then be analyzed, indexed and searched using combinations of the other APIs.

Face Detection

The Face Detection API analyzes a media file to find faces. The API returns a list of items, each of which contains the details of a face that was detected in the file.

For each face, the response includes the position of the face, as well as additional information, such as the estimated age range of the face. If the input file is a video, the response also includes the time when the face is most visible, the time at which the face first appears in the video, and the time at which it is no longer visible.

You can use this information to highlight a face, or create a timeline of where faces appear and disappear if the input file is a video.

Image Classification

The Image Classification API classifies images within target media, against a pre-trained classifier. For example, media that contains vehicles might return classes such as Pickup Truck or Motor Scooter.

The classes on which Haven OnDemand was trained are listed in Supported Image Classes.

Note: Image Classification classifies the contents of an entire image into a broad set of conceptual classes. For example, an image of a parking lot, containing mainly cars, but also a few trucks and scooters, might be globally identified as belonging to a Car class with the highest confidence level, followed by a Truck class and a Scooter class with successively lower confidence levels. This differs from Object recognition Object Recognition, which identifies and locates specific objects, such as company logos, within an image.

License Plate Recognition

The License Plate Recognition API detects and recognizes license plates displayed on vehicles in a video or image file. For a full list of supported video container formats and codecs, see Supported Media Formats.

The License Plates Recognition API detects license plates and uses Optical Character Recognition (OCR) to extract the text. You must provide a source location, which is the location where the source video was captured. The API uses this to match the extracted text against a list of probable license plate formats that are commonly seen at that location. This process improves the license plate results. For a list of supported source locations, see the Request tab.

Media Analysis

The Media Analysis API allows you to perform multiple Media Analytics API functions on the same input file. For example, you can create a transcript of the text in the media file, and detect scene changes in the same file.

This API is similar to running the individual Media Analytics APIs, but it can use the media processing resources more efficiently because it does not need to decode the input file multiple times. This approach can improve the performance, and the API unit cost of using the API, compared to using the media analytics APIs individually.

Note: The Analyze Media API is not the same as a Combination. A Combination runs each of the APIs individually, while Analyze Media runs all of them in a single job.

Object Recognition

The Object Recognition API matches logos in a media file that you provide against a database of corporate logos.

The public dataset contains a library of corporate logos, which you can match against. When you submit a media file to the API, Haven OnDemand searches your media for sections that match the logos in the database.

The API returns the name of the logo in the database that was detected (based on the stock ticker for the company that owns the logo), and the location of the object in your media. The location is given as the coordinates of the corners of a box that surrounds the matching object.

For a list of file formats that you can use for media files, see Supported Media Formats.

For a list of corporate logos used in the training set for the API, see Corporate Logo Training Set.

The Object Recognition API can be expanded to match objects from other datasets. If you are interested in using this functionality with other datasets, please contact us

Scene Change Detection

The Scene Change Detection API identifies the time in a video where the scene changes.

For a full list of supported video container formats and codecs, see Supported Media Formats.

Speech Recognition

The Speech Recognition API creates a transcript of the text in an audio or video file. You can then use this output with other Haven OnDemand APIs, such as Concept Extraction or Add to Text Index, to gain further insight and analysis.

The Speech Recognition API currently supports broadcast-quality content in several languages, as well as telephony grade audio for some of those languages.

For a list of supported video and audio file formats, see Supported Media Formats.

Combinations

APIs for creating, managing and executing Combinations.

Execute Combination

The Execute Combination API allows you to run a Combination. You can use this API to provide the input and input parameters for a Combination, and get the Combination response.

Connectors

The connector APIs allow you to crawl, index and analyze data from local/distributed file systems and the web, including SharePoint and DropBox. Any file system supported by the HPE IDOL connector already includes support for Haven OnDemand, making this an Enterprise ready platform!

Cancel Connector Schedule

Connectors allow you to retrieve information from external systems and update it through Haven OnDemand APIs. You can use connectors to create an index of data in an external repository, schedule and automate workflows, send notifications, or facilitate migration to other locations.

The Cancel Connector Schedule API allows you to stop a configured connector schedule. This API stops the specified schedule and removes it from the connector configuration.

Connector History

Connectors allow you to retrieve information from external systems and update it through Haven OnDemand APIs. You can use them to create an index of the data in the external repository, automate workflows, for notifications, or to facilitate migration to other locations.

The Connector History API allows you to check the history of your cloud flavor connectors and connector runs. It returns details of all connector runs, including scheduled runs and any runs that you started manually with the Start Connector API.

The optional parameters allow you to restrict the results to particular connectors, time ranges, or connector job statuses. You can also filter by one or more connector tokens, which identify a particular run of a connector. The Start Connector API returns this token when you start the connector.

Connector Status

Connectors allow you to retrieve information from external systems and update it through Haven OnDemand APIs. You can use them to create an index of the data in the external repository, automate workflows, for notifications, or to facilitate migration to other locations.

The Connector Status API allows you to check the status of the last run of your connector (either for a scheduled run, or a run that you started manually with the Start Connector API).

You can optionally add the schedule_information parameter to return the time of the next scheduled run for any created connector with a configured schedule.

Create Connector

Connectors allow you to retrieve information from external systems and update it through Haven OnDemand APIs. You can use it to create an index of the data in the external repository, automate workflows, for notifications, or to facilitate migration to other locations.

The Create Connector API allows you to create a connector configuration to connect to the external repository, and specifies what content to retrieve. You can create a schedule so that Haven OnDemand automatically runs the connector. For Cloud flavor connectors, you can manually run the connector by using the Start Connector API.

Delete Connector

Connectors allow you to retrieve information from external systems and update it through Haven OnDemand APIs. You can use it to create an index of the data in the external repository, automate workflows, for notifications, or to facilitate migration to other locations.

The Delete Connector API allows you to delete an existing connector configuration. You provide the name of a connector that you created with the Create Connector API. After you send the API request, the API asks for confirmation that you want to delete the connector.

After you delete the connector, you cannot use that configuration again.

Retrieve Config

Connectors allow you to retrieve information from external systems and update it through Haven OnDemand APIs. You can use them to create an index of the data in the external repository, automate workflows, for notifications, or to facilitate migration to other locations.

The Retrieve Config API retrieves information about the configuration of one of your connectors.

Start Connector

Connectors allow you to retrieve information from external systems and update it through Haven OnDemand APIs. You can use it to create an index of the data in the external repository, automate workflows, for notifications, or to facilitate migration to other locations.

The Start Connector API starts a run of a cloud flavor connector according to the configuration that you created with the Create Connector API.

By default, the connector runs with its normal configuration, and sends content to the configured destination. You can override the connector destination when you start the run. For example, if the connector is configured to index into one Haven OnDemand text index, you can trigger a run to output the data to a different index.

Stop Connector

Connectors allow you to retrieve information from external systems and update it through Haven OnDemand APIs. You can use it to create an index of the data in the external repository, automate workflows, for notifications, or to facilitate migration to other locations.

The Stop Connector API allows you to manually stop a connector from running that was started using the Start Connector API.

Note: This API is available only for cloud flavor connectors, such as the Web Cloud Connector.

Update Connector

Connectors allow you to retrieve information from external systems and update it through Haven OnDemand APIs. You can use connectors to create an index of data in an external repository, schedule and automate workflows, send notifications, or facilitate migration to other locations.

The Update Connector API updates the parameters for an existing connector. Using the Update Connector API (instead of deleting and recreating the connector) retains the existing status of the index, which prevents unnecessary reindexing.

Format Conversion

The format conversion group of APIs provide functions that allow you to process a wide range of files, and extract text content for further processing. Render document files as HTML with support for 500+ file formats

Expand Container

The Expand Container API extracts content from container files (that is, files that contain a set of other files, such as ZIP or TAR archives, and PST files). For a full list of supported container formats, see Supported Formats.

The API extracts the files from the container file and stores them for use in other APIs. It returns a list of the file names and object store references of the files that it extracts from the container. You can pass these references to other APIs to process the stored files (in the same way as you use references that you store by using the Store Object API).

OCR Document

The OCR Document API extracts text from an image file or a file containing images.

Store Object

The Store Object API takes a file, reference, or an input URL and stores the contents of the document for use in other APIs. It returns the object store reference, which you can pass to other APIs to process the document that you store.

Text Extraction

The Text Extraction API uses HPE KeyView to extract metadata and text content from a file that you provide. The API can handle over 500 different file formats (for more information, see Supported Formats).

View Document

The View Document API renders documents into HTML, and highlights text in the document. It uses HPE KeyView to extract the contents of over 500 different file formats, and convert them to HTML (for more information, see Supported Formats).

Geo Analysis

APIs for Geographical Analysis.

Map Coordinates

The Map Coordinates API allows you to map a latitude and longitude position to a location. You can find the location as a country, a timezone, or a US zipcode.

Image Analysis

The image analysis APIs provide functions that allow you to process image files and analyze the contents. It includes APIs for Optical Character Recognition (OCR), image detection, face detection, and barcode recognition.

Barcode Recognition

The Barcode Recognition API detects barcodes from an image. For each recognized barcode, it returns the type, the decoded barcode value, and the coordinates of the corners of a box that surrounds the barcode.

Face Detection

See section above. for information on this API

Image Recognition

The Image Recognition API matches logos in an image that you provide against a database of corporate logos.

OCR Document

See section above. for information on this API

Query Profile and Manipulation

The Query Profile and Manipulation APIs allow developers to create powerful search experiences for end users. These APIs can be used to fine-tune your search solution by enabling promoted content, search synonyms and blacklist terms. Help your end users find what they are looking for by creating a curated search experience.

Create Query Profile

A query profile specifies the manipulation configuration to apply to the query criteria and corresponding results of a search against an unstructured text index. The Create Query Profile API allows you to create a query profile, which you can then use in the query_profile parameter of the Query Text Index API.

A query profile must typically reference a text index of query_manipulation flavor, which stores the actual manipulations. You can create a query_manipulation flavor text index by using the Create Text Index API.

For more information about creating and using query profiles, see Query Manipulation.

Delete Query Profile

A query profile specifies the manipulation configuration to apply to the query criteria and corresponding results of a search against an unstructured text index. The Delete Query Profile allows you to delete an existing query profile.

Retrieve Query Profile

A query profile specifies the manipulation configuration to apply to the query criteria and corresponding results of a search against an unstructured text index. The Retrieve Query Profile allows you to retrieve a query profile configuration.

Update Query Profile

A query profile specifies the manipulation configuration to apply to the query criteria and corresponding results of a search against an unstructured text index. The Update Query Profile API allows you to update an existing query profile, which you can then use in the query_profile parameter in the Query Text Index API.

Find Related Concepts

The Find Related Concepts API returns a list of the best terms and phrases in query result documents. You can use these terms and phrases to provide topic disambiguation, automatic query guidance, or dynamic thesaurus generation.

Find Similar

The Find Similar API returns documents in the Haven OnDemand databases that are similar to text or a document that you provide. The API extracts the "best" terms from your input, calculating a statistical weight according to their importance in the document. It uses these terms to query the index for similar documents, ranked on number of matches adjusted with the weights.

Get Content

The Get Content API returns the content of documents in the text index, based on a list of references that you provide. You can find document references in the result from the Query Text Index API. For example, you might use the Query Text Index API to quickly return a list of references for documents that match a query, and then you can send subsequent Get Content requests to retrieve the content for the documents.

Get Parametric Ranges

The Get Parametric Ranges API retrieves the values that occur in a particular numeric field, organized into a set of value ranges. You can use this to provide faceted search for continuous numeric values.

For example, if you have a price numeric field, you can use this API to retrieve all the price values that occur in your documents, arranged in groupings (0-10, 10-20, and so on). You can specify the ranges to use for your values, so that the groupings are sensible for the range of values that occur in the field. A common use for this information is to provide filters to end users.

Get Parametric Values

The Get Parametric Values API retrieves the unique values that occur in a particular field, which you can use to provide faceted search. For example, if you have a color parametric field, you can use this API to retrieve all the color values that occur in your documents. A common use for this information is to provide filters to end users.

For example:

Query Text Index

The Query Text Index API searches for content in the Haven OnDemand databases. Your query can include natural language text, keywords, and Boolean expressions. The API returns documents from a specified text index that matches your query expression.

Retrieve Index Fields

The Retrieve Index Fields API retrieves a list of the fields that have been ingested into a specified text index. The Retrieve Index Fields API also returns the data type of each field.

Text Analysis

The Text Analysis APIs provide additional information about text that you provide. You can detect the language of text, highlight specified terms in text, and expand or tokenize terms to find out more about values that are used for querying.

Auto Complete

The Auto Complete API allows you to expand a prefix into a list of possible words that the prefix matches. You can use this API to provide search suggestions.

Concept Extraction

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.

Document Categorization

The Document Categorization API allows you to categorize documents according to a set of categories that you create.

To use the API, you must create a text index with the Categorization flavor, by using the Create Text Index. This type of index stores documents that describe categories. For more information about the Categorization flavor, see Categorization Flavor Index Configuration

Category descriptions act like a query that matches any document that belongs to the category. For example, a category document for the dogs category might contain a list of dog breeds. If you use this list as query text in the Query Text Index API, it returns documents about dogs.

You can also optionally define Boolean or field text restrictions in a category, by using the BOOLEANRESTRICTION and FIELDTEXTRESTRICTION fields. For example, the following field text restriction ensures that all documents that get assigned to the category have an ENRICHED_PERSON field:

EXISTS{}:ENRICHED_PERSON

For more information about Boolean and field text expressions, see Boolean and Proximity Operators and Field Text Operators.

The Document Categorization API allows you to find the categories that a document matches. You can think of this process as the inverse of a normal query. You provide a document to the API, and it returns a list of the categories in your category text index that match it. The API uses the text in the CONTENT field of the document as query text to match categories.

You must specify the name of the category index to use (a Haven OnDemand text index with the Categorization flavor). You can optionally specify additional field_text to restrict the categories from the categorization index that can return. For example, if you know the documents you want to categorize are mostly about animals, you can add a field_text restriction that matches only values of the CATEGORY field that are about animals.

Entity Extraction

The Entity Extraction API allows you to find useful snippets of information from a larger body of text. The snippets of information (known as entities) can be words, phrases, or other blocks of information, such as a phone number. You provide the text to analyze and choose the kind of information that you want to find. The API provides a set of entity types, which includes people names, place names, company names, phone numbers, dates, Web addresses, and credit card numbers.

The API returns a list of the extracted entities, along with information about the type of matches found, and the position in the text where the entity occurs.

Expand Terms

The Expand Terms API returns a list of terms that match a term that you provide, according to a specified expansion.

Highlight Text

The Highlight Text API finds specified terms in your input text and adds HTML tag around them. It returns your input text, with the added HTML tags.

Language Identification

The Language Identification API analyzes a piece of text that you provide and returns the language of the text.

You can use Language Identification to determine the correct language settings to use for other Haven OnDemand APIs, such as Sentiment Analysis or Entity Extraction.

Sentiment Analysis

The Sentiment Analysis API analyzes text to return the sentiment as positive, negative, neutral, or mixed. It contains a dictionary of positive and negative words of different types, and defines patterns that describe how to combine these words to form positive and negative phrases.

You can use sentiment analysis to gain valuable insights into what users, customers, friends, and colleagues are saying.

Automatically classifying text by sentiment allows you to easily find out the general opinions of people in your area of interest. For example, you might want to analyze reviews of a product to help you improve the customer experience, or to find the most or least popular product.

Text Statistics

The Text Statistics API analyzes text that you provide, and returns information about the content, such as the number of sentences and terms.

Text Tokenization

The Text Tokenization API helps you find more information about the terms that you might want to use in the Query Text Index API or other APIs. You provide a list of terms, or some text, and the API returns information about the terms in the text.

Unstructured Text Indexing

The Unstructured Text Index APIs allow you to add unstructured and semi-structured content to Haven OnDemand's advanced text indexes for future use with the Search family of APIs. The data that you index is private, and only accessible by you and your users through the use of the API key associated with the specified text index. Most important, the data you index is yours and you have full ownership, control and responsibility.

Add to Text Index

The Add to Text Index API allows you to add content to a text index that you have set up. The API indexes your content and makes it available for use in other APIs, such as Query Text Index, Find Similar, and Find Related Concepts.

Note: Before you can add content, you must use the Create Text Index API to create an index. You can use the List Resources API to return a list of your available indexes.

Tip: You can also manage text indexes, and add individual documents by using the Text Indexes Account page.

Create Text Index

The Create Text Index API allows you to create a text index, which you can use to add your own content to Haven OnDemand. You specify a name for the text index, which you can use to add data, and modify the index in future operations.

Tip: You can also create and manage text indexes by using the Text Indexes Account page.

Note: Each text index flavor has a static resource unit cost, determined by the maximum index size and specialization. For more information about the resource unit costs for each flavor, see API and Resource Unit Consumption.

Delete Text Index

The Delete Text Index API deletes a text index that you have previously created with the Create Text Index API.

Tip: You can also delete text indexes by using the Text Indexes Account page.

Delete from Text Index

The Delete from Text Index API removes content from a text index that you have created and indexed content into. You specify the document reference of the document that you want to delete, and the API removes it from the text index. After you delete a document, it is not available for use in other APIs such as Query Text Index.

Index Status

The Index Status API returns the status of your text indexes.

You can use this API to understand your data set contents, and to check whether you are approaching the maximum values for a given flavor.

List Resources

The List Resources API returns a list of your dynamic resources. The response includes the name, flavor, and type of the indexes that you have created using the Create Text Index API. The response also includes the connectors that you have created using the Create Connector API.

You can optionally specify a type to return a list of your resources that have that type. You can also specify a flavor to return a list of your indexes or connectors that have that flavor.

Restore Text Index

The Restore Text Index API creates a new text index, using a previous state from an internal backup of one of your text indexes.