purecloudplatformclientv2 58.0.1 → 59.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (450) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +2 -2
  3. data/docs/ActionEntityListing.md +1 -1
  4. data/docs/{Skill.md → AddressableEntityRef.md} +2 -2
  5. data/docs/Agent.md +1 -2
  6. data/docs/AgentActivityEntityListing.md +1 -1
  7. data/docs/ArchitectApi.md +298 -14
  8. data/docs/AsyncConversationQuery.md +21 -0
  9. data/docs/AttemptLimitsEntityListing.md +1 -1
  10. data/docs/AuthzDivisionEntityListing.md +1 -1
  11. data/docs/CalibrationEntityListing.md +1 -1
  12. data/docs/CallConversationEntityListing.md +1 -1
  13. data/docs/CallHistoryConversation.md +1 -0
  14. data/docs/CallHistoryConversationEntityListing.md +1 -1
  15. data/docs/CallHistoryParticipant.md +1 -0
  16. data/docs/CallableTimeSetEntityListing.md +1 -1
  17. data/docs/CallbackConversationEntityListing.md +1 -1
  18. data/docs/CampaignDivisionViewListing.md +1 -1
  19. data/docs/CampaignEntityListing.md +1 -1
  20. data/docs/CampaignRuleEntityListing.md +1 -1
  21. data/docs/CampaignSequenceEntityListing.md +1 -1
  22. data/docs/CertificateAuthorityEntityListing.md +1 -1
  23. data/docs/ChatConversationEntityListing.md +1 -1
  24. data/docs/ClientAppEntityListing.md +1 -1
  25. data/docs/CobrowseConversationEntityListing.md +1 -1
  26. data/docs/CommandStatusEntityListing.md +1 -1
  27. data/docs/ConsumedResourcesEntityListing.md +1 -1
  28. data/docs/ConsumingResourcesEntityListing.md +1 -1
  29. data/docs/ContactListDivisionViewListing.md +1 -1
  30. data/docs/ContactListEntityListing.md +1 -1
  31. data/docs/ContactListFilterEntityListing.md +1 -1
  32. data/docs/ContactListing.md +1 -1
  33. data/docs/Conversation.md +1 -0
  34. data/docs/ConversationBasic.md +1 -0
  35. data/docs/ConversationChatEventTopicChatMediaParticipant.md +1 -0
  36. data/docs/ConversationEntityListing.md +1 -1
  37. data/docs/ConversationEventTopicChat.md +1 -0
  38. data/docs/ConversationProperties.md +1 -0
  39. data/docs/ConversationRoutingData.md +3 -3
  40. data/docs/CreateManagementUnitApiRequest.md +1 -1
  41. data/docs/CreateUser.md +1 -1
  42. data/docs/CredentialInfoListing.md +1 -1
  43. data/docs/CredentialTypeListing.md +1 -1
  44. data/docs/DIDEntityListing.md +1 -1
  45. data/docs/DIDPoolEntityListing.md +1 -1
  46. data/docs/DataSchema.md +4 -5
  47. data/docs/DataTableRowEntityListing.md +1 -1
  48. data/docs/DataTablesDomainEntityListing.md +1 -1
  49. data/docs/DependencyObjectEntityListing.md +1 -1
  50. data/docs/DependencyTypeEntityListing.md +1 -1
  51. data/docs/DialerEventEntityListing.md +1 -1
  52. data/docs/DialogflowAgent.md +18 -0
  53. data/docs/DialogflowAgentSummary.md +17 -0
  54. data/docs/DialogflowAgentSummaryEntityListing.md +22 -0
  55. data/docs/DialogflowIntent.md +14 -0
  56. data/docs/DialogflowParameter.md +14 -0
  57. data/docs/DialogflowProject.md +14 -0
  58. data/docs/DirectoryUserDevicesListing.md +1 -1
  59. data/docs/DncListDivisionViewListing.md +1 -1
  60. data/docs/DncListEntityListing.md +1 -1
  61. data/docs/DocumentAuditEntityListing.md +1 -1
  62. data/docs/DocumentEntityListing.md +1 -1
  63. data/docs/DomainEdgeSoftwareVersionDtoEntityListing.md +1 -1
  64. data/docs/DomainEntityListing.md +1 -1
  65. data/docs/DomainEntityListingEvaluationForm.md +1 -1
  66. data/docs/DomainEntityListingQueryResult.md +1 -1
  67. data/docs/DomainEntityListingSurveyForm.md +1 -1
  68. data/docs/EdgeEntityListing.md +1 -1
  69. data/docs/EdgeGroupEntityListing.md +1 -1
  70. data/docs/EdgeLineEntityListing.md +1 -1
  71. data/docs/EmailConversationEntityListing.md +1 -1
  72. data/docs/EmailMediaParticipant.md +1 -0
  73. data/docs/EmailMessage.md +1 -0
  74. data/docs/EmailMessageListing.md +1 -1
  75. data/docs/EmergencyGroupListing.md +1 -1
  76. data/docs/EncryptionKeyEntityListing.md +1 -1
  77. data/docs/EvaluationEntityListing.md +1 -1
  78. data/docs/EvaluationFormEntityListing.md +1 -1
  79. data/docs/EvaluatorActivityEntityListing.md +1 -1
  80. data/docs/ExecuteRecordingJobsQuery.md +13 -0
  81. data/docs/ExtensionEntityListing.md +1 -1
  82. data/docs/ExtensionPoolEntityListing.md +1 -1
  83. data/docs/ExternalOrganizationListing.md +1 -1
  84. data/docs/FacebookIntegrationEntityListing.md +1 -1
  85. data/docs/FaxDocumentEntityListing.md +1 -1
  86. data/docs/FlowDivisionViewEntityListing.md +1 -1
  87. data/docs/FlowEntityListing.md +1 -1
  88. data/docs/FlowOutcome.md +17 -0
  89. data/docs/FlowOutcomeListing.md +22 -0
  90. data/docs/FlowVersionEntityListing.md +1 -1
  91. data/docs/GDPRRequestEntityListing.md +1 -1
  92. data/docs/GDPRSubjectEntityListing.md +1 -1
  93. data/docs/GreetingListing.md +1 -1
  94. data/docs/GroupEntityListing.md +1 -1
  95. data/docs/GroupProfileEntityListing.md +1 -1
  96. data/docs/IVREntityListing.md +1 -1
  97. data/docs/InboundDomainEntityListing.md +1 -1
  98. data/docs/InboundRouteEntityListing.md +1 -1
  99. data/docs/IntegrationEntityListing.md +1 -1
  100. data/docs/IntegrationEventEntityListing.md +1 -1
  101. data/docs/IntegrationTypeEntityListing.md +1 -1
  102. data/docs/IntegrationsApi.md +762 -0
  103. data/docs/InteractionStatsAlertContainer.md +1 -1
  104. data/docs/InteractionStatsRuleContainer.md +1 -1
  105. data/docs/KeywordSetEntityListing.md +1 -1
  106. data/docs/LanguageEntityListing.md +1 -1
  107. data/docs/LanguageOverride.md +15 -0
  108. data/docs/LexBot.md +16 -0
  109. data/docs/LexBotAlias.md +21 -0
  110. data/docs/LexBotAliasEntityListing.md +22 -0
  111. data/docs/LexBotEntityListing.md +22 -0
  112. data/docs/LexIntent.md +16 -0
  113. data/docs/LexSlot.md +16 -0
  114. data/docs/LibraryEntityListing.md +1 -1
  115. data/docs/LineBaseEntityListing.md +1 -1
  116. data/docs/LineEntityListing.md +1 -1
  117. data/docs/LineIntegrationEntityListing.md +1 -1
  118. data/docs/LocationDefinition.md +2 -0
  119. data/docs/LocationEntityListing.md +1 -1
  120. data/docs/LocationImage.md +14 -0
  121. data/docs/LocationsApi.md +6 -2
  122. data/docs/LogicalInterfaceEntityListing.md +1 -1
  123. data/docs/ManagementUnit.md +5 -6
  124. data/docs/ManagementUnitListing.md +1 -1
  125. data/docs/MessageConversationEntityListing.md +1 -1
  126. data/docs/MessagingApi.md +1211 -134
  127. data/docs/MessagingIntegration.md +23 -0
  128. data/docs/MessagingIntegrationEntityListing.md +22 -0
  129. data/docs/MessagingStickerEntityListing.md +1 -1
  130. data/docs/MoveManagementUnitRequest.md +13 -0
  131. data/docs/MoveManagementUnitResponse.md +14 -0
  132. data/docs/NoteListing.md +1 -1
  133. data/docs/OAuthClientEntityListing.md +1 -1
  134. data/docs/OAuthProviderEntityListing.md +1 -1
  135. data/docs/OrganizationPresenceEntityListing.md +1 -1
  136. data/docs/OrganizationRoleEntityListing.md +1 -1
  137. data/docs/OrphanRecordingListing.md +1 -1
  138. data/docs/OutboundRouteBaseEntityListing.md +1 -1
  139. data/docs/OutboundRouteEntityListing.md +1 -1
  140. data/docs/PermissionCollectionEntityListing.md +1 -1
  141. data/docs/PhoneBaseEntityListing.md +1 -1
  142. data/docs/PhoneEntityListing.md +1 -1
  143. data/docs/PhoneMetaBaseEntityListing.md +1 -1
  144. data/docs/PhysicalInterfaceEntityListing.md +1 -1
  145. data/docs/PolicyEntityListing.md +1 -1
  146. data/docs/PromptAssetEntityListing.md +1 -1
  147. data/docs/PromptEntityListing.md +1 -1
  148. data/docs/QualityAudit.md +1 -0
  149. data/docs/QualityAuditPage.md +1 -1
  150. data/docs/QueueConversationChatEventTopicChatMediaParticipant.md +1 -0
  151. data/docs/QueueConversationEventTopicChat.md +1 -0
  152. data/docs/QueueConversationSocialExpressionEventTopicChat.md +1 -0
  153. data/docs/QueueConversationVideoEventTopicChat.md +1 -0
  154. data/docs/QueueEntityListing.md +1 -1
  155. data/docs/QueueMemberEntityListing.md +1 -1
  156. data/docs/RecipientListing.md +1 -1
  157. data/docs/RecordingApi.md +335 -0
  158. data/docs/RecordingJob.md +23 -0
  159. data/docs/RecordingJobEntityListing.md +22 -0
  160. data/docs/RecordingJobsQuery.md +15 -0
  161. data/docs/RelationshipListing.md +1 -1
  162. data/docs/ReportMetaDataEntityListing.md +1 -1
  163. data/docs/ReportRunEntryEntityDomainListing.md +1 -1
  164. data/docs/ReportScheduleEntityListing.md +1 -1
  165. data/docs/ReportingExportJobListing.md +1 -1
  166. data/docs/ResponseEntityList.md +1 -1
  167. data/docs/ResponseEntityListing.md +1 -1
  168. data/docs/ResponseSetEntityListing.md +1 -1
  169. data/docs/RoutingApi.md +1 -1
  170. data/docs/RuleSetEntityListing.md +1 -1
  171. data/docs/SCIMApi.md +145 -145
  172. data/docs/ScheduleEntityListing.md +1 -1
  173. data/docs/ScheduleGroupEntityListing.md +1 -1
  174. data/docs/SchemaCategoryEntityListing.md +1 -1
  175. data/docs/SchemaReferenceEntityListing.md +1 -1
  176. data/docs/ScoredAgent.md +1 -1
  177. data/docs/ScreenRecordingSessionListing.md +1 -1
  178. data/docs/ScriptEntityListing.md +1 -1
  179. data/docs/SecurityProfileEntityListing.md +1 -1
  180. data/docs/ShareEntityListing.md +1 -1
  181. data/docs/SiteEntityListing.md +1 -1
  182. data/docs/SkillEntityListing.md +1 -1
  183. data/docs/SmsPhoneNumberEntityListing.md +1 -1
  184. data/docs/StationEntityListing.md +1 -1
  185. data/docs/SubjectDivisionGrantsEntityListing.md +1 -1
  186. data/docs/SubscriptionOverviewUsage.md +1 -0
  187. data/docs/SurveyFormEntityListing.md +1 -1
  188. data/docs/SystemPromptAssetEntityListing.md +1 -1
  189. data/docs/SystemPromptEntityListing.md +1 -1
  190. data/docs/TagValueEntityListing.md +1 -1
  191. data/docs/TextMessageListing.md +1 -1
  192. data/docs/TimeZoneEntityListing.md +1 -1
  193. data/docs/TrunkBaseEntityListing.md +1 -1
  194. data/docs/TrunkEntityListing.md +1 -1
  195. data/docs/TrunkMetabaseEntityListing.md +1 -1
  196. data/docs/TrustEntityListing.md +1 -1
  197. data/docs/TrustUserEntityListing.md +1 -1
  198. data/docs/TrustorEntityListing.md +1 -1
  199. data/docs/TtsEngineEntity.md +20 -0
  200. data/docs/TtsEngineEntityListing.md +22 -0
  201. data/docs/TtsSettings.md +14 -0
  202. data/docs/TtsVoiceEntity.md +19 -0
  203. data/docs/TtsVoiceEntityListing.md +22 -0
  204. data/docs/TwitterIntegrationEntityListing.md +1 -1
  205. data/docs/UpdateManagementUnitRequest.md +15 -0
  206. data/docs/UserActionCategoryEntityListing.md +1 -1
  207. data/docs/UserEntityListing.md +1 -1
  208. data/docs/UserLanguageEntityListing.md +1 -1
  209. data/docs/UserProfileEntityListing.md +1 -1
  210. data/docs/UserQueueEntityListing.md +1 -1
  211. data/docs/UserRecordingEntityListing.md +1 -1
  212. data/docs/UserSkillEntityListing.md +1 -1
  213. data/docs/VoicemailMessageEntityListing.md +1 -1
  214. data/docs/WebChatMemberInfoEntityList.md +1 -1
  215. data/docs/WfmMoveManagementUnitTopicBusinessUnit.md +13 -0
  216. data/docs/WfmMoveManagementUnitTopicMoveManagementUnitNotification.md +14 -0
  217. data/docs/WfmUserNotificationTopicTimeOffRequestNotification.md +18 -0
  218. data/docs/WfmUserNotificationTopicWfmUserNotification.md +1 -0
  219. data/docs/WorkforceManagementApi.md +158 -18
  220. data/docs/WorkspaceEntityListing.md +1 -1
  221. data/docs/WorkspaceMemberEntityListing.md +1 -1
  222. data/docs/WrapupCodeEntityListing.md +1 -1
  223. data/lib/purecloudplatformclientv2.rb +35 -1
  224. data/lib/purecloudplatformclientv2/api/architect_api.rb +334 -6
  225. data/lib/purecloudplatformclientv2/api/integrations_api.rb +851 -0
  226. data/lib/purecloudplatformclientv2/api/locations_api.rb +9 -0
  227. data/lib/purecloudplatformclientv2/api/messaging_api.rb +1111 -6
  228. data/lib/purecloudplatformclientv2/api/recording_api.rb +342 -0
  229. data/lib/purecloudplatformclientv2/api/routing_api.rb +2 -2
  230. data/lib/purecloudplatformclientv2/api/scim_api.rb +124 -124
  231. data/lib/purecloudplatformclientv2/api/workforce_management_api.rb +163 -21
  232. data/lib/purecloudplatformclientv2/api_client.rb +1 -1
  233. data/lib/purecloudplatformclientv2/models/action_entity_listing.rb +12 -12
  234. data/lib/purecloudplatformclientv2/models/{skill.rb → addressable_entity_ref.rb} +1 -1
  235. data/lib/purecloudplatformclientv2/models/agent.rb +8 -32
  236. data/lib/purecloudplatformclientv2/models/agent_activity_entity_listing.rb +12 -12
  237. data/lib/purecloudplatformclientv2/models/async_conversation_query.rb +448 -0
  238. data/lib/purecloudplatformclientv2/models/attempt_limits_entity_listing.rb +12 -12
  239. data/lib/purecloudplatformclientv2/models/authz_division_entity_listing.rb +12 -12
  240. data/lib/purecloudplatformclientv2/models/calibration_entity_listing.rb +12 -12
  241. data/lib/purecloudplatformclientv2/models/call_conversation_entity_listing.rb +12 -12
  242. data/lib/purecloudplatformclientv2/models/call_history_conversation.rb +27 -1
  243. data/lib/purecloudplatformclientv2/models/call_history_conversation_entity_listing.rb +12 -12
  244. data/lib/purecloudplatformclientv2/models/call_history_participant.rb +30 -4
  245. data/lib/purecloudplatformclientv2/models/callable_time_set_entity_listing.rb +12 -12
  246. data/lib/purecloudplatformclientv2/models/callback_conversation_entity_listing.rb +12 -12
  247. data/lib/purecloudplatformclientv2/models/campaign_division_view_listing.rb +12 -12
  248. data/lib/purecloudplatformclientv2/models/campaign_entity_listing.rb +12 -12
  249. data/lib/purecloudplatformclientv2/models/campaign_rule_entity_listing.rb +12 -12
  250. data/lib/purecloudplatformclientv2/models/campaign_sequence_entity_listing.rb +12 -12
  251. data/lib/purecloudplatformclientv2/models/certificate_authority_entity_listing.rb +12 -12
  252. data/lib/purecloudplatformclientv2/models/chat_conversation_entity_listing.rb +12 -12
  253. data/lib/purecloudplatformclientv2/models/client_app_entity_listing.rb +12 -12
  254. data/lib/purecloudplatformclientv2/models/cobrowse_conversation_entity_listing.rb +12 -12
  255. data/lib/purecloudplatformclientv2/models/command_status_entity_listing.rb +12 -12
  256. data/lib/purecloudplatformclientv2/models/consumed_resources_entity_listing.rb +12 -12
  257. data/lib/purecloudplatformclientv2/models/consuming_resources_entity_listing.rb +12 -12
  258. data/lib/purecloudplatformclientv2/models/contact_list_division_view_listing.rb +12 -12
  259. data/lib/purecloudplatformclientv2/models/contact_list_entity_listing.rb +12 -12
  260. data/lib/purecloudplatformclientv2/models/contact_list_filter_entity_listing.rb +12 -12
  261. data/lib/purecloudplatformclientv2/models/contact_listing.rb +12 -12
  262. data/lib/purecloudplatformclientv2/models/conversation.rb +29 -1
  263. data/lib/purecloudplatformclientv2/models/conversation_basic.rb +29 -1
  264. data/lib/purecloudplatformclientv2/models/conversation_chat_event_topic_chat_media_participant.rb +29 -4
  265. data/lib/purecloudplatformclientv2/models/conversation_entity_listing.rb +12 -12
  266. data/lib/purecloudplatformclientv2/models/conversation_event_topic_chat.rb +26 -1
  267. data/lib/purecloudplatformclientv2/models/conversation_properties.rb +27 -1
  268. data/lib/purecloudplatformclientv2/models/conversation_routing_data.rb +3 -3
  269. data/lib/purecloudplatformclientv2/models/create_management_unit_api_request.rb +1 -1
  270. data/lib/purecloudplatformclientv2/models/create_user.rb +5 -0
  271. data/lib/purecloudplatformclientv2/models/credential_info_listing.rb +12 -12
  272. data/lib/purecloudplatformclientv2/models/credential_type_listing.rb +12 -12
  273. data/lib/purecloudplatformclientv2/models/data_schema.rb +5 -31
  274. data/lib/purecloudplatformclientv2/models/data_table_row_entity_listing.rb +12 -12
  275. data/lib/purecloudplatformclientv2/models/data_tables_domain_entity_listing.rb +12 -12
  276. data/lib/purecloudplatformclientv2/models/dependency.rb +2 -2
  277. data/lib/purecloudplatformclientv2/models/dependency_object.rb +2 -2
  278. data/lib/purecloudplatformclientv2/models/dependency_object_entity_listing.rb +12 -12
  279. data/lib/purecloudplatformclientv2/models/dependency_type_entity_listing.rb +12 -12
  280. data/lib/purecloudplatformclientv2/models/dialer_event_entity_listing.rb +12 -12
  281. data/lib/purecloudplatformclientv2/models/dialogflow_agent.rb +335 -0
  282. data/lib/purecloudplatformclientv2/models/dialogflow_agent_summary.rb +305 -0
  283. data/lib/purecloudplatformclientv2/models/dialogflow_agent_summary_entity_listing.rb +428 -0
  284. data/lib/purecloudplatformclientv2/models/dialogflow_intent.rb +240 -0
  285. data/lib/purecloudplatformclientv2/models/dialogflow_parameter.rb +238 -0
  286. data/lib/purecloudplatformclientv2/models/dialogflow_project.rb +226 -0
  287. data/lib/purecloudplatformclientv2/models/did_entity_listing.rb +12 -12
  288. data/lib/purecloudplatformclientv2/models/did_pool_entity_listing.rb +12 -12
  289. data/lib/purecloudplatformclientv2/models/directory_user_devices_listing.rb +12 -12
  290. data/lib/purecloudplatformclientv2/models/dnc_list_division_view_listing.rb +12 -12
  291. data/lib/purecloudplatformclientv2/models/dnc_list_entity_listing.rb +12 -12
  292. data/lib/purecloudplatformclientv2/models/document_audit_entity_listing.rb +12 -12
  293. data/lib/purecloudplatformclientv2/models/document_entity_listing.rb +12 -12
  294. data/lib/purecloudplatformclientv2/models/domain_edge_software_version_dto_entity_listing.rb +12 -12
  295. data/lib/purecloudplatformclientv2/models/domain_entity_listing.rb +12 -12
  296. data/lib/purecloudplatformclientv2/models/domain_entity_listing_evaluation_form.rb +12 -12
  297. data/lib/purecloudplatformclientv2/models/domain_entity_listing_query_result.rb +12 -12
  298. data/lib/purecloudplatformclientv2/models/domain_entity_listing_survey_form.rb +12 -12
  299. data/lib/purecloudplatformclientv2/models/edge_entity_listing.rb +12 -12
  300. data/lib/purecloudplatformclientv2/models/edge_group_entity_listing.rb +12 -12
  301. data/lib/purecloudplatformclientv2/models/edge_line_entity_listing.rb +12 -12
  302. data/lib/purecloudplatformclientv2/models/email_conversation_entity_listing.rb +12 -12
  303. data/lib/purecloudplatformclientv2/models/email_media_participant.rb +30 -4
  304. data/lib/purecloudplatformclientv2/models/email_message.rb +27 -1
  305. data/lib/purecloudplatformclientv2/models/email_message_listing.rb +12 -12
  306. data/lib/purecloudplatformclientv2/models/emergency_group_listing.rb +12 -12
  307. data/lib/purecloudplatformclientv2/models/encryption_key_entity_listing.rb +12 -12
  308. data/lib/purecloudplatformclientv2/models/evaluation_entity_listing.rb +12 -12
  309. data/lib/purecloudplatformclientv2/models/evaluation_form_entity_listing.rb +12 -12
  310. data/lib/purecloudplatformclientv2/models/evaluator_activity_entity_listing.rb +12 -12
  311. data/lib/purecloudplatformclientv2/models/execute_recording_jobs_query.rb +221 -0
  312. data/lib/purecloudplatformclientv2/models/extension_entity_listing.rb +12 -12
  313. data/lib/purecloudplatformclientv2/models/extension_pool_entity_listing.rb +12 -12
  314. data/lib/purecloudplatformclientv2/models/external_organization_listing.rb +12 -12
  315. data/lib/purecloudplatformclientv2/models/facebook_integration_entity_listing.rb +12 -12
  316. data/lib/purecloudplatformclientv2/models/fax_document_entity_listing.rb +12 -12
  317. data/lib/purecloudplatformclientv2/models/flow_division_view_entity_listing.rb +12 -12
  318. data/lib/purecloudplatformclientv2/models/flow_entity_listing.rb +12 -12
  319. data/lib/purecloudplatformclientv2/models/flow_outcome.rb +309 -0
  320. data/lib/purecloudplatformclientv2/models/flow_outcome_listing.rb +428 -0
  321. data/lib/purecloudplatformclientv2/models/flow_version_entity_listing.rb +12 -12
  322. data/lib/purecloudplatformclientv2/models/gdpr_request_entity_listing.rb +12 -12
  323. data/lib/purecloudplatformclientv2/models/gdpr_subject_entity_listing.rb +12 -12
  324. data/lib/purecloudplatformclientv2/models/greeting_listing.rb +12 -12
  325. data/lib/purecloudplatformclientv2/models/group_entity_listing.rb +12 -12
  326. data/lib/purecloudplatformclientv2/models/group_profile_entity_listing.rb +12 -12
  327. data/lib/purecloudplatformclientv2/models/inbound_domain_entity_listing.rb +12 -12
  328. data/lib/purecloudplatformclientv2/models/inbound_route_entity_listing.rb +12 -12
  329. data/lib/purecloudplatformclientv2/models/integration_entity_listing.rb +12 -12
  330. data/lib/purecloudplatformclientv2/models/integration_event_entity_listing.rb +12 -12
  331. data/lib/purecloudplatformclientv2/models/integration_type_entity_listing.rb +12 -12
  332. data/lib/purecloudplatformclientv2/models/interaction_stats_alert_container.rb +12 -12
  333. data/lib/purecloudplatformclientv2/models/interaction_stats_rule_container.rb +12 -12
  334. data/lib/purecloudplatformclientv2/models/ivr_entity_listing.rb +12 -12
  335. data/lib/purecloudplatformclientv2/models/keyword_set_entity_listing.rb +12 -12
  336. data/lib/purecloudplatformclientv2/models/language_entity_listing.rb +12 -12
  337. data/lib/purecloudplatformclientv2/models/language_override.rb +269 -0
  338. data/lib/purecloudplatformclientv2/models/lex_bot.rb +279 -0
  339. data/lib/purecloudplatformclientv2/models/lex_bot_alias.rb +444 -0
  340. data/lib/purecloudplatformclientv2/models/lex_bot_alias_entity_listing.rb +428 -0
  341. data/lib/purecloudplatformclientv2/models/lex_bot_entity_listing.rb +428 -0
  342. data/lib/purecloudplatformclientv2/models/lex_intent.rb +297 -0
  343. data/lib/purecloudplatformclientv2/models/lex_slot.rb +290 -0
  344. data/lib/purecloudplatformclientv2/models/library_entity_listing.rb +12 -12
  345. data/lib/purecloudplatformclientv2/models/line_base_entity_listing.rb +12 -12
  346. data/lib/purecloudplatformclientv2/models/line_entity_listing.rb +12 -12
  347. data/lib/purecloudplatformclientv2/models/line_integration_entity_listing.rb +12 -12
  348. data/lib/purecloudplatformclientv2/models/location_definition.rb +56 -1
  349. data/lib/purecloudplatformclientv2/models/location_entity_listing.rb +12 -12
  350. data/lib/purecloudplatformclientv2/models/location_image.rb +227 -0
  351. data/lib/purecloudplatformclientv2/models/logical_interface_entity_listing.rb +12 -12
  352. data/lib/purecloudplatformclientv2/models/management_unit.rb +21 -57
  353. data/lib/purecloudplatformclientv2/models/management_unit_listing.rb +12 -12
  354. data/lib/purecloudplatformclientv2/models/message_conversation_entity_listing.rb +12 -12
  355. data/lib/purecloudplatformclientv2/models/messaging_integration.rb +510 -0
  356. data/lib/purecloudplatformclientv2/models/messaging_integration_entity_listing.rb +428 -0
  357. data/lib/purecloudplatformclientv2/models/messaging_sticker_entity_listing.rb +12 -12
  358. data/lib/purecloudplatformclientv2/models/move_management_unit_request.rb +207 -0
  359. data/lib/purecloudplatformclientv2/models/move_management_unit_response.rb +242 -0
  360. data/lib/purecloudplatformclientv2/models/note_listing.rb +12 -12
  361. data/lib/purecloudplatformclientv2/models/o_auth_client_entity_listing.rb +12 -12
  362. data/lib/purecloudplatformclientv2/models/o_auth_provider_entity_listing.rb +12 -12
  363. data/lib/purecloudplatformclientv2/models/organization_presence_entity_listing.rb +12 -12
  364. data/lib/purecloudplatformclientv2/models/organization_role_entity_listing.rb +12 -12
  365. data/lib/purecloudplatformclientv2/models/orphan_recording_listing.rb +12 -12
  366. data/lib/purecloudplatformclientv2/models/outbound_route_base_entity_listing.rb +12 -12
  367. data/lib/purecloudplatformclientv2/models/outbound_route_entity_listing.rb +12 -12
  368. data/lib/purecloudplatformclientv2/models/permission_collection_entity_listing.rb +12 -12
  369. data/lib/purecloudplatformclientv2/models/phone_base_entity_listing.rb +12 -12
  370. data/lib/purecloudplatformclientv2/models/phone_entity_listing.rb +12 -12
  371. data/lib/purecloudplatformclientv2/models/phone_meta_base_entity_listing.rb +12 -12
  372. data/lib/purecloudplatformclientv2/models/physical_interface_entity_listing.rb +12 -12
  373. data/lib/purecloudplatformclientv2/models/policy_entity_listing.rb +12 -12
  374. data/lib/purecloudplatformclientv2/models/prompt_asset_entity_listing.rb +12 -12
  375. data/lib/purecloudplatformclientv2/models/prompt_entity_listing.rb +12 -12
  376. data/lib/purecloudplatformclientv2/models/quality_audit.rb +26 -1
  377. data/lib/purecloudplatformclientv2/models/quality_audit_page.rb +12 -12
  378. data/lib/purecloudplatformclientv2/models/queue_conversation_chat_event_topic_chat_media_participant.rb +29 -4
  379. data/lib/purecloudplatformclientv2/models/queue_conversation_event_topic_chat.rb +26 -1
  380. data/lib/purecloudplatformclientv2/models/queue_conversation_social_expression_event_topic_chat.rb +26 -1
  381. data/lib/purecloudplatformclientv2/models/queue_conversation_video_event_topic_chat.rb +26 -1
  382. data/lib/purecloudplatformclientv2/models/queue_entity_listing.rb +12 -12
  383. data/lib/purecloudplatformclientv2/models/queue_member_entity_listing.rb +12 -12
  384. data/lib/purecloudplatformclientv2/models/recipient_listing.rb +12 -12
  385. data/lib/purecloudplatformclientv2/models/recording_job.rb +480 -0
  386. data/lib/purecloudplatformclientv2/models/recording_job_entity_listing.rb +428 -0
  387. data/lib/purecloudplatformclientv2/models/recording_jobs_query.rb +283 -0
  388. data/lib/purecloudplatformclientv2/models/relationship_listing.rb +12 -12
  389. data/lib/purecloudplatformclientv2/models/report_meta_data_entity_listing.rb +12 -12
  390. data/lib/purecloudplatformclientv2/models/report_run_entry_entity_domain_listing.rb +12 -12
  391. data/lib/purecloudplatformclientv2/models/report_schedule_entity_listing.rb +12 -12
  392. data/lib/purecloudplatformclientv2/models/reporting_export_job_listing.rb +12 -12
  393. data/lib/purecloudplatformclientv2/models/reporting_export_job_request.rb +2 -2
  394. data/lib/purecloudplatformclientv2/models/reporting_export_job_response.rb +2 -2
  395. data/lib/purecloudplatformclientv2/models/response_entity_list.rb +12 -12
  396. data/lib/purecloudplatformclientv2/models/response_entity_listing.rb +12 -12
  397. data/lib/purecloudplatformclientv2/models/response_set_entity_listing.rb +12 -12
  398. data/lib/purecloudplatformclientv2/models/rule_set_entity_listing.rb +12 -12
  399. data/lib/purecloudplatformclientv2/models/schedule_entity_listing.rb +12 -12
  400. data/lib/purecloudplatformclientv2/models/schedule_group_entity_listing.rb +12 -12
  401. data/lib/purecloudplatformclientv2/models/schema_category_entity_listing.rb +12 -12
  402. data/lib/purecloudplatformclientv2/models/schema_reference_entity_listing.rb +12 -12
  403. data/lib/purecloudplatformclientv2/models/scored_agent.rb +1 -1
  404. data/lib/purecloudplatformclientv2/models/screen_recording_session_listing.rb +12 -12
  405. data/lib/purecloudplatformclientv2/models/script_entity_listing.rb +12 -12
  406. data/lib/purecloudplatformclientv2/models/security_profile_entity_listing.rb +12 -12
  407. data/lib/purecloudplatformclientv2/models/share_entity_listing.rb +12 -12
  408. data/lib/purecloudplatformclientv2/models/site_entity_listing.rb +12 -12
  409. data/lib/purecloudplatformclientv2/models/skill_entity_listing.rb +12 -12
  410. data/lib/purecloudplatformclientv2/models/sms_phone_number_entity_listing.rb +12 -12
  411. data/lib/purecloudplatformclientv2/models/station_entity_listing.rb +12 -12
  412. data/lib/purecloudplatformclientv2/models/subject_division_grants_entity_listing.rb +12 -12
  413. data/lib/purecloudplatformclientv2/models/subscription_overview_usage.rb +30 -4
  414. data/lib/purecloudplatformclientv2/models/survey_form_entity_listing.rb +12 -12
  415. data/lib/purecloudplatformclientv2/models/system_prompt_asset_entity_listing.rb +12 -12
  416. data/lib/purecloudplatformclientv2/models/system_prompt_entity_listing.rb +12 -12
  417. data/lib/purecloudplatformclientv2/models/tag_value_entity_listing.rb +12 -12
  418. data/lib/purecloudplatformclientv2/models/text_message_listing.rb +12 -12
  419. data/lib/purecloudplatformclientv2/models/time_zone_entity_listing.rb +12 -12
  420. data/lib/purecloudplatformclientv2/models/trunk_base_entity_listing.rb +12 -12
  421. data/lib/purecloudplatformclientv2/models/trunk_entity_listing.rb +12 -12
  422. data/lib/purecloudplatformclientv2/models/trunk_metabase_entity_listing.rb +12 -12
  423. data/lib/purecloudplatformclientv2/models/trust_entity_listing.rb +12 -12
  424. data/lib/purecloudplatformclientv2/models/trust_user_entity_listing.rb +12 -12
  425. data/lib/purecloudplatformclientv2/models/trustor_entity_listing.rb +12 -12
  426. data/lib/purecloudplatformclientv2/models/tts_engine_entity.rb +399 -0
  427. data/lib/purecloudplatformclientv2/models/tts_engine_entity_listing.rb +428 -0
  428. data/lib/purecloudplatformclientv2/models/tts_settings.rb +240 -0
  429. data/lib/purecloudplatformclientv2/models/tts_voice_entity.rb +372 -0
  430. data/lib/purecloudplatformclientv2/models/tts_voice_entity_listing.rb +428 -0
  431. data/lib/purecloudplatformclientv2/models/twitter_integration_entity_listing.rb +12 -12
  432. data/lib/purecloudplatformclientv2/models/update_management_unit_request.rb +254 -0
  433. data/lib/purecloudplatformclientv2/models/user_action_category_entity_listing.rb +12 -12
  434. data/lib/purecloudplatformclientv2/models/user_entity_listing.rb +12 -12
  435. data/lib/purecloudplatformclientv2/models/user_language_entity_listing.rb +12 -12
  436. data/lib/purecloudplatformclientv2/models/user_profile_entity_listing.rb +12 -12
  437. data/lib/purecloudplatformclientv2/models/user_queue_entity_listing.rb +12 -12
  438. data/lib/purecloudplatformclientv2/models/user_recording_entity_listing.rb +12 -12
  439. data/lib/purecloudplatformclientv2/models/user_skill_entity_listing.rb +12 -12
  440. data/lib/purecloudplatformclientv2/models/voicemail_message_entity_listing.rb +12 -12
  441. data/lib/purecloudplatformclientv2/models/web_chat_member_info_entity_list.rb +12 -12
  442. data/lib/purecloudplatformclientv2/models/wfm_move_management_unit_topic_business_unit.rb +201 -0
  443. data/lib/purecloudplatformclientv2/models/wfm_move_management_unit_topic_move_management_unit_notification.rb +240 -0
  444. data/lib/purecloudplatformclientv2/models/wfm_user_notification_topic_time_off_request_notification.rb +344 -0
  445. data/lib/purecloudplatformclientv2/models/wfm_user_notification_topic_wfm_user_notification.rb +28 -3
  446. data/lib/purecloudplatformclientv2/models/workspace_entity_listing.rb +12 -12
  447. data/lib/purecloudplatformclientv2/models/workspace_member_entity_listing.rb +12 -12
  448. data/lib/purecloudplatformclientv2/models/wrapup_code_entity_listing.rb +12 -12
  449. data/lib/purecloudplatformclientv2/version.rb +1 -1
  450. metadata +72 -4
