phaxio 0.5.0 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (75) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -1
  3. data/.travis.yml +2 -1
  4. data/Gemfile +10 -0
  5. data/README.md +260 -73
  6. data/Rakefile +6 -16
  7. data/lib/phaxio.rb +47 -3
  8. data/lib/phaxio/client.rb +117 -484
  9. data/lib/phaxio/config.rb +31 -0
  10. data/lib/phaxio/error.rb +13 -0
  11. data/lib/phaxio/helpers/mime_type_helper.rb +14 -0
  12. data/lib/phaxio/resource.rb +168 -0
  13. data/lib/phaxio/resources.rb +7 -0
  14. data/lib/phaxio/resources/account.rb +41 -0
  15. data/lib/phaxio/resources/callback.rb +65 -0
  16. data/lib/phaxio/resources/fax.rb +310 -0
  17. data/lib/phaxio/resources/fax_recipient.rb +41 -0
  18. data/lib/phaxio/resources/phax_code.rb +89 -0
  19. data/lib/phaxio/resources/phone_number.rb +112 -0
  20. data/lib/phaxio/resources/public.rb +8 -0
  21. data/lib/phaxio/resources/public/area_code.rb +64 -0
  22. data/lib/phaxio/resources/public/country.rb +54 -0
  23. data/lib/phaxio/version.rb +1 -1
  24. data/phaxio.gemspec +9 -12
  25. data/spec/client_spec.rb +132 -0
  26. data/spec/helpers/mime_type_helper_spec.rb +11 -0
  27. data/spec/phaxio_spec.rb +20 -0
  28. data/spec/resources/account_spec.rb +24 -0
  29. data/spec/resources/callback_spec.rb +34 -0
  30. data/spec/resources/fax_spec.rb +227 -0
  31. data/spec/resources/phax_code_spec.rb +83 -0
  32. data/spec/resources/phone_number_spec.rb +89 -0
  33. data/spec/resources/public/area_code_spec.rb +24 -0
  34. data/spec/resources/public/country_spec.rb +24 -0
  35. data/spec/spec_helper.rb +6 -0
  36. data/spec/support/credentials.rb +7 -0
  37. data/spec/support/expectations.rb +9 -0
  38. data/spec/support/files/test.pdf +0 -0
  39. data/spec/support/vcr.rb +9 -0
  40. data/spec/support/vcr_cassettes/resources/account/status.yml +44 -0
  41. data/spec/support/vcr_cassettes/resources/fax/cancel.yml +46 -0
  42. data/spec/support/vcr_cassettes/resources/fax/create.yml +230 -0
  43. data/spec/support/vcr_cassettes/resources/fax/delete.yml +44 -0
  44. data/spec/support/vcr_cassettes/resources/fax/delete_file.yml +44 -0
  45. data/spec/support/vcr_cassettes/resources/fax/file.yml +251 -0
  46. data/spec/support/vcr_cassettes/resources/fax/get.yml +44 -0
  47. data/spec/support/vcr_cassettes/resources/fax/list.yml +56 -0
  48. data/spec/support/vcr_cassettes/resources/fax/resend.yml +46 -0
  49. data/spec/support/vcr_cassettes/resources/fax/test_receive.yml +231 -0
  50. data/spec/support/vcr_cassettes/resources/phax_code/create.yml +100 -0
  51. data/spec/support/vcr_cassettes/resources/phax_code/get.yml +190 -0
  52. data/spec/support/vcr_cassettes/resources/phone_number/create.yml +47 -0
  53. data/spec/support/vcr_cassettes/resources/phone_number/get.yml +45 -0
  54. data/spec/support/vcr_cassettes/resources/phone_number/list.yml +52 -0
  55. data/spec/support/vcr_cassettes/resources/phone_number/release.yml +44 -0
  56. data/spec/support/vcr_cassettes/resources/public/area_codes/list.yml +77 -0
  57. data/spec/support/vcr_cassettes/resources/public/country/list.yml +54 -0
  58. metadata +70 -82
  59. data/.ruby-version +0 -1
  60. data/CHANGELOG +0 -6
  61. data/test/files/test.pdf +0 -0
  62. data/test/integration/phaxio_integration_test.rb +0 -45
  63. data/test/support/responses/account_status.json +0 -9
  64. data/test/support/responses/cancel_success.json +0 -4
  65. data/test/support/responses/fax_status_success.json +0 -21
  66. data/test/support/responses/list_faxes.json +0 -68
  67. data/test/support/responses/list_numbers.json +0 -22
  68. data/test/support/responses/provision_number.json +0 -12
  69. data/test/support/responses/release_number.json +0 -7
  70. data/test/support/responses/send_failure.json +0 -8
  71. data/test/support/responses/send_success.json +0 -8
  72. data/test/support/responses/test.pdf +0 -0
  73. data/test/support/responses/test_receive.json +0 -4
  74. data/test/test_helper.rb +0 -57
  75. data/test/test_phaxio.rb +0 -128
