AutocompleteItem


PropertyTypeRequiredDescription
idstringYesUnique identifier
namestringYesName of the item
descriptionstringNoOptional description
iconobjectNoOptional icon information
icon.urlstringNoURL of the icon
icon.svgstringNoSVG representation of icon
linkstringNoLink associated with item

Comment


PropertyTypeRequiredDescription
commentIdnumberYesUnique identifier for the comment pin annotation. Auto generated.
type'text' | 'voice'YesThis determines the comment content type. Default is ‘text’.
commentTextstringYesThe actual text content of the comment.
commentHtmlstringNoSame comment text but formatted in HTML.
replaceContentHtmlstringNoHTML content to replace the comment text when user accepts the comment.
replaceContentTextstringNoText content to replace the comment text when user accepts the comment.
commentVoiceUrlstringNoURL of the voice recording for the comment, if available.
fromUserYesThe user who created this comment.
toUser[]NoList of users that were @mentioned in this comment.
lastUpdatedDateNoTimestamp of when this comment was last updated. Auto generated.
editedAtanyNoTimestamp of when this comment was edited. Auto generated.
createdAtanyNoTimestamp of when this comment was created. Auto generated.
isEditedbooleanNoWhether the comment has been edited. Auto generated.
status'added' | 'updated'YesStatus of the comment indicating whether it was newly added or updated.
attachmentsAttachment[]YesList of attachments associated with the comment.
recordersRecordedData[]YesList of recorded data associated with the comment.
reactionAnnotationIdsstring[]YesList of annotation IDs for reactions to the comment.
taggedUserContactsAutocompleteUserContactReplaceData[]YesList of users that were @mentioned in this comment with UI metadata.
customListAutocompleteReplaceData[]YesList of custom list items added to the comment.
isDraftbooleanYesWhether the comment is in draft state.

AutocompleteUserContactReplaceData


PropertyTypeRequiredDescription
textstringYesThe text displayed in the comment that represents the tagged user
userIdstringYesThe user ID of the tagged user
contactUserNoThe user object of the tagged user

AutocompleteReplaceData


PropertyTypeRequiredDescription
textstringYesThe text displayed in the comment that represents the custom item
customAutocompleteItemYesThe custom item object associated with this text

AutocompleteItem


PropertyTypeRequiredDescription
idstringYesUnique identifier for the autocomplete item
namestringYesName or label of the autocomplete item
descriptionstringNoAdditional description of the autocomplete item
icon{ url?: string, svg?: string }NoIcon associated with the autocomplete item
linkstringNoOptional link associated with the autocomplete item

AutocompleteData


PropertyTypeRequiredDescription
hotkeystringYesThe hotkey or trigger for this autocomplete data
descriptionstringNoOptional description of the autocomplete data
type'custom' | 'contact' | 'group'YesThe type of autocomplete data. Default is ‘custom’
dataAutocompleteItem[]YesAn array of AutocompleteItem objects

Attachment


PropertyTypeRequiredDescription
attachmentIdnumberYesUnique identifier for the attachment. Auto-generated
namestringNoFile name of the attachment
sizenumberNoFile size of the attachment
typestringNoFile type of the attachment
urlstringNoDownload URL of the attachment
thumbnailstringNoThumbnail image in base64 format
thumbnailWithPlayIconUrlstringNoURL of the thumbnail with a play icon overlay
metadataanyNoAdditional metadata of the attachment
mimeTypeanyNoMIME type of the attachment

CommentAnnotation


PropertyTypeRequiredDescription
annotationIdstringYesUnique identifier for the comment pin annotation. Auto generated
commentsComment[]YesThe list of all comments part of this annotation
commentCategoriesCustomCategory[]YesThe list of categories that this comment pin annotation belongs to
fromUserYesThe user who created this comment pin annotation
colorstringNoColor used for the comment pin annotation
resolvedbooleanNoWhether the comment annotation is marked resolved. Deprecated
inProgressbooleanNoWhether the comment annotation is marked as in progress. Deprecated
lastUpdatedanyNoTimestamp when the comment annotation was last updated. Auto generated
createdAtanyNoTimestamp when the comment annotation was created. Auto generated
positionCursorPosition | nullNoCursor position relative to the comment annotation
locationIdnumber | nullNoUnique location id generated from provided location
locationLocation | nullNoSet location to identify user on sub document
typestringNoType of the comment annotation
selectAllContentbooleanNoIf true, sets text comment annotation on all the text content
approvedbooleanNoWhether the comment annotation is approved
statusCustomStatusYesStatus of the comment annotation. Default: CommentAnnotationStatusMap.OPEN
annotationIndexnumberNoIndex of current annotation in the list
pageInfoPageInfoNoPage information related to the comment annotation
assignedToUserNoUser to whom the comment annotation is assigned
priorityCustomPriorityNoPriority level of the comment annotation
ghostCommentGhostComment | nullNoPlaceholder for a non-existing comment
contextanyNoCustom context data provided by the user
resolvedByUserIdstringNoID of the user who resolved the comment
subscribedUsersCommentAnnotationSubscribedUsersNoUsers who explicitly subscribe to the comment
unsubscribedUsersCommentAnnotationUnsubscribedUsersNoUsers who explicitly unsubscribe to the comment
multiThreadAnnotationIdstringNoID of the multithread annotation group it belongs to, if created in multithread mode
isDraftbooleanNoIndicates if the comment annotation is in draft state
customListCustomAnnotationDropdownItem[]NoCustom list of items for the comment annotation

