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:



69
70
71
72
73
74
# File 'lib/basecrm.rb', line 69

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.



50
51
52
# File 'lib/basecrm.rb', line 50

def config
  @config
end

#http_clientObject (readonly)

Returns the value of attribute http_client.



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

def http_client
  @http_client
end

Instance Method Details

#accountsAccountsService

Access all Accounts related actions.

Returns:

See Also:



81
82
83
# File 'lib/basecrm.rb', line 81

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

#associated_contactsAssociatedContactsService

Access all AssociatedContacts related actions.

Returns:

See Also:



90
91
92
# File 'lib/basecrm.rb', line 90

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

#contactsContactsService

Access all Contacts related actions.

Returns:

See Also:



99
100
101
# File 'lib/basecrm.rb', line 99

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

#dealsDealsService

Access all Deals related actions.

Returns:

See Also:



108
109
110
# File 'lib/basecrm.rb', line 108

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

#leadsLeadsService

Access all Leads related actions.

Returns:

See Also:



117
118
119
# File 'lib/basecrm.rb', line 117

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

#loss_reasonsLossReasonsService

Access all LossReasons related actions.

Returns:

See Also:



126
127
128
# File 'lib/basecrm.rb', line 126

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

#notesNotesService

Access all Notes related actions.

Returns:

See Also:



135
136
137
# File 'lib/basecrm.rb', line 135

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

#pipelinesPipelinesService

Access all Pipelines related actions.

Returns:

See Also:



144
145
146
# File 'lib/basecrm.rb', line 144

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

#sourcesSourcesService

Access all Sources related actions.

Returns:

See Also:



153
154
155
# File 'lib/basecrm.rb', line 153

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

#stagesStagesService

Access all Stages related actions.

Returns:

See Also:



162
163
164
# File 'lib/basecrm.rb', line 162

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

#syncSyncService

Access Sync API related low-level actions.

Returns:

See Also:



197
198
199
# File 'lib/basecrm.rb', line 197

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

#tagsTagsService

Access all Tags related actions.

Returns:

See Also:



171
172
173
# File 'lib/basecrm.rb', line 171

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

#tasksTasksService

Access all Tasks related actions.

Returns:

See Also:



180
181
182
# File 'lib/basecrm.rb', line 180

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

#usersUsersService

Access all Users related actions.

Returns:

See Also:



189
190
191
# File 'lib/basecrm.rb', line 189

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