Streamruby API

Account

Request:
GET https://streamruby.com/api/account/info?key=45os8cyjo6k5tigj5
Paramaters:
Name Description Example Format Required
key API key 45os8cyjo6k5tigj5 STRING yes
Response:
{
    "msg": "OK",
    "server_time": "2021-09-11 04:30:07",
    "status": 200,
    "result": {
    	"files_total":"31",
    	"storage_left":1288483337,
    	"login":"megauploader21",
        "email": "[email protected]",
        "premium_expire":"2022-10-15 04:46:59",
        "balance":"108.00000",
        "premium":1,
        "storage_used":"685101"
    }
}
Request:
GET https://streamruby.com/api/account/stats?key=45os8cyjo6k5tigj5
Paramaters:
Name Description Example Format Required
key API key 45os8cyjo6k5tigj5 STRING yes
last show stats for last X days (default: 7) 14 INT
Response:
{
"msg": "OK",
"server_time": "2021-09-13 04:30:07",
"status": 200,
"result": [
  {
    "downloads": "0",
    "profit_views": "0.00000",
    "views_adb": "1",
    "sales": "0",
    "profit_sales": "0.00000",
    "profit_refs": "0.00000",
    "profit_site": "0.00000",
    "views": "0",
    "refs": "0",
    "day": "2021-09-12",
    "profit_total": "0.00000",
    "views_prem": "0"
  }
]
}

Upload

Request:
GET https://streamruby.com/api/upload/server?key=45os8cyjo6k5tigj5
Paramaters:
Name Description Example Format Required
key API key 45os8cyjo6k5tigj5 STRING yes
Response:
{
  "msg": "OK",
  "server_time": "2021-08-11 04:29:54",
  "status": 200,
  "result": "https://s1.myvideo.com/upload/01"
}
Paramaters:
Name Description Example Format Required
key API key 45os8cyjo6k5tigj5 STRING yes
file Video file(s) 1.avi FILE yes
file_title Title of video New release video STRING
file_descr Description of video This is sample from
our upcoming release
STRING
snapshot Custom video snapshot (up to 300KB) 1.jpg FILE
fld_id Folder ID 25 INT
cat_id Category ID 5 INT
tags Tags list promo, high quality STRING
file_public Public flag 1 INT
file_adult Adult flag 1 INT
html_redirect Use old style HTML redirect output instead of JSON 1 INT
Minimal HTML form upload sample:
<form method="POST" enctype="multipart/form-data" action="https://s1.myvideo.com/upload/01">
<input type="hidden" name="key" value="45os8cyjo6k5tigj5">
<input type="hidden" name="html_redirect" value="1">
<input type="file" name="file">
<input type="submit">
</form>
CURL file upload sample:
Upload 2 videos:
curl -X POST -F 'key=45os8cyjo6k5tigj5' -F '[email protected]' -F '[email protected]' https://s1.myvideo.com/upload/01
Upload video with custom title and snapshot:
curl -X POST -F 'key=1l5ftrilhllgwx2bo' -F 'file_title="Hola!"' -F '[email protected]' -F '[email protected]' http://s1.xvs.tt/upload/01
Response:
{
  "msg": "OK",
  "status": 200,
  "files": [{
      "filecode": "u9150wqzvhxj",
      "filename": "1.avi",
      "status": "OK"
  }, {
      "filecode": "gzky98gfg6hn",
      "filename": "2.avi",
      "status": "OK"
  }]
}
Request:
GET https://streamruby.com/api/upload/url?key=45os8cyjo6k5tigj5&url={url}
Paramaters:
Name Description Example Format Required
key API key 45os8cyjo6k5tigj5 STRING yes
url URL to video file http://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4 STRING yes
fld_id Folder ID 25 INT
cat_id Category ID 5 INT
file_public Public flag 1 INT
file_adult Adult flag 1 INT
tags Tags list promo, high quality STRING
Response:
returns future filecode that will work after upload complete
{
	"msg":"OK",
	"server_time":"2021-08-12 20:56:47",
	"status":200,
	"result":{
		"filecode":"fb5asfuj2snh"
	}
}
Request:
GET https://streamruby.com/api/upload/sub?key=45os8cyjo6k5tigj5&file_code={file_code}&sub_lang={sub_lang}&sub_url={url}
Paramaters:
Name Description Example Format Required
key API key 45os8cyjo6k5tigj5 STRING yes
file_code file code gi4o0tlro01u STRING yes
sub_lang Subtitle language code eng STRING yes
sub_url URL to subtitle file https://xvs.tt/1.srt STRING
sub_file Subtitle file attachment 1.vtt FILE
CURL subtitle file upload sample:
curl -X POST -F 'key=45os8cyjo6k5tigj5' -F 'file_code=cnypqbf2t79l' -F 'sub_lang=eng' -F '[email protected]' https://xvs.tt/api/upload/sub
Response:
returns future filecode that will work after upload complete
{
	"msg":"OK",
	"server_time":"2021-08-12 20:56:47",
	"status":200
}

File

