talon_one 0.0.10 → 1.1.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 (523) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +22 -0
  3. data/Gemfile +4 -0
  4. data/README.md +398 -55
  5. data/Rakefile +6 -8
  6. data/docs/APIError.md +10 -0
  7. data/docs/AccessLogEntry.md +14 -0
  8. data/docs/Account.md +25 -0
  9. data/docs/AccountAnalytics.md +21 -0
  10. data/docs/AccountEntity.md +8 -0
  11. data/docs/AccountLimits.md +18 -0
  12. data/docs/Application.md +20 -0
  13. data/docs/ApplicationAPIKey.md +14 -0
  14. data/docs/ApplicationApiHealth.md +9 -0
  15. data/docs/ApplicationCustomer.md +16 -0
  16. data/docs/ApplicationCustomerEntity.md +8 -0
  17. data/docs/ApplicationCustomerSearch.md +10 -0
  18. data/docs/ApplicationEntity.md +8 -0
  19. data/docs/ApplicationEvent.md +15 -0
  20. data/docs/ApplicationSession.md +18 -0
  21. data/docs/ApplicationSessionEntity.md +8 -0
  22. data/docs/ApplicationStorage.md +15 -0
  23. data/docs/ApplicationStorageData.md +7 -0
  24. data/docs/ApplicationStorageTuple.md +13 -0
  25. data/docs/Attribute.md +20 -0
  26. data/docs/AttributeQuery.md +7 -0
  27. data/docs/Binding.md +9 -0
  28. data/docs/Campaign.md +30 -0
  29. data/docs/CampaignAnalytics.md +22 -0
  30. data/docs/CampaignCopy.md +9 -0
  31. data/docs/CampaignEntity.md +8 -0
  32. data/docs/CampaignSearch.md +8 -0
  33. data/docs/CampaignSet.md +11 -0
  34. data/docs/CampaignSetBranchNode.md +11 -0
  35. data/docs/CampaignSetLeafNode.md +9 -0
  36. data/docs/CampaignSetNode.md +8 -0
  37. data/docs/CartItem.md +19 -0
  38. data/docs/CartItemAdjustment.md +10 -0
  39. data/docs/Change.md +13 -0
  40. data/docs/CodeGeneratorSettings.md +9 -0
  41. data/docs/Coupon.md +21 -0
  42. data/docs/CouponConstraints.md +10 -0
  43. data/docs/CouponRejectionReason.md +10 -0
  44. data/docs/CouponReservations.md +8 -0
  45. data/docs/CouponSearch.md +8 -0
  46. data/docs/CouponValue.md +8 -0
  47. data/docs/CreateApplicationAPIKey.md +9 -0
  48. data/docs/CustomerActivityReport.md +20 -0
  49. data/docs/CustomerAnalytics.md +14 -0
  50. data/docs/CustomerProfile.md +15 -0
  51. data/docs/CustomerProfileSearchQuery.md +10 -0
  52. data/docs/CustomerSession.md +20 -0
  53. data/docs/EmailEntity.md +8 -0
  54. data/docs/Entity.md +9 -0
  55. data/docs/Environment.md +14 -0
  56. data/docs/ErrorResponse.md +9 -0
  57. data/docs/ErrorSource.md +10 -0
  58. data/docs/Event.md +17 -0
  59. data/docs/EventType.md +19 -0
  60. data/docs/Export.md +13 -0
  61. data/docs/FeatureFlag.md +11 -0
  62. data/docs/FeatureFlags.md +11 -0
  63. data/docs/FeaturesFeed.md +9 -0
  64. data/docs/FuncArgDef.md +9 -0
  65. data/docs/FunctionDef.md +12 -0
  66. data/docs/Import.md +13 -0
  67. data/docs/ImportCoupons.md +8 -0
  68. data/docs/InlineResponse200.md +9 -0
  69. data/docs/InlineResponse2001.md +9 -0
  70. data/docs/InlineResponse20010.md +9 -0
  71. data/docs/InlineResponse20011.md +9 -0
  72. data/docs/InlineResponse20012.md +9 -0
  73. data/docs/InlineResponse20013.md +9 -0
  74. data/docs/InlineResponse20014.md +9 -0
  75. data/docs/InlineResponse20015.md +9 -0
  76. data/docs/InlineResponse20016.md +9 -0
  77. data/docs/InlineResponse20017.md +9 -0
  78. data/docs/InlineResponse20018.md +9 -0
  79. data/docs/InlineResponse20019.md +9 -0
  80. data/docs/InlineResponse2002.md +9 -0
  81. data/docs/InlineResponse20020.md +9 -0
  82. data/docs/InlineResponse20021.md +9 -0
  83. data/docs/InlineResponse20022.md +9 -0
  84. data/docs/InlineResponse20023.md +9 -0
  85. data/docs/InlineResponse20024.md +9 -0
  86. data/docs/InlineResponse20025.md +9 -0
  87. data/docs/InlineResponse20026.md +9 -0
  88. data/docs/InlineResponse20027.md +9 -0
  89. data/docs/InlineResponse20028.md +9 -0
  90. data/docs/InlineResponse2003.md +9 -0
  91. data/docs/InlineResponse2004.md +9 -0
  92. data/docs/InlineResponse2005.md +9 -0
  93. data/docs/InlineResponse2006.md +9 -0
  94. data/docs/InlineResponse2007.md +9 -0
  95. data/docs/InlineResponse2008.md +9 -0
  96. data/docs/InlineResponse2009.md +9 -0
  97. data/docs/IntegrationApi.md +558 -0
  98. data/docs/IntegrationEntity.md +9 -0
  99. data/docs/IntegrationProfileEntity.md +8 -0
  100. data/docs/IntegrationState.md +11 -0
  101. data/docs/LedgerEntry.md +17 -0
  102. data/docs/LibraryAttribute.md +14 -0
  103. data/docs/LimitConfig.md +10 -0
  104. data/docs/LoginParams.md +9 -0
  105. data/docs/Loyalty.md +8 -0
  106. data/docs/LoyaltyLedger.md +9 -0
  107. data/docs/LoyaltyLedgerEntry.md +17 -0
  108. data/docs/LoyaltyMembership.md +9 -0
  109. data/docs/LoyaltyPoints.md +11 -0
  110. data/docs/LoyaltyProgram.md +15 -0
  111. data/docs/LoyaltyProgramBalance.md +8 -0
  112. data/docs/LoyaltyProgramLedgers.md +11 -0
  113. data/docs/LoyaltySubLedger.md +10 -0
  114. data/docs/ManagementApi.md +5067 -0
  115. data/docs/ManagerConfig.md +8 -0
  116. data/docs/Meta.md +11 -0
  117. data/docs/MiscUpdateUserLatestFeature.md +8 -0
  118. data/docs/MultiApplicationEntity.md +8 -0
  119. data/docs/MutableEntity.md +8 -0
  120. data/docs/NewAccount.md +8 -0
  121. data/docs/NewAccountSignUp.md +10 -0
  122. data/docs/NewApplication.md +15 -0
  123. data/docs/NewApplicationAPIKey.md +15 -0
  124. data/docs/NewApplicationStorage.md +10 -0
  125. data/docs/NewApplicationStorageData.md +7 -0
  126. data/docs/NewApplicationStorageTuple.md +9 -0
  127. data/docs/NewAttribute.md +15 -0
  128. data/docs/NewCampaign.md +19 -0
  129. data/docs/NewCampaignSet.md +9 -0
  130. data/docs/NewCoupons.md +16 -0
  131. data/docs/NewCustomerProfile.md +8 -0
  132. data/docs/NewCustomerSession.md +15 -0
  133. data/docs/NewEvent.md +11 -0
  134. data/docs/NewEventType.md +17 -0
  135. data/docs/NewFeatureFlags.md +10 -0
  136. data/docs/NewImport.md +8 -0
  137. data/docs/NewInvitation.md +11 -0
  138. data/docs/NewInviteEmail.md +9 -0
  139. data/docs/NewLoyaltyProgram.md +13 -0
  140. data/docs/NewPassword.md +9 -0
  141. data/docs/NewPasswordEmail.md +8 -0
  142. data/docs/NewReferral.md +12 -0
  143. data/docs/NewRole.md +11 -0
  144. data/docs/NewRuleset.md +11 -0
  145. data/docs/NewTemplateDef.md +14 -0
  146. data/docs/NewUser.md +11 -0
  147. data/docs/NewWebhook.md +15 -0
  148. data/docs/Referral.md +17 -0
  149. data/docs/Role.md +13 -0
  150. data/docs/RoleAssign.md +9 -0
  151. data/docs/RoleMembership.md +9 -0
  152. data/docs/Rule.md +12 -0
  153. data/docs/Ruleset.md +16 -0
  154. data/docs/Session.md +10 -0
  155. data/docs/SlotDef.md +13 -0
  156. data/docs/TemplateArgDef.md +11 -0
  157. data/docs/TemplateDef.md +18 -0
  158. data/docs/UpdateAccount.md +10 -0
  159. data/docs/UpdateCampaign.md +19 -0
  160. data/docs/UpdateCoupon.md +12 -0
  161. data/docs/UpdateCouponBatch.md +12 -0
  162. data/docs/UpdateLoyaltyProgram.md +12 -0
  163. data/docs/UpdateRole.md +11 -0
  164. data/docs/UpdateUser.md +16 -0
  165. data/docs/User.md +19 -0
  166. data/docs/UserEntity.md +8 -0
  167. data/docs/Webhook.md +19 -0
  168. data/docs/WebhookActivationLogEntry.md +12 -0
  169. data/docs/WebhookLogEntry.md +17 -0
  170. data/fck.rb +64 -0
  171. data/git_push.sh +55 -0
  172. data/lib/talon_one.rb +200 -4
  173. data/lib/talon_one/api/integration_api.rb +531 -0
  174. data/lib/talon_one/api/management_api.rb +5520 -0
  175. data/lib/talon_one/api_client.rb +389 -0
  176. data/lib/talon_one/api_error.rb +38 -0
  177. data/lib/talon_one/configuration.rb +223 -0
  178. data/lib/talon_one/models/access_log_entry.rb +280 -0
  179. data/lib/talon_one/models/account.rb +462 -0
  180. data/lib/talon_one/models/account_analytics.rb +384 -0
  181. data/lib/talon_one/models/account_entity.rb +189 -0
  182. data/lib/talon_one/models/account_limits.rb +341 -0
  183. data/lib/talon_one/models/api_error.rb +213 -0
  184. data/lib/talon_one/models/application.rb +482 -0
  185. data/lib/talon_one/models/application_api_health.rb +239 -0
  186. data/lib/talon_one/models/application_api_key.rb +279 -0
  187. data/lib/talon_one/models/application_customer.rb +312 -0
  188. data/lib/talon_one/models/application_customer_entity.rb +184 -0
  189. data/lib/talon_one/models/application_customer_search.rb +206 -0
  190. data/lib/talon_one/models/application_entity.rb +189 -0
  191. data/lib/talon_one/models/application_event.rb +287 -0
  192. data/lib/talon_one/models/application_session.rb +368 -0
  193. data/lib/talon_one/models/application_session_entity.rb +189 -0
  194. data/lib/talon_one/models/application_storage.rb +292 -0
  195. data/lib/talon_one/models/application_storage_data.rb +175 -0
  196. data/lib/talon_one/models/application_storage_tuple.rb +283 -0
  197. data/lib/talon_one/models/attribute.rb +416 -0
  198. data/lib/talon_one/models/attribute_query.rb +174 -0
  199. data/lib/talon_one/models/binding.rb +206 -0
  200. data/lib/talon_one/models/campaign.rb +514 -0
  201. data/lib/talon_one/models/campaign_analytics.rb +399 -0
  202. data/lib/talon_one/models/campaign_copy.rb +201 -0
  203. data/lib/talon_one/models/campaign_entity.rb +189 -0
  204. data/lib/talon_one/models/campaign_search.rb +189 -0
  205. data/lib/talon_one/models/campaign_set.rb +234 -0
  206. data/lib/talon_one/models/campaign_set_branch_node.rb +282 -0
  207. data/lib/talon_one/models/campaign_set_leaf_node.rb +238 -0
  208. data/lib/talon_one/models/campaign_set_node.rb +188 -0
  209. data/lib/talon_one/models/cart_item.rb +365 -0
  210. data/lib/talon_one/models/cart_item_adjustment.rb +248 -0
  211. data/lib/talon_one/models/change.rb +255 -0
  212. data/lib/talon_one/models/code_generator_settings.rb +225 -0
  213. data/lib/talon_one/models/coupon.rb +392 -0
  214. data/lib/talon_one/models/coupon_constraints.rb +228 -0
  215. data/lib/talon_one/models/coupon_rejection_reason.rb +251 -0
  216. data/lib/talon_one/models/coupon_reservations.rb +191 -0
  217. data/lib/talon_one/models/coupon_search.rb +189 -0
  218. data/lib/talon_one/models/coupon_value.rb +199 -0
  219. data/lib/talon_one/models/create_application_api_key.rb +204 -0
  220. data/lib/talon_one/models/customer_activity_report.rb +365 -0
  221. data/lib/talon_one/models/customer_analytics.rb +280 -0
  222. data/lib/talon_one/models/customer_profile.rb +297 -0
  223. data/lib/talon_one/models/customer_profile_search_query.rb +206 -0
  224. data/lib/talon_one/models/customer_session.rb +407 -0
  225. data/lib/talon_one/models/email_entity.rb +189 -0
  226. data/lib/talon_one/models/entity.rb +204 -0
  227. data/lib/talon_one/models/environment.rb +285 -0
  228. data/lib/talon_one/models/error_response.rb +201 -0
  229. data/lib/talon_one/models/error_source.rb +205 -0
  230. data/lib/talon_one/models/event.rb +356 -0
  231. data/lib/talon_one/models/event_type.rb +426 -0
  232. data/lib/talon_one/models/export.rb +299 -0
  233. data/lib/talon_one/models/feature_flag.rb +224 -0
  234. data/lib/talon_one/models/feature_flags.rb +220 -0
  235. data/lib/talon_one/models/features_feed.rb +193 -0
  236. data/lib/talon_one/models/func_arg_def.rb +243 -0
  237. data/lib/talon_one/models/function_def.rb +260 -0
  238. data/lib/talon_one/models/import.rb +318 -0
  239. data/lib/talon_one/models/import_coupons.rb +188 -0
  240. data/lib/talon_one/models/inline_response_200.rb +204 -0
  241. data/lib/talon_one/models/inline_response_200_1.rb +204 -0
  242. data/lib/talon_one/models/inline_response_200_10.rb +204 -0
  243. data/lib/talon_one/models/inline_response_200_11.rb +204 -0
  244. data/lib/talon_one/models/inline_response_200_12.rb +204 -0
  245. data/lib/talon_one/models/inline_response_200_13.rb +204 -0
  246. data/lib/talon_one/models/inline_response_200_14.rb +204 -0
  247. data/lib/talon_one/models/inline_response_200_15.rb +204 -0
  248. data/lib/talon_one/models/inline_response_200_16.rb +204 -0
  249. data/lib/talon_one/models/inline_response_200_17.rb +204 -0
  250. data/lib/talon_one/models/inline_response_200_18.rb +204 -0
  251. data/lib/talon_one/models/inline_response_200_19.rb +204 -0
  252. data/lib/talon_one/models/inline_response_200_2.rb +204 -0
  253. data/lib/talon_one/models/inline_response_200_20.rb +204 -0
  254. data/lib/talon_one/models/inline_response_200_21.rb +204 -0
  255. data/lib/talon_one/models/inline_response_200_22.rb +204 -0
  256. data/lib/talon_one/models/inline_response_200_23.rb +204 -0
  257. data/lib/talon_one/models/inline_response_200_24.rb +204 -0
  258. data/lib/talon_one/models/inline_response_200_25.rb +204 -0
  259. data/lib/talon_one/models/inline_response_200_26.rb +204 -0
  260. data/lib/talon_one/models/inline_response_200_27.rb +204 -0
  261. data/lib/talon_one/models/inline_response_200_28.rb +204 -0
  262. data/lib/talon_one/models/inline_response_200_3.rb +204 -0
  263. data/lib/talon_one/models/inline_response_200_4.rb +204 -0
  264. data/lib/talon_one/models/inline_response_200_5.rb +204 -0
  265. data/lib/talon_one/models/inline_response_200_6.rb +204 -0
  266. data/lib/talon_one/models/inline_response_200_7.rb +204 -0
  267. data/lib/talon_one/models/inline_response_200_8.rb +204 -0
  268. data/lib/talon_one/models/inline_response_200_9.rb +204 -0
  269. data/lib/talon_one/models/integration_entity.rb +204 -0
  270. data/lib/talon_one/models/integration_profile_entity.rb +184 -0
  271. data/lib/talon_one/models/integration_state.rb +226 -0
  272. data/lib/talon_one/models/ledger_entry.rb +320 -0
  273. data/lib/talon_one/models/library_attribute.rb +330 -0
  274. data/lib/talon_one/models/limit_config.rb +274 -0
  275. data/lib/talon_one/models/login_params.rb +205 -0
  276. data/lib/talon_one/models/loyalty.rb +192 -0
  277. data/lib/talon_one/models/loyalty_ledger.rb +202 -0
  278. data/lib/talon_one/models/loyalty_ledger_entry.rb +336 -0
  279. data/lib/talon_one/models/loyalty_membership.rb +199 -0
  280. data/lib/talon_one/models/loyalty_points.rb +220 -0
  281. data/lib/talon_one/models/loyalty_program.rb +297 -0
  282. data/lib/talon_one/models/loyalty_program_balance.rb +189 -0
  283. data/lib/talon_one/models/loyalty_program_ledgers.rb +232 -0
  284. data/lib/talon_one/models/loyalty_sub_ledger.rb +213 -0
  285. data/lib/talon_one/models/manager_config.rb +188 -0
  286. data/lib/talon_one/models/meta.rb +212 -0
  287. data/lib/talon_one/models/misc_update_user_latest_feature.rb +183 -0
  288. data/lib/talon_one/models/multi_application_entity.rb +191 -0
  289. data/lib/talon_one/models/mutable_entity.rb +189 -0
  290. data/lib/talon_one/models/new_account.rb +207 -0
  291. data/lib/talon_one/models/new_account_sign_up.rb +238 -0
  292. data/lib/talon_one/models/new_application.rb +404 -0
  293. data/lib/talon_one/models/new_application_api_key.rb +295 -0
  294. data/lib/talon_one/models/new_application_storage.rb +214 -0
  295. data/lib/talon_one/models/new_application_storage_data.rb +175 -0
  296. data/lib/talon_one/models/new_application_storage_tuple.rb +222 -0
  297. data/lib/talon_one/models/new_attribute.rb +337 -0
  298. data/lib/talon_one/models/new_campaign.rb +378 -0
  299. data/lib/talon_one/models/new_campaign_set.rb +204 -0
  300. data/lib/talon_one/models/new_coupons.rb +334 -0
  301. data/lib/talon_one/models/new_customer_profile.rb +184 -0
  302. data/lib/talon_one/models/new_customer_session.rb +295 -0
  303. data/lib/talon_one/models/new_event.rb +268 -0
  304. data/lib/talon_one/models/new_event_type.rb +396 -0
  305. data/lib/talon_one/models/new_feature_flags.rb +204 -0
  306. data/lib/talon_one/models/new_import.rb +224 -0
  307. data/lib/talon_one/models/new_invitation.rb +226 -0
  308. data/lib/talon_one/models/new_invite_email.rb +240 -0
  309. data/lib/talon_one/models/new_loyalty_program.rb +257 -0
  310. data/lib/talon_one/models/new_password.rb +222 -0
  311. data/lib/talon_one/models/new_password_email.rb +207 -0
  312. data/lib/talon_one/models/new_referral.rb +234 -0
  313. data/lib/talon_one/models/new_role.rb +232 -0
  314. data/lib/talon_one/models/new_ruleset.rb +228 -0
  315. data/lib/talon_one/models/new_template_def.rb +308 -0
  316. data/lib/talon_one/models/new_user.rb +248 -0
  317. data/lib/talon_one/models/new_webhook.rb +330 -0
  318. data/lib/talon_one/models/referral.rb +348 -0
  319. data/lib/talon_one/models/role.rb +247 -0
  320. data/lib/talon_one/models/role_assign.rb +209 -0
  321. data/lib/talon_one/models/role_membership.rb +204 -0
  322. data/lib/talon_one/models/rule.rb +245 -0
  323. data/lib/talon_one/models/ruleset.rb +299 -0
  324. data/lib/talon_one/models/session.rb +219 -0
  325. data/lib/talon_one/models/slot_def.rb +254 -0
  326. data/lib/talon_one/models/template_arg_def.rb +293 -0
  327. data/lib/talon_one/models/template_def.rb +398 -0
  328. data/lib/talon_one/models/update_account.rb +233 -0
  329. data/lib/talon_one/models/update_campaign.rb +373 -0
  330. data/lib/talon_one/models/update_coupon.rb +249 -0
  331. data/lib/talon_one/models/update_coupon_batch.rb +254 -0
  332. data/lib/talon_one/models/update_loyalty_program.rb +227 -0
  333. data/lib/talon_one/models/update_role.rb +216 -0
  334. data/lib/talon_one/models/update_user.rb +306 -0
  335. data/lib/talon_one/models/user.rb +381 -0
  336. data/lib/talon_one/models/user_entity.rb +189 -0
  337. data/lib/talon_one/models/webhook.rb +392 -0
  338. data/lib/talon_one/models/webhook_activation_log_entry.rb +250 -0
  339. data/lib/talon_one/models/webhook_log_entry.rb +305 -0
  340. data/lib/talon_one/version.rb +15 -0
  341. data/spec/api/integration_api_spec.rb +147 -0
  342. data/spec/api/management_api_spec.rb +1299 -0
  343. data/spec/api_client_spec.rb +226 -0
  344. data/spec/configuration_spec.rb +42 -0
  345. data/spec/models/access_log_entry_spec.rb +77 -0
  346. data/spec/models/account_analytics_spec.rb +119 -0
  347. data/spec/models/account_entity_spec.rb +41 -0
  348. data/spec/models/account_limits_spec.rb +101 -0
  349. data/spec/models/account_spec.rb +147 -0
  350. data/spec/models/api_error_spec.rb +53 -0
  351. data/spec/models/application_api_health_spec.rb +51 -0
  352. data/spec/models/application_api_key_spec.rb +77 -0
  353. data/spec/models/application_customer_entity_spec.rb +41 -0
  354. data/spec/models/application_customer_search_spec.rb +53 -0
  355. data/spec/models/application_customer_spec.rb +89 -0
  356. data/spec/models/application_entity_spec.rb +41 -0
  357. data/spec/models/application_event_spec.rb +83 -0
  358. data/spec/models/application_session_entity_spec.rb +41 -0
  359. data/spec/models/application_session_spec.rb +105 -0
  360. data/spec/models/application_spec.rb +117 -0
  361. data/spec/models/application_storage_data_spec.rb +35 -0
  362. data/spec/models/application_storage_spec.rb +83 -0
  363. data/spec/models/application_storage_tuple_spec.rb +71 -0
  364. data/spec/models/attribute_query_spec.rb +35 -0
  365. data/spec/models/attribute_spec.rb +121 -0
  366. data/spec/models/binding_spec.rb +47 -0
  367. data/spec/models/campaign_analytics_spec.rb +125 -0
  368. data/spec/models/campaign_copy_spec.rb +47 -0
  369. data/spec/models/campaign_entity_spec.rb +41 -0
  370. data/spec/models/campaign_search_spec.rb +41 -0
  371. data/spec/models/campaign_set_branch_node_spec.rb +67 -0
  372. data/spec/models/campaign_set_leaf_node_spec.rb +51 -0
  373. data/spec/models/campaign_set_node_spec.rb +41 -0
  374. data/spec/models/campaign_set_spec.rb +59 -0
  375. data/spec/models/campaign_spec.rb +181 -0
  376. data/spec/models/cart_item_adjustment_spec.rb +53 -0
  377. data/spec/models/cart_item_spec.rb +107 -0
  378. data/spec/models/change_spec.rb +71 -0
  379. data/spec/models/code_generator_settings_spec.rb +47 -0
  380. data/spec/models/coupon_constraints_spec.rb +53 -0
  381. data/spec/models/coupon_rejection_reason_spec.rb +57 -0
  382. data/spec/models/coupon_reservations_spec.rb +41 -0
  383. data/spec/models/coupon_search_spec.rb +41 -0
  384. data/spec/models/coupon_spec.rb +119 -0
  385. data/spec/models/coupon_value_spec.rb +41 -0
  386. data/spec/models/create_application_api_key_spec.rb +47 -0
  387. data/spec/models/customer_activity_report_spec.rb +113 -0
  388. data/spec/models/customer_analytics_spec.rb +77 -0
  389. data/spec/models/customer_profile_search_query_spec.rb +53 -0
  390. data/spec/models/customer_profile_spec.rb +83 -0
  391. data/spec/models/customer_session_spec.rb +117 -0
  392. data/spec/models/email_entity_spec.rb +41 -0
  393. data/spec/models/entity_spec.rb +47 -0
  394. data/spec/models/environment_spec.rb +77 -0
  395. data/spec/models/error_response_spec.rb +47 -0
  396. data/spec/models/error_source_spec.rb +53 -0
  397. data/spec/models/event_spec.rb +95 -0
  398. data/spec/models/event_type_spec.rb +115 -0
  399. data/spec/models/export_spec.rb +75 -0
  400. data/spec/models/feature_flag_spec.rb +59 -0
  401. data/spec/models/feature_flags_spec.rb +59 -0
  402. data/spec/models/features_feed_spec.rb +47 -0
  403. data/spec/models/func_arg_def_spec.rb +51 -0
  404. data/spec/models/function_def_spec.rb +65 -0
  405. data/spec/models/import_coupons_spec.rb +41 -0
  406. data/spec/models/import_spec.rb +75 -0
  407. data/spec/models/inline_response_200_10_spec.rb +47 -0
  408. data/spec/models/inline_response_200_11_spec.rb +47 -0
  409. data/spec/models/inline_response_200_12_spec.rb +47 -0
  410. data/spec/models/inline_response_200_13_spec.rb +47 -0
  411. data/spec/models/inline_response_200_14_spec.rb +47 -0
  412. data/spec/models/inline_response_200_15_spec.rb +47 -0
  413. data/spec/models/inline_response_200_16_spec.rb +47 -0
  414. data/spec/models/inline_response_200_17_spec.rb +47 -0
  415. data/spec/models/inline_response_200_18_spec.rb +47 -0
  416. data/spec/models/inline_response_200_19_spec.rb +47 -0
  417. data/spec/models/inline_response_200_1_spec.rb +47 -0
  418. data/spec/models/inline_response_200_20_spec.rb +47 -0
  419. data/spec/models/inline_response_200_21_spec.rb +47 -0
  420. data/spec/models/inline_response_200_22_spec.rb +47 -0
  421. data/spec/models/inline_response_200_23_spec.rb +47 -0
  422. data/spec/models/inline_response_200_24_spec.rb +47 -0
  423. data/spec/models/inline_response_200_25_spec.rb +47 -0
  424. data/spec/models/inline_response_200_26_spec.rb +47 -0
  425. data/spec/models/inline_response_200_27_spec.rb +47 -0
  426. data/spec/models/inline_response_200_28_spec.rb +47 -0
  427. data/spec/models/inline_response_200_2_spec.rb +47 -0
  428. data/spec/models/inline_response_200_3_spec.rb +47 -0
  429. data/spec/models/inline_response_200_4_spec.rb +47 -0
  430. data/spec/models/inline_response_200_5_spec.rb +47 -0
  431. data/spec/models/inline_response_200_6_spec.rb +47 -0
  432. data/spec/models/inline_response_200_7_spec.rb +47 -0
  433. data/spec/models/inline_response_200_8_spec.rb +47 -0
  434. data/spec/models/inline_response_200_9_spec.rb +47 -0
  435. data/spec/models/inline_response_200_spec.rb +47 -0
  436. data/spec/models/integration_entity_spec.rb +47 -0
  437. data/spec/models/integration_profile_entity_spec.rb +41 -0
  438. data/spec/models/integration_state_spec.rb +59 -0
  439. data/spec/models/ledger_entry_spec.rb +95 -0
  440. data/spec/models/library_attribute_spec.rb +85 -0
  441. data/spec/models/limit_config_spec.rb +61 -0
  442. data/spec/models/login_params_spec.rb +47 -0
  443. data/spec/models/loyalty_ledger_entry_spec.rb +99 -0
  444. data/spec/models/loyalty_ledger_spec.rb +47 -0
  445. data/spec/models/loyalty_membership_spec.rb +47 -0
  446. data/spec/models/loyalty_points_spec.rb +59 -0
  447. data/spec/models/loyalty_program_balance_spec.rb +41 -0
  448. data/spec/models/loyalty_program_ledgers_spec.rb +59 -0
  449. data/spec/models/loyalty_program_spec.rb +83 -0
  450. data/spec/models/loyalty_spec.rb +41 -0
  451. data/spec/models/loyalty_sub_ledger_spec.rb +53 -0
  452. data/spec/models/manager_config_spec.rb +41 -0
  453. data/spec/models/meta_spec.rb +59 -0
  454. data/spec/models/misc_update_user_latest_feature_spec.rb +41 -0
  455. data/spec/models/multi_application_entity_spec.rb +41 -0
  456. data/spec/models/mutable_entity_spec.rb +41 -0
  457. data/spec/models/new_account_sign_up_spec.rb +53 -0
  458. data/spec/models/new_account_spec.rb +41 -0
  459. data/spec/models/new_application_api_key_spec.rb +83 -0
  460. data/spec/models/new_application_spec.rb +87 -0
  461. data/spec/models/new_application_storage_data_spec.rb +35 -0
  462. data/spec/models/new_application_storage_spec.rb +53 -0
  463. data/spec/models/new_application_storage_tuple_spec.rb +47 -0
  464. data/spec/models/new_attribute_spec.rb +91 -0
  465. data/spec/models/new_campaign_set_spec.rb +47 -0
  466. data/spec/models/new_campaign_spec.rb +115 -0
  467. data/spec/models/new_coupons_spec.rb +89 -0
  468. data/spec/models/new_customer_profile_spec.rb +41 -0
  469. data/spec/models/new_customer_session_spec.rb +87 -0
  470. data/spec/models/new_event_spec.rb +59 -0
  471. data/spec/models/new_event_type_spec.rb +103 -0
  472. data/spec/models/new_feature_flags_spec.rb +53 -0
  473. data/spec/models/new_import_spec.rb +45 -0
  474. data/spec/models/new_invitation_spec.rb +59 -0
  475. data/spec/models/new_invite_email_spec.rb +47 -0
  476. data/spec/models/new_loyalty_program_spec.rb +71 -0
  477. data/spec/models/new_password_email_spec.rb +41 -0
  478. data/spec/models/new_password_spec.rb +47 -0
  479. data/spec/models/new_referral_spec.rb +65 -0
  480. data/spec/models/new_role_spec.rb +59 -0
  481. data/spec/models/new_ruleset_spec.rb +59 -0
  482. data/spec/models/new_template_def_spec.rb +77 -0
  483. data/spec/models/new_user_spec.rb +59 -0
  484. data/spec/models/new_webhook_spec.rb +87 -0
  485. data/spec/models/referral_spec.rb +95 -0
  486. data/spec/models/role_assign_spec.rb +47 -0
  487. data/spec/models/role_membership_spec.rb +47 -0
  488. data/spec/models/role_spec.rb +71 -0
  489. data/spec/models/rule_spec.rb +65 -0
  490. data/spec/models/ruleset_spec.rb +89 -0
  491. data/spec/models/session_spec.rb +53 -0
  492. data/spec/models/slot_def_spec.rb +71 -0
  493. data/spec/models/template_arg_def_spec.rb +63 -0
  494. data/spec/models/template_def_spec.rb +101 -0
  495. data/spec/models/update_account_spec.rb +53 -0
  496. data/spec/models/update_campaign_spec.rb +115 -0
  497. data/spec/models/update_coupon_batch_spec.rb +65 -0
  498. data/spec/models/update_coupon_spec.rb +65 -0
  499. data/spec/models/update_loyalty_program_spec.rb +65 -0
  500. data/spec/models/update_role_spec.rb +59 -0
  501. data/spec/models/update_user_spec.rb +93 -0
  502. data/spec/models/user_entity_spec.rb +41 -0
  503. data/spec/models/user_spec.rb +111 -0
  504. data/spec/models/webhook_activation_log_entry_spec.rb +65 -0
  505. data/spec/models/webhook_log_entry_spec.rb +95 -0
  506. data/spec/models/webhook_spec.rb +111 -0
  507. data/spec/spec_helper.rb +111 -0
  508. data/talon_one.gemspec +43 -15
  509. metadata +827 -33
  510. data/.gitignore +0 -3
  511. data/.travis.yml +0 -5
  512. data/lib/integration/client.rb +0 -88
  513. data/lib/integration/client_error.rb +0 -9
  514. data/lib/integration/customer_profile.rb +0 -21
  515. data/lib/integration/effect.rb +0 -20
  516. data/lib/integration/event.rb +0 -45
  517. data/lib/integration/referral_code.rb +0 -49
  518. data/lib/integration/rule_engine_result.rb +0 -23
  519. data/lib/integration/search_profiles_result.rb +0 -17
  520. data/lib/management/client.rb +0 -112
  521. data/test/test_helper.rb +0 -20
  522. data/test/test_integration_api_live.rb +0 -64
  523. data/test/test_integration_params.rb +0 -23
