ultracart_api 3.1.18 → 3.1.42

Sign up to get free protection for your applications and to get access to all the features.
Files changed (69) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +33 -4
  3. data/docs/CouponPercentOffMsrpItems.md +1 -1
  4. data/docs/CouponTierAmount.md +1 -0
  5. data/docs/CouponTierPercent.md +1 -0
  6. data/docs/CouponTierQuantityAmount.md +1 -0
  7. data/docs/CouponTierQuantityPercent.md +1 -0
  8. data/docs/CouponTieredPercentOffShipping.md +1 -0
  9. data/docs/CustomerLoyalty.md +1 -0
  10. data/docs/EmailCampaign.md +2 -1
  11. data/docs/EmailFlow.md +2 -1
  12. data/docs/LibraryItemAttribute.md +0 -1
  13. data/docs/OrderApi.md +1 -1
  14. data/docs/OrderProcessPaymentRequest.md +1 -0
  15. data/docs/OrderSummary.md +1 -0
  16. data/docs/ScreenRecording.md +13 -0
  17. data/docs/ScreenRecordingAdPlatform.md +13 -0
  18. data/docs/ScreenRecordingFilter.md +12 -0
  19. data/docs/ScreenRecordingFilterPageView.md +1 -0
  20. data/docs/ScreenRecordingFilterValues.md +12 -2
  21. data/docs/ScreenRecordingFilterValuesPageView.md +13 -0
  22. data/docs/ScreenRecordingHeatmap.md +19 -0
  23. data/docs/ScreenRecordingHeatmapIndexResponse.md +12 -0
  24. data/docs/ScreenRecordingHeatmapRequest.md +9 -0
  25. data/docs/ScreenRecordingHeatmapReset.md +8 -0
  26. data/docs/ScreenRecordingHeatmapResponse.md +12 -0
  27. data/docs/ScreenRecordingHeatmapUrl.md +12 -0
  28. data/docs/ScreenRecordingPageView.md +3 -0
  29. data/docs/ScreenRecordingPageViewEvent.md +1 -0
  30. data/docs/ScreenRecordingQueryResponse.md +3 -0
  31. data/docs/ScreenRecordingSegment.md +3 -0
  32. data/docs/ScreenRecordingSettings.md +5 -0
  33. data/docs/StorefrontApi.md +158 -0
  34. data/docs/WebhookLog.md +1 -0
  35. data/lib/ultracart_api.rb +8 -0
  36. data/lib/ultracart_api/api/order_api.rb +2 -2
  37. data/lib/ultracart_api/api/storefront_api.rb +176 -0
  38. data/lib/ultracart_api/models/coupon_percent_off_msrp_items.rb +1 -1
  39. data/lib/ultracart_api/models/coupon_tier_amount.rb +26 -1
  40. data/lib/ultracart_api/models/coupon_tier_percent.rb +26 -1
  41. data/lib/ultracart_api/models/coupon_tier_quantity_amount.rb +29 -4
  42. data/lib/ultracart_api/models/coupon_tier_quantity_percent.rb +29 -4
  43. data/lib/ultracart_api/models/coupon_tiered_percent_off_shipping.rb +26 -1
  44. data/lib/ultracart_api/models/customer_loyalty.rb +11 -1
  45. data/lib/ultracart_api/models/email_campaign.rb +12 -2
  46. data/lib/ultracart_api/models/email_flow.rb +12 -2
  47. data/lib/ultracart_api/models/library_item_attribute.rb +1 -10
  48. data/lib/ultracart_api/models/order_process_payment_request.rb +11 -1
  49. data/lib/ultracart_api/models/order_summary.rb +10 -1
  50. data/lib/ultracart_api/models/screen_recording.rb +128 -1
  51. data/lib/ultracart_api/models/screen_recording_ad_platform.rb +235 -0
  52. data/lib/ultracart_api/models/screen_recording_filter.rb +109 -1
  53. data/lib/ultracart_api/models/screen_recording_filter_page_view.rb +10 -1
  54. data/lib/ultracart_api/models/screen_recording_filter_values.rb +124 -18
  55. data/lib/ultracart_api/models/screen_recording_filter_values_page_view.rb +237 -0
  56. data/lib/ultracart_api/models/screen_recording_heatmap.rb +283 -0
  57. data/lib/ultracart_api/models/screen_recording_heatmap_index_response.rb +223 -0
  58. data/lib/ultracart_api/models/screen_recording_heatmap_request.rb +193 -0
  59. data/lib/ultracart_api/models/screen_recording_heatmap_reset.rb +184 -0
  60. data/lib/ultracart_api/models/screen_recording_heatmap_response.rb +221 -0
  61. data/lib/ultracart_api/models/screen_recording_heatmap_url.rb +222 -0
  62. data/lib/ultracart_api/models/screen_recording_page_view.rb +30 -1
  63. data/lib/ultracart_api/models/screen_recording_page_view_event.rb +10 -1
  64. data/lib/ultracart_api/models/screen_recording_query_response.rb +30 -1
  65. data/lib/ultracart_api/models/screen_recording_segment.rb +30 -1
  66. data/lib/ultracart_api/models/screen_recording_settings.rb +49 -4
  67. data/lib/ultracart_api/models/webhook_log.rb +11 -1
  68. data/lib/ultracart_api/version.rb +1 -1
  69. metadata +18 -2
