Solution Builder API

Basic Uploader Properties

55min

Overview

For background information, see Basic Uploader JavaScript Settings.

Below is a list of properties that you may configure from your Basic Uploader JavaScript file.

Basic Uploader Properties



basicupload.failed.message

OPTIONAL The message displayed if the upload fails.

JS



basicupload.offer.savevideo

OPTIONAL Displays the Save As Video File UI to allow the user to save their recording locally to a file.

JS



basicupload.launch.event.url

OPTIONAL This specifies a URL that is opened by ScreenPal each time it is launched. See Solution Builder Launch Event for more information.

If this property is not overridden, then its default value is used, which is shown in the example code below. You may override it with your own URL.

JS



basicupload.panel.button.title

OPTIONAL The text for the button that starts the upload.

JS



basicupload.panel.input.description.label

OPTIONAL The text for the input description field. Also see basicupload.panel.input.description.required and basicupload.panel.input.description.show.

JS



basicupload.panel.input.description.required

OPTIONAL Specifies if the Description is optional or required to be input by the user before the "Upload" button will be enabled. Also see basicupload.panel.input.description.label and basicupload.panel.input.description.show.

JS



basicupload.panel.input.description.required.message

OPTIONAL The message displayed to the user to inform them that the Description field is required to be entered before the "Upload" button will be enabled. Also see basicupload.panel.input.description.label, basicupload.panel.input.description.required, and basicupload.panel.input.description.show.

JS



basicupload.panel.input.description.show

OPTIONAL Specifies if the Description field is displayed or not. Also see basicupload.panel.input.description.label and basicupload.panel.input.description.required.

JS



basicupload.panel.input.title.label

JS



basicupload.panel.input.title.required

OPTIONAL Specifies if the Title is optional or required to be input by the user before the "upload" button will be enabled. Also see basicupload.panel.input.title.label, basicupload.panel.input.title.required.message, and basicupload.panel.input.title.show

JS



basicupload.panel.input.title.required.message

OPTIONAL The message displayed to the user to inform them that the Title field is required to be entered before the "Upload" button will be enabled. Also see basicupload.panel.input.title.label, basicupload.panel.input.title.required, and basicupload.panel.input.title.show.

JS



basicupload.panel.input.title.show

OPTIONAL Specifies if the Title field is displayed or not. Also see basicupload.panel.input.title.label, basicupload.panel.input.title.required, and basicupload.panel.input.title.required.message.

JS



basicupload.panel.message

OPTIONAL The text to show at the top of the Upload UI panel.

JS



basicupload.panel.title

OPTIONAL The text to show as the title for the Upload UI panel.

JS



basicupload.panel.input.choose-replace.show

OPTIONAL Displays a checkbox in the upload UI that lets the user choose whether to replace an existing video or upload a new one.

This checkbox is only meaningful when combined with the basicupload.session.data property.

Behavior

  • If basicupload.panel.input.choose-replace.show is set to "true" the upload UI will show a checkbox labeled something like "Replace current upload".
    • The checkbox has additional show/hide considerations as well.
      • If the video has previously been published, then the checkbox will show on subsequent attempts to publish that project.
      • If an editvideo-url workflow is used on initial launch of a project, then the replace checkbox will also show on first attempt to publish.
  • The checkbox state is remembered across launches within the same project.
JS


Example Workflow

  1. You launch ScreenPal with:

    JS
    
  2. On upload, the user is prompted to enter a title and description and is given the option to Replace current upload via a checkbox.
  3. If checked, the upload request might look like:
Text



basicupload.post.extraheaders.1

OPTIONAL This is useful for when you want to upload to AWS S3 and need to set the access control list to allow the uploaded video to be read by anyone. Note that you may add more than one extra header by adding another entry with the number incremented, such as basicupload.post.extraheaders.2.

JS



basicupload.post.maxwidth

OPTIONAL To reduce the size of videos that are posted to your servers, you may specify a video pixel width limit. Videos that are smaller than that will not be altered.

