coinkite 0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitignore +3 -0
- data/Gemfile +3 -0
- data/README.md +62 -0
- data/coinkite.gemspec +24 -0
- data/lib/coinkite/errors/api_connection_error.rb +21 -0
- data/lib/coinkite/errors/coinkite_error.rb +32 -0
- data/lib/coinkite/version.rb +3 -0
- data/lib/coinkite.rb +165 -0
- data/lib/data/ca-certificates.crt +5165 -0
- data/sign.rb +23 -0
- data/spec/coinkite_spec.rb +11 -0
- data/spec/spec_helper.rb +9 -0
- metadata +121 -0
data/sign.rb
ADDED
@@ -0,0 +1,23 @@
|
|
1
|
+
#!/usr/bin/ruby
|
2
|
+
|
3
|
+
# replace these values
|
4
|
+
API_KEY = 'this-is-my-key'
|
5
|
+
API_SECRET = 'this-is-my-secret'
|
6
|
+
|
7
|
+
# Return a hex digest from HMAC(SHA256) over endpoint and timestamp
|
8
|
+
#
|
9
|
+
def sign(endpoint, force_ts=nil)
|
10
|
+
require 'cgi'
|
11
|
+
require 'time'
|
12
|
+
require 'openssl'
|
13
|
+
|
14
|
+
ts = force_ts || Time.now.utc.iso8601
|
15
|
+
data = endpoint + '|' + ts
|
16
|
+
hmac = OpenSSL::HMAC.hexdigest(OpenSSL::Digest::Digest.new('SHA256'), API_SECRET, data)
|
17
|
+
|
18
|
+
return hmac, ts
|
19
|
+
end
|
20
|
+
|
21
|
+
puts sign('/example/endpoint', '2014-06-03T17:48:47.774453')
|
22
|
+
#puts sign('/example/endpoint')
|
23
|
+
|
@@ -0,0 +1,11 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Coinkite do
|
4
|
+
let(:coinkite) { Coinkite::Client.new(ENV['CK_API_KEY'], ENV['CK_API_SECRET']) }
|
5
|
+
|
6
|
+
describe "#get_accounts" do
|
7
|
+
it "should be retrievable" do
|
8
|
+
expect(coinkite.get_accounts).to be_kind_of(Array)
|
9
|
+
end
|
10
|
+
end
|
11
|
+
end
|
data/spec/spec_helper.rb
ADDED
metadata
ADDED
@@ -0,0 +1,121 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: coinkite
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: '0.9'
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Ilia Lobsanov
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2014-07-15 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: rest-client
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '1.4'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '1.4'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: mime-types
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '1.25'
|
34
|
+
- - "<"
|
35
|
+
- !ruby/object:Gem::Version
|
36
|
+
version: '3.0'
|
37
|
+
type: :runtime
|
38
|
+
prerelease: false
|
39
|
+
version_requirements: !ruby/object:Gem::Requirement
|
40
|
+
requirements:
|
41
|
+
- - ">="
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: '1.25'
|
44
|
+
- - "<"
|
45
|
+
- !ruby/object:Gem::Version
|
46
|
+
version: '3.0'
|
47
|
+
- !ruby/object:Gem::Dependency
|
48
|
+
name: json
|
49
|
+
requirement: !ruby/object:Gem::Requirement
|
50
|
+
requirements:
|
51
|
+
- - "~>"
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: '1.8'
|
54
|
+
type: :runtime
|
55
|
+
prerelease: false
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
requirements:
|
58
|
+
- - "~>"
|
59
|
+
- !ruby/object:Gem::Version
|
60
|
+
version: '1.8'
|
61
|
+
- !ruby/object:Gem::Dependency
|
62
|
+
name: rspec
|
63
|
+
requirement: !ruby/object:Gem::Requirement
|
64
|
+
requirements:
|
65
|
+
- - "~>"
|
66
|
+
- !ruby/object:Gem::Version
|
67
|
+
version: '3.0'
|
68
|
+
type: :development
|
69
|
+
prerelease: false
|
70
|
+
version_requirements: !ruby/object:Gem::Requirement
|
71
|
+
requirements:
|
72
|
+
- - "~>"
|
73
|
+
- !ruby/object:Gem::Version
|
74
|
+
version: '3.0'
|
75
|
+
description: Coinkite is the most secure way to transact in bitcoin online. See https://coinkite.com
|
76
|
+
for details.
|
77
|
+
email:
|
78
|
+
- ilia@lobsanov.com
|
79
|
+
executables: []
|
80
|
+
extensions: []
|
81
|
+
extra_rdoc_files: []
|
82
|
+
files:
|
83
|
+
- ".gitignore"
|
84
|
+
- Gemfile
|
85
|
+
- README.md
|
86
|
+
- coinkite.gemspec
|
87
|
+
- lib/coinkite.rb
|
88
|
+
- lib/coinkite/errors/api_connection_error.rb
|
89
|
+
- lib/coinkite/errors/coinkite_error.rb
|
90
|
+
- lib/coinkite/version.rb
|
91
|
+
- lib/data/ca-certificates.crt
|
92
|
+
- sign.rb
|
93
|
+
- spec/coinkite_spec.rb
|
94
|
+
- spec/spec_helper.rb
|
95
|
+
homepage: https://docs.coinkite.com/api/index.html
|
96
|
+
licenses:
|
97
|
+
- MIT
|
98
|
+
metadata: {}
|
99
|
+
post_install_message:
|
100
|
+
rdoc_options: []
|
101
|
+
require_paths:
|
102
|
+
- lib
|
103
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
104
|
+
requirements:
|
105
|
+
- - ">="
|
106
|
+
- !ruby/object:Gem::Version
|
107
|
+
version: '0'
|
108
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
109
|
+
requirements:
|
110
|
+
- - ">="
|
111
|
+
- !ruby/object:Gem::Version
|
112
|
+
version: '0'
|
113
|
+
requirements: []
|
114
|
+
rubyforge_project:
|
115
|
+
rubygems_version: 2.2.2
|
116
|
+
signing_key:
|
117
|
+
specification_version: 4
|
118
|
+
summary: Ruby bindings for the Coinkite API
|
119
|
+
test_files:
|
120
|
+
- spec/coinkite_spec.rb
|
121
|
+
- spec/spec_helper.rb
|