Webhooks

Reference for creating webhooks for asynchronous events.

Gumlet uses webhooks to notify your application about things that happen asynchronously, apart from the API request-response cycle. For example, you may want to update something on your end when a video asset status changes from queued to ready or erorred. When these asynchronous events happen, Gumlet will make a POST request to the address you give us and you can do whatever you need with it on your end.

Webhooks can be configured here using a webhook endpoint URL, trigger, and a secret token to ensure authenticity. Once the webhook is configured for a video source or different video sources, a notification will be sent for each event for the source/s. Currently, Gumlet supports the following two events: video.status.ready and video.status.errored

If Gumlet doesn't receive a 2xx response from your system, we will continue to try the message for the next 24 hours (with half an hour of delay between attempts).

webhook response
webhook response
{
"type": "video.status.ready",
"asset_id": "5fd088e0a47da8246f1fb756",
"progress": 100,
"created_at": 1607502048309,
"status": "ready",
"tag": "Gumlet",
"input": {
"transformations": {
"resolution": [
"480p",
"540p",
"720p"
],
"format": "hls",
"audio_codec": "aac",
"video_codec": "libx264",
"thumbnail": [
"auto"
],
"thumbnail_format": "png",
"mp4_access": false
},
"source_url": "https://gumlet.sgp1.digitaloceanspaces.com/video/sample_1.mp4",
"size": 15240078,
"duration": 20.32,
"aspect_ratio": "16:9",
"fps": "30000/1001",
"width": 1920,
"height": 1080
},
"output": {
"status_url": "https://api.gumlet.com/video/v1/status/5fd088e0a47da8246f1fb756",
"playback_url": "https://video.gumlet.io/5f462c1561cf8a766464ffc4/5fd088e0a47da8246f1fb756/1.m3u8",
"thumbnail_url": [
"https://video.gumlet.io/5f462c1561cf8a766464ffc4/5fd088e0a47da8246f1fb756/thumbnail-1-0.png"
],
"storage_bytes": 26683207
}
}