class Iterable::Api
Public Class Methods
new(api_key = nil)
click to toggle source
Class constructor @param [String] api_key - Iterable
API Key @return
# File lib/iterable/api.rb, line 12 def initialize(api_key = nil) Services::BaseService.api_key = api_key || Util::Config.get('auth.api_key') if Services::BaseService.api_key.nil? || Services::BaseService.api_key == '' raise ArgumentError.new(Util::Config.get('errors.api_key_missing')) end end
Public Instance Methods
list_by_id(list_id)
click to toggle source
# File lib/iterable/api.rb, line 48 def list_by_id(list_id) Services::ListService.find_by_id(list_id) end
list_create(list_name)
click to toggle source
# File lib/iterable/api.rb, line 44 def list_create(list_name) Services::ListService.create(list_name) end
lists()
click to toggle source
List Services
# File lib/iterable/api.rb, line 32 def lists Services::ListService.all end
lists_subscribe(list_id, subscribers)
click to toggle source
# File lib/iterable/api.rb, line 36 def lists_subscribe(list_id, subscribers) Services::ListService.subscribe(list_id, subscribers) end
lists_unsubscribe(list_id, subscribers)
click to toggle source
# File lib/iterable/api.rb, line 40 def lists_unsubscribe(list_id, subscribers) Services::ListService.unsubscribe(list_id, subscribers) end
message_types()
click to toggle source
# File lib/iterable/api.rb, line 62 def message_types Services::MessageTypeService.all end
send_email(targeted_email_request)
click to toggle source
Email Services
# File lib/iterable/api.rb, line 25 def send_email(targeted_email_request) Services::EmailService.send_email(targeted_email_request) end
templates()
click to toggle source
track_event(track_event_request)
click to toggle source
Event Services
# File lib/iterable/api.rb, line 20 def track_event(track_event_request) Services::EventService.track(track_event_request) end
track_purchase(track_purchase_request)
click to toggle source
Commerce Services
# File lib/iterable/api.rb, line 111 def track_purchase(track_purchase_request) Services::CommerceService.track_purchase(track_purchase_request) end
unsubscribe_all(email, preloaded_message_types=nil)
click to toggle source
# File lib/iterable/api.rb, line 89 def unsubscribe_all(email, preloaded_message_types=nil) if !email.blank? # Get all message types iterable_message_types = preloaded_message_types ? preloaded_message_types : message_types if iterable_message_types && iterable_message_types["messageTypes"] message_type_ids = iterable_message_types["messageTypes"].collect { |message_type| message_type["id"] } channel_ids = iterable_message_types["messageTypes"].collect { |message_type| message_type["channelId"] } if !message_type_ids.blank? subscription_request = Iterable::Requests::SubscriptionUpdate.new({ email: email, unsubscribedMessageTypeIds: message_type_ids, unsubscribedChannelIds: channel_ids }) user_update_subscriptions(subscription_request) end end end end
user_by_email(email)
click to toggle source
user_by_id(id)
click to toggle source
# File lib/iterable/api.rb, line 73 def user_by_id(id) Services::UserService.find_by_id(id) end
user_fields()
click to toggle source
# File lib/iterable/api.rb, line 81 def user_fields Services::UserService.fields end
user_update(user)
click to toggle source
# File lib/iterable/api.rb, line 77 def user_update(user) Services::UserService.update(user) end
user_update_subscriptions(subscription_request)
click to toggle source
# File lib/iterable/api.rb, line 85 def user_update_subscriptions(subscription_request) Services::UserService.update_subscription(subscription_request) end