← All action domains

AI studio

22 operations. Call each with POST https://app.chirply.io/api/v1/actions/<name> and a bearer token; the response is { "data": { "action", "summary", "result" } }. A read badge means the operation changes nothing; write requires the credential’s write scope.

Animate an image

ai_studio.animate_imagewriteconfirm

Turn a still image into a moving video clip. SPENDS REAL MONEY on its own fal.ai account — typically several US dollars per clip. The image must be at a public https URL the provider can download, such as one from ai_studio.generate_image. Returns immediately; poll ai_studio.get_generation until it succeeds.

Marked confirm: this operation is irreversible, reaches real people, or spends money. Holding a credential is itself the confirmation for API and MCP callers — call it only when you mean it. The in-app assistant refuses to run it without a human approving first.

Also answers to image to video, make this picture move.

Parameters

FieldTypeRequiredDescription
imageUrlstring (uri)requiredPublic https URL of the image to animate.
promptstringrequiredHow the image should move: camera motion, what the subject does.
modelId"fal-ai/veo3.1/image-to-video" | "fal-ai/kling-video/v2/master/image-to-video" | "fal-ai/luma-dream-machine/ray-2-flash/image-to-video" | "fal-ai/minimax/hailuo-02/standard/image-to-video"optionalWhich image-to-video model to use. Default: "fal-ai/veo3.1/image-to-video"
durationSecondsintegeroptionalClip length in seconds.
aspectRatiostringoptionale.g. "16:9". Some models take this from the image.
resolutionstringoptionalOutput resolution, where the model offers a choice.
generateAudiobooleanoptionalGenerate audio too, on models that can.

Example

curl -X POST https://app.chirply.io/api/v1/actions/ai_studio.animate_image \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "imageUrl": "https://example.com",
    "prompt": "example"
  }'
Test with your API key

Over MCP the same operation is the tool ai_studio_animate_image at https://app.chirply.io/api/mcp, same bearer token, same input.

Clean up a recording

ai_studio.clean_up_audiowrite

Strip background noise, music and room echo from a recording, leaving clean speech. Runs on its own ElevenLabs account and consumes their quota. The original is left untouched — this produces a new file.

Also answers to remove background noise, isolate the voice, denoise audio.

Parameters

FieldTypeRequiredDescription
audioUrlstring (uri)requiredPublic https URL of the recording to clean. Maximum 64 MB.

Example

curl -X POST https://app.chirply.io/api/v1/actions/ai_studio.clean_up_audio \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "audioUrl": "https://example.com"
  }'
Test with your API key

Over MCP the same operation is the tool ai_studio_clean_up_audio at https://app.chirply.io/api/mcp, same bearer token, same input.

Clone a voice

ai_studio.clone_voicewriteconfirm

Create a new voice in its own ElevenLabs account from recordings of someone speaking. The voice is created THERE, occupies one of that account's voice slots, and remains after disconnecting from this account. Instant cloning is restricted on some ElevenLabs plans. Only clone a voice you have the speaker's permission to use.

Marked confirm: this operation is irreversible, reaches real people, or spends money. Holding a credential is itself the confirmation for API and MCP callers — call it only when you mean it. The in-app assistant refuses to run it without a human approving first.

Also answers to copy someone's voice, make a custom voice.

Parameters

FieldTypeRequiredDescription
namestringrequiredWhat to call the voice in the voice list.
sampleUrlsarray of (string (uri))requiredPublic https URLs of clean speech samples from the one speaker. More and cleaner is better.
descriptionstringoptionalOptional note about the voice, shown in ElevenLabs.

Example

curl -X POST https://app.chirply.io/api/v1/actions/ai_studio.clone_voice \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Example",
    "sampleUrls": [
      "https://example.com"
    ]
  }'
Test with your API key

Over MCP the same operation is the tool ai_studio_clone_voice at https://app.chirply.io/api/mcp, same bearer token, same input.

Change the voice in a recording

ai_studio.convert_voicewrite

Re-perform an existing recording in a different voice, keeping the original delivery, timing and emotion. Useful for putting a consistent brand voice over a rough recording. Runs on its own ElevenLabs account and consumes their quota.