CommentAnnotationSubscribedUsers


PropertyTypeRequiredDescription
userIdHashstringYesThe user ID of the subscribed user
userUserYesThe user object of the subscribed user
type'manual' | 'auto'YesManual: if the user used the UI option to subscribe; Auto: When the system automatically adds the user to the subscribed list. eg: when the user creates a comment annotation

CommentAnnotationUnsubscribedUsers


PropertyTypeRequiredDescription
userIdHashstringYesThe user ID of the unsubscribed user
userUserYesThe user object of the unsubscribed user
type'manual' | 'auto'YesManual: if the user used the UI option to unsubscribe; Auto: When the system automatically removes the user from the unsubscribed list. eg: when the comment where user was tagged is deleted

CustomFilter


PropertyTypeRequiredDescription
idstringYesUnique identifier for the custom filter
colorstringYesColor associated with the custom filter
namestringYesName or label of the custom filter

CustomPriority


PropertyTypeRequiredDescription
idstringYesUnique identifier for the custom priority
colorstringYesColor associated with the custom priority
namestringYesName or label of the custom priority
lightColorstringNoLight color variant for the custom priority

CustomStatus


PropertyTypeRequiredDescription
idstringYesUnique identifier for the custom status
colorstringYesColor associated with the custom status
namestringYesName or label of the custom status
typeStatusTypeYesType of the status (default, ongoing, or terminal)
lightColorstringNoLight color for the custom status
svgstringNoRaw SVG string for the custom status
iconUrlstringNoURL to an icon image for the custom status

CustomCategory


PropertyTypeRequiredDescription
idstringYesUnique identifier for the custom category
colorstringYesColor associated with the custom category
namestringYesName or label of the custom category

CustomAnnotationDropdownData


PropertyTypeRequiredDescription
type'multi' | 'single'YesThe type of the custom annotation dropdown
placeholderstringYesThe placeholder text for the dropdown. Defaults to ‘Select’
dataCustomAnnotationDropdownItem[]YesAn array of dropdown items

CustomAnnotationDropdownItem


PropertyTypeRequiredDescription
idstringYesThe unique identifier for the dropdown item
labelstringYesThe display text for the dropdown item

Default Status Object

The default status object is defined in the CommentAnnotationStatusMap constant. It includes three predefined statuses: OPEN, IN_PROGRESS, and RESOLVED. Each status is an object with the following structure:

