Generate Multi-Format Videos

How to generate videos - Abyssale REST API

This feature is available from the Business plan.

Asynchronous Asset Generation Endpoint

POST /async/banner-builder/{design_id}/generate

Generation Characteristics

  • Supported Design Type: Animated

  • Response: Asynchronous

  • Enables batch generation of multiple assets

  • Required Parameter: image_file_type=mp4

  • Retrieval methods:

    • Webhooks

    • Polling

Output File Types

Supported formats:

  • MP4 videos

Additional information

Input Video Customization

  • Supported Input Formats: MP4, WebM, MOV

  • Maximum File Size: 100 MB

  • The video can be trimmed using the following query properties to the video url:

    • trim_start: Start of the video in seconds. i.e: ?trim_start=2.5 to start your video at 2.5s

    • trim_end: End of the video in seconds. i.e: ?trim_end=10 to end your video at 10s

  • The sound can be muted by using the property audio_muted and set it to 1

Example Input Video Configuration:

"video_element_name": {
 "video_url": "https://example.com/video.mp4",
 "audio_muted": 0,
}

Output customisation

In addition to the supported image properties, a video property can be set to customise the output video. Here is the available option:

Video Frame Rate Configuration FPS (Frames Per Second)

  • Default: 24 fps

  • Range: 2-25 fps

Configuration Example:

"video": {
 "fps": 24
}

Sample request

​Do not forget to replace {YOUR-API-KEY} and {design_id}

curl -X POST -H "x-api-key:{YOUR-API-KEY}" -H "Content-Type: application/json"  \
-d '{
  "callback_url": "https://webhook.mycompany.com/videos",
  "image_file_type": "mp4",
  "video": {
    "fps": 24
  },
  "template_format_names": ["facebook-feed", "instagram-post", "iab-medium"],
  "elements": {
    "primary_text": {
        "payload": "New branding available.",
        "color": "#FF0000"
    },
    "video_0": {
      "video_url": "https://mycompany.com/video.mp4",
      "audio_muted": 0
    }
  }
}' \
https://api.abyssale.com/async/banner-builder/{design_id}/generate

Sample response

{
  "generation_request_id": "df75afa8-5a77-4e03-aeef-6d1b6dd0580a"
}

Last updated