zuora-ruby 0.1.0 → 0.2.0
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 +4 -4
- data/.gitignore +2 -1
- data/.rubocop.yml +27 -3
- data/README.md +37 -19
- data/lib/zuora.rb +51 -0
- data/lib/zuora/client.rb +51 -25
- data/lib/zuora/models.rb +4 -3
- data/lib/zuora/models/account.rb +58 -47
- data/lib/zuora/models/card_holder.rb +46 -52
- data/lib/zuora/models/contact.rb +65 -38
- data/lib/zuora/models/dirty.rb +192 -0
- data/lib/zuora/models/payment_methods/credit_card.rb +23 -23
- data/lib/zuora/models/rate_plan.rb +6 -10
- data/lib/zuora/models/rate_plan_charge.rb +111 -49
- data/lib/zuora/models/subscription.rb +72 -42
- data/lib/zuora/models/tier.rb +16 -16
- data/lib/zuora/models/validation_predicates.rb +29 -0
- data/lib/zuora/resources.rb +0 -11
- data/lib/zuora/resources/accounts.rb +9 -8
- data/lib/zuora/resources/payment_methods/credit_card.rb +1 -3
- data/lib/zuora/resources/subscriptions.rb +2 -6
- data/lib/zuora/serializers/attribute.rb +3 -3
- data/lib/zuora/version.rb +1 -1
- data/zuora/fixtures/vcr_cassettes/account_create_.yml +111 -0
- data/zuora/fixtures/vcr_cassettes/account_update_.yml +113 -0
- data/zuora/fixtures/vcr_cassettes/subscription_create_.yml +114 -0
- data/zuora/fixtures/vcr_cassettes/subscription_update_.yml +114 -0
- data/zuora_ruby.gemspec +2 -3
- metadata +13 -8
- data/lib/zuora/models/utils.rb +0 -23
@@ -6,8 +6,8 @@ module Zuora
|
|
6
6
|
# @param [Hash] { [String]: lowerCamelCased key =>
|
7
7
|
# [Any]: value }
|
8
8
|
def self.serialize(model)
|
9
|
-
attrs = model.
|
10
|
-
attr_pairs =
|
9
|
+
attrs = model.changed_attributes || {}
|
10
|
+
attr_pairs = attrs.map { |attr| serialize_attr model, attr }
|
11
11
|
Hash[attr_pairs]
|
12
12
|
end
|
13
13
|
|
@@ -26,7 +26,7 @@ module Zuora
|
|
26
26
|
|
27
27
|
# Recursively serialize this attribute's
|
28
28
|
# attributes, if they are defined
|
29
|
-
val = serialize val if val.respond_to?(:
|
29
|
+
val = serialize val if val.respond_to?(:changed_attributes)
|
30
30
|
|
31
31
|
[key, val]
|
32
32
|
end
|
data/lib/zuora/version.rb
CHANGED
@@ -0,0 +1,111 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: post
|
5
|
+
uri: https://apisandbox-api.zuora.com/rest/v1/connections
|
6
|
+
body:
|
7
|
+
encoding: UTF-8
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
User-Agent:
|
11
|
+
- Faraday v0.9.2
|
12
|
+
Apiaccesskeyid:
|
13
|
+
- <ZUORA_SANDBOX_USERNAME>
|
14
|
+
Apisecretaccesskey:
|
15
|
+
- <ZUORA_SANDBOX_PASSWORD>
|
16
|
+
Content-Type:
|
17
|
+
- application/json
|
18
|
+
Content-Length:
|
19
|
+
- '0'
|
20
|
+
Accept-Encoding:
|
21
|
+
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
22
|
+
Accept:
|
23
|
+
- "*/*"
|
24
|
+
response:
|
25
|
+
status:
|
26
|
+
code: 200
|
27
|
+
message: OK
|
28
|
+
headers:
|
29
|
+
Server:
|
30
|
+
- Zuora App
|
31
|
+
Content-Type:
|
32
|
+
- application/json;charset=utf-8
|
33
|
+
Content-Length:
|
34
|
+
- '22'
|
35
|
+
Expires:
|
36
|
+
- Tue, 12 Jan 2016 16:24:48 GMT
|
37
|
+
Cache-Control:
|
38
|
+
- max-age=0, no-cache, no-store
|
39
|
+
Pragma:
|
40
|
+
- no-cache
|
41
|
+
Date:
|
42
|
+
- Tue, 12 Jan 2016 16:24:48 GMT
|
43
|
+
Connection:
|
44
|
+
- keep-alive
|
45
|
+
Set-Cookie:
|
46
|
+
- ZSession=dyulKCwYntJ2Ts8BHJqKuC2YTwR_ib4dNlxPXITUPpGrDQwRFQW3ZmRfgYAVfxz7_p3QQMyMSH0lULznTeiwNd2nOD7nEHTOQ-XM2nHnEKijEdsMQG303M31q_ZZqLkEISXQQlw2ynD4-ASPL6Ntihr84WUrgfCdT4-J1crQCofOWZDMpisz7v3iHfXSGEQF1mYh8voS_Xm1xSDbFqrlxYbz3n4iSZIpVPCfx-T-qWRJARzBVyqTZFiAzYd-NQ48;
|
47
|
+
Path=/; Secure; HttpOnly
|
48
|
+
body:
|
49
|
+
encoding: UTF-8
|
50
|
+
string: |-
|
51
|
+
{
|
52
|
+
"success" : true
|
53
|
+
}
|
54
|
+
http_version:
|
55
|
+
recorded_at: Tue, 12 Jan 2016 16:24:48 GMT
|
56
|
+
- request:
|
57
|
+
method: post
|
58
|
+
uri: https://apisandbox-api.zuora.com/rest/v1/accounts
|
59
|
+
body:
|
60
|
+
encoding: UTF-8
|
61
|
+
string: '{"accountNumber":null,"autoPay":true,"billToContact":{"address1":"123
|
62
|
+
Main St","address2":null,"city":"Palm Springs","country":"US","county":null,"fax":null,"firstName":"Abc","homePhone":null,"lastName":"Def","mobilePhone":null,"nickname":null,"otherPhone":null,"otherPhoneType":null,"personalEmail":null,"zipCode":"90210","state":"FL","taxRegion":null,"workEmail":null,"workPhone":null},"billCycleDay":"0","crmId":null,"currency":"USD","creditCard":{"cardType":"Visa","cardNumber":"4111111111111111","expirationMonth":"03","expirationYear":"2017","securityCode":"122"},"name":"Abc","hpmCreditCardPaymentMethodId":null,"notes":null,"invoiceTemplateId":null,"communicationProfileId":null,"paymentGateway":null,"paymentTerm":"Net
|
63
|
+
30","soldToContact":{"address1":"123 Main St","address2":null,"city":"Palm
|
64
|
+
Springs","country":"US","county":null,"fax":null,"firstName":"Abc","homePhone":null,"lastName":"Def","mobilePhone":null,"nickname":null,"otherPhone":null,"otherPhoneType":null,"personalEmail":null,"zipCode":"90210","state":"FL","taxRegion":null,"workEmail":null,"workPhone":null},"subscription":null}'
|
65
|
+
headers:
|
66
|
+
User-Agent:
|
67
|
+
- Faraday v0.9.2
|
68
|
+
Content-Type:
|
69
|
+
- application/json
|
70
|
+
Cookie:
|
71
|
+
- ZSession=dyulKCwYntJ2Ts8BHJqKuC2YTwR_ib4dNlxPXITUPpGrDQwRFQW3ZmRfgYAVfxz7_p3QQMyMSH0lULznTeiwNd2nOD7nEHTOQ-XM2nHnEKijEdsMQG303M31q_ZZqLkEISXQQlw2ynD4-ASPL6Ntihr84WUrgfCdT4-J1crQCofOWZDMpisz7v3iHfXSGEQF1mYh8voS_Xm1xSDbFqrlxYbz3n4iSZIpVPCfx-T-qWRJARzBVyqTZFiAzYd-NQ48;
|
72
|
+
Accept-Encoding:
|
73
|
+
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
74
|
+
Accept:
|
75
|
+
- "*/*"
|
76
|
+
response:
|
77
|
+
status:
|
78
|
+
code: 200
|
79
|
+
message: OK
|
80
|
+
headers:
|
81
|
+
Server:
|
82
|
+
- Zuora App
|
83
|
+
Content-Type:
|
84
|
+
- application/json;charset=utf-8
|
85
|
+
Content-Length:
|
86
|
+
- '165'
|
87
|
+
Expires:
|
88
|
+
- Tue, 12 Jan 2016 16:24:50 GMT
|
89
|
+
Cache-Control:
|
90
|
+
- max-age=0, no-cache, no-store
|
91
|
+
Pragma:
|
92
|
+
- no-cache
|
93
|
+
Date:
|
94
|
+
- Tue, 12 Jan 2016 16:24:50 GMT
|
95
|
+
Connection:
|
96
|
+
- keep-alive
|
97
|
+
Set-Cookie:
|
98
|
+
- ZSession=5MN3TBgZNC_DFsjjvc40Qdpud3-X9T7nuEFW-s5EawYiiS_bCE5_HTHzWy3ZA_XAYnP8Ug5ZBFMtIN4qdUJKJ5Zhs5YjMHux4o01CSwY8aghqxWiJ5UrpBX1fJiQRoLbGyeVnmaQ3laH4L0N9U5GEmgrFjb9xHwwd-8DSTPNwhifF1TBeEhBm8ZFVd-uGl3P3EikMO7eT8zeOgG9RIAzjQ271sY6DMs9smE-iSxfAo8nJdHZ-e7bcfngyCFGUlLA;
|
99
|
+
Path=/; Secure; HttpOnly
|
100
|
+
body:
|
101
|
+
encoding: UTF-8
|
102
|
+
string: |-
|
103
|
+
{
|
104
|
+
"success" : true,
|
105
|
+
"accountId" : "2c92c0fb523018ef015236a76e9c4fdd",
|
106
|
+
"accountNumber" : "A00000075",
|
107
|
+
"paymentMethodId" : "2c92c0fb523018ef015236a7773c4fe3"
|
108
|
+
}
|
109
|
+
http_version:
|
110
|
+
recorded_at: Tue, 12 Jan 2016 16:24:50 GMT
|
111
|
+
recorded_with: VCR 3.0.1
|
@@ -0,0 +1,113 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: post
|
5
|
+
uri: https://apisandbox-api.zuora.com/rest/v1/connections
|
6
|
+
body:
|
7
|
+
encoding: UTF-8
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
User-Agent:
|
11
|
+
- Faraday v0.9.2
|
12
|
+
Apiaccesskeyid:
|
13
|
+
- "<ZUORA_SANDBOX_USERNAME>"
|
14
|
+
Apisecretaccesskey:
|
15
|
+
- "<ZUORA_SANDBOX_PASSWORD>"
|
16
|
+
Content-Type:
|
17
|
+
- application/json
|
18
|
+
Content-Length:
|
19
|
+
- '0'
|
20
|
+
Accept-Encoding:
|
21
|
+
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
22
|
+
Accept:
|
23
|
+
- "*/*"
|
24
|
+
response:
|
25
|
+
status:
|
26
|
+
code: 200
|
27
|
+
message: OK
|
28
|
+
headers:
|
29
|
+
Server:
|
30
|
+
- Zuora App
|
31
|
+
Content-Type:
|
32
|
+
- application/json;charset=utf-8
|
33
|
+
Content-Length:
|
34
|
+
- '22'
|
35
|
+
Expires:
|
36
|
+
- Fri, 15 Jan 2016 19:25:55 GMT
|
37
|
+
Cache-Control:
|
38
|
+
- max-age=0, no-cache, no-store
|
39
|
+
Pragma:
|
40
|
+
- no-cache
|
41
|
+
Date:
|
42
|
+
- Fri, 15 Jan 2016 19:25:55 GMT
|
43
|
+
Connection:
|
44
|
+
- keep-alive
|
45
|
+
Set-Cookie:
|
46
|
+
- ZSession=seOaOoEwQBAJwzt8k9_40U_ZoGXdKpzXBJYeeXqeDI-LudNbKJsJWgKZA5Of2nLdm_bolnZYuEKQfULWSpCsWLMr7k7Ph24t4DJ5JmS9Lk7WKH00AoeHR7b3b9giAL3m9JRGJjnz8C2OFU8KKAqb9CSLHd9vnX-ccCcdA7i3ybQbD579au-l0g8RCmzV32ox4Y-WOKS9762DrIDQBlskNMD05uXH6rCZ_ed_fIcYPPXpJXdw94d8uiKbt9-IyKbs;
|
47
|
+
Path=/; Secure; HttpOnly
|
48
|
+
body:
|
49
|
+
encoding: UTF-8
|
50
|
+
string: |-
|
51
|
+
{
|
52
|
+
"success" : true
|
53
|
+
}
|
54
|
+
http_version:
|
55
|
+
recorded_at: Fri, 15 Jan 2016 19:25:55 GMT
|
56
|
+
- request:
|
57
|
+
method: put
|
58
|
+
uri: https://apisandbox-api.zuora.com/rest/v1/accounts
|
59
|
+
body:
|
60
|
+
encoding: UTF-8
|
61
|
+
string: '{"name":"Abc","autoPay":true,"currency":"USD","billCycleDay":"0","paymentTerm":"Net
|
62
|
+
30","accountNumber":"123456","soldToContact":{"firstName":"Abc","lastName":"Def","address1":"123
|
63
|
+
Main St","city":"Palm Springs","state":"FL","zipCode":"90210","country":"US"},"billToContact":{"firstName":"Abc","lastName":"Def","address1":"123
|
64
|
+
Main St","city":"Palm Springs","state":"FL","zipCode":"90210","country":"US"},"creditCard":{"cardType":"Visa","cardNumber":"4111111111111111","expirationMonth":"03","expirationYear":"2017","securityCode":"122"}}'
|
65
|
+
headers:
|
66
|
+
User-Agent:
|
67
|
+
- Faraday v0.9.2
|
68
|
+
Content-Type:
|
69
|
+
- application/json
|
70
|
+
Cookie:
|
71
|
+
- ZSession=seOaOoEwQBAJwzt8k9_40U_ZoGXdKpzXBJYeeXqeDI-LudNbKJsJWgKZA5Of2nLdm_bolnZYuEKQfULWSpCsWLMr7k7Ph24t4DJ5JmS9Lk7WKH00AoeHR7b3b9giAL3m9JRGJjnz8C2OFU8KKAqb9CSLHd9vnX-ccCcdA7i3ybQbD579au-l0g8RCmzV32ox4Y-WOKS9762DrIDQBlskNMD05uXH6rCZ_ed_fIcYPPXpJXdw94d8uiKbt9-IyKbs;
|
72
|
+
Accept-Encoding:
|
73
|
+
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
74
|
+
Accept:
|
75
|
+
- "*/*"
|
76
|
+
response:
|
77
|
+
status:
|
78
|
+
code: 200
|
79
|
+
message: OK
|
80
|
+
headers:
|
81
|
+
Server:
|
82
|
+
- Zuora App
|
83
|
+
Content-Type:
|
84
|
+
- application/json;charset=utf-8
|
85
|
+
Content-Length:
|
86
|
+
- '160'
|
87
|
+
Expires:
|
88
|
+
- Fri, 15 Jan 2016 19:25:56 GMT
|
89
|
+
Cache-Control:
|
90
|
+
- max-age=0, no-cache, no-store
|
91
|
+
Pragma:
|
92
|
+
- no-cache
|
93
|
+
Date:
|
94
|
+
- Fri, 15 Jan 2016 19:25:56 GMT
|
95
|
+
Connection:
|
96
|
+
- keep-alive
|
97
|
+
Set-Cookie:
|
98
|
+
- ZSession=CGpSWWA6PatM21pEZjyznwDiVhS5jLlHrFSLbWEzNxAhuVd1kbgq7wiMvNb24TSpA1LTWcn4iq3FFeLosRWH57Em65wDc2bflwX4UFbLimijMiYw7WMyPJQwgXrlcY6vDVbaDa73i4EQPo7qEt0jtnGmxnYCGx5N4J_o74i1pODWb9bOne-2VvUy8R5zmTIbikQGpuYqK_LPgVOQzFj63W_Ot527jBc2vhnV4M6iXh-xpJ9gcEzQat7vfkvqURLz;
|
99
|
+
Path=/; Secure; HttpOnly
|
100
|
+
body:
|
101
|
+
encoding: UTF-8
|
102
|
+
string: |-
|
103
|
+
{
|
104
|
+
"success" : false,
|
105
|
+
"processId" : "43E33BC8CA606840",
|
106
|
+
"reasons" : [ {
|
107
|
+
"code" : 50000000,
|
108
|
+
"message" : "Request method 'PUT' not supported"
|
109
|
+
} ]
|
110
|
+
}
|
111
|
+
http_version:
|
112
|
+
recorded_at: Fri, 15 Jan 2016 19:25:56 GMT
|
113
|
+
recorded_with: VCR 3.0.1
|
@@ -0,0 +1,114 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: post
|
5
|
+
uri: https://apisandbox-api.zuora.com/rest/v1/connections
|
6
|
+
body:
|
7
|
+
encoding: UTF-8
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
User-Agent:
|
11
|
+
- Faraday v0.9.2
|
12
|
+
Apiaccesskeyid:
|
13
|
+
- "<ZUORA_SANDBOX_USERNAME>"
|
14
|
+
Apisecretaccesskey:
|
15
|
+
- "<ZUORA_SANDBOX_PASSWORD>"
|
16
|
+
Content-Type:
|
17
|
+
- application/json
|
18
|
+
Content-Length:
|
19
|
+
- '0'
|
20
|
+
Accept-Encoding:
|
21
|
+
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
22
|
+
Accept:
|
23
|
+
- "*/*"
|
24
|
+
response:
|
25
|
+
status:
|
26
|
+
code: 200
|
27
|
+
message: OK
|
28
|
+
headers:
|
29
|
+
Server:
|
30
|
+
- Zuora App
|
31
|
+
Content-Type:
|
32
|
+
- application/json;charset=utf-8
|
33
|
+
Content-Length:
|
34
|
+
- '22'
|
35
|
+
Expires:
|
36
|
+
- Fri, 15 Jan 2016 19:25:56 GMT
|
37
|
+
Cache-Control:
|
38
|
+
- max-age=0, no-cache, no-store
|
39
|
+
Pragma:
|
40
|
+
- no-cache
|
41
|
+
Date:
|
42
|
+
- Fri, 15 Jan 2016 19:25:56 GMT
|
43
|
+
Connection:
|
44
|
+
- keep-alive
|
45
|
+
Set-Cookie:
|
46
|
+
- ZSession=R-kRFnqPxT5TKoUxBLInRrbJ3LKeJs6h-49mDFGg9d6yMVTvf0XYcMe843f36xXNMJSEr3ugyh57cRXqBGW2ndut5DFzIG95u1tXZrZe3hi6bA7QOuaTON8Qo2XJjnad3HkxhIYxIeDrj7BFdpvsYrSgr62x-Rx72KvMmBogxyDHnkCM_VsmdXtCViAH1ikR8Jsn-KI79PDxgMqlUU2RRlbB_QvGkn8GHFKJuGAEaNwuh7j2WQqXLO3KpXpjnhT7;
|
47
|
+
Path=/; Secure; HttpOnly
|
48
|
+
body:
|
49
|
+
encoding: UTF-8
|
50
|
+
string: |-
|
51
|
+
{
|
52
|
+
"success" : true
|
53
|
+
}
|
54
|
+
http_version:
|
55
|
+
recorded_at: Fri, 15 Jan 2016 19:25:56 GMT
|
56
|
+
- request:
|
57
|
+
method: post
|
58
|
+
uri: https://apisandbox-api.zuora.com/rest/v1/subscriptions
|
59
|
+
body:
|
60
|
+
encoding: UTF-8
|
61
|
+
string: '{"renewalTerm":3,"renewalTermPeriodType":"week","termType":"TERMED","autoRenew":true,"invoiceTargetDate":"-4712-01-01","accountKey":"123456","contractEffectiveDate":"-4712-01-01","invoiceCollect":false,"initialTerm":"12","initialTermPeriodType":"Week","notes":"Test
|
62
|
+
POST subscription from zuora-ruby"}'
|
63
|
+
headers:
|
64
|
+
User-Agent:
|
65
|
+
- Faraday v0.9.2
|
66
|
+
Content-Type:
|
67
|
+
- application/json
|
68
|
+
Cookie:
|
69
|
+
- ZSession=R-kRFnqPxT5TKoUxBLInRrbJ3LKeJs6h-49mDFGg9d6yMVTvf0XYcMe843f36xXNMJSEr3ugyh57cRXqBGW2ndut5DFzIG95u1tXZrZe3hi6bA7QOuaTON8Qo2XJjnad3HkxhIYxIeDrj7BFdpvsYrSgr62x-Rx72KvMmBogxyDHnkCM_VsmdXtCViAH1ikR8Jsn-KI79PDxgMqlUU2RRlbB_QvGkn8GHFKJuGAEaNwuh7j2WQqXLO3KpXpjnhT7;
|
70
|
+
Accept-Encoding:
|
71
|
+
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
72
|
+
Accept:
|
73
|
+
- "*/*"
|
74
|
+
response:
|
75
|
+
status:
|
76
|
+
code: 200
|
77
|
+
message: OK
|
78
|
+
headers:
|
79
|
+
Server:
|
80
|
+
- Zuora App
|
81
|
+
Content-Type:
|
82
|
+
- application/json;charset=utf-8
|
83
|
+
Content-Length:
|
84
|
+
- '304'
|
85
|
+
Expires:
|
86
|
+
- Fri, 15 Jan 2016 19:25:56 GMT
|
87
|
+
Cache-Control:
|
88
|
+
- max-age=0, no-cache, no-store
|
89
|
+
Pragma:
|
90
|
+
- no-cache
|
91
|
+
Date:
|
92
|
+
- Fri, 15 Jan 2016 19:25:56 GMT
|
93
|
+
Connection:
|
94
|
+
- keep-alive
|
95
|
+
Set-Cookie:
|
96
|
+
- ZSession=N3s-LaLVoObl0D8YagtPcjeTe3ykE2bTVHuj1rbFhB54JjIwHnobsDnsRJRkemgMKfjcQNcUDtUWsyjyeNlxlfv0xUKm7m2dKxFaHj4bdIQ-DMrSa-zdV0I5sgRgLfn8fH7WKiOFqB3iuSl8d_mo4RSk2_m_vDUgPlIUFQKaBHbvvUsZGaD5ugegLJqBVnO_b5SRm4lfi8HwWBJ5NFvYkd4DUaknfQN7PzPdr7CiHyZg0ROk7Mw6M7mmjw4ufEAW;
|
97
|
+
Path=/; Secure; HttpOnly
|
98
|
+
body:
|
99
|
+
encoding: UTF-8
|
100
|
+
string: |-
|
101
|
+
{
|
102
|
+
"success" : false,
|
103
|
+
"processId" : "701D3B2AAC3AC4E7",
|
104
|
+
"reasons" : [ {
|
105
|
+
"code" : 53001820,
|
106
|
+
"message" : "'renewalTermPeriodType' value should be one of: Month, Year, Day, Week"
|
107
|
+
}, {
|
108
|
+
"code" : 53001020,
|
109
|
+
"message" : "'invoiceTargetDate' must match \"\\d{4}-\\d{1,2}-\\d{1,2}\""
|
110
|
+
} ]
|
111
|
+
}
|
112
|
+
http_version:
|
113
|
+
recorded_at: Fri, 15 Jan 2016 19:25:57 GMT
|
114
|
+
recorded_with: VCR 3.0.1
|
@@ -0,0 +1,114 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: post
|
5
|
+
uri: https://apisandbox-api.zuora.com/rest/v1/connections
|
6
|
+
body:
|
7
|
+
encoding: UTF-8
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
User-Agent:
|
11
|
+
- Faraday v0.9.2
|
12
|
+
Apiaccesskeyid:
|
13
|
+
- "<ZUORA_SANDBOX_USERNAME>"
|
14
|
+
Apisecretaccesskey:
|
15
|
+
- "<ZUORA_SANDBOX_PASSWORD>"
|
16
|
+
Content-Type:
|
17
|
+
- application/json
|
18
|
+
Content-Length:
|
19
|
+
- '0'
|
20
|
+
Accept-Encoding:
|
21
|
+
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
22
|
+
Accept:
|
23
|
+
- "*/*"
|
24
|
+
response:
|
25
|
+
status:
|
26
|
+
code: 200
|
27
|
+
message: OK
|
28
|
+
headers:
|
29
|
+
Server:
|
30
|
+
- Zuora App
|
31
|
+
Content-Type:
|
32
|
+
- application/json;charset=utf-8
|
33
|
+
Content-Length:
|
34
|
+
- '22'
|
35
|
+
Expires:
|
36
|
+
- Fri, 15 Jan 2016 19:25:57 GMT
|
37
|
+
Cache-Control:
|
38
|
+
- max-age=0, no-cache, no-store
|
39
|
+
Pragma:
|
40
|
+
- no-cache
|
41
|
+
Date:
|
42
|
+
- Fri, 15 Jan 2016 19:25:57 GMT
|
43
|
+
Connection:
|
44
|
+
- keep-alive
|
45
|
+
Set-Cookie:
|
46
|
+
- ZSession=xuPDHC0vDbpykpLgYfs3R7ALV1jYa8L7xucWC3Y_thICXtaBKHx5tZ7GjsPklFnEaTqTUR30qDpJllrlz_UL8uYhcMDvU84rYzFx1McoN4LxsVWXccZ2G7TM4vD3eg4eFlDFqhzc37mFpsIBM_8mB6_7FhwKUcT8oHcFkH-aD46T6fjjp3DCB0Vby1UJ0-m6DGU0O3QzdZ2TBhCYewLp20ssG6TKZ3wE26WYogYfmmxWNZtxGWW5LwI5dtjdY4bt;
|
47
|
+
Path=/; Secure; HttpOnly
|
48
|
+
body:
|
49
|
+
encoding: UTF-8
|
50
|
+
string: |-
|
51
|
+
{
|
52
|
+
"success" : true
|
53
|
+
}
|
54
|
+
http_version:
|
55
|
+
recorded_at: Fri, 15 Jan 2016 19:25:57 GMT
|
56
|
+
- request:
|
57
|
+
method: post
|
58
|
+
uri: https://apisandbox-api.zuora.com/rest/v1/subscriptions
|
59
|
+
body:
|
60
|
+
encoding: UTF-8
|
61
|
+
string: '{"renewalTerm":3,"renewalTermPeriodType":"week","termType":"TERMED","autoRenew":true,"invoiceTargetDate":"-4712-01-01","accountKey":"123456","contractEffectiveDate":"-4712-01-01","invoiceCollect":false,"initialTerm":"12","initialTermPeriodType":"Week","notes":"Test
|
62
|
+
POST subscription from zuora-ruby"}'
|
63
|
+
headers:
|
64
|
+
User-Agent:
|
65
|
+
- Faraday v0.9.2
|
66
|
+
Content-Type:
|
67
|
+
- application/json
|
68
|
+
Cookie:
|
69
|
+
- ZSession=xuPDHC0vDbpykpLgYfs3R7ALV1jYa8L7xucWC3Y_thICXtaBKHx5tZ7GjsPklFnEaTqTUR30qDpJllrlz_UL8uYhcMDvU84rYzFx1McoN4LxsVWXccZ2G7TM4vD3eg4eFlDFqhzc37mFpsIBM_8mB6_7FhwKUcT8oHcFkH-aD46T6fjjp3DCB0Vby1UJ0-m6DGU0O3QzdZ2TBhCYewLp20ssG6TKZ3wE26WYogYfmmxWNZtxGWW5LwI5dtjdY4bt;
|
70
|
+
Accept-Encoding:
|
71
|
+
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
72
|
+
Accept:
|
73
|
+
- "*/*"
|
74
|
+
response:
|
75
|
+
status:
|
76
|
+
code: 200
|
77
|
+
message: OK
|
78
|
+
headers:
|
79
|
+
Server:
|
80
|
+
- Zuora App
|
81
|
+
Content-Type:
|
82
|
+
- application/json;charset=utf-8
|
83
|
+
Content-Length:
|
84
|
+
- '304'
|
85
|
+
Expires:
|
86
|
+
- Fri, 15 Jan 2016 19:25:57 GMT
|
87
|
+
Cache-Control:
|
88
|
+
- max-age=0, no-cache, no-store
|
89
|
+
Pragma:
|
90
|
+
- no-cache
|
91
|
+
Date:
|
92
|
+
- Fri, 15 Jan 2016 19:25:57 GMT
|
93
|
+
Connection:
|
94
|
+
- keep-alive
|
95
|
+
Set-Cookie:
|
96
|
+
- ZSession=zclVVC03awBAyPC54doXc0DA3Ax7VLNB6n4h-RG750OyU1oNMgR_MKhZP2BmHY0AyASTJY_L7_vOMDSqt96wOukAYjxrJwNYXe5aU3zzMc6Sq0Re-B9RmKqhejpNlKe9NFrkU1XyBLDX2NNy2agXLbEzEyo2u7-8Uet9IdernwenP0CY7XoHiHjwxkQm9Kw9nPM6QbwlfXUwEl5yh3qScKhhjx7EihlgUZpV8t0fp4wrGao9WJNuHwC5bNMGLzNU;
|
97
|
+
Path=/; Secure; HttpOnly
|
98
|
+
body:
|
99
|
+
encoding: UTF-8
|
100
|
+
string: |-
|
101
|
+
{
|
102
|
+
"success" : false,
|
103
|
+
"processId" : "BCD764763E1C61A8",
|
104
|
+
"reasons" : [ {
|
105
|
+
"code" : 53001020,
|
106
|
+
"message" : "'invoiceTargetDate' must match \"\\d{4}-\\d{1,2}-\\d{1,2}\""
|
107
|
+
}, {
|
108
|
+
"code" : 53001820,
|
109
|
+
"message" : "'renewalTermPeriodType' value should be one of: Month, Year, Day, Week"
|
110
|
+
} ]
|
111
|
+
}
|
112
|
+
http_version:
|
113
|
+
recorded_at: Fri, 15 Jan 2016 19:25:59 GMT
|
114
|
+
recorded_with: VCR 3.0.1
|