{
  OPEN: {
    id: 'OPEN',
    name: 'Open',
    color: '#625DF5',
    lightColor: '#E7E8FA',
    type: 'default',
    svg: `
    <svg
      width="16"
      height="16"
      viewBox="0 0 16 16"
      fill="none"
      xmlns="http://www.w3.org/2000/svg"
    >
      <path
        fill-rule="evenodd"
        clip-rule="evenodd"
        d="M8.00016 13.3333C10.9457 13.3333 13.3335 10.9455 13.3335 8.00001C13.3335 5.05449 10.9457 2.66668 8.00016 2.66668C5.05464 2.66668 2.66683 5.05449 2.66683 8.00001C2.66683 10.9455 5.05464 13.3333 8.00016 13.3333ZM8.00016 14.6667C11.6821 14.6667 14.6668 11.6819 14.6668 8.00001C14.6668 4.31811 11.6821 1.33334 8.00016 1.33334C4.31826 1.33334 1.3335 4.31811 1.3335 8.00001C1.3335 11.6819 4.31826 14.6667 8.00016 14.6667Z"
        fill="currentColor"
      />
    </svg>
    `
  },
  IN_PROGRESS: {
    id: 'IN_PROGRESS',
    name: 'In Progress',
    color: '#ECB000',
    lightColor: '#FEFCEA',
    type: 'ongoing',
    svg: `
    <svg
      width="16"
      height="16"
      viewBox="0 0 16 16"
      fill="none"
      xmlns="http://www.w3.org/2000/svg"
    >
      <path
        fill-rule="evenodd"
        clip-rule="evenodd"
        d="M8.00016 13.3333C10.9457 13.3333 13.3335 10.9455 13.3335 8.00001C13.3335 5.05449 10.9457 2.66668 8.00016 2.66668C5.05464 2.66668 2.66683 5.05449 2.66683 8.00001C2.66683 10.9455 5.05464 13.3333 8.00016 13.3333ZM8.00016 14.6667C11.6821 14.6667 14.6668 11.6819 14.6668 8.00001C14.6668 4.31811 11.6821 1.33334 8.00016 1.33334C4.31826 1.33334 1.3335 4.31811 1.3335 8.00001C1.3335 11.6819 4.31826 14.6667 8.00016 14.6667Z"
        fill="currentColor"
      />
      <path
        fill-rule="evenodd"
        clip-rule="evenodd"
        d="M8.00016 4C8.36835 4 8.66683 4.29848 8.66683 4.66667V7.72386L10.1382 9.19526C10.3986 9.45561 10.3986 9.87772 10.1382 10.1381C9.87788 10.3984 9.45577 10.3984 9.19542 10.1381L7.52876 8.4714C7.40373 8.34638 7.3335 8.17681 7.3335 8V4.66667C7.3335 4.29848 7.63197 4 8.00016 4Z"
        fill="currentColor"
      />
    </svg>
    `
  },
  RESOLVED: {
    id: 'RESOLVED',
    name: 'Resolved',
    color: '#00C48C',
    lightColor: '#E7FAF2',
    type: 'terminal',
    svg: `
    <svg
      width="17"
      height="16"
      viewBox="0 0 17 16"
      fill="none"
      xmlns="http://www.w3.org/2000/svg"
    >
      <path
        fill-rule="evenodd"
        clip-rule="evenodd"
        d="M8.50016 13.3333C11.4457 13.3333 13.8335 10.9455 13.8335 8.00001C13.8335 5.05449 11.4457 2.66668 8.50016 2.66668C5.55464 2.66668 3.16683 5.05449 3.16683 8.00001C3.16683 10.9455 5.55464 13.3333 8.50016 13.3333ZM8.50016 14.6667C12.1821 14.6667 15.1668 11.6819 15.1668 8.00001C15.1668 4.31811 12.1821 1.33334 8.50016 1.33334C4.81826 1.33334 1.8335 4.31811 1.8335 8.00001C1.8335 11.6819 4.81826 14.6667 8.50016 14.6667Z"
        fill="currentColor"
      />
      <path
        d="M5.8335 8L7.8335 10L11.8335 6"
        class="checkmark"
        stroke="currentColor"
        stroke-width="1.2"
        stroke-miterlimit="10"
        stroke-linecap="round"
        stroke-linejoin="round"
      />
    </svg>
    `
  },
}

CommentSelectionChangeData


PropertyTypeRequiredDescription
selectedbooleanYesWhether a comment is selected
annotationCommentAnnotationYesObject data of the selected annotation

CommentSidebarFilterConfig


PropertyTypeRequiredDescription
locationFilterTypeConfigNoConfiguration for the location filter type.
peopleFilterTypeConfigNoConfiguration for the people filter type.
priorityFilterTypeConfigNoConfiguration for the priority filter type.
categoryFilterTypeConfigNoConfiguration for the category filter type.
commentTypeFilterTypeConfigNoConfiguration for the comment type filter.
versionFilterTypeConfigNoConfiguration for the version filter type.

FilterTypeConfig


PropertyTypeRequiredDescription
namestringNoThe name of the filter type
enablebooleanNoEnables or disables the filter type
multiSelectionbooleanNoAllows multiple selections if set to true
enableGroupingbooleanNoEnables grouping within the filter type if set to true

CommentSidebarGroupConfig


PropertyTypeRequiredDescription
enablebooleanNoEnables or disables grouping
namestringNoThe name of the group

CommentSidebarFilters


PropertyTypeRequiredDescription
locationLocation[]NoArray of Location objects for the location filters
peopleObject[]NoArray of objects with userId, email, and name for people filters
prioritystring[]NoArray of priority filters
statusstring[]NoArray of status filters
categorystring[]NoArray of category filters
versionObject[]NoArray of objects with id and optional name for version filters

