purecloud 0.27.0 → 0.28.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 (269) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +10 -0
  3. data/config-ruby.json +1 -1
  4. data/extensions/auth.rb +7 -0
  5. data/lib/purecloud.rb +137 -85
  6. data/lib/purecloud/api/analytics_api.rb +1906 -0
  7. data/lib/purecloud/api/architect_api.rb +51 -51
  8. data/lib/purecloud/api/attributes_api.rb +6 -6
  9. data/lib/purecloud/api/authorization_api.rb +17 -79
  10. data/lib/purecloud/api/callbacks_api.rb +483 -0
  11. data/lib/purecloud/api/calls_api.rb +1088 -0
  12. data/lib/purecloud/api/chats_api.rb +483 -0
  13. data/lib/purecloud/api/compliance_api.rb +2 -2
  14. data/lib/purecloud/api/configuration_api.rb +83 -83
  15. data/lib/purecloud/api/content_management_api.rb +36 -36
  16. data/lib/purecloud/api/conversations_api.rb +3542 -465
  17. data/lib/purecloud/api/downloads_api.rb +2 -2
  18. data/lib/purecloud/api/emails_api.rb +1013 -0
  19. data/lib/purecloud/api/evaluations_api.rb +73 -0
  20. data/lib/purecloud/api/external_contacts_api.rb +26 -26
  21. data/lib/purecloud/api/fax_api.rb +6 -6
  22. data/lib/purecloud/api/faxes_api.rb +73 -0
  23. data/lib/purecloud/api/geolocation_api.rb +4 -4
  24. data/lib/purecloud/api/greetings_api.rb +12 -12
  25. data/lib/purecloud/api/groups_api.rb +3 -3
  26. data/lib/purecloud/api/integrations_api.rb +144 -0
  27. data/lib/purecloud/api/languages_api.rb +2 -2
  28. data/lib/purecloud/api/licensing_api.rb +7 -7
  29. data/lib/purecloud/api/locations_api.rb +2 -2
  30. data/lib/purecloud/api/notifications_api.rb +7 -7
  31. data/lib/purecloud/api/o_auth_api.rb +22 -22
  32. data/lib/purecloud/api/outbound_api.rb +69 -81
  33. data/lib/purecloud/api/presence_api.rb +10 -10
  34. data/lib/purecloud/api/quality_api.rb +41 -93
  35. data/lib/purecloud/api/recording_api.rb +20 -29
  36. data/lib/purecloud/api/response_management_api.rb +11 -11
  37. data/lib/purecloud/api/routing_api.rb +333 -189
  38. data/lib/purecloud/api/scripts_api.rb +11 -11
  39. data/lib/purecloud/api/search_api.rb +1 -1
  40. data/lib/purecloud/api/socials_api.rb +483 -0
  41. data/lib/purecloud/api/stations_api.rb +3 -3
  42. data/lib/purecloud/api/telephony_providers_edge_api.rb +38 -38
  43. data/lib/purecloud/api/tokens_api.rb +1 -1
  44. data/lib/purecloud/api/user_recordings_api.rb +6 -6
  45. data/lib/purecloud/api/users_api.rb +403 -95
  46. data/lib/purecloud/api/utilities_api.rb +4 -60
  47. data/lib/purecloud/api/videos_api.rb +483 -0
  48. data/lib/purecloud/api/voicemail_api.rb +11 -11
  49. data/lib/purecloud/models/address.rb +47 -25
  50. data/lib/purecloud/models/address_listing.rb +11 -11
  51. data/lib/purecloud/models/agent_activity_entity_listing.rb +11 -11
  52. data/lib/purecloud/models/aggregate_data_container.rb +161 -0
  53. data/lib/purecloud/models/aggregate_metric_data.rb +175 -0
  54. data/lib/purecloud/models/{session_request.rb → aggregate_query_response.rb} +10 -8
  55. data/lib/purecloud/models/{domain_license_entity_listing.rb → aggregation_query.rb} +49 -79
  56. data/lib/purecloud/models/{tag.rb → aggregation_range.rb} +16 -16
  57. data/lib/purecloud/models/aggregation_result.rb +199 -0
  58. data/lib/purecloud/models/aggregation_result_entry.rb +179 -0
  59. data/lib/purecloud/models/alert_entity_listing.rb +11 -11
  60. data/lib/purecloud/models/analytics_conversation.rb +181 -0
  61. data/lib/purecloud/models/analytics_conversation_query_response.rb +160 -0
  62. data/lib/purecloud/models/{queue_member_entity_listing.rb → analytics_evaluation.rb} +62 -64
  63. data/lib/purecloud/models/analytics_participant.rb +158 -0
  64. data/lib/purecloud/models/analytics_property.rb +178 -0
  65. data/lib/purecloud/models/analytics_query_aggregation.rb +202 -0
  66. data/lib/purecloud/models/analytics_query_clause.rb +168 -0
  67. data/lib/purecloud/models/analytics_query_filter.rb +181 -0
  68. data/lib/purecloud/models/analytics_query_predicate.rb +269 -0
  69. data/lib/purecloud/models/analytics_segment.rb +607 -0
  70. data/lib/purecloud/models/{put_management_unit.rb → analytics_session.rb} +27 -25
  71. data/lib/purecloud/models/attribute_entity_listing.rb +11 -11
  72. data/lib/purecloud/models/audit_entity_reference.rb +1 -1
  73. data/lib/purecloud/models/automate_queue_member_entity_listing.rb +11 -11
  74. data/lib/purecloud/models/available_additional_service_listing.rb +11 -11
  75. data/lib/purecloud/models/available_topic_entity_listing.rb +11 -11
  76. data/lib/purecloud/models/calibration_entity_listing.rb +11 -11
  77. data/lib/purecloud/models/call.rb +2 -22
  78. data/lib/purecloud/models/call_conversation.rb +213 -0
  79. data/lib/purecloud/models/call_participant.rb +527 -0
  80. data/lib/purecloud/models/callable_time_set_entity_listing.rb +11 -11
  81. data/lib/purecloud/models/callback_conversation.rb +194 -0
  82. data/lib/purecloud/models/callback_participant.rb +456 -0
  83. data/lib/purecloud/models/campaign.rb +17 -219
  84. data/lib/purecloud/models/campaign_entity_listing.rb +11 -11
  85. data/lib/purecloud/models/campaign_sequence_entity_listing.rb +11 -11
  86. data/lib/purecloud/models/carrier_entity_listing.rb +11 -11
  87. data/lib/purecloud/models/certificate_authority_entity_listing.rb +11 -11
  88. data/lib/purecloud/models/channel_entity_listing.rb +11 -11
  89. data/lib/purecloud/models/channel_topic_entity_listing.rb +11 -11
  90. data/lib/purecloud/models/{domain_license.rb → chat_conversation.rb} +19 -25
  91. data/lib/purecloud/models/chat_participant.rb +270 -12
  92. data/lib/purecloud/models/chat_search_listing.rb +11 -11
  93. data/lib/purecloud/models/command_status_entity_listing.rb +11 -11
  94. data/lib/purecloud/models/consumed_resources_entity_listing.rb +11 -11
  95. data/lib/purecloud/models/consuming_resources_entity_listing.rb +11 -11
  96. data/lib/purecloud/models/contact.rb +41 -73
  97. data/lib/purecloud/models/contact_list_entity_listing.rb +11 -11
  98. data/lib/purecloud/models/contact_listing.rb +11 -11
  99. data/lib/purecloud/models/contact_sales.rb +1 -21
  100. data/lib/purecloud/models/conversation_entity_listing.rb +11 -11
  101. data/lib/purecloud/models/{evaluation_query_request.rb → conversation_query.rb} +77 -90
  102. data/lib/purecloud/models/conversation_query_response.rb +11 -11
  103. data/lib/purecloud/models/{session_entity_listing.rb → create_call_request.rb} +71 -68
  104. data/lib/purecloud/models/{conversation_response.rb → create_call_response.rb} +1 -1
  105. data/lib/purecloud/models/create_user.rb +219 -0
  106. data/lib/purecloud/models/data_item.rb +19 -23
  107. data/lib/purecloud/models/deleted_resource_consumer_entity_listing.rb +11 -11
  108. data/lib/purecloud/models/dependency_object_entity_listing.rb +11 -11
  109. data/lib/purecloud/models/dependency_type_entity_listing.rb +11 -11
  110. data/lib/purecloud/models/destination.rb +1 -21
  111. data/lib/purecloud/models/did_entity_listing.rb +11 -11
  112. data/lib/purecloud/models/did_pool_entity_listing.rb +11 -11
  113. data/lib/purecloud/models/dnc_list_entity_listing.rb +11 -11
  114. data/lib/purecloud/models/document_audit_entity_listing.rb +11 -11
  115. data/lib/purecloud/models/document_entity_listing.rb +11 -11
  116. data/lib/purecloud/models/domain_billing_period_entity_listing.rb +11 -11
  117. data/lib/purecloud/models/domain_entity_listing.rb +11 -11
  118. data/lib/purecloud/models/domain_entity_listing_evaluation_form.rb +11 -11
  119. data/lib/purecloud/models/domain_entity_listing_query_result.rb +11 -11
  120. data/lib/purecloud/models/domain_invoice_entity_listing.rb +11 -11
  121. data/lib/purecloud/models/domain_organization_role.rb +1 -23
  122. data/lib/purecloud/models/domain_permission.rb +1 -13
  123. data/lib/purecloud/models/domain_third_party_account_entity_listing.rb +11 -11
  124. data/lib/purecloud/models/domain_third_party_subscription_entity_listing.rb +11 -11
  125. data/lib/purecloud/models/domain_voice_rate_extended_response_item_entity_listing.rb +11 -11
  126. data/lib/purecloud/models/domain_voice_rate_international_response_item_entity_listing.rb +11 -11
  127. data/lib/purecloud/models/domain_voice_rate_response_item_entity_listing.rb +11 -11
  128. data/lib/purecloud/models/edge_entity_listing.rb +11 -11
  129. data/lib/purecloud/models/edge_group_entity_listing.rb +11 -11
  130. data/lib/purecloud/models/edge_line_entity_listing.rb +11 -11
  131. data/lib/purecloud/models/email_conversation.rb +194 -0
  132. data/lib/purecloud/models/email_message_listing.rb +11 -11
  133. data/lib/purecloud/models/email_participant.rb +424 -0
  134. data/lib/purecloud/models/encryption_key_entity_listing.rb +11 -11
  135. data/lib/purecloud/models/endpoint_entity_listing.rb +11 -11
  136. data/lib/purecloud/models/entity.rb +10 -20
  137. data/lib/purecloud/models/evaluation.rb +1 -0
  138. data/lib/purecloud/models/evaluation_entity_listing.rb +11 -11
  139. data/lib/purecloud/models/evaluation_form_entity_listing.rb +11 -11
  140. data/lib/purecloud/models/evaluator_activity_entity_listing.rb +11 -11
  141. data/lib/purecloud/models/extension_entity_listing.rb +11 -11
  142. data/lib/purecloud/models/extension_pool_entity_listing.rb +11 -11
  143. data/lib/purecloud/models/external_organization_listing.rb +11 -11
  144. data/lib/purecloud/models/fax_document_entity_listing.rb +11 -11
  145. data/lib/purecloud/models/filter.rb +14 -11
  146. data/lib/purecloud/models/flow_config_meta_data_entity_listing.rb +11 -11
  147. data/lib/purecloud/models/flow_entity_listing.rb +11 -11
  148. data/lib/purecloud/models/flow_history_result_item_entity_listing.rb +11 -11
  149. data/lib/purecloud/models/flow_version_config_meta_data_entity_listing.rb +11 -11
  150. data/lib/purecloud/models/flow_version_entity_listing.rb +11 -11
  151. data/lib/purecloud/models/group_entity_listing.rb +11 -11
  152. data/lib/purecloud/models/hardware_rate_listing.rb +11 -11
  153. data/lib/purecloud/models/inbound_domain_entity_listing.rb +11 -11
  154. data/lib/purecloud/models/inbound_route_entity_listing.rb +11 -11
  155. data/lib/purecloud/models/integration_type_entity_listing.rb +11 -11
  156. data/lib/purecloud/models/ivr_entity_listing.rb +11 -11
  157. data/lib/purecloud/models/language_entity_listing.rb +11 -11
  158. data/lib/purecloud/models/library_entity_listing.rb +11 -11
  159. data/lib/purecloud/models/line_base_entity_listing.rb +11 -11
  160. data/lib/purecloud/models/line_entity_listing.rb +11 -11
  161. data/lib/purecloud/models/linked_entity_listing_flow_details.rb +11 -11
  162. data/lib/purecloud/models/linked_entity_listing_work_item_search_details.rb +11 -11
  163. data/lib/purecloud/models/location_entity_listing.rb +11 -11
  164. data/lib/purecloud/models/logical_interface_entity_listing.rb +11 -11
  165. data/lib/purecloud/models/management_unit.rb +26 -14
  166. data/lib/purecloud/models/media_result.rb +1 -11
  167. data/lib/purecloud/models/media_summary.rb +2 -2
  168. data/lib/purecloud/models/media_summary_detail.rb +156 -0
  169. data/lib/purecloud/models/note_listing.rb +11 -11
  170. data/lib/purecloud/models/numeric_range.rb +180 -0
  171. data/lib/purecloud/models/o_auth_client.rb +21 -14
  172. data/lib/purecloud/models/o_auth_client_entity_listing.rb +11 -11
  173. data/lib/purecloud/models/o_auth_provider_entity_listing.rb +11 -11
  174. data/lib/purecloud/models/observation_data_container.rb +161 -0
  175. data/lib/purecloud/models/observation_query.rb +160 -0
  176. data/lib/purecloud/models/observation_query_response.rb +148 -0
  177. data/lib/purecloud/models/okta.rb +11 -11
  178. data/lib/purecloud/models/one_login.rb +11 -11
  179. data/lib/purecloud/models/organization_presence_entity_listing.rb +11 -11
  180. data/lib/purecloud/models/organization_role_entity_listing.rb +11 -11
  181. data/lib/purecloud/models/orphan_recording_listing.rb +11 -11
  182. data/lib/purecloud/models/outbound_route_entity_listing.rb +11 -11
  183. data/lib/purecloud/models/paging_spec.rb +158 -0
  184. data/lib/purecloud/models/participant.rb +1 -13
  185. data/lib/purecloud/models/payment_method_listing.rb +11 -11
  186. data/lib/purecloud/models/permission_collection_entity_listing.rb +11 -11
  187. data/lib/purecloud/models/phone_base_entity_listing.rb +11 -11
  188. data/lib/purecloud/models/phone_entity_listing.rb +11 -11
  189. data/lib/purecloud/models/phone_meta_base_entity_listing.rb +11 -11
  190. data/lib/purecloud/models/physical_interface_entity_listing.rb +11 -11
  191. data/lib/purecloud/models/policy_entity_listing.rb +11 -11
  192. data/lib/purecloud/models/presence_query_response.rb +161 -0
  193. data/lib/purecloud/models/prompt_asset_entity_listing.rb +11 -11
  194. data/lib/purecloud/models/prompt_entity_listing.rb +11 -11
  195. data/lib/purecloud/models/property_index_request.rb +182 -0
  196. data/lib/purecloud/models/quality_audit_page.rb +11 -11
  197. data/lib/purecloud/models/queue.rb +1 -23
  198. data/lib/purecloud/models/queue_entity_listing.rb +11 -11
  199. data/lib/purecloud/models/queues_entity_listing.rb +11 -11
  200. data/lib/purecloud/models/quote.rb +1 -37
  201. data/lib/purecloud/models/quote_listing.rb +11 -11
  202. data/lib/purecloud/models/recording.rb +13 -34
  203. data/lib/purecloud/models/relationship_listing.rb +11 -11
  204. data/lib/purecloud/models/report_meta_data_entity_listing.rb +11 -11
  205. data/lib/purecloud/models/report_run_entry_entity_domain_listing.rb +11 -11
  206. data/lib/purecloud/models/report_schedule_entity_listing.rb +11 -11
  207. data/lib/purecloud/models/response.rb +14 -84
  208. data/lib/purecloud/models/response_entity_list.rb +11 -11
  209. data/lib/purecloud/models/response_entity_listing.rb +11 -11
  210. data/lib/purecloud/models/response_set_entity_listing.rb +11 -11
  211. data/lib/purecloud/models/{user_status.rb → routing_skill.rb} +35 -25
  212. data/lib/purecloud/models/rule_entity_listing.rb +11 -11
  213. data/lib/purecloud/models/rule_set_entity_listing.rb +11 -11
  214. data/lib/purecloud/models/salesforce.rb +11 -11
  215. data/lib/purecloud/models/schedule_entity_listing.rb +11 -11
  216. data/lib/purecloud/models/schedule_group_entity_listing.rb +11 -11
  217. data/lib/purecloud/models/schema_category_entity_listing.rb +11 -11
  218. data/lib/purecloud/models/schema_reference_entity_listing.rb +11 -11
  219. data/lib/purecloud/models/script_entity_listing.rb +11 -11
  220. data/lib/purecloud/models/security_profile_entity_listing.rb +11 -11
  221. data/lib/purecloud/models/service_entity_listing.rb +11 -11
  222. data/lib/purecloud/models/share_entity_listing.rb +11 -11
  223. data/lib/purecloud/models/site_entity_listing.rb +11 -11
  224. data/lib/purecloud/models/skill_entity_listing.rb +12 -12
  225. data/lib/purecloud/models/social_conversation.rb +194 -0
  226. data/lib/purecloud/models/social_participant.rb +446 -0
  227. data/lib/purecloud/models/spreadsheet_transform_entity_listing.rb +11 -11
  228. data/lib/purecloud/models/station_entity_listing.rb +11 -11
  229. data/lib/purecloud/models/statistical_response.rb +158 -0
  230. data/lib/purecloud/models/statistical_summary.rb +226 -0
  231. data/lib/purecloud/models/system_prompt_asset_entity_listing.rb +11 -11
  232. data/lib/purecloud/models/system_prompt_entity_listing.rb +11 -11
  233. data/lib/purecloud/models/tag_value_entity_listing.rb +11 -11
  234. data/lib/purecloud/models/template_entity_listing.rb +11 -11
  235. data/lib/purecloud/models/text_table_transform_entity_listing.rb +11 -11
  236. data/lib/purecloud/models/time_zone.rb +1 -11
  237. data/lib/purecloud/models/time_zone_entity_listing.rb +11 -11
  238. data/lib/purecloud/models/transfer_request.rb +193 -0
  239. data/lib/purecloud/models/trunk_metabase_entity_listing.rb +11 -11
  240. data/lib/purecloud/models/user.rb +96 -129
  241. data/lib/purecloud/models/user_action_category_entity_listing.rb +11 -11
  242. data/lib/purecloud/models/user_action_metadata_entity_listing.rb +11 -11
  243. data/lib/purecloud/models/user_authorization.rb +1 -13
  244. data/lib/purecloud/models/user_entity_listing.rb +11 -11
  245. data/lib/purecloud/models/user_presence_entity_listing.rb +11 -11
  246. data/lib/purecloud/models/user_queue.rb +1 -23
  247. data/lib/purecloud/models/user_queue_entity_listing.rb +11 -11
  248. data/lib/purecloud/models/user_recording_entity_listing.rb +11 -11
  249. data/lib/purecloud/models/{session.rb → user_routing_skill.rb} +26 -41
  250. data/lib/purecloud/models/user_skill_entity_listing.rb +12 -12
  251. data/lib/purecloud/models/user_station.rb +178 -0
  252. data/lib/purecloud/models/user_stations.rb +180 -0
  253. data/lib/purecloud/models/users_entity_listing.rb +11 -11
  254. data/lib/purecloud/models/utilization.rb +4 -36
  255. data/lib/purecloud/models/video_conversation.rb +194 -0
  256. data/lib/purecloud/models/video_participant.rb +463 -0
  257. data/lib/purecloud/models/voice_rate_international_entity_listing.rb +11 -11
  258. data/lib/purecloud/models/voice_xml_operation_entity_listing.rb +11 -11
  259. data/lib/purecloud/models/voicemail_message_entity_listing.rb +11 -11
  260. data/lib/purecloud/models/workspace_entity_listing.rb +11 -11
  261. data/lib/purecloud/models/workspace_member_entity_listing.rb +11 -11
  262. data/lib/purecloud/models/wrapup_code_entity_listing.rb +11 -11
  263. data/lib/purecloud/version.rb +1 -1
  264. data/newVersion.md +1 -1
  265. data/swagger.json +1 -1
  266. data/version.json +1 -1
  267. metadata +60 -15
  268. data/lib/purecloud/models/skill.rb +0 -269
  269. data/lib/purecloud/models/user_skill.rb +0 -290