Request:
GET https://streamruby.com/api/file/info?key=45os8cyjo6k5tigj5&file_code={file_code}
Paramaters:
Name Description Example Format Required
key API key 45os8cyjo6k5tigj5 STRING yes
file_code file code, or list separated by comma gi4o0tlro01u,gi4o0tlro012 STRING yes
Response:
{
"msg":"OK",
"server_time":"2021-08-12 21:10:07",
"status":200,
"result":[
	{
	"file_views_full":"0",
	"cat_id":"3",
	"player_img":"http://img.xvs.tt/fb5asfuj2snh.jpg",
	"status":200,
	"file_code":"fb5asfuj2snh",
	"file_last_download":"2021-08-12 20:56:54",
	"canplay":1,
	"file_public":"1",
	"file_length":"60",
	"file_title":"big buck bunny",
	"file_views":"0",
	"file_created":"2021-08-102 20:51:52",
	"file_premium_only":"0",
	"file_adult":"1",
	"file_fld_id":"25",
	"tags":"promo, high quality"
	}
]
}
Request:
GET https://streamruby.com/api/file/edit?key=45os8cyjo6k5tigj5&file_code={file_code}&file_title={file_title}
Paramaters:
Name Description Example Format Required
key API key 45os8cyjo6k5tigj5 STRING yes
file_code File code or comma separated list gi4o0tlro01u,hqpibyqwxumrt STRING yes
file_title File title The 100 S01E02 STRING
file_descr File description release by MegaDrive STRING
cat_id Category ID 5 INT
file_fld_id Folder ID 25 INT
file_public Public flag 1 INT
file_adult Adult flag 0 INT
tags File tags promo, high quality STRING
Response:
{
	"msg":"OK",
	"server_time":"2021-08-13 20:17:12",
	"status":200,
	"result":"true"
}
Request:
GET https://streamruby.com/api/file/list?key=45os8cyjo6k5tigj5
Paramaters:
Name Description Example Format Required
key API key 45os8cyjo6k5tigj5 STRING yes
fld_id Folder ID 25 INT
title Filter videos by title Iron man STRING
created Show only videos uploaded after timestamp.
Specify number to show videos uploaded X minutes ago
2021-07-21 05:07:10 STRING
public Show public (1) or private (0) videos only, empty to show all 1 INT
adult Show adult (1) or safe (0) videos only, empty to show all 0 INT
per_page Number of results per page 50 INT
page Page number 2 INT
Response:
{
	"msg":"OK",
	"server_time":"2021-08-13 20:35:18",
	"status":200,
	"result":
	{
		"files":[
			{
				"thumbnail":"http://img.xvs.tt/fb5asfuj2snh_t.jpg",
				"link":"http://xvs.tt/fb5asfuj2snh.html",
				"file_code":"fb5asfuj2snh",
				"canplay":1,
				"length":"60",
				"views":"0",
				"uploaded":"2021-07-12 20:56:54",
				"public":"0",
				"fld_id":"0",
				"title":"Test 123"
			}
		],
		"results_total":9,
		"pages":9,
		"results":1
	}
}
Request:
GET https://streamruby.com/api/file/clone?key=45os8cyjo6k5tigj5&file_code={file_code}
Paramaters:
Name Description Example Format Required
key API key 45os8cyjo6k5tigj5 STRING yes
file_code Source file code abnormamorph STRING yes
file_title New file title if required New video title STRING
fld_id Target folder id 5 INT
Response:
{
	"msg":"OK",
	"server_time":"2022-11-12 19:39:58",
	"status":200,
	"result":
	{
		"url":"http://xvs.tt/u405p6qz5xpi",
		"filecode":"u405p6qz5xpi"
	}
}
Request:
GET https://streamruby.com/api/file/delete?key=45os8cyjo6k5tigj5&file_code={file_code}
Paramaters:
Name Description Example Format Required
key API key 45os8cyjo6k5tigj5 STRING yes
file_code File code abnormamorph STRING yes
Response:
{
	"msg":"OK",
	"server_time":"2022-11-12 19:39:58",
	"status":200
}

Get last deleted files list

Request:
GET https://streamruby.com/api/file/deleted?key=45os8cyjo6k5tigj5&last={last}
Paramaters:
Name Description Example Format Required
key API key 45os8cyjo6k5tigj5 STRING yes
last Show files deleted in last X hours 24 INT
Response:
{
	"msg":"OK",
	"server_time":"2021-08-15 19:04:06",
	"status":200,
	"result":[
		{
			"file_code":"38j4wvxw164d",
			"deleted_by":"me",
			"deleted_ago_sec":"40",
			"deleted":"2021-08-15 19:03:26",
			"title":"Video 109779195"
		}
	]
}

Get files scheduled for DMCA delete

Request:
GET https://streamruby.com/api/file/dmca?key=45os8cyjo6k5tigj5&last={last}
Paramaters:
Name Description Example Format Required
key API key 45os8cyjo6k5tigj5 STRING yes
last Show files reported last X hours only 24 INT
Response:
{
	"msg":"OK",
	"server_time":"2021-08-15 19:31:48",
	"status":200,
	"result":[
		{
			"file_code":"x2q5h0uhfzdu",
			"del_in_sec":"42097",
			"del_time":"2021-08-16 07:13:25"
		}
	]
}