@@ -20,7 +20,7 @@ module UltracartClient
20
20
  # A list of items which cannot be discounted.
21
21
  attr_accessor :excluded_items
22
22
 
23
- # An optional list of items which will receive a discount. If blank, discount applies to all items except excluded items.
23
+ # An list of items which will receive a discount.
24
24
  attr_accessor :items
25
25
 
26
26
  # The (optional) maximum quantity of discounted items.
@@ -17,6 +17,9 @@ module UltracartClient
17
17
  # The amount of subtotal discount
18
18
  attr_accessor :discount_amount
19
19
 
20
+ # Quickbooks accounting code.
21
+ attr_accessor :quickbooks_code
22
+
20
23
  # The amount of subtotal required to receive the discount amount
21
24
  attr_accessor :subtotal_amount
22
25
 
@@ -24,6 +27,7 @@ module UltracartClient
24
27
  def self.attribute_map
25
28
  {
26
29
  :'discount_amount' => :'discount_amount',
30
+ :'quickbooks_code' => :'quickbooks_code',
27
31
  :'subtotal_amount' => :'subtotal_amount'
28
32
  }
29
33
  end
@@ -32,6 +36,7 @@ module UltracartClient
32
36
  def self.swagger_types
33
37
  {
34
38
  :'discount_amount' => :'Float',
39
+ :'quickbooks_code' => :'String',
35
40
  :'subtotal_amount' => :'Float'
36
41
  }
37
42
  end
@@ -48,6 +53,10 @@ module UltracartClient
48
53
  self.discount_amount = attributes[:'discount_amount']
49
54
  end
50
55
 
56
+ if attributes.has_key?(:'quickbooks_code')
57
+ self.quickbooks_code = attributes[:'quickbooks_code']
58
+ end
59
+
51
60
  if attributes.has_key?(:'subtotal_amount')
52
61
  self.subtotal_amount = attributes[:'subtotal_amount']
53
62
  end
@@ -57,21 +66,37 @@ module UltracartClient
57
66
  # @return Array for valid properties with the reasons
58
67
  def list_invalid_properties
59
68
  invalid_properties = Array.new
69
+ if !@quickbooks_code.nil? && @quickbooks_code.to_s.length > 20
70
+ invalid_properties.push('invalid value for "quickbooks_code", the character length must be smaller than or equal to 20.')
71
+ end
72
+
60
73
  invalid_properties
61
74
  end
62
75
 
63
76
  # Check to see if the all the properties in the model are valid
64
77
  # @return true if the model is valid
65
78
  def valid?
79
+ return false if !@quickbooks_code.nil? && @quickbooks_code.to_s.length > 20
66
80
  true
67
81
  end
68
82
 
83
+ # Custom attribute writer method with validation
84
+ # @param [Object] quickbooks_code Value to be assigned
85
+ def quickbooks_code=(quickbooks_code)
86
+ if !quickbooks_code.nil? && quickbooks_code.to_s.length > 20
87
+ fail ArgumentError, 'invalid value for "quickbooks_code", the character length must be smaller than or equal to 20.'
88
+ end
89
+
90
+ @quickbooks_code = quickbooks_code
91
+ end
92
+
69
93
  # Checks equality by comparing each attribute.
