Shotstack is a cloud-based platform that enables developers, marketers, and designers to automate the generation of videos, images, and audio at scale using a RESTful API.
Shotstack is a cloud-based platform that enables developers, marketers, and designers to automate the generation of videos, images, and audio at scale using a RESTful API. On Nagent, Shotstack is exposed as a fully-configurable video & audio integration that any agent can call — 24 actions, and API key authentication. No code is required to wire Shotstack into your workflow — connect it once via the External Integrations panel and reuse it across every agent you build.
Agent builders use Shotstack to automate the kinds of tasks video & audio teams previously handled manually. Concrete examples — each one is a single agent step in Nagent — include:
Every action and trigger is paired with a structured input/output schema (visible in the sections below), so when you wire Shotstack into Helix — our agentic agent builder — the editor knows exactly what each step expects and produces. Configure once, deploy anywhere across your Nagent agents.
Every operation an agent can call against Shotstack, with input parameters and output schema. Drop these into any step of an agent built in Helix.
SHOTSTACK_CREATE_TEMPLATETool to create a new template for video editing. Use when you want to save a reusable timeline configuration as a template. Template changes do not retroactively affect past renders.
Input parameters
A name for the template (required by the API).
Output settings for video generation. Mismatched `format`, `aspectRatio`, or `resolution` relative to source media dimensions can cause letterboxing or playback issues.
Flag to save as template. Defaults to true.
Timeline definition describing the video sequence and all assets. Must conform to Shotstack's JSON schema (valid tracks, clips, asset types); malformed structures cause rejection. All asset source URLs must be publicly reachable and non-expiring.
A short description of the template.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SHOTSTACK_CREATE_TEMPLATE2Tool to save an Edit as a re-usable template. Templates can be retrieved and modified before rendering. Use when you want to create a template with merge fields for dynamic content.
Input parameters
The template name
API environment version: 'stage' for sandbox testing or 'v1' for production
Template definition containing timeline and output configuration
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SHOTSTACK_DELETE_INGESTED_MEDIATool to delete an ingested media asset. Use when you've confirmed the ingest ID and need to remove the file from Shotstack storage.
Input parameters
Unique identifier of the ingested media asset to delete.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SHOTSTACK_DELETE_TEMPLATE2Tool to delete a specific Shotstack template by its ID. Use when you need to remove a template permanently.
Input parameters
The unique identifier of the template to delete in UUID format
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SHOTSTACK_DELETE_WORKFLOWTool to delete a specific Shotstack workflow. Use when you need to permanently remove a workflow after confirming its ID.
Input parameters
Unique identifier of the workflow to delete
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SHOTSTACK_FETCH_SOURCETool to fetch a remote media file and store it as a source asset. Operation is asynchronous — poll SHOTSTACK_GET_INGEST_STATUS or SHOTSTACK_INSPECT_MEDIA until the asset is ready before passing it to SHOTSTACK_RENDER_VIDEO or other downstream tools. Use when you need to ingest a file before rendering.
Input parameters
Publicly accessible URL of the media file to fetch
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SHOTSTACK_GET_ASSETSTool to fetch details of a hosted asset by its unique identifier. Use when you need to retrieve information about videos, images, audio files, thumbnails, or poster images hosted on Shotstack's CDN.
Input parameters
The unique identifier (UUID) of the asset to retrieve. Can be the asset ID, render ID, source ID, or rendition ID.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SHOTSTACK_GET_ASSETS_RENDERTool to retrieve hosted assets by render ID. Use when you need to fetch one or more files (video, thumbnail, poster image) generated by a specific render job.
Input parameters
The unique identifier (UUID) of the render job to retrieve associated assets for.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SHOTSTACK_GET_INGEST_STATUSDEPRECATED: Use SHOTSTACK_GET_SOURCE instead. Tool to retrieve the status and details of an ingested media asset. Poll until the asset status is 'ready' before using it in SHOTSTACK_RENDER_VIDEO; rendering against an unprocessed asset causes missing clips or failed renders.
Input parameters
The unique identifier of the ingest asset to retrieve.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SHOTSTACK_GET_RENDER_CALLBACKTool to retrieve the webhook/callback URL configuration for a specific render job. Returns only callback settings (URL, method, headers), not render status or output URLs — use a separate render-status check to obtain final results.
Input parameters
The unique identifier of the render process.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SHOTSTACK_GET_RENDER_STATUSTool to retrieve the current status and details of a Shotstack render job by render ID. Use when polling a render until done or failed, typically after creating a render with SHOTSTACK_RENDER_VIDEO.
Input parameters
The unique identifier (UUID) of the render job to retrieve status for.
Include the original timeline and output settings in the response. Default is false (will be deprecated to false soon).
When used with data=true, shows merge fields merged into the data response.
API version to use. Use 'stage' for sandbox/testing or 'v1' for production.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SHOTSTACK_GET_SOURCETool to fetch the details of a specific source asset. Use when you need to inspect a source after uploading, check its status, or diagnose ingest/render failures—such as unsupported codecs, corrupt files, or bad URLs—before retrying.
Input parameters
Unique identifier of the source asset to retrieve.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SHOTSTACK_GET_TEMPLATETool to retrieve details of a specific template. Use when you have the ID of an existing template and need its metadata.
Input parameters
The unique identifier of the template to retrieve.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SHOTSTACK_GET_TEMPLATE_BY_VERSIONTool to retrieve a template by template id and API version. Use when you need to fetch template details from a specific Edit API version.
Input parameters
The id of the template in UUID format
The version of the Edit API to use. Common values: 'v1', 'stage'.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SHOTSTACK_GET_UPLOAD_URLTool to request a signed URL for direct file upload to Shotstack. Use when you need to upload a file to Shotstack storage. The response returns a signed URL that you use to upload the file using a PUT request with the binary file.
Input parameters
API version - use 'stage' for sandbox or 'v1' for production
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SHOTSTACK_INSPECT_MEDIATool to inspect media metadata. Use before rendering to retrieve duration, resolution, frame rate, and format of an online media file — clip timecodes, trim points, and audio sync calculations depend on these values. Mixing assets without prior inspection can cause letterboxing, jitter, or audio sync issues in the final output.
Input parameters
The URL of the media file to inspect. Will be URL-encoded automatically. Must be publicly accessible and stable — private, geo-blocked, or expiring URLs will cause inspection to fail.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SHOTSTACK_LIST_SOURCESTool to list all source assets. Use when you need to retrieve source entries with optional pagination.
Input parameters
Filter sources by a specific index name
Maximum number of results to return per page (default: 20)
Number of results to skip for pagination (default: 0)
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SHOTSTACK_LIST_SOURCES2Tool to list all ingested source files with environment selection. Use when you need to retrieve sources from stage (sandbox) or v1 (production) environment with optional pagination.
Input parameters
Environment: 'stage' for sandbox testing or 'v1' for production
Filter sources by a specific index name
Maximum number of results to return per page (default: 20)
Number of results to skip for pagination (default: 0)
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SHOTSTACK_LIST_TEMPLATESTool to list all Shotstack templates for the account. Use after creating or updating templates to view your available templates.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SHOTSTACK_LIST_TEMPLATES2Tool to list all Shotstack templates for the specified environment. Use when you need to retrieve templates from a specific environment (stage or production).
Input parameters
Environment to use: 'stage' for sandbox testing or 'v1' for production. Defaults to stage.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SHOTSTACK_POST_UPLOADTool to request a signed URL for direct file upload. Use when you need to upload a file to Shotstack storage. The response returns a signed URL that expires in one hour.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SHOTSTACK_RENDER_VIDEOTool to initiate a new video render job. Use when you have defined a timeline and output settings and want to start rendering.
Input parameters
Output settings for rendering including format, resolution, frame rate, and aspect ratio
Optional webhook URL to receive notifications when render status changes
Timeline definition describing the sequence of tracks, clips, and transitions. Each track contains clips with an 'asset' (required), 'start' and 'length' (seconds), optional 'effect' (e.g. zoomIn, slideLeft, zoomOut), 'transform' (rotate/skew/flip -- NOTE: use 'transform' NOT 'transformations'), 'filter', 'opacity' (0-1), and 'transition'. Asset types: video, image, audio (require 'src'); title (requires 'text'); html; luma.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SHOTSTACK_TRANSFER_ASSETTool to transfer a file from any publicly available URL to one or more Serve API destinations. Use when you need to copy a file from an external source to Shotstack's hosting service or other configured destinations.
Input parameters
Unique identifier (UUID format recommended) for the asset. This identifier does not need to be globally unique but should be provided by the client.
The publicly accessible URL of the file to transfer. Must be a valid HTTP/HTTPS URL.
Array of destination objects specifying where to transfer the asset. At least one destination is required.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
SHOTSTACK_UPDATE_TEMPLATETool to update an existing template by its ID. Use when you need to modify a template's name or edit configuration. Both name and complete template definition must be provided.
Input parameters
The unique identifier of the template to update in UUID format.
Display name for the template.
Complete edit configuration containing timeline and output settings. Must include both timeline (with tracks containing clips) and output (with format and resolution) properties.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
No publicly available marketplace agent is found using this tool yet. There are 32 agents privately built on Nagent that already use Shotstack.
Build on Nagent
Connect Shotstack to any Nagent agent in minutes — no API key management, no boilerplate. Just configure and deploy.
The five questions agent builders ask before adopting a new integration.
Open the External Integrations panel inside Nagent (app.nagent.ai/externalIntegration), find Shotstack, and click "Connect Now." You'll authenticate with an API key — Nagent handles credential storage and refresh automatically. Once connected, Shotstack is available to any agent in your workspace.
No. Nagent provides no-code integration for every tool. Once Shotstack is connected, you configure its 24 actions directly in the agent builder UI — no API calls, no boilerplate, no schema management.
Helix — Nagent's agentic agent builder — lets you drop Shotstack steps into any workflow visually. Pick an action (e.g., one of those listed above), fill in the inputs (Helix knows the required vs. optional schema for each parameter), and connect it to upstream/downstream steps. Triggers run as the entry point of an agent, so when a Shotstack event fires, the agent kicks off automatically.
Every Shotstack action and trigger ships with a fully-typed schema — input parameters with name, type, required flag, and description, plus the output payload shape. The schemas are documented in the sections above. Helix uses these schemas to validate your configuration at build time and to type-check the data flowing between steps.
Yes. While Shotstack ships with 24 pre-built video & audio actions, you can layer custom logic around them inside Helix — pre/post-processing steps, conditional branches, retries, or stitching Shotstack together with other connected tools. For deeper customization, talk to our team about Nagent's Agentic AI Lab — forward-deployed engineers who build Shotstack-based workflows tailored to your business.