Class: Contactually::API
- Inherits:
-
Object
- Object
- Contactually::API
- Defined in:
- lib/contactually/api.rb
Instance Method Summary collapse
- #accounts ⇒ Object
- #call(url, http_method, params = {}) ⇒ Object
- #connection ⇒ Object
- #contact_groupings ⇒ Object
- #contacts ⇒ Object
- #contents ⇒ Object
- #groupings ⇒ Object
-
#initialize(api_key = nil) ⇒ API
constructor
A new instance of API.
- #notes ⇒ Object
- #tasks ⇒ Object
Constructor Details
#initialize(api_key = nil) ⇒ API
Returns a new instance of API.
3 4 5 6 7 |
# File 'lib/contactually/api.rb', line 3 def initialize(api_key = nil) raise ConfigMissingApiKeyError, 'You must provide a Contactually API key' unless Contactually.config.api_key || api_key @api_key = Contactually.config.api_key || api_key @base_url = Contactually.config.contactually_url end |
Instance Method Details
#accounts ⇒ Object
30 31 32 |
# File 'lib/contactually/api.rb', line 30 def accounts @accounts ||= Contactually::Accounts.new self end |
#call(url, http_method, params = {}) ⇒ Object
9 10 11 12 |
# File 'lib/contactually/api.rb', line 9 def call(url, http_method, params={}) response = send(http_method, url, params) JSON.load(response.body) end |
#connection ⇒ Object
42 43 44 45 46 47 48 |
# File 'lib/contactually/api.rb', line 42 def connection @connection ||= Faraday.new do |faraday| faraday.headers['Content-Type'] = 'application/json' faraday.adapter Faraday.default_adapter faraday.use Contactually::Middleware::ErrorDetector end end |
#contact_groupings ⇒ Object
34 35 36 |
# File 'lib/contactually/api.rb', line 34 def contact_groupings @contact_groupings ||= Contactually::ContactGroupings.new self end |
#contacts ⇒ Object
14 15 16 |
# File 'lib/contactually/api.rb', line 14 def contacts @contacts ||= Contactually::Contacts.new self end |
#contents ⇒ Object
38 39 40 |
# File 'lib/contactually/api.rb', line 38 def contents @contents ||= Contactually::Contents.new self end |
#groupings ⇒ Object
26 27 28 |
# File 'lib/contactually/api.rb', line 26 def groupings @groupings ||= Contactually::Groupings.new self end |
#notes ⇒ Object
18 19 20 |
# File 'lib/contactually/api.rb', line 18 def notes @notes ||= Contactually::Notes.new self end |
#tasks ⇒ Object
22 23 24 |
# File 'lib/contactually/api.rb', line 22 def tasks @tasks ||= Contactually::Tasks.new self end |