currency_cloud 0.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +1 -0
- data/.ruby-gemset +1 -0
- data/.ruby-version +1 -0
- data/.travis.yml +12 -0
- data/Gemfile +7 -0
- data/Gemfile.lock +99 -0
- data/Guardfile +14 -0
- data/LICENSE.md +22 -0
- data/README.md +10 -0
- data/Rakefile +30 -0
- data/currency_cloud.gemspec +27 -0
- data/examples/server.rb +15 -0
- data/lib/currency_cloud.rb +26 -0
- data/lib/currency_cloud/actions/create.rb +9 -0
- data/lib/currency_cloud/actions/current.rb +9 -0
- data/lib/currency_cloud/actions/delete.rb +15 -0
- data/lib/currency_cloud/actions/find.rb +27 -0
- data/lib/currency_cloud/actions/retrieve.rb +9 -0
- data/lib/currency_cloud/actions/update.rb +12 -0
- data/lib/currency_cloud/errors/api_error.rb +38 -0
- data/lib/currency_cloud/errors/config_error.rb +5 -0
- data/lib/currency_cloud/errors/unexpected_error.rb +10 -0
- data/lib/currency_cloud/pagination.rb +7 -0
- data/lib/currency_cloud/request_handler.rb +68 -0
- data/lib/currency_cloud/resource.rb +73 -0
- data/lib/currency_cloud/resourceful_collection.rb +15 -0
- data/lib/currency_cloud/resources/account.rb +6 -0
- data/lib/currency_cloud/resources/balance.rb +8 -0
- data/lib/currency_cloud/resources/beneficiary.rb +14 -0
- data/lib/currency_cloud/resources/contact.rb +6 -0
- data/lib/currency_cloud/resources/conversion.rb +10 -0
- data/lib/currency_cloud/resources/payer.rb +6 -0
- data/lib/currency_cloud/resources/payment.rb +11 -0
- data/lib/currency_cloud/resources/rate.rb +21 -0
- data/lib/currency_cloud/resources/reference.rb +29 -0
- data/lib/currency_cloud/resources/settlement.rb +30 -0
- data/lib/currency_cloud/resources/transaction.rb +7 -0
- data/lib/currency_cloud/response_handler.rb +46 -0
- data/lib/currency_cloud/session.rb +62 -0
- data/lib/currency_cloud/version.rb +8 -0
- data/spec/currency_cloud_spec.rb +78 -0
- data/spec/integration/actions_spec.rb +101 -0
- data/spec/integration/authentication_spec.rb +37 -0
- data/spec/integration/errors_spec.rb +157 -0
- data/spec/integration/rates_spec.rb +39 -0
- data/spec/integration/reference_spec.rb +57 -0
- data/spec/spec_helper.rb +11 -0
- data/spec/support/vcr_cassettes/Actions/can_create.yml +38 -0
- data/spec/support/vcr_cassettes/Actions/can_current.yml +37 -0
- data/spec/support/vcr_cassettes/Actions/can_delete.yml +39 -0
- data/spec/support/vcr_cassettes/Actions/can_find.yml +38 -0
- data/spec/support/vcr_cassettes/Actions/can_first.yml +75 -0
- data/spec/support/vcr_cassettes/Actions/can_retrieve.yml +38 -0
- data/spec/support/vcr_cassettes/Actions/can_update.yml +39 -0
- data/spec/support/vcr_cassettes/Authentication/can_be_closed.yml +67 -0
- data/spec/support/vcr_cassettes/Authentication/can_use_just_a_token.yml +36 -0
- data/spec/support/vcr_cassettes/Authentication/handles_session_timeout_error.yml +101 -0
- data/spec/support/vcr_cassettes/Authentication/happens_lazily.yml +34 -0
- data/spec/support/vcr_cassettes/Error/is_raised_on_a_bad_request.yml +39 -0
- data/spec/support/vcr_cassettes/Error/is_raised_on_a_forbidden_request.yml +35 -0
- data/spec/support/vcr_cassettes/Error/is_raised_on_an_internal_server_error.yml +69 -0
- data/spec/support/vcr_cassettes/Error/is_raised_on_incorrect_authentication_details.yml +39 -0
- data/spec/support/vcr_cassettes/Error/is_raised_when_a_resource_is_not_found.yml +37 -0
- data/spec/support/vcr_cassettes/Error/is_raised_when_too_many_requests_have_been_issued.yml +34 -0
- data/spec/support/vcr_cassettes/Rates/can_find.yml +36 -0
- data/spec/support/vcr_cassettes/Rates/can_provided_detailed_rate.yml +36 -0
- data/spec/support/vcr_cassettes/Reference/can_retrieve_beneficiary_required_details.yml +36 -0
- data/spec/support/vcr_cassettes/Reference/can_retrieve_conversion_dates.yml +46 -0
- data/spec/support/vcr_cassettes/Reference/can_retrieve_currencies.yml +47 -0
- data/spec/support/vcr_cassettes/Reference/can_retrieve_settlement_accounts.yml +39 -0
- metadata +230 -0
@@ -0,0 +1,34 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: post
|
5
|
+
uri: https://devapi.thecurrencycloud.com/v2/authenticate/api
|
6
|
+
body:
|
7
|
+
encoding: UTF-8
|
8
|
+
string: login_id=rjnienaber%40gmail.com&api_key=ef0fd50fca1fb14c1fab3a8436b9ecb65f02f129fd87eafa45ded8ae257528f0
|
9
|
+
headers: {}
|
10
|
+
response:
|
11
|
+
status:
|
12
|
+
code: 200
|
13
|
+
message: OK
|
14
|
+
headers:
|
15
|
+
Server:
|
16
|
+
- nginx
|
17
|
+
Date:
|
18
|
+
- Sat, 25 Apr 2015 08:44:14 GMT
|
19
|
+
Content-Type:
|
20
|
+
- application/json;charset=utf-8
|
21
|
+
Content-Length:
|
22
|
+
- '49'
|
23
|
+
Connection:
|
24
|
+
- keep-alive
|
25
|
+
X-Request-Id:
|
26
|
+
- '2771930174889333914'
|
27
|
+
X-Content-Type-Options:
|
28
|
+
- nosniff
|
29
|
+
body:
|
30
|
+
encoding: UTF-8
|
31
|
+
string: '{"auth_token":"57ef449f6316f2f54dfec37c2006fe50"}'
|
32
|
+
http_version:
|
33
|
+
recorded_at: Sat, 25 Apr 2015 08:44:14 GMT
|
34
|
+
recorded_with: VCR 2.9.3
|
@@ -0,0 +1,39 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: post
|
5
|
+
uri: https://devapi.thecurrencycloud.com/v2/authenticate/api
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: login_id=non-existent-login-id&api_key=ef0fd50fca1fb14c1fab3a8436b9ecb57528f0
|
9
|
+
headers:
|
10
|
+
Accept:
|
11
|
+
- ! '*/*'
|
12
|
+
User-Agent:
|
13
|
+
- Ruby
|
14
|
+
response:
|
15
|
+
status:
|
16
|
+
code: 400
|
17
|
+
message: Bad Request
|
18
|
+
headers:
|
19
|
+
Server:
|
20
|
+
- nginx
|
21
|
+
Content-Type:
|
22
|
+
- application/json;charset=utf-8
|
23
|
+
Date:
|
24
|
+
- Fri, 24 Apr 2015 20:47:14 GMT
|
25
|
+
X-Request-Id:
|
26
|
+
- '2771569299808580066'
|
27
|
+
X-Content-Type-Options:
|
28
|
+
- nosniff
|
29
|
+
Connection:
|
30
|
+
- close
|
31
|
+
Content-Length:
|
32
|
+
- '190'
|
33
|
+
body:
|
34
|
+
encoding: US-ASCII
|
35
|
+
string: ! '{"error_code":"auth_invalid_user_login_details","error_messages":{"api_key":[{"code":"api_key_length_is_invalid","message":"api_key
|
36
|
+
should be 64 character(s) long","params":{"length":64}}]}}'
|
37
|
+
http_version:
|
38
|
+
recorded_at: Fri, 24 Apr 2015 20:47:14 GMT
|
39
|
+
recorded_with: VCR 2.9.3
|
@@ -0,0 +1,35 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: post
|
5
|
+
uri: https://devapi.thecurrencycloud.com/v2/authenticate/api
|
6
|
+
body:
|
7
|
+
encoding: UTF-8
|
8
|
+
string: login_id=rjnienaber%40gmail.com&api_key=ef0fd50fca1fb14c1fab3a8436b9ecb65f02f129fd87eafa45ded8ae257528f0
|
9
|
+
headers: {}
|
10
|
+
response:
|
11
|
+
status:
|
12
|
+
code: 403
|
13
|
+
message: Forbidden
|
14
|
+
headers:
|
15
|
+
Server:
|
16
|
+
- nginx
|
17
|
+
Date:
|
18
|
+
- Sat, 25 Apr 2015 07:04:11 GMT
|
19
|
+
Content-Type:
|
20
|
+
- application/json;charset=utf-8
|
21
|
+
Content-Length:
|
22
|
+
- '49'
|
23
|
+
Connection:
|
24
|
+
- keep-alive
|
25
|
+
X-Request-Id:
|
26
|
+
- '2771879819392580288'
|
27
|
+
X-Content-Type-Options:
|
28
|
+
- nosniff
|
29
|
+
body:
|
30
|
+
encoding: UTF-8
|
31
|
+
string: ! '{"error_code":"auth_failed","error_messages":{"username":[{"code":"invalid_supplied_credentials","message":"Authentication
|
32
|
+
failed with the supplied credentials","params":{}}]}}'
|
33
|
+
http_version:
|
34
|
+
recorded_at: Sat, 25 Apr 2015 07:04:11 GMT
|
35
|
+
recorded_with: VCR 2.9.3
|
@@ -0,0 +1,69 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: post
|
5
|
+
uri: https://devapi.thecurrencycloud.com/v2/authenticate/api
|
6
|
+
body:
|
7
|
+
encoding: UTF-8
|
8
|
+
string: login_id=rjnienaber%40gmail.com&api_key=ef0fd50fca1fb14c1fab3a8436b9ecb65f02f129fd87eafa45ded8ae257528f0
|
9
|
+
headers: {}
|
10
|
+
response:
|
11
|
+
status:
|
12
|
+
code: 500
|
13
|
+
message: Internal Server Error
|
14
|
+
headers:
|
15
|
+
Server:
|
16
|
+
- nginx
|
17
|
+
Date:
|
18
|
+
- Sat, 25 Apr 2015 06:52:42 GMT
|
19
|
+
Content-Type:
|
20
|
+
- application/json;charset=utf-8
|
21
|
+
Content-Length:
|
22
|
+
- '49'
|
23
|
+
Connection:
|
24
|
+
- keep-alive
|
25
|
+
X-Request-Id:
|
26
|
+
- '2771875643610572878'
|
27
|
+
X-Content-Type-Options:
|
28
|
+
- nosniff
|
29
|
+
body:
|
30
|
+
encoding: UTF-8
|
31
|
+
string: '{"error_code":"internal_application_error","error_messages":{"base":[{"code":"internal_application_error","message":"A
|
32
|
+
general application error occurred","params":{"request_id":2771875643610572878}}]}}'
|
33
|
+
http_version:
|
34
|
+
recorded_at: Sat, 25 Apr 2015 06:52:42 GMT
|
35
|
+
- request:
|
36
|
+
method: get
|
37
|
+
uri: https://devapi.thecurrencycloud.com/v2/beneficiaries/081596c9-02de-483e-9f2a-4cf55dcdf98c
|
38
|
+
body:
|
39
|
+
encoding: US-ASCII
|
40
|
+
string: ''
|
41
|
+
headers:
|
42
|
+
X-Auth-Token:
|
43
|
+
- 656485646b068f6e9c81e3d885fa54f5
|
44
|
+
response:
|
45
|
+
status:
|
46
|
+
code: 404
|
47
|
+
message: Not Found
|
48
|
+
headers:
|
49
|
+
Server:
|
50
|
+
- nginx
|
51
|
+
Date:
|
52
|
+
- Sat, 25 Apr 2015 11:21:38 GMT
|
53
|
+
Content-Type:
|
54
|
+
- application/json;charset=utf-8
|
55
|
+
Content-Length:
|
56
|
+
- '159'
|
57
|
+
Connection:
|
58
|
+
- keep-alive
|
59
|
+
X-Request-Id:
|
60
|
+
- '2772009396693571416'
|
61
|
+
X-Content-Type-Options:
|
62
|
+
- nosniff
|
63
|
+
body:
|
64
|
+
encoding: UTF-8
|
65
|
+
string: '{"error_code":"beneficiary_not_found","error_messages":{"id":[{"code":"beneficiary_not_found","message":"Beneficiary
|
66
|
+
was not found for this id","params":{}}]}}'
|
67
|
+
http_version:
|
68
|
+
recorded_at: Sat, 25 Apr 2015 11:21:38 GMT
|
69
|
+
recorded_with: VCR 2.9.3
|
@@ -0,0 +1,39 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: post
|
5
|
+
uri: https://devapi.thecurrencycloud.com/v2/authenticate/api
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: login_id=non-existent-login-id&api_key=efb5ae2af84978b7a37f18dd61c8bbe139b403009faea83484405a3dcb64c4d8
|
9
|
+
headers:
|
10
|
+
Accept:
|
11
|
+
- ! '*/*'
|
12
|
+
User-Agent:
|
13
|
+
- Ruby
|
14
|
+
response:
|
15
|
+
status:
|
16
|
+
code: 401
|
17
|
+
message: Unauthorized
|
18
|
+
headers:
|
19
|
+
Server:
|
20
|
+
- nginx
|
21
|
+
Date:
|
22
|
+
- Fri, 24 Apr 2015 20:47:15 GMT
|
23
|
+
Content-Type:
|
24
|
+
- application/json;charset=utf-8
|
25
|
+
Content-Length:
|
26
|
+
- '176'
|
27
|
+
Connection:
|
28
|
+
- keep-alive
|
29
|
+
X-Request-Id:
|
30
|
+
- '2771569303323356643'
|
31
|
+
X-Content-Type-Options:
|
32
|
+
- nosniff
|
33
|
+
body:
|
34
|
+
encoding: US-ASCII
|
35
|
+
string: ! '{"error_code":"auth_failed","error_messages":{"username":[{"code":"invalid_supplied_credentials","message":"Authentication
|
36
|
+
failed with the supplied credentials","params":{}}]}}'
|
37
|
+
http_version:
|
38
|
+
recorded_at: Fri, 24 Apr 2015 20:47:15 GMT
|
39
|
+
recorded_with: VCR 2.9.3
|
@@ -0,0 +1,37 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: https://devapi.thecurrencycloud.com/v2/beneficiaries/081596c9-02de-483e-9f2a-4cf55dcdf98c
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
X-Auth-Token:
|
11
|
+
- 656485646b068f6e9c81e3d885fa54f5
|
12
|
+
response:
|
13
|
+
status:
|
14
|
+
code: 404
|
15
|
+
message: Not Found
|
16
|
+
headers:
|
17
|
+
Server:
|
18
|
+
- nginx
|
19
|
+
Date:
|
20
|
+
- Sat, 25 Apr 2015 11:16:53 GMT
|
21
|
+
Content-Type:
|
22
|
+
- application/json;charset=utf-8
|
23
|
+
Content-Length:
|
24
|
+
- '159'
|
25
|
+
Connection:
|
26
|
+
- keep-alive
|
27
|
+
X-Request-Id:
|
28
|
+
- '2772007003121723883'
|
29
|
+
X-Content-Type-Options:
|
30
|
+
- nosniff
|
31
|
+
body:
|
32
|
+
encoding: UTF-8
|
33
|
+
string: '{"error_code":"beneficiary_not_found","error_messages":{"id":[{"code":"beneficiary_not_found","message":"Beneficiary
|
34
|
+
was not found for this id","params":{}}]}}'
|
35
|
+
http_version:
|
36
|
+
recorded_at: Sat, 25 Apr 2015 11:16:53 GMT
|
37
|
+
recorded_with: VCR 2.9.3
|
@@ -0,0 +1,34 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: post
|
5
|
+
uri: https://devapi.thecurrencycloud.com/v2/authenticate/api
|
6
|
+
body:
|
7
|
+
encoding: UTF-8
|
8
|
+
string: login_id=rjnienaber%40gmail.com2&api_key=ef0fd50fca1fb14c1fab3a8436b9ecb65f02f129fd87eafa45ded8ae257528f0
|
9
|
+
headers: {}
|
10
|
+
response:
|
11
|
+
status:
|
12
|
+
code: 429
|
13
|
+
message: Too Many Requests
|
14
|
+
headers:
|
15
|
+
Server:
|
16
|
+
- nginx
|
17
|
+
Date:
|
18
|
+
- Sat, 25 Apr 2015 06:45:44 GMT
|
19
|
+
Content-Type:
|
20
|
+
- application/json
|
21
|
+
Transfer-Encoding:
|
22
|
+
- chunked
|
23
|
+
Connection:
|
24
|
+
- keep-alive
|
25
|
+
X-Content-Type-Options:
|
26
|
+
- nosniff
|
27
|
+
body:
|
28
|
+
encoding: UTF-8
|
29
|
+
string: '{"error_code":"too_many_requests","error_messages":{"base":[{"code":"too_many_requests","message":"Too
|
30
|
+
many requests have been made to the api. Please refer to the Developer Center
|
31
|
+
for more information","params":{}}]}}'
|
32
|
+
http_version:
|
33
|
+
recorded_at: Sat, 25 Apr 2015 06:45:44 GMT
|
34
|
+
recorded_with: VCR 2.9.3
|
@@ -0,0 +1,36 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: https://devapi.thecurrencycloud.com/v2/rates/find
|
6
|
+
body:
|
7
|
+
encoding: UTF-8
|
8
|
+
string: currency_pair=GBPUSD%2CEURGBP
|
9
|
+
headers:
|
10
|
+
X-Auth-Token:
|
11
|
+
- 242993ca94b9d1c6c1d8f7d3275a6f36
|
12
|
+
response:
|
13
|
+
status:
|
14
|
+
code: 200
|
15
|
+
message: OK
|
16
|
+
headers:
|
17
|
+
Server:
|
18
|
+
- nginx
|
19
|
+
Date:
|
20
|
+
- Mon, 27 Apr 2015 20:33:51 GMT
|
21
|
+
Content-Type:
|
22
|
+
- application/json;charset=utf-8
|
23
|
+
Content-Length:
|
24
|
+
- '90'
|
25
|
+
Connection:
|
26
|
+
- keep-alive
|
27
|
+
X-Request-Id:
|
28
|
+
- '2773736887435072763'
|
29
|
+
X-Content-Type-Options:
|
30
|
+
- nosniff
|
31
|
+
body:
|
32
|
+
encoding: UTF-8
|
33
|
+
string: '{"rates":{"EURGBP":["0.71445","0.71508"],"GBPUSD":["1.52264","1.52334"]},"unavailable":[]}'
|
34
|
+
http_version:
|
35
|
+
recorded_at: Mon, 27 Apr 2015 20:33:52 GMT
|
36
|
+
recorded_with: VCR 2.9.3
|
@@ -0,0 +1,36 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: https://devapi.thecurrencycloud.com/v2/rates/detailed
|
6
|
+
body:
|
7
|
+
encoding: UTF-8
|
8
|
+
string: buy_currency=GBP&sell_currency=USD&fixed_side=buy&amount=10000
|
9
|
+
headers:
|
10
|
+
X-Auth-Token:
|
11
|
+
- 242993ca94b9d1c6c1d8f7d3275a6f36
|
12
|
+
response:
|
13
|
+
status:
|
14
|
+
code: 200
|
15
|
+
message: OK
|
16
|
+
headers:
|
17
|
+
Server:
|
18
|
+
- nginx
|
19
|
+
Date:
|
20
|
+
- Mon, 27 Apr 2015 20:35:49 GMT
|
21
|
+
Content-Type:
|
22
|
+
- application/json;charset=utf-8
|
23
|
+
Content-Length:
|
24
|
+
- '377'
|
25
|
+
Connection:
|
26
|
+
- keep-alive
|
27
|
+
X-Request-Id:
|
28
|
+
- '2773737871964103057'
|
29
|
+
X-Content-Type-Options:
|
30
|
+
- nosniff
|
31
|
+
body:
|
32
|
+
encoding: UTF-8
|
33
|
+
string: '{"settlement_cut_off_time":"2015-04-29T14:00:00Z","currency_pair":"GBPUSD","client_buy_currency":"GBP","client_sell_currency":"USD","client_buy_amount":"10000.00","client_sell_amount":"15234.00","fixed_side":"buy","mid_market_rate":"1.5231","client_rate":"1.5234","partner_rate":null,"core_rate":"1.5234","deposit_required":null,"deposit_amount":"0.0","deposit_currency":"USD"}'
|
34
|
+
http_version:
|
35
|
+
recorded_at: Mon, 27 Apr 2015 20:35:49 GMT
|
36
|
+
recorded_with: VCR 2.9.3
|
@@ -0,0 +1,36 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: https://devapi.thecurrencycloud.com/v2/reference/beneficiary_required_details
|
6
|
+
body:
|
7
|
+
encoding: UTF-8
|
8
|
+
string: currency=GBP&bank_account_country=GB&beneficiary_country=GB
|
9
|
+
headers:
|
10
|
+
X-Auth-Token:
|
11
|
+
- 1c9da5726314246acfb09ec5651307a5
|
12
|
+
response:
|
13
|
+
status:
|
14
|
+
code: 200
|
15
|
+
message: OK
|
16
|
+
headers:
|
17
|
+
Server:
|
18
|
+
- nginx
|
19
|
+
Date:
|
20
|
+
- Wed, 29 Apr 2015 21:04:08 GMT
|
21
|
+
Content-Type:
|
22
|
+
- application/json;charset=utf-8
|
23
|
+
Content-Length:
|
24
|
+
- '1390'
|
25
|
+
Connection:
|
26
|
+
- keep-alive
|
27
|
+
X-Request-Id:
|
28
|
+
- '2775201676418056015'
|
29
|
+
X-Content-Type-Options:
|
30
|
+
- nosniff
|
31
|
+
body:
|
32
|
+
encoding: UTF-8
|
33
|
+
string: '{"details":[{"payment_type":"priority","beneficiary_entity_type":"individual","beneficiary_address":"^.{1,255}","beneficiary_city":"^.{1,255}","beneficiary_country":"^[A-z]{2}$","beneficiary_first_name":"^.{1,255}","beneficiary_last_name":"^.{1,255}","acct_number":"^[0-9A-Z]{1,50}$","sort_code":"^\\d{6}$"},{"payment_type":"priority","beneficiary_entity_type":"company","beneficiary_address":"^.{1,255}","beneficiary_city":"^.{1,255}","beneficiary_country":"^[A-z]{2}$","beneficiary_company_name":"^.{1,255}","acct_number":"^[0-9A-Z]{1,50}$","sort_code":"^\\d{6}$"},{"payment_type":"regular","acct_number":"^[0-9A-Z]{1,50}$","sort_code":"^\\d{6}$","beneficiary_entity_type":"individual"},{"payment_type":"regular","acct_number":"^[0-9A-Z]{1,50}$","sort_code":"^\\d{6}$","beneficiary_entity_type":"company"},{"payment_type":"priority","beneficiary_entity_type":"individual","beneficiary_address":"^.{1,255}","beneficiary_city":"^.{1,255}","beneficiary_country":"^[A-z]{2}$","beneficiary_first_name":"^.{1,255}","beneficiary_last_name":"^.{1,255}","iban":"^[0-9A-Z]{1,34}$","bic_swift":"^[0-9A-Z]{8}$|^[0-9A-Z]{11}$"},{"payment_type":"priority","beneficiary_entity_type":"company","beneficiary_address":"^.{1,255}","beneficiary_city":"^.{1,255}","beneficiary_country":"^[A-z]{2}$","beneficiary_company_name":"^.{1,255}","iban":"^[0-9A-Z]{1,34}$","bic_swift":"^[0-9A-Z]{8}$|^[0-9A-Z]{11}$"}]}'
|
34
|
+
http_version:
|
35
|
+
recorded_at: Wed, 29 Apr 2015 21:04:08 GMT
|
36
|
+
recorded_with: VCR 2.9.3
|
@@ -0,0 +1,46 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: https://devapi.thecurrencycloud.com/v2/reference/conversion_dates
|
6
|
+
body:
|
7
|
+
encoding: UTF-8
|
8
|
+
string: conversion_pair=GBPUSD
|
9
|
+
headers:
|
10
|
+
X-Auth-Token:
|
11
|
+
- 1c9da5726314246acfb09ec5651307a5
|
12
|
+
response:
|
13
|
+
status:
|
14
|
+
code: 200
|
15
|
+
message: OK
|
16
|
+
headers:
|
17
|
+
Server:
|
18
|
+
- nginx
|
19
|
+
Date:
|
20
|
+
- Wed, 29 Apr 2015 21:04:08 GMT
|
21
|
+
Content-Type:
|
22
|
+
- application/json;charset=utf-8
|
23
|
+
Content-Length:
|
24
|
+
- '845'
|
25
|
+
Connection:
|
26
|
+
- keep-alive
|
27
|
+
X-Request-Id:
|
28
|
+
- '2775201681275056976'
|
29
|
+
X-Content-Type-Options:
|
30
|
+
- nosniff
|
31
|
+
body:
|
32
|
+
encoding: UTF-8
|
33
|
+
string: '{"invalid_conversion_dates":{"2015-05-02":"No trading on Saturday","2015-05-03":"No
|
34
|
+
trading on Sunday","2015-05-04":"Early May bank holiday","2015-05-09":"No
|
35
|
+
trading on Saturday","2015-05-10":"No trading on Sunday","2015-05-16":"No
|
36
|
+
trading on Saturday","2015-05-17":"No trading on Sunday","2015-05-23":"No
|
37
|
+
trading on Saturday","2015-05-24":"No trading on Sunday","2015-05-25":"Spring
|
38
|
+
bank holiday","2015-05-30":"No trading on Saturday","2015-05-31":"No trading
|
39
|
+
on Sunday","2015-06-06":"No trading on Saturday","2015-06-07":"No trading
|
40
|
+
on Sunday","2015-06-13":"No trading on Saturday","2015-06-14":"No trading
|
41
|
+
on Sunday","2015-06-20":"No trading on Saturday","2015-06-21":"No trading
|
42
|
+
on Sunday","2015-06-27":"No trading on Saturday","2015-06-28":"No trading
|
43
|
+
on Sunday"},"first_conversion_date":"2015-04-30","default_conversion_date":"2015-04-30"}'
|
44
|
+
http_version:
|
45
|
+
recorded_at: Wed, 29 Apr 2015 21:04:08 GMT
|
46
|
+
recorded_with: VCR 2.9.3
|