Some test text!

Search
Hamburger Icon

Appian / Guides / Component Properties

Apryse Appian WebViewer Component Properties

This guide outlines the existing properties of the Apryse Appian WebViewer Component. The component is a wrapper around the WebViewer JavaScript library. The properties expose some of the underlying WebViewer APIs/features while also providing some additional composed functionality.

The list may not be complete depending on the release version of the component. Also, certain deprecated properties may be omitted to encourage the use of newer properties.

While not everything in WebViewer is exposed, we are always open to adding more properties to the component. If you have a feature request, please contact us at support@apryse.com.

General properties

url

  • Type: Text (input-only)
  • Required: No
  • Requires page refresh: Yes

The URL of the document you are trying to view. There is a chance a CORS error might come up if the document is not hosted on the same domain as the Appian site or if the proper CORS headers are not set on the file host server.

Relevant WebViewer guides

Loading from URL

key

  • Type: Text (input-only)
  • Required: No
  • Requires page refresh: Yes

A valid license key for WebViewer. You can get a trial key from https://dev.apryse.com/get-key. Your free trial includes unlimited trial usage and support from solution engineers. There will be a watermark rendered on your documents. To remove the watermark, you will need to purchase a license key from https://apryse.com/pricing.

docAccessConnectedSystem

  • Type: ConnectedSystem (input-only)
  • Required: Yes
  • Requires page refresh: Yes

The Document Access Connected System as an Appian constant. This is required for getting the license key securely from the connected systems if provided that way. It is also necessary for loading and saving documents stored in Appian.

Please refer to the following sections below for more properties on loading and saving documents to Appian.

userDisplayName

  • Type: Text (input-only)
  • Required: No
  • Requires page refresh: No

The name of the user who is making annotations. This is used when working with annotation permissions as well. Users cannot modify annotations made by other users unless they have the same display name.

Relevant WebViewer guides

Annotation Permissions

Display Authors

enableAnnotations

  • Type: Boolean (input-only)
  • Required: No
  • Default: true
  • Requires page refresh: No

Toggle whether annotations are visible in WebViewer. This will hide/show annotations rendered in the document.

Relevant WebViewer guides

DocumentViewer.enableAnnotations

DocumentViewer.disableAnnotations

enableRedaction

  • Type: Boolean (input-only)
  • Required: No
  • Default: false
  • Requires page refresh: No

Toggle whether redaction is enabled in WebViewer. This will hide/show the redaction tools in the ribbon header as well.

Relevant WebViewer guides

Redaction

enableMeasurement

  • Type: Boolean (input-only)
  • Required: No
  • Default: false
  • Requires page refresh: No

Toggle whether measurement tools are enabled in WebViewer. This will hide/show the measurement tools in the ribbon header as well.


Relevant WebViewer guides

Measurement

enableMultiTabMode

  • Type: Boolean (input-only)
  • Required: No
  • Default: false
  • Requires page refresh: No

Switch to mutli-tab mode to view multiple documents at the same time in a single instance. This can be helpful to avoid opening multiple viewers and save memory. Not compatible with semantic compare mode.

Relevant WebViewer guides

Multi-tab document viewing

watermarkOptions

  • Type: Dictionary (input-only)
  • Required: No
  • Requires page refresh: No

Specify options to draw a watermark over the document. Custom watermarks are only supported through the config file. This can be used to watermark generated documents. Please refer to the guide below for more details on the structure of the dictionary object.

Relevant WebViewer guides

Watermarking documents

enablePdfEditing

  • Type: Boolean (input-only)
  • Required: No
  • Default: false
  • Requires page refresh: Yes

Enables editing of PDF content within WebViewer. Although WebViewer lets you rotate pages, this will allow full content editing of the actual text and other content within the PDF document. This is not compatible with certain modes.

Relevant WebViewer guides

Content editing

enableOfficeEditing

  • Type: Boolean (input-only)
  • Required: No
  • Default: false
  • Requires page refresh: Yes

