Generate Multi-Format Animated GIFs
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=gif
Output File Types
Supported formats:
Gif images
Additional information
Output customisation
In addition to the supported image properties, a gif property can be set to customise the output gif. Here is the available option:
Frame Rate Configuration FPS (Frames Per Second)
Property name :
fpsDefault: 9 fps
Range: 2-9 fps
Repeat
Property name :
repeatDefault: -1 The GIF will repeat indefinitely.
Value
0: Play only once.Value of
1: Play twice. And so on.
Configuration Example:
"gif": {
"fps": 8,
"repeat": 3
}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/images",
"image_file_type": "gif",
"gif": {
"max_fps": 9,
"repeat": -1
},
"template_format_names": ["facebook-feed", "instagram-post", "iab-medium"],
"elements": {
"primary_text": {
"payload": "New branding available.",
"color": "#FF0000"
}
}
}' \
https://api.abyssale.com/async/banner-builder/{design_id}/generateconst axios = require('axios');
const payload = {
"callback_url": "https://webhook.mycompany.com/images",
"image_file_type": "gif",
"gif": {
"max_fps": 9,
"repeat": -1
},
"template_format_names": ["facebook-feed", "instagram-post", "iab-medium"],
"elements": {
"primary_text": {
"payload": "New branding available.",
"color": "#FF0000"
}
}
}
// Replace {id} by your template ID
axios.post("https://api.abyssale.com/async/banner-builder/{design_id}/generate", payload, {
headers: {"x-api-key": "{YOUR-API-KEY}", "Content-Type": "application/json", "timeout": 30000}
}).then(response => {
console.log(response.data)
}jimport json
import requests
image_generation_payload = {
"callback_url": "https://webhook.mycompany.com/images",
"image_file_type": "gif",
"gif": {
"max_fps": 9,
"repeat": -1
},
"template_format_names": ["facebook-feed", "instagram-post", "iab-medium"],
"elements": {
"primary_text": {
"payload": "New branding available.",
"color": "#FF0000"
}
}
}
# Do not forget to replace {YOUR-API-KEY} and {template_id}
r = requests.post("https://api.abyssale.com/async/banner-builder/{design_id}/generate",
headers={"x-api-key": "YOUR-API-KEY", "Content-Type": "application/json"},
data=json.dumps(image_generation_payload),
timeout=30
)
r.json()Sample response
{
"generation_request_id": "df75afa8-5a77-4e03-aeef-6d1b6dd0580a"
}Last updated