CommentSidebarCustomActionEventData


PropertyTypeRequiredDescription
actionsCommentSidebarCustomActionsStateYesMap of custom action button IDs and their states
dataCommentAnnotation[]YesList of all unfiltered CommentAnnotations available in the comments sidebar
unreadDataMap{ [commentAnnotationId: string]: number }YesMap of comment annotation id and the number of unread comments it has
systemFilteredDataCommentAnnotation[]YesList of filtered CommentAnnotations based on system filters

CommentSidebarCustomActionsState


PropertyTypeRequiredDescription
[key: string]booleanYesCustom Action Button ID you defined in the wireframe

CommentSidebarData


PropertyTypeRequiredDescription
groupIdstringNoID of the group. Defaults to ‘others’
groupNamestringNoName of the group. Defaults to ‘Others’
isExpandedbooleanNoWhether the group is expanded. Defaults to true
annotationsCommentAnnotation[]YesList of CommentAnnotations in the group

Options


PropertyTypeRequiredDescription
groupingbooleanNoWhether to group the data. Defaults to true

Config

PropertyTypeRequiredDescription
urlAllowListstring[]NoRestricts Velt features to specific pages by specifying partial URL strings.
featureAllowListFeatureType[]NoOnly allows the provided Velt features to run.
userPlanAllowListstring[]NoRestricts Velt features to specific user plans.
userIdAllowListstring[]NoRestricts Velt features to specific users.
usePrefersColorSchemebooleanNoIf set to true, listens to changes on the prefers-color-scheme media query to set the global theme of Velt components.

ContactListScopeForOrganizationUsers Enum


Enum NameEvent TypeDescription
ALLallShow all the contacts
ORGANIZATIONorganizationShow organization contacts.
ORGANIZATION_USER_GROUPorganizationUserGroupShow organization user groups.
DOCUMENTdocumentShow document contacts.

CursorUser


PropertyTypeRequiredDescription
userIdstringYesUnique user identifier that you use to identify your user.
namestringNoYour user’s full name. Default: Random avatar name.
emailstringNoYour user’s email address.
photoUrlstringNoYour user’s display picture URL. Default: Random avatar image.
commentstringNoShort comment that user can add to their live cursor.
onlineStatusstringYesUser’s online status (active, inactive, offline). Auto generated.
colorstringNoA random color assigned to the user for the session, used on avatar border/live cursor.
timestampanyYesServer Timestamp.
typestringNoUser type.
locationIdnumber | nullNoUnique location id from provided location.
locationLocation | nullNoLocation to identify user on sub document.
positionCursorPosition | nullNoUser’s cursor position on their screen.
isReadOnlybooleanNoIndicates if user is readonly.
isAnonymousbooleanNoIndicates if user is anonymous and can only view comments.

CustomCss


PropertyTypeRequiredDescription
type’link’ | ‘styles’YesThe type of custom CSS, either a link to a CSS file or inline styles.
valuestringYesThe value of the custom CSS, either a URL or CSS styles.

CustomFilter


PropertyTypeRequiredDescription
idstringYesUnique identifier for the custom filter.
colorstringYesColor associated with the custom filter.
namestringYesName or label of the custom filter.

CustomPriority


PropertyTypeRequiredDescription
idstringYesUnique identifier for the custom priority.
colorstringYesColor associated with the custom priority.
namestringYesName or label of the custom priority.
lightColorstringNoLight color variant for the custom priority.

CustomStatus


PropertyTypeRequiredDescription
idstringYesUnique identifier for the custom status.
colorstringYesColor associated with the custom status.
namestringYesName or label of the custom status.
typeStatusTypeYesType of the status (default, ongoing, or terminal).
lightColorstringNoLight color for the custom status.
svgstringNoRaw SVG string for the custom status.
iconUrlstringNoURL to an icon image for the custom status.

CustomCategory


PropertyTypeRequiredDescription
idstringYesUnique identifier for the custom category.
colorstringYesColor associated with the custom category.
namestringYesName or label of the custom category.

DocumentMetadata


PropertyTypeRequiredDescription
clientDocumentIdstringYesThe document ID set by you.
documentIdstringYesThe document ID set by the SDK.
documentNamestringYesName of the document
pageInfoPageInfoYesAdditional information about the document’s page

EditorAccessTimer


