Module: Paperdrive::Client::ProductFields

Includes:
Parameters
Included in:
Paperdrive::Client
Defined in:
lib/paperdrive/client/product_fields.rb

Overview

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

Instance Method Summary collapse

Instance Method Details

#all_product_fields(**args) ⇒ Paperdrive::Response

GET

Get all product fields



18
19
20
21
22
23
# File 'lib/paperdrive/client/product_fields.rb', line 18

def all_product_fields(**args)
  params = parameters(args) do
    optional_params
  end
  request(:get, 'productFields', params)
end

#create_product_field(**args) ⇒ Paperdrive::Response

POST

Add a new product field



41
42
43
44
45
46
47
# File 'lib/paperdrive/client/product_fields.rb', line 41

def create_product_field(**args)
  params = parameters(args) do
    required_params :name, :field_type
    optional_params :name, :field_type, :options
  end
  request(:post, 'productFields', params)
end

#delete_product_field(id:, **args) ⇒ Paperdrive::Response

DELETE

Delete a product field



79
80
81
82
83
84
# File 'lib/paperdrive/client/product_fields.rb', line 79

def delete_product_field(id:, **args)
  params = parameters(args) do
    optional_params
  end
  request(:delete, "productFields/#{id}", params)
end

#delete_product_fields(**args) ⇒ Paperdrive::Response

DELETE

Delete multiple product fields in bulk



66
67
68
69
70
71
72
# File 'lib/paperdrive/client/product_fields.rb', line 66

def delete_product_fields(**args)
  params = parameters(args) do
    required_params :ids
    optional_params :ids
  end
  request(:delete, 'productFields', params)
end

#product_field(id:, **args) ⇒ Paperdrive::Response

GET

Get one product field



30
31
32
33
34
35
# File 'lib/paperdrive/client/product_fields.rb', line 30

def product_field(id:, **args)
  params = parameters(args) do
    optional_params
  end
  request(:get, "productFields/#{id}", params)
end

#update_product_field(id:, **args) ⇒ Paperdrive::Response

PUT

Update a product field



54
55
56
57
58
59
60
# File 'lib/paperdrive/client/product_fields.rb', line 54

def update_product_field(id:, **args)
  params = parameters(args) do
    required_params :name
    optional_params :name, :options
  end
  request(:put, "productFields/#{id}", params)
end