@@ -11,9 +11,6 @@ module PureCloud
11
11
  # The number of seconds, between 5mins and 48hrs, until tokens created with this client expire. If this field is omitted, a default of 24 hours will be applied.
12
12
  attr_accessor :access_token_validity_seconds
13
13
 
14
- # The OAuth Grant/Client type supported by this client.
15
- attr_accessor :authorized_grant_types
16
-
17
14
  attr_accessor :description
18
15
 
19
16
  # List of allowed callbacks for this client. For example: https://myap.example.com/auth/callback
@@ -25,6 +22,9 @@ module PureCloud
25
22
  # Roles assigned to this client. Roles only apply to clients using the client_credential grant
26
23
  attr_accessor :role_ids
27
24
 
25
+ # The OAuth Grant/Client type supported by this client.
26
+ attr_accessor :authorized_grant_type
27
+
28
28
  # The URI for this object
29
29
  attr_accessor :self_uri
30
30
 
@@ -38,8 +38,6 @@ module PureCloud
38
38
 
39
39
  :'access_token_validity_seconds' => :'accessTokenValiditySeconds',
40
40
 
41
- :'authorized_grant_types' => :'authorizedGrantTypes',
42
-
43
41
  :'description' => :'description',
44
42
 
45
43
  :'registered_redirect_uri' => :'registeredRedirectUri',
@@ -48,6 +46,8 @@ module PureCloud
48
46
 
49
47
  :'role_ids' => :'roleIds',
50
48
 
49
+ :'authorized_grant_type' => :'authorizedGrantType',
50
+
51
51
  :'self_uri' => :'selfUri'
52
52
 
53
53
  }
@@ -59,11 +59,11 @@ module PureCloud
59
59
  :'id' => :'String',
60
60
  :'name' => :'String',
61
61
  :'access_token_validity_seconds' => :'Integer',
62
- :'authorized_grant_types' => :'Array<String>',
63
62
  :'description' => :'String',
64
63
  :'registered_redirect_uri' => :'Array<String>',
65
64
  :'secret' => :'String',
66
65
  :'role_ids' => :'Array<String>',
66
+ :'authorized_grant_type' => :'String',
67
67
  :'self_uri' => :'String'
68
68
 
69
69
  }
@@ -88,12 +88,6 @@ module PureCloud
88
88
  self.access_token_validity_seconds = attributes[:'accessTokenValiditySeconds']
89
89
  end
90
90
 
91
- if attributes[:'authorizedGrantTypes']
92
- if (value = attributes[:'authorizedGrantTypes']).is_a?(Array)
93
- self.authorized_grant_types = value
94
- end
95
- end
96
-
97
91
  if attributes[:'description']