PropertyTypeRequiredDescription
state'idle' | 'inProgress' | 'completed'YesThe state of the Editor Access Request timer
durationLeftnumberNoDuration left for the editor access timer to be completed.

Features


PropertyTypeRequiredDescription
AREA'area'NoArea feature for drawing areas/rectangles
ARROW'arrow'NoArrow feature for drawing arrows
AUDIO_HUDDLE'audioHuddle'NoAudio huddle feature for voice conversations
COMMENT'comment'NoComment feature for adding comments
CURSOR'cursor'NoCursor feature for showing user cursors
HUDDLE'huddle'NoHuddle feature for video conversations
LIVE_STATE_SYNC'liveStateSync'NoLive state sync feature
PRESENCE'presence'NoPresence feature for showing online users
TAG'tag'NoTag feature for adding tags
RECORDER'recorder'NoRecorder feature for recording sessions
REWRITER'rewriter'NoRewriter feature for text rewriting
LIVE_SELECTION'liveSelection'NoLive selection feature for showing user selections

FlockOptions


PropertyTypeRequiredDescription
useHistoryAPIbooleanYesIndicates whether the application should use the HTML5 History API for navigation
onNavigate(url: PageInfo) => voidNoA callback function that is called when navigation occurs. It takes a PageInfo object as its argument, which contains details about the new page
disableDefaultNavigationbooleanYesIf true, the application’s default navigation handling is disabled, perhaps to be managed manually or by another system
darkModebooleanYesA flag indicating whether the application should display in dark mode, a display preference that may be more comfortable for users in low-light conditions

LiveStateData


PropertyTypeRequiredDescription
idstringYesA unique identifier likely used for quick reference and indexing. It’s an MD5 hash of liveStateDataId
liveStateDataIdstringYesA unique identifier for the state data being synced
datastring | number | boolean | JSONYesThe actual data you want to synchronize across clients
lastUpdatedanyYesA timestamp or similar data indicating the last time the state data was updated
updatedByUserYesThe user who last updated the state data
tabIdstring | nullNoAn identifier that could be used to associate the state data with a specific tab or instance

SingleEditorLiveStateData


PropertyTypeRequiredDescription
editorUser | nullNoThe user who is currently editing, if any
requestEditorAccessObject | nullNoDetails about a request for editor access
tabIdstring | nullNoThe identifier of the tab, if applicable

RequestEditorAccess


PropertyTypeRequiredDescription
userUserYesThe user requesting editor access
requestedAtanyYesThe timestamp when the access was requested
status'pending' | 'accepted' | 'rejected' | 'cancelled'YesThe status of the access request
editorAccessTimeoutnumberYesTimeout duration for the editor access
tabIdstring | nullNoThe identifier of the tab related to the access request

SingleEditorConfig


PropertyTypeRequiredDescription
customModebooleanNoEnables/disables custom mode. In custom mode, input elements are not disabled for the viewer
singleTabEditorbooleanYesEnables/disables editor mode on a single tab only

UserEditorAccess


PropertyTypeRequiredDescription
isEditorbooleanNoIndicates whether the user has editor privileges
isEditorOnCurrentTabbooleanNoIndicates whether the user is an editor on the current tab

LiveStateDataMap


PropertyTypeRequiredDescription
custom{ [liveStateDataId: string]: LiveStateData; }NoMap of all unique LiveStateData set by you on the given document.
defaultObjectNoMap of all unique LiveStateData set by the default editor on the given document.
default.singleEditorSingleEditorLiveStateDataNoPart of default, representing single editor live state data.
default.autoSyncStateObjectPart of default, representing auto synchronization state.
default.autoSyncState.currentLiveStateDataNoPart of autoSyncState, current live state data.
default.autoSyncState.history[liveStateDataId: string]: LiveStateDataNoPart of autoSyncState, map of historical live state data keyed by live state data ID.

LiveStateData


PropertyTypeRequiredDescription
idstringYesUnique identifier for the live state data
locationNamestringYesName of the location
versionVersionYesVersion information
[key: string]anyYesAdditional dynamic properties

Version


PropertyTypeRequiredDescription
idstringYesUnique identifier for the version
namestringYesName of the version

LocationMetadata


PropertyTypeRequiredDescription
locationIdnumberNoUnique location id generated from client location information
locationLocation | nullNoLocation object provided by a client

MediaPreviewConfig


PropertyTypeRequiredDescription
audioObjectNoConfiguration for audio preview
audio.enabledbooleanNoWhether audio preview is enabled
audio.deviceIdstringNoDevice ID for audio input
videoObjectNoConfiguration for video preview
video.enabledbooleanNoWhether video preview is enabled
video.deviceIdstringNoDevice ID for video input
screenObjectNoConfiguration for screen preview
screen.enabledbooleanNoWhether screen preview is enabled
screen.streamMediaStreamNoMediaStream for screen sharing

Notification


PropertyTypeRequiredDescription
idstringYesNotification ID
notificationSourcestringYesNotification source. e.g., ‘comment’, ‘custom’, etc.
actionTypestringNoAction that triggered the notification. e.g., ‘added’
isUnreadbooleanNoWhether the notification is unread for the user
actionUserUserNoThe user who triggered the action
timestampnumberNoTimestamp of the notification
displayHeadlineMessagestringNoThe headline message of the notification
displayBodyMessagestringNoThe body message of the notification
displayHeadlineMessageTemplatestringNoThe template of the headline message
displayHeadlineMessageTemplateDataobjectNoThe data used to fill the headline message template
forYoubooleanNoWhether the notification is for the current logged-in user
targetAnnotationIdstringNoID of the annotation that triggered the notification
notificationSourceDataanyNoThe data of the notification source. e.g., CommentAnnotation
metadataNotificationMetadataNoMetadata for the current notification. e.g., documentId
notifyUsers{ [emailHash: string]: boolean }NoMap of email hashes to boolean values indicating whether to notify the user
notifyUsersByUserId{ [userIdHash: string]: boolean }NoMap of user ID hashes to boolean values indicating whether to notify the user

displayHeadlineMessageTemplateData


PropertyTypeRequiredDescription
actionUserUserNoThe user who performed the action
recipientUserUserNoThe user receiving the notification
actionMessagestringNoThe message describing the action
projectstringNoThe project related to the notification
[key: string]anyNoAny additional custom properties

NotificationMetadata


PropertyTypeRequiredDescription
apiKeystringNoYour API key
clientOrganizationIdstringNoThe organization ID that you set
organizationIdstringNoThe organization ID generated by us
clientDocumentIdstringNoThe document ID that you set
documentIdstringNoThe document ID generated by us
locationIdnumberNoThe unique location ID
locationLocationNoThe location object
documentMetadataObjectNoContains the complete document metadata object
organizationMetadataObjectNoContains the complete organization metadata object

PageInfo


PropertyTypeRequiredDescription
urlstringNoURL of the webpage
pathstringNoPath of the webpage excluding base url
baseUrlstringNoBase URL (domain) of a webpage
titlestringNoTitle of the webpage
commentUrlstringNoReference url of a comment annotation
recorderUrlstringNoReference url of a recorder annotation
screenWidthnumberNoUser’s screen width. Auto generated.

PresenceUser


PropertyTypeRequiredDescription
userIdstringYesUnique user identifier
namestringNoUser’s full name (Default: Random avatar name)
emailstringNoUser’s email address
photoUrlstringNoUser’s display picture URL (Default: Random avatar image)
onlineStatusstringYesOnline status (active, inactive, offline) (Auto generated)
colorstringNoAssigned color for the user (Auto generated)
timestampanyYesServer Timestamp
typestringNoUser type
selectionsanyNoUser selections
documentParamsIdnumber | nullNoDeprecated unique document params ID
documentParamsobject | nullNoDeprecated document params
locationIdnumber | nullNoUnique location ID
locationLocation | nullNoLocation of user on sub document
isReadOnlybooleanNoIndicates if user is readonly
isAnonymousbooleanNoIf user can only view comments (Anonymous)
pageInfoPageInfoYesInformation about the page

RecorderConfig


PropertyTypeRequiredDescription
type{ audio?: boolean, video?: boolean, screen?: boolean }YesTypes of media to be recorded
recorderOptionsMediaRecorderOptionsNoOptions for the media recorder

RecordedData


PropertyTypeRequiredDescription
idstringYesAnnotation ID of recorder annotation
tagstringYesRecorder player tag containing recorder annotation id which can be added anywhere on the DOM
typestringYesType of recorded data. Possible values are ‘audio’, ‘video’, and ‘screen’
thumbnailUrlstringNoURL of the thumbnail image for the recorded data
thumbnailWithPlayIconUrlstringNoURL of the thumbnail image with a play icon overlay
videoUrlstringNoURL of the recorded video
audioUrlstringNoURL of the recorded audio
videoPlayerUrlstringNoURL of the hosted website to open video in a new tab
getThumbnailTagfunctionYesA method that returns an HTML string for displaying the thumbnail with a link to the video player