Get current encoding queues

Request:
GET https://streamruby.com/api/file/encodings?key=45os8cyjo6k5tigj5
Paramaters:
Name Description Example Format Required
key API key 45os8cyjo6k5tigj5 STRING yes
file_code Filter by File code fb5asfuj2snh STRING
Response:
{
	"msg":"OK",
	"server_time":"2021-08-18 21:44:09",
	"status":200,
	"result":[
		{"link":"http://xvs.tt/fb5asfuj2snh.html","progress":15,"status":"ENCODING","title":"Test video","quality":"h","file_code":"fb5asfuj2snh"},
		{"link":"http://xvs.tt/fb5asfuj2snh.html","progress":0,"status":"PENDING","title":"Test video","quality":"l","file_code":"fb5asfuj2snh"}
	]
}

Get current encoding queues

Request:
GET https://streamruby.com/api/file/url_uploads?key=45os8cyjo6k5tigj5
Paramaters:
Name Description Example Format Required
key API key 45os8cyjo6k5tigj5 STRING yes
file_code Filter by File code fb5asfuj2snh STRING
Response:
{
	"requests_available":2,
	"msg":"OK",
	"server_time":"2022-06-14 20:30:20",
	"status":200,
	"result":[
		{"remote_url":"https://xvs.tt/1.mp4","progress":0,"status":"PENDING","file_code":"","fld_id":"0"},
		{"remote_url":"https://xvs.tt/2.mp4","progress":0,"status":"PENDING","file_code":"xyayxm9ajlys","fld_id":"7"}
	]
}

Get current encoding queues

Request:
GET https://streamruby.com/api/file/url_actions?key=45os8cyjo6k5tigj5
Paramaters:
Name Description Example Format Required
key API key 45os8cyjo6k5tigj5 STRING yes
restart_errors Restart all failed uploads 1 INT
delete_errors Delete all failed uploads 1 INT
delete_all Delete all current uploads 1 INT
delete_code Delete specific uploads by code xyayxm9ajlys,6bnyg8rnu11e STRING
Response:
{
	"requests_available":2,
	"msg":"OK",
	"server_time":"2022-06-14 20:30:20",
	"status":200
}

Folder

Request:
GET https://streamruby.com/api/folder/list?key=45os8cyjo6k5tigj5&fld_id={fld_id}&files=1
Paramaters:
Name Description Example Format Required
key API key 45os8cyjo6k5tigj5 STRING yes
fld_id Parent folder id, default=0 25 INT
files Show file list in this folder 1 INT
Response:
{
	"msg":"OK",
	"server_time":"2021-08-15 19:54:22",
	"status":200,
	"result":{
		"folders":[
			{
				"name":"Breaking Bad",
				"fld_id":"16",
				"code":"4pwb4yvp7v"
			},
			{
				"name":"Travis",
				"fld_id":"15",
				"code":"68dth39m76"
			}
		],
		"files":[
			{
				"thumbnail":"http://img.xvs.tt/abnormamorph_t.jpg",
				"link":"http://xvs.tt/abnormamorph.html",
				"file_code":"abnormamorph",
				"canplay":1,
				"length":"1560",
				"views":"10",
				"uploaded":"2021-08-20 20:37:22",
				"public":"0",
				"fld_id":"0",
				"title":"Tri pljus dva 2012 SATRip"
			}
		]
	}
}
Request:
GET https://streamruby.com/api/folder/create?key=45os8cyjo6k5tigj5&name={name}&parent_id={parent_id}
Paramaters:
Name Description Example Format Required
key API key 45os8cyjo6k5tigj5 STRING yes
name Folder name New Videos STRING yes
parent_id Parent Folder ID 0 INT
descr Folder description new stuff STRING
Response:
{
	"msg":"OK",
	"server_time":"2021-08-18 20:32:46",
	"status":200,
	"result":
	{
		"fld_id":"29"
	}
}

Update folder details, skipped fields won't be updated

Request:
GET https://streamruby.com/api/folder/edit?key=45os8cyjo6k5tigj5&fld_id={fld_id}&name={name}
Paramaters:
Name Description Example Format Required
key API key 45os8cyjo6k5tigj5 STRING yes
fld_id Folder ID 25 INT yes
name Folder name Movies 2021 STRING
parent_id Parent Folder ID 0 INT
descr Folder description old stuff STRING
Response:
{
 "msg":"OK",
 "server_time":"2021-08-18 21:21:44",
 "status":200,
 "result":"true"
}

Delete folder. Folder should be empty and have no files / subfolders.

Request:
GET https://streamruby.com/api/folder/delete?key=45os8cyjo6k5tigj5&fld_id={fld_id}
Paramaters:
Name Description Example Format Required
key API key 45os8cyjo6k5tigj5 STRING yes
fld_id Folder ID 25 INT yes
Response:
{
	"msg":"OK",
	"server_time":"2021-08-18 21:21:44",
	"status":200
}