Class: QualtricsAPI::EventSubscriptionCollection

Inherits:
BaseCollection show all
Defined in:
lib/qualtrics_api/event_subscription_collection.rb

Instance Attribute Summary

Attributes included from Connectable

#connection

Instance Method Summary collapse

Methods inherited from BaseCollection

#all, #each, #each_page, #find, #map

Methods included from Connectable

#propagate_connection

Methods included from QualtricsAPI::Extensions::SerializableCollection

#as_json, #to_json

Instance Method Details

#create(publication_url, topics, opts = { encrypt: false }) ⇒ Object



5
6
7
8
9
10
11
12
13
14
# File 'lib/qualtrics_api/event_subscription_collection.rb', line 5

def create(publication_url, topics, opts = { encrypt: false })
  payload = {
    publicationUrl: publication_url,
    topics: topics
  }.merge(opts)
  res = QualtricsAPI.connection(self)
          .post(list_endpoint, payload)
          .body["result"]
  find(res["id"])
end

#create_completed_response_subscription(url, survey_id, opts = { encrypt: false }) ⇒ Object



16
17
18
# File 'lib/qualtrics_api/event_subscription_collection.rb', line 16

def create_completed_response_subscription(url, survey_id, opts = { encrypt: false })
  create(url, "surveyengine.completedResponse.#{survey_id}", opts)
end

#create_partial_response_subscription(url, survey_id, opts = { encrypt: false }) ⇒ Object



20
21
22
# File 'lib/qualtrics_api/event_subscription_collection.rb', line 20

def create_partial_response_subscription(url, survey_id, opts = { encrypt: false })
  create(url, "surveyengine.partialResponse.#{survey_id}", opts)
end

#delete(id) ⇒ Object



24
25
26
27
# File 'lib/qualtrics_api/event_subscription_collection.rb', line 24

def delete(id)
  QualtricsAPI.connection(self)
    .delete(endpoint(id))
end

#delete_allObject



29
30
31
32
# File 'lib/qualtrics_api/event_subscription_collection.rb', line 29

def delete_all
  QualtricsAPI.connection(self)
    .delete(list_endpoint)
end