getThumbnailTag Method

The getThumbnailTag method takes an optional url parameter and returns an HTML string. It creates an anchor tag linking to the videoPlayerUrl and embeds an image tag using either the provided url, thumbnailWithPlayIconUrl, or thumbnailUrl (in that order of preference).

RecorderAnnotation


PropertyTypeRequiredDescription
annotationIdStringYesUnique identifier for the recorder annotation, automatically generated.
fromUserYesThe user who created the recorder annotation.
colorStringNoColor used for the annotation.
lastUpdatedAnyNoTimestamp of the last update, automatically generated.
locationIdNumberNoUnique location ID from provided location.
locationLocationNoLocation to identify user on sub document.
typeStringNoType of annotation.
recordingTypeStringYesType of recording for the annotation.
modeStringYesMode of the recorder annotation, ‘floating’ or ‘thread’.
approvedBooleanNoIndicates if the annotation is approved.
attachmentAttachmentNoAttachment for recorded media. Deprecated.
attachmentsAttachment[]YesList of attachments for the annotation.
annotationIndexNumberNoIndex of the annotation in a list.
pageInfoPageInfoNoInformation about the page where the annotation is made.
recordedTimeObjectNoRecorded time details.
transcriptionTranscriptionNoTranscription of the recorded media.

RecorderDataTranscriptSegment


PropertyTypeRequiredDescription
startTimeStringYesStart time of the transcription segment
endTimeStringYesEnd time of the transcription segment
startTimeInSecondsNumberYesStart time of the segment in seconds
endTimeInSecondsNumberYesEnd time of the segment in seconds
textStringYesTranscribed text content of the segment

RecorderDataTranscription


PropertyTypeRequiredDescription
transcriptSegmentsRecorderDataTranscriptSegment[]NoArray of transcription segments
vttFileUrlStringNoURL to the VTT format transcription file
contentSummaryStringNoSummary of the transcribed content

RecorderDataAsset


PropertyTypeRequiredDescription
urlStringYesURL to the recorded media
mimeTypeStringNoMIME type of the recorded media
fileNameStringNoName of the recorded file
fileSizeInBytesNumberNoSize of the recorded file in bytes
fileFormat’mp3’ | ‘mp4’ | ‘webm’ | StringNoThe format/extension of the file
thumbnailUrlStringNoURL to the thumbnail image

RecorderData


PropertyTypeRequiredDescription
assetsRecorderDataAsset[]YesArray of recording assets with metadata
transcriptionRecorderDataTranscriptionYesTranscription data including segments and summary

RewriterAnnotation


PropertyTypeRequiredDescription
annotationIdStringYesUnique identifier for the rewriter annotation, automatically generated.
fromUserYesThe user who created this rewriter annotation.
colorStringNoColor used for the rewriter annotation.
lastUpdatedAnyNoTimestamp when the rewriter annotation was last updated, automatically generated.
documentParamsIdNumber | nullNoUnique document params ID, deprecated, use locationId instead.
documentParamsLocation | nullNoDocument params to identify user on sub document, deprecated, use location instead.
locationIdNumber | nullNoUnique location ID generated from provided location.
locationLocation | nullNoSet location to identify user on sub document.
typeStringNoType of annotation.
rewriterTypeStringYesType of rewriter for the annotation, either ‘generic’ or ‘copywriter’.
targetTextRangeTargetTextRange | nullNoSelected text range of rewriter annotation.
annotationIndexNumberNoIndex of the current annotation in the list of annotations.
pageInfoPageInfoNoInformation about the page where the annotation is made.
selectedRewriterOptionStringNoSelected rewriter option used in the annotation.

SyncVideoPlayer


PropertyTypeRequiredDescription
playerIdStringNoThe identifier for the video player instance.
srcStringNoThe source URL of the video.
sourcesString[]NoAn array of source URLs for the video.
lastUpdatedNumberNoThe timestamp of when the player was last updated.
lastUpdatedByUserNoThe user who last updated the player.
lastUpdatedEventStringNoThe name of the event that triggered the last update.
playerStateSyncVideoPlayerStateYesThe state object of the video player.

SyncVideoPlayerState


PropertyTypeRequiredDescription
playingBooleanNoIndicates if the video is currently playing.
currentTimeNumberNoThe current playback time of the video.
mutedBooleanNoIndicates if the video is muted.
volumeNumberNoThe volume level of the video.
speedNumberNoThe playback rate of the video.

Toast


