Migrate from JSON2Video

5 minutes

PhantomFlow uses the same JSON schema and HTTP API conventions as JSON2Video. Migration is a one-line change: update your base URL.

1Change your base URL

Replace the JSON2Video API endpoint with PhantomFlow. That is the only required change.

Before (JSON2Video)

https://api.json2video.com/v2/movies

After (PhantomFlow)

https://api.phantomflow.dev/api/render

2Use the same x-api-key header

PhantomFlow uses the same x-api-key header for authentication. Get your PhantomFlow API key from the dashboard and swap it in.

# Same header, new key
curl -X POST https://api.phantomflow.dev/api/render \
  -H "Content-Type: application/json" \
  -H "x-api-key: ve_live_your_key_here" \
  -d '{
    "width": 1920,
    "height": 1080,
    "scenes": [{
      "background-color": "#000000",
      "elements": [{
        "type": "text",
        "text": "Migrated to PhantomFlow!",
        "font_size": 64,
        "color": "#06b6d4",
        "position": "center"
      }]
    }]
  }'

3Same JSON schema

Your existing JSON scripts work with PhantomFlow. The schema is compatible: same element types, same property names, same structure. Use width and height (not a resolution object).

4Test with a ve_test_ key first

Use a test API key (prefixed ve_test_) to verify your integration without consuming credits. Test keys behave identically to live keys but cost nothing.

Settings Mapping

Property names that differ between JSON2Video and PhantomFlow:

JSON2VideoPhantomFlowNotes
font-familyfontSame values
font-sizefont_sizeSame values
font-colorcolorHex color string
background-colorbackground-colorIdentical
font-weightfont_weightSame values
font-stylefont_styleSame values
text-aligntext_alignSame values
line-heightline_heightSame values
letter-spacingletter_spacingSame values
text-decorationtext_decorationSame values
opacityopacity0-1 float

Compatibility Checklist

Features supported in the PhantomFlow compatibility layer:

Text element with all 11 styles (001-011)
Image element (PNG, JPEG, WebP)
Video element with trim and loop
Audio element with volume control
Voice (TTS) element
HTML/CSS overlay element
Component packs
Scene transitions (fade, wipe, slide, etc.)
Template variables ({{variable}})
Webhook notifications
width/height (not resolution)
x-api-key header authentication

Ready to migrate?

Get your PhantomFlow API key and test with a ve_test_ key before switching production traffic.