Also answers to speech to speech, swap the voice, change who is speaking.

Parameters

FieldTypeRequiredDescription
audioUrlstring (uri)requiredPublic https URL of the recording to convert. Maximum 64 MB.
voiceIdstringrequiredThe ElevenLabs voice id to perform it in.
removeBackgroundNoisebooleanoptionalStrip background noise from the source first. Default: false

Example

curl -X POST https://app.chirply.io/api/v1/actions/ai_studio.convert_voice \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "audioUrl": "https://example.com",
    "voiceId": "example"
  }'
Test with your API key

Over MCP the same operation is the tool ai_studio_convert_voice at https://app.chirply.io/api/mcp, same bearer token, same input.

Delete a generation

ai_studio.delete_generationwriteconfirm

Permanently delete a generation and the file it produced from the account's storage. This cannot be undone, and any page, email or campaign already pointing at that file will break.

Marked confirm: this operation is irreversible, reaches real people, or spends money. Holding a credential is itself the confirmation for API and MCP callers — call it only when you mean it. The in-app assistant refuses to run it without a human approving first.

Parameters

FieldTypeRequiredDescription
idstring (uuid)requiredThe generation to delete.

Example

curl -X POST https://app.chirply.io/api/v1/actions/ai_studio.delete_generation \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "id": "2f6a1c1e-6c3b-4c62-9f6e-8a2d4b7c9e11"
  }'
Test with your API key

Over MCP the same operation is the tool ai_studio_delete_generation at https://app.chirply.io/api/mcp, same bearer token, same input.

Dub into another language

ai_studio.dub_audiowriteconfirm

Translate a recording or video into another language, re-voiced in the original speakers' own voices. SPENDS REAL MONEY on its own ElevenLabs account, priced by the length of the media. Returns immediately; dubbing takes minutes, so poll ai_studio.get_generation until it succeeds.

Marked confirm: this operation is irreversible, reaches real people, or spends money. Holding a credential is itself the confirmation for API and MCP callers — call it only when you mean it. The in-app assistant refuses to run it without a human approving first.

Also answers to translate this video, dub into spanish, localize audio.

Parameters

FieldTypeRequiredDescription
sourceUrlstring (uri)requiredPublic https URL of the audio or video to dub.
targetLangstringrequiredLanguage code to dub INTO, e.g. "es", "fr", "de".
sourceLangstringoptionalLanguage code of the original. Omit to detect it automatically.
numSpeakersintegeroptionalHow many people speak. 0 or omitted lets ElevenLabs work it out.

Example

curl -X POST https://app.chirply.io/api/v1/actions/ai_studio.dub_audio \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "sourceUrl": "https://example.com",
    "targetLang": "example"
  }'
Test with your API key

Over MCP the same operation is the tool ai_studio_dub_audio at https://app.chirply.io/api/mcp, same bearer token, same input.

Generate an avatar portrait

ai_studio.generate_avatar_portraitwrite

Generate a photorealistic portrait to use as a presenter, or edit an existing one while keeping the same face. Supply referenceImageUrl to keep a character consistent across shots rather than getting a new stranger each time. Runs on the account's own OpenRouter key and is billed to that account at OpenRouter's own rate for the configured image model, which Chirply does not set or mark up. This is the first half of making a talking-head video — feed the result to ai_studio.generate_avatar_video.

Also answers to create a presenter, make an avatar face, generate a headshot.

Parameters

FieldTypeRequiredDescription
promptstringrequiredWho the person is, or — with a reference image — what to change about them.
referenceImageUrlstring (uri)optionalPublic https URL of an existing portrait to edit, keeping the same face.

Example

curl -X POST https://app.chirply.io/api/v1/actions/ai_studio.generate_avatar_portrait \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "example"
  }'
Test with your API key

Over MCP the same operation is the tool ai_studio_generate_avatar_portrait at https://app.chirply.io/api/mcp, same bearer token, same input.

Generate a talking-head video

ai_studio.generate_avatar_videowriteconfirm

Turn a portrait plus a voiceover into a video of that person speaking the words, lips matched. SPENDS REAL MONEY on its own Replicate account, priced by the length of the audio. Make the voiceover FIRST with ai_studio.generate_voiceover — the video's length and cost follow the audio, so generating in the other order wastes money. Returns immediately; poll ai_studio.get_generation.