@@ -0,0 +1,24 @@
1
+ require 'spec_helper'
2
+
3
+ RSpec.describe Public::AreaCode do
4
+ describe 'listing area codes available for purchasing numbers' do
5
+ let(:action) { Public::AreaCode.list params }
6
+ let(:params) { {} }
7
+
8
+ around do |example|
9
+ VCR.use_cassette('resources/public/area_codes/list') do
10
+ example.run
11
+ end
12
+ end
13
+
14
+ it 'sends the request to Phaxio' do
15
+ expect_api_request :get, 'public/area_codes', params
16
+ action
17
+ end
18
+
19
+ it 'returns a collection of available area codes' do
20
+ result = action
21
+ expect(result).to be_a(Phaxio::Resource::Collection)
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,24 @@
1
+ require 'spec_helper'
2
+
3
+ RSpec.describe Public::Country do
4
+ describe 'getting a list of supported countries' do
5
+ let(:action) { Public::Country.list }
6
+ let(:params) { {} }
7
+
8
+ around do |example|
9
+ VCR.use_cassette('resources/public/country/list') do
10
+ example.run
11
+ end
12
+ end
13
+
14
+ it 'makes the request to Phaxio' do
15
+ expect_api_request :get, 'public/countries', params
16
+ action
17
+ end
18
+
19
+ it 'returns a collection of supported country resources' do
20
+ result = action
21
+ expect(result).to be_a(Phaxio::Resource::Collection)
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,6 @@
1
+ require 'bundler'
2
+ Bundler.require :default, :development, :test
3
+ require File.expand_path(File.join(['..', '..', 'lib', 'phaxio']), __FILE__)
4
+ Dir[File.expand_path(File.join(['..', 'support', '**', '*.rb']), __FILE__)].each { |file| require file }
5
+
6
+ include Phaxio::Resources
@@ -0,0 +1,7 @@
1
+ RSpec.configure do |config|
2
+ config.before(:each) do
3
+ Phaxio.api_key = ENV['PHAXIO_API_KEY'] || 'test-api-key'
4
+ Phaxio.api_secret = ENV['PHAXIO_API_SECRET'] || 'test-api-secret'
5
+ Phaxio.callback_token = ENV['PHAXIO_CALLBACK_TOKEN'] || 'test-callback-token'
6
+ end
7
+ end
@@ -0,0 +1,9 @@
1
+ module PhaxioExpectations
2
+ def expect_api_request method, path, params = {}
3
+ expect(Phaxio::Client).to receive(:request).with(method, path, params).and_call_original
4
+ end
5
+ end
6
+
7
+ RSpec.configure do |config|
8
+ config.include PhaxioExpectations
9
+ end
@@ -0,0 +1,9 @@
1
+ ENV['TEST_RECIPIENT_NUMBER'] ||= '+15558675309'
2
+
3
+ VCR.configure do |config|
4
+ config.cassette_library_dir = File.expand_path File.join('..', 'vcr_cassettes'), __FILE__
5
+ config.hook_into :faraday
6
+ config.filter_sensitive_data('<API_KEY>') { Phaxio.api_key }
7
+ config.filter_sensitive_data('<API_SECRET>') { Phaxio.api_secret }
8
+ config.filter_sensitive_data('+15558675309') { ENV['TEST_RECIPIENT_NUMBER'] }
9
+ end
@@ -0,0 +1,44 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.phaxio.com/v2/account/status?api_key=<API_KEY>&api_secret=<API_SECRET>
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.13.1
12
+ response:
13
+ status:
14
+ code: 200
15
+ message:
16
+ headers:
17
+ cache-control:
18
+ - max-age=0, private, must-revalidate
19
+ content-type:
20
+ - application/json; charset=utf-8
21
+ date:
22
+ - Tue, 31 Oct 2017 03:07:02 GMT
23
+ etag:
24
+ - W/"97e961f35ce919cc15be5de8e77175d7"
25
+ server:
26
+ - nginx
27
+ strict-transport-security:
28
+ - max-age=15768000; preload
29
+ x-request-id:
30
+ - 87f6ebc0-8f82-4e7e-87c9-5d53d2e505cb
31
+ x-robots-tag:
32
+ - noindex, nofollow, nosnippet, noarchive
33
+ x-runtime:
34
+ - '0.036786'
35
+ content-length:
36
+ - '172'
37
+ connection:
38
+ - Close
39
+ body:
40
+ encoding: UTF-8
41
+ string: '{"success":true,"message":"Account status retrieved successfully","data":{"balance":810,"faxes_today":{"sent":5,"received":5},"faxes_this_month":{"sent":13,"received":18}}}'
42
+ http_version:
43
+ recorded_at: Tue, 31 Oct 2017 03:07:02 GMT
44
+ recorded_with: VCR 3.0.3
@@ -0,0 +1,46 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://api.phaxio.com/v2/faxes/55405187/cancel
6
+ body:
7
+ encoding: UTF-8
8
+ string: api_key=<API_KEY>&api_secret=<API_SECRET>
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.13.1
12
+ Content-Type:
13
+ - application/x-www-form-urlencoded
14
+ response:
15
+ status:
16
+ code: 200
17
+ message:
18
+ headers:
19
+ cache-control:
20
+ - max-age=0, private, must-revalidate
21
+ content-type:
22
+ - application/json; charset=utf-8
23
+ date:
24
+ - Fri, 27 Oct 2017 19:41:31 GMT
25
+ etag:
26
+ - W/"5f351f3a724adbfc0b22effe1c96a1ad"
27
+ server:
28
+ - nginx
29
+ strict-transport-security:
30
+ - max-age=15768000; preload
31
+ x-request-id:
32
+ - 806f7432-f21b-459d-90fd-2a4c823e654a
33
+ x-robots-tag:
34
+ - noindex, nofollow, nosnippet, noarchive
35
+ x-runtime:
36
+ - '0.026048'
37
+ content-length:
38
+ - '92'
39
+ connection:
40
+ - Close
41
+ body:
42
+ encoding: UTF-8
43
+ string: '{"success":true,"message":"Fax cancellation scheduled successfully.","data":{"id":55405187}}'
44
+ http_version:
45
+ recorded_at: Fri, 27 Oct 2017 19:41:31 GMT
46
+ recorded_with: VCR 3.0.3
@@ -0,0 +1,230 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://api.phaxio.com/v2/faxes
6
+ body:
7
+ encoding: ASCII-8BIT
8
+ string: !binary |-
9
+ LS0tLS0tLS0tLS0tLVJ1YnlNdWx0aXBhcnRQb3N0LTY5OTA3MTQxZjMyZTI4
10
+ MjUxM2RkN2VhNWY5MmFhOWVlDQpDb250ZW50LURpc3Bvc2l0aW9uOiBmb3Jt
11
+ LWRhdGE7IG5hbWU9InRvIg0KDQorMTU1NTg2NzUzMDkNCi0tLS0tLS0tLS0t
12
+ LS1SdWJ5TXVsdGlwYXJ0UG9zdC02OTkwNzE0MWYzMmUyODI1MTNkZDdlYTVm
13
+ OTJhYTllZQ0KQ29udGVudC1EaXNwb3NpdGlvbjogZm9ybS1kYXRhOyBuYW1l
14
+ PSJmaWxlIjsgZmlsZW5hbWU9InRlc3QucGRmIg0KQ29udGVudC1MZW5ndGg6
15
+ IDc0NzINCkNvbnRlbnQtVHlwZTogYXBwbGljYXRpb24vcGRmOyBjaGFyc2V0
16
+ PWJpbmFyeQ0KQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogYmluYXJ5DQoN
17
+ CiVQREYtMS40CiXDpMO8w7bDnwoyIDAgb2JqCjw8L0xlbmd0aCAzIDAgUi9G
18
+ aWx0ZXIvRmxhdGVEZWNvZGU+PgpzdHJlYW0KeJw9i7sKAjEQRfv5ilsLbmZi
19
+ HrsQUoirYBcMWIidup2ysfD3TVRkijvnPrgTvGgG13Oi4QeNcqXjAvefyygT
20
+ rTNZ1/Xw2tRBvkBtBbWeb6fAEnVgzasmJi6FA9s/6QYuShPfvL793+DDQzzn
21
+ PY2ZEiXMUOPuYDE9oXIx2DyQ6A08gCPGCmVuZHN0cmVhbQplbmRvYmoKCjMg
22
+ MCBvYmoKMTMyCmVuZG9iagoKNCAwIG9iago8PC9UeXBlL1hPYmplY3QKL1N1
23
+ YnR5cGUvRm9ybQovQkJveFsgLTc5IDM5NSA2OTIgMzk1LjEgXQovR3JvdXA8
24
+ PC9TL1RyYW5zcGFyZW5jeS9DUy9EZXZpY2VSR0IvSyB0cnVlPj4KL0xlbmd0
25
+ aCAyNQovRmlsdGVyL0ZsYXRlRGVjb2RlCj4+CnN0cmVhbQp4nCtUMFAwBOKi
26
+ dC6nEC7XEK5ALgApxgQECmVuZHN0cmVhbQplbmRvYmoKCjUgMCBvYmoKPDwv
27
+ Q0EgMC41CiAgIC9jYSAwLjUKPj4KZW5kb2JqCgo3IDAgb2JqCjw8L0xlbmd0
28
+ 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
85
+ X/NW7K/L1DGPGZ4xMHuN+42PGDNGmdxj8Fg9bPP2nu2PbX9mu4xZ3vhX77b8
86
+ wmB5aX5B0OrVGoJWa0kAGvgG0kCnVVtuCfY2jDdcbGCdgTK1uqzEKbeFLLsr
87
+ fZVMZaVFqw3Jd6t96j9Xs7yaqNVyI7TifhrVrtFBu1bc1ETcHrd2bdT+kPbH
88
+ ax63HTvCPgp0j2xOv6res62ceOr21O92KbJYGLcZcKMQ3DUGfbmC+X7V4Ikx
89
+ 98EDewudu8yH2kfjNt/9B+/32VwDKb/vi81u2/YRT9+QzR9+IOy3EWVrortG
90
+ rdHKf/pkWXXfUF2bY0d5ZfNIhzfmE0oK3pjZVhryufbVlPM13gdovwQ3rrEP
91
+ sa+DDfbAc17L4Upi2mbfxhQZW4xMMa/WBHcUO4uZgmJSqCNERtjljVXvjnxd
92
+ kLBEWaba06loXGwk443E20iQ2NWpr6LAmVVFwaqqXj3RV1butIfKymCPp0+l
93
+ MSpC+YadIaB7CP9wC+ma3AiTm+Ap5LYjULiJtO/izqJnh53iRG9kc/dUFbG5
94
+ lpG1EgSMyZ4s9S2kJK+INegRxgbytnc25Dy6vl6i8QTH9/pGG0vL93QNjdee
95
+ LrI02moPWXc2tp36lyf33ddYdsY3Uce+Xrp3ovvmCc45pqkWSm3dU80tB1uq
96
+ jEoi+7LNX1e23XD0jSLDermMKXGFWkRzKT2PsM+csieAg/u9TUyjUheUKchF
97
+ E1kxkVZTr4lRFXWyIX1Ez+j1ecBqWZ5llaysIJTvzS8K5uepNQZdHxjpOdLq
98
+ edO+VkfPEI/UMXWjo8ldtaN2+c7Kep1Q30qwYw2CTm+kMzMUseRAZPzRx+Ot
99
+ P/jBvlprl1mza1+7PjnFfNlZ9c47gzePt7WrFG0qvUaV/T0P4doGcD+YcXXT
100
+ Xucf6MlXS4i65FQJYzRVmpj8Uq60pvT5UpmyMmhWq80OcJCWRccFxw0H66C7
101
+ u2N/kI7ebTZX0EqCJ43ECCGrVcGHOK2iT2eUVhFXDw/BUXoEPoSb/M067Hfp
102
+ 5KcLhw2MDd3C0NqzK7eH7vUdhOARaLDgChKZoTU5Wt7e3rJ9W9uBsPPo12KO
103
+ Ny93P3moaf25xr56jjyrswfJD4u7npq6R65UKRo1JmOh9/e+dezjD6vH/nSh
104
+ n5x33/doT8+j97mzvxVPb7xPjsE7eP5VeTk4ByoCKq3qhorNDUqV5gV5CeQO
105
+ 7iSWar3rICLHSngnt93Bl5Twju2cky95gHNYSkosDo4yqATp3RrRfdD510/M
106
+ jGuaPwJz9r3OldM7v3Tr1cTG+/jUQ992KHEtshf65VnW/XD/lhG56w2IirkG
107
+ Ptn7YKUv/5gmsLM7YJC6s6chiLwexxAD0tsRB+kh/85EmE+YT9ivsD+THZKd
108
+ y0VUQUMuJ4ObzU3fDcnUiiZ8sqPSMnLfVt7IVg0ELSM5msEnwPkczYIJHs7R
109
+ MrR5NkfLoQi+nqMVoAExR+fBI3A5RytBT5pydD4UkXtztBprOLj1htJFNuMX
110
+ whz5ixxdBC2MHrMTGX1nucL052gCPFucoxkoYutyNAt7WG+OlqHNQo6WQxl7
111
+ LkcroJy9lKPz4BfsWzlaCdWy7+TofCiTXcvRamiUK3N0ATwg34xfCD+Wn8/R
112
+ RfCY4pGOufljycTUdJqvnqjh62prG/j+eIwPRtMOvmt2wsW3HTnCSwYpPhlP
113
+ xZML8ZiL7+lq9/e3DXb1HuATKT7Kp5PRWHwmmjzMz03e6d+TOBRPRtOJuVl+
114
+ IJ5MTPbHp44eiSbbUhPx2Vg8yTv5uy3u5u+LJ1OU2eWqbXDtvqW92/g3FILV
115
+ TyVS6XgShYlZfsg14OJD0XR8Ns1HZ2P84JZj7+RkYiIuCSfiyXQUjefS01jq
116
+ g0eTiVQsMUGzpVxbM+iYS87P5UpKxxfi/L3RdDqempudTqfn97rdDz/8sCua
117
+ M55AW9fE3Iz71+nSx+bjsXgqMTWLM3dNp2eO9GBBsyks/KiUEau5HbXA3Cwu
118
+ zpGsjYNPxeM8DZ/C+JPxGJY2n5x7MD6Rds0lp9wPJw4n3Nl4idkp960wNEou
119
+ z+/mDR0wh3vwGCQhAVMwDWng8Ql4AmpwrINa/GtAqh/iEMMxCFG0cCDVBbNo
120
+ 5UKKvik9guOtCCmJi+MYx3FB8qWWPejVDn6M1gaDSPfCAZQmJPsoftNoHUXb
121
+ OMzgmITDKJuDyV+bvwf9D0l5qCaB9rOoHZAkCfSlnlNwFCukEdsw1wRKZqUs
122
+ SbR0SnX9+hi/SX+fRKW2NLuwLoqbC3Z/pu9vivy7IZLFfkqKkpZiZy0TUuwh
123
+ tBiQrEKSJ8UiLWWblawGPyNjL2acRH+K3C3LCSl2Gvls5Dmkp3OoPoiIJ6UK
124
+ YpLf5txSmPlX14D2YBK7cO4ulGh1C1LOeyV5WuopqpuWuHnYi786bvzdoH8u
125
+ tLkz8kQurkuiZtDyt/VL4w6Zl3CMS+s8hbbZNXdJMWewv3pyCM1KfU8ROnrb
126
+ HLPYfF6vBaQxu3OO3BGHriwdqe9m9alc/ZNSnixq83ifQ9zjEtouSTolzTGB
127
+ a5hA6vb66IpN5WR3V7NZy53z+b/MzeaedCwQg8+4lvIj3yZ5+IvdKt0vE5l3
128
+ mKzeJFduEv4mOf4pCX1KFj88+yHz8xs15os3Lt9geq+PX794na29TjTXiRLW
129
+ tGuhtcja/NqFNYVKc40UwAdE9/5qo/k9z9WhH3veHYKrpDl0dfGqeJWlT6oj
130
+ V5XqwFXCDr3LGs3aFX6ldmV+ZXHlrZXVlRsrysVvn/028/evuc2a18yvMeZX
131
+ el85/gobeYloXjK/xIReiLzAnD1PNOfN593n2T9+3mV+vrPc/Ny5KvPquRvn
132
+ GBq+/lyhLjD+R+T4s2eeZeafWnzq7FPs4omzJ5iLC5cXmFSoxjw3azfPdtrM
133
+ nKd0KM/DDinYDekfZN8ha3UgMu41j6PRwZFa80hnjbnEUzwkx2JlaKhhzWwr
134
+ 28vOsWfYy2yesj9Ubu7D72roRojR9Jp73b3S/17RbgsG2j+/f3E/2xWoMQc7
135
+ G82aTnOnu/NK53ud1zsV453kRfwELgYuB1hvoMYd8AbKLYGyoGnI6DEMaT2a
136
+ IYbAEPHAkFuzoWE0mnHNcQ2rgVZgFo1ETpbJ2aXBAbu9ezlvo79bVIYOiuSk
137
+ aB2gd2/fiKg4KcLQyMHwEiFfGj5x+jS07+gW6wbCYmTHcLcYQ8JLiUUktDuW
138
+ jNA+nEql7fQidjuSR/EO9qMoGktlhWDfVIM9RVIpSKWIneokEiWQslMxlVAf
139
+ gp5jKaA3qrVLVpRKpUrH/ge210j+CmVuZHN0cmVhbQplbmRvYmoKCjggMCBv
140
+ YmoKNDk2NwplbmRvYmoKCjkgMCBvYmoKPDwvVHlwZS9Gb250RGVzY3JpcHRv
141
+ ci9Gb250TmFtZS9CQUFBQUErTGliZXJhdGlvblNlcmlmCi9GbGFncyA0Ci9G
142
+ b250QkJveFstMTc2IC0zMDMgMTAwNSA5ODFdL0l0YWxpY0FuZ2xlIDAKL0Fz
143
+ Y2VudCA4OTEKL0Rlc2NlbnQgLTIxNgovQ2FwSGVpZ2h0IDk4MQovU3RlbVYg
144
+ ODAKL0ZvbnRGaWxlMiA3IDAgUgo+PgplbmRvYmoKCjEwIDAgb2JqCjw8L0xl
145
+ bmd0aCAyNjUvRmlsdGVyL0ZsYXRlRGVjb2RlPj4Kc3RyZWFtCnicXZDLbsQg
146
+ DEX3fAXL6WIEyTwjRZGqaUfKog817QcQcFKkBhAhi/x9wUxbqQvQMb7X2GaX
147
+ 9qE1OrBXb2UHgQ7aKA+zXbwE2sOoDSlKqrQMtwhvOQlHWPR26xxgas1g65qw
148
+ t5ibg1/p5l7ZHu4Ie/EKvDYj3Xxcuhh3i3NfMIEJlJOmoQqGWOdJuGcxAUPX
149
+ tlUxrcO6jZY/wfvqgJYYF7kVaRXMTkjwwoxAas4bWl+vDQGj/uWq7OgH+Sl8
150
+ VBZRyflh30QukY/nxLvMVeI98mmX+IBc8sTHrCkSn7IG65zz+yFxlfWP2Mvt
151
+ 19RVWtvPtFQu3sdJcbc4YhpOG/hdv7MuufB8A53Cf/0KZW5kc3RyZWFtCmVu
152
+ ZG9iagoKMTEgMCBvYmoKPDwvVHlwZS9Gb250L1N1YnR5cGUvVHJ1ZVR5cGUv
153
+ QmFzZUZvbnQvQkFBQUFBK0xpYmVyYXRpb25TZXJpZgovRmlyc3RDaGFyIDAK
154
+ L0xhc3RDaGFyIDkKL1dpZHRoc1szNjUgNjEwIDUwMCAyNzcgMzg5IDI1MCA0
155
+ NDMgMjc3IDQ0MyAyNTAgXQovRm9udERlc2NyaXB0b3IgOSAwIFIKL1RvVW5p
156
+ Y29kZSAxMCAwIFIKPj4KZW5kb2JqCgoxMiAwIG9iago8PC9GMSAxMSAwIFIK
157
+ Pj4KZW5kb2JqCgoxMyAwIG9iago8PC9Gb250IDEyIDAgUgovWE9iamVjdDw8
158
+ L1RyNCA0IDAgUj4+Ci9FeHRHU3RhdGU8PC9FR1M1IDUgMCBSPj4KL1Byb2NT
159
+ ZXRbL1BERi9UZXh0L0ltYWdlQy9JbWFnZUkvSW1hZ2VCXQo+PgplbmRvYmoK
160
+ CjEgMCBvYmoKPDwvVHlwZS9QYWdlL1BhcmVudCA2IDAgUi9SZXNvdXJjZXMg
161
+ MTMgMCBSL01lZGlhQm94WzAgMCA2MTIgNzkyXS9Hcm91cDw8L1MvVHJhbnNw
162
+ YXJlbmN5L0NTL0RldmljZVJHQi9JIHRydWU+Pi9Db250ZW50cyAyIDAgUj4+
163
+ CmVuZG9iagoKNiAwIG9iago8PC9UeXBlL1BhZ2VzCi9SZXNvdXJjZXMgMTMg
164
+ MCBSCi9NZWRpYUJveFsgMCAwIDYxMiA3OTIgXQovS2lkc1sgMSAwIFIgXQov
165
+ Q291bnQgMT4+CmVuZG9iagoKMTQgMCBvYmoKPDwvVHlwZS9DYXRhbG9nL1Bh
166
+ Z2VzIDYgMCBSCi9PcGVuQWN0aW9uWzEgMCBSIC9YWVogbnVsbCBudWxsIDBd
167
+ Ci9MYW5nKGVuLVVTKQo+PgplbmRvYmoKCjE1IDAgb2JqCjw8L0NyZWF0b3I8
168
+ RkVGRjAwNTcwMDcyMDA2OTAwNzQwMDY1MDA3Mj4KL1Byb2R1Y2VyPEZFRkYw
169
+ MDRDMDA2OTAwNjIwMDcyMDA2NTAwNEYwMDY2MDA2NjAwNjkwMDYzMDA2NTAw
170
+ MjAwMDM0MDAyRTAwMzQ+Ci9DcmVhdGlvbkRhdGUoRDoyMDE1MTAwNzE3MjM1
171
+ Ni0wNCcwMCcpPj4KZW5kb2JqCgp4cmVmCjAgMTYKMDAwMDAwMDAwMCA2NTUz
172
+ NSBmIAowMDAwMDA2NDM1IDAwMDAwIG4gCjAwMDAwMDAwMTkgMDAwMDAgbiAK
173
+ MDAwMDAwMDIyMiAwMDAwMCBuIAowMDAwMDAwMjQyIDAwMDAwIG4gCjAwMDAw
174
+ MDA0MzggMDAwMDAgbiAKMDAwMDAwNjU3OCAwMDAwMCBuIAowMDAwMDAwNDc4
175
+ IDAwMDAwIG4gCjAwMDAwMDU1MjkgMDAwMDAgbiAKMDAwMDAwNTU1MCAwMDAw
176
+ MCBuIAowMDAwMDA1NzQ1IDAwMDAwIG4gCjAwMDAwMDYwODAgMDAwMDAgbiAK
177
+ MDAwMDAwNjI3NyAwMDAwMCBuIAowMDAwMDA2MzEwIDAwMDAwIG4gCjAwMDAw
178
+ MDY2NzcgMDAwMDAgbiAKMDAwMDAwNjc3NCAwMDAwMCBuIAp0cmFpbGVyCjw8
179
+ L1NpemUgMTYvUm9vdCAxNCAwIFIKL0luZm8gMTUgMCBSCi9JRCBbIDw4RTM2
180
+ MTE0MzlDMTgyQTE5NzJFRUY5NjBFMjg3N0MzMz4KPDhFMzYxMTQzOUMxODJB
181
+ MTk3MkVFRjk2MEUyODc3QzMzPiBdCi9Eb2NDaGVja3N1bSAvNkI5OEY3RjY3
182
+ MEUwMzBBNEFGNEM0QUYxM0U3NEU1NDMKPj4Kc3RhcnR4cmVmCjY5NDkKJSVF
183
+ T0YKDQotLS0tLS0tLS0tLS0tUnVieU11bHRpcGFydFBvc3QtNjk5MDcxNDFm
184
+ MzJlMjgyNTEzZGQ3ZWE1ZjkyYWE5ZWUNCkNvbnRlbnQtRGlzcG9zaXRpb246
185
+ IGZvcm0tZGF0YTsgbmFtZT0iYXBpX2tleSINCg0KPEFQSV9LRVk+DQotLS0t
186
+ LS0tLS0tLS0tUnVieU11bHRpcGFydFBvc3QtNjk5MDcxNDFmMzJlMjgyNTEz
187
+ ZGQ3ZWE1ZjkyYWE5ZWUNCkNvbnRlbnQtRGlzcG9zaXRpb246IGZvcm0tZGF0
188
+ YTsgbmFtZT0iYXBpX3NlY3JldCINCg0KPEFQSV9TRUNSRVQ+DQotLS0tLS0t
189
+ LS0tLS0tUnVieU11bHRpcGFydFBvc3QtNjk5MDcxNDFmMzJlMjgyNTEzZGQ3
190
+ ZWE1ZjkyYWE5ZWUtLQ0KDQo=
191
+ headers:
192
+ User-Agent:
193
+ - Faraday v0.13.1
194
+ Content-Type:
195
+ - multipart/form-data; boundary=-----------RubyMultipartPost-69907141f32e282513dd7ea5f92aa9ee
196
+ Content-Length:
197
+ - '8221'
198
+ response:
199
+ status:
200
+ code: 200
201
+ message:
202
+ headers:
203
+ cache-control:
204
+ - max-age=0, private, must-revalidate
205
+ content-type:
206
+ - application/json; charset=utf-8
207
+ date:
208
+ - Fri, 27 Oct 2017 19:41:11 GMT
209
+ etag:
210
+ - W/"ac443c2e0e631b7b9c8fdbe6f31f2b29"
211
+ server:
212
+ - nginx
213
+ strict-transport-security:
214
+ - max-age=15768000; preload
215
+ x-request-id:
216
+ - fd4c00f8-da14-4fc2-91e7-27cf4a90a00a
217
+ x-robots-tag:
218
+ - noindex, nofollow, nosnippet, noarchive
219
+ x-runtime:
220
+ - '0.123611'
221
+ content-length:
222
+ - '74'
223
+ connection:
224
+ - Close
225
+ body:
226
+ encoding: UTF-8
227
+ string: '{"success":true,"message":"Fax queued for sending","data":{"id":55405187}}'
228
+ http_version:
229
+ recorded_at: Fri, 27 Oct 2017 19:41:11 GMT
230
+ recorded_with: VCR 3.0.3
@@ -0,0 +1,44 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: delete
5
+ uri: https://api.phaxio.com/v2/faxes/1234?api_key=<API_KEY>&api_secret=<API_SECRET>
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.13.1
12
+ response:
13
+ status:
14
+ code: 200
15
+ message:
16
+ headers:
17
+ cache-control:
18
+ - max-age=0, private, must-revalidate
19
+ content-type:
20
+ - application/json; charset=utf-8
21
+ date:
22
+ - Thu, 02 Nov 2017 18:25:41 GMT
23
+ etag:
24
+ - W/"a7c920925a06bffb5bf9adc15cbbc926"
25
+ server:
26
+ - nginx
27
+ strict-transport-security:
28
+ - max-age=15768000; preload
29
+ x-request-id:
30
+ - f59a3530-6286-466a-9f4c-46179147224d
31
+ x-robots-tag:
32
+ - noindex, nofollow, nosnippet, noarchive
33
+ x-runtime:
34
+ - '0.697814'
35
+ content-length:
36
+ - '54'
37
+ connection:
38
+ - Close
39
+ body:
40
+ encoding: UTF-8
41
+ string: '{"success":true,"message":"Deleted fax successfully!"}'
42
+ http_version:
43
+ recorded_at: Thu, 02 Nov 2017 18:25:42 GMT
44
+ recorded_with: VCR 3.0.3