Module: Zoom::Actions::Roles

Included in:
Client
Defined in:
lib/zoom/actions/roles.rb

Instance Method Summary collapse

Instance Method Details

#roles_assign(*args) ⇒ Object



22
23
24
25
26
# File 'lib/zoom/actions/roles.rb', line 22

def roles_assign(*args)
  params = Zoom::Params.new(Utils.extract_options!(args))
  params.require(%i[role_id members])
  Utils.parse_response self.class.post("/roles/#{params[:role_id]}/members", body: params.except(:role_id).to_json, headers: request_headers)
end

#roles_create(*args) ⇒ Object



10
11
12
13
14
# File 'lib/zoom/actions/roles.rb', line 10

def roles_create(*args)
  params = Zoom::Params.new(Utils.extract_options!(args))
  params.require(:name).permit(%i[description privileges])
  Utils.parse_response self.class.post("/roles", body: params.to_json, headers: request_headers)
end

#roles_get(*args) ⇒ Object



34
35
36
37
38
# File 'lib/zoom/actions/roles.rb', line 34

def roles_get(*args)
  params = Zoom::Params.new(Utils.extract_options!(args))
  params.require(:role_id)
  Utils.parse_response self.class.get("/roles/#{params[:role_id]}", headers: request_headers)
end

#roles_list(*_args) ⇒ Object



6
7
8
# File 'lib/zoom/actions/roles.rb', line 6

def roles_list(*_args)
  Utils.parse_response self.class.get("/roles", headers: request_headers)
end

#roles_members(*args) ⇒ Object



16
17
18
19
20
# File 'lib/zoom/actions/roles.rb', line 16

def roles_members(*args)
  params = Zoom::Params.new(Utils.extract_options!(args))
  params.require(:role_id)
  Utils.parse_response self.class.get("/roles/#{params[:role_id]}/members", headers: request_headers)
end

#roles_unassign(*args) ⇒ Object



28
29
30
31
32
# File 'lib/zoom/actions/roles.rb', line 28

def roles_unassign(*args)
  params = Zoom::Params.new(Utils.extract_options!(args))
  params.require(%i[role_id member_id])
  Utils.parse_response self.class.delete("/roles/#{params[:role_id]}/members/#{params[:member_id]}", headers: request_headers)
end