Marked confirm: this operation is irreversible, reaches real people, or spends money. Holding a credential is itself the confirmation for API and MCP callers — call it only when you mean it. The in-app assistant refuses to run it without a human approving first.

Also answers to talking head, make an avatar speak, presenter video.

Parameters

FieldTypeRequiredDescription
imageUrlstring (uri)requiredPublic https URL of the portrait to animate.
audioUrlstring (uri)requiredPublic https URL of the speech track that drives the mouth.
resolution"480p" | "720p"optionalOutput resolution. 720p costs more. Default: "720p"

Example

curl -X POST https://app.chirply.io/api/v1/actions/ai_studio.generate_avatar_video \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "imageUrl": "https://example.com",
    "audioUrl": "https://example.com"
  }'
Test with your API key

Over MCP the same operation is the tool ai_studio_generate_avatar_video at https://app.chirply.io/api/mcp, same bearer token, same input.

Generate an image

ai_studio.generate_imagewrite

Generate an original image from a description, store it in the account's permanent storage, and return a public URL that can be dropped straight into a funnel page, email or campaign. Runs on the account's own OpenRouter key and is billed to that account at OpenRouter's own rate for the configured image model, which Chirply does not set or mark up. Nothing is published or sent.

Also answers to make a picture, create an image, text to image.

Parameters

FieldTypeRequiredDescription
promptstringrequiredVisual subject and composition. Generated images contain no text or logos.
style"photo" | "illustration" | "product" | "abstract"optionalVisual treatment: an editorial photo, a flat illustration, a product render, or an abstract background. Default: "photo"
aspectstringoptionalFraming hint passed to the model, e.g. "16:9 landscape", "square", "9:16 portrait". Default: "16:9 landscape"

Example

curl -X POST https://app.chirply.io/api/v1/actions/ai_studio.generate_image \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "example"
  }'
Test with your API key

Over MCP the same operation is the tool ai_studio_generate_image at https://app.chirply.io/api/mcp, same bearer token, same input.

Generate a music track

ai_studio.generate_musicwriteconfirm

Compose an original music track from a description of the style and mood. SPENDS REAL MONEY on its own ElevenLabs account — a full-length track consumes substantially more credit than a voiceover, and music generation is unavailable on the ElevenLabs free tier.

Marked confirm: this operation is irreversible, reaches real people, or spends money. Holding a credential is itself the confirmation for API and MCP callers — call it only when you mean it. The in-app assistant refuses to run it without a human approving first.

Also answers to make background music, compose a track, create a soundtrack.

Parameters

FieldTypeRequiredDescription
promptstringrequiredGenre, mood, instrumentation, tempo — e.g. "warm acoustic guitar bed, hopeful, no drums".
lengthSecondsintegeroptionalHow long the track should be. Omit to let the model decide.
instrumentalbooleanoptionalForce an instrumental with no vocals — the right choice for anything playing under a voiceover. Default: false

Example

curl -X POST https://app.chirply.io/api/v1/actions/ai_studio.generate_music \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "example"
  }'
Test with your API key

Over MCP the same operation is the tool ai_studio_generate_music at https://app.chirply.io/api/mcp, same bearer token, same input.

Generate a song

ai_studio.generate_songwriteconfirm

Write and perform a complete song — music and sung vocals — from a style description and optional lyrics. SPENDS REAL MONEY on its own Replicate account. Returns immediately; generation takes minutes, so poll ai_studio.get_generation until it succeeds.

Marked confirm: this operation is irreversible, reaches real people, or spends money. Holding a credential is itself the confirmation for API and MCP callers — call it only when you mean it. The in-app assistant refuses to run it without a human approving first.

Also answers to write me a song, make a jingle, compose a song with vocals.

Parameters