@@ -0,0 +1,240 @@
1
+ =begin
2
+ PureCloud Platform API
3
+
4
+ With the PureCloud Platform API, you can control all aspects of your PureCloud environment. With the APIs you can access the system configuration, manage conversations and more.
5
+
6
+ OpenAPI spec version: v2
7
+ Contact: DeveloperEvangelists@genesys.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+
10
+ License: UNLICENSED
11
+ https://help.mypurecloud.com/articles/terms-and-conditions/
12
+
13
+ Terms of Service: https://help.mypurecloud.com/articles/terms-and-conditions/
14
+
15
+ =end
16
+
17
+ require 'date'
18
+
19
+ module PureCloud
20
+ class DialogflowIntent
21
+ # The intent name
22
+ attr_accessor :name
23
+
24
+ # An object mapping parameter names to Parameter objects
25
+ attr_accessor :parameters
26
+
27
+ # Attribute mapping from ruby-style variable name to JSON key.
28
+ def self.attribute_map
29
+ {
30
+
31
+ :'name' => :'name',
32
+
33
+ :'parameters' => :'parameters'
34
+
35
+ }
36
+ end
37
+
38
+ # Attribute type mapping.
39
+ def self.swagger_types
40
+ {
41
+
42
+ :'name' => :'String',
43
+
44
+ :'parameters' => :'Hash<String, DialogflowParameter>'
45
+
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
+
58
+ if attributes.has_key?(:'name')
59
+
60
+
61
+ self.name = attributes[:'name']
62
+
63
+
64
+ end
65
+
66
+
67
+ if attributes.has_key?(:'parameters')
68
+
69
+ if (value = attributes[:'parameters']).is_a?(Array)
70
+ self.parameters = value
71
+ end
72
+
73
+
74
+
75
+ end
76
+
77
+
78
+ end
79
+
80
+ # Show invalid properties with the reasons. Usually used together with valid?
81
+ # @return Array for valid properies with the reasons
82
+ def list_invalid_properties
83
+ invalid_properties = Array.new
84
+
85
+
86
+ return invalid_properties
87
+ end
88
+
89
+ # Check to see if the all the properties in the model are valid
90
+ # @return true if the model is valid
91
+ def valid?
92
+
93
+
94
+ if @name.nil?
95
+ return false
96
+ end
97
+
98
+
99
+
100
+
101
+
102
+
103
+ if @parameters.nil?
104
+ return false
105
+ end
106
+
107
+
108
+
109
+
110
+
111
+ end
112
+
113
+
114
+
115
+
116
+
117
+
118
+
119
+
120
+
121
+
122
+
123
+
124
+ # Checks equality by comparing each attribute.
125
+ # @param [Object] Object to be compared
126
+ def ==(o)
127
+ return true if self.equal?(o)
128
+ self.class == o.class &&
129
+ name == o.name &&
130
+ parameters == o.parameters
131
+ end
132
+
133
+ # @see the `==` method
134
+ # @param [Object] Object to be compared
135
+ def eql?(o)
136
+ self == o
137
+ end
138
+
139
+ # Calculates hash code according to all attributes.
140
+ # @return [Fixnum] Hash code
141
+ def hash
142
+ [name, parameters].hash
143
+ end
144
+
145
+ # build the object from hash
146
+ def build_from_hash(attributes)
147
+ return nil unless attributes.is_a?(Hash)
148
+ self.class.swagger_types.each_pair do |key, type|
149
+ if type =~ /^Array<(.*)>/i
150
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
151
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
152
+ else
153
+ #TODO show warning in debug mode
154
+ end
155
+ elsif !attributes[self.class.attribute_map[key]].nil?
156
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
157
+ else
158
+ # data not found in attributes(hash), not an issue as the data can be optional
159
+ end
160
+ end
161
+
162
+ self
163
+ end
164
+
165
+ def _deserialize(type, value)
166
+ case type.to_sym
167
+ when :DateTime
168
+ DateTime.parse(value)
169
+ when :Date
170
+ Date.parse(value)
171
+ when :String
172
+ value.to_s
173
+ when :Integer
174
+ value.to_i
175
+ when :Float
176
+ value.to_f
177
+ when :BOOLEAN
178
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
179
+ true
180
+ else
181
+ false
182
+ end
183
+ when :Object
184
+ # generic object (usually a Hash), return directly
185
+ value
186
+ when /\AArray<(?<inner_type>.+)>\z/
187
+ inner_type = Regexp.last_match[:inner_type]
188
+ value.map { |v| _deserialize(inner_type, v) }
189
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
190
+ k_type = Regexp.last_match[:k_type]
191
+ v_type = Regexp.last_match[:v_type]
192
+ {}.tap do |hash|
193
+ value.each do |k, v|
194
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
195
+ end
196
+ end
197
+ else # model
198
+ _model = Object.const_get("PureCloud").const_get(type).new
199
+ _model.build_from_hash(value)
200
+ end
201
+ end
202
+
203
+ def to_s
204
+ to_hash.to_s
205
+ end
206
+
207
+ # to_body is an alias to to_body (backward compatibility))
208
+ def to_body
209
+ to_hash
210
+ end
211
+
212
+ # return the object in the form of hash
213
+ def to_hash
214
+ hash = {}
215
+ self.class.attribute_map.each_pair do |attr, param|
216
+ value = self.send(attr)
217
+ next if value.nil?
218
+ hash[param] = _to_hash(value)
219
+ end
220
+ hash
221
+ end
222
+
223
+ # Method to output non-array value in the form of hash
224
+ # For object, use to_hash. Otherwise, just return the value
225
+ def _to_hash(value)
226
+ if value.is_a?(Array)
227
+ value.compact.map{ |v| _to_hash(v) }
228
+ elsif value.is_a?(Hash)
229
+ {}.tap do |hash|
230
+ value.each { |k, v| hash[k] = _to_hash(v) }
231
+ end
232
+ elsif value.respond_to? :to_hash
233
+ value.to_hash
234
+ else
235
+ value
236
+ end
237
+ end
238
+
239
+ end
240
+ end
@@ -0,0 +1,238 @@
1
+ =begin
2
+ PureCloud Platform API
3
+
4
+ With the PureCloud Platform API, you can control all aspects of your PureCloud environment. With the APIs you can access the system configuration, manage conversations and more.
5
+
6
+ OpenAPI spec version: v2
7
+ Contact: DeveloperEvangelists@genesys.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+
10
+ License: UNLICENSED
11
+ https://help.mypurecloud.com/articles/terms-and-conditions/
12
+
13
+ Terms of Service: https://help.mypurecloud.com/articles/terms-and-conditions/
14
+
15
+ =end
16
+
17
+ require 'date'
18
+
19
+ module PureCloud
20
+ class DialogflowParameter
21
+ # The parameter name
22
+ attr_accessor :name
23
+
24
+ # The parameter type
25
+ attr_accessor :type
26
+
27
+ # Attribute mapping from ruby-style variable name to JSON key.
28
+ def self.attribute_map
29
+ {
30
+
31
+ :'name' => :'name',
32
+
33
+ :'type' => :'type'
34
+
35
+ }
36
+ end
37
+
38
+ # Attribute type mapping.
39
+ def self.swagger_types
40
+ {
41
+
42
+ :'name' => :'String',
43
+
44
+ :'type' => :'String'
45
+
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
+
58
+ if attributes.has_key?(:'name')
59
+
60
+
61
+ self.name = attributes[:'name']
62
+
63
+
64
+ end
65
+
66
+
67
+ if attributes.has_key?(:'type')
68
+
69
+
70
+ self.type = attributes[:'type']
71
+
72
+
73
+ end
74
+
75
+
76
+ end
77
+
78
+ # Show invalid properties with the reasons. Usually used together with valid?
79
+ # @return Array for valid properies with the reasons
80
+ def list_invalid_properties
81
+ invalid_properties = Array.new
82
+
83
+
84
+ return invalid_properties
85
+ end
86
+
87
+ # Check to see if the all the properties in the model are valid
88
+ # @return true if the model is valid
89
+ def valid?
90
+
91
+
92
+ if @name.nil?
93
+ return false
94
+ end
95
+
96
+
97
+
98
+
99
+
100
+
101
+ if @type.nil?
102
+ return false
103
+ end
104
+
105
+
106
+
107
+
108
+
109
+ end
110
+
111
+
112
+
113
+
114
+
115
+
116
+
117
+
118
+
119
+
120
+
121
+
122
+ # Checks equality by comparing each attribute.
123
+ # @param [Object] Object to be compared
124
+ def ==(o)
125
+ return true if self.equal?(o)
126
+ self.class == o.class &&
127
+ name == o.name &&
128
+ type == o.type
129
+ end
130
+
131
+ # @see the `==` method
132
+ # @param [Object] Object to be compared
133
+ def eql?(o)
134
+ self == o
135
+ end
136
+
137
+ # Calculates hash code according to all attributes.
138
+ # @return [Fixnum] Hash code
139
+ def hash
140
+ [name, type].hash
141
+ end
142
+
143
+ # build the object from hash
144
+ def build_from_hash(attributes)
145
+ return nil unless attributes.is_a?(Hash)
146
+ self.class.swagger_types.each_pair do |key, type|
147
+ if type =~ /^Array<(.*)>/i
148
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
149
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
150
+ else
151
+ #TODO show warning in debug mode
152
+ end
153
+ elsif !attributes[self.class.attribute_map[key]].nil?
154
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
155
+ else
156
+ # data not found in attributes(hash), not an issue as the data can be optional
157
+ end
158
+ end
159
+
160
+ self
161
+ end
162
+
163
+ def _deserialize(type, value)
164
+ case type.to_sym
165
+ when :DateTime
166
+ DateTime.parse(value)
167
+ when :Date
168
+ Date.parse(value)
169
+ when :String
170
+ value.to_s
171
+ when :Integer
172
+ value.to_i
173
+ when :Float
174
+ value.to_f
175
+ when :BOOLEAN
176
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
177
+ true
178
+ else
179
+ false
180
+ end
181
+ when :Object
182
+ # generic object (usually a Hash), return directly
183
+ value
184
+ when /\AArray<(?<inner_type>.+)>\z/
185
+ inner_type = Regexp.last_match[:inner_type]
186
+ value.map { |v| _deserialize(inner_type, v) }
187
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
188
+ k_type = Regexp.last_match[:k_type]
189
+ v_type = Regexp.last_match[:v_type]
190
+ {}.tap do |hash|
191
+ value.each do |k, v|
192
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
193
+ end
194
+ end
195
+ else # model
196
+ _model = Object.const_get("PureCloud").const_get(type).new
197
+ _model.build_from_hash(value)
198
+ end
199
+ end
200
+
201
+ def to_s
202
+ to_hash.to_s
203
+ end
204
+
205
+ # to_body is an alias to to_body (backward compatibility))
206
+ def to_body
207
+ to_hash
208
+ end
209
+
210
+ # return the object in the form of hash
211
+ def to_hash
212
+ hash = {}
213
+ self.class.attribute_map.each_pair do |attr, param|
214
+ value = self.send(attr)
215
+ next if value.nil?
216
+ hash[param] = _to_hash(value)
217
+ end
218
+ hash
219
+ end
220
+
221
+ # Method to output non-array value in the form of hash
222
+ # For object, use to_hash. Otherwise, just return the value
223
+ def _to_hash(value)
224
+ if value.is_a?(Array)
225
+ value.compact.map{ |v| _to_hash(v) }
226
+ elsif value.is_a?(Hash)
227
+ {}.tap do |hash|
228
+ value.each { |k, v| hash[k] = _to_hash(v) }
229
+ end
230
+ elsif value.respond_to? :to_hash
231
+ value.to_hash
232
+ else
233
+ value
234
+ end
235
+ end
236
+
237
+ end
238
+ end