yotpo 1.0.5 → 1.0.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 19ec639260657da67005f8aab271b0db691880fec072713f32c91fa1b1de1e79
4
- data.tar.gz: feee72358ccf03f52a6d23688737d96a83b684f283417d7808b831f71694145e
3
+ metadata.gz: 9f24af2bc6d1754380c1c11c55680cd33c51a32c49b5f768d915aa912ff27ec1
4
+ data.tar.gz: edbc0d5fdfdf9df662bc930ae8b51df5140dfbb9661dae61c5bad7ffb40a7ce3
5
5
  SHA512:
6
- metadata.gz: 4d3cca8d9db338aec54be8e5a3394356424562a0f51d3bbc1968634e315d394884f78ac792dbe2482f8336c487f8383cd917208cea254d8b487a9a82591bc2dc
7
- data.tar.gz: 081805d8331568f0caca62a570aa1ce0f132cc787105b92ba2e78f8d5fb7cc6dc7f99dafe05aa72f80eec5a983f9d367200ee672743371edfe4d715103212fb0
6
+ metadata.gz: 642682cd2105abc09fc38b3a45a4bcdfa0ea9c6749de1f2ece6b77a6fbd99447642548ca0500c6781be292fcc6e173c25597979b533c6244e48765d839e89e48
7
+ data.tar.gz: f84d78a4936200e7c45b66b2706cc5beef6566eca77dbb4d2c7eaa5c4d03b9772c440dc48ac768034a5025060cdc20c6dc273e344a7157f77498049e806089d2
data/README.md CHANGED
@@ -40,25 +40,32 @@ end
40
40
  ```
41
41
  That is it you are ready
42
42
 
43
- Now lets make some public calls to our api. Public calls only require you to use a valid app_key.
43
+ Now lets make some public calls to our api. Public calls only require you to use a valid app_key.
44
44
 
45
45
  Creating your first review using the API
46
46
 
47
47
  ```ruby
48
48
  ak = "MY_APP_KEY"
49
49
 
50
- Yotpo.create_review :app_key => ak,
51
- :product_id => "BLABLA",
52
- :shop_domain => "omri.co",
53
- :product_title => "pt",
54
- :product_description => "pd",
55
- :product_url => "http://google.com/?q=myproducturl",
56
- :product_image_url => "https://www.google.com/images/srpr/logo4w.png",
57
- :user_display_name => "MOSHE",
58
- :user_email => 'haim@yotpo.com',
59
- :review_body => "this is my review body",
60
- :review_title => "my review title" ,
61
- :review_score => 5
50
+ Yotpo.create_review :app_key => ak,
51
+ :product_id => "BLABLA",
52
+ :shop_domain => "omri.co",
53
+ :product_title => "pt",
54
+ :product_description => "pd",
55
+ :product_url => "http://google.com/?q=myproducturl",
56
+ :product_image_url => "https://www.google.com/images/srpr/logo4w.png",
57
+ :user_display_name => "MOSHE",
58
+ :user_email => 'haim@yotpo.com',
59
+ :user_reference => "1234",
60
+ :review_body => "this is my review body",
61
+ :review_title => "my review title" ,
62
+ :review_score => 5,
63
+ :signature => "The SHA256 or HMAC signature goes here",
64
+ :time_stamp => "1426770722",
65
+ :reviewer_type => "verified_buyer",
66
+ :custom_fields => {
67
+ "--would-buy-again": true
68
+ }
62
69
  ```
63
70
 
64
71
  and now lets retrieve all the reviews of our product BLABLA
@@ -83,15 +90,15 @@ getting the bottom line of product BLABLA
83
90
  response = Yotpo.get_product_bottom_line :app_key => ak, :product_id => "BLABLA"
84
91
 
85
92
  response.body.bottomline.total_reviews
86
- # => 1
93
+ # => 1
87
94
 
88
95
  response.body.bottomline.average_score
89
96
  # => 5.0
90
97
  ```
91
98
 
92
- Now lets try something a little bit more complicated. Lets try to create a purchase.
99
+ Now lets try something a little bit more complicated. Lets try to create a purchase.
93
100
 
94
- For that we will need to go through Yotpo authenticaton process, provide an app_key and secret, and return to get the utoken. The utoken will allow us to make authenticated API calls.
101
+ For that we will need to go through Yotpo authenticaton process, provide an app_key and secret, and return to get the utoken. The utoken will allow us to make authenticated API calls.
95
102
 
96
103
  ```ruby
97
104
  ak = "d3n27Sg0eP8MHmVCHfPdQzyxjhwIEeV5cBKhoggC" #remember to replace the APP_KEY with your own.
@@ -105,30 +112,30 @@ utoken = response.body.access_token
105
112
  #first creating the products that are in the order, notice that the key of the product hash is the product_sku
106
113
  products = {
107
114
  "BLABLA1" => {
108
- :url => "http://shop.yotpo.com/products/amazing-yotpo-poster",
109
- :name => "Yotpo Amazing Poster",
110
- :image_url => "http://cdn.shopify.com/s/files/1/0098/1912/products/qa2_medium.png?41",
111
- :description => "this is the most awesome poster in the world!",
115
+ :url => "http://shop.yotpo.com/products/amazing-yotpo-poster",
116
+ :name => "Yotpo Amazing Poster",
117
+ :image_url => "http://cdn.shopify.com/s/files/1/0098/1912/products/qa2_medium.png?41",
118
+ :description => "this is the most awesome poster in the world!",
112
119
  :price => "100"
113
120
  }
114
121
  }
115
122
 
116
123
  # now we will create a purchase using this the token we have received in the previous step
117
124
 
118
- response = Yotpo.create_new_purchase :app_key => ak,
119
- :utoken => utoken,
120
- :email => "trial@yotpo.com",
121
- :customer_name => "bob",
122
- :order_id => "12999",
123
- :platform => "Shopify",
124
- :order_date => "2013-05-28",
125
- :products => products,
125
+ response = Yotpo.create_new_purchase :app_key => ak,
126
+ :utoken => utoken,
127
+ :email => "trial@yotpo.com",
128
+ :customer_name => "bob",
129
+ :order_id => "12999",
130
+ :platform => "Shopify",
131
+ :order_date => "2013-05-28",
132
+ :products => products,
126
133
  :currency_iso => "USD"
127
-
134
+
128
135
  #making sure our request went through
129
136
 
130
- raise Exception unless response.body.code == 200
131
-
137
+ raise Exception unless response.body.code == 200
138
+
132
139
  ```
133
140
 
134
141
  We can pull all the purchases of a certain account to make sure that the previous calls has worked
@@ -7,6 +7,14 @@ module Yotpo
7
7
  }
8
8
  get('/oauth/validate_token', request)
9
9
  end
10
+
11
+ def get_valid_tokens_per_account(params)
12
+ request = {
13
+ token: params[:utoken],
14
+ app_key: params[:app_key],
15
+ }
16
+ get('/oauth/get_valid_tokens_per_account', request)
17
+ end
10
18
  end
11
19
  end
12
20
 
@@ -9,7 +9,11 @@ module Yotpo
9
9
  currency_iso: params[:currency_iso],
10
10
  order_id: params[:order_id],
11
11
  platform: params[:platform],
12
- products: params[:products]
12
+ coupon_used: params[:coupon_used],
13
+ delivery_type: params[:delivery_type],
14
+ products: params[:products],
15
+ customer: params[:customer],
16
+ custom_properties: params[:custom_properties]
13
17
  }
14
18
  app_key = params[:app_key]
15
19
  post("/apps/#{app_key}/purchases", request)
@@ -32,10 +32,18 @@ module Yotpo
32
32
  review_content: params[:review_body],
33
33
  review_title: params[:review_title],
34
34
  review_score: params[:review_score],
35
- utoken: params[:utoken]
35
+ utoken: params[:utoken],
36
+ customer_metadata: params[:customer_metadata],
37
+ order_metadata: params[:order_metadata],
38
+ product_metadata: params[:product_metadata],
39
+ signature: params[:signature],
40
+ time_stamp: params[:time_stamp],
41
+ reviewer_type: params[:reviewer_type],
42
+ user_reference: params[:user_reference],
43
+ custom_fields: params[:custom_fields]
36
44
  }
37
45
  request.delete_if { |element, value| value.nil? }
38
- get('/reviews/dynamic_create', request)
46
+ post('/reviews/dynamic_create', request)
39
47
  end
40
48
 
41
49
  # Gets a specific review in Yotpo
@@ -111,4 +119,4 @@ module Yotpo
111
119
  get("reviews/#{params[:review_id]}/vote/#{params[:vote_value]}")
112
120
  end
113
121
  end
114
- end
122
+ end
@@ -1,3 +1,3 @@
1
1
  module Yotpo
2
- VERSION = '1.0.5'
2
+ VERSION = '1.0.6'
3
3
  end
@@ -16,7 +16,8 @@ describe Yotpo::Review do
16
16
  review_body: 'Integer feugiat nunc non leo vehicula bibendum. Nulla at tortor at nulla faucibus suscipit. Curabitur sodales est vel orci lobortis convallis. Vestibulum sit amet tellus neque, ac euismod arcu. Phasellus a nunc ultrices erat condimentum facilisis. Donec a odio in ligula vestibulum lobortis. Mauris posuere, justo tincidunt tincidunt interdum, felis velit venenatis augue, vel rhoncus purus turpis ut magna. Quisque consequat elit vitae enim molestie mattis. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Curabitur adipiscing consequat lectus eu pulvinar. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae' ,
17
17
  review_title: 'Fusce commodo felis quis turpis fringilla egestas',
18
18
  review_score: 4.5,
19
- app_key: @app_key
19
+ app_key: @app_key,
20
+ user_reference: "1234"
20
21
  }
21
22
  VCR.use_cassette('create_review') do
22
23
  @response = Yotpo.create_review(anonymous_review)
@@ -31,6 +32,38 @@ describe Yotpo::Review do
31
32
  it { should respond_to :title }
32
33
  end
33
34
 
35
+ describe '#create_review as trusted vendor' do
36
+ before(:all) do
37
+ review = {
38
+ product_id: 'D-4771',
39
+ domain: 'google.com',
40
+ product_title: 'Product Title',
41
+ product_description: 'Nullam ultrices purus a metus porttitor hendrerit. Vivamus accumsan congue urna a viverra. Nam molestie euismod est, vitae sollicitudin velit scelerisque vel. Quisque feugiat, metus sed tempus malesuada, quam erat volutpat metus, a tempor felis est id purus. Ut nec felis nunc, id cursus magna. Mauris sollicitudin ultrices velit vitae viverra. Nulla faucibus lacus id nisl euismod porta. Curabitur mi magna, tempus tristique commodo sit amet, imperdiet in eros. Proin eros arcu, ornare in lobortis eu, posuere ut risus. Quisque fermentum varius nibh, id aliquet lectus congue quis. In placerat arcu at libero posuere eleifend. Donec lacinia mollis lacus, at aliquam nisi molestie nec. Cras eleifend gravida nulla, vitae mollis eros varius eleifend. Pellentesque elit sem, lacinia eget fringilla vitae, condimentum eu quam. Proin quis orci arcu, ut suscipit arcu.',
42
+ product_url: 'https://www.google.com/?q=pforducturl',
43
+ product_image_url: 'https://www.google.com/images/srpr/logo4w.png',
44
+ user_display_name: 'User Name',
45
+ user_email: 'user@email.com',
46
+ review_body: 'Integer feugiat nunc non leo vehicula bibendum. Nulla at tortor at nulla faucibus suscipit. Curabitur sodales est vel orci lobortis convallis. Vestibulum sit amet tellus neque, ac euismod arcu. Phasellus a nunc ultrices erat condimentum facilisis. Donec a odio in ligula vestibulum lobortis. Mauris posuere, justo tincidunt tincidunt interdum, felis velit venenatis augue, vel rhoncus purus turpis ut magna. Quisque consequat elit vitae enim molestie mattis. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Curabitur adipiscing consequat lectus eu pulvinar. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae' ,
47
+ review_title: 'Fusce commodo felis quis turpis fringilla egestas',
48
+ review_score: 4.5,
49
+ app_key: @app_key,
50
+ signature: "e3a30f856453983fc3884ca0c9ef1f31862e6ad25199803dbc192bf2a58f2b31",
51
+ time_stamp: "1426770722",
52
+ reviewer_type: "verified_buyer"
53
+ }
54
+ VCR.use_cassette('create_review_trusted_vendor') do
55
+ @response = Yotpo.create_review(review)
56
+ end
57
+ end
58
+
59
+ subject { @response.body.reviews[0] }
60
+ it { should be_a ::Hashie::Mash }
61
+ it { should respond_to :id }
62
+ it { should respond_to :user }
63
+ it { should respond_to :content }
64
+ it { should respond_to :title }
65
+ end
66
+
34
67
  describe '#get_review' do
35
68
  before(:all) do
36
69
  VCR.use_cassette('get_review') do
@@ -1,16 +1,43 @@
1
1
  ---
2
2
  http_interactions:
3
3
  - request:
