Connection check
verified live · 20h ago
switch
Generate, manage and explore your Switch AI image and video library, scoped to your account.
Tools
58
GitHub stars
—
Installs / wk
—
Licence
—
Transport
streamable-http
Last checked
20h ago
Tools & capabilities
58 toolsRead from the running server on 20h ago.
add_editor_library_assets
asset_ids*project_id*
Add images you own in your Switch library to your real Editor project. Resolve the asset ids with search_my_library or list_my_assets; Switch copies only owner-scoped durable files… Add images you own in your Switch library to your real Editor project. Resolve the asset ids with search_my_library or list_my_assets; Switch copies only owner-scoped durable files into the Editor workspace.
analyze_video
read-only
questionvideo_url*
Switch Vision — watch and understand a video (or image) like a human and answer a question about it: scenes, subjects, actions, on-screen text, pacing, mood and sentiment. Pass vid… Switch Vision — watch and understand a video (or image) like a human and answer a question about it: scenes, subjects, actions, on-screen text, pacing, mood and sentiment. Pass video_url (a public https video URL, including YouTube) OR one of your own Switch videos (a video/asset id from list_my_videos / list_my_assets / upload_media). Add an optional question to focus the analysis (e.g. "what is the tone and energy?", "list the cuts and what each shot shows"). Use this whenever the user gives you a reference video and wants its style, energy, structure or content understood — for example before making a new video that matches it.
analyze_video_report
forcequestionvideo_url*duration_seconds
Run the FULL Switch Vision analysis on a video, the same premium report the Video Analysis page produces: it watches AND listens in three forensic passes and returns a structured r… Run the FULL Switch Vision analysis on a video, the same premium report the Video Analysis page produces: it watches AND listens in three forensic passes and returns a structured report with every category: overview (scores and takeaways), a second by second timeline, audio, visual craft, story and retention, speech transcript, ready to run recreation prompts, and metadata. Pass video_url (a public https video URL, YouTube included) OR one of your own Switch video ids. For an external file also pass duration_seconds (YouTube and your own videos are measured automatically) because the analysis is billed per second of the file, 3 tokens per second with a 30 second minimum. Re-running the same video and question returns the existing report without charging again. Optional question focuses the analysis. Returns a report_id right away; poll get_vision_report until status is succeeded (a few minutes). If it cannot finish, your tokens are returned automatically. For one quick question about a video use analyze_video instead; this tool is the full paid report.
apply_cinematic_anamorphic
read-only
style*subject
ARRI Alexa anamorphic widescreen film look. Choose grade: warm golden, cool noir, or moody desaturated. Returns the styled prompt stack for your shot — pair it with generate_image. ARRI Alexa anamorphic widescreen film look. Choose grade: warm golden, cool noir, or moody desaturated. Returns the styled prompt stack for your shot — pair it with generate_image.
apply_graphic_editorial_portrait
read-only
style*subject
Sharp graphic editorial portrait — premium fashion-magazine grade, hard graphic composition. Classic studio or golden-hour outdoor. Returns the styled prompt stack for your shot —… Sharp graphic editorial portrait — premium fashion-magazine grade, hard graphic composition. Classic studio or golden-hour outdoor. Returns the styled prompt stack for your shot — pair it with generate_image.
apply_high_fashion_editorial
read-only
style*subject
High-fashion magazine cover/editorial energy. Choose a photographer mood: Mario Testino glossy, Steven Klein dark cinematic, Inez & Vinoodh hard-flash, Annie Leibovitz painterly, T… High-fashion magazine cover/editorial energy. Choose a photographer mood: Mario Testino glossy, Steven Klein dark cinematic, Inez & Vinoodh hard-flash, Annie Leibovitz painterly, Tim Walker dreamlike, Peter Lindbergh black-and-white natural, or Cass Bird off-duty. Returns the styled prompt stack for your shot — pair it with generate_image.
apply_iphone_realism
read-only
style*subject
Phone-shot amateur look — looks like a real person snapped it on their phone. Casual, candid, pore-level real, no professional gloss. Three flavors: digital phone, 35mm film point-… Phone-shot amateur look — looks like a real person snapped it on their phone. Casual, candid, pore-level real, no professional gloss. Three flavors: digital phone, 35mm film point-and-shoot, or off-duty intimate. Returns the styled prompt stack for your shot — pair it with generate_image.
apply_magic_hour_portrait
read-only
style*subject
Golden-hour rim-light editorial portrait. Choose camera: Canon R5 + 85mm f/1.2 or Hasselblad H6D + 80mm. Returns the styled prompt stack for your shot — pair it with generate_image… Golden-hour rim-light editorial portrait. Choose camera: Canon R5 + 85mm f/1.2 or Hasselblad H6D + 80mm. Returns the styled prompt stack for your shot — pair it with generate_image.
apply_movie_scene
read-only
style*subject
Put me in a movie — full cinematic film look matching specific film genres. Choose: neon-noir action thriller, 80s finance excess, comic-book superhero blockbuster, video-game key… Put me in a movie — full cinematic film look matching specific film genres. Choose: neon-noir action thriller, 80s finance excess, comic-book superhero blockbuster, video-game key art, or generic action thriller. Returns the styled prompt stack for your shot — pair it with generate_image.
apply_product
read-only
style*subject
Product photography. Choose: clean studio hero shot, real-world lifestyle, extreme macro detail, or top-down flat lay. Returns the styled prompt stack for your shot — pair it with… Product photography. Choose: clean studio hero shot, real-world lifestyle, extreme macro detail, or top-down flat lay. Returns the styled prompt stack for your shot — pair it with generate_image.
apply_travel
read-only
style*subject
Luxury travel + hotel editorial. Real architecture is preserved exactly (no inventing buildings). Choose subject: hotel hero, rural property, scenic view, drone aerial, lifestyle m… Luxury travel + hotel editorial. Real architecture is preserved exactly (no inventing buildings). Choose subject: hotel hero, rural property, scenic view, drone aerial, lifestyle moment, or interior. If you attach a reference image of a real property, the architecture lock kicks in automatically. Returns the styled prompt stack for your shot — pair it with generate_image.
apply_ugc
read-only
style*subject
User-generated content — looks like a real person captured it casually. Choose: phone shot, film point-and-shoot, mirror selfie, or car selfie. Returns the styled prompt stack for… User-generated content — looks like a real person captured it casually. Choose: phone shot, film point-and-shoot, mirror selfie, or car selfie. Returns the styled prompt stack for your shot — pair it with generate_image.
apply_wellness
read-only
style*subject
Wellness / yoga / fitness / lifestyle campaign — warm amber tropical, tropical paradise cinematic, or high-key cyan beach. Returns the styled prompt stack for your shot — pair it w… Wellness / yoga / fitness / lifestyle campaign — warm amber tropical, tropical paradise cinematic, or high-key cyan beach. Returns the styled prompt stack for your shot — pair it with generate_image.
approve_editor_run
run_id*approved*quote_id*
Explicitly approve the exact paid quote currently waiting on one of your Editor runs. Requires approved=true and the matching quote_id; stale or changed projects fail closed. Explicitly approve the exact paid quote currently waiting on one of your Editor runs. Requires approved=true and the matching quote_id; stale or changed projects fail closed.
cancel_editor_run
run_id*
Safely cancel one of your queued, running, or approval-waiting Switch Editor runs without applying a pending revision. Safely cancel one of your queued, running, or approval-waiting Switch Editor runs without applying a pending revision.
cancel_my_task
taskId*
Stop one of your generation tasks by task id — works on queued AND running tasks. Already-saved images stay in your library; nothing is deleted or refunded. Returns how many images… Stop one of your generation tasks by task id — works on queued AND running tasks. Already-saved images stay in your library; nothing is deleted or refunded. Returns how many images were saved out of how many you requested.
capture_editor_assets
state*project_id*include_controls
Capture a fixed state of the real current production Switch Editor into your Editor project. The default state is an honest baseline capture of the full Editor, its sections, scrol… Capture a fixed state of the real current production Switch Editor into your Editor project. The default state is an honest baseline capture of the full Editor, its sections, scroll pages, and rendered controls; it has no fabricated click transition. States with a configured interaction add a before PNG, real button-transition WebM, and after PNG. Each manifest records the state owner lane and known unavailable or hidden surfaces so missing features are never presented as captured. Populated states require a real library image or video already attached. It uses the live Editor DOM in an isolated read-only browser, not generated or recreated UI, and charges no generation credits.
check_balance
read-only
estimatedCost
Check your daily Switch spending — what you have spent today, your daily limit, and what is remaining. Optionally pass an `estimatedCost` (USD) to also get whether you can afford i… Check your daily Switch spending — what you have spent today, your daily limit, and what is remaining. Optionally pass an `estimatedCost` (USD) to also get whether you can afford it.
check_job_status
read-only
taskId*
Polling-friendly status check for one of your tasks. Returns a slim shape with `status`, `progressPct`, and `eta` so you can poll without refetching the full payload. Polling-friendly status check for one of your tasks. Returns a slim shape with `status`, `progressPct`, and `eta` so you can poll without refetching the full payload.
create_depth_map
video_url*duration_seconds
Turn a video into a DEPTH MAP: a grayscale video where brightness encodes distance, used as a motion reference so a new generated subject moves exactly like your source clip. Pass… Turn a video into a DEPTH MAP: a grayscale video where brightness encodes distance, used as a motion reference so a new generated subject moves exactly like your source clip. Pass video_url (a public https video URL) OR one of your own Switch video ids (from list_my_videos or list_my_assets). For an external URL also pass duration_seconds (the clip length; your own Switch videos carry it automatically) because the render is billed per second of video. Returns a task_id right away; poll get_depth_map_status until the download URL is ready (usually a few minutes). If the render fails, your tokens are returned automatically.
create_editor_project
name
Create a clean, persistent project in your real Switch Editor. The same project opens in the /editor UI and is used by the Editor agent and HyperFrames renderer. Create a clean, persistent project in your real Switch Editor. The same project opens in the /editor UI and is used by the Editor agent and HyperFrames renderer.
explore_models
read-only
Browse the image-generation models available to your Switch account. Returns model id, display name, brand, and credits-per-image so you can pick one before calling generate_image. Browse the image-generation models available to your Switch account. Returns model id, display name, brand, and credits-per-image so you can pick one before calling generate_image.
export_layer_set
layer_set_id*
Prepare a private, short-lived download link for your own layers project: a ZIP holding every original transparent PNG plus a manifest of names, order, boxes and visibility, ready… Prepare a private, short-lived download link for your own layers project: a ZIP holding every original transparent PNG plus a manifest of names, order, boxes and visibility, ready for Photoshop or Figma. Each call rebuilds the ZIP (one stored copy per project, overwritten).
flatten_layer_set
layer_set_id*
Save the current arrangement of your own layers project as a finished picture in your library, composited at full quality from the original layer files. The project stays editable… Save the current arrangement of your own layers project as a finished picture in your library, composited at full quality from the original layer files. The project stays editable and you can flatten again.
generate_audio
text*pitchvoiceformatloudnessimage_url
+3
Generate spoken audio from text: narration, a voiceover, a read-aloud script, or a multi-voice dialogue. Pass text (up to 2048 chars) — the words to be spoken. To speak in one of Y… Generate spoken audio from text: narration, a voiceover, a read-aloud script, or a multi-voice dialogue. Pass text (up to 2048 chars) — the words to be spoken. To speak in one of YOUR saved voices, pass voice with the voice NAME (or id): users speak plain language and never know ids, so resolve the name yourself (the voice tool, action "list", shows every saved voice) and never ask the user for an id. Reference voices, trained clones and preset voices are all routed correctly by kind. To match a voice instantly from a clip instead, pass reference_audio_url (a short clip) or up to 3 reference_audio_urls and address them as @Audio1, @Audio2, @Audio3 in the text for dialogue. Alternatively pass image_url to voice a scene from a picture (cannot combine with reference audio). Optional speech_rate (-50..100), pitch (-12..12), loudness (-50..100). Returns a playable audio_url, duration_seconds, and generation_id (also saved to your library).
generate_image
countmodelstylesubject*folder_nameaspect_ratio
+3
Generate one or more Switch images. Auto-routes to the right model based on subject (Nano Banana 2 default, GPT Image 2 for swimwear/beach, Switch Model/Ultra/Pro for sexier conten… Generate one or more Switch images. Auto-routes to the right model based on subject (Nano Banana 2 default, GPT Image 2 for swimwear/beach, Switch Model/Ultra/Pro for sexier content, Nano Banana Pro for typography-heavy). Counts <= 8 render inline in chat; counts > 8 queue to your Switch Studio with progress polling. All images persist to your Studio library and folder. Pass an optional `style` (e.g. "wellness/warm_amber_tropical", "high_fashion_editorial/testino_glossy", "movie_scene/neon_noir_action") to apply a curated photographic stack from the apply_* skill tools.
generate_video
modeaudiomodelshotssubjectduration
+14
Generate Switch video across the real provider lineup (Kling, BytePlus Seedance, Switch Video/WAN 2.7, Switch Video Edit, Topaz upscale) and modes (text-to-video, image-to-video, f… Generate Switch video across the real provider lineup (Kling, BytePlus Seedance, Switch Video/WAN 2.7, Switch Video Edit, Topaz upscale) and modes (text-to-video, image-to-video, frame-to-frame, motion, omni, reference-to-video, video-edit, upscale). ALWAYS call load_video_workflow first and list_video_models second. Use Switch MCP directly; never open the website, browser, or desktop unless the user explicitly asked. For realistic reference-driven video, evaluate BytePlus Seedance 2.5 first unless the user chose another provider or model. Before submission, map every actual image, video, and audio chip to its role and preserve its thumbnail, type, order, and role exactly; never silently drop, merge, reorder, convert, or repurpose references. Pass one shot, or shots:[...] for a storyboard (max 4 by default, hard max 10) where EACH shot is DIFFERENT — never repeat one prompt to get copies. Renders async (~30-90s); a background job delivers each clip to your library. Returns a task_id per shot — poll get_video_status or list_my_videos.
get_depth_map_status
read-only
task_id*
Check one of your depth map renders started with create_depth_map. Pass the task_id it returned. While rendering it reports processing; when finished it returns depth_video_url, a… Check one of your depth map renders started with create_depth_map. Pass the task_id it returned. While rendering it reports processing; when finished it returns depth_video_url, a download link for the grayscale motion reference video. If the render failed, it says so and confirms your tokens were returned.
get_editor_project
read-only
project_idinclude_payload
Inspect one of your persistent Switch Editor projects. Omit project_id for your latest project; include_payload=true returns its full editable state. Inspect one of your persistent Switch Editor projects. Omit project_id for your latest project; include_payload=true returns its full editable state.
get_editor_run
read-only
run_id*
Read progress, checks, exact approval quote, revision, and render result for one of your Switch Editor agent runs. Read progress, checks, exact approval quote, revision, and render result for one of your Switch Editor agent runs.
get_layer_set
read-only
layer_set_id*
Open one of your own layers projects: every layer with its name, description, stacking order, whether it is showing, and where it sits on the picture. Use this before arranging lay… Open one of your own layers projects: every layer with its name, description, stacking order, whether it is showing, and where it sits on the picture. Use this before arranging layers so you know their ids.
get_my_active_references
read-only
Read the user's staged references in Switch Studio. Returns TWO groups: (1) the image-generation reference strip (typed face/body/outfit/scenery/product slots) under `refs`, and (2… Read the user's staged references in Switch Studio. Returns TWO groups: (1) the image-generation reference strip (typed face/body/outfit/scenery/product slots) under `refs`, and (2) the VIDEO-tab references the user staged in the Omni/Image video tabs (the @Image1/@Image2 strip) under `videoReferences`, with usable signed URLs. Call this before generate_image or generate_video whenever the user says "use my refs" or refers to images they staged in Studio (including "the images in my video tab"). To make a video from the video-tab refs, pass videoReferences.imageUrls into generate_video reference_image_urls (and videoUrls into reference_video_urls) in reference-to-video / omni mode. Refs marked alive:false are dead (stored file gone) and are already excluded from the usable url lists. NOTE: a photo the user just attached in THIS chat is in neither group — for that, call upload_media and use its returned url/asset id directly.
get_video_status
read-only
job_idtask_id
Check the status of one of your video jobs by task_id (from generate_video) or job_id. Returns status, a viewable view_url when finished, or the error if it failed. Poll this every… Check the status of one of your video jobs by task_id (from generate_video) or job_id. Returns status, a viewable view_url when finished, or the error if it failed. Poll this every ~20s — do not loop rapidly.
get_vision_report
read-only
report_id*
Fetch one of your finished Video Analysis reports by report_id (from analyze_video_report or list_vision_reports). Returns the complete structured report: overview scores and takea… Fetch one of your finished Video Analysis reports by report_id (from analyze_video_report or list_vision_reports). Returns the complete structured report: overview scores and takeaways, the timeline of scenes, audio, visual, story, speech, the recreation section with every master prompt, and metadata, plus recreation_prompt (the ready to run prompt) at the top level. While an analysis is still running this reports processing; poll it every 20 to 30 seconds.
lip_sync_video
action*engineface_idtask_idaudio_idvideo_url
+7
Lip-sync audio onto one of your videos. DEFAULT and recommended: action="create" with video_url + sound_file (base64 data URI) — Sync Labs Sync 3 syncs the whole clip in one pass,… Lip-sync audio onto one of your videos. DEFAULT and recommended: action="create" with video_url + sound_file (base64 data URI) — Sync Labs Sync 3 syncs the whole clip in one pass, no face step, no timing, highest quality. You do not need to pass engine at all. Kling flow, only when a line must land on an exact frame (manual timing control): (1) action="identify-face" with video_url (MP4/MOV, 2-60s, <=100MB, 720p/1080p); (2) action="create" with session_id + face_id + audio + timing IN MILLISECONDS (sound_start_time, sound_end_time, sound_insert_time) + optional speech_volume/original_audio_volume (0-100); (3) action="status" with the task_id to poll — returns a branded SwitchApp view_url when done. Charges credits on create; failed jobs are refunded.
list_generations
read-only
limitstatus
List your recent and active generation tasks. Returns counts per status (pending / running / completed / failed) plus an array of your tasks with id, status, prompts, model, ref co… List your recent and active generation tasks. Returns counts per status (pending / running / completed / failed) plus an array of your tasks with id, status, prompts, model, ref counts, scheduledAt, finishedAt.
list_my_assets
read-only
count
Return asset METADATA only (id, truncated prompt, model, created date), newest first. This does NOT display images and must NOT be used to show pictures — if the user says "show me… Return asset METADATA only (id, truncated prompt, model, created date), newest first. This does NOT display images and must NOT be used to show pictures — if the user says "show me / display my last image(s)", call show_media instead (it renders them; pass count=N for several). Use list_my_assets only when you need ids/metadata for another tool (e.g. move_asset) or a plain text list.
list_my_folders
read-only
List the folders in your Switch library (id, name, parent). Use this to find an existing folder before move_asset or create_folder. List the folders in your Switch library (id, name, parent). Use this to find an existing folder before move_asset or create_folder.
list_my_videos
read-only
countstatus
List your recent Switch videos, newest first — id, status, prompt, model, and a viewable view_url for finished clips. Use this to check whether videos finished and to let the user… List your recent Switch videos, newest first — id, status, prompt, model, and a viewable view_url for finished clips. Use this to check whether videos finished and to let the user choose which one they want.
list_video_models
read-only
List the video providers, models, and modes available to your Switch account, with each model's required inputs, allowed aspect ratios and durations, and a rough per-second cost. C… List the video providers, models, and modes available to your Switch account, with each model's required inputs, allowed aspect ratios and durations, and a rough per-second cost. Call this before generate_video so you pick a real model + mode and supply the right inputs.
list_vision_reports
read-only
List your Video Analysis history, newest first: report_id, date, status, source kind, duration, engine, tokens charged, and each report's headline. Use it to find a past analysis,… List your Video Analysis history, newest first: report_id, date, status, source kind, duration, engine, tokens charged, and each report's headline. Use it to find a past analysis, then pass its report_id to get_vision_report (full report) or video_to_prompt (just the recreation prompt).
load_video_workflow
read-only
Required first call for every Switch video workflow. Loads the current MCP-only production rules, BytePlus Seedance routing policy, exact reference-chip preservation rules, batched… Required first call for every Switch video workflow. Loads the current MCP-only production rules, BytePlus Seedance routing policy, exact reference-chip preservation rules, batched-question policy, KYC behavior, and completion standard. Free and read-only.
render_editor_project
project_id*
Render your current persistent Switch Editor project as an MP4 through the real HyperFrames render worker. Use get_editor_run to follow it to playback and download. Render your current persistent Switch Editor project as an MP4 through the real HyperFrames render worker. Use get_editor_run to follow it to playback and download.
run_editor_agent
prompt*project_id*
Tell your Switch Editor agent to build or revise the persistent editable project. It can author scenes, layers, variables, files, motion, and narration plans through the real Hyper… Tell your Switch Editor agent to build or revise the persistent editable project. It can author scenes, layers, variables, files, motion, and narration plans through the real HyperFrames project workspace.
search_my_library
read-only
limitquery*folderId
Search your library by prompt substring (metadata only — id, prompt, date). Optional folderId scopes to one folder. Only your own assets are returned. This does NOT display images;… Search your library by prompt substring (metadata only — id, prompt, date). Optional folderId scopes to one folder. Only your own assets are returned. This does NOT display images; to show/display results to the user, pass their ids to show_media.
show_generation
read-only
taskId*
Get the full detail of one of your generations by task id — prompts, model, ref counts, saved/failed counts, ETA hint, asset ids. Get the full detail of one of your generations by task id — prompts, model, ref counts, saved/failed counts, ETA hint, asset ids.
show_media
read-only
countassetId
Display the user's images inline — one or many. Users speak plainly and will NOT know asset ids; never ask for one, resolve it yourself. For "show me" or "show me my last image" ca… Display the user's images inline — one or many. Users speak plainly and will NOT know asset ids; never ask for one, resolve it yourself. For "show me" or "show me my last image" call with NO arguments (shows the most recent image). For "show me my last 4 images / my last 10 pictures" pass count=N (returns a clean grid, up to 12). For a specific known image pass assetId. Renders a branded SwitchApp media card with a Download action per result; do not just print URLs. (Videos are not shown here — use list_my_videos and return the newest finished video's view_url, which plays.)
split_image_into_layers
sizeasset_id*instruction
Separate one of your own Switch images into editable layers with Seedream 5.0 Pro: a base plus up to 16 transparent PNG layers, each named and placed. Say which image (asset_id, or… Separate one of your own Switch images into editable layers with Seedream 5.0 Pro: a base plus up to 16 transparent PNG layers, each named and placed. Say which image (asset_id, or "my last image"), optionally what to separate, and the size. Charged only for the layers that actually come back; a failed split is fully refunded.
stitch_videos
fpsqualityorientationproject_nameclip_asset_ids*
Stitch several of your Switch videos together into ONE video, played back-to-back in the order you give. Pass clip_asset_ids: an ORDERED list of your video ids (get them from list_… Stitch several of your Switch videos together into ONE video, played back-to-back in the order you give. Pass clip_asset_ids: an ORDERED list of your video ids (get them from list_my_videos) — the first id plays first. Optional orientation (landscape|portrait|square), fps, quality. Renders the combined video with ffmpeg and returns the finished, downloadable video url right away (also saved to list_my_videos). Use this whenever the user wants to combine, join, merge, or concatenate multiple clips into one.
suggest_speech_seconds
read-only
textword_count
How many seconds a video clip should be for a spoken line, so the words are never rushed or dragged. Give it the spoken text (or a word_count) and it returns a suggested duration f… How many seconds a video clip should be for a spoken line, so the words are never rushed or dragged. Give it the spoken text (or a word_count) and it returns a suggested duration for four delivery energies: slow and dramatic, natural, upbeat, and super charismatic talking-with-your-hands. Fewer seconds is a faster more excited delivery; more seconds is slower and more dramatic. Deterministic, free, no charge. Use it whenever a user asks how long to make a clip for their narration or dialogue, or which duration to pick for a given energy.
talking_avatar_video
scriptlanguagevoice_idaudio_urlimage_url*voice_settings
Turn a face photo into a lip-synced talking-head video that speaks your text (or your audio). Provide image_url (a clear face photo) and either script (text to speak, max 2500 char… Turn a face photo into a lip-synced talking-head video that speaks your text (or your audio). Provide image_url (a clear face photo) and either script (text to speak, max 2500 characters) or audio_url. Optional voice_id / language / voice_settings. Renders in ~1-5 minutes (single call, returns the finished branded video) and is saved to your library. Charged per video.
update_layer_set
changes*layer_set_id*
Arrange your own layers project: show or hide a layer, move or resize it (box as [left, top, right, bottom] in the base picture's pixels), change its stacking order, or reset it ba… Arrange your own layers project: show or hide a layer, move or resize it (box as [left, top, right, bottom] in the base picture's pixels), change its stacking order, or reset it back to where the split put it. Saves immediately through the same checks the Switch workspace uses, so the app shows the same thing.
upload_editor_media
kind*mimepresignfilenamefile_sizeproject_id*
+2
Upload an image, video, or audio file directly into your real Switch Editor project. First call with presign=true, PUT the bytes to upload_url, then confirm_path in a second call;… Upload an image, video, or audio file directly into your real Switch Editor project. First call with presign=true, PUT the bytes to upload_url, then confirm_path in a second call; no browser file picker is needed.
upload_media
urlmimebase64
Upload one image into your Switch library in a single call. Pass `url` (any public https) OR `base64` + `mime`. Switch fetches/decodes it server-side, stores it, and returns a clea… Upload one image into your Switch library in a single call. Pass `url` (any public https) OR `base64` + `mime`. Switch fetches/decodes it server-side, stores it, and returns a clean public URL plus the new asset id. This is THE way to use a photo the user attached in chat as a reference: pass the returned `url` directly into generate_image's reference_image_urls, OR into generate_video's image_url (image-to-video) or reference_image_urls (reference / omni video). The returned URL is provider-fetchable as-is — no presigned PUT, no curl, no confirm-upload step. Do NOT call get_my_active_references for a chat-attached photo; that strip only holds Studio-managed refs.
upload_reference_asset
urlkind*mimebase64presignactivate
+3
Upload an image, video, or audio reference into Switch cloud and get an opaque asset_id (never a raw storage URL) to pass in reference fields. First inspect the asset and record wh… Upload an image, video, or audio reference into Switch cloud and get an opaque asset_id (never a raw storage URL) to pass in reference fields. First inspect the asset and record what its actual chip controls. Preserve its thumbnail, media type, order, and role; uploading never authorizes replacing the visual chip with text or silently dropping, merging, reordering, converting, or repurposing it. A clear speaking and moving video is usually strongest for realistic identity, performance, motion, and voice when supported; still images sharpen appearance, wardrobe, products, logos, typography, and scenes. Pass kind=image|video|audio. Returns reference_image_urls / reference_video_urls / reference_audio_urls for generate_image and generate_video. Image references are also added to your active Studio reference strip (the same one your desktop uses) unless activate=false; the strip is PHOTOS ONLY — video and audio never touch it. PREFERRED for real files: call with presign=true to get an upload_url, PUT the bytes straight to it (no base64 through the model), then call again with confirm_path to verify and add it — works for image, video, and audio. base64/url is only for tiny inline files.
upscale_video
modelscalevideovideostarget_fps
Upscale and enhance one of YOUR videos (or a public https clip) with Topaz. Full control: scale 1 to 4 (1.5x works), optional target_fps 16 to 60 for frame interpolation (60 fps co… Upscale and enhance one of YOUR videos (or a public https clip) with Topaz. Full control: scale 1 to 4 (1.5x works), optional target_fps 16 to 60 for frame interpolation (60 fps costs double), and the Topaz model (Proteus default; Artemis, Nyx, Gaia and Starlight families available). Batch up to 10 clips per call via videos: [...]. Each entry accepts a Switch job id from list_my_videos, its download_url or view_url, or a public https URL. Renders async — poll get_video_status per task_id. Billed per second of the source clip.
video_to_prompt
read-only
modeenginereport_idvideo_url
Turn one of your finished Video Analysis reports into ONE reusable generation prompt that recreates the source video's look, energy, pacing and mood, with a {your photo} placeholde… Turn one of your finished Video Analysis reports into ONE reusable generation prompt that recreates the source video's look, energy, pacing and mood, with a {your photo} placeholder where your own subject goes. Pass report_id (from analyze_video_report or list_vision_reports) or video_url (the exact source URL you already analyzed). Free: it rewrites the analysis you already paid for and never charges. If the video has not been analyzed yet, run analyze_video_report first. Optional focus: pass mode to control what the prompt describes, and engine to pick the model format — also free.
voice
action*formatnew_namevoice_idaudio_urlvoice_name
+2