Overview

This is a detailed guide that shall enable the developer community to understand and use various sets of APIs available in VIDIZMO application which includes the Server Object Model, JavaScript Widgets, VIDIZMO Player Plugins, and REST API Endpoints.


Depending upon your business use-case, you will be using one set of APIs or a combination of them to effortlessly integrate with our enriched player controls or to create your own wonderful video-powered sites – reading further shall help you make an informed decision about the available integration options.


Factors affecting which API set to use

There are several factors that affect your decision about which set of APIs would suit your organizational use-case best. A few of them include: 


1. The type of application you are trying to integrate with VIDIZMO
VIDIZMO provides you with endless integration possibilities, some of those include, but are not limited to creating an app in SharePoint application, an extension for Chrome, a theme for your WordPress or Drupal CMS site, any other web-based add-ins for your application; creating a .NET application using VIDIZMO data, or running a Windows PowerShell Script.


2. Your current skill set
To carry out a basic integration with VIDIZMO Platform, you do not need to be a seasoned developer. Little milestones such as reusing VIDIZMO JS Widgets within your own website, etc are doable for anyone with a little grip on JavaScript. However, for more complex workflows like creating your own Plugins on top of VIDIZMO Player or controlling how VIDIZMO JS Widgets communicate with your platform to build interactive applications, following are some of the programming models that you may have to have some hands-on knowledge in:

  1. JavaScript 
  2. .NET Framework


Apart from these programming languages, you may need to have some conceptual knowledge about Object Oriented Programming and an understanding of the workings of REST API architecture. For using Widgets, you also need to know how HTML and CSS works to be able to accommodate custom elements within your webpage. 


3. The devices you use to run your code 

Given that your own web server (hosted on cloud or on-premise) has support for HTTP protocol requests and has an active connection to VIDIZMO Application server (even if you are not connected to the Internet or Intranet), then you can consume VIDIZMO APIs. For many applications, you can choose from more than one sets of APIs depending upon what you are trying to achieve. Find more about the use-cases later in the article. 


APIs Supported by VIDIZMO 

Here is an architecture diagram that explains how different sets of APIs are used for integrating with various business applications, each of which have been explained in further detail below:



REST Endpoint Architecture 

All APIs under VIDIZMO are based on REST architecture and are accessed via HTTP at specified URLs. These APIs enable the developers to connect with VIDIZMO application server over HTTP protocol. This entails that using REST web technologies, customer organizations can initiate Create, Read, Update, Delete (CRUD) operations in VIDIZMO Portal from within their existing platform. 


VIDIZMO APIs allow developers to request information regarding Users and Groups, Videos, Documents, Quizzes and all sorts of supported media types in the Portal, Viewing Analytics and Engagement Reports, etc. Depending upon your business use-case, you can choose a set of APIs to implement certain functionalities. With every new release of feature sets, we add support for more APIs to cater to our customers’ needs.


To learn more about the power of what you may achieve via REST, see: REST API Reference Guide for Developers.


JavaScript Widgets

Interestingly enough, VIDIZMO’s entire portal is nothing but a beautiful lay out of various web components stitched together in a seamless fabric of HTML and CSS. All of these web components are JavaScript-based rich application controls that can be incorporated in any other web page or application.


While VIDIZMO Widgets are self-organizing and inherently understand the events raised by one another, you can integrate them with your existing UI and power them with your own business logic to automate various enterprise workflows. This phenomenon becomes achievable using the different events exposed within the JavaScript controls; more about which can be read from: Get Started with VIDIZMO Application Widgets.


VIDIZMO Player Plugins 

VIDIZMO Player allows developers to build apps on top of VIDIZMO Player. Here, VIDIZMO Player shall serve as a foundation or a base platform that will provide you with all necessary events – using which you may design and construct your own infrastructure on top of it.  


Let’s take an example of a use-case where you wish to launch a Call-to-Action button right after the point that an end-user has watched 50% of your marketing video. By coding a simple plugin that launches itself upon the event raised by VIDIZMO player as soon as a user completes 50% of the video, shall do the trick. 


Similarly, using VIDIZMO Player Plugins, you can automatically navigate a user to a reward page whenever they successfully pass a Quiz embedded at the end of a video – using the Quiz Success event raised by the Player.  


To summarize, VIDIZMO player architecture has been laid out in a manner that allows customer organizations to construct an entire ecosystem of functions and apps built on top of our video-powered engine. 


These plugins can be incorporated in either inline script or separate .js files, where you can control how your apps interact with the player and vice-versa. 

 

Server-Side Object Model 

This set of APIs take you a little deeper into our DLLs (Dynamic-Link Library), since this object model includes classes and members that enable developer community to extend them to add support for a variety of third-party service providers, other than the ones that come built-in the system. One such provider would be to use our object model to integrate with your own preferred Cloud Storage Services provider.


Use-Cases for Each Set of VIDIZMO APIs 


If you want to achieve this via integration... 

.. then use this set of APIs 

Create and design your Web Application using VIDIZMO’s powerful, stand-alone web components 

JavaScript Widgets 

IOS and Android applications built on using hybrid frameworks that eventually convert your code into a web-view. 

JavaScript Widgets 

Native mobile applications which use any web-view components on any of the mobile app screens 

JavaScript Widgets 

Create an iOS or Android Application that collects, utilizes and performs operations on resources from VIDIZMO 

REST API Endpoints 

Integrate with an existing application built on any programming model to collect, utilize and perform various operations on resources from VIDIZMO 

REST API Endpoints 

Utilize VIDIZMO resources to visualize engagement trends and other data analytics provided by the platform 

REST API Endpoints 

Use data regarding various VIDIZMO resources (e.g. Quiz/Survey) to automate business workflows and run marketing campaigns 

REST API Endpoints 

Create an extension for another Storage/Encoding Provider 

Server Object Model 

Create your own business apps (Call-to-Actions, Lead Generation forms) on top of our VIDIZMO Player 

Player Add-ins 

Incorporate third-party plugins at configurable instances of VIDIZMO Player  

Player Add-ins 

Collect crucial information from VIDIZMO Player events, and launch your own workflows within them 

Player Add-in 


Here is a list of articles that shall further your understanding about VIDIZMO APIs: