Skip to content

Commit 296f828

Browse files
committed
Release: v5.0.0
- Support new Recommend Items to Item Segment endpoint - Series API improvements: - Add Series endpoint creates associated Item for the Series automatically (based on the cascadeCreate parameter) - Breaking change: Remove From Series no longer requires the time parameter - Removed deprecated Groups endpoints
1 parent de33802 commit 296f828

File tree

136 files changed

+390
-637
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

136 files changed

+390
-637
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -177,4 +177,4 @@ rescue ApiTimeout => e
177177
rescue APIError => e
178178
# APIError is parent of both ResponseError and ApiTimeout
179179
end
180-
```
180+
```

lib/recombee_api_client.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ class RecombeeClient
1818
include HTTParty
1919

2020
BATCH_MAX_SIZE = 10000
21-
USER_AGENT = {'User-Agent' => 'recombee-ruby-api-client/4.1.0'}
21+
USER_AGENT = {'User-Agent' => 'recombee-ruby-api-client/5.0.0'}
2222

2323
##
2424
# - +account+ -> Name of your account at Recombee

lib/recombee_api_client/api/add_bookmark.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ def initialize(user_id, item_id, optional = {})
3434
@recomm_id = optional['recommId']
3535
@additional_data = optional['additionalData']
3636
@optional = optional
37-
@timeout = 1000
37+
@timeout = 3000
3838
@ensure_https = false
3939
@optional.each do |par, _|
4040
fail UnknownOptionalParameter.new(par) unless ["timestamp","cascadeCreate","recommId","additionalData"].include? par

lib/recombee_api_client/api/add_cart_addition.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ def initialize(user_id, item_id, optional = {})
3838
@recomm_id = optional['recommId']
3939
@additional_data = optional['additionalData']
4040
@optional = optional
41-
@timeout = 1000
41+
@timeout = 3000
4242
@ensure_https = false
4343
@optional.each do |par, _|
4444
fail UnknownOptionalParameter.new(par) unless ["timestamp","cascadeCreate","amount","price","recommId","additionalData"].include? par

lib/recombee_api_client/api/add_detail_view.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ def initialize(user_id, item_id, optional = {})
3636
@recomm_id = optional['recommId']
3737
@additional_data = optional['additionalData']
3838
@optional = optional
39-
@timeout = 1000
39+
@timeout = 3000
4040
@ensure_https = false
4141
@optional.each do |par, _|
4242
fail UnknownOptionalParameter.new(par) unless ["timestamp","duration","cascadeCreate","recommId","additionalData"].include? par

lib/recombee_api_client/api/add_group.rb

Lines changed: 0 additions & 49 deletions
This file was deleted.

lib/recombee_api_client/api/add_item.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ class AddItem < ApiRequest
2222
#
2323
def initialize(item_id)
2424
@item_id = item_id
25-
@timeout = 1000
25+
@timeout = 3000
2626
@ensure_https = false
2727
end
2828

lib/recombee_api_client/api/add_item_property.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ module RecombeeApiClient
77
require_relative '../errors'
88

99
##
10-
#Adding an item property is somehow equivalent to adding a column to the table of items. The items may be characterized by various properties of different types.
10+
#Adding an item property is somewhat equivalent to adding a column to the table of items. The items may be characterized by various properties of different types.
1111
#
1212
class AddItemProperty < ApiRequest
1313
attr_reader :property_name, :type

lib/recombee_api_client/api/add_purchase.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ def initialize(user_id, item_id, optional = {})
4040
@recomm_id = optional['recommId']
4141
@additional_data = optional['additionalData']
4242
@optional = optional
43-
@timeout = 1000
43+
@timeout = 3000
4444
@ensure_https = false
4545
@optional.each do |par, _|
4646
fail UnknownOptionalParameter.new(par) unless ["timestamp","cascadeCreate","amount","price","profit","recommId","additionalData"].include? par

lib/recombee_api_client/api/add_rating.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ def initialize(user_id, item_id, rating, optional = {})
3636
@recomm_id = optional['recommId']
3737
@additional_data = optional['additionalData']
3838
@optional = optional
39-
@timeout = 1000
39+
@timeout = 3000
4040
@ensure_https = false
4141
@optional.each do |par, _|
4242
fail UnknownOptionalParameter.new(par) unless ["timestamp","cascadeCreate","recommId","additionalData"].include? par