70
94
  # @param [Object] Object to be compared
71
95
  def ==(o)
72
96
  return true if self.equal?(o)
73
97
  self.class == o.class &&
74
98
  discount_amount == o.discount_amount &&
99
+ quickbooks_code == o.quickbooks_code &&
75
100
  subtotal_amount == o.subtotal_amount
76
101
  end
77
102
 
@@ -84,7 +109,7 @@ module UltracartClient
84
109
  # Calculates hash code according to all attributes.
85
110
  # @return [Fixnum] Hash code
86
111
  def hash
87
- [discount_amount, subtotal_amount].hash
112
+ [discount_amount, quickbooks_code, subtotal_amount].hash
88
113
  end
89
114
 
90
115
  # Builds the object from hash
@@ -17,6 +17,9 @@ module UltracartClient
17
17
  # The percent of subtotal discount
18
18
  attr_accessor :discount_percent
19
19
 
20
+ # Quickbooks accounting code.
21
+ attr_accessor :quickbooks_code
22
+
20
23
  # The amount of subtotal required to receive the discount percent
21
24
  attr_accessor :subtotal_amount
22
25
 
@@ -24,6 +27,7 @@ module UltracartClient
24
27
  def self.attribute_map
25
28
  {
26
29
  :'discount_percent' => :'discount_percent',
30
+ :'quickbooks_code' => :'quickbooks_code',
27
31
  :'subtotal_amount' => :'subtotal_amount'
28
32
  }
29
33
  end
@@ -32,6 +36,7 @@ module UltracartClient
32
36
  def self.swagger_types
33
37
  {
34
38
  :'discount_percent' => :'Float',
39
+ :'quickbooks_code' => :'String',
35
40
  :'subtotal_amount' => :'Float'
36
41
  }
37
42
  end
@@ -48,6 +53,10 @@ module UltracartClient
48
53
  self.discount_percent = attributes[:'discount_percent']
49
54
  end
50
55
 
56
+ if attributes.has_key?(:'quickbooks_code')
57
+ self.quickbooks_code = attributes[:'quickbooks_code']
58
+ end
59
+
51
60
  if attributes.has_key?(:'subtotal_amount')
52
61
  self.subtotal_amount = attributes[:'subtotal_amount']
53
62
  end
@@ -57,21 +66,37 @@ module UltracartClient
57
66
  # @return Array for valid properties with the reasons
58
67
  def list_invalid_properties
59
68
  invalid_properties = Array.new
69
+ if !@quickbooks_code.nil? && @quickbooks_code.to_s.length > 20
70
+ invalid_properties.push('invalid value for "quickbooks_code", the character length must be smaller than or equal to 20.')
71
+ end
72
+
60
73
  invalid_properties
61
74
  end
62
75
 
63
76
  # Check to see if the all the properties in the model are valid
64
77
  # @return true if the model is valid
65
78
  def valid?
79
+ return false if !@quickbooks_code.nil? && @quickbooks_code.to_s.length > 20
66
80
  true
67
81
  end
68
82
 
83
+ # Custom attribute writer method with validation
84
+ # @param [Object] quickbooks_code Value to be assigned
85
+ def quickbooks_code=(quickbooks_code)
86
+ if !quickbooks_code.nil? && quickbooks_code.to_s.length > 20
87
+ fail ArgumentError, 'invalid value for "quickbooks_code", the character length must be smaller than or equal to 20.'
88
+ end
89
+
90
+ @quickbooks_code = quickbooks_code
91
+ end
92
+
69
93
  # Checks equality by comparing each attribute.
70
94
  # @param [Object] Object to be compared
71
95
  def ==(o)
72
96
  return true if self.equal?(o)
73
97
  self.class == o.class &&
74
98
  discount_percent == o.discount_percent &&
99
+ quickbooks_code == o.quickbooks_code &&
75
100
  subtotal_amount == o.subtotal_amount
76
101
  end
77
102
 
@@ -84,7 +109,7 @@ module UltracartClient
84
109
  # Calculates hash code according to all attributes.
85
110
  # @return [Fixnum] Hash code
86
111
  def hash
87
- [discount_percent, subtotal_amount].hash
112
+ [discount_percent, quickbooks_code, subtotal_amount].hash
88
113
  end
89
114
 
