add_clips
ChatGPTPlace results on the timeline at revision, in order. v1 clips stay back to back; other lanes use at. Returns the new numbered timeline.
add_media
ChatGPTAdd an uploaded file (a media_url from prepare_upload, upload_file or the upload card) to a project and the user's Library; returns the source add_clips and save_timeline take. Not for a job's output, already in its project. Free.
browse_apps
ChatGPTThe app gallery for the apps view: the apps matching the query (all without one), best match first.
cancel_job
ChatGPTCancel a job that is not done. A job canceled before it starts is refunded.
character_creator
ChatGPTCreate a five-view character reference sheet from a photo, a description, or picked traits, and file it as a character in the Library.
create_audio
ChatGPTGenerate music, a song with lyrics, or a sound effect from a description, or score a video clip to picture (model pika/pika-audio/pika-soundtrack).
create_from_preset
ChatGPTStart one generation from one of Pika's curated presets, filling its slots; omit max_credits for a price quote.
create_image
ChatGPTGenerate an image from a prompt, or from a prompt and reference images up to the model's cap; write @image1 in the prompt to point at the first reference.
create_project
ChatGPTCreate a project to collect clips for one video. Its timeline starts empty at 1080x1920@30.
create_speech
ChatGPTSpeak a script aloud with the chosen text-to-speech model and voice, for a voiceover or the audio of a Talking Head Studio video.
create_video
ChatGPTGenerate a video from a prompt, a start frame, or reference images, clips and audio. It also animates between a start and an end frame (model pika, image_url and end_image_url), and reframes a clip to a new aspect ratio (model seedance-25, the clip in video_urls, the target aspect_ratio, and a prompt to recompose and extend the frame while keeping the subjects, action, timing and on-screen text).
edit_image
ChatGPTEdit a photo from instructions, pinned spots and reference images (mode edit), such as restaging a product photo in a setting from reference_urls; in instructions @image1 is the photo and @image2 the first of reference_urls. Mode upscale enlarges a photo up to 4x on Topaz.
edit_video
ChatGPTEdit a source clip in video_urls from a prompt (model seedance-25 or gemini-omni); the result keeps the clip's timing and framing.
export_project
ChatGPTRender the timeline to an MP4 (free). Uses the current revision unless revision is given.
get_account
ChatGPTThe user's Pika credit balance, saved approval mode (how Pika asks before running) and about (what they make). Read it once early, before the first run.
get_export
ChatGPTRead an export's status and download_url. wait_s waits up to that long for done (0 reads at once).
get_job
ChatGPTRead a job. done once status is finished, failed or canceled; a moderation refusal fails with CONTENT_VIOLATION. A job not done has poll_after_s, the seconds before reading it again. preview: true returns up to four outputs (videos as thumbnails, when Pika has them) as images you can see: check a likeness or a character's consistency this way instead of opening URLs in a browser. Shows nothing to the user; show_creations with job_id does.
get_panel
ChatGPTRead what the user uploaded or picked in a Pika card you opened (by its panel_id), once they say they did; status is waiting until then.
get_preset
ChatGPTRead one of Pika's curated presets as data, with its slots and guide; shows the user nothing.
get_project
ChatGPTRead a project as data: its timeline as numbered clips, and the items not yet placed. Shows nothing; show_projects with project_id opens its timeline.
get_view_place
ChatGPTRead where the user last was in the Pika view opened from one tool result. Free.
list_apps
ChatGPTList Pika's apps as data (id, name, what each makes); shows the user nothing.
list_jobs
ChatGPTRead the user's jobs as data, newest first, with outputs; shows the user nothing (show_creations does). Pass next_cursor back as cursor for the next page.
list_preset_options
ChatGPTList the options one slot takes in one of Pika's curated presets, as data; shows the user nothing.
list_presets
ChatGPTList Pika's curated presets for one app (pika: every themed set), or one of its collections (camera moves, voices), with each preset's slots, as data; shows the user nothing. Where the app's tool takes a prompt, a look the user describes works instead of a preset.
list_projects
ChatGPTList the user's projects, newest first; pass next_cursor back as cursor. Shows nothing; show_projects opens the gallery.
podcast_creator
ChatGPTRender one segment of a video podcast episode with Seedance 2.5 and native audio, from the dialogue you planned for it, with host and guest photos as identity references (text-to-video without photos). Run it once per segment, same continuity_id, segment_index 0, 1, …; assemble the segments in order on v1 of a project.
prepare_upload
ChatGPTUse this when you can run a command where the user's file is (their machine, or your sandbox that has it); for a chat attachment, upload_file (if offered); otherwise show_upload. Returns a presigned URL and a curl command: run it there, never pass the bytes as base64 or text, then pass media_url in the app's input. size_bytes must be exact; the URL expires at expires_at.
product_ad
ChatGPTMake a product ad from product photos and a screenplay you write: the whole ad, up to 30 s, renders as one Seedance 2.5 take with native music, voiceover and talking characters, and needs no assembly.
remove_clips
ChatGPTRemove clips from the timeline at revision; later v1 clips close the gap. Returns the new numbered timeline.
rename_project
ChatGPTRename a project.
save_panel
ChatGPTSave what the user uploaded or picked in a panel, so the panel restores it and get_panel reads it. Free. Pass the revision you last saw as expected_revision so an older copy's late save can't overwrite a newer pick; a stale one fails with REVISION_CONFLICT carrying the current revision.
save_timeline
ChatGPTReplace the whole timeline at expected_revision, keeping each given clip_id. For the timeline view; the model uses add_clips, update_clip, remove_clips and update_timeline.
save_upload
ChatGPTSave an uploaded file to the user's Pika library. Free.
save_view_place
ChatGPTSave where the user is in the Pika view opened from one tool result, so reopening it returns there. Free.
search_mentions
ChatGPTSearch Pika apps and the user's recent creations for the composer's @-mentions.
set_overlays
ChatGPTAdd text, captions or shapes over the video at revision, or change one by its clip (t1, …); new ones go on the frontmost free video lane. Returns the new numbered timeline.
set_preferences
ChatGPTOverwrite the user's saved Pika preferences, which decide when runs spend credits without asking. Use this only when the user picks an approval mode, confirms your summary of what they make (about), or asks for a change. Each field you pass replaces the saved value in every conversation; autopilot needs auto_approve_credits. Returns all their preferences. Modes: review_all (Review everything): show each run's app, inputs and price, and wait for a yes. review_plan (Review the plan): one yes for a plan and its total; its steps then run without asking. autopilot (Autopilot): run without asking when a run costs at most auto_approve_credits.
show_apps
ChatGPTShow the user the Pika app gallery to pick an app from. Read their pick with get_panel.
show_creations
ChatGPTOpen the user's Pika library view: recent creations, newest first, or one (finished or running) given job_id, to preview, download or pick one to reuse; read the pick with get_panel. For data only, use list_jobs. Free.
show_preset
ChatGPTShow the user the form of one of Pika's curated presets, prefilled from inputs (e.g. the user's photo url), for them to complete and run.
show_presets
ChatGPTShow the user Pika's curated presets for one app, or one of its collections (e.g. voices), to pick from. inputs prefill slots you already have, e.g. the user's photo url. Read their pick with get_panel.
show_projects
ChatGPTShow the user a gallery of their projects, most recently updated first. They can open one in Pika or pick one to work in; read their pick with get_panel. With project_id, open that project's timeline instead.
show_settings
ChatGPTUse this when the user wants to choose or change how Pika asks before running. Shows their approval mode for them to pick; open no other Pika view in the same turn, since it would replace this one.
show_upload
ChatGPTUse this for the user's image, video or audio file that you can't upload yourself with upload_file (if offered) or prepare_upload. Shows the user an upload card; read what they uploaded with get_panel. Not for an app run with show_presets or create_from_preset: its preset form collects the media. Pass each media_url as is in an app's input: the app reads the file, so don't open or download it. To use part of it ("the first guy"), say so in the app's prompt or brief. Free.
update_clip
ChatGPTChange one clip at revision: its source, trim, volume, or place. v1 clips stay back to back; other lanes use at. Returns the new numbered timeline.
update_timeline
ChatGPTChange the timeline's size, frame rate, or lane volumes at revision. Returns the new numbered timeline.
upload_file
ChatGPTUse this for a file the user attached in chat: pass it as file; Pika copies it and returns media_url for an app's input. Images, video and audio. Free.
upload_media_bytes
ChatGPTUpload a file's bytes from the upload view and return its media_url. Free.