Skip to main content
POST
/
v1
/
ai
/
video
/
vfx
VFX - Apply visual effects to video
curl --request POST \
  --url https://api.freepik.com/v1/ai/video/vfx \
  --header 'Content-Type: application/json' \
  --header 'x-freepik-api-key: <api-key>' \
  --data '
{
  "video": "https://example.com/video.mp4",
  "webhook_url": "<string>",
  "filter_type": 1,
  "fps": 24,
  "bloom_filter_contrast": 1.2,
  "motion_filter_kernel_size": 5,
  "motion_filter_decay_factor": 0.8
}
'
{
"data": {
"generated": [],
"task_id": "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
"status": "CREATED"
}
}

Authorizations

x-freepik-api-key
string
header
required

Your Freepik API key. Required for authentication. Learn how to obtain an API key

Body

application/json
video
string<uri>
required

URL of the video to apply effects to. Must be publicly accessible.

Example:

"https://example.com/video.mp4"

webhook_url
string<uri>

Webhook URL to notify when the task is completed

filter_type
enum<integer>
default:1

Type of visual effect filter to apply to the video.

Available filters:

  • 1: Film grain - Adds cinematic grain texture
  • 2: Motion blur - Creates motion blur effect
  • 3: Fish eye - Applies fish eye lens distortion
  • 4: VHS - Retro VHS tape effect
  • 5: Shake - Camera shake effect
  • 6: VGA - Low resolution VGA effect
  • 7: Bloom - Glowing bloom effect (use bloom_filter_contrast to adjust)
  • 8: Anamorphic lens - Cinematic anamorphic lens effect
Available options:
1,
2,
3,
4,
5,
6,
7,
8
Example:

1

fps
integer
default:24

Frames per second for the output video

Required range: 1 <= x <= 60
bloom_filter_contrast
number

Contrast value for bloom filter effect. Only applicable when filter_type is 7 (bloom).

Example:

1.2

motion_filter_kernel_size
integer

Kernel size for motion blur filter. Only applicable when filter_type is 2 (motion_blur).

Example:

5

motion_filter_decay_factor
number

Decay factor for motion blur filter. Only applicable when filter_type is 2 (motion_blur).

Example:

0.8

Response

OK - The task exists and the status is returned

data
object
required
Example:
{
"task_id": "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
"status": "CREATED",
"generated": [
"https://openapi-generator.tech",
"https://openapi-generator.tech"
]
}