90
115
  # Builds the object from hash
@@ -20,11 +20,15 @@ module UltracartClient
20
20
  # The quantity of item purchased (in units)
21
21
  attr_accessor :item_quantity
22
22
 
23
+ # Quickbooks accounting code.
24
+ attr_accessor :quickbooks_code
25
+
23
26
  # Attribute mapping from ruby-style variable name to JSON key.
24
27
  def self.attribute_map
25
28
  {
26
29
  :'discount_amount' => :'discount_amount',
27
- :'item_quantity' => :'item_quantity'
30
+ :'item_quantity' => :'item_quantity',
31
+ :'quickbooks_code' => :'quickbooks_code'
28
32
  }
29
33
  end
30
34
 
@@ -32,7 +36,8 @@ module UltracartClient
32
36
  def self.swagger_types
33
37
  {
34
38
  :'discount_amount' => :'Float',
35
- :'item_quantity' => :'Integer'
39
+ :'item_quantity' => :'Integer',
40
+ :'quickbooks_code' => :'String'
36
41
  }
37
42
  end
38
43
 
@@ -51,28 +56,48 @@ module UltracartClient
51
56
  if attributes.has_key?(:'item_quantity')
52
57
  self.item_quantity = attributes[:'item_quantity']
53
58
  end
59
+
60
+ if attributes.has_key?(:'quickbooks_code')
61
+ self.quickbooks_code = attributes[:'quickbooks_code']
62
+ end
54
63
  end
55
64
 
56
65
  # Show invalid properties with the reasons. Usually used together with valid?
57
66
  # @return Array for valid properties with the reasons
58
67
  def list_invalid_properties
59
68
  invalid_properties = Array.new
69
+ if !@quickbooks_code.nil? && @quickbooks_code.to_s.length > 20
70
+ invalid_properties.push('invalid value for "quickbooks_code", the character length must be smaller than or equal to 20.')
71
+ end
72
+
60
73
  invalid_properties
61
74
  end
62
75
 
63
76
  # Check to see if the all the properties in the model are valid
64
77
  # @return true if the model is valid
65
78
  def valid?
79
+ return false if !@quickbooks_code.nil? && @quickbooks_code.to_s.length > 20
66
80
  true
67
81
  end
68
82
 
83
+ # Custom attribute writer method with validation
84
+ # @param [Object] quickbooks_code Value to be assigned
85
+ def quickbooks_code=(quickbooks_code)
86
+ if !quickbooks_code.nil? && quickbooks_code.to_s.length > 20
87
+ fail ArgumentError, 'invalid value for "quickbooks_code", the character length must be smaller than or equal to 20.'
88
+ end
89
+
90
+ @quickbooks_code = quickbooks_code
91
+ end
92
+
69
93
  # Checks equality by comparing each attribute.
70
94
  # @param [Object] Object to be compared
71
95
  def ==(o)
72
96
  return true if self.equal?(o)
73
97
  self.class == o.class &&
74
98
  discount_amount == o.discount_amount &&
75
- item_quantity == o.item_quantity
99
+ item_quantity == o.item_quantity &&
100
+ quickbooks_code == o.quickbooks_code
76
101
  end
77
102
 
78
103
  # @see the `==` method
@@ -84,7 +109,7 @@ module UltracartClient
84
109
  # Calculates hash code according to all attributes.
85
110
  # @return [Fixnum] Hash code
86
111
  def hash
87
- [discount_amount, item_quantity].hash
112
+ [discount_amount, item_quantity, quickbooks_code].hash
88
113
  end
89
114
 
90
115
  # Builds the object from hash
@@ -20,11 +20,15 @@ module UltracartClient
20
20
  # The quantity of item purchased (in units)
21
21
  attr_accessor :item_quantity
22
22
 
23
+ # Quickbooks accounting code.
24
+ attr_accessor :quickbooks_code
25
+
23
26
  # Attribute mapping from ruby-style variable name to JSON key.
24
27
  def self.attribute_map
25
28
  {
26
29
  :'discount_percent' => :'discount_percent',
27
- :'item_quantity' => :'item_quantity'
30
+ :'item_quantity' => :'item_quantity',
31
+ :'quickbooks_code' => :'quickbooks_code'
28
32
  }
29
33
  end
30
34
 