98
92
  self.description = attributes[:'description']
99
93
  end
@@ -114,12 +108,25 @@ module PureCloud
114
108
  end
115
109
  end
116
110
 
111
+ if attributes[:'authorizedGrantType']
112
+ self.authorized_grant_type = attributes[:'authorizedGrantType']
113
+ end
114
+
117
115
  if attributes[:'selfUri']
118
116
  self.self_uri = attributes[:'selfUri']
119
117
  end
120
118
 
121
119
  end
122
120
 
121
+ # Custom attribute writer method checking allowed values (enum).
122
+ def authorized_grant_type=(authorized_grant_type)
123
+ allowed_values = ["CODE", "TOKEN"]
124
+ if authorized_grant_type && !allowed_values.include?(authorized_grant_type)
125
+ fail "invalid value for 'authorized_grant_type', must be one of #{allowed_values}"
126
+ end
127
+ @authorized_grant_type = authorized_grant_type
128
+ end
129
+
123
130
  # Check equality by comparing each attribute.
124
131
  def ==(o)
125
132
  return true if self.equal?(o)
@@ -127,11 +134,11 @@ module PureCloud
127
134
  id == o.id &&
128
135
  name == o.name &&
129
136
  access_token_validity_seconds == o.access_token_validity_seconds &&