@@ -0,0 +1,224 @@
1
+ =begin
2
+ #Talon.One API
3
+
4
+ #The Talon.One API is used to manage applications and campaigns, as well as to integrate with your application. The operations in the _Integration API_ section are used to integrate with our platform, while the other operations are used to manage applications and campaigns. ### Where is the API? The API is available at the same hostname as these docs. For example, if you are reading this page at `https://mycompany.talon.one/docs/api/`, the URL for the [updateCustomerProfile][] operation is `https://mycompany.talon.one/v1/customer_profiles/id` [updateCustomerProfile]: #operation--v1-customer_profiles--integrationId--put
5
+
6
+ OpenAPI spec version: 1.0.0
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.7
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module TalonOne
16
+ #
17
+ class NewImport
18
+ # The name of the entity that was imported.
19
+ attr_accessor :entity
20
+
21
+ class EnumAttributeValidator
22
+ attr_reader :datatype
23
+ attr_reader :allowable_values
24
+
25
+ def initialize(datatype, allowable_values)
26
+ @allowable_values = allowable_values.map do |value|
27
+ case datatype.to_s
28
+ when /Integer/i
29
+ value.to_i
30
+ when /Float/i
31
+ value.to_f
32
+ else
33
+ value
34
+ end
35
+ end
36
+ end
37
+
38
+ def valid?(value)
39
+ !value || allowable_values.include?(value)
40
+ end
41
+ end
42
+
43
+ # Attribute mapping from ruby-style variable name to JSON key.
44
+ def self.attribute_map
45
+ {
46
+ :'entity' => :'entity'
47
+ }
48
+ end
49
+
50
+ # Attribute type mapping.
51
+ def self.swagger_types
52
+ {
53
+ :'entity' => :'String'
54
+ }
55
+ end
56
+
57
+ # Initializes the object
58
+ # @param [Hash] attributes Model attributes in the form of hash
59
+ def initialize(attributes = {})
60
+ return unless attributes.is_a?(Hash)
61
+
62
+ # convert string to symbol for hash key
63
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
64
+
65
+ if attributes.has_key?(:'entity')
66
+ self.entity = attributes[:'entity']
67
+ end
68
+ end
69
+
70
+ # Show invalid properties with the reasons. Usually used together with valid?
71
+ # @return Array for valid properties with the reasons
72
+ def list_invalid_properties
73
+ invalid_properties = Array.new
74
+ if @entity.nil?
75
+ invalid_properties.push('invalid value for "entity", entity cannot be nil.')
76
+ end
77
+
78
+ invalid_properties
79
+ end
80
+
81
+ # Check to see if the all the properties in the model are valid
82
+ # @return true if the model is valid
83
+ def valid?
84
+ return false if @entity.nil?
85
+ entity_validator = EnumAttributeValidator.new('String', ['Coupon'])
86
+ return false unless entity_validator.valid?(@entity)
87
+ true
88
+ end
89
+
90
+ # Custom attribute writer method checking allowed values (enum).
91
+ # @param [Object] entity Object to be assigned
92
+ def entity=(entity)
93
+ validator = EnumAttributeValidator.new('String', ['Coupon'])
94
+ unless validator.valid?(entity)
95
+ fail ArgumentError, 'invalid value for "entity", must be one of #{validator.allowable_values}.'
96
+ end
97
+ @entity = entity
98
+ end
99
+
100
+ # Checks equality by comparing each attribute.
101
+ # @param [Object] Object to be compared
102
+ def ==(o)
103
+ return true if self.equal?(o)
104
+ self.class == o.class &&
105
+ entity == o.entity
106
+ end
107
+
108
+ # @see the `==` method
109
+ # @param [Object] Object to be compared
110
+ def eql?(o)
111
+ self == o
112
+ end
113
+
114
+ # Calculates hash code according to all attributes.
115
+ # @return [Fixnum] Hash code
116
+ def hash
117
+ [entity].hash
118
+ end
119
+
120
+ # Builds the object from hash
121
+ # @param [Hash] attributes Model attributes in the form of hash
122
+ # @return [Object] Returns the model itself
123
+ def build_from_hash(attributes)
124
+ return nil unless attributes.is_a?(Hash)
125
+ self.class.swagger_types.each_pair do |key, type|
126
+ if type =~ /\AArray<(.*)>/i
127
+ # check to ensure the input is an array given that the the attribute
128
+ # is documented as an array but the input is not
129
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
130
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
131
+ end
132
+ elsif !attributes[self.class.attribute_map[key]].nil?
133
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
134
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
135
+ end
136
+
137
+ self
138
+ end
139
+
140
+ # Deserializes the data based on type
141
+ # @param string type Data type
142
+ # @param string value Value to be deserialized
143
+ # @return [Object] Deserialized data
144
+ def _deserialize(type, value)
145
+ case type.to_sym
146
+ when :DateTime
147
+ DateTime.parse(value)
148
+ when :Date
149
+ Date.parse(value)
150
+ when :String
151
+ value.to_s
152
+ when :Integer
153
+ value.to_i
154
+ when :Float
155
+ value.to_f
156
+ when :BOOLEAN
157
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
158
+ true
159
+ else
160
+ false
161
+ end
162
+ when :Object
163
+ # generic object (usually a Hash), return directly
164
+ value
165
+ when /\AArray<(?<inner_type>.+)>\z/
166
+ inner_type = Regexp.last_match[:inner_type]
167
+ value.map { |v| _deserialize(inner_type, v) }
168
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
169
+ k_type = Regexp.last_match[:k_type]
170
+ v_type = Regexp.last_match[:v_type]
171
+ {}.tap do |hash|
172
+ value.each do |k, v|
173
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
174
+ end
175
+ end
176
+ else # model
177
+ temp_model = TalonOne.const_get(type).new
178
+ temp_model.build_from_hash(value)
179
+ end
180
+ end
181
+
182
+ # Returns the string representation of the object
183
+ # @return [String] String presentation of the object
184
+ def to_s
185
+ to_hash.to_s
186
+ end
187
+
188
+ # to_body is an alias to to_hash (backward compatibility)
189
+ # @return [Hash] Returns the object in the form of hash
190
+ def to_body
191
+ to_hash
192
+ end
193
+
194
+ # Returns the object in the form of hash
195
+ # @return [Hash] Returns the object in the form of hash
196
+ def to_hash
197
+ hash = {}
198
+ self.class.attribute_map.each_pair do |attr, param|
199
+ value = self.send(attr)
200
+ next if value.nil?
201
+ hash[param] = _to_hash(value)
202
+ end
203
+ hash
204
+ end
205
+
206
+ # Outputs non-array value in the form of hash
207
+ # For object, use to_hash. Otherwise, just return the value
208
+ # @param [Object] value Any valid value
209
+ # @return [Hash] Returns the value in the form of hash
210
+ def _to_hash(value)
211
+ if value.is_a?(Array)
212
+ value.compact.map { |v| _to_hash(v) }
213
+ elsif value.is_a?(Hash)
214
+ {}.tap do |hash|
215
+ value.each { |k, v| hash[k] = _to_hash(v) }
216
+ end
217
+ elsif value.respond_to? :to_hash
218
+ value.to_hash
219
+ else
220
+ value
221
+ end
222
+ end
223
+ end
224
+ end
@@ -0,0 +1,226 @@
1
+ =begin
2
+ #Talon.One API
3
+
4
+ #The Talon.One API is used to manage applications and campaigns, as well as to integrate with your application. The operations in the _Integration API_ section are used to integrate with our platform, while the other operations are used to manage applications and campaigns. ### Where is the API? The API is available at the same hostname as these docs. For example, if you are reading this page at `https://mycompany.talon.one/docs/api/`, the URL for the [updateCustomerProfile][] operation is `https://mycompany.talon.one/v1/customer_profiles/id` [updateCustomerProfile]: #operation--v1-customer_profiles--integrationId--put
5
+
6
+ OpenAPI spec version: 1.0.0
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.7
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module TalonOne
16
+ # Parameters for inviting a new user
17
+ class NewInvitation
18
+ # Name of the user being invited.
19
+ attr_accessor :name
20
+
21
+ attr_accessor :email
22
+
23
+ # a blob of acl json
24
+ attr_accessor :acl
25
+
26
+ # An array of roleIDs to assign the new user to
27
+ attr_accessor :roles
28
+
29
+ # Attribute mapping from ruby-style variable name to JSON key.
30
+ def self.attribute_map
31
+ {
32
+ :'name' => :'name',
33
+ :'email' => :'email',
34
+ :'acl' => :'acl',
35
+ :'roles' => :'roles'
36
+ }
37
+ end
38
+
39
+ # Attribute type mapping.
40
+ def self.swagger_types
41
+ {
42
+ :'name' => :'String',
43
+ :'email' => :'String',
44
+ :'acl' => :'String',
45
+ :'roles' => :'Array<Integer>'
46
+ }
47
+ end
48
+
49
+ # Initializes the object
50
+ # @param [Hash] attributes Model attributes in the form of hash
51
+ def initialize(attributes = {})
52
+ return unless attributes.is_a?(Hash)
53
+
54
+ # convert string to symbol for hash key
55
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
56
+
57
+ if attributes.has_key?(:'name')
58
+ self.name = attributes[:'name']
59
+ end
60
+
61
+ if attributes.has_key?(:'email')
62
+ self.email = attributes[:'email']
63
+ end
64
+
65
+ if attributes.has_key?(:'acl')
66
+ self.acl = attributes[:'acl']
67
+ end
68
+
69
+ if attributes.has_key?(:'roles')
70
+ if (value = attributes[:'roles']).is_a?(Array)
71
+ self.roles = value
72
+ end
73
+ end
74
+ end
75
+
76
+ # Show invalid properties with the reasons. Usually used together with valid?
77
+ # @return Array for valid properties with the reasons
78
+ def list_invalid_properties
79
+ invalid_properties = Array.new
80
+ if @email.nil?
81
+ invalid_properties.push('invalid value for "email", email cannot be nil.')
82
+ end
83
+
84
+ if @acl.nil?
85
+ invalid_properties.push('invalid value for "acl", acl cannot be nil.')
86
+ end
87
+
88
+ invalid_properties
89
+ end
90
+
91
+ # Check to see if the all the properties in the model are valid
92
+ # @return true if the model is valid
93
+ def valid?
94
+ return false if @email.nil?
95
+ return false if @acl.nil?
96
+ true
97
+ end
98
+
99
+ # Checks equality by comparing each attribute.
100
+ # @param [Object] Object to be compared
101
+ def ==(o)
102
+ return true if self.equal?(o)
103
+ self.class == o.class &&
104
+ name == o.name &&
105
+ email == o.email &&
106
+ acl == o.acl &&
107
+ roles == o.roles
108
+ end
109
+
110
+ # @see the `==` method
111
+ # @param [Object] Object to be compared
112
+ def eql?(o)
113
+ self == o
114
+ end
115
+
116
+ # Calculates hash code according to all attributes.
117
+ # @return [Fixnum] Hash code
118
+ def hash
119
+ [name, email, acl, roles].hash
120
+ end
121
+
122
+ # Builds the object from hash
123
+ # @param [Hash] attributes Model attributes in the form of hash
124
+ # @return [Object] Returns the model itself
125
+ def build_from_hash(attributes)
126
+ return nil unless attributes.is_a?(Hash)
127
+ self.class.swagger_types.each_pair do |key, type|
128
+ if type =~ /\AArray<(.*)>/i
129
+ # check to ensure the input is an array given that the the attribute
130
+ # is documented as an array but the input is not
131
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
132
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
133
+ end
134
+ elsif !attributes[self.class.attribute_map[key]].nil?
135
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
136
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
137
+ end
138
+
139
+ self
140
+ end
141
+
142
+ # Deserializes the data based on type
143
+ # @param string type Data type
144
+ # @param string value Value to be deserialized
145
+ # @return [Object] Deserialized data
146
+ def _deserialize(type, value)
147
+ case type.to_sym
148
+ when :DateTime
149
+ DateTime.parse(value)
150
+ when :Date
151
+ Date.parse(value)
152
+ when :String
153
+ value.to_s
154
+ when :Integer
155
+ value.to_i
156
+ when :Float
157
+ value.to_f
158
+ when :BOOLEAN
159
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
160
+ true
161
+ else
162
+ false
163
+ end
164
+ when :Object
165
+ # generic object (usually a Hash), return directly
166
+ value
167
+ when /\AArray<(?<inner_type>.+)>\z/
168
+ inner_type = Regexp.last_match[:inner_type]
169
+ value.map { |v| _deserialize(inner_type, v) }
170
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
171
+ k_type = Regexp.last_match[:k_type]
172
+ v_type = Regexp.last_match[:v_type]
173
+ {}.tap do |hash|
174
+ value.each do |k, v|
175
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
176
+ end
177
+ end
178
+ else # model
179
+ temp_model = TalonOne.const_get(type).new
180
+ temp_model.build_from_hash(value)
181
+ end
182
+ end
183
+
184
+ # Returns the string representation of the object
185
+ # @return [String] String presentation of the object
186
+ def to_s
187
+ to_hash.to_s
188
+ end
189
+
190
+ # to_body is an alias to to_hash (backward compatibility)
191
+ # @return [Hash] Returns the object in the form of hash
192
+ def to_body
193
+ to_hash
194
+ end
195
+
196
+ # Returns the object in the form of hash
197
+ # @return [Hash] Returns the object in the form of hash
198
+ def to_hash
199
+ hash = {}
200
+ self.class.attribute_map.each_pair do |attr, param|
201
+ value = self.send(attr)
202
+ next if value.nil?
203
+ hash[param] = _to_hash(value)
204
+ end
205
+ hash
206
+ end
207
+
208
+ # Outputs non-array value in the form of hash
209
+ # For object, use to_hash. Otherwise, just return the value
210
+ # @param [Object] value Any valid value
211
+ # @return [Hash] Returns the value in the form of hash
212
+ def _to_hash(value)
213
+ if value.is_a?(Array)
214
+ value.compact.map { |v| _to_hash(v) }
215
+ elsif value.is_a?(Hash)
216
+ {}.tap do |hash|
217
+ value.each { |k, v| hash[k] = _to_hash(v) }
218
+ end
219
+ elsif value.respond_to? :to_hash
220
+ value.to_hash
221
+ else
222
+ value
223
+ end
224
+ end
225
+ end
226
+ end
@@ -0,0 +1,240 @@
1
+ =begin
2
+ #Talon.One API
3
+
4
+ #The Talon.One API is used to manage applications and campaigns, as well as to integrate with your application. The operations in the _Integration API_ section are used to integrate with our platform, while the other operations are used to manage applications and campaigns. ### Where is the API? The API is available at the same hostname as these docs. For example, if you are reading this page at `https://mycompany.talon.one/docs/api/`, the URL for the [updateCustomerProfile][] operation is `https://mycompany.talon.one/v1/customer_profiles/id` [updateCustomerProfile]: #operation--v1-customer_profiles--integrationId--put
5
+
6
+ OpenAPI spec version: 1.0.0
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.7
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module TalonOne
16
+ class NewInviteEmail
17
+ attr_accessor :email
18
+
19
+ attr_accessor :token
20
+
21
+ # Attribute mapping from ruby-style variable name to JSON key.
22
+ def self.attribute_map
23
+ {
24
+ :'email' => :'email',
25
+ :'token' => :'token'
26
+ }
27
+ end
28
+
29
+ # Attribute type mapping.
30
+ def self.swagger_types
31
+ {
32
+ :'email' => :'String',
33
+ :'token' => :'String'
34
+ }
35
+ end
36
+
37
+ # Initializes the object
38
+ # @param [Hash] attributes Model attributes in the form of hash
39
+ def initialize(attributes = {})
40
+ return unless attributes.is_a?(Hash)
41
+
42
+ # convert string to symbol for hash key
43
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
44
+
45
+ if attributes.has_key?(:'email')
46
+ self.email = attributes[:'email']
47
+ end
48
+
49
+ if attributes.has_key?(:'token')
50
+ self.token = attributes[:'token']
51
+ end
52
+ end
53
+
54
+ # Show invalid properties with the reasons. Usually used together with valid?
55
+ # @return Array for valid properties with the reasons
56
+ def list_invalid_properties
57
+ invalid_properties = Array.new
58
+ if @email.nil?
59
+ invalid_properties.push('invalid value for "email", email cannot be nil.')
60
+ end
61
+
62
+ if @email.to_s.length < 1
63
+ invalid_properties.push('invalid value for "email", the character length must be great than or equal to 1.')
64
+ end
65
+
66
+ if @token.nil?
67
+ invalid_properties.push('invalid value for "token", token cannot be nil.')
68
+ end
69
+
70
+ if @token.to_s.length < 1
71
+ invalid_properties.push('invalid value for "token", the character length must be great than or equal to 1.')
72
+ end
73
+
74
+ invalid_properties
75
+ end
76
+
77
+ # Check to see if the all the properties in the model are valid
78
+ # @return true if the model is valid
79
+ def valid?
80
+ return false if @email.nil?
81
+ return false if @email.to_s.length < 1
82
+ return false if @token.nil?
83
+ return false if @token.to_s.length < 1
84
+ true
85
+ end
86
+
87
+ # Custom attribute writer method with validation
88
+ # @param [Object] email Value to be assigned
89
+ def email=(email)
90
+ if email.nil?
91
+ fail ArgumentError, 'email cannot be nil'
92
+ end
93
+
94
+ if email.to_s.length < 1
95
+ fail ArgumentError, 'invalid value for "email", the character length must be great than or equal to 1.'
96
+ end
97
+
98
+ @email = email
99
+ end
100
+
101
+ # Custom attribute writer method with validation
102
+ # @param [Object] token Value to be assigned
103
+ def token=(token)
104
+ if token.nil?
105
+ fail ArgumentError, 'token cannot be nil'
106
+ end
107
+
108
+ if token.to_s.length < 1
109
+ fail ArgumentError, 'invalid value for "token", the character length must be great than or equal to 1.'
110
+ end
111
+
112
+ @token = token
113
+ end
114
+
115
+ # Checks equality by comparing each attribute.
116
+ # @param [Object] Object to be compared
117
+ def ==(o)
118
+ return true if self.equal?(o)
119
+ self.class == o.class &&
120
+ email == o.email &&
121
+ token == o.token
122
+ end
123
+
124
+ # @see the `==` method
125
+ # @param [Object] Object to be compared
126
+ def eql?(o)
127
+ self == o
128
+ end
129
+
130
+ # Calculates hash code according to all attributes.
131
+ # @return [Fixnum] Hash code
132
+ def hash
133
+ [email, token].hash
134
+ end
135
+
136
+ # Builds the object from hash
137
+ # @param [Hash] attributes Model attributes in the form of hash
138
+ # @return [Object] Returns the model itself
139
+ def build_from_hash(attributes)
140
+ return nil unless attributes.is_a?(Hash)
141
+ self.class.swagger_types.each_pair do |key, type|
142
+ if type =~ /\AArray<(.*)>/i
143
+ # check to ensure the input is an array given that the the attribute
144
+ # is documented as an array but the input is not
145
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
146
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
147
+ end
148
+ elsif !attributes[self.class.attribute_map[key]].nil?
149
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
150
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
151
+ end
152
+
153
+ self
154
+ end
155
+
156
+ # Deserializes the data based on type
157
+ # @param string type Data type
158
+ # @param string value Value to be deserialized
159
+ # @return [Object] Deserialized data
160
+ def _deserialize(type, value)
161
+ case type.to_sym
162
+ when :DateTime
163
+ DateTime.parse(value)
164
+ when :Date
165
+ Date.parse(value)
166
+ when :String
167
+ value.to_s
168
+ when :Integer
169
+ value.to_i
170
+ when :Float
171
+ value.to_f
172
+ when :BOOLEAN
173
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
174
+ true
175
+ else
176
+ false
177
+ end
178
+ when :Object
179
+ # generic object (usually a Hash), return directly
180
+ value
181
+ when /\AArray<(?<inner_type>.+)>\z/
182
+ inner_type = Regexp.last_match[:inner_type]
183
+ value.map { |v| _deserialize(inner_type, v) }
184
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
185
+ k_type = Regexp.last_match[:k_type]
186
+ v_type = Regexp.last_match[:v_type]
187
+ {}.tap do |hash|
188
+ value.each do |k, v|
189
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
190
+ end
191
+ end
192
+ else # model
193
+ temp_model = TalonOne.const_get(type).new
194
+ temp_model.build_from_hash(value)
195
+ end
196
+ end
197
+
198
+ # Returns the string representation of the object
199
+ # @return [String] String presentation of the object
200
+ def to_s
201
+ to_hash.to_s
202
+ end
203
+
204
+ # to_body is an alias to to_hash (backward compatibility)
205
+ # @return [Hash] Returns the object in the form of hash
206
+ def to_body
207
+ to_hash
208
+ end
209
+
210
+ # Returns the object in the form of hash
211
+ # @return [Hash] Returns the object in the form of hash
212
+ def to_hash
213
+ hash = {}
214
+ self.class.attribute_map.each_pair do |attr, param|
215
+ value = self.send(attr)
216
+ next if value.nil?
217
+ hash[param] = _to_hash(value)
218
+ end
219
+ hash
220
+ end
221
+
222
+ # Outputs non-array value in the form of hash
223
+ # For object, use to_hash. Otherwise, just return the value
224
+ # @param [Object] value Any valid value
225
+ # @return [Hash] Returns the value in the form of hash
226
+ def _to_hash(value)
227
+ if value.is_a?(Array)
228
+ value.compact.map { |v| _to_hash(v) }
229
+ elsif value.is_a?(Hash)
230
+ {}.tap do |hash|
231
+ value.each { |k, v| hash[k] = _to_hash(v) }
232
+ end
233
+ elsif value.respond_to? :to_hash
234
+ value.to_hash
235
+ else
236
+ value
237
+ end
238
+ end
239
+ end
240
+ end