Add ‘Open in CapCut, Premiere, Resolve or Final Cut’ to your video app in an afternoon.
Captions stay editable. We keep up with CapCut's format changes so you don't have to. Powers cutconvert.com.
Updated
3 exports a month without a key, 10 with a free one.
Try it with curl
{
"edit": {
"cutconvert": "edit/1",
"name": "Edit 09 minimal",
"timeline": { "fps": 25, "width": 1280, "height": 720 },
"media": [
{ "id": "silent", "name": "silent-25.mp4", "duration": 30.0, "fps": 25, "width": 1280, "height": 720 }
],
"video": [
{ "clips": [{ "media": "silent", "start": 0, "in": 2, "out": 12 }] }
]
},
"targets": ["capcut", "premiere", "resolve", "finalcut"]
}curl -sS https://cutconvert.com/api/edit/export \
-H "Content-Type: application/json" \
--data @request.json \
-o edit.zipSave the first block as request.json and run the curl. It needs no key, since a network gets 3 exports a month without one. The answer is edit.zip, with a folder for each editor and report.json.
report.json lists every file in the zip. For each editor it also lists what the project couldn't keep exactly as the document says, each as a warning with a code and a sentence.
In production this call took 2.9 s, and the zip's XML and FCPXML matched the converter's own output for the same document, byte for byte.
The API reference shows the zip and report.json in full, with every error.
How it works
Describe the edit
One Edit JSON document holds the media it uses, the clips on each track, captions, titles, cross dissolves and markers. Times are seconds and positions are fractions of the frame.
Send one call
POST it to https://cutconvert.com/api/edit/export with the editors you want. A document that isn't valid comes back with its problems listed, each with its path, up to the first 50.
Open it in the editor
Each folder of the zip opens in its editor, with captions and titles as that editor's own text. Media with a path links where it is. Media without one opens offline under its name, ready to link.
Sending the media is optional. Without it, each project points to the file's path. When the document gives no path, the clips open offline under the file's name, ready to link. The Edit JSON reference lists every field.
What each editor gets
Version 1 asks for nothing the four editors can't open, but a few things change on the way. Each editor's page lists what carries over, what doesn't, and what the editor showed when we opened the test projects in it.
- CapCutCapCut desktop project folderCaptions become CapCut captions on a caption track, each in its own look.Checked in CapCut 9.5.0CapCut details
- Premiere ProPremiere Pro XML (.xml)Clips come in linked to their sound, and captions are Text generator clips you can edit.Checked in Premiere Pro 26.5.2Premiere Pro details
- DaVinci ResolveDaVinci Resolve project (.drp)Captions are Text+ clips with their outline and box, and track names are kept.Checked in DaVinci Resolve 20.3.3DaVinci Resolve details
- Final Cut ProFCPXML (.fcpxml)Captions are Basic Titles with their outline, and audio fades are the clip's own fade handles.Checked in Final Cut Pro 11.2Final Cut Pro details
The API writes each project with the converter cutconvert.com runs. In production its Premiere XML and FCPXML matched that converter's own output for the same document, byte for byte.
The free tier
Without a key, each network gets 3 exports a calendar month (UTC), counted by IP address, or by /64 for IPv6.
A free API key gets 10 exports a calendar month (UTC) for its account, shared by all the account's keys. Create one on your account page. The account page shows a key once, when you create it. CutConvert keeps only a hash.
Pricing
One export is one call, however many editors it asks for. All four cost the same as one. Every tier includes all four editors, CapCut and Resolve too.
No key
Free
3 exports a month per network
300 exports
$49
About 16¢ an export
1,500 exports
$149
About 10¢ an export
10,000 exports
$499
About 5¢ an export
Packs are one-off payments, not subscriptions. The API spends paid exports only after the month's free 10.
A call that ends in a 400, 401, 402, 408, 413, 429 or 503 costs nothing, and neither does a 500 that says "Nothing was charged". After any other 500 the export may have been counted, so email [email protected] with the request id.
Your balance and this month's free exports are on your account page.
The open package
The open package @cutconvert/edit checks a document and writes it as a Premiere Pro XML or a Final Cut Pro FCPXML, in Node 18 and later or in a browser. It uses the Edit API's Premiere and Final Cut writers, and on 696 test documents its files matched theirs byte for byte.
It's MIT licensed and has no dependencies. CapCut and Resolve projects come only from the hosted API.
@cutconvert/edit isn't on npm yet. We'll publish it soon. Until then, npm install won't find it.
npm install @cutconvert/editRead the package's documentation, with an example for each writer.
Limits and privacy
A call is at most 25 MB, media included, and the document on its own at most 8 MB. A document places up to 20,000 clips, captions and titles in all, and a video clip whose file has sound counts twice.
An account can make 30 calls a minute across all its keys, and a network without a key 6 a minute.
CutConvert holds the media you send in memory for the call and drops it with the answer. It never stores, logs or forwards it, and it doesn't store the document either.
References
- Edit JSON formatCutConvert Edit JSON, version 1: every field, rule and pattern of the document that becomes a CapCut, Premiere Pro, DaVinci Resolve or Final Cut Pro project.
- API referencePOST one Edit JSON document to the CutConvert Edit API and get a zip of CapCut, Premiere, Resolve and Final Cut projects. Every field, error and price.
- @cutconvert/edit@cutconvert/edit checks an Edit JSON document and writes Premiere Pro XML or Final Cut Pro FCPXML in Node or a browser. MIT, no dependencies, not on npm yet.
FAQ
Do I need an API key?
No. Without a key, each network gets 3 exports a calendar month. A free key, created on your account page, gets 10 a month for its account.
What does an export cost?
One export is one call, for up to four editors. After the free 10 a month, exports come in packs: 300 for $49, 1,500 for $149, 10,000 for $499. A pack is a one-off payment, not a subscription.
Do captions stay editable?
Yes. Captions arrive as each editor's own text: CapCut captions on a caption track, Text generator clips in Premiere Pro, Text+ in DaVinci Resolve and Basic Titles in Final Cut Pro.
Do I have to send the media?
No. Without it, each project points to the file's path. When the document gives no path, the clips open offline under the file's name, ready to link.
Do you keep my media or the document?
No. CutConvert holds the media in memory for the call and drops it with the answer, and it doesn't store the document. Every call except a 401 or a 429 leaves a record of when it ran, the targets, the outcome, the document's name, the output files' names and sizes, the warnings and, for a failed call, its first error message. With a key the record names your account. Without one it holds a keyed hash of your network's address.
Is it the same converter as cutconvert.com?
Yes. The API writes each project with the converter cutconvert.com runs. In production its Premiere XML and FCPXML matched that converter's own output for the same document, byte for byte.
Which editor versions did you check?
CapCut 9.5.0, Premiere Pro 26.5.2, DaVinci Resolve 20.3.3 and Final Cut Pro 11.2, on macOS, on October 29, 2026. We opened the test projects in each, then read back what it kept from its own project file or export.
Is there an open-source version?
Yes. @cutconvert/edit, MIT licensed, writes Premiere Pro XML and FCPXML from the same document, and its files match the Edit API's byte for byte. It isn't on npm yet. CapCut and Resolve projects come only from the API.
More for developers
- Generate a CapCut draft from codeCaptions become CapCut captions on a caption track, each in its own look.
- Write Premiere Pro XML from Node, the browser or one API callClips come in linked to their sound, and captions are Text generator clips you can edit.
- Create a DaVinci Resolve project from codeCaptions are Text+ clips with their outline and box, and track names are kept.
- Generate FCPXML for Final Cut Pro programmaticallyCaptions are Basic Titles with their outline, and audio fades are the clip's own fade handles.
- Edit JSON formatEvery field and rule of the document you send.
- API referenceThe call, the zip, report.json, errors and pricing.
Questions about the Edit API: [email protected]