@@ -32,7 +36,8 @@ module UltracartClient
32
36
  def self.swagger_types
33
37
  {
34
38
  :'discount_percent' => :'Float',
35
- :'item_quantity' => :'Integer'
39
+ :'item_quantity' => :'Integer',
40
+ :'quickbooks_code' => :'String'
36
41
  }
37
42
  end
38
43
 
@@ -51,28 +56,48 @@ module UltracartClient
51
56
  if attributes.has_key?(:'item_quantity')
52
57
  self.item_quantity = attributes[:'item_quantity']
53
58
  end
59
+
60
+ if attributes.has_key?(:'quickbooks_code')
61
+ self.quickbooks_code = attributes[:'quickbooks_code']
62
+ end
54
63
  end
55
64
 
56
65
  # Show invalid properties with the reasons. Usually used together with valid?
57
66
  # @return Array for valid properties with the reasons
58
67
  def list_invalid_properties
59
68
  invalid_properties = Array.new
69
+ if !@quickbooks_code.nil? && @quickbooks_code.to_s.length > 20
70
+ invalid_properties.push('invalid value for "quickbooks_code", the character length must be smaller than or equal to 20.')
71
+ end
72
+
60
73
  invalid_properties
61
74
  end
62
75
 
63
76
  # Check to see if the all the properties in the model are valid
64
77
  # @return true if the model is valid
65
78
  def valid?
79
+ return false if !@quickbooks_code.nil? && @quickbooks_code.to_s.length > 20
66
80
  true
67
81
  end
68
82
 
83
+ # Custom attribute writer method with validation
84
+ # @param [Object] quickbooks_code Value to be assigned
85
+ def quickbooks_code=(quickbooks_code)
86
+ if !quickbooks_code.nil? && quickbooks_code.to_s.length > 20
87
+ fail ArgumentError, 'invalid value for "quickbooks_code", the character length must be smaller than or equal to 20.'
88
+ end
89
+
90
+ @quickbooks_code = quickbooks_code
91
+ end
92
+
69
93
  # Checks equality by comparing each attribute.
70
94
  # @param [Object] Object to be compared
71
95
  def ==(o)
72
96
  return true if self.equal?(o)
73
97
  self.class == o.class &&
74
98
  discount_percent == o.discount_percent &&
75
- item_quantity == o.item_quantity
99
+ item_quantity == o.item_quantity &&
100
+ quickbooks_code == o.quickbooks_code
76
101
  end
77
102
 
78
103
  # @see the `==` method
@@ -84,7 +109,7 @@ module UltracartClient
84
109
  # Calculates hash code according to all attributes.
85
110
  # @return [Fixnum] Hash code
86
111
  def hash
87
- [discount_percent, item_quantity].hash
112
+ [discount_percent, item_quantity, quickbooks_code].hash
88
113
  end
89
114
 
90
115
  # Builds the object from hash
@@ -14,6 +14,9 @@ require 'date'
14
14
 
15
15
  module UltracartClient
16
16
  class CouponTieredPercentOffShipping
17
+ # Quickbooks accounting code.
18
+ attr_accessor :quickbooks_code
19
+
17
20
  # One or more shipping methods that may receive this discount
18
21
  attr_accessor :shipping_methods
19
22
 
@@ -23,6 +26,7 @@ module UltracartClient
23
26
  # Attribute mapping from ruby-style variable name to JSON key.
24
27
  def self.attribute_map
25
28
  {
29
+ :'quickbooks_code' => :'quickbooks_code',
26
30
  :'shipping_methods' => :'shipping_methods',
27
31
  :'tiers' => :'tiers'
28
32
  }
@@ -31,6 +35,7 @@ module UltracartClient
31
35
  # Attribute type mapping.
32
36
  def self.swagger_types
33
37
  {
38
+ :'quickbooks_code' => :'String',
34
39
  :'shipping_methods' => :'Array<String>',
35
40
  :'tiers' => :'Array<CouponTierPercent>'
36
41
  }
@@ -44,6 +49,10 @@ module UltracartClient
44
49
  # convert string to symbol for hash key
45
50
  attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
46
51
 
52
+ if attributes.has_key?(:'quickbooks_code')
53
+ self.quickbooks_code = attributes[:'quickbooks_code']
54
+ end
55
+
47
56
  if attributes.has_key?(:'shipping_methods')
