class PortaText::Command::Api::Campaigns
The campaigns endpoint. github.com/PortaText/docs/wiki/REST-API#api_campaigns
- Author
-
Marcelo Gornstein (marcelog@portatext.com)
- Copyright
-
Copyright © 2015
PortaText
- License
-
Apache-2.0
Public Instance Methods
all_subscribers()
click to toggle source
# File lib/portatext/command/api/campaigns.rb, line 35 def all_subscribers set :all_subscribers, true end
contact(contact)
click to toggle source
# File lib/portatext/command/api/campaigns.rb, line 51 def contact(contact) set :contact, contact end
contacts()
click to toggle source
# File lib/portatext/command/api/campaigns.rb, line 47 def contacts set :contacts, true end
csv(file)
click to toggle source
# File lib/portatext/command/api/campaigns.rb, line 31 def csv(file) set :file, file end
description(description)
click to toggle source
# File lib/portatext/command/api/campaigns.rb, line 19 def description(description) set :description, description end
endpoint(_method)
click to toggle source
rubocop:disable Metrics/MethodLength rubocop:disable Metrics/AbcSize rubocop:disable Metrics/CyclomaticComplexity
# File lib/portatext/command/api/campaigns.rb, line 71 def endpoint(_method) unless @args[:file].nil? settings = @args.clone settings.delete :file settings = settings.to_json settings = URI.encode_www_form('settings' => settings) return "campaigns?#{settings}" end qs = {} unless @args[:page].nil? qs['page'] = @args[:page] @args.delete :page end qs = URI.encode_www_form qs unless @args[:id].nil? id = @args[:id] contacts = @args[:contacts] contact = @args[:contact] @args.delete :type @args.delete :id @args.delete :contacts @args.delete :contact return "campaigns/#{id}/contacts/#{contact}" if contact return "campaigns/#{id}/contacts?#{qs}" if contacts return "campaigns/#{id}" end return "campaigns?#{qs}" unless qs.empty? 'campaigns' end
from(from)
click to toggle source
# File lib/portatext/command/api/campaigns.rb, line 23 def from(from) set :from, from end
id(id)
click to toggle source
# File lib/portatext/command/api/campaigns.rb, line 11 def id(id) set :id, id end
name(name)
click to toggle source
# File lib/portatext/command/api/campaigns.rb, line 15 def name(name) set :name, name end
page(page)
click to toggle source
# File lib/portatext/command/api/campaigns.rb, line 39 def page(page) set :page, page end
save_to(file)
click to toggle source
# File lib/portatext/command/api/campaigns.rb, line 43 def save_to(file) set :accept_file, file end
schedule(type, details)
click to toggle source
# File lib/portatext/command/api/campaigns.rb, line 55 def schedule(type, details) schedule = {} schedule[type] = details set :schedule, schedule end
set_setting(name, value)
click to toggle source
# File lib/portatext/command/api/campaigns.rb, line 61 def set_setting(name, value) args = @args[:settings] args ||= {} args[name] = value set :settings, args end
to_contact_lists(contact_lists)
click to toggle source
# File lib/portatext/command/api/campaigns.rb, line 27 def to_contact_lists(contact_lists) set :contact_list_ids, contact_lists end