When an Office file is loaded (excluding legacy Office documents), WebViewer will change to Office editing mode and allow users to edit content. This is not compatible with certain modes.

Relevant WebViewer guides

Create and edit Word

customSubstituteFontURL

  • Type: Text (input-only)
  • Required: No
  • Requires page refresh: No

Provide a secure, absolute HTTPS URL to where custom substitute fonts are hosted. These fonts are used when fonts are missing from the document. It is HIGHLY recommend to embed fonts into the document.

Relevant WebViewer guides

Font substitution

timerInterval

  • Type: Integer (input-only)
  • Required: No
  • Requires page refresh: No

The interval, in milliseconds, that the JavaScript timer will trigger onInterval. Can be useful to trigger refresh events or variable updates in Appian.

General events

onInterval

  • Type: Event

Event that triggers when the timer interval is reached. You will get the uptime in milliseconds as a parameter. Can be useful to trigger refresh events or variable updates in Appian.

Loading from Appian

appianDocId

  • Type: Integer?list (input-only)
  • Required: No
  • Requires page refresh: No

An Appian document ID. You can pass an integer of a single document ID, or an array containing multiple IDs. For example, 1230 or {1221,1230}. If you pass multiple IDs, the documents will be merged into one.

loadAsPDF

  • Type: Boolean (input-only)
  • Required: No
  • Default: false
  • Requires page refresh: No

When loading an Office document or image, also convert it to PDF for page manipulation. Semantic comparison requires two PDF documents. This property will help when one of the documents isn't a PDF.

searchTerm

  • Type: Text (input-only)
  • Required: No
  • Requires page refresh: No

This string represents a search term that will automatically search on document load. You can use this if you want to perform a search or to highlight a specific term on load.

Relevant WebViewer guides

Searching for text

Load events

onDocumentLoaded

  • Type: Event

An event that triggers when a document is loaded. The event provides the document name, type, and page count as an object parameter.

Relevant WebViewer guides

documentLoaded

Saving to Appian

documentFolder

  • Type: Integer (input-only)
  • Required: No
  • Requires page refresh: No

The ID of the folder you are trying to save the new document to. This is only used when saving a document to Appian.

uploadChunkSize

  • Type: Integer (input-only)
  • Required: No
  • Requires page refresh: No

The size of the document chunks (in bytes) that will be transferred to the connected systems for saving. This should only be used if the connected systems on the Appian side is running out of memory. Lowering the value will reduce the memory usage, but will increase the number of requests made to the connected systems and slow down the saving process.

saveAsFileNameTemplate

  • Type: Text (input-only)
  • Required: No
  • Requires page refresh: No

A template string that can be used as the filename when using the UI SaveAs option. Use the {filename} template key to fill in with the current filename. You can use this to prefill the new filename with a desired format for the user.

disableSaveFilenameInput

  • Type: Boolean (input-only)
  • Required: No
  • Default: false
  • Requires page refresh: No

Disables the filename input in the SaveAs modal to prevent users from changing it. Use this if you have a set format for the new filename, and do not want users to change it.

enforceNewSaveAsFilename

  • Type: Boolean (input-only)
  • Required: No
  • Default: false
  • Requires page refresh: No (requires reopening the modal)

Disables the save button on the SaveAs modal if the filename was not changed. This is to force the user to name changes to the new filename.

enableExtractPagesToAppian

  • Type: Boolean (input-only)
  • Required: No
  • Default: false
  • Requires page refresh: Yes

If enableExtractPagesToAppian is true, the user will be able to extract pages to Appian as a new PDF.

Relevant WebViewer guides

Extract Pages

xfdfAnnotationData

  • Type: Text (input-output)
  • Required: No
  • Requires page refresh: No

This input string is the XFDF that represents all annotations. WebViewer will import any annotations from this variable. If the user presses save annotations, it will save annotations to this variable.

Relevant WebViewer guides

Saving XFDF

XFDF format

