togai_client 1.0.1 → 1.0.2

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 (686) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +3 -4
  3. data/docs/Account.md +26 -2
  4. data/docs/AccountAlias.md +28 -0
  5. data/docs/AccountAliases.md +1 -3
  6. data/docs/AccountAliasesPaginatedResponse.md +20 -0
  7. data/docs/AccountSchedule.md +38 -0
  8. data/docs/AccountsApi.md +840 -124
  9. data/docs/AccountsBillingInformation.md +20 -0
  10. data/docs/ActivatePricePlanRequest.md +18 -0
  11. data/docs/AddAccountAliasesRequest.md +3 -1
  12. data/docs/AddOn.md +30 -0
  13. data/docs/AddOnPaginatedResponse.md +22 -0
  14. data/docs/AddOnType.md +15 -0
  15. data/docs/AddOnsApi.md +365 -0
  16. data/docs/Address.md +30 -0
  17. data/docs/Alert.md +40 -0
  18. data/docs/AlertStatus.md +15 -0
  19. data/docs/AlertTemplate.md +38 -0
  20. data/docs/AlertTemplatesPaginatedResponse.md +20 -0
  21. data/docs/AlertsApi.md +566 -0
  22. data/docs/AlertsPaginatedResponse.md +20 -0
  23. data/docs/AliasPaginatedResponse.md +20 -0
  24. data/docs/AliasesApi.md +291 -0
  25. data/docs/AssociationConfig.md +24 -0
  26. data/docs/Attribute.md +22 -0
  27. data/docs/AuthenticationApi.md +74 -0
  28. data/docs/BillingConfig.md +20 -0
  29. data/docs/BillingEntitlementRateCard.md +34 -0
  30. data/docs/BillingEntitlementRevenueSummary.md +18 -0
  31. data/docs/BulkRateCardOperationsRequest.md +18 -0
  32. data/docs/BulkRateCardOperationsResponse.md +18 -0
  33. data/docs/CalculateRevenueRequest.md +30 -0
  34. data/docs/CalculateRevenueResponse.md +24 -0
  35. data/docs/CalculateRevenueResponseV2.md +22 -0
  36. data/docs/Computation.md +5 -3
  37. data/docs/CreateAccountAliasRequest.md +22 -0
  38. data/docs/CreateAccountRequest.md +27 -5
  39. data/docs/CreateAccountRequestWithoutCustomerId.md +42 -0
  40. data/docs/CreateAddOnRequest.md +22 -0
  41. data/docs/CreateAlertRequest.md +32 -0
  42. data/docs/CreateAliasRequest.md +18 -0
  43. data/docs/CreateBulkAliasRequest.md +18 -0
  44. data/docs/CreateCreditRequest.md +18 -0
  45. data/docs/CreateCreditResponse.md +18 -0
  46. data/docs/CreateCustomInvoiceRequest.md +36 -0
  47. data/docs/CreateCustomerContactRequest.md +30 -0
  48. data/docs/CreateCustomerContactResponse.md +34 -0
  49. data/docs/CreateCustomerRequest.md +9 -7
  50. data/docs/CreateCustomerResponse.md +8 -2
  51. data/docs/CreateEntitySetting.md +26 -0
  52. data/docs/CreateEventSchemaRequest.md +7 -1
  53. data/docs/CreateFeatureRequest.md +22 -0
  54. data/docs/CreateInvoiceGroupRequest.md +28 -0
  55. data/docs/CreatePaymentRequest.md +30 -0
  56. data/docs/CreatePricePlanDetails.md +38 -0
  57. data/docs/CreatePricePlanDetailsOverride.md +34 -0
  58. data/docs/CreatePricePlanMigrationRequest.md +32 -0
  59. data/docs/CreatePricePlanRequest.md +6 -2
  60. data/docs/CreatePricePlanV2Request.md +30 -0
  61. data/docs/CreatePricingRule.md +28 -0
  62. data/docs/CreateProposalRequest.md +40 -0
  63. data/docs/CreatePurchaseRequest.md +38 -0
  64. data/docs/CreateUsageMeterRequest.md +12 -6
  65. data/docs/Credit.md +50 -0
  66. data/docs/CreditBalanceResponse.md +28 -0
  67. data/docs/CreditDetailsResponse.md +52 -0
  68. data/docs/CreditGrantRateCard.md +34 -0
  69. data/docs/CreditGrantRevenueSummary.md +18 -0
  70. data/docs/CreditGrantType.md +15 -0
  71. data/docs/CreditRateDetails.md +20 -0
  72. data/docs/CreditRequest.md +34 -0
  73. data/docs/CreditTransaction.md +30 -0
  74. data/docs/CreditsApi.md +369 -0
  75. data/docs/CurrencyConfig.md +22 -0
  76. data/docs/CurrencyRateValue.md +20 -0
  77. data/docs/CurrencySlabRateDetail.md +24 -0
  78. data/docs/CustomInvoiceLineItem.md +28 -0
  79. data/docs/Customer.md +6 -2
  80. data/docs/CustomerPortalApi.md +77 -0
  81. data/docs/CustomersApi.md +85 -13
  82. data/docs/Dependency.md +22 -0
  83. data/docs/EditAccountScheduleRequest.md +18 -0
  84. data/docs/EditPricingScheduleRequest.md +18 -0
  85. data/docs/EnrichedField.md +22 -0
  86. data/docs/EnrichmentDependency.md +24 -0
  87. data/docs/Enrichments.md +20 -0
  88. data/docs/EntitlementOverageConfig.md +22 -0
  89. data/docs/EntitlementOverageConfigLookupCycle.md +20 -0
  90. data/docs/EntitlementOverageEntry.md +20 -0
  91. data/docs/EntitlementOverageRateCard.md +32 -0
  92. data/docs/EntitlementOverageRevenueSummary.md +18 -0
  93. data/docs/EntitlementsApi.md +599 -0
  94. data/docs/Event.md +11 -11
  95. data/docs/EventCorrectionInfo.md +32 -0
  96. data/docs/EventCorrectionRequest.md +18 -0
  97. data/docs/EventIngestionApi.md +16 -15
  98. data/docs/EventManagementApi.md +95 -21
  99. data/docs/EventPipelineInfo.md +15 -3
  100. data/docs/EventPipelineInfoAccount.md +3 -1
  101. data/docs/EventPipelineInfoEnrichments.md +22 -0
  102. data/docs/EventPipelineInfoFeatureDetails.md +24 -0
  103. data/docs/EventPipelineInfoPricePlans.md +28 -0
  104. data/docs/EventPipelineInfoRevenueDetails.md +22 -0
  105. data/docs/EventPipelineInfoUsageMeters.md +26 -0
  106. data/docs/EventSchema.md +11 -1
  107. data/docs/EventSchemaListData.md +11 -1
  108. data/docs/EventSchemasApi.md +82 -84
  109. data/docs/EventSchemasForFeature.md +20 -0
  110. data/docs/EventSource.md +20 -0
  111. data/docs/EventWithStatus.md +9 -1
  112. data/docs/EventWithStatusAndEventPipelineInfo.md +9 -1
  113. data/docs/EventsCorrectionResponse.md +18 -0
  114. data/docs/ExpiryType.md +15 -0
  115. data/docs/ExternalPaymentReference.md +26 -0
  116. data/docs/Feature.md +30 -0
  117. data/docs/FeatureApi.md +293 -0
  118. data/docs/FeatureConfig.md +22 -0
  119. data/docs/FeatureCreditEntry.md +32 -0
  120. data/docs/FeatureDetails.md +20 -0
  121. data/docs/FeatureListResponse.md +30 -0
  122. data/docs/FeaturePaginatedListData.md +22 -0
  123. data/docs/Field.md +26 -0
  124. data/docs/FileDownloadUrlResponse.md +18 -0
  125. data/docs/FileStorageApi.md +151 -0
  126. data/docs/FinalizeAccountSchedules.md +20 -0
  127. data/docs/FinalizePricePlanRequest.md +20 -0
  128. data/docs/FixedFeeRateCard.md +34 -0
  129. data/docs/FixedFeeRevenueSummary.md +18 -0
  130. data/docs/FixedFeeType.md +15 -0
  131. data/docs/GetCustomerPortalDelegateTokenRequest.md +24 -0
  132. data/docs/GetEntitlementValuesResponse.md +18 -0
  133. data/docs/GetEntitlementValuesResponseDataInner.md +20 -0
  134. data/docs/GetFeatureCreditEntriesPaginatedResponse.md +20 -0
  135. data/docs/GetFeatureCreditsResponse.md +28 -0
  136. data/docs/GetJobResponse.md +36 -0
  137. data/docs/GetLicenseUpdatesResponse.md +20 -0
  138. data/docs/GetMetricsRequest.md +4 -4
  139. data/docs/GetProposalResponse.md +62 -0
  140. data/docs/GetPurchaseResponse.md +62 -0
  141. data/docs/GrantDetails.md +24 -0
  142. data/docs/Incident.md +36 -0
  143. data/docs/IncidentsPaginatedResponse.md +20 -0
  144. data/docs/IngestEventRequest.md +1 -1
  145. data/docs/IngestEventResponse.md +12 -2
  146. data/docs/Invoice.md +68 -0
  147. data/docs/InvoiceDetails.md +28 -0
  148. data/docs/InvoiceDetailsAccount.md +24 -0
  149. data/docs/InvoiceDetailsCustomer.md +24 -0
  150. data/docs/InvoiceDetailsInvoiceGroup.md +28 -0
  151. data/docs/InvoiceDetailsOrganization.md +24 -0
  152. data/docs/InvoiceGroupAccountsPaginatedResponse.md +40 -0
  153. data/docs/InvoiceGroupDetails.md +30 -0
  154. data/docs/InvoiceGroupPaginatedResponse.md +20 -0
  155. data/docs/InvoiceGroups.md +36 -0
  156. data/docs/InvoiceGroupsApi.md +358 -0
  157. data/docs/InvoiceInfoInner.md +20 -0
  158. data/docs/InvoiceLineItem.md +34 -0
  159. data/docs/InvoiceSummary.md +58 -0
  160. data/docs/InvoiceTiming.md +15 -0
  161. data/docs/InvoicesApi.md +751 -0
  162. data/docs/InvoicesClass.md +15 -0
  163. data/docs/InvoicesStatus.md +15 -0
  164. data/docs/InvoicesType.md +15 -0
  165. data/docs/JobEntriesPaginatedResponse.md +22 -0
  166. data/docs/JobEntriesResponse.md +26 -0
  167. data/docs/JobsApi.md +361 -0
  168. data/docs/JobsPaginatedResponse.md +22 -0
  169. data/docs/JobsWithoutStatusInfoResponse.md +24 -0
  170. data/docs/LicenseEntriesConfig.md +24 -0
  171. data/docs/LicenseEntriesConfigLookupCycle.md +20 -0
  172. data/docs/LicenseEntriesConfigLookupRange.md +22 -0
  173. data/docs/LicenseEntry.md +22 -0
  174. data/docs/LicenseEntryDetailsUpdateRequest.md +22 -0
  175. data/docs/LicenseRateCard.md +40 -0
  176. data/docs/LicenseRateCardConfig.md +20 -0
  177. data/docs/LicenseUpdate.md +26 -0
  178. data/docs/LicenseUpdateRequest.md +30 -0
  179. data/docs/LicenseUpdateResponse.md +28 -0
  180. data/docs/LicensesApi.md +300 -0
  181. data/docs/ListCreditsResponse.md +20 -0
  182. data/docs/ListInvoicesResponse.md +20 -0
  183. data/docs/ListPaymentResponse.md +20 -0
  184. data/docs/ManageMiscellaneousChargesRequest.md +18 -0
  185. data/docs/MaxQuantityBreachAction.md +15 -0
  186. data/docs/MetricQuery.md +7 -5
  187. data/docs/MetricQueryFilterEntry.md +1 -1
  188. data/docs/MetricQueryResponse.md +1 -1
  189. data/docs/MetricsApi.md +7 -7
  190. data/docs/MigrationMode.md +15 -0
  191. data/docs/MinimumCommitment.md +20 -0
  192. data/docs/MiscellaneousCharge.md +26 -0
  193. data/docs/MiscellaneousChargesResponse.md +18 -0
  194. data/docs/ModelAlias.md +20 -0
  195. data/docs/NamedLicenseEntriesConfig.md +24 -0
  196. data/docs/NamedLicenseEntriesConfigLookupCycle.md +20 -0
  197. data/docs/NamedLicenseEntriesConfigLookupRange.md +22 -0
  198. data/docs/NamedLicenseEntry.md +24 -0
  199. data/docs/NamedLicenseUpdate.md +32 -0
  200. data/docs/NamedLicenseUpdatesPaginatedResponse.md +20 -0
  201. data/docs/Payment.md +38 -0
  202. data/docs/PaymentLineItemRecord.md +24 -0
  203. data/docs/PaymentsApi.md +227 -0
  204. data/docs/PlanOverride.md +6 -0
  205. data/docs/PreAction.md +20 -0
  206. data/docs/PriceExperimentationApi.md +147 -0
  207. data/docs/PricePlan.md +4 -0
  208. data/docs/PricePlanDetails.md +25 -3
  209. data/docs/PricePlanDetailsConfig.md +28 -0
  210. data/docs/PricePlanDetailsOverride.md +16 -2
  211. data/docs/PricePlanInfo.md +20 -0
  212. data/docs/PricePlanListData.md +10 -2
  213. data/docs/PricePlanMigrationConfig.md +30 -0
  214. data/docs/PricePlanType.md +15 -0
  215. data/docs/PricePlanV2.md +42 -0
  216. data/docs/PricePlanV2Api.md +953 -0
  217. data/docs/PricePlanV2PaginatedResponse.md +20 -0
  218. data/docs/PricePlansApi.md +202 -52
  219. data/docs/PricingCycleConfig.md +6 -6
  220. data/docs/PricingCycleConfigStartOffset.md +1 -1
  221. data/docs/PricingCycleInterval.md +15 -0
  222. data/docs/PricingRule.md +32 -0
  223. data/docs/PricingRuleAction.md +26 -0
  224. data/docs/PricingRuleChangesLog.md +30 -0
  225. data/docs/PricingRuleInfo.md +24 -0
  226. data/docs/PricingRuleTiming.md +15 -0
  227. data/docs/PricingRulesApi.md +83 -0
  228. data/docs/PricingRulesLog.md +28 -0
  229. data/docs/PricingRulesLogsPaginatedResponse.md +18 -0
  230. data/docs/PricingRulesPaginatedResponse.md +18 -0
  231. data/docs/PricingRulesValues.md +20 -0
  232. data/docs/PricingSchedule.md +9 -1
  233. data/docs/PricingSchedulePaginatedResponse.md +22 -0
  234. data/docs/PricingScheduleWithPricePlanId.md +36 -0
  235. data/docs/Proposal.md +62 -0
  236. data/docs/ProposalsListResponse.md +40 -0
  237. data/docs/ProposalsPaginatedResponse.md +22 -0
  238. data/docs/ProratedRefundMode.md +15 -0
  239. data/docs/ProrationConfig.md +22 -0
  240. data/docs/ProrationConfigCustomConfig.md +22 -0
  241. data/docs/ProrationConfigLookupCycleConfig.md +22 -0
  242. data/docs/Purchase.md +58 -0
  243. data/docs/PurchaseFeatureDetails.md +30 -0
  244. data/docs/PurchaseListResponse.md +46 -0
  245. data/docs/PurchasePaginatedListData.md +22 -0
  246. data/docs/PurchasePlanOverride.md +22 -0
  247. data/docs/PurchaseStatus.md +15 -0
  248. data/docs/PurchaseType.md +15 -0
  249. data/docs/QueryColumn.md +26 -0
  250. data/docs/QueryFilter.md +22 -0
  251. data/docs/QueryFunction.md +20 -0
  252. data/docs/QueryInput.md +28 -0
  253. data/docs/QueryInputSortInner.md +20 -0
  254. data/docs/RateCard.md +23 -5
  255. data/docs/RateCardData.md +28 -0
  256. data/docs/RateCardDetails.md +30 -0
  257. data/docs/RateCardOperation.md +22 -0
  258. data/docs/RateCardPaginatedResponse.md +20 -0
  259. data/docs/RatePlan.md +20 -0
  260. data/docs/RateValue.md +22 -0
  261. data/docs/RecurrenceConfig.md +20 -0
  262. data/docs/RemoveAccountAliasRequest.md +20 -0
  263. data/docs/RemoveAccountAliasesRequest.md +4 -2
  264. data/docs/Report.md +38 -0
  265. data/docs/ReportStatus.md +15 -0
  266. data/docs/ReportType.md +15 -0
  267. data/docs/ReportsApi.md +83 -0
  268. data/docs/ReportsPaginatedResponse.md +20 -0
  269. data/docs/RevenueInfo.md +42 -0
  270. data/docs/RevenueInfoV2.md +32 -0
  271. data/docs/RevenueSummaryWithMetadata.md +24 -0
  272. data/docs/ScheduleInfo.md +22 -0
  273. data/docs/SchedulesApi.md +667 -0
  274. data/docs/SchedulesPaginatedResponse.md +22 -0
  275. data/docs/Setting.md +30 -0
  276. data/docs/SettingDataType.md +15 -0
  277. data/docs/SettingPaginatedResponse.md +22 -0
  278. data/docs/SettingsApi.md +301 -0
  279. data/docs/Slab.md +24 -0
  280. data/docs/SlabDetail.md +26 -0
  281. data/docs/SlabRate.md +22 -0
  282. data/docs/SlabRevenue.md +22 -0
  283. data/docs/SlabRevenueMetadata.md +22 -0
  284. data/docs/SlabRevenueSummary.md +24 -0
  285. data/docs/SlabRevenueWithMetadata.md +24 -0
  286. data/docs/TokenResponse.md +18 -0
  287. data/docs/TopupWalletRequest.md +18 -0
  288. data/docs/UpdateAccountRequest.md +18 -2
  289. data/docs/UpdateAccountScheduleV2Request.md +26 -0
  290. data/docs/UpdateAddOnRequest.md +20 -0
  291. data/docs/UpdateAlertRequest.md +26 -0
  292. data/docs/UpdateCustomerRequest.md +5 -5
  293. data/docs/UpdateEventSchemaRequest.md +9 -3
  294. data/docs/UpdateFeatureCreditsRequest.md +20 -0
  295. data/docs/UpdateFeatureRequest.md +22 -0
  296. data/docs/UpdateIncidentStatusRequest.md +18 -0
  297. data/docs/UpdateInvoiceGroupAccounts.md +18 -0
  298. data/docs/UpdateInvoiceRequest.md +26 -0
  299. data/docs/UpdatePricePlanRequest.md +8 -2
  300. data/docs/UpdatePricePlanV2Request.md +22 -0
  301. data/docs/UpdatePricingRulesRequest.md +18 -0
  302. data/docs/UpdatePricingScheduleRequest.md +30 -0
  303. data/docs/UpdatePricingScheduleRequestWithActions.md +32 -0
  304. data/docs/UpdatePricingScheduleResponse.md +22 -0
  305. data/docs/UpdateProposalStatus.md +18 -0
  306. data/docs/UpdateSettingRequest.md +22 -0
  307. data/docs/UpdateUsageMeterRequest.md +13 -5
  308. data/docs/UpdateWalletRequest.md +20 -0
  309. data/docs/UsageConfig.md +24 -0
  310. data/docs/UsageConfigLookupCycle.md +20 -0
  311. data/docs/UsageConfigLookupRange.md +22 -0
  312. data/docs/UsageCycleInterval.md +15 -0
  313. data/docs/UsageLookupRange.md +20 -0
  314. data/docs/UsageMeter.md +12 -2
  315. data/docs/UsageMeterAggregation.md +15 -0
  316. data/docs/UsageMeterFilterEntry.md +20 -0
  317. data/docs/UsageMetersApi.md +64 -74
  318. data/docs/UsageRateCard.md +28 -0
  319. data/docs/ValidateEntitlementValueRequest.md +18 -0
  320. data/docs/ValidatedEntityError.md +24 -0
  321. data/docs/ValidatedEntityErrorsPaginatedResponse.md +20 -0
  322. data/docs/VersionsToMigrate.md +15 -0
  323. data/docs/WalletApi.md +301 -0
  324. data/docs/WalletBalanceResponse.md +40 -0
  325. data/docs/WalletEntriesPaginatedResponse.md +20 -0
  326. data/docs/WalletEntry.md +34 -0
  327. data/docs/WalletStatus.md +15 -0
  328. data/docs/WalletTopupDetails.md +20 -0
  329. data/lib/togai_client/api/accounts_api.rb +881 -220
  330. data/lib/togai_client/api/add_ons_api.rb +372 -0
  331. data/lib/togai_client/api/alerts_api.rb +527 -0
  332. data/lib/togai_client/api/aliases_api.rb +279 -0
  333. data/lib/togai_client/api/authentication_api.rb +79 -0
  334. data/lib/togai_client/api/credits_api.rb +351 -0
  335. data/lib/togai_client/api/customer_portal_api.rb +90 -0
  336. data/lib/togai_client/api/customers_api.rb +96 -18
  337. data/lib/togai_client/api/entitlements_api.rb +655 -0
  338. data/lib/togai_client/api/event_ingestion_api.rb +15 -15
  339. data/lib/togai_client/api/event_management_api.rb +97 -21
  340. data/lib/togai_client/api/event_schemas_api.rb +104 -107
  341. data/lib/togai_client/api/feature_api.rb +298 -0
  342. data/lib/togai_client/api/file_storage_api.rb +151 -0
  343. data/lib/togai_client/api/invoice_groups_api.rb +370 -0
  344. data/lib/togai_client/api/invoices_api.rb +705 -0
  345. data/lib/togai_client/api/jobs_api.rb +337 -0
  346. data/lib/togai_client/api/licenses_api.rb +282 -0
  347. data/lib/togai_client/api/metrics_api.rb +6 -6
  348. data/lib/togai_client/api/payments_api.rb +215 -0
  349. data/lib/togai_client/api/price_experimentation_api.rb +158 -0
  350. data/lib/togai_client/api/price_plan_v2_api.rb +960 -0
  351. data/lib/togai_client/api/price_plans_api.rb +214 -62
  352. data/lib/togai_client/api/pricing_rules_api.rb +106 -0
  353. data/lib/togai_client/api/reports_api.rb +92 -0
  354. data/lib/togai_client/api/schedules_api.rb +685 -0
  355. data/lib/togai_client/api/settings_api.rb +302 -0
  356. data/lib/togai_client/api/usage_meters_api.rb +97 -153
  357. data/lib/togai_client/api/wallet_api.rb +310 -0
  358. data/lib/togai_client/api_client.rb +25 -23
  359. data/lib/togai_client/api_error.rb +2 -1
  360. data/lib/togai_client/configuration.rb +51 -18
  361. data/lib/togai_client/models/account.rb +260 -28
  362. data/lib/togai_client/models/account_alias.rb +329 -0
  363. data/lib/togai_client/models/account_aliases.rb +23 -67
  364. data/lib/togai_client/models/account_aliases_paginated_response.rb +233 -0
  365. data/lib/togai_client/models/account_paginated_response.rb +14 -19
  366. data/lib/togai_client/models/account_schedule.rb +375 -0
  367. data/lib/togai_client/models/accounts_billing_information.rb +228 -0
  368. data/lib/togai_client/models/activate_price_plan_request.rb +235 -0
  369. data/lib/togai_client/models/add_account_aliases_request.rb +64 -25
  370. data/lib/togai_client/models/add_on.rb +395 -0
  371. data/lib/togai_client/models/add_on_paginated_response.rb +241 -0
  372. data/lib/togai_client/models/add_on_type.rb +42 -0
  373. data/lib/togai_client/models/address.rb +276 -0
  374. data/lib/togai_client/models/alert.rb +391 -0
  375. data/lib/togai_client/models/alert_status.rb +40 -0
  376. data/lib/togai_client/models/alert_template.rb +343 -0
  377. data/lib/togai_client/models/alert_templates_paginated_response.rb +232 -0
  378. data/lib/togai_client/models/alerts_paginated_response.rb +232 -0
  379. data/lib/togai_client/models/alias_paginated_response.rb +226 -0
  380. data/lib/togai_client/models/association_config.rb +244 -0
  381. data/lib/togai_client/models/attribute.rb +327 -0
  382. data/lib/togai_client/models/base_success_response.rb +16 -19
  383. data/lib/togai_client/models/billing_config.rb +225 -0
  384. data/lib/togai_client/models/billing_entitlement_rate_card.rb +370 -0
  385. data/lib/togai_client/models/billing_entitlement_revenue_summary.rb +221 -0
  386. data/lib/togai_client/models/bulk_rate_card_operations_request.rb +224 -0
  387. data/lib/togai_client/models/bulk_rate_card_operations_response.rb +224 -0
  388. data/lib/togai_client/models/calculate_revenue_request.rb +297 -0
  389. data/lib/togai_client/models/calculate_revenue_response.rb +264 -0
  390. data/lib/togai_client/models/calculate_revenue_response_v2.rb +248 -0
  391. data/lib/togai_client/models/computation.rb +49 -27
  392. data/lib/togai_client/models/create_account_alias_request.rb +270 -0
  393. data/lib/togai_client/models/create_account_request.rb +306 -27
  394. data/lib/togai_client/models/create_account_request_without_customer_id.rb +551 -0
  395. data/lib/togai_client/models/create_add_on_request.rb +309 -0
  396. data/lib/togai_client/models/create_alert_request.rb +327 -0
  397. data/lib/togai_client/models/create_alias_request.rb +241 -0
  398. data/lib/togai_client/models/create_bulk_alias_request.rb +252 -0
  399. data/lib/togai_client/models/create_credit_request.rb +224 -0
  400. data/lib/togai_client/models/create_credit_response.rb +223 -0
  401. data/lib/togai_client/models/create_custom_invoice_request.rb +411 -0
  402. data/lib/togai_client/models/create_customer_contact_request.rb +402 -0
  403. data/lib/togai_client/models/create_customer_contact_response.rb +435 -0
  404. data/lib/togai_client/models/create_customer_request.rb +69 -47
  405. data/lib/togai_client/models/create_customer_response.rb +81 -40
  406. data/lib/togai_client/models/create_entity_setting.rb +308 -0
  407. data/lib/togai_client/models/create_event_schema_request.rb +70 -24
  408. data/lib/togai_client/models/create_feature_request.rb +309 -0
  409. data/lib/togai_client/models/create_invoice_group_request.rb +344 -0
  410. data/lib/togai_client/models/create_payment_request.rb +394 -0
  411. data/lib/togai_client/models/create_price_plan_details.rb +339 -0
  412. data/lib/togai_client/models/create_price_plan_details_override.rb +319 -0
  413. data/lib/togai_client/models/create_price_plan_migration_request.rb +385 -0
  414. data/lib/togai_client/models/create_price_plan_request.rb +69 -24
  415. data/lib/togai_client/models/create_price_plan_v2_request.rb +367 -0
  416. data/lib/togai_client/models/create_pricing_rule.rb +313 -0
  417. data/lib/togai_client/models/create_proposal_request.rb +371 -0
  418. data/lib/togai_client/models/create_purchase_request.rb +330 -0
  419. data/lib/togai_client/models/create_usage_meter_request.rb +85 -42
  420. data/lib/togai_client/models/credit.rb +490 -0
  421. data/lib/togai_client/models/credit_balance_response.rb +302 -0
  422. data/lib/togai_client/models/credit_details_response.rb +508 -0
  423. data/lib/togai_client/models/credit_grant_rate_card.rb +332 -0
  424. data/lib/togai_client/models/credit_grant_revenue_summary.rb +221 -0
  425. data/lib/togai_client/models/credit_grant_type.rb +40 -0
  426. data/lib/togai_client/models/credit_rate_details.rb +262 -0
  427. data/lib/togai_client/models/credit_request.rb +330 -0
  428. data/lib/togai_client/models/credit_transaction.rb +357 -0
  429. data/lib/togai_client/models/currency_config.rb +296 -0
  430. data/lib/togai_client/models/currency_rate_value.rb +237 -0
  431. data/lib/togai_client/models/currency_slab_rate_detail.rb +287 -0
  432. data/lib/togai_client/models/custom_invoice_line_item.rb +260 -0
  433. data/lib/togai_client/models/customer.rb +68 -26
  434. data/lib/togai_client/models/customer_paginated_response.rb +14 -19
  435. data/lib/togai_client/models/dependency.rb +287 -0
  436. data/lib/togai_client/models/dimensions_schema.rb +16 -19
  437. data/lib/togai_client/models/edit_account_schedule_request.rb +252 -0
  438. data/lib/togai_client/models/edit_pricing_schedule_request.rb +252 -0
  439. data/lib/togai_client/models/enriched_field.rb +288 -0
  440. data/lib/togai_client/models/enrichment_dependency.rb +297 -0
  441. data/lib/togai_client/models/enrichments.rb +234 -0
  442. data/lib/togai_client/models/entitlement_overage_config.rb +278 -0
  443. data/lib/togai_client/models/entitlement_overage_config_lookup_cycle.rb +258 -0
  444. data/lib/togai_client/models/entitlement_overage_entry.rb +256 -0
  445. data/lib/togai_client/models/entitlement_overage_rate_card.rb +324 -0
  446. data/lib/togai_client/models/entitlement_overage_revenue_summary.rb +221 -0
  447. data/lib/togai_client/models/error_response.rb +16 -19
  448. data/lib/togai_client/models/event.rb +104 -84
  449. data/lib/togai_client/models/event_attribute_schema.rb +22 -21
  450. data/lib/togai_client/models/event_correction_info.rb +384 -0
  451. data/lib/togai_client/models/event_correction_request.rb +215 -0
  452. data/lib/togai_client/models/event_pipeline_info.rb +76 -25
  453. data/lib/togai_client/models/event_pipeline_info_account.rb +31 -23
  454. data/lib/togai_client/models/event_pipeline_info_customer.rb +18 -19
  455. data/lib/togai_client/models/event_pipeline_info_enrichments.rb +238 -0
  456. data/lib/togai_client/models/event_pipeline_info_event_schema.rb +18 -19
  457. data/lib/togai_client/models/event_pipeline_info_feature_details.rb +255 -0
  458. data/lib/togai_client/models/event_pipeline_info_price_plans.rb +306 -0
  459. data/lib/togai_client/models/event_pipeline_info_revenue_details.rb +253 -0
  460. data/lib/togai_client/models/event_pipeline_info_usage_meters.rb +312 -0
  461. data/lib/togai_client/models/event_schema.rb +89 -29
  462. data/lib/togai_client/models/event_schema_list_data.rb +90 -31
  463. data/lib/togai_client/models/event_schema_list_paginated_response.rb +14 -19
  464. data/lib/togai_client/models/event_schema_versions_response.rb +16 -19
  465. data/lib/togai_client/models/event_schemas_for_feature.rb +259 -0
  466. data/lib/togai_client/models/event_source.rb +278 -0
  467. data/lib/togai_client/models/event_with_status.rb +94 -23
  468. data/lib/togai_client/models/event_with_status_and_event_pipeline_info.rb +100 -23
  469. data/lib/togai_client/models/events_correction_response.rb +252 -0
  470. data/lib/togai_client/models/expiry_type.rb +41 -0
  471. data/lib/togai_client/models/external_payment_reference.rb +309 -0
  472. data/lib/togai_client/models/feature.rb +365 -0
  473. data/lib/togai_client/models/feature_config.rb +266 -0
  474. data/lib/togai_client/models/feature_credit_entry.rb +387 -0
  475. data/lib/togai_client/models/feature_details.rb +238 -0
  476. data/lib/togai_client/models/feature_list_response.rb +343 -0
  477. data/lib/togai_client/models/feature_paginated_list_data.rb +234 -0
  478. data/lib/togai_client/models/field.rb +331 -0
  479. data/lib/togai_client/models/file_download_url_response.rb +221 -0
  480. data/lib/togai_client/models/finalize_account_schedules.rb +228 -0
  481. data/lib/togai_client/models/finalize_price_plan_request.rb +246 -0
  482. data/lib/togai_client/models/fixed_fee_rate_card.rb +354 -0
  483. data/lib/togai_client/models/fixed_fee_revenue_summary.rb +221 -0
  484. data/lib/togai_client/models/fixed_fee_type.rb +40 -0
  485. data/lib/togai_client/models/get_customer_portal_delegate_token_request.rb +255 -0
  486. data/lib/togai_client/models/get_entitlement_values_response.rb +223 -0
  487. data/lib/togai_client/models/get_entitlement_values_response_data_inner.rb +239 -0
  488. data/lib/togai_client/models/get_event_response.rb +16 -19
  489. data/lib/togai_client/models/get_events_response.rb +21 -20
  490. data/lib/togai_client/models/get_feature_credit_entries_paginated_response.rb +225 -0
  491. data/lib/togai_client/models/get_feature_credits_response.rb +333 -0
  492. data/lib/togai_client/models/get_job_response.rb +399 -0
  493. data/lib/togai_client/models/get_license_updates_response.rb +252 -0
  494. data/lib/togai_client/models/get_metrics_request.rb +22 -19
  495. data/lib/togai_client/models/get_metrics_response.rb +16 -19
  496. data/lib/togai_client/models/get_proposal_response.rb +536 -0
  497. data/lib/togai_client/models/get_purchase_response.rb +519 -0
  498. data/lib/togai_client/models/grant_details.rb +299 -0
  499. data/lib/togai_client/models/incident.rb +347 -0
  500. data/lib/togai_client/models/incidents_paginated_response.rb +232 -0
  501. data/lib/togai_client/models/ingest_batch_event_request.rb +21 -24
  502. data/lib/togai_client/models/ingest_event_request.rb +21 -19
  503. data/lib/togai_client/models/ingest_event_response.rb +76 -42
  504. data/lib/togai_client/models/ingestion_status.rb +23 -22
  505. data/lib/togai_client/models/invoice.rb +571 -0
  506. data/lib/togai_client/models/invoice_details.rb +259 -0
  507. data/lib/togai_client/models/invoice_details_account.rb +269 -0
  508. data/lib/togai_client/models/invoice_details_customer.rb +255 -0
  509. data/lib/togai_client/models/invoice_details_invoice_group.rb +294 -0
  510. data/lib/togai_client/models/invoice_details_organization.rb +264 -0
  511. data/lib/togai_client/models/invoice_group_accounts_paginated_response.rb +430 -0
  512. data/lib/togai_client/models/invoice_group_details.rb +330 -0
  513. data/lib/togai_client/models/invoice_group_paginated_response.rb +225 -0
  514. data/lib/togai_client/models/invoice_groups.rb +403 -0
  515. data/lib/togai_client/models/invoice_info_inner.rb +239 -0
  516. data/lib/togai_client/models/invoice_line_item.rb +381 -0
  517. data/lib/togai_client/models/invoice_summary.rb +520 -0
  518. data/lib/togai_client/models/invoice_timing.rb +41 -0
  519. data/lib/togai_client/models/invoices_class.rb +41 -0
  520. data/lib/togai_client/models/invoices_status.rb +47 -0
  521. data/lib/togai_client/models/invoices_type.rb +44 -0
  522. data/lib/togai_client/models/job_entries_paginated_response.rb +234 -0
  523. data/lib/togai_client/models/job_entries_response.rb +314 -0
  524. data/lib/togai_client/models/jobs_paginated_response.rb +234 -0
  525. data/lib/togai_client/models/jobs_without_status_info_response.rb +269 -0
  526. data/lib/togai_client/models/license_entries_config.rb +287 -0
  527. data/lib/togai_client/models/license_entries_config_lookup_cycle.rb +251 -0
  528. data/lib/togai_client/models/license_entries_config_lookup_range.rb +273 -0
  529. data/lib/togai_client/models/license_entry.rb +272 -0
  530. data/lib/togai_client/models/license_entry_details_update_request.rb +277 -0
  531. data/lib/togai_client/models/license_rate_card.rb +388 -0
  532. data/lib/togai_client/models/license_rate_card_config.rb +246 -0
  533. data/lib/togai_client/models/license_update.rb +320 -0
  534. data/lib/togai_client/models/license_update_request.rb +377 -0
  535. data/lib/togai_client/models/license_update_response.rb +342 -0
  536. data/lib/togai_client/models/list_credits_response.rb +280 -0
  537. data/lib/togai_client/models/list_invoices_response.rb +280 -0
  538. data/lib/togai_client/models/list_payment_response.rb +280 -0
  539. data/lib/togai_client/models/manage_miscellaneous_charges_request.rb +224 -0
  540. data/lib/togai_client/models/max_quantity_breach_action.rb +39 -0
  541. data/lib/togai_client/models/metric_data_points.rb +28 -29
  542. data/lib/togai_client/models/metric_data_points_grouped_by.rb +18 -19
  543. data/lib/togai_client/models/metric_name.rb +11 -4
  544. data/lib/togai_client/models/metric_query.rb +45 -24
  545. data/lib/togai_client/models/metric_query_filter_entry.rb +19 -20
  546. data/lib/togai_client/models/metric_query_response.rb +42 -19
  547. data/lib/togai_client/models/migration_mode.rb +44 -0
  548. data/lib/togai_client/models/minimum_commitment.rb +258 -0
  549. data/lib/togai_client/models/miscellaneous_charge.rb +265 -0
  550. data/lib/togai_client/models/miscellaneous_charges_response.rb +224 -0
  551. data/lib/togai_client/models/model_alias.rb +238 -0
  552. data/lib/togai_client/models/named_license_entries_config.rb +287 -0
  553. data/lib/togai_client/models/named_license_entries_config_lookup_cycle.rb +251 -0
  554. data/lib/togai_client/models/named_license_entries_config_lookup_range.rb +273 -0
  555. data/lib/togai_client/models/named_license_entry.rb +281 -0
  556. data/lib/togai_client/models/named_license_update.rb +396 -0
  557. data/lib/togai_client/models/named_license_updates_paginated_response.rb +252 -0
  558. data/lib/togai_client/models/pagination_options.rb +14 -19
  559. data/lib/togai_client/models/payment.rb +380 -0
  560. data/lib/togai_client/models/payment_line_item_record.rb +290 -0
  561. data/lib/togai_client/models/plan_override.rb +64 -20
  562. data/lib/togai_client/models/pre_action.rb +269 -0
  563. data/lib/togai_client/models/price_plan.rb +59 -21
  564. data/lib/togai_client/models/price_plan_details.rb +182 -45
  565. data/lib/togai_client/models/price_plan_details_config.rb +344 -0
  566. data/lib/togai_client/models/price_plan_details_override.rb +135 -35
  567. data/lib/togai_client/models/price_plan_info.rb +230 -0
  568. data/lib/togai_client/models/price_plan_list_data.rb +116 -25
  569. data/lib/togai_client/models/price_plan_migration_config.rb +368 -0
  570. data/lib/togai_client/models/price_plan_paginated_response.rb +16 -19
  571. data/lib/togai_client/models/price_plan_type.rb +40 -0
  572. data/lib/togai_client/models/price_plan_v2.rb +519 -0
  573. data/lib/togai_client/models/price_plan_v2_paginated_response.rb +233 -0
  574. data/lib/togai_client/models/price_type.rb +7 -4
  575. data/lib/togai_client/models/pricing_cycle_config.rb +34 -67
  576. data/lib/togai_client/models/pricing_cycle_config_start_offset.rb +20 -21
  577. data/lib/togai_client/models/pricing_cycle_interval.rb +43 -0
  578. data/lib/togai_client/models/pricing_model.rb +7 -4
  579. data/lib/togai_client/models/pricing_rule.rb +382 -0
  580. data/lib/togai_client/models/pricing_rule_action.rb +293 -0
  581. data/lib/togai_client/models/pricing_rule_changes_log.rb +290 -0
  582. data/lib/togai_client/models/pricing_rule_info.rb +249 -0
  583. data/lib/togai_client/models/pricing_rule_timing.rb +40 -0
  584. data/lib/togai_client/models/pricing_rules_log.rb +318 -0
  585. data/lib/togai_client/models/pricing_rules_logs_paginated_response.rb +224 -0
  586. data/lib/togai_client/models/pricing_rules_paginated_response.rb +223 -0
  587. data/lib/togai_client/models/pricing_rules_values.rb +223 -0
  588. data/lib/togai_client/models/pricing_schedule.rb +100 -23
  589. data/lib/togai_client/models/pricing_schedule_paginated_response.rb +234 -0
  590. data/lib/togai_client/models/pricing_schedule_with_price_plan_id.rb +365 -0
  591. data/lib/togai_client/models/proposal.rb +536 -0
  592. data/lib/togai_client/models/proposals_list_response.rb +390 -0
  593. data/lib/togai_client/models/proposals_paginated_response.rb +234 -0
  594. data/lib/togai_client/models/prorated_refund_mode.rb +42 -0
  595. data/lib/togai_client/models/proration_config.rb +275 -0
  596. data/lib/togai_client/models/proration_config_custom_config.rb +254 -0
  597. data/lib/togai_client/models/proration_config_lookup_cycle_config.rb +261 -0
  598. data/lib/togai_client/models/purchase.rb +493 -0
  599. data/lib/togai_client/models/purchase_feature_details.rb +317 -0
  600. data/lib/togai_client/models/purchase_list_response.rb +393 -0
  601. data/lib/togai_client/models/purchase_paginated_list_data.rb +234 -0
  602. data/lib/togai_client/models/purchase_plan_override.rb +296 -0
  603. data/lib/togai_client/models/purchase_status.rb +46 -0
  604. data/lib/togai_client/models/purchase_type.rb +42 -0
  605. data/lib/togai_client/models/query_column.rb +259 -0
  606. data/lib/togai_client/models/query_filter.rb +255 -0
  607. data/lib/togai_client/models/query_function.rb +239 -0
  608. data/lib/togai_client/models/query_input.rb +295 -0
  609. data/lib/togai_client/models/query_input_sort_inner.rb +237 -0
  610. data/lib/togai_client/models/rate_card.rb +342 -38
  611. data/lib/togai_client/models/rate_card_data.rb +370 -0
  612. data/lib/togai_client/models/rate_card_details.rb +269 -0
  613. data/lib/togai_client/models/rate_card_operation.rb +302 -0
  614. data/lib/togai_client/models/rate_card_paginated_response.rb +233 -0
  615. data/lib/togai_client/models/rate_card_type.rb +13 -5
  616. data/lib/togai_client/models/rate_plan.rb +282 -0
  617. data/lib/togai_client/models/rate_value.rb +270 -0
  618. data/lib/togai_client/models/recurrence_config.rb +225 -0
  619. data/lib/togai_client/models/remove_account_alias_request.rb +232 -0
  620. data/lib/togai_client/models/remove_account_aliases_request.rb +30 -49
  621. data/lib/togai_client/models/report.rb +362 -0
  622. data/lib/togai_client/models/report_status.rb +43 -0
  623. data/lib/togai_client/models/report_type.rb +41 -0
  624. data/lib/togai_client/models/reports_paginated_response.rb +226 -0
  625. data/lib/togai_client/models/revenue_info.rb +335 -0
  626. data/lib/togai_client/models/revenue_info_v2.rb +297 -0
  627. data/lib/togai_client/models/revenue_summary_with_metadata.rb +255 -0
  628. data/lib/togai_client/models/schedule_info.rb +250 -0
  629. data/lib/togai_client/models/schedules_paginated_response.rb +241 -0
  630. data/lib/togai_client/models/setting.rb +340 -0
  631. data/lib/togai_client/models/setting_data_type.rb +42 -0
  632. data/lib/togai_client/models/setting_paginated_response.rb +234 -0
  633. data/lib/togai_client/models/slab.rb +315 -0
  634. data/lib/togai_client/models/slab_detail.rb +298 -0
  635. data/lib/togai_client/models/slab_rate.rb +249 -0
  636. data/lib/togai_client/models/slab_revenue.rb +281 -0
  637. data/lib/togai_client/models/slab_revenue_metadata.rb +232 -0
  638. data/lib/togai_client/models/slab_revenue_summary.rb +262 -0
  639. data/lib/togai_client/models/slab_revenue_with_metadata.rb +299 -0
  640. data/lib/togai_client/models/token_response.rb +221 -0
  641. data/lib/togai_client/models/topup_wallet_request.rb +222 -0
  642. data/lib/togai_client/models/update_account_request.rb +196 -26
  643. data/lib/togai_client/models/update_account_schedule_v2_request.rb +303 -0
  644. data/lib/togai_client/models/update_add_on_request.rb +264 -0
  645. data/lib/togai_client/models/update_alert_request.rb +274 -0
  646. data/lib/togai_client/models/update_customer_request.rb +36 -49
  647. data/lib/togai_client/models/update_event_schema_request.rb +68 -38
  648. data/lib/togai_client/models/update_feature_credits_request.rb +225 -0
  649. data/lib/togai_client/models/update_feature_request.rb +295 -0
  650. data/lib/togai_client/models/update_incident_status_request.rb +256 -0
  651. data/lib/togai_client/models/update_invoice_group_accounts.rb +252 -0
  652. data/lib/togai_client/models/update_invoice_request.rb +317 -0
  653. data/lib/togai_client/models/update_price_plan_request.rb +81 -25
  654. data/lib/togai_client/models/update_price_plan_v2_request.rb +266 -0
  655. data/lib/togai_client/models/update_pricing_rules_request.rb +216 -0
  656. data/lib/togai_client/models/update_pricing_schedule_request.rb +323 -0
  657. data/lib/togai_client/models/update_pricing_schedule_request_with_actions.rb +343 -0
  658. data/lib/togai_client/models/update_pricing_schedule_response.rb +276 -0
  659. data/lib/togai_client/models/update_proposal_status.rb +256 -0
  660. data/lib/togai_client/models/update_setting_request.rb +255 -0
  661. data/lib/togai_client/models/update_usage_meter_request.rb +105 -50
  662. data/lib/togai_client/models/update_wallet_request.rb +246 -0
  663. data/lib/togai_client/models/usage_config.rb +287 -0
  664. data/lib/togai_client/models/usage_config_lookup_cycle.rb +250 -0
  665. data/lib/togai_client/models/usage_config_lookup_range.rb +273 -0
  666. data/lib/togai_client/models/usage_cycle_interval.rb +43 -0
  667. data/lib/togai_client/models/usage_lookup_range.rb +238 -0
  668. data/lib/togai_client/models/usage_meter.rb +156 -39
  669. data/lib/togai_client/models/usage_meter_aggregation.rb +40 -0
  670. data/lib/togai_client/models/usage_meter_filter_entry.rb +238 -0
  671. data/lib/togai_client/models/usage_meter_paginated_response.rb +14 -19
  672. data/lib/togai_client/models/usage_rate_card.rb +285 -0
  673. data/lib/togai_client/models/validate_entitlement_value_request.rb +222 -0
  674. data/lib/togai_client/models/validated_entity_error.rb +273 -0
  675. data/lib/togai_client/models/validated_entity_errors_paginated_response.rb +232 -0
  676. data/lib/togai_client/models/versions_to_migrate.rb +40 -0
  677. data/lib/togai_client/models/wallet_balance_response.rb +388 -0
  678. data/lib/togai_client/models/wallet_entries_paginated_response.rb +280 -0
  679. data/lib/togai_client/models/wallet_entry.rb +421 -0
  680. data/lib/togai_client/models/wallet_status.rb +40 -0
  681. data/lib/togai_client/models/wallet_topup_details.rb +233 -0
  682. data/lib/togai_client/version.rb +2 -2
  683. data/lib/togai_client.rb +279 -21
  684. data/spec/spec_helper.rb +1 -1
  685. data/togai_client.gemspec +4 -3
  686. metadata +561 -5
