Our interactive online whiteboard can be easily integrated into existing systems using our REST API.

Out HTML5 solution is fast to load, requires no downloads, is responsive and optimized for both mobile and PC (Works on all devices mobile or desktop, Window, Mac, Android, Linux).

Whiteboard API

Whiteboard Features:

  • Real-time collaboration
  • In-built file repository
  • Supports most common file formats PDF, Images, Video, Audio
  • Synchronized video and audio playback
  • Integrated with YouTube and Google Docs
  • Easy to use drawing tools: pen, highlighter, shapes, text
  • Zoom and Pan (Gesture based on mobile)
  • Student and teacher/presenter roles and permissions, to limit file uploads and whiteboard control

To get access to our WhiteLabel API.
Contact us

Develop your own custom solution using our highly scalable, whitelabel real-time Whiteboard API

VWhiteboard REST API

Whiteboard API Documentation

There are 3 steps to initialize a Whiteboard:

1) Pass a unique token and a user_id as URL parameters to a custom endpoint on our server


{{LEARNCUBE_ENDPONT}} can be a subdomain on learn-cube.com or a custom domain pointing to our server.
The domain is also used to authenticate the POST
Parameterstoken: [alphanumeric] Unique token from your system

user_id : [alphanumeric] User ID from your system
Example HTTPS://{{LEARNCUBE_ENDPONT}}/classv3/?token=ABC123&user_id=111

Link the URL up to your existing system. (As a href or button)

2) We respond with a connect_lesson request to your server to validate the token and user_id

Parametersrequest: “connect_lesson”

token: [alphanumeric] Same as received in the URL in step 1

user_id: [alphanumeric] Same as received in the user_id in step 1

Example HTTPS://{{YOUR_SERVER}}/virtualclassroom/?request=connect_lesson&token=ABC123&user_id=111

3) Your server responds via JSON verifying if the class should start and returns the users parameters.

Parametersstatus: [true or false]

is_tutor: [true or false] Used to identify if user is a Tutor, for placement of video and to define classroom functions only the Tutor has access to.

id: [alphanumeric] Same as received in the user_id in step 1

full_name: [alphanumeric] User's Name for use in chat and profile

avatar: [alphanumeric] Url of the user's avatar/profile image. i.e https:\/\domain.com\/images\/avatar.png

record: [true or false] Records MP4 of video streams *Beta Feature

Content-Type: application/json;charset=UTF-8
Successful Response Example:

Request: {"request":"connect_lesson","token":"1235678","user_id":"111"}

Response: {"status":true, "is_tutor":false, "id":111,"full_name":"John Smith", "avatar":"https:\/\domain.com\/images\/avatar.png", "record":false}
Error Response Example:

Request: {"request":"connect_lesson","token":"1235678","user_id":"111"}

Response: {"status":false, "message":"Class not allowed, student has no credit" }

You can track time spent and end a whiteboard session by using the end_lesson function.

Content-Type: application/json;charset=UTF-8
Parametersrequest: "end_lesson" or crash_lesson

token: [alphanumeric] Same as received in the URL in step 1

time: [integer] Class duration in seconds, the time from “start_class” call, until "end_lesson" call)
Example HTTPS://{{YOUR_SERVER}}/virtualclassroom/?request=end_lesson&token=ABC123&time=611
Successful Response Example:

Request: {"request":"end_lesson","token":"ABC123", "time":611}

Response: {"status":true}

If “status:true” is returned the class is set as “started” and connect the video stream between the student and teachers, once the video streams are connected and the class timer starts.
<hr><pclass="text-center mar-all pad-all">
    To get access to our online WhiteLabel API.<br><aclass="btn btn-primary"href="https://www.learncube.com/contact.html">Contact us</a></p><br><pclass="text-center">
    Looking for live video classes? Try our <ahref="https://www.learncube.com/virtual-classroom-api-integrate.html"> Virtual Classroom API</a></p><hr>

It's never been easier to teach online!