4
- method: get
5
- uri: https://api.yotpo.com/reviews/dynamic_create?appkey=3ovRYNIb6OIAI0ddS7EfpYkHpi0oTKl6bj82Vjiy&display_name=User%20Name&email=user@email.com&product_description=Nullam%20ultrices%20purus%20a%20metus%20porttitor%20hendrerit.%20Vivamus%20accumsan%20congue%20urna%20a%20viverra.%20Nam%20molestie%20euismod%20est,%20vitae%20sollicitudin%20velit%20scelerisque%20vel.%20Quisque%20feugiat,%20metus%20sed%20tempus%20malesuada,%20quam%20erat%20volutpat%20metus,%20a%20tempor%20felis%20est%20id%20purus.%20Ut%20nec%20felis%20nunc,%20id%20cursus%20magna.%20Mauris%20sollicitudin%20ultrices%20velit%20vitae%20viverra.%20Nulla%20faucibus%20lacus%20id%20nisl%20euismod%20porta.%20Curabitur%20mi%20magna,%20tempus%20tristique%20commodo%20sit%20amet,%20imperdiet%20in%20eros.%20Proin%20eros%20arcu,%20ornare%20in%20lobortis%20eu,%20posuere%20ut%20risus.%20Quisque%20fermentum%20varius%20nibh,%20id%20aliquet%20lectus%20congue%20quis.%20In%20placerat%20arcu%20at%20libero%20posuere%20eleifend.%20Donec%20lacinia%20mollis%20lacus,%20at%20aliquam%20nisi%20molestie%20nec.%20Cras%20eleifend%20gravida%20nulla,%20vitae%20mollis%20eros%20varius%20eleifend.%20Pellentesque%20elit%20sem,%20lacinia%20eget%20fringilla%20vitae,%20condimentum%20eu%20quam.%20Proin%20quis%20orci%20arcu,%20ut%20suscipit%20arcu.&product_image_url=https://www.google.com/images/srpr/logo4w.png&product_title=Product%20Title&product_url=https://www.google.com/?q=pforducturl&review_content=Integer%20feugiat%20nunc%20non%20leo%20vehicula%20bibendum.%20Nulla%20at%20tortor%20at%20nulla%20faucibus%20suscipit.%20Curabitur%20sodales%20est%20vel%20orci%20lobortis%20convallis.%20Vestibulum%20sit%20amet%20tellus%20neque,%20ac%20euismod%20arcu.%20Phasellus%20a%20nunc%20ultrices%20erat%20condimentum%20facilisis.%20Donec%20a%20odio%20in%20ligula%20vestibulum%20lobortis.%20Mauris%20posuere,%20justo%20tincidunt%20tincidunt%20interdum,%20felis%20velit%20venenatis%20augue,%20vel%20rhoncus%20purus%20turpis%20ut%20magna.%20Quisque%20consequat%20elit%20vitae%20enim%20molestie%20mattis.%20Class%20aptent%20taciti%20sociosqu%20ad%20litora%20torquent%20per%20conubia%20nostra,%20per%20inceptos%20himenaeos.%20Curabitur%20adipiscing%20consequat%20lectus%20eu%20pulvinar.%20Vestibulum%20ante%20ipsum%20primis%20in%20faucibus%20orci%20luctus%20et%20ultrices%20posuere%20cubilia%20Curae&review_score=4.5&review_title=Fusce%20commodo%20felis%20quis%20turpis%20fringilla%20egestas&sku=D-4771
4
+ method: post
5
+ uri: https://api.yotpo.com/reviews/dynamic_create
6
6
  body:
7
- encoding: US-ASCII
8
- string: ''
7
+ encoding: UTF-8
8
+ string: '{"appkey":"3ovRYNIb6OIAI0ddS7EfpYkHpi0oTKl6bj82Vjiy","sku":"D-4771","product_title":"Product
9
+ Title","product_description":"Nullam ultrices purus a metus porttitor hendrerit.
10
+ Vivamus accumsan congue urna a viverra. Nam molestie euismod est, vitae sollicitudin
11
+ velit scelerisque vel. Quisque feugiat, metus sed tempus malesuada, quam erat
12
+ volutpat metus, a tempor felis est id purus. Ut nec felis nunc, id cursus
13
+ magna. Mauris sollicitudin ultrices velit vitae viverra. Nulla faucibus lacus
14
+ id nisl euismod porta. Curabitur mi magna, tempus tristique commodo sit amet,
15
+ imperdiet in eros. Proin eros arcu, ornare in lobortis eu, posuere ut risus.
16
+ Quisque fermentum varius nibh, id aliquet lectus congue quis. In placerat
17
+ arcu at libero posuere eleifend. Donec lacinia mollis lacus, at aliquam nisi
18
+ molestie nec. Cras eleifend gravida nulla, vitae mollis eros varius eleifend.
19
+ Pellentesque elit sem, lacinia eget fringilla vitae, condimentum eu quam.
20
+ Proin quis orci arcu, ut suscipit arcu.","product_url":"https://www.google.com/?q=pforducturl","product_image_url":"https://www.google.com/images/srpr/logo4w.png","display_name":"User
21
+ Name","email":"user@email.com","review_content":"Integer feugiat nunc non
22
+ leo vehicula bibendum. Nulla at tortor at nulla faucibus suscipit. Curabitur
23
+ sodales est vel orci lobortis convallis. Vestibulum sit amet tellus neque,
24
+ ac euismod arcu. Phasellus a nunc ultrices erat condimentum facilisis. Donec
25
+ a odio in ligula vestibulum lobortis. Mauris posuere, justo tincidunt tincidunt
26
+ interdum, felis velit venenatis augue, vel rhoncus purus turpis ut magna.
27
+ Quisque consequat elit vitae enim molestie mattis. Class aptent taciti sociosqu
28
+ ad litora torquent per conubia nostra, per inceptos himenaeos. Curabitur adipiscing
29
+ consequat lectus eu pulvinar. Vestibulum ante ipsum primis in faucibus orci
30
+ luctus et ultrices posuere cubilia Curae","review_title":"Fusce commodo felis
31
+ quis turpis fringilla egestas","review_score":4.5,"user_reference":"1234"}'
9
32
  headers:
10
33
  User-Agent:
11
- - Faraday v0.9.1
34
+ - Faraday v0.9.2
12
35
  Yotpo-Api-Connector:
13
- - Ruby0.0.8
36
+ - Ruby1.0.6
37
+ Content-Type:
38
+ - application/json
39
+ Expect:
40
+ - ''
14
41
  response:
15
42
  status:
16
43
  code: 200
@@ -23,32 +50,34 @@ http_interactions:
23
50
  Content-Type:
24
51
  - application/json; charset=utf-8
25
52
  Date:
26
- - Sun, 19 Jul 2015 07:31:41 GMT
53
+ - Thu, 15 Nov 2018 18:19:14 GMT
27
54
  Etag:
28
- - '"a4059c55e23392335326ee2c49efea9d"'
55
+ - W/"46acf7135ae19284c8c1e53efe5a509a"
29
56
  P3p:
30
57
  - policyref="/w3c/p3p.xml", CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi
31
58
  CONi HIS OUR IND CNT", CP="CAO PSA OUR"
32
59
  Server:
33
60
  - nginx
34
61
  Set-Cookie:
35
- - _yotpo-api-1_session=BAh7B0kiD3Nlc3Npb25faWQGOgZFRkkiJTMxNWEzMWQ1Y2M1YjE5ZjU2MzI0M2I2NTc5N2U0MGQ0BjsAVEkiFmFub255bW91c191c2VyX2lkBjsARmkDDbwz--6d6c43af8f8c79b8f69ee81d35a8aa1a52d80b3f;
36
- path=/; HttpOnly
37
- Status:
38
- - 200 OK
62
+ - _yotpo-api-1_session=eyJzZXNzaW9uX2lkIjoiOTNhMTg2MjMzNzQxYTQ2ZjUwZjJmNzllNjUwM2Y5ZjIiLCJhbm9ueW1vdXNfdXNlcl9pZCI6MjQzMzM4MjJ9--0d3bb3997137ac24f940144c0d410163a163c92b;
63
+ path=/; expires=Sat, 15 Dec 2018 18:19:14 -0000; secure; HttpOnly
64
+ X-Content-Type-Options:
65
+ - nosniff
66
+ X-Frame-Options:
67
+ - SAMEORIGIN
39
68
  X-Request-Id:
40
- - 241cf958afbf9ee09b6144ed79eb6bcf
69
+ - 3326bb45-b218-448b-a3d8-6c147698a298
41
70
  X-Runtime:
42
- - '0.448344'
43
- X-Ua-Compatible:
44
- - IE=Edge,chrome=1
71
+ - '1.159279'
72
+ X-Xss-Protection:
73
+ - 1; mode=block
45
74
  Content-Length:
46
- - '2086'
75
+ - '2189'
47
76
  Connection:
48
77
  - keep-alive
49
78
  body:
50
79
  encoding: UTF-8
51
- string: '{"status":{"code":200,"message":"OK"},"response":{"reviews":[{"id":7286197,"content":"Integer
80
+ string: '{"status":{"code":200,"message":"OK"},"response":{"reviews":[{"id":73391005,"content":"Integer
52
81
  feugiat nunc non leo vehicula bibendum. Nulla at tortor at nulla faucibus
53
82
  suscipit. Curabitur sodales est vel orci lobortis convallis. Vestibulum sit
54
83
  amet tellus neque, ac euismod arcu. Phasellus a nunc ultrices erat condimentum
@@ -58,10 +87,10 @@ http_interactions:
58
87
  aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos
59
88
  himenaeos. Curabitur adipiscing consequat lectus eu pulvinar. Vestibulum ante
60
89
  ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae","title":"Fusce
61
- commodo felis quis turpis fringilla egestas","score":4,"user":{"id":3390477,"display_name":"User
62
- Name","social_image":"https://ddcfq0gxiontw.cloudfront.net/images/anonymous_user.png","is_social_connected":false},"user_type":"AnonymousUser","users":[],"products":[{"Location_idx":[0,0],"Product":{"product_url":"https://www.google.com/?q=pforducturl","id":6558012,"name":"Product
63
- Title","slug":"product-title--429","shorten_url":"https://yotpo.com/go/nctaEi4i","images":[{"id":6299789,"image_url":"http://ddcfq0gxiontw.cloudfront.net/Product/6558012/6299789/square.png?1437290724"}],"social_network_links":{"facebook":"https://yotpo.com/go/mIKr0eLD","twitter":"https://yotpo.com/go/6CErRDs8","linkedin":"https://yotpo.com/go/qOlRaVyn","google_oauth2":"https://yotpo.com/go/fPbH9hd3"},"facebook_testemonials_page_product_url":"https://yotpo.com/go/e661Twhb"}}],"votes_up":0,"votes_down":0,"user_vote":0,"created_at":"2015-07-19T07:31:41Z","deleted":false,"new":true,"verified_buyer":false,"archived":false,"social_pushed":false,"facebook_pushed":0,"twitter_pushed":0,"account":{"id":19699,"domain":"http://vlad-test-shop.myshopify.com"},"products_apps":[{"id":6481683,"product_url":"https://www.google.com/?q=pforducturl","domain_key":"D-4771","product":{"id":6558012,"name":"Product
90
+ commodo felis quis turpis fringilla egestas","score":4,"user":{"id":24333822,"display_name":"User
91
+ N.","social_image":"https://ddcfq0gxiontw.cloudfront.net/images/anonymous_user.png","is_social_connected":false},"user_type":"AnonymousUser","users":[],"products":[{"Location_idx":[0,0],"Product":{"id":6558012,"name":"Product
92
+ Title","slug":"product-title--429","product_url":"https://www.google.com/?q=pforducturl","shorten_url":"https://yotpo.com/go/oyhF9ltB","images":[{"id":6299789,"image_url":"https://ddcfq0gxiontw.cloudfront.net/Product/6558012/6299789/square.png?1455254154","big_image_url":"https://ddcfq0gxiontw.cloudfront.net/Product/6558012/6299789/big.png?1455254154"}],"social_network_links":{"facebook":"https://yotpo.com/go/zjgc1NGk","twitter":"https://yotpo.com/go/ay9VqGAW","linkedin":"https://yotpo.com/go/rt8WlkID","google_oauth2":"https://yotpo.com/go/7yeVqGzJ"},"facebook_testemonials_page_product_url":"https://yotpo.com/go/gp6zp25E"}}],"votes_up":0,"votes_down":0,"user_vote":0,"created_at":"2018-11-15T18:19:13.269Z","deleted":false,"new":true,"verified_buyer":false,"archived":false,"social_pushed":false,"facebook_pushed":0,"twitter_pushed":0,"account":{"id":19699,"domain":"http://vlad-test-shop.myshopify.com"},"products_apps":[{"id":6481683,"product_url":"https://www.google.com/?q=pforducturl","domain_key":"D-4771","product":{"id":6558012,"name":"Product
64
93
  Title"}}]}]}}'
65
94
  http_version:
66
- recorded_at: Sun, 19 Jul 2015 07:31:41 GMT
67
- recorded_with: VCR 2.9.3
95
+ recorded_at: Thu, 15 Nov 2018 18:19:14 GMT
96
+ recorded_with: VCR 4.0.0
@@ -0,0 +1,96 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://api.yotpo.com/reviews/dynamic_create
6
+ body:
7
+ encoding: UTF-8
8
+ string: '{"appkey":"3ovRYNIb6OIAI0ddS7EfpYkHpi0oTKl6bj82Vjiy","sku":"D-4771","product_title":"Product
9
+ Title","product_description":"Nullam ultrices purus a metus porttitor hendrerit.
10
+ Vivamus accumsan congue urna a viverra. Nam molestie euismod est, vitae sollicitudin
11
+ velit scelerisque vel. Quisque feugiat, metus sed tempus malesuada, quam erat
12
+ volutpat metus, a tempor felis est id purus. Ut nec felis nunc, id cursus
13
+ magna. Mauris sollicitudin ultrices velit vitae viverra. Nulla faucibus lacus
14
+ id nisl euismod porta. Curabitur mi magna, tempus tristique commodo sit amet,
15
+ imperdiet in eros. Proin eros arcu, ornare in lobortis eu, posuere ut risus.
16
+ Quisque fermentum varius nibh, id aliquet lectus congue quis. In placerat
17
+ arcu at libero posuere eleifend. Donec lacinia mollis lacus, at aliquam nisi
18
+ molestie nec. Cras eleifend gravida nulla, vitae mollis eros varius eleifend.
19
+ Pellentesque elit sem, lacinia eget fringilla vitae, condimentum eu quam.
20
+ Proin quis orci arcu, ut suscipit arcu.","product_url":"https://www.google.com/?q=pforducturl","product_image_url":"https://www.google.com/images/srpr/logo4w.png","display_name":"User
21
+ Name","email":"user@email.com","review_content":"Integer feugiat nunc non
22
+ leo vehicula bibendum. Nulla at tortor at nulla faucibus suscipit. Curabitur
23
+ sodales est vel orci lobortis convallis. Vestibulum sit amet tellus neque,
24
+ ac euismod arcu. Phasellus a nunc ultrices erat condimentum facilisis. Donec
25
+ a odio in ligula vestibulum lobortis. Mauris posuere, justo tincidunt tincidunt
26
+ interdum, felis velit venenatis augue, vel rhoncus purus turpis ut magna.
27
+ Quisque consequat elit vitae enim molestie mattis. Class aptent taciti sociosqu
28
+ ad litora torquent per conubia nostra, per inceptos himenaeos. Curabitur adipiscing
29
+ consequat lectus eu pulvinar. Vestibulum ante ipsum primis in faucibus orci
30
+ luctus et ultrices posuere cubilia Curae","review_title":"Fusce commodo felis
31
+ quis turpis fringilla egestas","review_score":4.5,"signature":"e3a30f856453983fc3884ca0c9ef1f31862e6ad25199803dbc192bf2a58f2b31","time_stamp":"1426770722","reviewer_type":"verified_buyer"}'
32
+ headers:
33
+ User-Agent:
34
+ - Faraday v0.9.2
35
+ Yotpo-Api-Connector:
36
+ - Ruby1.0.6
37
+ Content-Type:
38
+ - application/json
39
+ Expect:
40
+ - ''
41
+ response:
42
+ status:
43
+ code: 200
44
+ message: OK
45
+ headers:
46
+ Access-Control-Allow-Credentials:
47
+ - 'true'
48
+ Cache-Control:
49
+ - max-age=0, private, must-revalidate
50
+ Content-Type:
51
+ - application/json; charset=utf-8
52
+ Date:
53
+ - Thu, 15 Nov 2018 18:19:14 GMT
54
+ Etag:
55
+ - W/"46acf7135ae19284c8c1e53efe5a509a"
56
+ P3p:
57
+ - policyref="/w3c/p3p.xml", CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi
58
+ CONi HIS OUR IND CNT", CP="CAO PSA OUR"
59
+ Server:
60
+ - nginx
61
+ Set-Cookie:
62
+ - _yotpo-api-1_session=eyJzZXNzaW9uX2lkIjoiOTNhMTg2MjMzNzQxYTQ2ZjUwZjJmNzllNjUwM2Y5ZjIiLCJhbm9ueW1vdXNfdXNlcl9pZCI6MjQzMzM4MjJ9--0d3bb3997137ac24f940144c0d410163a163c92b;
63
+ path=/; expires=Sat, 15 Dec 2018 18:19:14 -0000; secure; HttpOnly
64
+ X-Content-Type-Options:
65
+ - nosniff
66
+ X-Frame-Options:
67
+ - SAMEORIGIN
68
+ X-Request-Id:
69
+ - 3326bb45-b218-448b-a3d8-6c147698a298
70
+ X-Runtime:
71
+ - '1.159279'
72
+ X-Xss-Protection:
73
+ - 1; mode=block
74
+ Content-Length:
75
+ - '2189'
76
+ Connection:
77
+ - keep-alive
78
+ body:
79
+ encoding: UTF-8
80
+ string: '{"status":{"code":200,"message":"OK"},"response":{"reviews":[{"id":73391005,"content":"Integer
81
+ feugiat nunc non leo vehicula bibendum. Nulla at tortor at nulla faucibus
82
+ suscipit. Curabitur sodales est vel orci lobortis convallis. Vestibulum sit
83
+ amet tellus neque, ac euismod arcu. Phasellus a nunc ultrices erat condimentum
84
+ facilisis. Donec a odio in ligula vestibulum lobortis. Mauris posuere, justo
85
+ tincidunt tincidunt interdum, felis velit venenatis augue, vel rhoncus purus
86
+ turpis ut magna. Quisque consequat elit vitae enim molestie mattis. Class
87
+ aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos
88
+ himenaeos. Curabitur adipiscing consequat lectus eu pulvinar. Vestibulum ante
89
+ ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae","title":"Fusce
90
+ commodo felis quis turpis fringilla egestas","score":4,"user":{"id":24333822,"display_name":"User
91
+ N.","social_image":"https://ddcfq0gxiontw.cloudfront.net/images/anonymous_user.png","is_social_connected":false},"user_type":"AnonymousUser","users":[],"products":[{"Location_idx":[0,0],"Product":{"id":6558012,"name":"Product
92
+ Title","slug":"product-title--429","product_url":"https://www.google.com/?q=pforducturl","shorten_url":"https://yotpo.com/go/oyhF9ltB","images":[{"id":6299789,"image_url":"https://ddcfq0gxiontw.cloudfront.net/Product/6558012/6299789/square.png?1455254154","big_image_url":"https://ddcfq0gxiontw.cloudfront.net/Product/6558012/6299789/big.png?1455254154"}],"social_network_links":{"facebook":"https://yotpo.com/go/zjgc1NGk","twitter":"https://yotpo.com/go/ay9VqGAW","linkedin":"https://yotpo.com/go/rt8WlkID","google_oauth2":"https://yotpo.com/go/7yeVqGzJ"},"facebook_testemonials_page_product_url":"https://yotpo.com/go/gp6zp25E"}}],"votes_up":0,"votes_down":0,"user_vote":0,"created_at":"2018-11-15T18:19:13.269Z","deleted":false,"new":true,"verified_buyer":true,"archived":false,"social_pushed":false,"facebook_pushed":0,"twitter_pushed":0,"account":{"id":19699,"domain":"http://vlad-test-shop.myshopify.com"},"products_apps":[{"id":6481683,"product_url":"https://www.google.com/?q=pforducturl","domain_key":"D-4771","product":{"id":6558012,"name":"Product
93
+ Title"}}]}]}}'
94
+ http_version:
95
+ recorded_at: Thu, 15 Nov 2018 18:19:14 GMT
96
+ recorded_with: VCR 4.0.0
@@ -21,7 +21,7 @@ Gem::Specification.new do |gem|
21
21
 
22
22
  gem.add_dependency 'faraday'
23
23
  gem.add_dependency 'typhoeus'
24
- gem.add_dependency 'faraday_middleware', '>= 0.8', '< 0.10'
24
+ gem.add_dependency 'faraday_middleware', '~> 0.12.0'
25
25
  gem.add_dependency 'hashie'
26
26
  gem.add_dependency 'oj'
27
27
  gem.add_dependency 'activesupport'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: yotpo
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.5
4
+ version: 1.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vladislav Shub
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-07-10 00:00:00.000000000 Z
11
+ date: 2018-12-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -42,22 +42,16 @@ dependencies:
42
42
  name: faraday_middleware
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ">="
46
- - !ruby/object:Gem::Version
47
- version: '0.8'
48
- - - "<"
45
+ - - "~>"
49
46
  - !ruby/object:Gem::Version
50
- version: '0.10'
47
+ version: 0.12.0
51
48
  type: :runtime
52
49
  prerelease: false
53
50
  version_requirements: !ruby/object:Gem::Requirement
54
51
  requirements:
55
- - - ">="
56
- - !ruby/object:Gem::Version
57
- version: '0.8'
58
- - - "<"
52
+ - - "~>"
59
53
  - !ruby/object:Gem::Version
60
- version: '0.10'
54
+ version: 0.12.0
61
55
  - !ruby/object:Gem::Dependency
62
56
  name: hashie
63
57
  requirement: !ruby/object:Gem::Requirement
@@ -166,6 +160,7 @@ files:
166
160
  - spec/cassettes/create_new_purchase.yml
167
161
  - spec/cassettes/create_new_purchases.yml
168
162
  - spec/cassettes/create_review.yml
163
+ - spec/cassettes/create_review_trusted_vendor.yml
169
164
  - spec/cassettes/create_user.yml
170
165
  - spec/cassettes/get_account_social.yml
171
166
  - spec/cassettes/get_feature_settings.yml
@@ -229,7 +224,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
229
224
  version: '0'
230
225
  requirements: []
231
226
  rubyforge_project:
232
- rubygems_version: 2.7.7
227
+ rubygems_version: 2.7.8
233
228
  signing_key:
234
229
  specification_version: 4
235
230
  summary: A Ruby interface to the YOTPO API
@@ -263,6 +258,7 @@ test_files:
263
258
  - spec/cassettes/create_new_purchase.yml
264
259
  - spec/cassettes/create_new_purchases.yml
265
260
  - spec/cassettes/create_review.yml
261
+ - spec/cassettes/create_review_trusted_vendor.yml
266
262
  - spec/cassettes/create_user.yml
267
263
  - spec/cassettes/get_account_social.yml
268
264
  - spec/cassettes/get_feature_settings.yml