epayco-sdk-ruby 0.0.7 → 0.0.8

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: 97054c161b4a8cb6fe9503344bfc44fc3aac5f647d9ed8b1748d12dbcbc787a1
4
- data.tar.gz: f31b781866f6cd26d992d4389c5e51ded45ee338431fc38ae62de39375973eb6
3
+ metadata.gz: e2c608fe0b171d6147853668cdfd1e1310ccae3ae38a25994537888db7935368
4
+ data.tar.gz: 11d4b3bbec2d93b78052939a41a92acf4d45ba392f393e8336b4d4cdd11d0c51
5
5
  SHA512:
6
- metadata.gz: b8ddefd1d1e5fb968a971ef3c995572924c9bc7ce3aaf81f3d01b2877cacf9678538e21db787cdf618a20c05ba8c1fff761fd52b2a946cb28c7412c4c4dbf82f
7
- data.tar.gz: f5d30fb8531153110e3c35efacd2293f255be2b1d6c92499d0d559cf6282e06183acef15e21a50d14c74cdbcaa606cfa551a1d2a6b09506b0061080f26b2495e
6
+ metadata.gz: fdfba7f6664365e025acffdc3240cba9daa0248a0b71912ef6e572bb2f48d52db9cdb630e05592b2ea364b9909007c90af819d6bced6c4fefb99d893961d2fd7
7
+ data.tar.gz: c8ed00138320f9af017ae2e77e018a20715157be489a13d31b78957765d19e9b787a2127c21bbfd4f98981bd59e32ea4e64b83382daaae894d0493dc2a8a6eec
File without changes
@@ -0,0 +1,2 @@
1
+ # Describe global library
2
+ require File.dirname(__FILE__) + '/epayco'
@@ -4,7 +4,7 @@ require 'openssl'
4
4
  require 'base64'
5
5
  require 'open-uri'
6
6
  require 'socket'
7
- require_relative 'epayco-sdk/resources'
7
+ require_relative 'epayco/resources'
8
8
 
9
9
  module Epayco
10
10
 
@@ -39,6 +39,9 @@ module Epayco
39
39
  def self.request(method, url, extra=nil, params={}, headers={}, switch, cashdata, sp, dt)
40
40
  method = method.to_sym
41
41
 
42
+ auth = authent(apiKey ,privateKey)
43
+ bearer_token = 'Bearer '+ auth[:bearer_token]
44
+
42
45
  if !apiKey || !privateKey || !lang
43
46
  raise Error.new('100', lang)
44
47
  end
@@ -88,7 +91,8 @@ module Epayco
88
91
  headers = {
89
92
  :params => params,
90
93
  :content_type => 'application/json',
91
- :type => 'sdk'
94
+ :type => 'sdk-jwt',
95
+ :Authorization => bearer_token,
92
96
  }.merge(headers)
93
97
 
94
98
  options = {
@@ -184,4 +188,34 @@ module Epayco
184
188
  data_hash[key]
185
189
  end
186
190
 
191
+
192
+ def self.authent(apiKey, privateKey)
193
+ @parmas = {}
194
+ @parmas["public_key"] = apiKey
195
+ @parmas["private_key"] = privateKey
196
+ headers = {
197
+ # :params => @parmas,
198
+ :Accept => 'application/json',
199
+ :content_type => 'application/json',
200
+ :type => 'sdk'
201
+ }
202
+ payload = @parmas.to_json
203
+ options = {
204
+ :headers => headers,
205
+ :user => apiKey,
206
+ :method => 'post',
207
+ :url => 'https://api.secure.payco.co/v1/auth/login',
208
+ :payload => payload
209
+ }
210
+
211
+ begin
212
+ response = execute_request(options)
213
+ return {} if response.code == 204 and method == :delete
214
+ JSON.parse(response.body, :symbolize_names => true)
215
+ rescue RestClient::Exception => e
216
+ handle_errors e
217
+ end
218
+
219
+ end
220
+
187
221
  end
@@ -99,6 +99,16 @@ module Epayco
99
99
  end
100
100
  Epayco.request :post, url, extra, params, self.switch, cashdata, sp, dt
101
101
  end
102
+
103
+ def addtoken params={}, extra=nil
104
+ if self.url == "customers"
105
+ url = "/v1/customer/add/token"
106
+ cashdata = false
107
+ sp = false
108
+ dt = true
109
+ end
110
+ Epayco.request :post, url, extra, params, self.switch, cashdata, sp, dt
111
+ end
102
112
 
103
113
  # Action retrieve all documents from user
104
114
  def list params={}, extra=nil
@@ -24,7 +24,7 @@ module Epayco
24
24
  end
25
25
 
26
26
  class Customers < Resource
27
- public_class_method :create, :get, :list, :update, :updatetoken, :delatetetoken
27
+ public_class_method :create, :get, :list, :update, :updatetoken, :delatetetoken, :addtoken
28
28
  end
29
29
 
30
30
  class Plan < Resource
metadata CHANGED
@@ -1,15 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: epayco-sdk-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.7
4
+ version: 0.0.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Epayco development team
8
- - Ricardo Saldarriaga
8
+ - Ricardo Sladarriaga
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2020-02-26 00:00:00.000000000 Z
12
+ date: 2020-03-19 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rest-client
@@ -73,15 +73,15 @@ description: |-
73
73
  email:
74
74
  - ricardo.saldarriaga@payco.co
75
75
  executables:
76
- - epayco-sdk
76
+ - epayco
77
77
  extensions: []
78
78
  extra_rdoc_files: []
79
79
  files:
80
- - bin/epayco-sdk
81
- - lib/epayco-sdk-ruby.rb
82
- - lib/epayco-sdk.rb
83
- - lib/epayco-sdk/operations.rb
84
- - lib/epayco-sdk/resources.rb
80
+ - bin/epayco
81
+ - lib/epayco-ruby.rb
82
+ - lib/epayco.rb
83
+ - lib/epayco/operations.rb
84
+ - lib/epayco/resources.rb
85
85
  - lib/keylang.json
86
86
  - tests/test_helper.rb
87
87
  - tests/testing.rb
@@ -1,2 +0,0 @@
1
- # Describe global library
2
- require File.dirname(__FILE__) + '/epayco-sdk'