Skip to main content

Cloning

Clone a public TikTok or Instagram video into your own version with a swapped identity.
  • POST /v1/clones/check scores whether a staged source video will clone reliably. It returns a verdict (strong, possible, or weak), a 0-100 score, and the evidence behind it, so you can decide before using a generation attempt.
  • POST /v1/characters generates a reusable character and persists it under a char_... id. Create it once and reuse the id on every clone. List with GET /v1/characters, fetch one with GET /v1/characters/{id}.
  • POST /v1/clones/starting-image composes a clean starting frame from your character, with no captions, watermarks, or platform UI.
  • POST /v1/clones/video submits a Kling 3.0 Motion Control clone and returns a task id to poll with GET /v1/clones/video/{id}. Source clips are capped at 15 seconds.
See the clone viral videos guide for the full call sequence.

Discover

Pull structured profile, post, comment, and search data from TikTok and Instagram to find videos worth cloning. Scrape returns the provider’s raw source URLs and does not stage media.

Download

Stage one video’s file into a stable, tenant-owned VidJutsu asset with POST /v1/videos/download/tiktok or /instagram, one call per video. Repeated downloads of the same post reuse the same asset. Clone-check, frame extraction, and clone-video use the staged URL; starting-image uses frame 0 returned by extraction.

Understand

Use POST /v1/watch for prompted video or image understanding. Every watch request takes a prompt describing the evidence you need back from the model. Use POST /v1/transcribe for a speech-to-text transcript with word-level timing.

Compliance and finishing

Run a TOS/compliance check against configurable, tenant-owned rules with POST /v1/compliance/video and POST /v1/compliance/prompt before you publish. Burn a text overlay onto a video in TikTok-safe zones with POST /v1/overlay, or add a disclaimer card with POST /v1/disclaimer. Both return a durable output URL.

Clone tasks

The clone video call is asynchronous: POST /v1/clones/video returns a task id, which you poll with GET /v1/clones/video/{id} until the finished video URL is ready. Every other endpoint returns synchronously.

Interfaces

VidJutsu supports REST, a generated TypeScript SDK, the CLI, an agent-readable auth manifest, and an authenticated remote MCP server at https://api.vidjutsu.ai/mcp (OAuth 2.1 + bearer).