zuora_rest_client 1.0.2 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -2,7 +2,7 @@
2
2
  http_interactions:
3
3
  - request:
4
4
  method: put
5
- uri: https://rest.zuora.com/v1/accounts/2c92a0fd5c832adb015c8def9fd9081c
5
+ uri: https://rest.zuora.com/v1/accounts/2c92a0fc5d8298f6015da36b14df1d04
6
6
  body:
7
7
  encoding: UTF-8
8
8
  string: '{"batch":"Batch2"}'
@@ -14,7 +14,7 @@ http_interactions:
14
14
  Accept-Encoding:
15
15
  - gzip,deflate
16
16
  Date:
17
- - Fri, 09 Jun 2017 17:38:31 GMT
17
+ - Wed, 02 Aug 2017 14:48:10 GMT
18
18
  Content-Type:
19
19
  - application/json
20
20
  Apiaccesskeyid:
@@ -31,19 +31,19 @@ http_interactions:
31
31
  Server:
32
32
  - Zuora App
33
33
  X-Request-Id:
34
- - 5dadccff-aa8f-4cb1-abb6-87363a2ea325
34
+ - b6509090-8d62-4d09-ad0c-c3cabd849040
35
35
  X-Kong-Upstream-Latency:
36
- - '69'
36
+ - '94'
37
37
  X-Kong-Proxy-Latency:
38
38
  - '0'
39
39
  Expires:
40
- - Fri, 09 Jun 2017 17:38:31 GMT
40
+ - Wed, 02 Aug 2017 14:48:10 GMT
41
41
  Cache-Control:
42
42
  - max-age=0, no-cache, no-store
43
43
  Pragma:
44
44
  - no-cache
45
45
  Date:
46
- - Fri, 09 Jun 2017 17:38:31 GMT
46
+ - Wed, 02 Aug 2017 14:48:10 GMT
47
47
  Content-Length:
48
48
  - '22'
49
49
  Connection:
@@ -57,10 +57,10 @@ http_interactions:
57
57
  "success" : true
58
58
  }
59
59
  http_version:
60
- recorded_at: Fri, 09 Jun 2017 17:38:31 GMT
60
+ recorded_at: Wed, 02 Aug 2017 14:48:10 GMT
61
61
  - request:
62
62
  method: get
63
- uri: https://rest.zuora.com/v1/accounts/2c92a0fd5c832adb015c8def9fd9081c
63
+ uri: https://rest.zuora.com/v1/accounts/2c92a0fc5d8298f6015da36b14df1d04
64
64
  body:
65
65
  encoding: UTF-8
66
66
  string: ''
@@ -72,7 +72,7 @@ http_interactions:
72
72
  Accept-Encoding:
73
73
  - gzip,deflate
74
74
  Date:
75
- - Fri, 09 Jun 2017 17:38:31 GMT
75
+ - Wed, 02 Aug 2017 14:48:10 GMT
76
76
  Content-Type:
77
77
  - application/json
78
78
  Apiaccesskeyid:
@@ -89,19 +89,19 @@ http_interactions:
89
89
  Server:
90
90
  - Zuora App
91
91
  X-Request-Id:
92
- - f868bc70-78b9-4bce-8008-c9b7b9d61877
92
+ - 58ba0d7d-92a9-4d9d-882f-7526f4009e8b
93
93
  X-Kong-Upstream-Latency:
94
94
  - '61'
95
95
  X-Kong-Proxy-Latency:
96
96
  - '0'
97
97
  Expires:
98
- - Fri, 09 Jun 2017 17:38:31 GMT
98
+ - Wed, 02 Aug 2017 14:48:10 GMT
99
99
  Cache-Control:
100
100
  - max-age=0, no-cache, no-store
101
101
  Pragma:
102
102
  - no-cache
103
103
  Date:
104
- - Fri, 09 Jun 2017 17:38:31 GMT
104
+ - Wed, 02 Aug 2017 14:48:10 GMT
105
105
  Content-Length:
