DeepLinking - Advanced
Info:
ScreenPal’s deeplinking (workflow) functionality can be extended for more complex use cases involving JSON-based project setup and customized upload workflows.
Ingesting via JSON Workflows
Section titled “Ingesting via JSON Workflows”In addition to the standard editVideo-https://... pattern (where https://... points to an .mp4), advanced ingesting supports the format:
editVideo-JSON-https://...Where https://... points to a JSON endpoint returning a full project specification.
Example JSON:
{ "title": "Title of video Project",
"description": "Optional default description for this project"
"video": { "url": "https://...", "type": "mp4" },
"captions": [ { "id": "YOUR_CAPTION_ID", "title": "YOUR_CAPTION_TITLE", "type": "vtt", "url": "https://..." } ]}Field Requirements:
title– Required. Title to assign the video project.video.url– Required. Direct link to a video file. MIME type must bevideo/mp4.video.type– Optional. Defaults to h264mp4. Also supportswebmand h264movdescription- Optional. If provided will be used as the default value for the description in the upload data for the project.captions– Optional. Array of caption tracks.id- Unique id for each captiontitle- String shown to the user in caption list for them to edit the captionstype- must be eithervttorsrt.url- Url to download the caption file
————————————————————
Uploading with Advanced Metadata
Section titled “Uploading with Advanced Metadata”ScreenPal’s editor uploads by making a POST request to basicupload.request.url, passing:
titledescriptionExtended Parameters
Section titled “Extended Parameters”captionLanguageIds– Comma-separated list of caption Ids used in the editor either provided from the initial workflow launch OR created by the user in the app. Any captions created within the app will have ID based on language selected e.g.:
YOUR_CAPTION_ID,en-US,jp-JP————————————————————
Response Handling
Section titled “Response Handling”If the server responds with a single line of text, it will be treated as the direct video upload URL (legacy behavior).
To support advanced uploading, respond with Content-Type: application/json and use the following format:
{ "video": { "url": "https://..." }, "captions": [ { "id": "YOUR_CAPTION_ID", "type": "vtt", "url": "https://..." }, { "id": "en-US", "type": "vtt", "url": "https://..." } ]}Upload Response Requirements:
video.url– Required. URL toPUT/POSTthe.mp4file.captions– Optional. URLs to upload captions based on thecaptionLanguageIdsin the first POST request.type– Optional."vtt"or"srt". Defaults to"vtt"if omitted.