130
- authorized_grant_types == o.authorized_grant_types &&
131
137
  description == o.description &&
132
138
  registered_redirect_uri == o.registered_redirect_uri &&
133
139
  secret == o.secret &&
134
140
  role_ids == o.role_ids &&
141
+ authorized_grant_type == o.authorized_grant_type &&
135
142
  self_uri == o.self_uri
136
143
  end
137
144
 
@@ -142,7 +149,7 @@ module PureCloud
142
149
 
143
150
  # Calculate hash code according to all attributes.
144
151
  def hash
145
- [id, name, access_token_validity_seconds, authorized_grant_types, description, registered_redirect_uri, secret, role_ids, self_uri].hash
152
+ [id, name, access_token_validity_seconds, description, registered_redirect_uri, secret, role_ids, authorized_grant_type, self_uri].hash
146
153
  end
147
154
 
148
155
  # build the object from hash
@@ -12,12 +12,12 @@ module PureCloud
12
12
 
13
13
  attr_accessor :self_uri
14
14
 
15
+ attr_accessor :next_uri
16
+
15
17
  attr_accessor :first_uri
16
18
 
17
19
  attr_accessor :previous_uri
18
20
 
19
- attr_accessor :next_uri
20
-
21
21
  attr_accessor :last_uri
22
22
 
