Class: QualtricsAPI::PanelMemberCollection
Instance Attribute Summary
Attributes included from Connectable
#connection
Instance Method Summary
collapse
#all, #each, #each_page, #map
#propagate_connection
#as_json, #to_json
Instance Method Details
#[](member_id) ⇒ Object
30
31
32
|
# File 'lib/qualtrics_api/panel_member_collection.rb', line 30
def [](member_id)
find(member_id)
end
|
#create(panel_member) ⇒ Object
7
8
9
10
11
12
13
|
# File 'lib/qualtrics_api/panel_member_collection.rb', line 7
def create(panel_member)
payload = panel_member.to_create_json
res = QualtricsAPI.connection(self)
.post("mailinglists/#{id}/contacts", payload)
.body["result"]
return QualtricsAPI::PanelMember.new(panel_member.attributes.merge({ id: res['id'] }))
end
|
#find(id) ⇒ Object
26
27
28
|
# File 'lib/qualtrics_api/panel_member_collection.rb', line 26
def find(id)
raise QualtricsAPI::NotSupported, 'Find not supported for panel member'
end
|
#import_members(panel_members) ⇒ Object
15
16
17
18
19
20
21
22
23
24
|
# File 'lib/qualtrics_api/panel_member_collection.rb', line 15
def import_members(panel_members)
payload = {
contacts: Faraday::UploadIO.new(StringIO.new(panel_members.to_json), 'application/json', 'contacts.json')
}
res = QualtricsAPI.connection(self)
.post("mailinglists/#{id}/contactimports", payload)
.body["result"]
import_id = res['id']
QualtricsAPI::PanelImport.new(id: import_id, panel_id: id).propagate_connection(self)
end
|