FieldTypeRequiredDescription
promptstringrequiredStyle, genre, mood and instrumentation — e.g. "upbeat indie pop, female vocal, handclaps".
lyricsstringoptionalThe words to sing. Use [Verse], [Chorus] and [Bridge] tags to shape the structure. Omit to have the model write them.
instrumentalbooleanoptionalProduce music with no vocals. Requires a style description. Default: false
modelId"minimax/music-2.6" | "lucataco/ace-step"optionalWhich song model to use. Default: "minimax/music-2.6"
durationSecondsintegeroptionalTrack length. Only ACE-Step honours this; MiniMax takes its length from the lyrics.

Example

curl -X POST https://app.chirply.io/api/v1/actions/ai_studio.generate_song \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "example"
  }'
Test with your API key

Over MCP the same operation is the tool ai_studio_generate_song at https://app.chirply.io/api/mcp, same bearer token, same input.

Generate a sound effect

ai_studio.generate_sound_effectwrite

Generate a short sound effect from a description — a whoosh, a notification chime, ambient room tone. Runs on its own ElevenLabs account and consumes a small amount of their quota.

Also answers to make a sound, sfx, create a sound effect.

Parameters

FieldTypeRequiredDescription
textstringrequiredThe sound to create, e.g. "heavy wooden door creaking open".
durationSecondsnumberoptionalHow long it should be. Omit to let the model decide.
promptInfluencenumberoptionalHow literally to follow the description. Higher is more faithful, lower more creative. Default: 0.3
loopbooleanoptionalMake it loop seamlessly, for ambient beds. Default: false

Example

curl -X POST https://app.chirply.io/api/v1/actions/ai_studio.generate_sound_effect \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "text": "example"
  }'
Test with your API key

Over MCP the same operation is the tool ai_studio_generate_sound_effect at https://app.chirply.io/api/mcp, same bearer token, same input.

Generate a video

ai_studio.generate_videowriteconfirm

Generate a video clip from a written description. SPENDS REAL MONEY on its own fal.ai account — a few seconds of video typically costs several US dollars, far more than an image, and a failed or unwanted result is not refundable. Returns immediately with a generation id; rendering takes minutes, so poll ai_studio.get_generation until it succeeds.

Marked confirm: this operation is irreversible, reaches real people, or spends money. Holding a credential is itself the confirmation for API and MCP callers — call it only when you mean it. The in-app assistant refuses to run it without a human approving first.

Also answers to make a video, text to video, create a video clip.

Parameters

FieldTypeRequiredDescription
promptstringrequiredWhat happens in the shot: subject, action, setting, camera movement, mood.
modelId"fal-ai/veo3.1/fast" | "fal-ai/veo3.1" | "fal-ai/kling-video/v3/pro/text-to-video" | "fal-ai/kling-video/v2/master/text-to-video" | "fal-ai/minimax/hailuo-02/standard/text-to-video" | "fal-ai/pika/v2.2/text-to-video" | … 1 moreoptionalWhich video model to use. Call ai_studio.list_video_models to see what each supports. Default: "fal-ai/veo3.1/fast"
durationSecondsintegeroptionalClip length. Each model allows only certain values; an unsupported one falls back to that model's default.
aspectRatiostringoptionale.g. "16:9" or "9:16". Ignored by models that take their framing from elsewhere.
resolutionstringoptionale.g. "720p" or "1080p", for models that offer a choice. Higher costs more.
negativePromptstringoptionalWhat to keep out of the shot.
generateAudiobooleanoptionalGenerate a soundtrack too. Only Veo 3 and Kling 3.0 Pro can; ignored elsewhere.

Example

curl -X POST https://app.chirply.io/api/v1/actions/ai_studio.generate_video \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "example"
  }'
Test with your API key

Over MCP the same operation is the tool ai_studio_generate_video at https://app.chirply.io/api/mcp, same bearer token, same input.

Generate a voiceover

ai_studio.generate_voiceoverwrite

Read text aloud in a chosen voice and save the audio to the library with a public URL. Runs on its own ElevenLabs account and consumes their character quota. Nothing is played to anyone or attached to a call — it just produces a file you can use in a video, an IVR prompt, or a campaign.

Also answers to text to speech, narrate this, make a voiceover.

Parameters

FieldTypeRequiredDescription
textstringrequiredThe words to speak.
voiceIdstringoptionalAn ElevenLabs voice id from ai_studio.list_voices. Omit to use the account's default voice.

