Video API for Developers

We provide a complete video infrastructure and SDKs, built for developers. With our Video API you can upload, store, transcode, and deliver videos with just a few lines of code.

DEPLOY FASTER
We provide a complete video infrastructure, so that you can get started with a few lines of code.
FLEXIBILITY
Use our multiple client libraries. Configure webhooks and queries to create programmable workflows.
EXTENSIVE DOCS
SYNQ offers easy to use and comprehensive documentation to help you get started with our video API.

Trusted by developers from a range of companies

Complete video infrastructure
Complete Video Infrastructure

Add video capabilities to any mobile, web or backend system in hours. The SYNQ video API provides the means for uploading, storing and transcoding videos to all necessary formats and content delivery anywhere. Maintenance free.

Run custom code on your video objects
Video Notifications To Any System

With SYNQs unique notification engine you use your own programmable webhooks directly within the SYNQ Management Console, to communicate with all the services and systems you require.

Works on all platforms
Videos Available Anywhere, Anytime

Our embeddable HTML5 video player works flawlessly on all platforms and screen sizes. Together with our automatic Multi-CDN switching you can forget about loading times.

Try our demo!

Shell JavaScript Python
curl -s https://api.synq.fm/v1/video/create 
    -F api_key=${SYNQ_API_KEY} 
    -F userdata='{"foo": "bar", "baz":"boo"}'
var userdata = '{"foo": "bar", "baz":"boo"}'
video.create(SYNQ_API_KEY, 
  {userdata: userdata}, 
  function(error, data, response) {
    if (error) {
        console.log("Error: ", error);
    } else {
        console.log(data);
    }
});
import requests as r

url = 'https://api.synq.fm/v1/video/create'
userdata = '{"foo": "bar", "baz":"boo"}'

rq = r.post(url,
            data={'api_key':SYNQ_API_KEY,
                  'userdata':userdata})

print(rq.json())

Once you’ve created a video object, you can upload a video file into it.

Shell JavaScript Python
curl -s https://api.synq.fm/v1/video/uploader 
    -F api_key=${SYNQ_API_KEY} 
    -F video_id="430ae5110e5c4319975d78487086082c"
var video_id = "430ae5110e5c4319975d78487086082c";
video.uploader(SYNQ_API_KEY, video_id, 
  {timeout:'3 hours'}, 
  function(error, data, response) {
    if (error) {
        console.log("Error: ", error);
    } else {
        parameters = data;
        console.log(parameters);
    }
});
import requests as r

url = 'https://api.synq.fm/v1/video/uploader'
video_id = '430ae5110e5c4319975d78487086082c'

rq = r.post(url,
            data={'api_key':SYNQ_API_KEY,
                  'video_id':video_id})

print(rq.json())

We’ll use the uploader function to generate an embeddable uploader widget.

Shell JavaScript Python
curl -s https://api.synq.fm/v1/video/update 
    -F api_key=${SYNQ_API_KEY} 
    -F video_id ="430ae5110e5c4319975d78487086082c"
    -F source='video.userdata.notify_email = ${email}'
var video_id = "430ae5110e5c4319975d78487086082c";
var source = 'video.userdata.notify_email = ' + email;
video.update(SYNQ_API_KEY, 
  video_id, 
  source, 
  function(error,data,response) {
    if (error) {
        console.log("Error!");
    } else {
        console.log(data);
    }
});
import requests as r

url = 'https://api.synq.fm/v1/video/update'
video_id = '430ae5110e5c4319975d78487086082c'
source = 'video.userdata.notify_email = "'+EMAIL+'"'

rq = r.post(url,
            data={'api_key':SYNQ_API_KEY,
                  'video_id':video_id,
                  'source':source})

print(rq.json())

In the API, you can change the video object meta data at any time. In this demo, you can add your email to the meta data and receive a notification when your video has completed transcoding.

Added email to video object, we'll notify you when your video has completed transcoding.

check

Video object Click here to refresh
// A json representation of the video will appear here 
// After you click "create"