autoExportXFDF

  • Type: Boolean (input-only)
  • Required: No
  • Default: true
  • Requires page refresh: No

Toggle auto exporting the XFDF annotation data to the xfdfAnnotationData parameter every time annotations are changed. You may want to disable this if you want to import XFDF with the property only, and avoid changes to a variable.

annotationCommands

  • Type: Text?list (input-only)
  • Required: No
  • Requires page refresh: No

A list of annotation XFDF commands that WebViewer will import and replay. Each command is an XFDF string that represents an add, modify, or delete action.

Relevant WebViewer guides

Importing XFDF commands

Save events

onSaveDocument

  • Type: Event

Event that triggers when the document is saved. You will get the new/old document ID as an object parameter.

onAnnotationsChanged

  • Type: Event

Event that triggers when annotations are changed. You will get the exported XFDF, annotation command, and action an object parameter. You can decide which one to use or save depending on your use case.

Relevant WebViewer guides

Exporting XFDF commands

UI properties

enabledElements

  • Type: Text?list (input-only)
  • Required: No
  • Requires page refresh: No

You can pass the data-elements you wish to enable as an array. For example, {"bookmarksPanel", "bookmarksPanelButton"}. To get data-elements, inspect the DOM in browser and find the right attribute.

Relevant WebViewer guides

Showing/Hiding elements

disabledElements

  • Type: Text?list (input-only)
  • Required: No
  • Requires page refresh: No

You can pass the data-elements you wish to disable. For example, {"downloadButton", "printButton"}. To get data-elements, inspect the DOM in browser and find the right attribute.

Relevant WebViewer guides

Showing/Hiding elements

defaultLanguageCode

  • Type: Text (input-only)
  • Required: No
  • Requires page refresh: No

Provide a supported language code (ex. en, de) to use that language as the starting language. To find the supported language code you want, you need to reference the ISO 639 language codes. The list of supported languages can be found in the settings panel of WebViewer. The code is also available for each of the languages by looking at the data-element attribute of the list elements in the settings panel.

Relevant WebViewer guides

Localization

disableAppianMenu

  • Type: Boolean (input-only)
  • Required: No
  • Default: false
  • Requires page refresh: No

Disable the Appian header menu (the blue button in the right) and return the options under this menu back into the WebViewer header.

darkMode

  • Type: Boolean (input-only)
  • Required: No
  • Default: false
  • Requires page refresh: No

Toggle dark mode on or off.

notesInLeftPanel

  • Type: Boolean (input-only)
  • Required: No
  • Default: false
  • Requires page refresh: Yes

Whether to move the notes panel with the annotations from the right to the left panel instead.

customCSSFileId

  • Type: Integer (input-only)
  • Required: No
  • Requires page refresh: Yes

Customize the styles in WebViewer by providing the Appian file ID of your own CSS.

Relevant WebViewer guides

Customizing styles

Document generation

templateData

  • Type: Dictionary (input-only)
  • Required: No
  • Requires page refresh: Yes (requires a refresh to fill in new values)

An key-value object that represents the values to be filled into an Office template. See the guide below for more details on the template and what this object should look like.

Relevant WebViewer guides

Template generation

enableDocumentGeneration

  • Type: Boolean (input-only)
  • Required: No
  • Default: false
  • Requires page refresh: No

Enables the modal that allows users to map values to an Office template field's manually. This is not required for automatic document generation and template filling.

Semantic comparison

enableSemanticCompareMode

  • Type: Boolean (input-only)
  • Required: No
  • Default: false
  • Requires page refresh: Yes

Enable the semantic compare mode in WebViewer. This is helpful in comparing two PDF documents and highlighting differences. You will need to use the loadAsPDF property for any documents that isn't a PDF. This is not compatible with multi-tab mode.

Relevant WebViewer guides

Semantic text compare

automaticSemanticCompare

  • Type: Boolean (input-only)
  • Required: No
  • Default: false
  • Requires page refresh: No

