# Doc Service Overview

The Doc Service is a collection of several operations (methods) that provide a means to exchange data (information) and files (package documents as PDF files) between the Expere Document Services (EDS) solution and other systems including third-party applications. The service retrieves document packet information, order and status information, and enables applications to request forms and form information from the document generation solution.

The Doc Service consists of the following operations:

- Generate: the Generate operation is used to generate document processing based on transaction data included in the request.
- GetDeliveredImages: the GetDeliveredImages operation is used to retrieve document images that have been successfully delivered.
- GetDeliveryHistory: the GetDeliveryHistory operation is used to retrieve information on a specific transaction.
- GetGenerateResults: the GetGenerateResults operation is used to retrieve the results of any of the Generate operations.
- GetRequestStatus: the GetRequestStatus operation is to retrieve the status of submitted transaction through four new parameters: State, API Call, Delivery Status, and Delivery Date.
- GetSelectResults: the GetSelectResults operation retrieves the results of a Select transaction.
- Select: the Select operation is used to select document processing based on transaction data included in the request.
- SelectAndGenerate: the SelectAndGenerate operation is used to request document processing based on transaction data included in the request.
- SelectGenerateDeliver: the SelectGenerateDeliver operation is used to select specific documents, generate the document image and deliver them to a recipient.
- SelectSynchronous: the SelectSynchronous operation is used to select documents for immediate processing and retrieves the results of the Select request.
- Deliver: the Deliver operation is used to to send documents to print fulfillment.
- Resubmit Transaction: the Resubmit Transaction operation is used to resubmit a previously-submitted transaction using TransactionIdentifider and AccountId.
- ListDocuments: the ListDocuments operation retrieves the entire universe of documents within the package or phase.
- BeginSession: the BeginSession operation is the primary service call to start a DocViewer session. With the provided transaction data, it utilizes the repository specified in the appSettings.config to autoselect documents within packages or load specific list of documents.
- BeginSessionWithREQ: the BeginSessionWithREQ service call starts a DocViewer session with the provided REQ file data. It does not look to the repository for content. This is mainly used for testing individual REQ documents.
- EndSession: The EndSession service call is utilized when the DocViewer session should be completed. Passing in the session id, the session will be completed and the resulting session data will be returned. Session data returned includes the modified transaction data, document statuses, and the selected package.
- PreCacheSession: The PreCacheSession is a service call that may be used to seed documents and packages into the DocViewer cache to help decrease the time needed to run auto selection for a transaction. This can be called as soon as you know what packages or documents you will be using with DocViewer.