pipedrive_ruby 1.0.1.pre15

Sign up to get free protection for your applications and to get access to all the features.
Files changed (117) hide show
  1. checksums.yaml +7 -0
  2. data/.codeclimate.yml +30 -0
  3. data/.gitignore +12 -0
  4. data/.rspec +2 -0
  5. data/.rubocop.yml +1156 -0
  6. data/.travis.yml +8 -0
  7. data/CODE_OF_CONDUCT.md +49 -0
  8. data/Gemfile +4 -0
  9. data/Guardfile +56 -0
  10. data/LICENSE.txt +21 -0
  11. data/README.md +59 -0
  12. data/Rakefile +6 -0
  13. data/bin/console +14 -0
  14. data/bin/setup +8 -0
  15. data/doc/Activities.html +138 -0
  16. data/doc/ActivitiesFields.html +134 -0
  17. data/doc/ActivitiesTypes.html +141 -0
  18. data/doc/Authorizations.html +138 -0
  19. data/doc/Currencies.html +143 -0
  20. data/doc/DealsFields.html +146 -0
  21. data/doc/EmailMessages.html +137 -0
  22. data/doc/EmailThreads.html +136 -0
  23. data/doc/Estages.html +137 -0
  24. data/doc/Files.html +139 -0
  25. data/doc/Filters.html +139 -0
  26. data/doc/GlobalMessages.html +134 -0
  27. data/doc/Goals.html +137 -0
  28. data/doc/NoteFields.html +134 -0
  29. data/doc/Notes.html +137 -0
  30. data/doc/OrganizationFields.html +147 -0
  31. data/doc/OrganizationRelationships.html +135 -0
  32. data/doc/PermissionSets.html +134 -0
  33. data/doc/PersonFields.html +146 -0
  34. data/doc/Persons.html +136 -0
  35. data/doc/PipedriveRuby/Activities.html +159 -0
  36. data/doc/PipedriveRuby/ActivitiesFields.html +148 -0
  37. data/doc/PipedriveRuby/ActivitiesTypes.html +148 -0
  38. data/doc/PipedriveRuby/ActivityFields.html +148 -0
  39. data/doc/PipedriveRuby/ActivityTypes.html +148 -0
  40. data/doc/PipedriveRuby/Authorizations.html +231 -0
  41. data/doc/PipedriveRuby/Base.html +456 -0
  42. data/doc/PipedriveRuby/Currencies.html +162 -0
  43. data/doc/PipedriveRuby/DealFields.html +148 -0
  44. data/doc/PipedriveRuby/Deals.html +842 -0
  45. data/doc/PipedriveRuby/HttpFactory.html +1362 -0
  46. data/doc/PipedriveRuby/Organizations.html +148 -0
  47. data/doc/PipedriveRuby/PipedriveClient.html +385 -0
  48. data/doc/PipedriveRuby/Products.html +319 -0
  49. data/doc/PipedriveRuby/PushNotifications.html +159 -0
  50. data/doc/PipedriveRuby/Recents.html +159 -0
  51. data/doc/PipedriveRuby/SearchResults.html +250 -0
  52. data/doc/PipedriveRuby/UserConnections.html +159 -0
  53. data/doc/PipedriveRuby/UserSettings.html +159 -0
  54. data/doc/PipedriveRuby.html +174 -0
  55. data/doc/Pipelines.html +134 -0
  56. data/doc/ProductFields.html +147 -0
  57. data/doc/Products.html +140 -0
  58. data/doc/PushNotifications.html +141 -0
  59. data/doc/Recent.html +134 -0
  60. data/doc/Roles.html +134 -0
  61. data/doc/SearchResults.html +135 -0
  62. data/doc/UserConnections.html +134 -0
  63. data/doc/UserSettings.html +134 -0
  64. data/doc/Users.html +137 -0
  65. data/doc/_index.html +425 -0
  66. data/doc/class_list.html +51 -0
  67. data/doc/css/common.css +1 -0
  68. data/doc/css/full_list.css +58 -0
  69. data/doc/css/style.css +474 -0
  70. data/doc/file.README.html +160 -0
  71. data/doc/file_list.html +56 -0
  72. data/doc/frames.html +17 -0
  73. data/doc/index.html +160 -0
  74. data/doc/js/app.js +243 -0
  75. data/doc/js/full_list.js +216 -0
  76. data/doc/js/jquery.js +4 -0
  77. data/doc/method_list.html +411 -0
  78. data/doc/top-level-namespace.html +114 -0
  79. data/lib/http_factory.rb +154 -0
  80. data/lib/pipedrive_client.rb +24 -0
  81. data/lib/pipedrive_ruby/version.rb +4 -0
  82. data/lib/pipedrive_ruby.rb +48 -0
  83. data/lib/resources/activities.rb +9 -0
  84. data/lib/resources/activitiy_fields.rb +6 -0
  85. data/lib/resources/activity_types.rb +11 -0
  86. data/lib/resources/authorizations.rb +16 -0
  87. data/lib/resources/base.rb +17 -0
  88. data/lib/resources/currencies.rb +13 -0
  89. data/lib/resources/deal_fields.rb +10 -0
  90. data/lib/resources/deals.rb +72 -0
  91. data/lib/resources/email_messages.rb +5 -0
  92. data/lib/resources/email_threads.rb +4 -0
  93. data/lib/resources/files.rb +4 -0
  94. data/lib/resources/filters.rb +4 -0
  95. data/lib/resources/global_messages.rb +3 -0
  96. data/lib/resources/goals.rb +4 -0
  97. data/lib/resources/note_fields.rb +3 -0
  98. data/lib/resources/notes.rb +4 -0
  99. data/lib/resources/organization_fields.rb +8 -0
  100. data/lib/resources/organization_relationships.rb +3 -0
  101. data/lib/resources/organizations.rb +7 -0
  102. data/lib/resources/permission_sets.rb +3 -0
  103. data/lib/resources/person_fields.rb +3 -0
  104. data/lib/resources/persons.rb +4 -0
  105. data/lib/resources/pipelines.rb +3 -0
  106. data/lib/resources/product_fields.rb +8 -0
  107. data/lib/resources/products.rb +29 -0
  108. data/lib/resources/push_notifications.rb +10 -0
  109. data/lib/resources/recents.rb +6 -0
  110. data/lib/resources/roles.rb +3 -0
  111. data/lib/resources/search_results.rb +14 -0
  112. data/lib/resources/stages.rb +4 -0
  113. data/lib/resources/user_connections.rb +7 -0
  114. data/lib/resources/user_settings.rb +6 -0
  115. data/lib/resources/users.rb +5 -0
  116. data/pipedrive_ruby.gemspec +34 -0
  117. metadata +286 -0
