Class: Stannp::GroupsResource

Inherits:
Resource
  • Object
show all
Defined in:
lib/stannp/resources/groups.rb

Instance Method Summary collapse

Methods inherited from Resource

#get_request, #initialize, #post_request, #url_for

Constructor Details

This class inherits a constructor from Stannp::Resource

Instance Method Details

#add_recipients(id:, recipient_ids:) ⇒ Object



16
17
18
19
20
# File 'lib/stannp/resources/groups.rb', line 16

def add_recipients(id:, recipient_ids:)
  url = url_for(path: "groups/add/#{id}")
  ids = recipient_ids.is_a?(Array) ? recipient_ids.join(',') : recipient_ids
  post_request(url, body: { recipients: ids }).body['success']
end

#create(name:) ⇒ Object



11
12
13
14
# File 'lib/stannp/resources/groups.rb', line 11

def create(name:)
  url = url_for(path: 'groups/new')
  Group.new(post_request(url, body: { name: name }).body['data'])
end

#delete(id:) ⇒ Object



28
29
30
31
# File 'lib/stannp/resources/groups.rb', line 28

def delete(id:)
  url = url_for(path: "groups/delete/#{id}")
  post_request(url, body: { id: id }).body['success']
end

#list(offset: nil, limit: nil) ⇒ Object



5
6
7
8
9
# File 'lib/stannp/resources/groups.rb', line 5

def list(offset: nil, limit: nil)
  params = { offset: offset, limit: limit }
  url = url_for(path: 'groups/list', params: params)
  List.from_request(data: get_request(url).body['data'], type: Group)
end

#purge(id:, delete_recipients: false) ⇒ Object



33
34
35
36
# File 'lib/stannp/resources/groups.rb', line 33

def purge(id:, delete_recipients: false)
  url = url_for(path: "groups/purge/#{id}")
  post_request(url, body: { id: id, delete_recipients: delete_recipients }).body['success']
end

#remove_recipients(id:, recipient_ids:) ⇒ Object



22
23
24
25
26
# File 'lib/stannp/resources/groups.rb', line 22

def remove_recipients(id:, recipient_ids:)
  url = url_for(path: "groups/remove/#{id}")
  ids = recipient_ids.is_a?(Array) ? recipient_ids.join(',') : recipient_ids
  post_request(url, body: { recipients: ids }).body['success']
end