Toggle whether the semantic comparison should automatically start after the documents are loaded. Normally, the user has to press the compare button to start the comparison.

Mentions

mentionableUsers

  • Type: Dictionary?list (input-only)
  • Required: No
  • Requires page refresh: No

A list of dictionary objects describing users that can be mentioned in annotation comments. Mentioning a user will trigger a onMentionsChanged event. Please refer to the guide below for more details on the structure of the dictionary object.

Relevant WebViewer guides

Mentions

Mention events

onMentionsChanged

  • Type: Event

Event that triggers when mentions are changed. You will get the mentions data as a parameter. The data structure is described in the guide below. You can use this to trigger notifications through Appian to notify users that they have been mentioned.

Relevant WebViewer guides

mentionChanged

Signature workflow

enableSignatureRequests

  • Type: Boolean (input-only)
  • Required: No
  • Default: false
  • Requires page refresh: No

Enables the signature request panel to start a workflow, then assign, and request signatures from other users. This can be used to start a signature workflow for a form that requires signatures from multiple users.

currentSignatureWorkflow

  • Type: Dictionary (input-output)
  • Required: No
  • Requires page refresh: Yes

Current signature workflow object containing the associated document ID, initiator, array of signature requests, and XFDF file ID.

signingUsers

  • Type: Dictionary?list (input-only)
  • Required: No
  • Requires page refresh: Yes

A list of dictionary objects describing users that can be requested to sign the document. The objects follow a similar object to mentionable users.

Relevant WebViewer guides

Mentions

xfdfDocumentFolder

  • Type: Integer (input-only)
  • Required: No
  • Requires page refresh: No

This is the ID of the folder where the XFDF of annotations will be stored. Due to string limitations in databases, the annotation XFDF is stored in a separate file instead. When in the context of signature workflows, this is the folder where the XFDF of each signature will be stored. The file ID will be stored in the signature workflow object.

Signature workflow events

onStartSignatureWorkflow

  • Type: Event

Event that triggers when a signature workflow is started. You will get the workflow object as a parameter.

onSelectAssignee

  • Type: Event

Event that triggers when the user that started a workflow selects an assignee for a particular signature field. You will get the widget ID and assignee as a parameter. This can be stored into the workflow.

Digital Signatures

enableSignatureEncryption

  • Type: Boolean (input-only)
  • Required: No
  • Default: false
  • Requires page refresh: No

Enables a modal to allow users to provide a digital certificate to encrypt the signatures on a document and encrypts the fields to detect modifications. This is useful after a signature workflow to certify the document and guarantee the signatures are valid.

Relevant WebViewer guides

Digital signature

Customization & specific use cases

configFileId

  • Type: Integer (input-only)
  • Required: No
  • Requires page refresh: Yes

Provide an ID to a JavaScript file that will be executed within the WebViewer iframe. The Appian component is but only a wrapper around the WebViewer component with a multitude of APIs. Using this config file gives more access to APIs for customizations and actions. This will require some knowledge of JavaScript and WebViewer APIs. Check out the guide below for more details on the config file.

Relevant WebViewer guides

Config file

customData

  • Type: Dictionary (input-only)
  • Required: No
  • Requires page refresh: Yes

An object that will be passed to the config file as a parameter. If you have some customized actions or processes that require information, you can pass it in through this property.

Relevant WebViewer guides

Config file custom data

Custom events

onCustomEvent

  • Type: Event

Event that can be triggered from the config file by the user as necessary to avoid triggering other existing events. The parameter could be any object. It is highly recommended to use a type property to distinguish the event type.

Debugging

debugLog

  • Type: Dictionary (input-only)
  • Required: No
  • Requires page refresh: No

A dictionary object that a user can use to check Appian values in JavaScript. This is useful for debugging and checking values in the console. The object will be logged to the console when the component is loaded. You can check the some of the parameter objects like watermarkOptions, templateData, etc to make sure they are being passed correctly.

Get the answers you need: Chat with us