Example

curl -X POST https://app.chirply.io/api/v1/actions/ai_studio.generate_voiceover \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "text": "example"
  }'
Test with your API key

Over MCP the same operation is the tool ai_studio_generate_voiceover at https://app.chirply.io/api/mcp, same bearer token, same input.

Check a generation

ai_studio.get_generationread

Fetch one generation's current state and, once finished, the URL of the file it produced. THIS IS THE POLLING CALL for video, avatar, song and dubbing jobs: keep calling it until status is "succeeded" or "failed". It also advances any of this account's in-flight jobs, so polling here is what moves them along. Read-only; generates nothing and costs nothing.

Also answers to check generation status, is my video ready.

Parameters

FieldTypeRequiredDescription
idstring (uuid)requiredThe generation id returned when the job was started.

Example

curl -X POST https://app.chirply.io/api/v1/actions/ai_studio.get_generation \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "id": "2f6a1c1e-6c3b-4c62-9f6e-8a2d4b7c9e11"
  }'
Test with your API key

Over MCP the same operation is the tool ai_studio_get_generation at https://app.chirply.io/api/mcp, same bearer token, same input.

Lip-sync a video to new audio

ai_studio.lipsync_videowriteconfirm

Re-time a person's mouth in a video to match a different audio track — for dubbing a recording or swapping the voiceover. SPENDS REAL MONEY on its own fal.ai account. Both files must be at public https URLs. Returns immediately; poll ai_studio.get_generation.

Marked confirm: this operation is irreversible, reaches real people, or spends money. Holding a credential is itself the confirmation for API and MCP callers — call it only when you mean it. The in-app assistant refuses to run it without a human approving first.

Also answers to dub a video, sync lips to audio.

Parameters

FieldTypeRequiredDescription
videoUrlstring (uri)requiredPublic https URL of the video containing the face.
audioUrlstring (uri)requiredPublic https URL of the audio the mouth should match.
quality"standard" | "pro"optionalPro is noticeably better on close-ups and costs roughly two-thirds more. Default: "standard"
syncMode"cut_off" | "loop" | "bounce" | "silence" | "remap"optionalWhat to do when the audio and video are different lengths. Default: "cut_off"

Example

curl -X POST https://app.chirply.io/api/v1/actions/ai_studio.lipsync_video \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "videoUrl": "https://example.com",
    "audioUrl": "https://example.com"
  }'
Test with your API key

Over MCP the same operation is the tool ai_studio_lipsync_video at https://app.chirply.io/api/mcp, same bearer token, same input.

AI Studio library

ai_studio.list_generationsread

List everything the AI Studio has generated for this account — images, video, voiceovers, music, avatars, songs and transcripts — newest first. Read-only; generates nothing and costs nothing.

Also answers to list generated media, my AI generations, media library.

Parameters

FieldTypeRequiredDescription
kindsarray of ("image" | "video" | "avatar_image" | "avatar_video" | "speech" | "music" | … 6 more)optionalOnly return these kinds of generation. Omit for everything.
status"queued" | "running" | "succeeded" | "failed" | "canceled"optionalOnly return generations in this state.
searchstringoptionalMatch against the prompt the generation was made from.
limitintegeroptionalMax rows to return (1–100). Default: 25
offsetintegeroptionalRows to skip. Default: 0

Example

curl -X POST https://app.chirply.io/api/v1/actions/ai_studio.list_generations \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "status": "queued",
    "search": "example"
  }'
Test with your API key

Over MCP the same operation is the tool ai_studio_list_generations at https://app.chirply.io/api/mcp, same bearer token, same input.

Video models

ai_studio.list_video_modelsread

List the video models the AI Studio can use, with what each one supports — clip lengths, aspect ratios, resolutions, and whether it generates its own audio. Read-only; costs nothing. Use it to pick a model id before calling ai_studio.generate_video.

Parameters

FieldTypeRequiredDescription
mode"text_to_video" | "image_to_video"optionalFilter to models driven by a prompt, or ones that animate a still image.

Example

curl -X POST https://app.chirply.io/api/v1/actions/ai_studio.list_video_models \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "mode": "text_to_video"
  }'
Test with your API key

