pnap_billing_api 2.1.2 → 3.0.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.
Files changed (150) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +9 -0
  3. data/VERSION +1 -1
  4. data/docs/BandwidthRecord.md +4 -2
  5. data/docs/LocationAvailabilityDetail.md +1 -1
  6. data/docs/OperatingSystemRecord.md +4 -2
  7. data/docs/PackageDetails.md +20 -0
  8. data/docs/PackageQuantity.md +20 -0
  9. data/docs/PricingPlan.md +3 -1
  10. data/docs/ProductAvailabilityApi.md +4 -4
  11. data/docs/ProductLocationEnum.md +15 -0
  12. data/docs/PublicSubnetRecord.md +4 -2
  13. data/docs/Quantity.md +20 -0
  14. data/docs/QuantityUnitEnum.md +15 -0
  15. data/docs/RatedUsageRecord.md +4 -2
  16. data/docs/Reservation.md +10 -2
  17. data/docs/ReservationDetails.md +20 -0
  18. data/docs/ReservationRequest.md +3 -1
  19. data/docs/ReservationStateEnum.md +15 -0
  20. data/docs/ReservationTerm.md +20 -0
  21. data/docs/ReservationsApi.md +2 -2
  22. data/docs/ServerRecord.md +4 -2
  23. data/docs/StorageDetails.md +5 -5
  24. data/docs/StorageRecord.md +4 -2
  25. data/docs/Utilization.md +20 -0
  26. data/lib/pnap_billing_api/api/billing_configurations_api.rb +2 -2
  27. data/lib/pnap_billing_api/api/product_availability_api.rb +14 -6
  28. data/lib/pnap_billing_api/api/products_api.rb +2 -2
  29. data/lib/pnap_billing_api/api/rated_usage_api.rb +3 -3
  30. data/lib/pnap_billing_api/api/reservations_api.rb +7 -7
  31. data/lib/pnap_billing_api/api_client.rb +17 -14
  32. data/lib/pnap_billing_api/api_error.rb +1 -1
  33. data/lib/pnap_billing_api/api_model_base.rb +88 -0
  34. data/lib/pnap_billing_api/configuration.rb +11 -1
  35. data/lib/pnap_billing_api/models/applicable_discount_details.rb +41 -78
  36. data/lib/pnap_billing_api/models/applicable_discounts.rb +11 -78
  37. data/lib/pnap_billing_api/models/bandwidth_details.rb +31 -78
  38. data/lib/pnap_billing_api/models/bandwidth_record.rb +151 -93
  39. data/lib/pnap_billing_api/models/configuration_details.rb +11 -78
  40. data/lib/pnap_billing_api/models/credit_details.rb +5 -7
  41. data/lib/pnap_billing_api/models/credit_details_base.rb +31 -78
  42. data/lib/pnap_billing_api/models/credit_type_enum.rb +1 -1
  43. data/lib/pnap_billing_api/models/discount_details.rb +41 -78
  44. data/lib/pnap_billing_api/models/discount_type_enum.rb +1 -1
  45. data/lib/pnap_billing_api/models/error.rb +21 -78
  46. data/lib/pnap_billing_api/models/gpu_configuration_metadata.rb +11 -78
  47. data/lib/pnap_billing_api/models/location_availability_detail.rb +52 -79
  48. data/lib/pnap_billing_api/models/location_enum.rb +1 -1
  49. data/lib/pnap_billing_api/models/operating_system_details.rb +31 -78
  50. data/lib/pnap_billing_api/models/operating_system_record.rb +151 -93
  51. data/lib/pnap_billing_api/models/package_details.rb +179 -0
  52. data/lib/pnap_billing_api/models/package_quantity.rb +193 -0
  53. data/lib/pnap_billing_api/models/package_unit_enum.rb +1 -1
  54. data/lib/pnap_billing_api/models/price_unit_enum.rb +3 -2
  55. data/lib/pnap_billing_api/models/pricing_plan.rb +56 -84
  56. data/lib/pnap_billing_api/models/product.rb +31 -78
  57. data/lib/pnap_billing_api/models/product_availability.rb +41 -78
  58. data/lib/pnap_billing_api/models/product_category_enum.rb +1 -1
  59. data/lib/pnap_billing_api/models/product_location_enum.rb +44 -0
  60. data/lib/pnap_billing_api/models/products_get200_response_inner.rb +1 -2
  61. data/lib/pnap_billing_api/models/promo_credit_details.rb +51 -78
  62. data/lib/pnap_billing_api/models/public_subnet_details.rb +31 -78
  63. data/lib/pnap_billing_api/models/public_subnet_record.rb +151 -93
  64. data/lib/pnap_billing_api/models/quantity.rb +223 -0
  65. data/lib/pnap_billing_api/models/quantity_unit_enum.rb +40 -0
  66. data/lib/pnap_billing_api/models/rated_usage_get200_response_inner.rb +1 -2
  67. data/lib/pnap_billing_api/models/rated_usage_product_category_enum.rb +1 -1
  68. data/lib/pnap_billing_api/models/rated_usage_record.rb +141 -93
  69. data/lib/pnap_billing_api/models/reservation.rb +186 -83
  70. data/lib/pnap_billing_api/models/reservation_auto_renew_disable_request.rb +11 -78
  71. data/lib/pnap_billing_api/models/reservation_details.rb +158 -0
  72. data/lib/pnap_billing_api/models/reservation_invoicing_model_enum.rb +1 -1
  73. data/lib/pnap_billing_api/models/reservation_model_enum.rb +3 -2
  74. data/lib/pnap_billing_api/models/reservation_product_category_enum.rb +3 -2
  75. data/lib/pnap_billing_api/models/reservation_request.rb +51 -82
  76. data/lib/pnap_billing_api/models/reservation_state_enum.rb +44 -0
  77. data/lib/pnap_billing_api/models/reservation_term.rb +214 -0
  78. data/lib/pnap_billing_api/models/server_details.rb +31 -78
  79. data/lib/pnap_billing_api/models/server_product.rb +41 -78
  80. data/lib/pnap_billing_api/models/server_product_metadata.rb +81 -78
  81. data/lib/pnap_billing_api/models/server_record.rb +151 -93
  82. data/lib/pnap_billing_api/models/storage_details.rb +21 -113
  83. data/lib/pnap_billing_api/models/storage_record.rb +151 -93
  84. data/lib/pnap_billing_api/models/system_credit_cause_enum.rb +1 -1
  85. data/lib/pnap_billing_api/models/system_credit_details.rb +41 -78
  86. data/lib/pnap_billing_api/models/threshold_configuration_details.rb +21 -78
  87. data/lib/pnap_billing_api/models/utilization.rb +208 -0
  88. data/lib/pnap_billing_api/version.rb +1 -2
  89. data/lib/pnap_billing_api.rb +11 -1
  90. data/pnap_billing_api.gemspec +6 -6
  91. data/spec/api/billing_configurations_api_spec.rb +1 -1
  92. data/spec/api/product_availability_api_spec.rb +3 -3
  93. data/spec/api/products_api_spec.rb +1 -1
  94. data/spec/api/rated_usage_api_spec.rb +1 -1
  95. data/spec/api/reservations_api_spec.rb +1 -1
  96. data/spec/models/applicable_discount_details_spec.rb +2 -2
  97. data/spec/models/applicable_discounts_spec.rb +2 -2
  98. data/spec/models/bandwidth_details_spec.rb +2 -2
  99. data/spec/models/bandwidth_record_spec.rb +8 -2
  100. data/spec/models/configuration_details_spec.rb +2 -2
  101. data/spec/models/credit_details_base_spec.rb +2 -2
  102. data/spec/models/credit_details_spec.rb +1 -1
  103. data/spec/models/credit_type_enum_spec.rb +2 -2
  104. data/spec/models/discount_details_spec.rb +2 -2
  105. data/spec/models/discount_type_enum_spec.rb +2 -2
  106. data/spec/models/error_spec.rb +2 -2
  107. data/spec/models/gpu_configuration_metadata_spec.rb +2 -2
  108. data/spec/models/location_availability_detail_spec.rb +2 -2
  109. data/spec/models/location_enum_spec.rb +2 -2
  110. data/spec/models/operating_system_details_spec.rb +2 -2
  111. data/spec/models/operating_system_record_spec.rb +8 -2
  112. data/spec/models/package_details_spec.rb +42 -0
  113. data/spec/models/package_quantity_spec.rb +42 -0
  114. data/spec/models/package_unit_enum_spec.rb +2 -2
  115. data/spec/models/price_unit_enum_spec.rb +2 -2
  116. data/spec/models/pricing_plan_spec.rb +9 -3
  117. data/spec/models/product_availability_spec.rb +2 -2
  118. data/spec/models/product_category_enum_spec.rb +2 -2
  119. data/spec/models/product_location_enum_spec.rb +30 -0
  120. data/spec/models/product_spec.rb +2 -2
  121. data/spec/models/products_get200_response_inner_spec.rb +1 -1
  122. data/spec/models/promo_credit_details_spec.rb +2 -2
  123. data/spec/models/public_subnet_details_spec.rb +2 -2
  124. data/spec/models/public_subnet_record_spec.rb +8 -2
  125. data/spec/models/quantity_spec.rb +42 -0
  126. data/spec/models/quantity_unit_enum_spec.rb +30 -0
  127. data/spec/models/rated_usage_get200_response_inner_spec.rb +1 -1
  128. data/spec/models/rated_usage_product_category_enum_spec.rb +2 -2
  129. data/spec/models/rated_usage_record_spec.rb +8 -2
  130. data/spec/models/reservation_auto_renew_disable_request_spec.rb +2 -2
  131. data/spec/models/reservation_details_spec.rb +42 -0
  132. data/spec/models/reservation_invoicing_model_enum_spec.rb +2 -2
  133. data/spec/models/reservation_model_enum_spec.rb +2 -2
  134. data/spec/models/reservation_product_category_enum_spec.rb +2 -2
  135. data/spec/models/reservation_request_spec.rb +8 -2
  136. data/spec/models/reservation_spec.rb +26 -2
  137. data/spec/models/reservation_state_enum_spec.rb +30 -0
  138. data/spec/models/reservation_term_spec.rb +42 -0
  139. data/spec/models/server_details_spec.rb +2 -2
  140. data/spec/models/server_product_metadata_spec.rb +2 -2
  141. data/spec/models/server_product_spec.rb +2 -2
  142. data/spec/models/server_record_spec.rb +8 -2
  143. data/spec/models/storage_details_spec.rb +2 -2
  144. data/spec/models/storage_record_spec.rb +8 -2
  145. data/spec/models/system_credit_cause_enum_spec.rb +2 -2
  146. data/spec/models/system_credit_details_spec.rb +2 -2
  147. data/spec/models/threshold_configuration_details_spec.rb +2 -2
  148. data/spec/models/utilization_spec.rb +42 -0
  149. data/spec/spec_helper.rb +1 -1
  150. metadata +82 -41
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4fe2f8bfaed5ab0853423725cc7c30e1bb0e5d49ce0a10acc6ad19c960651742
4
- data.tar.gz: 60ed7b8bbd6fd4e249cdf3097a49048865a788de960a2769a66444532ba43ee6
3
+ metadata.gz: dc04771881508556a91d27a06d8b0d155cb3502427b8dd94120e4adb7c53fb63
4
+ data.tar.gz: 1a1eee8159c98981f8064f3fbd9d341f49ba5be8ca08564e7cc0c81b4404a146
5
5
  SHA512:
