module Paperdrive::Client::Products

Instance methods related to Products to embed into Paperdrive::Client
arguments are compatible with the Pipedribe API.

@see developers.pipedrive.com/docs/api/v1/#!/Products

Public Instance Methods

all_products(**args) click to toggle source
GET

Get all products

@see developers.pipedrive.com/docs/api/v1/#!/Products/get_products @return [Paperdrive::Response]

# File lib/paperdrive/client/products.rb, line 18
def all_products(**args)
  params = parameters(args) do
    optional_params :user_id, :filter_id, :first_char, :start, :limit
  end
  request(:get, 'products', params)
end
create_product(**args) click to toggle source
POST

Add a product

@see developers.pipedrive.com/docs/api/v1/#!/Products/post_products @return [Paperdrive::Response]

# File lib/paperdrive/client/products.rb, line 101
def create_product(**args)
  params = parameters(args) do
    required_params :name
    optional_params :name, :code, :unit, :tax, :active_flag, :visible_to, :owner_id, :prices
  end
  request(:post, 'products', params)
end
create_product_follower(id:, **args) click to toggle source
POST

Add a follower to a product

@param [integer] id: @see developers.pipedrive.com/docs/api/v1/#!/Products/post_products_id_followers @return [Paperdrive::Response]

# File lib/paperdrive/client/products.rb, line 114
def create_product_follower(id:, **args)
  params = parameters(args) do
    required_params :user_id
    optional_params :user_id
  end
  request(:post, "products/#{id}/followers", params)
end
delete_product(id:, **args) click to toggle source
DELETE

Delete a product

@param [integer] id: @see developers.pipedrive.com/docs/api/v1/#!/Products/delete_products_id @return [Paperdrive::Response]

# File lib/paperdrive/client/products.rb, line 139
def delete_product(id:, **args)
  params = parameters(args) do
    optional_params
  end
  request(:delete, "products/#{id}", params)
end
delete_product_follower(id:, follower_id:, **args) click to toggle source
DELETE

Delete a follower from a product

@param [integer] id: @param [integer] follower_id: @see developers.pipedrive.com/docs/api/v1/#!/Products/delete_products_id_followers_follower_id @return [Paperdrive::Response]

# File lib/paperdrive/client/products.rb, line 152
def delete_product_follower(id:, follower_id:, **args)
  params = parameters(args) do
    optional_params
  end
  request(:delete, "products/#{id}/followers/#{follower_id}", params)
end
find_products_by_name(**args) click to toggle source
GET

Find products by name

@see developers.pipedrive.com/docs/api/v1/#!/Products/get_products_find @return [Paperdrive::Response]

# File lib/paperdrive/client/products.rb, line 29
def find_products_by_name(**args)
  params = parameters(args) do
    required_params :term
    optional_params :term, :currency, :start, :limit
  end
  request(:get, 'products/find', params)
end
product(id:, **args) click to toggle source
GET

Get one product

@param [integer] id: @see developers.pipedrive.com/docs/api/v1/#!/Products/get_products_id @return [Paperdrive::Response]

# File lib/paperdrive/client/products.rb, line 42
def product(id:, **args)
  params = parameters(args) do
    optional_params
  end
  request(:get, "products/#{id}", params)
end
product_deals(id:, **args) click to toggle source
GET

Get deals where a product is attached to

@param [integer] id: @see developers.pipedrive.com/docs/api/v1/#!/Products/get_products_id_deals @return [Paperdrive::Response]

# File lib/paperdrive/client/products.rb, line 54
def product_deals(id:, **args)
  params = parameters(args) do
    optional_params :start, :limit, :status
  end
  request(:get, "products/#{id}/deals", params)
end
product_files(id:, **args) click to toggle source
GET

List files attached to a product

@param [integer] id: @see developers.pipedrive.com/docs/api/v1/#!/Products/get_products_id_files @return [Paperdrive::Response]

# File lib/paperdrive/client/products.rb, line 66
def product_files(id:, **args)
  params = parameters(args) do
    optional_params :start, :limit, :include_deleted_files, :sort
  end
  request(:get, "products/#{id}/files", params)
end
product_followers(id:, **args) click to toggle source
GET

List followers of a product

@param [integer] id: @see developers.pipedrive.com/docs/api/v1/#!/Products/get_products_id_followers @return [Paperdrive::Response]

# File lib/paperdrive/client/products.rb, line 78
def product_followers(id:, **args)
  params = parameters(args) do
    optional_params
  end
  request(:get, "products/#{id}/followers", params)
end
product_permitted_users(id:, **args) click to toggle source
GET

List permitted users

@param [integer] id: @see developers.pipedrive.com/docs/api/v1/#!/Products/get_products_id_permittedUsers @return [Paperdrive::Response]

# File lib/paperdrive/client/products.rb, line 90
def product_permitted_users(id:, **args)
  params = parameters(args) do
    optional_params :access_level
  end
  request(:get, "products/#{id}/permittedUsers", params)
end
update_product(id:, **args) click to toggle source
PUT

Update a product

@param [integer] id: @see developers.pipedrive.com/docs/api/v1/#!/Products/put_products_id @return [Paperdrive::Response]

# File lib/paperdrive/client/products.rb, line 127
def update_product(id:, **args)
  params = parameters(args) do
    optional_params :name, :code, :unit, :tax, :active_flag, :visible_to, :owner_id, :prices
  end
  request(:put, "products/#{id}", params)
end