Over MCP the same operation is the tool ai_studio_list_video_models at https://app.chirply.io/api/mcp, same bearer token, same input.

Voices

ai_studio.list_voicesread

List the voices in its own ElevenLabs account, including any cloned ones. Read-only; costs nothing. Use it to pick a voice id for ai_studio.generate_voiceover or ai_studio.convert_voice.

Parameters

No parameters — POST an empty body.

Example

curl -X POST https://app.chirply.io/api/v1/actions/ai_studio.list_voices \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{}'
Test with your API key

Over MCP the same operation is the tool ai_studio_list_voices at https://app.chirply.io/api/mcp, same bearer token, same input.

Remove a video's background

ai_studio.remove_video_backgroundwriteconfirm

Cut the background out of a video, leaving the subject on transparency — for overlaying a presenter on a slide or page. SPENDS REAL MONEY on its own fal.ai account. Defaults to WebM output because it is the only format that carries real transparency; MP4 renders the removed background as solid black. Returns immediately; poll ai_studio.get_generation.

Marked confirm: this operation is irreversible, reaches real people, or spends money. Holding a credential is itself the confirmation for API and MCP callers — call it only when you mean it. The in-app assistant refuses to run it without a human approving first.

Also answers to green screen a video, cut out video background.

Parameters

FieldTypeRequiredDescription
videoUrlstring (uri)requiredPublic https URL of the video to process.
outputFormat"webm" | "mp4"optionalWebM keeps transparency. Choose MP4 only if you need it and can accept a black background. Default: "webm"

Example

curl -X POST https://app.chirply.io/api/v1/actions/ai_studio.remove_video_background \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "videoUrl": "https://example.com"
  }'
Test with your API key

Over MCP the same operation is the tool ai_studio_remove_video_background at https://app.chirply.io/api/mcp, same bearer token, same input.

Transcribe a recording

ai_studio.transcribe_audiowrite

Turn a recording into text, optionally labelling who spoke each line. Returns the transcript directly and saves it to the library. Runs on its own ElevenLabs account and consumes their quota.

Also answers to speech to text, write out what was said, get a transcript.

Parameters

FieldTypeRequiredDescription
audioUrlstring (uri)requiredPublic https URL of the audio or video to transcribe. Maximum 64 MB.
diarizebooleanoptionalLabel each word with which speaker said it. Costs more; worth it for interviews and calls. Default: false
languageCodestringoptionalISO language code of the speech. Omit to detect it automatically.

Example

curl -X POST https://app.chirply.io/api/v1/actions/ai_studio.transcribe_audio \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "audioUrl": "https://example.com"
  }'
Test with your API key

Over MCP the same operation is the tool ai_studio_transcribe_audio at https://app.chirply.io/api/mcp, same bearer token, same input.

Upscale a video

ai_studio.upscale_videowriteconfirm

Increase a video's resolution and sharpness with Topaz, optionally raising its frame rate. SPENDS REAL MONEY on its own fal.ai account, priced by the length and resolution of the input. Returns immediately; poll ai_studio.get_generation until it succeeds.

Marked confirm: this operation is irreversible, reaches real people, or spends money. Holding a credential is itself the confirmation for API and MCP callers — call it only when you mean it. The in-app assistant refuses to run it without a human approving first.

Also answers to enhance video quality, make video higher resolution.

Parameters

FieldTypeRequiredDescription
videoUrlstring (uri)requiredPublic https URL of the video to upscale.
upscaleFactorintegeroptionalHow much to enlarge it. 2 doubles each dimension. Default: 2
targetFpsintegeroptionalInterpolate to this frame rate. Omit to keep the original.

Example

curl -X POST https://app.chirply.io/api/v1/actions/ai_studio.upscale_video \
  -H "Authorization: Bearer chp_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "videoUrl": "https://example.com"
  }'
Test with your API key

Over MCP the same operation is the tool ai_studio_upscale_video at https://app.chirply.io/api/mcp, same bearer token, same input.

The machine-readable version of this page is GET https://app.chirply.io/api/v1/actions?domain=ai_studio — same operations, with full JSON Schemas. Authentication, errors and rate limits are covered in the API documentation home.