Class: BaseCRM::Client

Inherits:
Object
  • Object
show all
Defined in:
lib/basecrm.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(options = {}) ⇒ Client

Instantiate a new BaseCRM API V2 client

Parameters:

  • options (Hash) (defaults to: {})

    Client options

Options Hash (options):

  • :access_token (String)

    Personal access token

  • :base_url (String) — default: https://api.getbase.com

    Base url for the api

  • :use_agent (String) — default: BaseCRM/v2 Ruby/{Version}

    Client user agent

  • :timeout (Integer) — default: 30

    Request timeout

  • :verbose (Boolean) — default: false

    Verbose/debug mode

  • :logger (Logger) — default: STDOUT

    Logged used in verbose mode

Raises:



71
72
73
74
75
76
# File 'lib/basecrm.rb', line 71

def initialize(options={})
  @config = Configuration.new(options)
  @config.validate!

  @http_client = HttpClient.new(@config)
end

Instance Attribute Details

#configObject (readonly)

Returns the value of attribute config.



52
53
54
# File 'lib/basecrm.rb', line 52

def config
  @config
end

#http_clientObject (readonly)

Returns the value of attribute http_client.



53
54
55
# File 'lib/basecrm.rb', line 53

def http_client
  @http_client
end

Instance Method Details

#accountsAccountsService

Access all Accounts related actions.

Returns:

See Also:



83
84
85
# File 'lib/basecrm.rb', line 83

def accounts
  @accounts ||= AccountsService.new(@http_client)
end

#associated_contactsAssociatedContactsService

Access all AssociatedContacts related actions.

Returns:

See Also:



92
93
94
# File 'lib/basecrm.rb', line 92

def associated_contacts
  @associated_contacts ||= AssociatedContactsService.new(@http_client)
end

#contactsContactsService

Access all Contacts related actions.

Returns:

See Also:



101
102
103
# File 'lib/basecrm.rb', line 101

def contacts
  @contacts ||= ContactsService.new(@http_client)
end

#dealsDealsService

Access all Deals related actions.

Returns:

See Also:



110
111
112
# File 'lib/basecrm.rb', line 110

def deals
  @deals ||= DealsService.new(@http_client)
end

#leadsLeadsService

Access all Leads related actions.

Returns:

See Also:



119
120
121
# File 'lib/basecrm.rb', line 119

def leads
  @leads ||= LeadsService.new(@http_client)
end

#loss_reasonsLossReasonsService

Access all LossReasons related actions.

Returns:

See Also:



128
129
130
# File 'lib/basecrm.rb', line 128

def loss_reasons
  @loss_reasons ||= LossReasonsService.new(@http_client)
end

#notesNotesService

Access all Notes related actions.

Returns:

See Also:



137
138
139
# File 'lib/basecrm.rb', line 137

def notes
  @notes ||= NotesService.new(@http_client)
end

#pipelinesPipelinesService

Access all Pipelines related actions.

Returns:

See Also:



146
147
148
# File 'lib/basecrm.rb', line 146

def pipelines
  @pipelines ||= PipelinesService.new(@http_client)
end

#sourcesSourcesService

Access all Sources related actions.

Returns:

See Also:



155
156
157
# File 'lib/basecrm.rb', line 155

def sources
  @sources ||= SourcesService.new(@http_client)
end

#stagesStagesService

Access all Stages related actions.

Returns:

See Also:



164
165
166
# File 'lib/basecrm.rb', line 164

def stages
  @stages ||= StagesService.new(@http_client)
end

#syncSyncService

Access Sync API related low-level actions.

Returns:

See Also:



199
200
201
# File 'lib/basecrm.rb', line 199

def sync
  @sync ||= SyncService.new(@http_client)
end

#tagsTagsService

Access all Tags related actions.

Returns:

See Also:



173
174
175
# File 'lib/basecrm.rb', line 173

def tags
  @tags ||= TagsService.new(@http_client)
end

#tasksTasksService

Access all Tasks related actions.

Returns:

See Also:



182
183
184
# File 'lib/basecrm.rb', line 182

def tasks
  @tasks ||= TasksService.new(@http_client)
end

#usersUsersService

Access all Users related actions.

Returns:

See Also:



191
192
193
# File 'lib/basecrm.rb', line 191

def users
  @users ||= UsersService.new(@http_client)
end