6
- metadata.gz: b720eda3cc235037af2e6d8716f45ad9a7dab7d98b84a1159c466038cc42b39b606c692935f960ea824eca58391936f3788bcf5a3936dc34ea028777046ade57
7
- data.tar.gz: 7b4dadc644145daa85acd6d43c43e7a47eac241e9a5d899420a37119714a116920eb89dd7f48813dff4bbd2723039e928a0d33349633c763104c57c1996657bc
6
+ metadata.gz: 98014375b63eac5cd177bce8b7e8ec0543e1002a04c61e8365785bbb1c1bbb9422913a53c912626252bc2d739cdb178aeeac7bdb9f82ea20aa9cbb845e79e163
7
+ data.tar.gz: b2a2a7dd3a23deef5a1bcc70049e18cd08c83fabdf046aae9874406257a8b31e76c77d586418e5c1c727878ad7b7474314595c0c1c991897e101e9f5dc1d4d57
data/README.md CHANGED
@@ -153,25 +153,33 @@ Class | Method | HTTP request | Description
153
153
  - [BillingApi::LocationEnum](docs/LocationEnum.md)
154
154
  - [BillingApi::OperatingSystemDetails](docs/OperatingSystemDetails.md)
155
155
  - [BillingApi::OperatingSystemRecord](docs/OperatingSystemRecord.md)
