Advantages and limitations of using hot folders

The pdfToolbox product family provides a number of products that can automate a workflow. pdfToolbox Server does that using hot folders, but what are the advantages and disadvantages of that technique? When should pdfToolbox Server be used and when is it better to use pdfToolbox CLI or pdfToolbox SDK?


As explained in the previous article (Working with hot folders in pdfToolbox Server), setting up pdfToolbox Server jobs is quick and easy. It's a matter of selecting which hot folder needs to be watched and what the Profile or Process Plan is that will be used to process files dropped in that hot folder. At the same time, these hot folder setups have a number of advantages:

  • Error handling is done for you. If something is wrong with a PDF document, this will be intercepted for you and the document will automatically be moved into the error folder with an appropriate log.
  • pdfToolbox Server automatically does parallel processing of PDF documents across all of its jobs; the number of parallel processes is limited by the license and how you configure its preferences.

Of course error-handling and parallel processing are also possible when using the CLI or SDK, but substantially more work is needed to handle this properly.


Of course there are a few scenarios where using hot folders isn't the best choice:

  • Using pdfToolbox CLI or pdfToolbox SDK closer integrations are possible. Using hot folders all you can do is drop a PDF document in a watched folder and wait until it has been processed. With pdfToolbox CLI or pdfToolbox SDK you can get progress information for a file and you can specify where exactly the output document has to be generated.
  • Not everything can be done using pdfToolbox Server and hot folders. Some commands are available only in environments where you use the CLI version or the SDK version of pdfToolbox.
  • In scenarios where variables are used (read more about variables in this manual: Variables and JavaScript: Overview), pdfToolbox Server can set variables only at the job level (meaning that all PDF documents processed by a particular job will receive the same values for the variables in the used Profile or Process Plan). Using pdfToolbox CLI or pdfToolbox SDK, variables can be set differently on a file-by-file basis.

Remark that regardless of these limitations, it might still be possible to use pdfToolbox Server in a test phase before doing the actual implementation using pdfToolbox CLI or SDK.