23
23
  attr_accessor :page_count
@@ -36,12 +36,12 @@ module PureCloud
36
36
 
37
37
  :'self_uri' => :'selfUri',
38
38
 
39
+ :'next_uri' => :'nextUri',
40
+
39
41
  :'first_uri' => :'firstUri',
40
42
 
41
43
  :'previous_uri' => :'previousUri',
42
44
 
43
- :'next_uri' => :'nextUri',
44
-
45
45
  :'last_uri' => :'lastUri',
46
46
 
47
47
  :'page_count' => :'pageCount'
@@ -57,9 +57,9 @@ module PureCloud
57
57
  :'total' => :'Integer',
58
58
  :'entities' => :'Array<OAuthClient>',
59
59
  :'self_uri' => :'String',
60
+ :'next_uri' => :'String',
60
61
  :'first_uri' => :'String',
61
62
  :'previous_uri' => :'String',
62
- :'next_uri' => :'String',
63
63
  :'last_uri' => :'String',
64
64
  :'page_count' => :'Integer'
65
65
 
@@ -95,6 +95,10 @@ module PureCloud
95
95
  self.self_uri = attributes[:'selfUri']
96
96
  end
97
97
 
98
+ if attributes[:'nextUri']
99
+ self.next_uri = attributes[:'nextUri']
100
+ end
101
+
98
102
  if attributes[:'firstUri']
99
103
  self.first_uri = attributes[:'firstUri']
100
104
  end
@@ -103,10 +107,6 @@ module PureCloud
103
107
  self.previous_uri = attributes[:'previousUri']
104
108
  end
105
109
 
106
- if attributes[:'nextUri']
107
- self.next_uri = attributes[:'nextUri']
108
- end
109
-
110
110
  if attributes[:'lastUri']
111
111
  self.last_uri = attributes[:'lastUri']
112
112
  end
@@ -126,9 +126,9 @@ module PureCloud
126
126
  total == o.total &&
127
127
  entities == o.entities &&
128
128
  self_uri == o.self_uri &&
129
+ next_uri == o.next_uri &&
129
130
  first_uri == o.first_uri &&
130
131
  previous_uri == o.previous_uri &&
131
- next_uri == o.next_uri &&
132
132
  last_uri == o.last_uri &&
133
133
  page_count == o.page_count
134
134
  end
@@ -140,7 +140,7 @@ module PureCloud
140
140
 
141
141
  # Calculate hash code according to all attributes.
142
142
  def hash
143
- [page_size, page_number, total, entities, self_uri, first_uri, previous_uri, next_uri, last_uri, page_count].hash
143
+ [page_size, page_number, total, entities, self_uri, next_uri, first_uri, previous_uri, last_uri, page_count].hash
144
144
  end
145
145
 
146
146
  # build the object from hash
@@ -12,12 +12,12 @@ module PureCloud
12
12
 
13
13
  attr_accessor :self_uri
14
14
 
15
+ attr_accessor :next_uri
16
+
15
17
  attr_accessor :first_uri
16
18
 
17
19
  attr_accessor :previous_uri
18
20
 
19
- attr_accessor :next_uri
20
-
21
21
  attr_accessor :last_uri
22
22
 
23
23
  attr_accessor :page_count
@@ -36,12 +36,12 @@ module PureCloud
36
36
 
37
37
  :'self_uri' => :'selfUri',
38
38
 
39
+ :'next_uri' => :'nextUri',
40
+
39
41
  :'first_uri' => :'firstUri',
40
42
 
41
43
  :'previous_uri' => :'previousUri',
42
44
 
43
- :'next_uri' => :'nextUri',
44
-
45
45
  :'last_uri' => :'lastUri',
46
46
 
47
47
  :'page_count' => :'pageCount'
@@ -57,9 +57,9 @@ module PureCloud
57
57
  :'total' => :'Integer',
58
58
  :'entities' => :'Array<OAuthProvider>',
59
59
  :'self_uri' => :'String',
60
+ :'next_uri' => :'String',
60
61
  :'first_uri' => :'String',
61
62
  :'previous_uri' => :'String',
62
- :'next_uri' => :'String',
63
63
  :'last_uri' => :'String',
64
64
  :'page_count' => :'Integer'
65
65
 
@@ -95,6 +95,10 @@ module PureCloud
95
95
  self.self_uri = attributes[:'selfUri']
96
96
  end
97
97
 
98
+ if attributes[:'nextUri']
99
+ self.next_uri = attributes[:'nextUri']
100
+ end
101
+
98
102
  if attributes[:'firstUri']
99
103
  self.first_uri = attributes[:'firstUri']
100
104
  end
@@ -103,10 +107,6 @@ module PureCloud
103
107
  self.previous_uri = attributes[:'previousUri']
104
108
  end
105
109
 
106
- if attributes[:'nextUri']
107
- self.next_uri = attributes[:'nextUri']
108
- end
109
-
110
110
  if attributes[:'lastUri']
