class SubscriptionApi
Attributes
base_url[RW]
http_client[RW]
Public Class Methods
new(config)
click to toggle source
# File lib/tacklebox/apis/subscription_api.rb, line 10 def initialize(config) self.base_url = config[:base_url] self.http_client = HttpClient.new(config[:api_key]) end
Public Instance Methods
create_subscription(service_id, user_id, subscription_data)
click to toggle source
# File lib/tacklebox/apis/subscription_api.rb, line 34 def create_subscription(service_id, user_id, subscription_data) if !self.is_valid_id(service_id) return new_error( ERROR_TYPES['missing_parameter'], "The create_subscription method must be invoked with a non-empty string service_id argument." ) end if !self.is_valid_id(user_id) return new_error( ERROR_TYPES['missing_parameter'], "The create_subscription method must be invoked with a non-empty string user_id argument." ) end if !self.is_valid_subscription_data(subscription_data) return new_error( ERROR_TYPES['missing_parameter'], "The create_subscription method must be invoked with non-empty url and event_types arguments." ) end path = "services/#{service_id}/users/#{user_id}/subscriptions" request = HttpRequest.new("POST", @base_url, path, subscription_data) @http_client.send(request) end
delete_subscription(service_id, user_id, subscription_id)
click to toggle source
# File lib/tacklebox/apis/subscription_api.rb, line 84 def delete_subscription(service_id, user_id, subscription_id) if !self.is_valid_id(service_id) return new_error( ERROR_TYPES['missing_parameter'], "The delete_subscription method must be invoked with a non-empty string service_id argument." ) end if !self.is_valid_id(user_id) return new_error( ERROR_TYPES['missing_parameter'], "The delete_subscription method must be invoked with a non-empty string user_id argument." ) end if !self.is_valid_id(subscription_id) return new_error( ERROR_TYPES['missing_parameter'], "The delete_subscription method must be invoked with a non-empty string subscription_id argument." ) end path = "services/#{service_id}/users/#{user_id}/subscriptions/#{subscription_id}" request = HttpRequest.new("DELETE", @base_url, path) @http_client.send(request) end
get_subscription(service_id, user_id, subscription_id)
click to toggle source
# File lib/tacklebox/apis/subscription_api.rb, line 59 def get_subscription(service_id, user_id, subscription_id) if !self.is_valid_id(service_id) return new_error( ERROR_TYPES['missing_parameter'], "The get_subscription method must be invoked with a non-empty string service_id argument." ) end if !self.is_valid_id(user_id) return new_error( ERROR_TYPES['missing_parameter'], "The get_subscription method must be invoked with a non-empty string user_id argument." ) end if !self.is_valid_id(subscription_id) return new_error( ERROR_TYPES['missing_parameter'], "The get_subscription method must be invoked with a non-empty string subscription_id argument." ) end path = "services/#{service_id}/users/#{user_id}/subscriptions/#{subscription_id}" request = HttpRequest.new("GET", @base_url, path) @http_client.send(request) end
list_subscriptions(service_id, user_id)
click to toggle source
# File lib/tacklebox/apis/subscription_api.rb, line 15 def list_subscriptions(service_id, user_id) if !self.is_valid_id(service_id) return new_error( ERROR_TYPES['missing_parameter'], "The list_subscriptions method must be invoked with a non-empty string service_id argument." ) end if !self.is_valid_id(user_id) return new_error( ERROR_TYPES['missing_parameter'], "The list_subscriptions method must be invoked with a non-empty string user_id argument." ) end path = "services/#{service_id}/users/#{user_id}/subscriptions" request = HttpRequest.new("GET", @base_url, path) @http_client.send(request) end