48
57
  if (value = attributes[:'shipping_methods']).is_a?(Array)
49
58
  self.shipping_methods = value
@@ -61,20 +70,36 @@ module UltracartClient
61
70
  # @return Array for valid properties with the reasons
62
71
  def list_invalid_properties
63
72
  invalid_properties = Array.new
73
+ if !@quickbooks_code.nil? && @quickbooks_code.to_s.length > 20
74
+ invalid_properties.push('invalid value for "quickbooks_code", the character length must be smaller than or equal to 20.')
75
+ end
76
+
64
77
  invalid_properties
65
78
  end
66
79
 
67
80
  # Check to see if the all the properties in the model are valid
68
81
  # @return true if the model is valid
69
82
  def valid?
83
+ return false if !@quickbooks_code.nil? && @quickbooks_code.to_s.length > 20
70
84
  true
71
85
  end
72
86
 
87
+ # Custom attribute writer method with validation
88
+ # @param [Object] quickbooks_code Value to be assigned
89
+ def quickbooks_code=(quickbooks_code)
90
+ if !quickbooks_code.nil? && quickbooks_code.to_s.length > 20
91
+ fail ArgumentError, 'invalid value for "quickbooks_code", the character length must be smaller than or equal to 20.'
92
+ end
93
+
94
+ @quickbooks_code = quickbooks_code
95
+ end
96
+
73
97
  # Checks equality by comparing each attribute.
74
98
  # @param [Object] Object to be compared
75
99
  def ==(o)
76
100
  return true if self.equal?(o)
77
101
  self.class == o.class &&
102
+ quickbooks_code == o.quickbooks_code &&
78
103
  shipping_methods == o.shipping_methods &&
79
104
  tiers == o.tiers
80
105
  end
@@ -88,7 +113,7 @@ module UltracartClient
88
113
  # Calculates hash code according to all attributes.
89
114
  # @return [Fixnum] Hash code
90
115
  def hash
91
- [shipping_methods, tiers].hash
116
+ [quickbooks_code, shipping_methods, tiers].hash
92
117
  end
93
118
 
94
119
  # Builds the object from hash
@@ -20,6 +20,9 @@ module UltracartClient
20
20
  # Ledger entries
21
21
  attr_accessor :ledger_entries
22
22
 
23
+ # Pending Points
24
+ attr_accessor :pending_points
25
+
23
26
  # Redemptions
24
27
  attr_accessor :redemptions
25
28
 
@@ -28,6 +31,7 @@ module UltracartClient
28
31
  {
29
32
  :'current_points' => :'current_points',
30
33
  :'ledger_entries' => :'ledger_entries',
34
+ :'pending_points' => :'pending_points',
31
35
  :'redemptions' => :'redemptions'
32
36
  }
33
37
  end
@@ -37,6 +41,7 @@ module UltracartClient
37
41
  {
38
42
  :'current_points' => :'Integer',
39
43
  :'ledger_entries' => :'Array<CustomerLoyaltyLedger>',
44
+ :'pending_points' => :'Integer',
40
45
  :'redemptions' => :'Array<CustomerLoyaltyRedemption>'
41
46
  }
42
47
  end
@@ -59,6 +64,10 @@ module UltracartClient
59
64
  end
60
65
  end
61
66
 
67
+ if attributes.has_key?(:'pending_points')
68
+ self.pending_points = attributes[:'pending_points']
69
+ end
70
+
62
71
  if attributes.has_key?(:'redemptions')
63
72
  if (value = attributes[:'redemptions']).is_a?(Array)
64
73
  self.redemptions = value
@@ -86,6 +95,7 @@ module UltracartClient
86
95
  self.class == o.class &&
87
96
  current_points == o.current_points &&
88
97
  ledger_entries == o.ledger_entries &&
98
+ pending_points == o.pending_points &&
89
99
  redemptions == o.redemptions
90
100
  end
91
101
 
@@ -98,7 +108,7 @@ module UltracartClient
98
108
  # Calculates hash code according to all attributes.
99
109
  # @return [Fixnum] Hash code
100
110
  def hash
101
- [current_points, ledger_entries, redemptions].hash
111
+ [current_points, ledger_entries, pending_points, redemptions].hash
102
112
  end
103
113
 
104
114
  # Builds the object from hash