This document provides an overview of using HotDocs Hub, the HotDocs Platform, and other components, in a document automation solution.
In this Topic Hide
Organizations that produce a large numbers of standardized documents – for example, contracts or invoices – benefit from document automation. This is a process through which existing documents are marked up with placeholders for changeable values and instructions for conditionally changing the structure of a document. Marked-up documents created using HotDocs are called HotDocs templates. Completed documents are created by merging user input data with the placeholder values in the HotDocs template, resulting in a customized final document. As users never directly edit the text of the document, this ensures the production of accurate, compliant, error-free documents.
A document automation solution typically requires that some or all of the following tasks are performed:
These actions are performed by the components below.
Domain Name | Environment | HotDocs Software Components | Features Provided |
HotDocs
Desktop
|
Desktop | HotDocs Developer | Enables users to create HotDocs templates. |
Upload Plugin for HotDocs Developer | Enables users to upload templates from HotDocs Developer to the HotDocs Hub. | ||
HotDocs Hub | Cloud or On-Premise Server | Template Hub |
|
User Hub | Enables administrators to create user accounts and allocate access permissions. | ||
Interview Service |
|
||
HotDocs Platform | Cloud or On-Premise Server |
HotDocs Cloud Services (Cloud) | Handles interview generation requests and assembly requests from the Interview Service and processes the requests in the Cloud. |
HotDocs Web Services (On-Premise) | Handles interview generation requests and assembly requests from the Interview Service, and passes the requests to HotDocs Server. | ||
HotDocs Server (On-Premise) |
|
The relationships between components is described below.
An on-premise document assembly solution typically has the following architecture:
The on-premise installation of HotDoc Hub is deployed to Internet Information Services (IIS). When Hub is installed, you will see multiple applications in IIS beyond those shown in the architecture diagram above. See HotDocs Hub Applications in IIS for a full description of each application.
The HotDocs Platform provides core HotDocs functionality in a server environment. Specifically, document assembly and interview generation. There are two components that make up the Platform for an on-premise solution: HotDocs Server and HotDocs Web Services.
HotDocs Server is the server-based version of HotDocs. It generates HotDocs interviews for display in a standard Web browser and generates completed documents on the web server, without requiring any special software to be installed on an end-user's computer. It is the 'core' of the HotDocs Platform. It performs all processing of document assembly and interview generation.
HotDocs Web Services is a REST-ful web service which exposes fundamental HotDocs Server features to callers. It can be deployed on a different server to the one on which HotDocs Server is installed. In this solution, it is used by the HotDocs Hub – specifically, the Interview Service component – to generate Interviews and assemble documents.
The HotDocs Platform is deployed in a Windows Server environment using Internet Information Services (IIS). For a full list of IIS role requirements, see HotDocs Server System Requirements.
HotDocs Hub is a modular, off-the-shelf suite of commonly-needed components for HotDocs integrations. Applications that integrate with HotDocs typically provide several additional features for controlling how HotDocs resources are used. For example, HotDocs template storage, user authentication and authorization, and HotDocs interview generation. The Hub supplies these components without any additional development effort on your part. Users interact with the Hub either through the Hub's own user interface or through your own custom user interface, built using the Hub APIs.
HotDocs Hub provides the following core components:
The Template Hub and Interview Service are always installed as part of a solution. The User Hub is optional, depending on the security requirements of the solution.
HotDocs Hub is a multi-tenanted application, and both cloud and on-premise HotDocs Hub deployments use the same underlying multi-tenanted architecture. However, only cloud deployments support multiple tenants. On-premise deployments of Hub may only have a single tenant.
Each Hub component also provides an extensive API. This enables you to develop your own applications that integrate Hub functionality.
The Template Hub is a web service providing storage, organization, and retrieval of HotDocs templates. The service enables users to:
Templates uploaded to the Hub from HotDocs Developer are stored in a database. This requires that Microsoft SQL Server 2012 R2 or later is installed as part of the solution.
HotDocs templates are created and uploaded to the Hub using the HotDocs Developer desktop application.
Templates uploaded to the Hub are subject to version control. Once a template is uploaded, any subsequent upload of the same template creates a new version of that template in the Hub. This produces a 'history' of uploads for the template. Using this version history, an administrator can roll the template back to an earlier version if necessary.
The User Hub is a web service providing user authentication and authorization for HotDocs resources, including the Template Hub and Interview Service. The User Hub enables administrators to:
Users are organized by assigning them to structured User Groups. Access to resources in other Hub components is controlled by allocation of User Groups to Template Groups.
Users in the assigned User Groups may then access the templates in the Template Group For example:
The User Hub is an optional HotDocs Hub component. It does not need to be installed for the Hub to function. If the User Hub is not installed, system administrators typically use an alternative solution for user authentication and authorization. See Security Configuration Options for more information.
The Interview Service is a web service providing HotDocs Interview generation. It exposes the interview generation and document assembly functionality provided by the HotDocs Platform.
A HotDocs Interview is a series of dialogs, each containing one or more questions which HotDocs generates from the variables in a template. The template's user must answer the questions in the interview before HotDocs can assemble a custom document. Once a person completes the interview, HotDocs assembles the final customized document from the template by merging the interview answers into the template text. Before an Interview can be generated, a template must be uploaded to the Template Hub. This is necessary as the Interview content and structure is derived from the template for which an Interview is requested.
The Interview is a combination of HTML and JavaScript, embedded in a web page. There are several ways to display an Interview using the HotDocs Hub. These are:
When using the Interview Button or Interview Link, the Interview loads within the context of the Hub user interface.
Once a user has finished an Interview, two items of data are typically output:
The user can download the assembled document after they complete the Interview.
The Hub UI web application enables users to access Hub functionality through a web browser. During installation, you can optionally install the HotDocs Hub UI, containing the core user interface components for the HotDocs Hub. If you choose to install Hub components without the user interface, you can also interact with components directly through their APIs.
HotDocs templates are created by template authors – users that automate documents using HotDocs Developer – using the HotDocs desktop platform.
HotDocs Developer is used by template authors to create HotDocs Templates. It is installed on the content developers' desktop computer. Once Templates are created, they are uploaded to the Template Hub. Once uploaded to the Template Hub, Templates are then made available to end users through the HotDocs Hub user interface, accessible through their web browser.
The Upload Plugin for HotDocs Developer add-on enables content developers to upload templates from HotDocs Developer to the HotDocs Hub.