lib/recombee_api_client/api/add_series.rb

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,18 +9,27 @@ module RecombeeApiClient
99
##
1010
#Creates a new series in the database.
1111
class AddSeries < ApiRequest
12-
attr_reader :series_id
12+
attr_reader :series_id, :cascade_create
1313
attr_accessor :timeout
1414
attr_accessor :ensure_https
1515

1616
##
1717
# * *Required arguments*
1818
# - +series_id+ -> ID of the series to be created.
1919
#
20-
def initialize(series_id)
20+
# * *Optional arguments (given as hash optional)*
21+
# - +cascadeCreate+ -> If set to `true`, the item will be created with the same ID as the series. Default is `true`.
22+
#
23+
def initialize(series_id, optional = {})
2124
@series_id = series_id
22-
@timeout = 1000
25+
optional = normalize_optional(optional)
26+
@cascade_create = optional['cascadeCreate']
27+
@optional = optional
28+
@timeout = 3000
2329
@ensure_https = false
30+
@optional.each do |par, _|
31+
fail UnknownOptionalParameter.new(par) unless ["cascadeCreate"].include? par
32+
end
2433
end
2534

2635
# HTTP method
@@ -31,6 +40,7 @@ def method
3140
# Values of body parameters as a Hash
3241
def body_parameters
3342
p = Hash.new
43+
p['cascadeCreate'] = @optional['cascadeCreate'] if @optional.include? 'cascadeCreate'
3444
p
3545
end
3646

lib/recombee_api_client/api/add_user.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ class AddUser < ApiRequest
2020
#
2121
def initialize(user_id)
2222
@user_id = user_id
23-
@timeout = 1000
23+
@timeout = 3000
2424
@ensure_https = false
2525
end
2626

lib/recombee_api_client/api/add_user_property.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ module RecombeeApiClient
77
require_relative '../errors'
88

99
##
10-
#Adding a user property is somehow equivalent to adding a column to the table of users. The users may be characterized by various properties of different types.
10+
#Adding a user property is somewhat equivalent to adding a column to the table of users. The users may be characterized by various properties of different types.
1111
#
1212
class AddUserProperty < ApiRequest
1313
attr_reader :property_name, :type

lib/recombee_api_client/api/delete_bookmark.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ def initialize(user_id, item_id, optional = {})
2828
optional = normalize_optional(optional)
2929
@timestamp = optional['timestamp']
3030
@optional = optional
31-
@timeout = 1000
31+
@timeout = 3000
3232
@ensure_https = false
3333
@optional.each do |par, _|
3434
fail UnknownOptionalParameter.new(par) unless ["timestamp"].include? par

lib/recombee_api_client/api/delete_cart_addition.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ def initialize(user_id, item_id, optional = {})
2828
optional = normalize_optional(optional)
2929
@timestamp = optional['timestamp']
3030
@optional = optional
31-
@timeout = 1000
31+
@timeout = 3000
3232
@ensure_https = false
3333
@optional.each do |par, _|
3434
fail UnknownOptionalParameter.new(par) unless ["timestamp"].include? par

lib/recombee_api_client/api/delete_detail_view.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ def initialize(user_id, item_id, optional = {})
2828
optional = normalize_optional(optional)
2929
@timestamp = optional['timestamp']
3030
@optional = optional
31-
@timeout = 1000
31+
@timeout = 3000
3232
@ensure_https = false
3333
@optional.each do |par, _|
3434
fail UnknownOptionalParameter.new(par) unless ["timestamp"].include? par

lib/recombee_api_client/api/delete_group.rb

Lines changed: 0 additions & 52 deletions
This file was deleted.

lib/recombee_api_client/api/delete_item.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ class DeleteItem < ApiRequest
2424
#
2525
def initialize(item_id)
2626
@item_id = item_id
27-
@timeout = 1000
27+
@timeout = 3000
2828
@ensure_https = false
2929
end
3030