111
111
  self.last_uri = attributes[:'lastUri']
112
112
  end
@@ -126,9 +126,9 @@ module PureCloud
126
126
  total == o.total &&
127
127
  entities == o.entities &&
128
128
  self_uri == o.self_uri &&
129
+ next_uri == o.next_uri &&
129
130
  first_uri == o.first_uri &&
130
131
  previous_uri == o.previous_uri &&
131
- next_uri == o.next_uri &&
132
132
  last_uri == o.last_uri &&
133
133
  page_count == o.page_count
134
134
  end
@@ -140,7 +140,7 @@ module PureCloud
140
140
 
141
141
  # Calculate hash code according to all attributes.
142
142
  def hash
143
- [page_size, page_number, total, entities, self_uri, first_uri, previous_uri, next_uri, last_uri, page_count].hash
143
+ [page_size, page_number, total, entities, self_uri, next_uri, first_uri, previous_uri, last_uri, page_count].hash
144
144
  end
145
145
 
146
146
  # build the object from hash
@@ -0,0 +1,161 @@
1
+ require 'date'
2
+
3
+ module PureCloud
4
+ class ObservationDataContainer
5
+ # A mapping from dimension to value
6
+ attr_accessor :group
7
+
8
+ attr_accessor :data
9
+
10
+ # Attribute mapping from ruby-style variable name to JSON key.
11
+ def self.attribute_map
12
+ {
13
+
14
+ :'group' => :'group',
15
+
16
+ :'data' => :'data'
17
+
18
+ }
19
+ end
20
+
21
+ # Attribute type mapping.
22
+ def self.swagger_types
23
+ {
24
+ :'group' => :'Hash<String, String>',
25
+ :'data' => :'Array<AggregateMetricData>'
26
+
27
+ }
28
+ end
29
+
30
+ def initialize(attributes = {})
31
+ return unless attributes.is_a?(Hash)
32
+
33
+ # convert string to symbol for hash key
34
+ attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
35
+
36
+
37
+ if attributes[:'group']
38
+ if (value = attributes[:'group']).is_a?(Array)
39
+ self.group = value
40
+ end
41
+ end
42
+
43
+ if attributes[:'data']
44
+ if (value = attributes[:'data']).is_a?(Array)
45
+ self.data = value
46
+ end
47
+ end
48
+
49
+ end
50
+
51
+ # Check equality by comparing each attribute.
52
+ def ==(o)
53
+ return true if self.equal?(o)
54
+ self.class == o.class &&
55
+ group == o.group &&
56
+ data == o.data
57
+ end
58
+
59
+ # @see the `==` method
60
+ def eql?(o)
61
+ self == o
62
+ end
63
+
64
+ # Calculate hash code according to all attributes.
65
+ def hash
66
+ [group, data].hash
67
+ end
68
+
69
+ # build the object from hash
70
+ def build_from_hash(attributes)
71
+ return nil unless attributes.is_a?(Hash)
72
+ self.class.swagger_types.each_pair do |key, type|
73
+ if type =~ /^Array<(.*)>/i
74
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
75
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
76
+ else
77
+ #TODO show warning in debug mode
78
+ end
79
+ elsif !attributes[self.class.attribute_map[key]].nil?
80
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
81
+ else
82
+ # data not found in attributes(hash), not an issue as the data can be optional
83
+ end
84
+ end
85
+
86
+ self
87
+ end
88
+
89
+ def _deserialize(type, value)
90
+ case type.to_sym
91
+ when :DateTime
92
+ DateTime.parse(value)
93
+ when :Date
94
+ Date.parse(value)
95
+ when :String
96
+ value.to_s
97
+ when :Integer
98
+ value.to_i
99
+ when :Float
100
+ value.to_f
101
+ when :BOOLEAN
102
+ if value =~ /^(true|t|yes|y|1)$/i
103
+ true
104
+ else
105
+ false
106
+ end
107
+ when /\AArray<(?<inner_type>.+)>\z/
108
+ inner_type = Regexp.last_match[:inner_type]
109
+ value.map { |v| _deserialize(inner_type, v) }
110
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
111
+ k_type = Regexp.last_match[:k_type]
112
+ v_type = Regexp.last_match[:v_type]
113
+ {}.tap do |hash|
114
+ value.each do |k, v|
115
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
116
+ end
117
+ end
118
+ else # model
119
+ _model = Object.const_get("PureCloud").const_get(type).new
120
+ _model.build_from_hash(value)
121
+ end
122
+ end
123
+
124
+ def to_s
125
+ to_hash.to_s
126
+ end
127
+
128
+ # to_body is an alias to to_body (backward compatibility))
129
+ def to_body
130
+ to_hash
131
+ end
132
+
133
+ # return the object in the form of hash
134
+ def to_hash
135
+ hash = {}
136
+ self.class.attribute_map.each_pair do |attr, param|
137
+ value = self.send(attr)
138
+ next if value.nil?
139
+ hash[param] = _to_hash(value)
140
+ end
141
+ hash
142
+ end
143
+
144
+ # Method to output non-array value in the form of hash
145
+ # For object, use to_hash. Otherwise, just return the value
146
+ def _to_hash(value)
147
+ if value.is_a?(Array)
148
+ value.compact.map{ |v| _to_hash(v) }
149
+ elsif value.is_a?(Hash)
150
+ {}.tap do |hash|
151
+ value.each { |k, v| hash[k] = _to_hash(v) }
152
+ end
153
+ elsif value.respond_to? :to_hash
154
+ value.to_hash
155
+ else
156
+ value
157
+ end
158
+ end
159
+
160
+ end
161
+ end
@@ -0,0 +1,160 @@
1
+ require 'date'
2
+
3
+ module PureCloud
4
+ class ObservationQuery
5
+ # Filter to return a subset of observations. Expresses boolean logical predicates as well as dimensional filters
6
+ attr_accessor :filter
7
+
8
+ # Behaves like a SQL SELECT clause. Enables retrieving only named metrics. If omitted, all metrics that are available will be returned (like SELECT *).
9
+ attr_accessor :metrics
10
+
11
+ # Attribute mapping from ruby-style variable name to JSON key.
12
+ def self.attribute_map
13
+ {
14
+
15
+ :'filter' => :'filter',
16
+
17
+ :'metrics' => :'metrics'
18
+
19
+ }
20
+ end
21
+
22
+ # Attribute type mapping.
23
+ def self.swagger_types
24
+ {
25
+ :'filter' => :'AnalyticsQueryFilter',
26
+ :'metrics' => :'Array<String>'
27
+
28
+ }
29
+ end
30
+
31
+ def initialize(attributes = {})
32
+ return unless attributes.is_a?(Hash)
33
+
34
+ # convert string to symbol for hash key
35
+ attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
36
+
37
+
38
+ if attributes[:'filter']
39
+ self.filter = attributes[:'filter']
40
+ end
41
+
42
+ if attributes[:'metrics']
43
+ if (value = attributes[:'metrics']).is_a?(Array)
44
+ self.metrics = value
45
+ end
46
+ end
47
+
48
+ end
49
+
50
+ # Check equality by comparing each attribute.
51
+ def ==(o)
52
+ return true if self.equal?(o)
53
+ self.class == o.class &&
54
+ filter == o.filter &&
55
+ metrics == o.metrics
56
+ end
57
+
58
+ # @see the `==` method
59
+ def eql?(o)
60
+ self == o
61
+ end
62
+
63
+ # Calculate hash code according to all attributes.
64
+ def hash
65
+ [filter, metrics].hash
66
+ end
67
+
68
+ # build the object from hash
69
+ def build_from_hash(attributes)
70
+ return nil unless attributes.is_a?(Hash)
71
+ self.class.swagger_types.each_pair do |key, type|
72
+ if type =~ /^Array<(.*)>/i
73
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
74
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
75
+ else
76
+ #TODO show warning in debug mode
77
+ end
78
+ elsif !attributes[self.class.attribute_map[key]].nil?
79
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
80
+ else
81
+ # data not found in attributes(hash), not an issue as the data can be optional
82
+ end
83
+ end
84
+
85
+ self
86
+ end
87
+
88
+ def _deserialize(type, value)
89
+ case type.to_sym
90
+ when :DateTime
91
+ DateTime.parse(value)
92
+ when :Date
93
+ Date.parse(value)
94
+ when :String
95
+ value.to_s
96
+ when :Integer
97
+ value.to_i
98
+ when :Float
99
+ value.to_f
100
+ when :BOOLEAN
101
+ if value =~ /^(true|t|yes|y|1)$/i
102
+ true
103
+ else
104
+ false
105
+ end
106
+ when /\AArray<(?<inner_type>.+)>\z/
107
+ inner_type = Regexp.last_match[:inner_type]
108
+ value.map { |v| _deserialize(inner_type, v) }
109
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
110
+ k_type = Regexp.last_match[:k_type]
111
+ v_type = Regexp.last_match[:v_type]
112
+ {}.tap do |hash|
113
+ value.each do |k, v|
114
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
115
+ end
116
+ end
117
+ else # model
118
+ _model = Object.const_get("PureCloud").const_get(type).new
119
+ _model.build_from_hash(value)
120
+ end
121
+ end
122
+
123
+ def to_s
124
+ to_hash.to_s
125
+ end
126
+
127
+ # to_body is an alias to to_body (backward compatibility))
128
+ def to_body
129
+ to_hash
130
+ end
131
+
132
+ # return the object in the form of hash
133
+ def to_hash
134
+ hash = {}
135
+ self.class.attribute_map.each_pair do |attr, param|
136
+ value = self.send(attr)
137
+ next if value.nil?
138
+ hash[param] = _to_hash(value)
139
+ end
140
+ hash
141
+ end
142
+
143
+ # Method to output non-array value in the form of hash
144
+ # For object, use to_hash. Otherwise, just return the value
145
+ def _to_hash(value)
146
+ if value.is_a?(Array)
147
+ value.compact.map{ |v| _to_hash(v) }
148
+ elsif value.is_a?(Hash)
149
+ {}.tap do |hash|
150
+ value.each { |k, v| hash[k] = _to_hash(v) }
151
+ end
152
+ elsif value.respond_to? :to_hash
153
+ value.to_hash
154
+ else
155
+ value
156
+ end
157
+ end
158
+
159
+ end
160
+ end