JS



basicupload.post.method

OPTIONAL This is useful for when you want to upload to AWS S3 and need to set the post method to PUT.

JS



basicupload.preview.title

OPTIONAL The text to show for the title during video preview.

JS



basicupload.request.url

REQUIRED Specifies the URL to use when uploading the video.

If you are also using basicupload.success.url (success callback property), then use a URL parameter like id=myid to link this call to basicupload.success.url.

The URL used to POST the mp4 video file. If you do not use the title and description options, then a GET request is used instead.

JS



basicupload.session.data

OPTIONAL This property allows you to pass in custom metadata (such as the URL or identifier of the original video) that gets stored in the associated Video Project and later returned as part of the video upload request. It enables functionality such as "Replace Existing Upload" when editing previously hosted videos.

Purpose

This property supports workflows like editVideo-URL, where a user downloads and edits a previously uploaded video. Including this property ensures the backend can track and optionally replace the original video when the user re-uploads it.

The value of basicupload.session.data is included in the POST request to basicupload.request.url under the key session-data, along with other form fields such as title and description.

JS


Persistence Across Sessions

If the user records a video but does not immediately upload it, the session data will be saved to the Video Project. When the video is uploaded later—either from the Project Manager or editor—the session-data is preserved and included in the upload request.



basicupload.site.name

REQUIRED The text to display while a video is uploading.

JS



basicupload.success.message

OPTIONAL The text to display when an upload is successful.

JS



basicupload.success.showlink

OPTIONAL Optionally display a URL to the user that accesses the successfully uploaded video. The URL is from the basicupload.success.url property.

JS



basicupload.success.url

OPTIONAL The URL optionally shown for accessing a successfully uploaded video. Also see basicupload.success.showlink.

JS



basicupload.virtualbackground.enabled

OPTIONAL You may choose to enable the virtual background feature to support blur and background replacement. If this property is omitted, the default state will be enabled.

  • If ScreenPal is hosting your files (jars, installers, etc.) then simply use true,false, or omit the property accordingly (if you want it enabled).
  • If YOU are hosting the files, and you have this set to true, or have the property omitted, then you will need to ensure you are also hosting the following files:
  • https://s3.amazonaws.com/files.screencast-o-matic.com/jars/som-native-cv-win64-0.1.3.zip
  • https://s3.amazonaws.com/files.screencast-o-matic.com/jars/som-native-cv-osx64-0.1.3.zip
  • https://s3.amazonaws.com/files.screencast-o-matic.com/jars/som-native-cv-aarch64-0.1.3.zip
JS



locale

OPTIONAL The locale (language) to use in the ScreenPal Application.

Value

Language

de

German

en

English

es

Spanish

fr

French

it

Italian

ja

Japanese

pt_br

Portuguese (Brasil)

zh

Chinese



JS



som.*.app.content.subdirectory

REQUIRED This is the subdirectory where your user's recordings will be stored. For example,"C:\Users\[UserName]\Screen Recorder\Recordings" and "C:\Users\[UserName]\Screen Recorder\Screenshots", if you set the value to "Screen Recorder".

JS



som.*.app.drawandzoom.enabled

OPTIONAL Optionally show the Show Draw & Zoom Controls button on the ScreenPal Recorder.

JS



som.*.app.editing.enabled

OPTIONAL Optionally show the Edit Video button on the Upload UI panel.

JS



som.*.app.frame.title

REQUIRED This is the title shown on the window for the application.

JS



workflow

OPTIONAL A Workflow, also known as deep-linking, is a ScreenPal feature that allows a URL to specify how ScreenPal should open. For example, adding &workflow=openVideoManager to a ScreenPal launching URL instructs ScreenPal to start up and then run the openVideoManagerWorkflow, which tells ScreenPal to show the Library Manager with the Videos Tab selected.

For more information see Deep Linking - Workflows.