PropertyTypeRequiredDefault ValueDescription
idNumberNoNoneA unique identifier for the toast notification.
messageStringYesNoneThe message content displayed in the toast notification.
type’success’ | ‘error’YesNoneThe type of toast notification, indicating success or error.
durationNumberNo3000The length of time the toast notification is displayed, in milliseconds.

Transcription


PropertyTypeRequiredDescription
fromUserYesThe user who created the transcription.
lastUpdatedNumberNoTimestamp of when the transcription was last updated.
transcriptedTextStringNoThe text that has been transcribed.

User


PropertyTypeRequiredDescription
userIdstringYesUnique user identifier used to identify your user.
namestringNoThe full name of your user. Defaults to a random avatar name if not provided.
photoUrlstringNoThe display picture URL of your user. Defaults to a random avatar image if not provided.
emailstringNoRequired for sending email or Slack notifications to users about comments and mentions.
planstringNoThe product plan the user is on.
organizationIdstringNoAutogenerated organizationId based on the organizationId you provide.
clientorganizationIdstringNoThe original organizationId provided by you.
colorstringNoA color assigned to the user for the current session, used for avatar border, live cursor, selection etc.
textColorstringNoUsed in the text color of the user’s intial when photoUrl is not present.
typestringNoThe type of user.
isReadOnlybooleanNoIndicates if the user has read-only access.
isAnonymousbooleanNoIndicates if the user is anonymous and can only view comments.
isGuestbooleanNoIndicates if the user is a guest.
isAdminbooleanNoUse this to set the user as an admin. You also need to ensure that the jwt token you generate also has this property set to true.
groupIdstringNo[DEPRECATED] A domain name or identifier used to cluster a group of users who work together.
clientGroupIdstringNo[DEPRECATED] The original groupId provided by the user.
initialstringNoFirst letter of the user’s first name.

UserOptions


PropertyTypeRequiredDescription
replaceContactsbooleanNoIf set to true, it will replace the user’s personal and group contacts with the ones provided.
authTokenstringNoThe authentication token of the user.

UserContactSelectedPayload


PropertyTypeRequiredDescription
contactUserContactYesSelected user contact details.
isOrganizationContactbooleanYesIs user part of organization contact.
isDocumentContactbooleanYesIs user part of document contact.
documentAccessTypestringYesDocument access type.

UserContactUs


PropertyTypeRequiredDescription
idstringNoUnique identifier of the feedback.
apiKeystring | nullNoAPI key of the client.
emailIdstringNoEmail address of the feedback provider.
messagestringNoContent of the user’s feedback message.
fromUser | nullNoUser who submitted the feedback.
lastUpdatedanyNoTimestamp of when the feedback was last updated.
metadataDocumentMetadata | nullNoMetadata associated with the document.
pageInfoPageInfoNoInformation about the user’s current page.

UserFeedback


PropertyTypeRequiredDescription
idstringNoUnique identifier of the feedback.
apiKeystring | nullNoAPI key of the client.
emailIdstringNoEmail address of the feedback provider.
messagestringNoContent of the user’s feedback message.
fromUser | nullNoUser who submitted the feedback.
lastUpdatedanyNoTimestamp of when the feedback was last updated.
metadataDocumentMetadata | nullNoMetadata associated with the document.
pageInfoPageInfoNoInformation about the user’s current page.

ServerConnectionState


PropertyTypeRequiredDescription
ONLINEstringYesServer connection is online and active. Value: ‘online’
OFFLINEstringYesServer connection is offline. Value: ‘offline’
PENDING_INITstringYesServer connection initialization is pending. Value: ‘pendingInit’
PENDING_DATAstringYesServer is waiting for data. Value: ‘pendingData’

VeltEventMetadata


PropertyTypeRequiredDescription
organizationMetadataOrganizationMetadata | nullNoOrganization metadata
documentMetadataDocumentMetadata | nullNoDocument metadata
locationLocation | nullNoLocation information

VeltButtonContext


PropertyTypeRequiredDescription
type'button' | 'button-toggle' | 'multi-select' | 'single-select'NoType of button (default: ‘button’)
groupIdstringNoID of the button group
selectionsVeltButtonSelectionMapNoMap of button selections
clickedButtonIdstringNoID of the clicked button

VeltButtonSelectionMap


PropertyTypeRequiredDescription
[groupId: string]{ [buttonId: string]: boolean }NoMap of button selections for a group

DocumentOptions


PropertyTypeRequiredDescription
documentNamestringNoThe name of the document.
organizationIdstringNoThe organizationId of the document. Use this if you are accessing document from organization different than the one you are logged in to.