UiPath Activities

Digitize Document


Digitizes a document, extracting its Document Object Model (DOM) and text and storing them in their corresponding variable types.


You must assign an OCR engine to this activity by dragging it into the body of the activity, if OCR is necessary for reading the input document. The available OCR engines are Microsoft OCR, Google OCR, Abbyy OCR, OmniPage OCR, Microsoft Cloud OCR, Google Cloud OCR, or Abbyy Cloud OCR. The input and output parameters of the selected OCR engine are automatically set by the Digitize Document activity.



  • DisplayName - The display name of the activity.


  • DegreeOfParalelism - Specifies how many, if any, pages to be analyzed in parallel. The -1 value uses the maximum number of logical processors on the machine while specifying a positive value uses that number of logical processors. By default, this property is set to 1.
  • DocumentPath - The file path of the document you want to digitize. This field supports only strings and String variables.


The supported file types for this property field are .png, .gif, .jpe, .jpg, .jpeg, .tiff, .tif, .bmp, and .pdf.


  • Private - If selected, the values of variables and arguments are no longer logged at Verbose level.


  • DocumentObjectModel - The Document Object Model (DOM) of the file, stored in a Document variable. This field supports only Document variables. This variable can be subsequently used in the Present Validation Station activity.
  • DocumentText - The text extracted from the specified document. This variable can be subsequently used in the Present Validation Station activity. This field supports only String variables.


To ensure compatibility with the Validation Station it is recommended to use the Digitize Document activity in automatic classification and data extraction, so that the Present Validation Station activity has consistent input data.

Document Object Model

The Document Object Model of a digitized document contains word structure, classification, and formatting. The UiPath.DocumentProcessing.Contracts.Dom.Document public contract object is used for storing the DOM.

The DOM contains basic information regarding the processed document such as name, content type, text length, and information about each page. These are the categories it contains:


  • PageIndex - Original document version index.
  • IndexInText - Text version index.
  • Size - Text size.
  • Length - Length of content in the text version.
  • ProcessingSource - The source of the processing. Possible values are: 0 - unknown, 1 - OCR, 2 - PDF.
  • Sections - Sections identified on the page.


  • Language - Detected language (if any).
  • Rotation - Section rotation. Possible values are 0 - None, 1 - Rotated90, 2 - Rotated180, 3 - Rotated270, 4 - Other.
  • SkewAngle - Detected skew angle.
  • Type - Section type. Possible values are: 0 - Vertical, 1 - Paragraph, 2 - Header, 3 - Footer, 4 - Table.
  • WordGroups - List of word groups.

Word Groups:

  • IndexInText - Text version index.
  • Length - Length of the words in the word group.
  • Type. Possible values are: 0 - Sentence, 1 - TableCell, 2 - TableRowEnd, 3 - Heading, 4 - Other.
  • Words - List of words.


  • Box - The position of the word. Coordinates represent Top, Left, Width, Height.
  • IndexInText - Text version index.
  • OcrConfidence - The confidence level reported by the OCR engine.
  • Text - The word itself.

Example of using the Digitize Document activity

You can see how the Digitize Document activity is used in an example that incorporates multiple activities.
You can check and download the example from here.

Updated 2 months ago

Digitize Document

Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.