@@ -0,0 +1,24 @@
1
+ # share commum methods for resources
2
+ module PipedriveRuby
3
+ # This class is for hold the client informations (API TOKEN, resources)
4
+ class PipedriveClient
5
+
6
+ attr_reader :api_token
7
+
8
+ def initialize(api_token)
9
+ @api_token = api_token
10
+ end
11
+
12
+ # this delegation is only to allow user make PipedriveClient.new("token").resource
13
+ # where resource could be deals organizations etc...
14
+ def method_missing(method)
15
+ begin
16
+ class_name = 'PipedriveRuby::' + method.to_s.split("_").collect(&:capitalize).join
17
+ Object.const_get(class_name).new(self)
18
+ rescue NameError
19
+ "#{method} class not found"
20
+ end
21
+ end
22
+
23
+ end
24
+ end
@@ -0,0 +1,4 @@
1
+ module PipedriveRuby
2
+ # version of gem
3
+ VERSION = "1.0.1.pre15"
4
+ end
@@ -0,0 +1,48 @@
1
+ require 'pipedrive_ruby/version'
2
+ require 'http'
3
+ require 'pipedrive_client'
4
+ require 'http_factory'
5
+ require 'resources/base'
6
+
7
+ require 'resources/deals'
8
+ require 'resources/organizations'
9
+ require 'resources/activities'
10
+ require 'resources/activitiy_fields'
11
+ require 'resources/activity_types'
12
+ require 'resources/authorizations'
13
+ require 'resources/currencies'
14
+ require 'resources/deal_fields'
15
+ require 'resources/push_notifications'
16
+ require 'resources/recents'
17
+ require 'resources/search_results'
18
+ require 'resources/user_settings'
19
+ require 'resources/users'
20
+ require 'resources/products'
21
+
22
+
23
+ # TODO (Felipe Borges Ferreira)
24
+ require 'resources/email_messages'
25
+ require 'resources/email_threads'
26
+ require 'resources/files'
27
+ require 'resources/global_messages'
28
+ require 'resources/goals'
29
+ require 'resources/note_fields'
30
+ require 'resources/notes'
31
+ require 'resources/organization_fields'
32
+ require 'resources/organization_relationships'
33
+ require 'resources/permission_sets'
34
+ require 'resources/person_fields'
35
+ require 'resources/persons'
36
+ require 'resources/pipelines'
37
+ require 'resources/product_fields'
38
+ require 'resources/roles'
39
+ require 'resources/stages'
40
+ require 'resources/user_connections'
41
+ #
42
+
43
+ # If you need to use the PipedriveAPI
44
+ # https://developers.pipedrive.com/v1
45
+ module PipedriveRuby
46
+ # this is the url for API V1
47
+ API_URL = 'https://api.pipedrive.com/v1'.freeze
48
+ end
@@ -0,0 +1,9 @@
1
+ # Activities are appointments/tasks/events on a calendar that can be associated with a Deal, a Person and an Organization.
2
+ # Activities can be of different type (such as call, meeting, lunch or a custom type - see ActivityTypes object) and can be assigned to a particular User.
3
+ # Note that activities can also be created without a specific date/time.
4
+ module PipedriveRuby
5
+ # Available calls (all, find, create, update, remove, remove_many)
6
+ class Activities < PipedriveRuby::Base
7
+ def_delegators :endpoints, :all, :find, :create, :update, :remove, :remove_many
8
+ end
9
+ end
@@ -0,0 +1,6 @@
1
+ # ActivityFields represent different fields that Activity has.
2
+ module PipedriveRuby
3
+ class ActivityFields < PipedriveRuby::Base
4
+ def_delegators :endpoints, :all
5
+ end
6
+ end
@@ -0,0 +1,11 @@
1
+ # ActivityTypes represent different kinds of activities that can be stored.
2
+ # Each ActivityType is presented to the user with an icon and a name.
3
+ # Additionally, a color can be defined (not implemented in the Pipedrive app as of today).
4
+ # ActivityTypes are linked to Activities via ActivityType.key_string = Activity.type.
5
+ # The key_string will be generated by the API based on the given name of the ActivityType upon creation, and cannot be changed.
6
+ # ActivityTypes should be presented to the user in an ordered manner, using the ActivityType.order_nr value.
7
+ module PipedriveRuby
8
+ class ActivityTypes < PipedriveRuby::Base
9
+ def_delegators :endpoints, :all, :create, :update, :remove, :remove_many
10
+ end
11
+ end
@@ -0,0 +1,16 @@
1
+ # Authorization objects can be fetched without an API token but using an email and password.
2
+ # Fetching the Authorization objects essentially allows you to authorize users based on their login credentials and retrieve the underlying API tokens associated with the given user.
3
+ # Note that any given user an Authorization object per each company he/she belongs to.
4
+ module PipedriveRuby
5
+ # Returns all authorizations for a particular user.
6
+ # Authorization objects contain the API tokens the user has with different company accounts in Pipedrive. These can be fetched without an API token but using the email and password of the user.
7
+ class Authorizations < PipedriveRuby::Base
8
+
9
+ def all(authorization)
10
+ create(authorization)
11
+ end
12
+
13
+ def_delegators :endpoints, :create
14
+
15
+ end
16
+ end
@@ -0,0 +1,17 @@
1
+ module PipedriveRuby
2
+ # responsable for interface all resources with PipedriveClient
3
+ class Base
4
+ extend Forwardable
5
+
6
+ attr_reader :client,:endpoints,:base_url
7
+
8
+ def initialize(pipedrive_client)
9
+ class_name = self.class.name
10
+ @client = pipedrive_client
11
+ @endpoints = PipedriveRuby::HttpFactory.new(class_name, @client)
12
+ end
13
+
14
+ def_delegators :endpoints, :custom_get, :custom_post, :custom_delete
15
+
16
+ end
17
+ end
@@ -0,0 +1,13 @@
1
+ # Supported currencies which can be used to represent the monetary value of a Deal, or a value of any monetary type custom field.
2
+ # The Currency.code field must be used to point to a currency.
3
+ # Currency.code is the ISO-4217 format currency code for non-custom currencies.
4
+ # You can differentiate custom and non-custom currencies using the is_custom_flag property.
5
+ # For custom currencies, it is intended that the formatted sums are displayed in the UI using the following format: [sum][non-breaking space character][currency.symbol], for example: 500 users.
6
+ # Custom currencies cannot be added or removed via the API yet — rather the admin users of the account must configure them from the Pipedrive app
7
+ module PipedriveRuby
8
+ # Returns all supported currencies in given account which should be used when saving monetary values with other objects.
9
+ # The 'code' parameter of the returning objects is the currency code according to ISO 4217 for all non-custom currencies.
10
+ class Currencies < PipedriveRuby::Base
11
+ def_delegators :endpoints, :all
12
+ end
13
+ end
@@ -0,0 +1,10 @@
1
+ # DealFields represent the near-complete schema for a Deal in the context of the company of the authorized user.
2
+ # Each company can have a different schema for their Deals, with various custom fields. In the context of using DealFiels as a schema for defining the data fields of a Deal, it must be kept in mind that some types of custom fields can have additional data fields which are not separate DealFields per se.
3
+ # Such is the case with monetary, daterange and timerange fields – each of these fields will have one additional data field in addition to the one presented in the context of DealFields.
4
+ # For example, if there is a monetary field with the key 'ffk9s9' stored on the account, 'ffk9s9' would hold the numeric value of the field, and 'ffk9s9_currency' would hold the ISO currency code that goes along with the numeric value.
5
+ # To find out which data fields are available, fetch one Deal and list its keys.
6
+ module PipedriveRuby
7
+ class DealFields < PipedriveRuby::Base
8
+ def_delegators :endpoints, :all, :find, :create, :update, :remove, :remove_many
9
+ end
10
+ end
@@ -0,0 +1,72 @@
1
+ # Deals represent ongoing, lost or won sales to an Organization or to a Person.
2
+ # Each deal has a monetary value and must be placed in a Stage. Deals can be owned by a User, and followed by one or many Users.
3
+ # Each Deal consists of standard data fields but can also contain a number of custom fields. The custom fields can be recognized by long hashes as keys.
4
+ # These hashes can be mapped against DealField.key. The corresponding label for each such custom field can be obtained from DealField.name.
5
+ module PipedriveRuby
6
+ # This class should hold all endpoints that are specific of deals
7
+ class Deals < PipedriveRuby::Base
8
+
9
+ def delete_follower(deal, user)
10
+ end
11
+
12
+ def products(deal)
13
+ custom_get(:path => "#{deal['id']}/products",
14
+ :params => {:include_product_data => 1}
15
+ )
16
+ end
17
+
18
+ def add_product(deal, product)
19
+ end
20
+
21
+ def update_product(deal, product)
22
+ end
23
+
24
+ def delete_product(deal, product)
25
+ end
26
+
27
+ def activities(deal)
28
+ custom_get(:path => "#{deal['id']}/activities")
29
+ end
30
+
31
+ def log(deal)
32
+ custom_get(:path => "#{deal['id']}/flow")
33
+ end
34
+
35
+ def add_participant(deal, person)
36
+ end
37
+
38
+ def participants(deal)
39
+ custom_get(:path => "#{deal['id']}/participants")
40
+ end
41
+
42
+ def delete_participant(deal, participant)
43
+ end
44
+
45
+ def emails(deal)
46
+ custom_get(:path => "#{deal['id']}/emailMessages")
47
+ end
48
+
49
+ def find_by_title(term)
50
+ find_by(term)
51
+ end
52
+
53
+ def timeline
54
+ end
55
+
56
+ def_delegators :endpoints,
57
+ :add_follower,
58
+ :all,
59
+ :find,
60
+ :find_by,
61
+ :files,
62
+ :followers,
63
+ :create,
64
+ :duplicate,
65
+ :merge,
66
+ :permitted_users,
67
+ :remove,
68
+ :remove_many,
69
+ :update
70
+
71
+ end
72
+ end
@@ -0,0 +1,5 @@
1
+ # EmailMessages represent e-mail messages sent or received through Pipedrive designated e-mail account.
2
+ # Messages are grouped in threads.
3
+ # The Mailbox feature must be enabled on the Pipedrive account in order for these APIs to work properly.
4
+ class EmailMessages
5
+ end
@@ -0,0 +1,4 @@
1
+ # EmailThreads represent e-mail message threads which contain individual e-mail messages.
2
+ # The Mailbox feature must be enabled on the Pipedrive account in order for these APIs to work properly.
3
+ class EmailThreads
4
+ end
@@ -0,0 +1,4 @@
1
+ # Files are documents of any kind (images, spreadsheets, text files, etc) that are uploaded to Pipedrive, and usually associated with a particular Deal, Person or Organization.
2
+ # Note that the API currently does not support downloading files although it lets you retrieve file meta info along retrieve a download URL where the file can be downloaded using a standard HTTP GET request.
3
+ class Files
4
+ end
@@ -0,0 +1,4 @@
1
+ # Each filter is essentially a set of data validation conditions. A filter of the same kind can be applied when fetching list of Deals, Persons, Organizations, Products or Deals in the context of a Pipeline. When applied, only items matching the conditions of the filter are returned.
2
+ # Detailed definitions of filter conditions and additional functionality is not yet available.
3
+ class Filters
4
+ end
@@ -0,0 +1,3 @@
1
+ # Get or dismiss global messages
2
+ class GlobalMessages
3
+ end
@@ -0,0 +1,4 @@
1
+ # Goals help your team meet your sales targets. All goals are automatically carried over to the next period, e.g. when a week ends all the active weekly goals are automatically started for the next week as well.
2
+ # This means less hassle for you.
3
+ class Goals
4
+ end
@@ -0,0 +1,3 @@
1
+ # NoteFields represent different fields that Note has.
2
+ class NoteFields
3
+ end
@@ -0,0 +1,4 @@
1
+ # Notes are pieces of textual (HTML-formatted) information that can be attached to Deals, Persons and Organizations.
2
+ # Notes are usually displayed in the UI in a chronological order – newest first – and in context with other updates regarding the item they are attached to.
3
+ class Notes
4
+ end
@@ -0,0 +1,8 @@
1
+ # OrganizationFields represent the near-complete schema for an Organization in the context of the company of the authorized user.
2
+ # Each company can have a different schema for their Organizations, with various custom fields.
3
+ # In the context of using OrganizationFiels as a schema for defining the data fields of an Organization, it must be kept in mind that some types of custom fields can have additional data fields which are not separate OrganizationFields per se.
4
+ # Such is the case with monetary, daterange and timerange fields – each of these fields will have one additional data field in addition to the one presented in the context of OrganizationFields.
5
+ # For example, if there is a monetary field with the key 'ffk9s9' stored on the account, 'ffk9s9' would hold the numeric value of the field, and 'ffk9s9_currency' would hold the ISO currency code that goes along with the numeric value.
6
+ # To find out which data fields are available, fetch one Organization and list its keys.
7
+ class OrganizationFields
8
+ end
@@ -0,0 +1,3 @@
1
+ # Hangle organization relationships, pipedrive allow you yo have organization associations
2
+ class OrganizationRelationships
3
+ end
@@ -0,0 +1,7 @@
1
+ # Organizations are companies and other kinds of organizations you are making Deals with.
2
+ # Persons can be associated with organizations so that each organization can contain one or more Persons.
3
+ module PipedriveRuby
4
+ class Organizations < PipedriveRuby::Base
5
+ def_delegators :endpoints, :all, :find, :create, :update
6
+ end
7
+ end
@@ -0,0 +1,3 @@
1
+ # Hangle PermissionSets
2
+ class PermissionSets
3
+ end
@@ -0,0 +1,3 @@
1
+ # PersonFields represent the near-complete schema for a Person in the context of the company of the authorized user. Each company can have a different schema for their Persons, with various custom fields. In the context of using PersonFields as a schema for defining the data fields of a Person, it must be kept in mind that some types of custom fields can have additional data fields which are not separate PersonFields per se. Such is the case with monetary, daterange and timerange fields – each of these fields will have one additional data field in addition to the one presented in the context of PersonFields. For example, if there is a monetary field with the key 'ffk9s9' stored on the account, 'ffk9s9' would hold the numeric value of the field, and 'ffk9s9_currency' would hold the ISO currency code that goes along with the numeric value. To find out which data fields are available, fetch one Person and list its keys.
2
+ class PersonFields
3
+ end
@@ -0,0 +1,4 @@
1
+ # Organizations are companies and other kinds of organizations you are making Deals with.
2
+ # Persons can be associated with organizations so that each organization can contain one or more Persons.
3
+ class Persons
4
+ end
@@ -0,0 +1,3 @@
1
+ # Pipelines are essentially ordered collections of Stages.
2
+ class Pipelines
3
+ end
@@ -0,0 +1,8 @@
1
+ # ProductFields represent the near-complete schema for a Product in the context of the company of the authorized user.
2
+ # Each company can have a different schema for their Products, with various custom fields.
3
+ # In the context of using ProductFields as a schema for defining the data fields of a Product, it must be kept in mind that some types of custom fields can have additional data fields which are not separate ProductFields per se.
4
+ # Such is the case with monetary, daterange and timerange fields – each of these fields will have one additional data field in addition to the one presented in the context of ProductFields.
5
+ # For example, if there is a monetary field with the key 'ffk9s9' stored on the account, 'ffk9s9' would hold the numeric value of the field, and 'ffk9s9_currency' would hold the ISO currency code that goes along with the numeric value.
6
+ # To find out which data fields are available, fetch one Product and list its keys.
7
+ class ProductFields
8
+ end
@@ -0,0 +1,29 @@
1
+ # Products are the goods or services you are dealing with.
2
+ # Each product can have N different price points - first, each Product can have a price in N different currencies, and secondly, each Product can have N variations of itself, each having N prices different currencies.
3
+ # Note that only one price per variation per currency is supported.
4
+ # Products can be instantiated to Deals. In the context of instatiation, a custom price, quantity, duration and discount can be applied.
5
+ module PipedriveRuby
6
+ class Products < PipedriveRuby::Base
7
+
8
+ def deals(product)
9
+ custom_get(:path => "#{product['id']}/deals")
10
+ end
11
+
12
+ def find_by_name(term)
13
+ find_by(term)
14
+ end
15
+
16
+ def_delegators :endpoints,
17
+ :add_follower,
18
+ :all,
19
+ :delete_follower,
20
+ :find,
21
+ :find_by,
22
+ :files,
23
+ :followers,
24
+ :create,
25
+ :permitted_users,
26
+ :update,
27
+ :remove
28
+ end
29
+ end
@@ -0,0 +1,10 @@
1
+ # Manage subscriptions of push notifications / web hooks / REST hooks about data changes.
2
+ # A subscription means a designated HTTP(S) endpoint which will receive a request every time a certain event happens on your Pipedrive account.
3
+ # E.g. when you have subscribed to receive events about all new deals ('deal.added'), this HTTP(S) will receive a request per each such event.
4
+ # See https://app.pipedrive.com/push_notifications#dialog:/push_notifications/help for detailed documentation of web hooks.
5
+ module PipedriveRuby
6
+ # Returns data about all subscriptions.
7
+ class PushNotifications < PipedriveRuby::Base
8
+ def_delegators :endpoints, :all, :find, :create, :remove
9
+ end
10
+ end
@@ -0,0 +1,6 @@
1
+ module PipedriveRuby
2
+ # Recent changes across all item types in Pipedrive (deals, persons, etc).
3
+ class Recents < PipedriveRuby::Base
4
+ def_delegators :endpoints, :all
5
+ end
6
+ end
@@ -0,0 +1,3 @@
1
+ # Pipedrive API has no comment on this resource
2
+ class Roles
3
+ end
@@ -0,0 +1,14 @@
1
+ module PipedriveRuby
2
+ # Ordered reference objects, pointing to either Deals, Persons, Organizations, Files or Products.
3
+ class SearchResults < PipedriveRuby::Base
4
+
5
+ # Performs a search from a specific field's values. Results can be either the distinct values of the field (useful for searching autocomplete field values), or actual items IDs (deals, persons, organizations or products).
6
+ # Works only with the following field types: varchar, varchar_auto, double, address, text, phone, date.
7
+ def field(params={})
8
+ options = {:params => params}
9
+ options[:path] = 'field'
10
+ custom_get(options)
11
+ end
12
+ def_delegators :endpoints, :all, :custom_get
13
+ end
14
+ end
@@ -0,0 +1,4 @@
1
+ # Stage is a logical component of a Pipeline, and essentially a bucket that can hold a number of Deals.
2
+ # In the context of the Pipeline a stage belongs to, it has an order number which defines the order of stages in that Pipeline.
3
+ class Estages
4
+ end
@@ -0,0 +1,7 @@
1
+ # Manage user connections. For example, google.
2
+ module PipedriveRuby
3
+ # Returns data about all connections for authorized user.
4
+ class UserConnections < PipedriveRuby::Base
5
+ def_delegators :endpoints, :all
6
+ end
7
+ end
@@ -0,0 +1,6 @@
1
+ module PipedriveRuby
2
+ # Lists settings of authorized user.
3
+ class UserSettings < PipedriveRuby::Base
4
+ def_delegators :endpoints, :all
5
+ end
6
+ end
@@ -0,0 +1,5 @@
1
+ # Users are people with access to your Pipedrive account.
2
+ # A user may belong to one or many Pipedrive accounts, so deleting a user from one Pipedrive account will not remove the user from the data store if he/she is connected to multiple accounts.
3
+ # Users should not be confused with Persons.
4
+ class Users
5
+ end
@@ -0,0 +1,34 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'pipedrive_ruby/version'
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = "pipedrive_ruby"
8
+ spec.version = PipedriveRuby::VERSION
9
+ spec.authors = ["Felipe Borges Ferreira"]
10
+ spec.email = ["lypborges@gmail.com"]
11
+
12
+ spec.summary = %q{Wrapper for Pipedrive API call.}
13
+ spec.description = %q{Gem for use Pipedrive API for multiple tokens.}
14
+ spec.homepage = "https://github.com/lypborges/pipedrive_ruby"
15
+ spec.license = "MIT"
16
+
17
+ spec.has_rdoc = 'yard'
18
+
19
+ spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
20
+ spec.bindir = "exe"
21
+ spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
22
+ spec.require_paths = ["lib"]
23
+
24
+ spec.add_dependency "http", "~> 2.0"
25
+
26
+ spec.add_development_dependency "bundler", "~> 1.12"
27
+ spec.add_development_dependency "rake", "~> 10.0"
28
+ spec.add_development_dependency "rspec", "~> 3.0"
29
+ spec.add_development_dependency "webmock", "~> 2.1"
30
+ spec.add_development_dependency "vcr", "~> 3.0"
31
+ spec.add_development_dependency "dotenv", "~> 2.1"
32
+ spec.add_development_dependency "byebug", "~> 9.0"
33
+ spec.add_development_dependency "codeclimate-test-reporter", "~>0.6"
34
+ end