106
106
  - '2305'
107
107
  Connection:
@@ -113,9 +113,9 @@ http_interactions:
113
113
  string: |-
114
114
  {
115
115
  "basicInfo" : {
116
- "id" : "2c92a0fd5c832adb015c8def9fd9081c",
116
+ "id" : "2c92a0fc5d8298f6015da36b14df1d04",
117
117
  "name" : "Test Account",
118
- "accountNumber" : "Z00324059",
118
+ "accountNumber" : "Z00324067",
119
119
  "notes" : null,
120
120
  "status" : "Active",
121
121
  "crmId" : null,
@@ -203,5 +203,5 @@ http_interactions:
203
203
  "success" : true
204
204
  }
205
205
  http_version:
206
- recorded_at: Fri, 09 Jun 2017 17:38:31 GMT
206
+ recorded_at: Wed, 02 Aug 2017 14:48:10 GMT
207
207
  recorded_with: VCR 3.0.3
@@ -2,6 +2,7 @@ require 'zuora_rest_client/connection'
2
2
  require 'addressable/uri'
3
3
  require 'fire_poll'
4
4
  require 'base64'
5
+ require 'date'
5
6
 
6
7
  module ZuoraRestClient
7
8
 
@@ -82,8 +83,10 @@ module ZuoraRestClient
82
83
  @connection.rest_post('/accounting-codes', request, zuora_version)
83
84
  end
84
85
 
85
- def get_all_accounting_codes(zuora_version = nil)
86
- @connection.rest_get('/accounting-codes', zuora_version)
86
+ def get_all_accounting_codes(query_params = {}, zuora_version = nil)
87
+ uri = Addressable::URI.parse('/accounting-codes')
88
+ uri.query_values = query_params
89
+ @connection.rest_get(uri.to_s, zuora_version)
87
90
  end
88
91
 
89
92
  def activate_accounting_code(accounting_code_id, zuora_version = nil)
@@ -124,8 +127,10 @@ module ZuoraRestClient
124
127
  @connection.rest_post('/accounting-periods', request, zuora_version)
125
128
  end
126
129
 
127
- def get_all_accounting_periods(zuora_version = nil)
128
- @connection.rest_get('/accounting-periods', zuora_version)
130
+ def get_all_accounting_periods(query_params = {}, zuora_version = nil)
131
+ uri = Addressable::URI.parse('/accounting-periods')
132
+ uri.query_values = query_params
133
+ @connection.rest_get(uri.to_s, zuora_version)
129
134
  end
130
135
 
131
136
  def get_accounting_period(accounting_period_id, zuora_version = nil)
@@ -273,8 +278,10 @@ module ZuoraRestClient
273
278
  @connection.rest_post(uri.to_s, payload, zuora_version, false)
274
279
  end
275
280
 
276
- def view_attachment_list(associated_object_type, associated_object_key, zuora_version = nil)
277
- @connection.rest_get("/attachments/#{associated_object_type}/#{associated_object_key}", zuora_version)
281
+ def view_attachment_list(associated_object_type, associated_object_key, query_params = {}, zuora_version = nil)
282
+ uri = Addressable::URI.parse("/attachments/#{associated_object_type}/#{associated_object_key}")
283
+ uri.query_values = query_params
284
+ @connection.rest_get(uri.to_s, zuora_version)
278
285
  end
279
286
 
280
287
  def view_attachment(attachment_id, zuora_version = nil)
@@ -333,8 +340,10 @@ module ZuoraRestClient
333
340
  # #
334
341
  ##############################################################################
335
342
 
336
- def get_product_catalog(zuora_version = nil)
337
- @connection.rest_get('/catalog/products', zuora_version)
343
+ def get_product_catalog(query_params = {}, zuora_version = nil)
344
+ uri = Addressable::URI.parse('/catalog/products')
345
+ uri.query_values = query_params
346
+ @connection.rest_get(uri.to_s, zuora_version)
338
347
  end
339
348
 
340
349
  def share_product_with_entities(product_id, request, zuora_version = nil)
@@ -441,24 +450,32 @@ module ZuoraRestClient
441
450
  @connection.rest_post("/creditmemos/#{credit_memo_id}/refund", request, zuora_version)
442
451
  end
443
452
 
444
- def query_credit_memos_by_account(request, zuora_version = nil)
445
- @connection.rest_post('/creditmemos/query', request, zuora_version)
453
+ def query_credit_memos_by_account(request, query_params = {}, zuora_version = nil)
454
+ uri = Addressable::URI.parse('/creditmemos/query')
455
+ uri.query_values = query_params
456
+ @connection.rest_post(uri.to_s, request, zuora_version)
446
457
  end
447
458
 
448
- def get_credit_memo_parts(credit_memo_id, zuora_version = nil)
449
- @connection.rest_get("/creditmemos/#{credit_memo_id}/parts", zuora_version)
459
+ def get_credit_memo_parts(credit_memo_id, query_params = {}, zuora_version = nil)
460
+ uri = Addressable::URI.parse("/creditmemos/#{credit_memo_id}/parts")
461
+ uri.query_values = query_params
462
+ @connection.rest_get(uri.to_s, zuora_version)
450
463
  end
451
464
 
452
465
  def apply_credit_memo(credit_memo_id, request, zuora_version = nil)
453
466
  @connection.rest_post("/creditmemos/#{credit_memo_id}/apply", request, zuora_version)
454
467
  end
455
468
 
456
- def get_credit_memo_items(credit_memo_id, zuora_version = nil)
457
- @connection.rest_get("/creditmemos/#{credit_memo_id}/items", zuora_version)
469
+ def get_credit_memo_items(credit_memo_id, query_params = {}, zuora_version = nil)
470
+ uri = Addressable::URI.parse("/creditmemos/#{credit_memo_id}/items")
471
+ uri.query_values = query_params
472
+ @connection.rest_get(uri.to_s, zuora_version)
458
473
  end
459
474
 
460
- def get_credit_memo_part_items(credit_memo_id, part_id, zuora_version = nil)
461
- @connection.rest_get("/creditmemos/#{credit_memo_id}/parts/#{part_id}/itemparts", zuora_version)
475
+ def get_credit_memo_part_items(credit_memo_id, part_id, query_params = {}, zuora_version = nil)
476
+ uri = Addressable::URI.parse("/creditmemos/#{credit_memo_id}/parts/#{part_id}/itemparts")
477
+ uri.query_values = query_params
478
+ @connection.rest_get(uri.to_s, zuora_version)
462
479
  end
463
480
 
464
481
  def unapply_credit_memo(credit_memo_id, zuora_version = nil)
@@ -477,8 +494,10 @@ module ZuoraRestClient
477
494
  @connection.rest_post('/creditmemos', request, zuora_version)
478
495
  end
479
496
 
480
- def get_credit_memos(zuora_version = nil)
481
- @connection.rest_get('/creditmemos', zuora_version)
497
+ def get_credit_memos(query_params = {}, zuora_version = nil)
498
+ uri = Addressable::URI.parse('/creditmemos')
499
+ uri.query_values = query_params
500
+ @connection.rest_get(uri.to_s, zuora_version)
482
501
  end
483
502
 
484
503
  def get_credit_memo_part(credit_memo_id, part_id, zuora_version = nil)
@@ -499,8 +518,20 @@ module ZuoraRestClient
499
518
  # #
500
519
  ##############################################################################
501
520
 
502
- def get_custom_exchange_rates(currency, zuora_version = nil)
503
- @connection.rest_get("/custom-exchange-rates/#{currency}", zuora_version)
521
+ def get_custom_exchange_rates(currency, start_date, end_date, zuora_version = nil)
522
+ if start_date.is_a? Date
523
+ start_date = start_date.iso8601
524
+ elsif start_date.is_a? DateTime
525
+ start_date = start_date.to_date.iso8601
526
+ end
527
+ if end_date.is_a? Date
528
+ end_date = end_date.iso8601
529
+ elsif end_date.is_a? DateTime
530
+ end_date = end_date.to_date.iso8601
531
+ end
532
+ uri = Addressable::URI.parse("/custom-exchange-rates/#{currency}")
533
+ uri.query_values = { startDate: start_date, endDate: end_date }
534
+ @connection.rest_get(uri.to_s, zuora_version)
504
535
  end
505
536
 
506
537
  ##############################################################################
@@ -521,16 +552,20 @@ module ZuoraRestClient
521
552
  @connection.rest_post("/debitmemos", request, zuora_version)
522
553
  end
523
554
 
524
- def get_debit_memos(zuora_version = nil)
525
- @connection.rest_get("/debitmemos", zuora_version)
555
+ def get_debit_memos(query_params = {}, zuora_version = nil)
556
+ uri = Addressable::URI.parse('/debitmemos')
557
+ uri.query_values = query_params
558
+ @connection.rest_get(uri.to_s, zuora_version)
526
559
  end
527
560
 
528
561
  def create_debit_memo_pdf(debit_memo_id, zuora_version = nil)
529
562
  @connection.rest_post("/debitmemos/#{debit_memo_id}/pdfs", nil, zuora_version)
530
563
  end
531
564
 
532
- def get_debit_memo_items(debit_memo_id, zuora_version = nil)
533
- @connection.rest_get("/debitmemos/#{debit_memo_id}/items", zuora_version)
565
+ def get_debit_memo_items(debit_memo_id, query_params = {}, zuora_version = nil)
566
+ uri = Addressable::URI.parse("/debitmemos/#{debit_memo_id}/items")
567
+ uri.query_values = query_params
568
+ @connection.rest_get(uri.to_s, zuora_version)
534
569
  end
535
570
 
536
571
  def cancel_debit_memo(debit_memo_id, zuora_version = nil)
@@ -646,8 +681,10 @@ module ZuoraRestClient
646
681
  @connection.rest_post('/entities', request, zuora_version)
647
682
  end
648
683
 
649
- def get_entities(zuora_version = nil)
650
- @connection.rest_get('/entities', zuora_version)
684
+ def get_entities(query_params = {}, zuora_version = nil)
685
+ uri = Addressable::URI.parse('/entities')
686
+ uri.query_values = query_params
687
+ @connection.rest_get(uri.to_s, zuora_version)
651
688
  end
652
689
 
653
690
  def update_entity(entity_id, request, zuora_version = nil)
@@ -672,8 +709,10 @@ module ZuoraRestClient
672
709
  # #
673
710
  ##############################################################################
674
711
 
675
- def get_entity_connections(zuora_version = nil)
676
- @connection.rest_get('/entity-connections', zuora_version)
712
+ def get_entity_connections(query_params = {}, zuora_version = nil)
713
+ uri = Addressable::URI.parse('/entity-connections')
714
+ uri.query_values = query_params
715
+ @connection.rest_get(uri.to_s, zuora_version)
677
716
  end
678
717
 
679
718
  def initiate_entity_connection(request, zuora_version = nil)
@@ -808,9 +847,9 @@ module ZuoraRestClient
808
847
  # #
809
848
  ##############################################################################
810
849
 
811
- def get_hosted_pages(version_number = nil, zuora_version = nil)
850
+ def get_hosted_pages(query_params = {}, zuora_version = nil)
812
851
  uri = Addressable::URI.parse('/hostedpages')
813
- uri.query_values = { version: version_number.to_s } if !version_number.nil?
852
+ uri.query_values = query_params
814
853
  @connection.rest_get(uri.to_s, zuora_version)
815
854
  end
816
855
 
@@ -1051,6 +1090,16 @@ module ZuoraRestClient
1051
1090
  @connection.rest_get(uri.to_s, zuora_version)
1052
1091
  end
1053
1092
 
1093
+ ##############################################################################
1094
+ # #
1095
+ # OAuth #
1096
+ # #
1097
+ ##############################################################################
1098
+
1099
+ def generate_oauth_token(request, zuora_version = nil)
1100
+ @connection.rest_post('/oauth/token', request, zuora_version)
1101
+ end
1102
+
1054
1103
  ##############################################################################
1055
1104
  # #
1056
1105
  # Operations #
@@ -1117,8 +1166,10 @@ module ZuoraRestClient
1117
1166
  @connection.rest_post('/payment-methods/credit-cards', request, zuora_version)
1118
1167
  end
1119
1168
 
1120
- def get_payment_method(account_key, zuora_version = nil)
1121
- @connection.rest_get("/payment-methods/credit-cards/accounts/#{account_key}", zuora_version)
1169
+ def get_payment_methods(account_key, query_params = {}, zuora_version = nil)
1170
+ uri = Addressable::URI.parse("/payment-methods/credit-cards/accounts/#{account_key}")
1171
+ uri.query_values = query_params
1172
+ @connection.rest_get(uri.to_s, zuora_version)
1122
1173
  end
1123
1174
 
1124
1175
  def update_payment_method(payment_method_id, request, zuora_version = nil)
@@ -1177,12 +1228,16 @@ module ZuoraRestClient
1177
1228
  @connection.rest_post("/payments/#{payment_id}/unapply", request, zuora_version)
1178
1229
  end
1179
1230
 
1180
- def get_payment_parts(payment_id, zuora_version = nil)
1181
- @connection.rest_get("/payments/#{payment_id}/parts", zuora_version)
1231
+ def get_payment_parts(payment_id, query_params = {}, zuora_version = nil)
1232
+ uri = Addressable::URI.new("/payments/#{payment_id}/parts")
1233
+ uri.query_values = query_params
1234
+ @connection.rest_get(uri.to_s, zuora_version)
1182
1235
  end
1183
1236
 
1184
- def get_payment_part_items(payment_id, part_id, zuora_version = nil)
1185
- @connection.rest_get("/payments/#{payment_id}/parts/#{part_id}/itemparts", zuora_version)
1237
+ def get_payment_part_items(payment_id, part_id, query_params = {}, zuora_version = nil)
1238
+ uri = Addressable::URI.new("/payments/#{payment_id}/parts/#{part_id}/itemparts")
1239
+ uri.query_values = query_params
1240
+ @connection.rest_get(uri.to_s, zuora_version)
1186
1241
  end
1187
1242
 
1188
1243
  def apply_payment(payment_id, request, zuora_version = nil)
@@ -1197,8 +1252,10 @@ module ZuoraRestClient
1197
1252
  @connection.rest_post('/payments', request, zuora_version)
1198
1253
  end
1199
1254
 
1200
- def get_all_payments(zuora_version = nil)
1201
- @connection.rest_get('/payments', zuora_version)
1255
+ def get_all_payments(query_params = {}, zuora_version = nil)
1256
+ uri = Addressable::URI.new('/payments')
1257
+ uri.query_values = query_params
1258
+ @connection.rest_get(uri.to_s, zuora_version)
1202
1259
  end
1203
1260
 
1204
1261
  def get_payment_part(payment_id, part_id, zuora_version = nil)
@@ -1451,12 +1508,16 @@ module ZuoraRestClient
1451
1508
  @connection.rest_put("/refunds/#{refund_id}", request, zuora_version)
1452
1509
  end
1453
1510
 
1454
- def get_refund_part_items(refund_id, refund_part_id, zuora_version = nil)
1455
- @connection.rest_get("/refunds/#{refund_id}/parts/#{refund_part_id}/itemparts", zuora_version)
1511
+ def get_refund_part_items(refund_id, refund_part_id, query_params = {}, zuora_version = nil)
1512
+ uri = Addressable::URI.parse("/refunds/#{refund_id}/parts/#{refund_part_id}/itemparts")
1513
+ uri.query_values = query_params
1514
+ @connection.rest_get(uri.to_s, zuora_version)
1456
1515
  end
1457
1516
 
1458
- def get_all_refunds(zuora_version = nil)
1459
- @connection.rest_get('/refunds', zuora_version)
1517
+ def get_all_refunds(query_params = {}, zuora_version = nil)
1518
+ uri = Addressable::URI.parse('/refunds')
1519
+ uri.query_values = query_params
1520
+ @connection.rest_get(uri.to_s, zuora_version)
1460
1521
  end
1461
1522
 
1462
1523
  def get_refund_parts(refund_id, zuora_version = nil)
@@ -1503,8 +1564,10 @@ module ZuoraRestClient
1503
1564
  @connection.rest_get("/revenue-events/#{event_number}", zuora_version)
1504
1565
  end
1505
1566
 
1506
- def get_revenue_event_for_revenue_schedule(revenue_schedule_number, zuora_version = nil)
1507
- @connection.rest_get("/revenue-events/revenue-schedules/#{revenue_schedule_number}", zuora_version)
1567
+ def get_revenue_event_for_revenue_schedule(revenue_schedule_number, query_params = {}, zuora_version = nil)
1568
+ uri = Addressable::URI.parse("/revenue-events/revenue-schedules/#{revenue_schedule_number}")
1569
+ uri.query_values = query_params
1570
+ @connection.rest_get(uri.to_s, zuora_version)
1508
1571
  end
1509
1572
 
1510
1573
  ##############################################################################
@@ -1513,20 +1576,26 @@ module ZuoraRestClient
1513
1576
  # #
1514
1577
  ##############################################################################
1515
1578
 
1516
- def get_revenue_items_by_crs_number(crs_number, zuora_version = nil)
1517
- @connection.rest_get("/revenue-items/charge-revenue-summaries/#{crs_number}", zuora_version)
1579
+ def get_revenue_items_by_crs_number(crs_number, query_params = {}, zuora_version = nil)
1580
+ uri = Addressable::URI.parse("/revenue-items/charge-revenue-summaries/#{crs_number}")
1581
+ uri.query_values = query_params
1582
+ @connection.rest_get(uri.to_s, zuora_version)
1518
1583
  end
1519
1584
 
1520
- def get_revenue_items_by_revenue_event_number(event_number, zuora_version = nil)
1521
- @connection.rest_get("/revenue-items/revenue-events/#{event_number}", zuora_version)
1585
+ def get_revenue_items_by_revenue_event_number(event_number, query_params = {}, zuora_version = nil)
1586
+ uri = Addressable::URI.parse("/revenue-items/revenue-events/#{event_number}")
1587
+ uri.query_values = query_params
1588
+ @connection.rest_get(uri.to_s, zuora_version)
1522
1589
  end
1523
1590
 
1524
1591
  def update_revenue_items_by_revenue_event_number(event_number, request, zuora_version = nil)
1525
1592
  @connection.rest_put("/revenue-items/revenue-events/#{event_number}", request, zuora_version)
1526
1593
  end
1527
1594
 
1528
- def get_revenue_items_by_revenue_schedule(revenue_schedule_number, zuora_version = nil)
1529
- @connection.rest_get("/revenue-items/revenue-schedules/#{revenue_schedule_number}", zuora_version)
1595
+ def get_revenue_items_by_revenue_schedule(revenue_schedule_number, query_params = {}, zuora_version = nil)
1596
+ uri = Addressable::URI.parse("/revenue-items/revenue-schedules/#{revenue_schedule_number}")
1597
+ uri.query_values = query_params
1598
+ @connection.rest_get(uri.to_s, zuora_version)
1530
1599
  end
1531
1600
 
1532
1601
  def update_revenue_items_by_revenue_schedule(revenue_schedule_number, request, zuora_version = nil)
@@ -1577,8 +1646,10 @@ module ZuoraRestClient
1577
1646
  @connection.rest_post("/revenue-schedules/subscription-charges/#{charge_id}", request, zuora_version)
1578
1647
  end
1579
1648
 
1580
- def get_revenue_schedule_by_subscription_charge(charge_id, zuora_version = nil)
1581
- @connection.rest_get("/revenue-schedules/subscription-charges/#{charge_id}", zuora_version)
1649
+ def get_revenue_schedule_by_subscription_charge(charge_id, query_params = {}, zuora_version = nil)
1650
+ uri = Addressable::URI.parse("/revenue-schedules/subscription-charges/#{charge_id}")
1651
+ uri.query_values = query_params
1652
+ @connection.rest_get(uri.to_s, zuora_version)
1582
1653
  end
1583
1654
 
1584
1655
  def distribute_revenue_across_accounting_periods(revenue_schedule_number, request, zuora_version = nil)
@@ -1633,8 +1704,10 @@ module ZuoraRestClient
1633
1704
  @connection.rest_get("/revenue-schedules/debit-memo-items/#{debit_memo_item_id}", zuora_version)
1634
1705
  end
1635
1706
 
1636
- def get_all_revenue_schedules_of_product_charges(charge_id, account_id, zuora_version = nil)
1637
- @connection.rest_get("/revenue-schedules/product-charges/#{charge_id}/#{account_id}", zuora_version)
1707
+ def get_all_revenue_schedules_of_product_charges(charge_id, account_id, query_params = {}, zuora_version = nil)
1708
+ uri = Addressable::URI.parse("/revenue-schedules/product-charges/#{charge_id}/#{account_id}")
1709
+ uri.query_values = query_params
1710
+ @connection.rest_get(uri.to_s, zuora_version)
1638
1711
  end
1639
1712
 
1640
1713
  ##############################################################################
@@ -1691,20 +1764,26 @@ module ZuoraRestClient
1691
1764
  @connection.rest_post('/subscriptions', request, zuora_version)
1692
1765
  end
1693
1766
 
1694
- def get_subscriptions_by_account(account_key, zuora_version = nil)
1695
- @connection.rest_get("/subscriptions/accounts/#{account_key}", zuora_version)
1767
+ def get_subscriptions_by_account(account_key, query_params = {}, zuora_version = nil)
1768
+ uri = Addressable::URI.parse("/subscriptions/accounts/#{account_key}")
1769
+ uri.query_values = query_params
1770
+ @connection.rest_get(uri.to_s, zuora_version)
1696
1771
  end
1697
1772
 
1698
1773
  def update_subscription(subscription_key, request, zuora_version = nil)
1699
1774
  @connection.rest_put("/subscriptions/#{subscription_key}", request, zuora_version)
1700
1775
  end
1701
1776
 
1702
- def get_subscription_by_key(subscription_key, zuora_version = nil)
1703
- @connection.rest_get("/subscriptions/#{subscription_key}", zuora_version)
1777
+ def get_subscription_by_key(subscription_key, query_params = {}, zuora_version = nil)
1778
+ uri = Addressable::URI.parse("/subscriptions/#{subscription_key}")
1779
+ uri.query_values = query_params
1780
+ @connection.rest_get(uri.to_s, zuora_version)
1704
1781
  end
1705
1782
 
1706
- def get_subscription_by_key_and_version(subscription_key, version, zuora_version = nil)
1707
- @connection.rest_get("/subscriptions/#{subscription_key}/versions/#{version}", zuora_version)
1783
+ def get_subscription_by_key_and_version(subscription_key, version, query_params = {}, zuora_version = nil)
1784
+ uri = Addressable::URI.parse("/subscriptions/#{subscription_key}/versions/#{version}")
1785
+ uri.query_values = query_params
1786
+ @connection.rest_get(uri.to_s, zuora_version)
1708
1787
  end
1709
1788
 
1710
1789
  def renew_subscription(subscription_key, request, zuora_version = nil)
@@ -1723,7 +1802,9 @@ module ZuoraRestClient
1723
1802
  @connection.rest_put("/subscriptions/#{subscription_key}/suspend", request, zuora_version)
1724
1803
  end
1725
1804
 
1726
- def retrieve_subscription_object(subscription_id, zuora_version = nil)
1805
+ def retrieve_subscription_object(subscription_id, fields = nil, zuora_version = nil)
1806
+ uri = Addressable::URI.parse("/object/subscription/#{subscription_id}")
1807
+ uri.query_values = { fields: fields.to_s } if !fields.nil?
1727
1808
  @connection.rest_get("/object/subscription/#{subscription_id}", zuora_version)
1728
1809
  end
1729
1810
 
@@ -1745,8 +1826,10 @@ module ZuoraRestClient
1745
1826
  @connection.rest_post('/journal-entries', request, zuora_version)
1746
1827
  end
1747
1828
 
1748
- def get_all_summary_journal_entries_for_journal_run(journal_run_number, zuora_version = nil)
1749
- @connection.rest_get("/journal-entries/journal-runs/#{journal_run_number}", zuora_version)
1829
+ def get_all_summary_journal_entries_for_journal_run(journal_run_number, query_params = {}, zuora_version = nil)
1830
+ uri = Addressable::URI.parse("/journal-entries/journal-runs/#{journal_run_number}")
1831
+ uri.query_values = query_params
1832
+ @connection.rest_get(uri.to_s, zuora_version)
1750
1833
  end
1751
1834
 
1752
1835
  def get_summary_journal_entry(journal_entry_number, zuora_version = nil)
@@ -1815,12 +1898,16 @@ module ZuoraRestClient
1815
1898
  # #
1816
1899
  ##############################################################################
1817
1900
 
1818
- def get_invoice_transactions(account_key, zuora_version = nil)
1819
- @connection.rest_get("/transactions/invoices/accounts/#{account_key}", zuora_version)
1901
+ def get_invoice_transactions(account_key, query_params = {}, zuora_version = nil)
1902
+ uri = Addressable::URI.parse("/transactions/invoices/accounts/#{account_key}")
1903
+ uri.query_values = query_params
1904
+ @connection.rest_get(uri.to_s, zuora_version)
1820
1905
  end
1821
1906
 
1822
- def get_payment_transactions(account_key, zuora_version = nil)
1823
- @connection.rest_get("/transactions/payments/accounts/#{account_key}", zuora_version)
1907
+ def get_payment_transactions(account_key, query_params = {}, zuora_version = nil)
1908
+ uri = Addressable::URI.parse("/transactions/payments/accounts/#{account_key}")
1909
+ uri.query_values = query_params
1910
+ @connection.rest_get(uri.to_s, zuora_version)
1824
1911
  end
1825
1912
 
1826
1913
  ##############################################################################
@@ -1858,8 +1945,10 @@ module ZuoraRestClient
1858
1945
  @connection.rest_post('/usage', payload, zuora_version, false)
1859
1946
  end
1860
1947
 
1861
- def get_usage(account_key, zuora_version = nil)
1862
- @connection.rest_get("/usage/accounts/#{account_key}", zuora_version)
1948
+ def get_usage(account_key, query_params = {}, zuora_version = nil)
1949
+ uri = Addressable::URI.parse("/usage/accounts/#{account_key}")
1950
+ uri.query_values = query_params
1951
+ @connection.rest_get(uri.to_s, zuora_version)
1863
1952
  end
1864
1953
 
1865
1954
  def create_usage_object(request, zuora_version = nil)