Class: Streamsb::Client

Inherits:
Object
  • Object
show all
Defined in:
lib/streamsb/client.rb

Constant Summary collapse

API_ENDPOINT =
"https://api.streamsb.com/api"

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(api_key:, adapter: Faraday.default_adapter) ⇒ Client

Returns a new instance of Client.



13
14
15
16
# File 'lib/streamsb/client.rb', line 13

def initialize(api_key:, adapter: Faraday.default_adapter)
  @api_key = api_key
  @adapter = adapter
end

Instance Attribute Details

#adapterObject (readonly)

Returns the value of attribute adapter.



11
12
13
# File 'lib/streamsb/client.rb', line 11

def adapter
  @adapter
end

#api_keyObject (readonly)

Returns the value of attribute api_key.



11
12
13
# File 'lib/streamsb/client.rb', line 11

def api_key
  @api_key
end

Instance Method Details

#account_infoObject



18
19
20
# File 'lib/streamsb/client.rb', line 18

def 
  request(http_method: :get, endpoint: "account/info", params: payload)
end

#account_statsObject



22
23
24
# File 'lib/streamsb/client.rb', line 22

def 
  request(http_method: :get, endpoint: "account/stats", params: payload)
end

#add_url(url) ⇒ Object



121
122
123
124
125
126
127
128
# File 'lib/streamsb/client.rb', line 121

def add_url(url)
  data = {
    url: url
  }

  params = payload.merge!(data)
  request(http_method: :get, endpoint: "upload/url", params: params)
end

#clone_file(file_code) ⇒ Object



46
47
48
49
50
51
52
53
# File 'lib/streamsb/client.rb', line 46

def clone_file(file_code)
  data = {
    file_code: file_code
  }

  params = payload.merge!(data)
  request(http_method: :get, endpoint: "file/clone", params: params)
end

#create_folder(name, folder_id = nil) ⇒ Object



107
108
109
110
111
112
113
114
115
# File 'lib/streamsb/client.rb', line 107

def create_folder(name, folder_id = nil)
  data = {
    name: name,
    fld_id: folder_id
  }

  params = payload.merge!(data)
  request(http_method: :get, endpoint: "folder/create", params: params)
end

#file_info(file_code) ⇒ Object



26
27
28
29
30
31
32
33
# File 'lib/streamsb/client.rb', line 26

def file_info(file_code)
  data = {
    file_code: file_code
  }

  params = payload.merge!(data)
  request(http_method: :get, endpoint: "file/info", params: params)
end

#folder_list(folder_id) ⇒ Object



98
99
100
101
102
103
104
105
# File 'lib/streamsb/client.rb', line 98

def folder_list(folder_id)
  data = {
    fld_id: folder_id
  }

  params = payload.merge!(data)
  request(http_method: :get, endpoint: "folder/list", params: params)
end

#get_direct_all(file_code) ⇒ Object



69
70
71
72
73
74
75
76
# File 'lib/streamsb/client.rb', line 69

def get_direct_all(file_code)
  data = {
    file_code: file_code
  }

  params = payload.merge!(data)
  request(http_method: :get, endpoint: "file/direct", params: params)
end

#get_direct_quality(file_code, quality = nil) ⇒ Object



78
79
80
81
82
83
84
85
86
# File 'lib/streamsb/client.rb', line 78

def get_direct_quality(file_code, quality = nil)
  data = {
    file_code: file_code,
    q: quality
  }

  params = payload.merge!(data)
  request(http_method: :get, endpoint: "file/direct_link", params: params)
end

#inspectObject



143
144
145
# File 'lib/streamsb/client.rb', line 143

def inspect
  "#<Streamsb::Client>"
end

#list_files(page = nil, per_page = nil, fld_id = nil, is_public = nil, created = nil, title = nil) ⇒ Object



55
56
57
58
59
60
61
62
63
64
65
66
67
# File 'lib/streamsb/client.rb', line 55

def list_files(page = nil, per_page = nil, fld_id = nil, is_public = nil, created = nil, title = nil)
  data = {
    page: page,
    per_page: per_page,
    fld_id: fld_id,
    public: is_public,
    created: created,
    title: title
  }

  params = payload.merge!(data)
  request(http_method: :get, endpoint: "file/list", params: params)
end

#list_urlObject



130
131
132
# File 'lib/streamsb/client.rb', line 130

def list_url
  request(http_method: :get, endpoint: "url/list", params: payload)
end

#rename_file(file_code, title, name) ⇒ Object



35
36
37
38
39
40
41
42
43
44
# File 'lib/streamsb/client.rb', line 35

def rename_file(file_code, title, name)
  data = {
    file_code: file_code,
    title: title,
    name: name
  }

  params = payload.merge!(data)
  request(http_method: :get, endpoint: "file/rename", params: params)
end

#set_folder(file_code, folder_id) ⇒ Object



88
89
90
91
92
93
94
95
96
# File 'lib/streamsb/client.rb', line 88

def set_folder(file_code, folder_id)
  data = {
    file_code: file_code,
    fld_id: folder_id
  }

  params = payload.merge!(data)
  request(http_method: :get, endpoint: "file/set_folder", params: params)
end

#upload_serverObject



117
118
119
# File 'lib/streamsb/client.rb', line 117

def upload_server
  request(http_method: :get, endpoint: "upload/server", params: payload)
end

#url_status(file_code) ⇒ Object



134
135
136
137
138
139
140
141
# File 'lib/streamsb/client.rb', line 134

def url_status(file_code)
  data = {
    file_code: file_code
  }

  params = payload.merge!(data)
  request(http_method: :get, endpoint: "file/url_uploads", params: params)
end