Telestream Cloud Quality Control Ruby SDK

This library provides a low-level interface to the REST API of Telestream Cloud, the online video encoding service.

Getting Started

Configure client, replace [YOUR API KEY] with proper ApiKey

require 'telestream_cloud_qc'

TelestreamCloud::Qc.configure do |config|
  config.api_key['X-Api-Key'] = '[YOUR API KEY]'
end

api = TelestreamCloud::Qc::QcApi.new

Create a new project


project =  api.create_project({data: {name: "MyProject", template: "amazon"}})

Upload file from local store, replace project id [PROJECT ID]

upload = TelestreamCloud::Qc::Uploader.new(api, {
   file: '/tmp/video.mp4',
   project_id: '[PROJECT ID]',
})

puts upload.upload

Get status of job

project_id = '[PROJECT ID]'
job_id = '[JOB ID]'

api.get_job(project_id, job_id)

Start a new job using URL to file

api.create_job(project_id, {url: 'http://example.com/video.mp4'})

Documentation for API Endpoints

All URIs are relative to https://api.cloud.telestream.net/qc/v1.0

Class Method HTTP request Description
TelestreamCloud::Qc::QcApi cancel_job PUT /projects/project_id/jobs/job_id/cancel.json
TelestreamCloud::Qc::QcApi create_job POST /projects/project_id/jobs.json Create a new job
TelestreamCloud::Qc::QcApi create_project POST /projects.json Create a new project
TelestreamCloud::Qc::QcApi get_job GET /projects/project_id/jobs/job_id.json Get QC job
TelestreamCloud::Qc::QcApi get_project GET /projects/project_id.json Get project by Id
TelestreamCloud::Qc::QcApi import_template POST /projects/import.json Import Vidchecker template
TelestreamCloud::Qc::QcApi list_jobs GET /projects/project_id/jobs.json Get jobs form projects
TelestreamCloud::Qc::QcApi list_projects GET /projects.json List all projects for an account
TelestreamCloud::Qc::QcApi modify_project PUT /projects/project_id.json Modify project
TelestreamCloud::Qc::QcApi proxy GET /projects/project_id/jobs/job_id/proxy.json
TelestreamCloud::Qc::QcApi remove_job DELETE /projects/project_id/jobs/job_id.json
TelestreamCloud::Qc::QcApi remove_project DELETE /projects/project_id.json
TelestreamCloud::Qc::QcApi signed_urls GET /projects/project_id/jobs/job_id/signed-urls.json
TelestreamCloud::Qc::QcApi templates GET /templates.json List all templates
TelestreamCloud::Qc::QcApi upload_video POST /projects/project_id/upload.json Creates an upload session

Documentation for Models

Documentation for Authorization

api_key

  • Type: API key
  • API key parameter name: X-Api-Key
  • Location: HTTP header