@@ -0,0 +1,508 @@
1
+ =begin
2
+ #Togai Apis
3
+
4
+ #APIs for Togai App
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: engg@togai.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.10.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module TogaiClient
17
+ class CreditDetailsResponse
18
+ attr_accessor :account_id
19
+
20
+ attr_accessor :purpose
21
+
22
+ # List of entity ids for which the credit is applicable. If null or empty, the credit is applicable to all ids. This list can accept special values like: - ALL_USAGE_METER_RATE_CARDS: To apply the credit to all usage meter rate cards - ALL_FIXED_FEE_RATE_CARDS: To apply the credit to all fixed fee rate cards
23
+ attr_accessor :applicable_entity_ids
24
+
25
+ attr_accessor :effective_from
26
+
27
+ attr_accessor :effective_until
28
+
29
+ attr_accessor :credit_amount
30
+
31
+ attr_accessor :priority
32
+
33
+ # The entity through which the credit has been granted
34
+ attr_accessor :grantor_id
35
+
36
+ # The idempotency key for uniqueness of the credit record
37
+ attr_accessor :idempotency_key
38
+
39
+ # Identifier of credits
40
+ attr_accessor :id
41
+
42
+ attr_accessor :customer_id
43
+
44
+ attr_accessor :status
45
+
46
+ attr_accessor :credit_unit
47
+
48
+ attr_accessor :hold_amount
49
+
50
+ attr_accessor :consumed_amount
51
+
52
+ attr_accessor :created_at
53
+
54
+ attr_accessor :updated_at
55
+
56
+ attr_accessor :transactions
57
+
58
+ class EnumAttributeValidator
59
+ attr_reader :datatype
60
+ attr_reader :allowable_values
61
+
62
+ def initialize(datatype, allowable_values)
63
+ @allowable_values = allowable_values.map do |value|
64
+ case datatype.to_s
65
+ when /Integer/i
66
+ value.to_i
67
+ when /Float/i
68
+ value.to_f
69
+ else
70
+ value
71
+ end
72
+ end
73
+ end
74
+
75
+ def valid?(value)
76
+ !value || allowable_values.include?(value)
77
+ end
78
+ end
79
+
80
+ # Attribute mapping from ruby-style variable name to JSON key.
81
+ def self.attribute_map
82
+ {
83
+ :'account_id' => :'accountId',
84
+ :'purpose' => :'purpose',
85
+ :'applicable_entity_ids' => :'applicableEntityIds',
86
+ :'effective_from' => :'effectiveFrom',
87
+ :'effective_until' => :'effectiveUntil',
88
+ :'credit_amount' => :'creditAmount',
89
+ :'priority' => :'priority',
90
+ :'grantor_id' => :'grantorId',
91
+ :'idempotency_key' => :'idempotencyKey',
92
+ :'id' => :'id',
93
+ :'customer_id' => :'customerId',
94
+ :'status' => :'status',
95
+ :'credit_unit' => :'creditUnit',
96
+ :'hold_amount' => :'holdAmount',
97
+ :'consumed_amount' => :'consumedAmount',
98
+ :'created_at' => :'createdAt',
99
+ :'updated_at' => :'updatedAt',
100
+ :'transactions' => :'transactions'
101
+ }
102
+ end
103
+
104
+ # Returns all the JSON keys this model knows about
105
+ def self.acceptable_attributes
106
+ attribute_map.values
107
+ end
108
+
109
+ # Attribute type mapping.
110
+ def self.openapi_types
111
+ {
112
+ :'account_id' => :'String',
113
+ :'purpose' => :'String',
114
+ :'applicable_entity_ids' => :'Array<String>',
115
+ :'effective_from' => :'Date',
116
+ :'effective_until' => :'Date',
117
+ :'credit_amount' => :'Float',
118
+ :'priority' => :'Integer',
119
+ :'grantor_id' => :'String',
120
+ :'idempotency_key' => :'String',
121
+ :'id' => :'String',
122
+ :'customer_id' => :'String',
123
+ :'status' => :'String',
124
+ :'credit_unit' => :'String',
125
+ :'hold_amount' => :'Float',
126
+ :'consumed_amount' => :'Float',
127
+ :'created_at' => :'Time',
128
+ :'updated_at' => :'Time',
129
+ :'transactions' => :'Array<CreditTransaction>'
130
+ }
131
+ end
132
+
133
+ # List of attributes with nullable: true
134
+ def self.openapi_nullable
135
+ Set.new([
136
+ ])
137
+ end
138
+
139
+ # List of class defined in allOf (OpenAPI v3)
140
+ def self.openapi_all_of
141
+ [
142
+ :'Credit'
143
+ ]
144
+ end
145
+
146
+ # Initializes the object
147
+ # @param [Hash] attributes Model attributes in the form of hash
148
+ def initialize(attributes = {})
149
+ if (!attributes.is_a?(Hash))
150
+ fail ArgumentError, "The input argument (attributes) must be a hash in `TogaiClient::CreditDetailsResponse` initialize method"
151
+ end
152
+
153
+ # check to see if the attribute exists and convert string to symbol for hash key
154
+ attributes = attributes.each_with_object({}) { |(k, v), h|
155
+ if (!self.class.attribute_map.key?(k.to_sym))
156
+ fail ArgumentError, "`#{k}` is not a valid attribute in `TogaiClient::CreditDetailsResponse`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
157
+ end
158
+ h[k.to_sym] = v
159
+ }
160
+
161
+ if attributes.key?(:'account_id')
162
+ self.account_id = attributes[:'account_id']
163
+ else
164
+ self.account_id = nil
165
+ end
166
+
167
+ if attributes.key?(:'purpose')
168
+ self.purpose = attributes[:'purpose']
169
+ else
170
+ self.purpose = nil
171
+ end
172
+
173
+ if attributes.key?(:'applicable_entity_ids')
174
+ if (value = attributes[:'applicable_entity_ids']).is_a?(Array)
175
+ self.applicable_entity_ids = value
176
+ end
177
+ end
178
+
179
+ if attributes.key?(:'effective_from')
180
+ self.effective_from = attributes[:'effective_from']
181
+ else
182
+ self.effective_from = nil
183
+ end
184
+
185
+ if attributes.key?(:'effective_until')
186
+ self.effective_until = attributes[:'effective_until']
187
+ end
188
+
189
+ if attributes.key?(:'credit_amount')
190
+ self.credit_amount = attributes[:'credit_amount']
191
+ end
192
+
193
+ if attributes.key?(:'priority')
194
+ self.priority = attributes[:'priority']
195
+ else
196
+ self.priority = nil
197
+ end
198
+
199
+ if attributes.key?(:'grantor_id')
200
+ self.grantor_id = attributes[:'grantor_id']
201
+ end
202
+
203
+ if attributes.key?(:'idempotency_key')
204
+ self.idempotency_key = attributes[:'idempotency_key']
205
+ end
206
+
207
+ if attributes.key?(:'id')
208
+ self.id = attributes[:'id']
209
+ else
210
+ self.id = nil
211
+ end
212
+
213
+ if attributes.key?(:'customer_id')
214
+ self.customer_id = attributes[:'customer_id']
215
+ else
216
+ self.customer_id = nil
217
+ end
218
+
219
+ if attributes.key?(:'status')
220
+ self.status = attributes[:'status']
221
+ else
222
+ self.status = nil
223
+ end
224
+
225
+ if attributes.key?(:'credit_unit')
226
+ self.credit_unit = attributes[:'credit_unit']
227
+ end
228
+
229
+ if attributes.key?(:'hold_amount')
230
+ self.hold_amount = attributes[:'hold_amount']
231
+ end
232
+
233
+ if attributes.key?(:'consumed_amount')
234
+ self.consumed_amount = attributes[:'consumed_amount']
235
+ end
236
+
237
+ if attributes.key?(:'created_at')
238
+ self.created_at = attributes[:'created_at']
239
+ else
240
+ self.created_at = nil
241
+ end
242
+
243
+ if attributes.key?(:'updated_at')
244
+ self.updated_at = attributes[:'updated_at']
245
+ end
246
+
247
+ if attributes.key?(:'transactions')
248
+ if (value = attributes[:'transactions']).is_a?(Array)
249
+ self.transactions = value
250
+ end
251
+ else
252
+ self.transactions = nil
253
+ end
254
+ end
255
+
256
+ # Show invalid properties with the reasons. Usually used together with valid?
257
+ # @return Array for valid properties with the reasons
258
+ def list_invalid_properties
259
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
260
+ invalid_properties = Array.new
261
+ if @account_id.nil?
262
+ invalid_properties.push('invalid value for "account_id", account_id cannot be nil.')
263
+ end
264
+
265
+ if @purpose.nil?
266
+ invalid_properties.push('invalid value for "purpose", purpose cannot be nil.')
267
+ end
268
+
269
+ if @effective_from.nil?
270
+ invalid_properties.push('invalid value for "effective_from", effective_from cannot be nil.')
271
+ end
272
+
273
+ if @priority.nil?
274
+ invalid_properties.push('invalid value for "priority", priority cannot be nil.')
275
+ end
276
+
277
+ if @id.nil?
278
+ invalid_properties.push('invalid value for "id", id cannot be nil.')
279
+ end
280
+
281
+ if @id.to_s.length > 50
282
+ invalid_properties.push('invalid value for "id", the character length must be smaller than or equal to 50.')
283
+ end
284
+
285
+ if @customer_id.nil?
286
+ invalid_properties.push('invalid value for "customer_id", customer_id cannot be nil.')
287
+ end
288
+
289
+ if @status.nil?
290
+ invalid_properties.push('invalid value for "status", status cannot be nil.')
291
+ end
292
+
293
+ if @created_at.nil?
294
+ invalid_properties.push('invalid value for "created_at", created_at cannot be nil.')
295
+ end
296
+
297
+ if @transactions.nil?
298
+ invalid_properties.push('invalid value for "transactions", transactions cannot be nil.')
299
+ end
300
+
301
+ invalid_properties
302
+ end
303
+
304
+ # Check to see if the all the properties in the model are valid
305
+ # @return true if the model is valid
306
+ def valid?
307
+ warn '[DEPRECATED] the `valid?` method is obsolete'
308
+ return false if @account_id.nil?
309
+ return false if @purpose.nil?
310
+ return false if @effective_from.nil?
311
+ return false if @priority.nil?
312
+ return false if @id.nil?
313
+ return false if @id.to_s.length > 50
314
+ return false if @customer_id.nil?
315
+ return false if @status.nil?
316
+ status_validator = EnumAttributeValidator.new('String', ["ACTIVE", "CONSUMED", "EXPIRED", "VOIDED"])
317
+ return false unless status_validator.valid?(@status)
318
+ return false if @created_at.nil?
319
+ return false if @transactions.nil?
320
+ true
321
+ end
322
+
323
+ # Custom attribute writer method with validation
324
+ # @param [Object] applicable_entity_ids Value to be assigned
325
+ def applicable_entity_ids=(applicable_entity_ids)
326
+ if applicable_entity_ids.nil?
327
+ fail ArgumentError, 'applicable_entity_ids cannot be nil'
328
+ end
329
+
330
+ @applicable_entity_ids = applicable_entity_ids
331
+ end
332
+
333
+ # Custom attribute writer method with validation
334
+ # @param [Object] id Value to be assigned
335
+ def id=(id)
336
+ if id.nil?
337
+ fail ArgumentError, 'id cannot be nil'
338
+ end
339
+
340
+ if id.to_s.length > 50
341
+ fail ArgumentError, 'invalid value for "id", the character length must be smaller than or equal to 50.'
342
+ end
343
+
344
+ @id = id
345
+ end
346
+
347
+ # Custom attribute writer method checking allowed values (enum).
348
+ # @param [Object] status Object to be assigned
349
+ def status=(status)
350
+ validator = EnumAttributeValidator.new('String', ["ACTIVE", "CONSUMED", "EXPIRED", "VOIDED"])
351
+ unless validator.valid?(status)
352
+ fail ArgumentError, "invalid value for \"status\", must be one of #{validator.allowable_values}."
353
+ end
354
+ @status = status
355
+ end
356
+
357
+ # Checks equality by comparing each attribute.
358
+ # @param [Object] Object to be compared
359
+ def ==(o)
360
+ return true if self.equal?(o)
361
+ self.class == o.class &&
362
+ account_id == o.account_id &&
363
+ purpose == o.purpose &&
364
+ applicable_entity_ids == o.applicable_entity_ids &&
365
+ effective_from == o.effective_from &&
366
+ effective_until == o.effective_until &&
367
+ credit_amount == o.credit_amount &&
368
+ priority == o.priority &&
369
+ grantor_id == o.grantor_id &&
370
+ idempotency_key == o.idempotency_key &&
371
+ id == o.id &&
372
+ customer_id == o.customer_id &&
373
+ status == o.status &&
374
+ credit_unit == o.credit_unit &&
375
+ hold_amount == o.hold_amount &&
376
+ consumed_amount == o.consumed_amount &&
377
+ created_at == o.created_at &&
378
+ updated_at == o.updated_at &&
379
+ transactions == o.transactions
380
+ end
381
+
382
+ # @see the `==` method
383
+ # @param [Object] Object to be compared
384
+ def eql?(o)
385
+ self == o
386
+ end
387
+
388
+ # Calculates hash code according to all attributes.
389
+ # @return [Integer] Hash code
390
+ def hash
391
+ [account_id, purpose, applicable_entity_ids, effective_from, effective_until, credit_amount, priority, grantor_id, idempotency_key, id, customer_id, status, credit_unit, hold_amount, consumed_amount, created_at, updated_at, transactions].hash
392
+ end
393
+
394
+ # Builds the object from hash
395
+ # @param [Hash] attributes Model attributes in the form of hash
396
+ # @return [Object] Returns the model itself
397
+ def self.build_from_hash(attributes)
398
+ return nil unless attributes.is_a?(Hash)
399
+ attributes = attributes.transform_keys(&:to_sym)
400
+ transformed_hash = {}
401
+ openapi_types.each_pair do |key, type|
402
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
403
+ transformed_hash["#{key}"] = nil
404
+ elsif type =~ /\AArray<(.*)>/i
405
+ # check to ensure the input is an array given that the attribute
406
+ # is documented as an array but the input is not
407
+ if attributes[attribute_map[key]].is_a?(Array)
408
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
409
+ end
410
+ elsif !attributes[attribute_map[key]].nil?
411
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
412
+ end
413
+ end
414
+ new(transformed_hash)
415
+ end
416
+
417
+ # Deserializes the data based on type
418
+ # @param string type Data type
419
+ # @param string value Value to be deserialized
420
+ # @return [Object] Deserialized data
421
+ def self._deserialize(type, value)
422
+ case type.to_sym
423
+ when :Time
424
+ Time.parse(value)
425
+ when :Date
426
+ Date.parse(value)
427
+ when :String
428
+ value.to_s
429
+ when :Integer
430
+ value.to_i
431
+ when :Float
432
+ value.to_f
433
+ when :Boolean
434
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
435
+ true
436
+ else
437
+ false
438
+ end
439
+ when :Object
440
+ # generic object (usually a Hash), return directly
441
+ value
442
+ when /\AArray<(?<inner_type>.+)>\z/
443
+ inner_type = Regexp.last_match[:inner_type]
444
+ value.map { |v| _deserialize(inner_type, v) }
445
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
446
+ k_type = Regexp.last_match[:k_type]
447
+ v_type = Regexp.last_match[:v_type]
448
+ {}.tap do |hash|
449
+ value.each do |k, v|
450
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
451
+ end
452
+ end
453
+ else # model
454
+ # models (e.g. Pet) or oneOf
455
+ klass = TogaiClient.const_get(type)
456
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
457
+ end
458
+ end
459
+
460
+ # Returns the string representation of the object
461
+ # @return [String] String presentation of the object
462
+ def to_s
463
+ to_hash.to_s
464
+ end
465
+
466
+ # to_body is an alias to to_hash (backward compatibility)
467
+ # @return [Hash] Returns the object in the form of hash
468
+ def to_body
469
+ to_hash
470
+ end
471
+
472
+ # Returns the object in the form of hash
473
+ # @return [Hash] Returns the object in the form of hash
474
+ def to_hash
475
+ hash = {}
476
+ self.class.attribute_map.each_pair do |attr, param|
477
+ value = self.send(attr)
478
+ if value.nil?
479
+ is_nullable = self.class.openapi_nullable.include?(attr)
480
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
481
+ end
482
+
483
+ hash[param] = _to_hash(value)
484
+ end
485
+ hash
486
+ end
487
+
488
+ # Outputs non-array value in the form of hash
489
+ # For object, use to_hash. Otherwise, just return the value
490
+ # @param [Object] value Any valid value
491
+ # @return [Hash] Returns the value in the form of hash
492
+ def _to_hash(value)
493
+ if value.is_a?(Array)
494
+ value.compact.map { |v| _to_hash(v) }
495
+ elsif value.is_a?(Hash)
496
+ {}.tap do |hash|
497
+ value.each { |k, v| hash[k] = _to_hash(v) }
498
+ end
499
+ elsif value.respond_to? :to_hash
500
+ value.to_hash
501
+ else
502
+ value
503
+ end
504
+ end
505
+
506
+ end
507
+
508
+ end