156
+ - [BillingApi::PackageDetails](docs/PackageDetails.md)
157
+ - [BillingApi::PackageQuantity](docs/PackageQuantity.md)
156
158
  - [BillingApi::PackageUnitEnum](docs/PackageUnitEnum.md)
157
159
  - [BillingApi::PriceUnitEnum](docs/PriceUnitEnum.md)
158
160
  - [BillingApi::PricingPlan](docs/PricingPlan.md)
159
161
  - [BillingApi::Product](docs/Product.md)
160
162
  - [BillingApi::ProductAvailability](docs/ProductAvailability.md)
161
163
  - [BillingApi::ProductCategoryEnum](docs/ProductCategoryEnum.md)
164
+ - [BillingApi::ProductLocationEnum](docs/ProductLocationEnum.md)
162
165
  - [BillingApi::ProductsGet200ResponseInner](docs/ProductsGet200ResponseInner.md)
163
166
  - [BillingApi::PromoCreditDetails](docs/PromoCreditDetails.md)
164
167
  - [BillingApi::PublicSubnetDetails](docs/PublicSubnetDetails.md)
165
168
  - [BillingApi::PublicSubnetRecord](docs/PublicSubnetRecord.md)
169
+ - [BillingApi::Quantity](docs/Quantity.md)
170
+ - [BillingApi::QuantityUnitEnum](docs/QuantityUnitEnum.md)
166
171
  - [BillingApi::RatedUsageGet200ResponseInner](docs/RatedUsageGet200ResponseInner.md)
167
172
  - [BillingApi::RatedUsageProductCategoryEnum](docs/RatedUsageProductCategoryEnum.md)
168
173
  - [BillingApi::RatedUsageRecord](docs/RatedUsageRecord.md)
169
174
  - [BillingApi::Reservation](docs/Reservation.md)
170
175
  - [BillingApi::ReservationAutoRenewDisableRequest](docs/ReservationAutoRenewDisableRequest.md)
176
+ - [BillingApi::ReservationDetails](docs/ReservationDetails.md)
171
177
  - [BillingApi::ReservationInvoicingModelEnum](docs/ReservationInvoicingModelEnum.md)
172
178
  - [BillingApi::ReservationModelEnum](docs/ReservationModelEnum.md)
173
179
  - [BillingApi::ReservationProductCategoryEnum](docs/ReservationProductCategoryEnum.md)
174
180
  - [BillingApi::ReservationRequest](docs/ReservationRequest.md)
181
+ - [BillingApi::ReservationStateEnum](docs/ReservationStateEnum.md)
182
+ - [BillingApi::ReservationTerm](docs/ReservationTerm.md)
175
183
  - [BillingApi::ServerDetails](docs/ServerDetails.md)
176
184
  - [BillingApi::ServerProduct](docs/ServerProduct.md)
177
185
  - [BillingApi::ServerProductMetadata](docs/ServerProductMetadata.md)
@@ -181,6 +189,7 @@ Class | Method | HTTP request | Description
181
189
  - [BillingApi::SystemCreditCauseEnum](docs/SystemCreditCauseEnum.md)
182
190
  - [BillingApi::SystemCreditDetails](docs/SystemCreditDetails.md)
183
191
  - [BillingApi::ThresholdConfigurationDetails](docs/ThresholdConfigurationDetails.md)
192
+ - [BillingApi::Utilization](docs/Utilization.md)
184
193
 
185
194
 
186
195
  ## Documentation for Authorization
data/VERSION CHANGED
@@ -1 +1 @@
1
- 2.1.2
1
+ 3.0.0
@@ -19,9 +19,10 @@
19
19
  | **unit_price_description** | **String** | User friendly description of the unit price. | |
20
20
  | **quantity** | **Float** | The number of units being charged. | |
21
21
  | **active** | **Boolean** | A flag indicating whether the rated usage record is still active. | |
22
- | **usage_session_id** | **String** | The usage session ID is used to correlate rated usage records across periods of time. For example, a server used for over a month will generate multiple rated usage records. The entire usage session cost can be computed by aggregating the records having the same usage session ID. It is usual to have one rated usage record per month or invoice. | |
23
- | **correlation_id** | **String** | Holds usage record id | |
22
+ | **usage_session_id** | **String** | The usage session ID is used to correlate rated usage records across periods of time. For example, a server used for over a month will generate multiple rated usage records. The entire usage session cost can be computed by aggregating the records having the same usage session ID. It is usual to have one rated usage record per month or invoice. | [optional] |
23
+ | **correlation_id** | **String** | Holds usage record id | [optional] |
24
24
  | **reservation_id** | **String** | Reservation id associated with this rated usage record. | [optional] |