lib/recombee_api_client/api/delete_more_items.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ class DeleteMoreItems < ApiRequest
2121
#
2222
def initialize(filter)
2323
@filter = filter
24-
@timeout = 1000
24+
@timeout = 100000
2525
@ensure_https = false
2626
end
2727

lib/recombee_api_client/api/delete_purchase.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ def initialize(user_id, item_id, optional = {})
2828
optional = normalize_optional(optional)
2929
@timestamp = optional['timestamp']
3030
@optional = optional
31-
@timeout = 1000
31+
@timeout = 3000
3232
@ensure_https = false
3333
@optional.each do |par, _|
3434
fail UnknownOptionalParameter.new(par) unless ["timestamp"].include? par

lib/recombee_api_client/api/delete_rating.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ def initialize(user_id, item_id, optional = {})
2828
optional = normalize_optional(optional)
2929
@timestamp = optional['timestamp']
3030
@optional = optional
31-
@timeout = 1000
31+
@timeout = 3000
3232
@ensure_https = false
3333
@optional.each do |par, _|
3434
fail UnknownOptionalParameter.new(par) unless ["timestamp"].include? par

lib/recombee_api_client/api/delete_series.rb

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,18 +12,27 @@ module RecombeeApiClient
1212
#Deleting a series will only delete assignment of items to it, not the items themselves!
1313
#
1414
class DeleteSeries < ApiRequest
15-
attr_reader :series_id
15+
attr_reader :series_id, :cascade_delete
1616
attr_accessor :timeout
1717
attr_accessor :ensure_https
1818

1919
##
2020
# * *Required arguments*
2121
# - +series_id+ -> ID of the series to be deleted.
2222
#
23-
def initialize(series_id)
23+
# * *Optional arguments (given as hash optional)*
24+
# - +cascadeDelete+ -> If set to `true`, item with the same ID as seriesId will be also deleted. Default is `false`.
25+
#
26+
def initialize(series_id, optional = {})
2427
@series_id = series_id
25-
@timeout = 1000
28+
optional = normalize_optional(optional)
29+
@cascade_delete = optional['cascadeDelete']
30+
@optional = optional
31+
@timeout = 3000
2632
@ensure_https = false
33+
@optional.each do |par, _|
34+
fail UnknownOptionalParameter.new(par) unless ["cascadeDelete"].include? par
35+
end
2736
end
2837

2938
# HTTP method
@@ -34,6 +43,7 @@ def method
3443
# Values of body parameters as a Hash
3544
def body_parameters
3645
p = Hash.new
46+
p['cascadeDelete'] = @optional['cascadeDelete'] if @optional.include? 'cascadeDelete'
3747
p
3848
end
3949

lib/recombee_api_client/api/delete_user.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ class DeleteUser < ApiRequest
2222
#
2323
def initialize(user_id)
2424
@user_id = user_id
25-
@timeout = 1000
25+
@timeout = 3000
2626
@ensure_https = false
2727
end
2828

lib/recombee_api_client/api/delete_view_portion.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ def initialize(user_id, item_id, optional = {})
2828
optional = normalize_optional(optional)
2929
@session_id = optional['sessionId']
3030
@optional = optional
31-
@timeout = 1000
31+
@timeout = 3000
3232
@ensure_https = false
3333
@optional.each do |par, _|
3434
fail UnknownOptionalParameter.new(par) unless ["sessionId"].include? par

lib/recombee_api_client/api/get_item_property_info.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ class GetItemPropertyInfo < ApiRequest
2020
#
2121
def initialize(property_name)
2222
@property_name = property_name
23-
@timeout = 1000
23+
@timeout = 3000
2424
@ensure_https = false
2525
end
2626

lib/recombee_api_client/api/get_item_values.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ class GetItemValues < ApiRequest
2121
#
2222
def initialize(item_id)
2323
@item_id = item_id
24-
@timeout = 1000
24+
@timeout = 3000
2525
@ensure_https = false
2626
end
2727

lib/recombee_api_client/api/get_user_values.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ class GetUserValues < ApiRequest
2121
#
2222
def initialize(user_id)
2323
@user_id = user_id
24-
@timeout = 1000
24+
@timeout = 3000
2525
@ensure_https = false
2626
end
2727

0 commit comments

Comments
 (0)