25
+ | **reservation_details** | [**ReservationDetails**](ReservationDetails.md) | | [optional] |
25
26
  | **discount_details** | [**ApplicableDiscountDetails**](ApplicableDiscountDetails.md) | | [optional] |
26
27
  | **credit_details** | [**Array<CreditDetails>**](CreditDetails.md) | | [optional] |
27
28
  | **metadata** | [**BandwidthDetails**](BandwidthDetails.md) | | |
@@ -50,6 +51,7 @@ instance = BillingApi::BandwidthRecord.new(
50
51
  usage_session_id: ec4a9d49-1cef-49e9-b85e-b560f88bcd26,
51
52
  correlation_id: ec4a9d49-1cef-49e9-b85e-b560f88bcd26,
52
53
  reservation_id: c32a24a1-5949-4b60-99c0-c8aaa3a92b04,
54
+ reservation_details: null,
53
55
  discount_details: null,
54
56
  credit_details: null,
55
57
  metadata: null
@@ -4,7 +4,7 @@
4
4
 
5
5
  | Name | Type | Description | Notes |
6
6
  | ---- | ---- | ----------- | ----- |
7
- | **location** | [**LocationEnum**](LocationEnum.md) | | |
7
+ | **location** | [**ProductLocationEnum**](ProductLocationEnum.md) | | |
8
8
  | **min_quantity_requested** | **Float** | Requested quantity. | |
9
9
  | **min_quantity_available** | **Boolean** | Is product available in specific location for requested quantity | |
10
10
  | **available_quantity** | **Float** | Total available quantity of product in specific location. Max value is 10. | |
@@ -19,9 +19,10 @@
19
19
  | **unit_price_description** | **String** | User friendly description of the unit price. | |
20
20
  | **quantity** | **Float** | The number of units being charged. | |
21
21
  | **active** | **Boolean** | A flag indicating whether the rated usage record is still active. | |
22
- | **usage_session_id** | **String** | The usage session ID is used to correlate rated usage records across periods of time. For example, a server used for over a month will generate multiple rated usage records. The entire usage session cost can be computed by aggregating the records having the same usage session ID. It is usual to have one rated usage record per month or invoice. | |
23
- | **correlation_id** | **String** | Holds usage record id | |
22
+ | **usage_session_id** | **String** | The usage session ID is used to correlate rated usage records across periods of time. For example, a server used for over a month will generate multiple rated usage records. The entire usage session cost can be computed by aggregating the records having the same usage session ID. It is usual to have one rated usage record per month or invoice. | [optional] |
23
+ | **correlation_id** | **String** | Holds usage record id | [optional] |
24
24
  | **reservation_id** | **String** | Reservation id associated with this rated usage record. | [optional] |
25
+ | **reservation_details** | [**ReservationDetails**](ReservationDetails.md) | | [optional] |
25
26
  | **discount_details** | [**ApplicableDiscountDetails**](ApplicableDiscountDetails.md) | | [optional] |
26
27
  | **credit_details** | [**Array<CreditDetails>**](CreditDetails.md) | | [optional] |
27
28
  | **metadata** | [**OperatingSystemDetails**](OperatingSystemDetails.md) | | |
@@ -50,6 +51,7 @@ instance = BillingApi::OperatingSystemRecord.new(
50
51
  usage_session_id: ec4a9d49-1cef-49e9-b85e-b560f88bcd26,
51
52
  correlation_id: ec4a9d49-1cef-49e9-b85e-b560f88bcd26,
52
53
  reservation_id: c32a24a1-5949-4b60-99c0-c8aaa3a92b04,
54
+ reservation_details: null,
53
55
  discount_details: null,
54
56
  credit_details: null,
55
57
  metadata: null
@@ -0,0 +1,20 @@
1
+ # BillingApi::PackageDetails
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **package_quantity** | [**PackageQuantity**](PackageQuantity.md) | | [optional] |
8
+ | **package_unit** | [**PackageUnitEnum**](PackageUnitEnum.md) | | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'pnap_billing_api'
14
+
15
+ instance = BillingApi::PackageDetails.new(
16
+ package_quantity: null,
17
+ package_unit: null
18
+ )
19
+ ```
20
+
@@ -0,0 +1,20 @@
1
+ # BillingApi::PackageQuantity
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **min** | **Float** | Minimum package quantity. | |
8
+ | **max** | **Float** | Maximum package quantity. | |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'pnap_billing_api'
14
+
15
+ instance = BillingApi::PackageQuantity.new(
16
+ min: 0,
17
+ max: 100
18
+ )
19
+ ```
20
+
data/docs/PricingPlan.md CHANGED
@@ -14,6 +14,7 @@
14
14
  | **correlated_product_code** | **String** | Product code of the product this product is correlated with | [optional] |
15
15
  | **package_quantity** | **Float** | Package size per month. | [optional] |
16
16
  | **package_unit** | [**PackageUnitEnum**](PackageUnitEnum.md) | | [optional] |
17
+ | **package_details** | [**PackageDetails**](PackageDetails.md) | | [optional] |
17
18
 
18
19
  ## Example
19
20
 
@@ -30,7 +31,8 @@ instance = BillingApi::PricingPlan.new(
30
31
  applicable_discounts: null,
31
32
  correlated_product_code: s1.c1.small,
32
33
  package_quantity: 50,
33
- package_unit: null
34
+ package_unit: null,
35
+ package_details: null
34
36
  )
35
37
  ```
36
38
 
@@ -31,9 +31,9 @@ opts = {
31
31
  product_category: ['SERVER'], # Array<String> | Product category. Currently only SERVER category is supported.
32
32
  product_code: ['inner_example'], # Array<String> |
33
33
  show_only_min_quantity_available: true, # Boolean | Show only locations where product with requested quantity is available or all locations where product is offered.
34
- location: [BillingApi::LocationEnum::PHX], # Array<LocationEnum> |
34
+ location: [BillingApi::ProductLocationEnum::PHX], # Array<ProductLocationEnum> |
35
35
  solution: ['SERVER_RANCHER'], # Array<String> |
36
- min_quantity: 2 # Float | Minimal quantity of product needed. Minimum, maximum and default values might differ for different products. For servers, they are 1, 10 and 1 respectively.
36
+ min_quantity: 2 # Float | Minimum quantity of the product that can be requested. For servers the allowed quantity range is 1 to 10.
37
37
  }
38
38
 
39
39
  begin
@@ -70,9 +70,9 @@ end
70
70
  | **product_category** | [**Array&lt;String&gt;**](String.md) | Product category. Currently only SERVER category is supported. | [optional] |
71
71
  | **product_code** | [**Array&lt;String&gt;**](String.md) | | [optional] |
72
72
  | **show_only_min_quantity_available** | **Boolean** | Show only locations where product with requested quantity is available or all locations where product is offered. | [optional][default to true] |
73
- | **location** | [**Array&lt;LocationEnum&gt;**](LocationEnum.md) | | [optional] |
73
+ | **location** | [**Array&lt;ProductLocationEnum&gt;**](ProductLocationEnum.md) | | [optional] |
74
74
  | **solution** | [**Array&lt;String&gt;**](String.md) | | [optional] |
75
- | **min_quantity** | **Float** | Minimal quantity of product needed. Minimum, maximum and default values might differ for different products. For servers, they are 1, 10 and 1 respectively. | [optional] |
75
+ | **min_quantity** | **Float** | Minimum quantity of the product that can be requested. For servers the allowed quantity range is 1 to 10. | [optional] |
76
76
 
77
77
  ### Return type
78
78
 
@@ -0,0 +1,15 @@
1
+ # BillingApi::ProductLocationEnum
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+
8
+ ## Example
9
+
10
+ ```ruby
11
+ require 'pnap_billing_api'
12
+
13
+ instance = BillingApi::ProductLocationEnum.new()
14
+ ```
15
+
@@ -19,9 +19,10 @@
19
19
  | **unit_price_description** | **String** | User friendly description of the unit price. | |
20
20
  | **quantity** | **Float** | The number of units being charged. | |
21
21
  | **active** | **Boolean** | A flag indicating whether the rated usage record is still active. | |
22
- | **usage_session_id** | **String** | The usage session ID is used to correlate rated usage records across periods of time. For example, a server used for over a month will generate multiple rated usage records. The entire usage session cost can be computed by aggregating the records having the same usage session ID. It is usual to have one rated usage record per month or invoice. | |
23
- | **correlation_id** | **String** | Holds usage record id | |
22
+ | **usage_session_id** | **String** | The usage session ID is used to correlate rated usage records across periods of time. For example, a server used for over a month will generate multiple rated usage records. The entire usage session cost can be computed by aggregating the records having the same usage session ID. It is usual to have one rated usage record per month or invoice. | [optional] |
23
+ | **correlation_id** | **String** | Holds usage record id | [optional] |
24
24
  | **reservation_id** | **String** | Reservation id associated with this rated usage record. | [optional] |
25
+ | **reservation_details** | [**ReservationDetails**](ReservationDetails.md) | | [optional] |
25
26
  | **discount_details** | [**ApplicableDiscountDetails**](ApplicableDiscountDetails.md) | | [optional] |
26
27
  | **credit_details** | [**Array&lt;CreditDetails&gt;**](CreditDetails.md) | | [optional] |
27
28
  | **metadata** | [**PublicSubnetDetails**](PublicSubnetDetails.md) | | |
@@ -50,6 +51,7 @@ instance = BillingApi::PublicSubnetRecord.new(
50
51
  usage_session_id: ec4a9d49-1cef-49e9-b85e-b560f88bcd26,
51
52
  correlation_id: ec4a9d49-1cef-49e9-b85e-b560f88bcd26,
52
53
  reservation_id: c32a24a1-5949-4b60-99c0-c8aaa3a92b04,
54
+ reservation_details: null,
53
55
  discount_details: null,
54
56
  credit_details: null,
55
57
  metadata: null
data/docs/Quantity.md ADDED
@@ -0,0 +1,20 @@
1
+ # BillingApi::Quantity
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **quantity** | **Float** | Quantity size. | |
8
+ | **unit** | [**QuantityUnitEnum**](QuantityUnitEnum.md) | | |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'pnap_billing_api'
14
+
15
+ instance = BillingApi::Quantity.new(
16
+ quantity: 30,
17
+ unit: null
18
+ )
19
+ ```
20
+
@@ -0,0 +1,15 @@
1
+ # BillingApi::QuantityUnitEnum
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+
8
+ ## Example
9
+
10
+ ```ruby
11
+ require 'pnap_billing_api'
12
+
13
+ instance = BillingApi::QuantityUnitEnum.new()
14
+ ```
15
+
@@ -19,9 +19,10 @@
19
19
  | **unit_price_description** | **String** | User friendly description of the unit price. | |
20
20
  | **quantity** | **Float** | The number of units being charged. | |
21
21
  | **active** | **Boolean** | A flag indicating whether the rated usage record is still active. | |
22
- | **usage_session_id** | **String** | The usage session ID is used to correlate rated usage records across periods of time. For example, a server used for over a month will generate multiple rated usage records. The entire usage session cost can be computed by aggregating the records having the same usage session ID. It is usual to have one rated usage record per month or invoice. | |
23
- | **correlation_id** | **String** | Holds usage record id | |
22
+ | **usage_session_id** | **String** | The usage session ID is used to correlate rated usage records across periods of time. For example, a server used for over a month will generate multiple rated usage records. The entire usage session cost can be computed by aggregating the records having the same usage session ID. It is usual to have one rated usage record per month or invoice. | [optional] |
23
+ | **correlation_id** | **String** | Holds usage record id | [optional] |
24
24
  | **reservation_id** | **String** | Reservation id associated with this rated usage record. | [optional] |
25
+ | **reservation_details** | [**ReservationDetails**](ReservationDetails.md) | | [optional] |
25
26
  | **discount_details** | [**ApplicableDiscountDetails**](ApplicableDiscountDetails.md) | | [optional] |
26
27
  | **credit_details** | [**Array&lt;CreditDetails&gt;**](CreditDetails.md) | | [optional] |
27
28
 
@@ -49,6 +50,7 @@ instance = BillingApi::RatedUsageRecord.new(
49
50
  usage_session_id: ec4a9d49-1cef-49e9-b85e-b560f88bcd26,
50
51
  correlation_id: ec4a9d49-1cef-49e9-b85e-b560f88bcd26,
51
52
  reservation_id: c32a24a1-5949-4b60-99c0-c8aaa3a92b04,
53
+ reservation_details: null,
52
54
  discount_details: null,
53
55
  credit_details: null
54
56
  )
data/docs/Reservation.md CHANGED
@@ -5,11 +5,14 @@
5
5
  | Name | Type | Description | Notes |
6
6
  | ---- | ---- | ----------- | ----- |
7
7
  | **id** | **String** | The reservation identifier. | |
8
- | **product_code** | **String** | The code identifying the product. This code has significant across all locations. | |
8
+ | **product_code** | **String** | The code identifying the product. The same code is used for this product across all locations. | |
9
9
  | **product_category** | [**ReservationProductCategoryEnum**](ReservationProductCategoryEnum.md) | | |
10
10
  | **location** | [**LocationEnum**](LocationEnum.md) | | |
11
11
  | **reservation_model** | [**ReservationModelEnum**](ReservationModelEnum.md) | | |
12
+ | **term** | [**ReservationTerm**](ReservationTerm.md) | | [optional] |
13
+ | **reservation_state** | [**ReservationStateEnum**](ReservationStateEnum.md) | | |
12
14
  | **initial_invoice_model** | [**ReservationInvoicingModelEnum**](ReservationInvoicingModelEnum.md) | | [optional] |
15
+ | **quantity** | [**Quantity**](Quantity.md) | | |
13
16
  | **start_date_time** | **Time** | The point in time (in UTC) when the reservation starts. | |
14
17
  | **end_date_time** | **Time** | The point in time (in UTC) when the reservation end. | [optional] |
15
18
  | **last_renewal_date_time** | **Time** | The point in time (in UTC) when the reservation was renewed last. | [optional] |
@@ -20,6 +23,7 @@
20
23
  | **price_unit** | [**PriceUnitEnum**](PriceUnitEnum.md) | | |
21
24
  | **assigned_resource_id** | **String** | The resource ID currently being assigned to Reservation. | [optional] |
22
25
  | **next_billing_date** | **Date** | Next billing date for Reservation. | [optional] |
26
+ | **utilization** | [**Utilization**](Utilization.md) | | [optional] |
23
27
 
24
28
  ## Example
25
29
 
@@ -32,7 +36,10 @@ instance = BillingApi::Reservation.new(
32
36
  product_category: null,
33
37
  location: null,
34
38
  reservation_model: null,
39
+ term: null,
40
+ reservation_state: null,
35
41
  initial_invoice_model: null,
42
+ quantity: null,
36
43
  start_date_time: 2020-03-19T16:39Z,
37
44
  end_date_time: 2020-04-19T16:39Z,
38
45
  last_renewal_date_time: 2020-03-19T16:39Z,
@@ -42,7 +49,8 @@ instance = BillingApi::Reservation.new(
42
49
  price: 175,
43
50
  price_unit: null,
44
51
  assigned_resource_id: 83604275-bdba-490a-b87a-978e8dffdb14,
45
- next_billing_date: Sun Apr 19 00:00:00 UTC 2020
52
+ next_billing_date: Sun Apr 19 00:00:00 UTC 2020,
53
+ utilization: null
46
54
  )
47
55
  ```
48
56
 
@@ -0,0 +1,20 @@
1
+ # BillingApi::ReservationDetails
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **id** | **String** | The Reservation identifier. | [optional] |
8
+ | **quantity** | [**Quantity**](Quantity.md) | | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'pnap_billing_api'
14
+
15
+ instance = BillingApi::ReservationDetails.new(
16
+ id: 83604275-bdba-490a-b87a-978e8dffdb14,
17
+ quantity: null
18
+ )
19
+ ```
20
+
@@ -5,6 +5,7 @@
5
5
  | Name | Type | Description | Notes |
6
6
  | ---- | ---- | ----------- | ----- |
7
7
  | **sku** | **String** | The sku code of product pricing plan. | |
8
+ | **quantity** | [**Quantity**](Quantity.md) | | |
8
9
 
9
10
  ## Example
10
11
 
@@ -12,7 +13,8 @@
12
13
  require 'pnap_billing_api'
13
14
 
14
15
  instance = BillingApi::ReservationRequest.new(
15
- sku: XXX-XXX-XXX
16
+ sku: XXX-XXX-XXX,
17
+ quantity: null
16
18
  )
17
19
  ```
18
20
 
@@ -0,0 +1,15 @@
1
+ # BillingApi::ReservationStateEnum
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+
8
+ ## Example
9
+
10
+ ```ruby
11
+ require 'pnap_billing_api'
12
+
13
+ instance = BillingApi::ReservationStateEnum.new()
14
+ ```
15
+
@@ -0,0 +1,20 @@
1
+ # BillingApi::ReservationTerm
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **length_in_months** | **Integer** | Term&#39;s length, expressed in months. | |
8
+ | **reservation_model** | [**ReservationModelEnum**](ReservationModelEnum.md) | | |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'pnap_billing_api'
14
+
15
+ instance = BillingApi::ReservationTerm.new(
16
+ length_in_months: 12,
17
+ reservation_model: null
18
+ )
19
+ ```
20
+
@@ -104,7 +104,7 @@ end
104
104
 
105
105
  api_instance = BillingApi::ReservationsApi.new
106
106
  opts = {
107
- reservation_request: BillingApi::ReservationRequest.new({sku: 'XXX-XXX-XXX'}) # ReservationRequest |
107
+ reservation_request: BillingApi::ReservationRequest.new({sku: 'XXX-XXX-XXX', quantity: BillingApi::Quantity.new({quantity: 30, unit: BillingApi::QuantityUnitEnum::TB})}) # ReservationRequest |
108
108
  }
109
109
 
110
110
  begin
@@ -318,7 +318,7 @@ end
318
318
  api_instance = BillingApi::ReservationsApi.new
319
319
  id = 'd90bbea9-5725-47ce-879e-d3905bafac2a' # String | Resource id.
320
320
  opts = {
321
- reservation_request: BillingApi::ReservationRequest.new({sku: 'XXX-XXX-XXX'}) # ReservationRequest |
321
+ reservation_request: BillingApi::ReservationRequest.new({sku: 'XXX-XXX-XXX', quantity: BillingApi::Quantity.new({quantity: 30, unit: BillingApi::QuantityUnitEnum::TB})}) # ReservationRequest |
322
322
  }
323
323
 
324
324
  begin
data/docs/ServerRecord.md CHANGED
@@ -19,9 +19,10 @@
19
19
  | **unit_price_description** | **String** | User friendly description of the unit price. | |
20
20
  | **quantity** | **Float** | The number of units being charged. | |
21
21
  | **active** | **Boolean** | A flag indicating whether the rated usage record is still active. | |
22
- | **usage_session_id** | **String** | The usage session ID is used to correlate rated usage records across periods of time. For example, a server used for over a month will generate multiple rated usage records. The entire usage session cost can be computed by aggregating the records having the same usage session ID. It is usual to have one rated usage record per month or invoice. | |
23
- | **correlation_id** | **String** | Holds usage record id | |
22
+ | **usage_session_id** | **String** | The usage session ID is used to correlate rated usage records across periods of time. For example, a server used for over a month will generate multiple rated usage records. The entire usage session cost can be computed by aggregating the records having the same usage session ID. It is usual to have one rated usage record per month or invoice. | [optional] |
23
+ | **correlation_id** | **String** | Holds usage record id | [optional] |
24
24
  | **reservation_id** | **String** | Reservation id associated with this rated usage record. | [optional] |
25
+ | **reservation_details** | [**ReservationDetails**](ReservationDetails.md) | | [optional] |
25
26
  | **discount_details** | [**ApplicableDiscountDetails**](ApplicableDiscountDetails.md) | | [optional] |
26
27
  | **credit_details** | [**Array&lt;CreditDetails&gt;**](CreditDetails.md) | | [optional] |
27
28
  | **metadata** | [**ServerDetails**](ServerDetails.md) | | |
@@ -50,6 +51,7 @@ instance = BillingApi::ServerRecord.new(
50
51
  usage_session_id: ec4a9d49-1cef-49e9-b85e-b560f88bcd26,
51
52
  correlation_id: ec4a9d49-1cef-49e9-b85e-b560f88bcd26,
52
53
  reservation_id: c32a24a1-5949-4b60-99c0-c8aaa3a92b04,
54
+ reservation_details: null,
53
55
  discount_details: null,
54
56
  credit_details: null,
55
57
  metadata: null
@@ -4,12 +4,12 @@
4
4
 
5
5
  | Name | Type | Description | Notes |
6
6
  | ---- | ---- | ----------- | ----- |
7
- | **network_storage_id** | **String** | Network storage ID. | |
8
- | **network_storage_name** | **String** | Network storage name. | |
9
- | **volume_id** | **String** | Volume ID. | |
10
- | **volume_name** | **String** | Volume name. | |
7
+ | **network_storage_id** | **String** | Network storage ID. | [optional] |
8
+ | **network_storage_name** | **String** | Network storage name. | [optional] |
9
+ | **volume_id** | **String** | Volume ID. | [optional] |
10
+ | **volume_name** | **String** | Volume name. | [optional] |
11
11
  | **capacity_in_gb** | **Integer** | Capacity in GB. | |
12
- | **created_on** | **Time** | Timestamp when the record was created. | |
12
+ | **created_on** | **Time** | Timestamp when the record was created. | [optional] |
13
13
 
14
14
  ## Example
15
15
 
@@ -19,9 +19,10 @@
19
19
  | **unit_price_description** | **String** | User friendly description of the unit price. | |
20
20
  | **quantity** | **Float** | The number of units being charged. | |
21
21
  | **active** | **Boolean** | A flag indicating whether the rated usage record is still active. | |
22
- | **usage_session_id** | **String** | The usage session ID is used to correlate rated usage records across periods of time. For example, a server used for over a month will generate multiple rated usage records. The entire usage session cost can be computed by aggregating the records having the same usage session ID. It is usual to have one rated usage record per month or invoice. | |
23
- | **correlation_id** | **String** | Holds usage record id | |
22
+ | **usage_session_id** | **String** | The usage session ID is used to correlate rated usage records across periods of time. For example, a server used for over a month will generate multiple rated usage records. The entire usage session cost can be computed by aggregating the records having the same usage session ID. It is usual to have one rated usage record per month or invoice. | [optional] |
23
+ | **correlation_id** | **String** | Holds usage record id | [optional] |
24
24
  | **reservation_id** | **String** | Reservation id associated with this rated usage record. | [optional] |
25
+ | **reservation_details** | [**ReservationDetails**](ReservationDetails.md) | | [optional] |
25
26
  | **discount_details** | [**ApplicableDiscountDetails**](ApplicableDiscountDetails.md) | | [optional] |
26
27
  | **credit_details** | [**Array&lt;CreditDetails&gt;**](CreditDetails.md) | | [optional] |
27
28
  | **metadata** | [**StorageDetails**](StorageDetails.md) | | |
@@ -50,6 +51,7 @@ instance = BillingApi::StorageRecord.new(
50
51
  usage_session_id: ec4a9d49-1cef-49e9-b85e-b560f88bcd26,
51
52
  correlation_id: ec4a9d49-1cef-49e9-b85e-b560f88bcd26,
52
53
  reservation_id: c32a24a1-5949-4b60-99c0-c8aaa3a92b04,
54
+ reservation_details: null,
53
55
  discount_details: null,
54
56
  credit_details: null,
55
57
  metadata: null
@@ -0,0 +1,20 @@
1
+ # BillingApi::Utilization
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **quantity** | [**Quantity**](Quantity.md) | | |
8
+ | **percentage** | **Float** | | |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'pnap_billing_api'
14
+
15
+ instance = BillingApi::Utilization.new(
16
+ quantity: null,
17
+ percentage: 30
18
+ )
19
+ ```
20
+
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 0.1
7
7
  Contact: support@phoenixnap.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 7.2.0
9
+ Generator version: 7.20.0
10
10
 
11
11
  =end
12
12
 
@@ -45,7 +45,7 @@ module BillingApi
45
45
  # header parameters
46
46
  header_params = opts[:header_params] || {}
47
47
  # HTTP header 'Accept' (if needed)
48
- header_params['Accept'] = @api_client.select_header_accept(['application/json'])
48
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
49
49
 
50
50
  # form parameters
51
51
  form_params = opts[:form_params] || {}
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 0.1
7
7
  Contact: support@phoenixnap.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 7.2.0
9
+ Generator version: 7.20.0
10
10
 
11
11
  =end
12
12
 
@@ -25,9 +25,9 @@ module BillingApi
25
25
  # @option opts [Array<String>] :product_category Product category. Currently only SERVER category is supported.
26
26
  # @option opts [Array<String>] :product_code
27
27
  # @option opts [Boolean] :show_only_min_quantity_available Show only locations where product with requested quantity is available or all locations where product is offered. (default to true)
28
- # @option opts [Array<LocationEnum>] :location
28
+ # @option opts [Array<ProductLocationEnum>] :location
29
29
  # @option opts [Array<String>] :solution
30
- # @option opts [Float] :min_quantity Minimal quantity of product needed. Minimum, maximum and default values might differ for different products. For servers, they are 1, 10 and 1 respectively.
30
+ # @option opts [Float] :min_quantity Minimum quantity of the product that can be requested. For servers the allowed quantity range is 1 to 10.
31
31
  # @return [Array<ProductAvailability>]
32
32
  def product_availability_get(opts = {})
33
33
  data, _status_code, _headers = product_availability_get_with_http_info(opts)
@@ -40,9 +40,9 @@ module BillingApi
40
40
  # @option opts [Array<String>] :product_category Product category. Currently only SERVER category is supported.
41
41
  # @option opts [Array<String>] :product_code
42
42
  # @option opts [Boolean] :show_only_min_quantity_available Show only locations where product with requested quantity is available or all locations where product is offered. (default to true)
43
- # @option opts [Array<LocationEnum>] :location
43
+ # @option opts [Array<ProductLocationEnum>] :location
44
44
  # @option opts [Array<String>] :solution
45
- # @option opts [Float] :min_quantity Minimal quantity of product needed. Minimum, maximum and default values might differ for different products. For servers, they are 1, 10 and 1 respectively.
45
+ # @option opts [Float] :min_quantity Minimum quantity of the product that can be requested. For servers the allowed quantity range is 1 to 10.
46
46
  # @return [Array<(Array<ProductAvailability>, Integer, Hash)>] Array<ProductAvailability> data, response status code and response headers
47
47
  def product_availability_get_with_http_info(opts = {})
48
48
  if @api_client.config.debugging
@@ -56,6 +56,14 @@ module BillingApi
56
56
  if @api_client.config.client_side_validation && opts[:'solution'] && !opts[:'solution'].all? { |item| allowable_values.include?(item) }
57
57
  fail ArgumentError, "invalid value for \"solution\", must include one of #{allowable_values}"
58
58
  end
59
+ if @api_client.config.client_side_validation && !opts[:'min_quantity'].nil? && opts[:'min_quantity'] > 10
60
+ fail ArgumentError, 'invalid value for "opts[:"min_quantity"]" when calling ProductAvailabilityApi.product_availability_get, must be smaller than or equal to 10.'
61
+ end
62
+
63
+ if @api_client.config.client_side_validation && !opts[:'min_quantity'].nil? && opts[:'min_quantity'] < 1
64
+ fail ArgumentError, 'invalid value for "opts[:"min_quantity"]" when calling ProductAvailabilityApi.product_availability_get, must be greater than or equal to 1.'
65
+ end
66
+
59
67
  # resource path
60
68
  local_var_path = '/product-availability'
61
69
 
@@ -71,7 +79,7 @@ module BillingApi
71
79
  # header parameters
72
80
  header_params = opts[:header_params] || {}
73
81
  # HTTP header 'Accept' (if needed)
74
- header_params['Accept'] = @api_client.select_header_accept(['application/json'])
82
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
75
83
 
76
84
  # form parameters
77
85
  form_params = opts[:form_params] || {}
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 0.1
7
7
  Contact: support@phoenixnap.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 7.2.0
9
+ Generator version: 7.20.0
10
10
 
11
11
  =end
12
12
 
@@ -57,7 +57,7 @@ module BillingApi
57
57
  # header parameters
58
58
  header_params = opts[:header_params] || {}
59
59
  # HTTP header 'Accept' (if needed)
60
- header_params['Accept'] = @api_client.select_header_accept(['application/json'])
60
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
61
61
 
62
62
  # form parameters
63
63
  form_params = opts[:form_params] || {}