purecloudplatformclientv2 36.1.0 → 37.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 (282) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +2 -2
  3. data/docs/AgentTimeOffRequestPatch.md +15 -0
  4. data/docs/AnalyticsApi.md +2 -2
  5. data/docs/AsgInfoResponse.md +2 -2
  6. data/docs/AsyncWeekScheduleResponse.md +16 -0
  7. data/docs/CallMediaPolicyConditions.md +1 -0
  8. data/docs/CampaignNotification.md +1 -0
  9. data/docs/ChatMediaPolicyConditions.md +1 -0
  10. data/docs/ConversationNotificationMedia.md +3 -0
  11. data/docs/ConversationNotificationMessageDetails.md +1 -0
  12. data/docs/ConversationNotificationMessageMedia.md +3 -0
  13. data/docs/ConversationNotificationMessageSticker.md +14 -0
  14. data/docs/ConversationNotificationMessages.md +1 -0
  15. data/docs/ConversationNotificationStickers.md +14 -0
  16. data/docs/CopyShortTermForecastRequest.md +14 -0
  17. data/docs/CopyWeekScheduleRequest.md +14 -0
  18. data/docs/CopyWorkPlan.md +13 -0
  19. data/docs/CreateAdminTimeOffRequest.md +19 -0
  20. data/docs/CreateAgentTimeOffRequest.md +17 -0
  21. data/docs/CreateAsgRequest.md +1 -1
  22. data/docs/CreateManagementUnitApiRequest.md +17 -0
  23. data/docs/CreateManagementUnitSettings.md +16 -0
  24. data/docs/CreateQueueMediaAssociationRequest.md +14 -0
  25. data/docs/CreateServiceGoalGroupRequest.md +15 -0
  26. data/docs/CreateWorkPlan.md +26 -0
  27. data/docs/CreateWorkPlanActivity.md +23 -0
  28. data/docs/CreateWorkPlanShift.md +29 -0
  29. data/docs/CurrentUserScheduleRequestBody.md +14 -0
  30. data/docs/DateRange.md +14 -0
  31. data/docs/DeletableUserReference.md +15 -0
  32. data/docs/EmailMediaPolicyConditions.md +1 -0
  33. data/docs/ExternalContact.md +3 -1
  34. data/docs/ExternalOrganization.md +1 -1
  35. data/docs/FacebookId.md +14 -0
  36. data/docs/FacebookScopedId.md +13 -0
  37. data/docs/FlowOutcomeNotificationNotification.md +16 -0
  38. data/docs/FlowOutcomeNotificationNotificationArchitectOperation.md +21 -0
  39. data/docs/FlowOutcomeNotificationNotificationErrorDetail.md +16 -0
  40. data/docs/FlowOutcomeNotificationNotificationErrorMessageParams.md +13 -0
  41. data/docs/{SurveyFormUriReference.md → FlowOutcomeNotificationNotificationHomeOrganization.md} +3 -4
  42. data/docs/FlowOutcomeNotificationNotificationUser.md +15 -0
  43. data/docs/ForecastGenerationResult.md +13 -0
  44. data/docs/ForecastGenerationRouteGroupResult.md +14 -0
  45. data/docs/ForecastResultResponse.md +14 -0
  46. data/docs/ForecastSourceDayPointer.md +17 -0
  47. data/docs/ForecastTimeSeriesResult.md +14 -0
  48. data/docs/GenerateShortTermForecastRequest.md +13 -0
  49. data/docs/GenerateShortTermForecastResponse.md +16 -0
  50. data/docs/GenerateWeekScheduleRequest.md +14 -0
  51. data/docs/GenerateWeekScheduleResponse.md +15 -0
  52. data/docs/GroupsApi.md +2 -0
  53. data/docs/HeadcountForecastResponse.md +14 -0
  54. data/docs/HeadcountIntervalResponse.md +14 -0
  55. data/docs/ImportShortTermForecastRequest.md +16 -0
  56. data/docs/ImportWeekScheduleRequest.md +17 -0
  57. data/docs/IntradayDataUpdateNotificationDateTime.md +1 -1
  58. data/docs/IntradayDataUpdateNotificationStartDate.md +1 -1
  59. data/docs/JsonNode.md +1 -1
  60. data/docs/LanguageReference.md +14 -0
  61. data/docs/LineId.md +14 -0
  62. data/docs/LineUserId.md +13 -0
  63. data/docs/ListWrapperForecastSourceDayPointer.md +13 -0
  64. data/docs/ListWrapperShiftStartVariance.md +13 -0
  65. data/docs/ListWrapperWfmForecastModification.md +13 -0
  66. data/docs/MessageConversationNotificationMessageDetails.md +1 -0
  67. data/docs/MessageConversationNotificationMessageMedia.md +3 -0
  68. data/docs/MessageConversationNotificationMessageSticker.md +14 -0
  69. data/docs/MessageConversationNotificationMessages.md +1 -0
  70. data/docs/MessageMediaPolicyConditions.md +1 -0
  71. data/docs/OrgUser.md +1 -0
  72. data/docs/OutboundApi.md +70 -0
  73. data/docs/PartialUploadResponse.md +13 -0
  74. data/docs/PatchUser.md +0 -1
  75. data/docs/PublishedSurveyFormReference.md +16 -0
  76. data/docs/QueryDivision.md +12 -0
  77. data/docs/QueueMediaAssociation.md +16 -0
  78. data/docs/QueueReference.md +14 -0
  79. data/docs/RecordingMessagingMessage.md +1 -0
  80. data/docs/RouteGroup.md +18 -0
  81. data/docs/RouteGroupAttributes.md +16 -0
  82. data/docs/RouteGroupList.md +14 -0
  83. data/docs/RoutingApi.md +8 -8
  84. data/docs/RoutingSkillReference.md +14 -0
  85. data/docs/ScheduleGenerationWarning.md +20 -0
  86. data/docs/SchedulingRunListResponse.md +13 -0
  87. data/docs/SchedulingRunResponse.md +22 -0
  88. data/docs/ServiceGoalGroup.md +18 -0
  89. data/docs/ServiceGoalGroupGoals.md +14 -0
  90. data/docs/ServiceGoalGroupList.md +14 -0
  91. data/docs/SetWrapperDayOfWeek.md +13 -0
  92. data/docs/ShiftStartVariance.md +14 -0
  93. data/docs/ShortTermForecast.md +22 -0
  94. data/docs/ShortTermForecastListItemResponse.md +18 -0
  95. data/docs/ShortTermForecastListResponse.md +13 -0
  96. data/docs/ShortTermForecastReference.md +16 -0
  97. data/docs/ShortTermForecastResponse.md +15 -0
  98. data/docs/SurveyAssignment.md +3 -1
  99. data/docs/SurveyForm.md +1 -0
  100. data/docs/TimeOffRequestEntityList.md +13 -0
  101. data/docs/TimeOffRequestLookup.md +15 -0
  102. data/docs/TimeOffRequestLookupList.md +13 -0
  103. data/docs/TimeOffRequestQueryBody.md +15 -0
  104. data/docs/TrustUser.md +1 -0
  105. data/docs/TrusteeAuthorization.md +13 -0
  106. data/docs/Trustor.md +1 -0
  107. data/docs/UpdateActivityCodeRequest.md +19 -0
  108. data/docs/UpdateWeekScheduleRequest.md +18 -0
  109. data/docs/User.md +1 -0
  110. data/docs/UserMe.md +1 -0
  111. data/docs/UserScheduleAdherenceUpdateNotificationDateTime.md +1 -1
  112. data/docs/UserSchedulesPartialUploadRequest.md +13 -0
  113. data/docs/UsersApi.md +5 -6
  114. data/docs/ViewFilter.md +4 -0
  115. data/docs/WeekSchedule.md +23 -0
  116. data/docs/WeekScheduleGenerationResult.md +16 -0
  117. data/docs/WeekScheduleListItemResponse.md +20 -0
  118. data/docs/WeekScheduleListResponse.md +13 -0
  119. data/docs/WeekScheduleResponse.md +14 -0
  120. data/docs/WfmAgent.md +22 -0
  121. data/docs/WfmAverageSpeedOfAnswer.md +14 -0
  122. data/docs/WfmForecastModification.md +20 -0
  123. data/docs/WfmForecastModificationAttributes.md +16 -0
  124. data/docs/WfmForecastModificationIntervalOffsetValue.md +14 -0
  125. data/docs/WfmHistoricalAdherenceQuery.md +1 -1
  126. data/docs/WfmHistoricalAdherenceQueryForUsers.md +17 -0
  127. data/docs/WfmServiceLevel.md +15 -0
  128. data/docs/WfmTimeZone.md +13 -0
  129. data/docs/WorkPlan.md +29 -0
  130. data/docs/WorkPlanActivity.md +25 -0
  131. data/docs/WorkPlanListItemResponse.md +21 -0
  132. data/docs/WorkPlanListResponse.md +13 -0
  133. data/docs/WorkPlanReference.md +13 -0
  134. data/docs/WorkPlanShift.md +31 -0
  135. data/docs/WorkforceManagementApi.md +3557 -187
  136. data/lib/purecloudplatformclientv2.rb +96 -1
  137. data/lib/purecloudplatformclientv2/api/outbound_api.rb +83 -0
  138. data/lib/purecloudplatformclientv2/api/routing_api.rb +8 -8
  139. data/lib/purecloudplatformclientv2/api/users_api.rb +8 -6
  140. data/lib/purecloudplatformclientv2/api/workforce_management_api.rb +3993 -288
  141. data/lib/purecloudplatformclientv2/api_client.rb +1 -1
  142. data/lib/purecloudplatformclientv2/models/agent_time_off_request_patch.rb +268 -0
  143. data/lib/purecloudplatformclientv2/models/aggregate_metric_data.rb +2 -2
  144. data/lib/purecloudplatformclientv2/models/analytics_query_predicate.rb +2 -2
  145. data/lib/purecloudplatformclientv2/models/asg_info_response.rb +2 -2
  146. data/lib/purecloudplatformclientv2/models/async_week_schedule_response.rb +294 -0
  147. data/lib/purecloudplatformclientv2/models/call_media_policy_conditions.rb +28 -1
  148. data/lib/purecloudplatformclientv2/models/campaign_notification.rb +26 -1
  149. data/lib/purecloudplatformclientv2/models/chat_media_policy_conditions.rb +28 -1
  150. data/lib/purecloudplatformclientv2/models/conversation_notification_media.rb +79 -4
  151. data/lib/purecloudplatformclientv2/models/conversation_notification_message.rb +2 -2
  152. data/lib/purecloudplatformclientv2/models/conversation_notification_message_details.rb +31 -4
  153. data/lib/purecloudplatformclientv2/models/conversation_notification_message_media.rb +79 -4
  154. data/lib/purecloudplatformclientv2/models/conversation_notification_message_sticker.rb +226 -0
  155. data/lib/purecloudplatformclientv2/models/conversation_notification_messages.rb +31 -4
  156. data/lib/purecloudplatformclientv2/models/conversation_notification_messages_1.rb +2 -2
  157. data/lib/purecloudplatformclientv2/models/conversation_notification_stickers.rb +226 -0
  158. data/lib/purecloudplatformclientv2/models/copy_short_term_forecast_request.rb +239 -0
  159. data/lib/purecloudplatformclientv2/models/copy_week_schedule_request.rb +238 -0
  160. data/lib/purecloudplatformclientv2/models/copy_work_plan.rb +208 -0
  161. data/lib/purecloudplatformclientv2/models/create_admin_time_off_request.rb +398 -0
  162. data/lib/purecloudplatformclientv2/models/create_agent_time_off_request.rb +320 -0
  163. data/lib/purecloudplatformclientv2/models/create_asg_request.rb +1 -1
  164. data/lib/purecloudplatformclientv2/models/create_management_unit_api_request.rb +336 -0
  165. data/lib/purecloudplatformclientv2/models/create_management_unit_settings.rb +281 -0
  166. data/lib/purecloudplatformclientv2/models/create_queue_media_association_request.rb +231 -0
  167. data/lib/purecloudplatformclientv2/models/create_service_goal_group_request.rb +262 -0
  168. data/lib/purecloudplatformclientv2/models/create_work_plan.rb +550 -0
  169. data/lib/purecloudplatformclientv2/models/create_work_plan_activity.rb +463 -0
  170. data/lib/purecloudplatformclientv2/models/create_work_plan_shift.rb +626 -0
  171. data/lib/purecloudplatformclientv2/models/current_user_schedule_request_body.rb +239 -0
  172. data/lib/purecloudplatformclientv2/models/data_export_notification_notification.rb +2 -2
  173. data/lib/purecloudplatformclientv2/models/date_range.rb +228 -0
  174. data/lib/purecloudplatformclientv2/models/deletable_user_reference.rb +255 -0
  175. data/lib/purecloudplatformclientv2/models/email_media_policy_conditions.rb +28 -1
  176. data/lib/purecloudplatformclientv2/models/external_contact.rb +52 -2
  177. data/lib/purecloudplatformclientv2/models/external_organization.rb +1 -1
  178. data/lib/purecloudplatformclientv2/models/facebook_id.rb +231 -0
  179. data/lib/purecloudplatformclientv2/models/facebook_scoped_id.rb +203 -0
  180. data/lib/purecloudplatformclientv2/models/flow_notification_notification_architect_operation.rb +2 -2
  181. data/lib/purecloudplatformclientv2/models/flow_outcome_notification_notification.rb +276 -0
  182. data/lib/purecloudplatformclientv2/models/flow_outcome_notification_notification_architect_operation.rb +431 -0
  183. data/lib/purecloudplatformclientv2/models/flow_outcome_notification_notification_error_detail.rb +276 -0
  184. data/lib/purecloudplatformclientv2/models/flow_outcome_notification_notification_error_message_params.rb +203 -0
  185. data/lib/purecloudplatformclientv2/models/flow_outcome_notification_notification_home_organization.rb +251 -0
  186. data/lib/purecloudplatformclientv2/models/flow_outcome_notification_notification_user.rb +251 -0
  187. data/lib/purecloudplatformclientv2/models/forecast_generation_result.rb +204 -0
  188. data/lib/purecloudplatformclientv2/models/forecast_generation_route_group_result.rb +230 -0
  189. data/lib/purecloudplatformclientv2/models/forecast_result_response.rb +228 -0
  190. data/lib/purecloudplatformclientv2/models/forecast_source_day_pointer.rb +321 -0
  191. data/lib/purecloudplatformclientv2/models/forecast_time_series_result.rb +256 -0
  192. data/lib/purecloudplatformclientv2/models/generate_short_term_forecast_request.rb +207 -0
  193. data/lib/purecloudplatformclientv2/models/generate_short_term_forecast_response.rb +294 -0
  194. data/lib/purecloudplatformclientv2/models/generate_week_schedule_request.rb +239 -0
  195. data/lib/purecloudplatformclientv2/models/generate_week_schedule_response.rb +268 -0
  196. data/lib/purecloudplatformclientv2/models/headcount_forecast_response.rb +233 -0
  197. data/lib/purecloudplatformclientv2/models/headcount_interval_response.rb +229 -0
  198. data/lib/purecloudplatformclientv2/models/import_short_term_forecast_request.rb +293 -0
  199. data/lib/purecloudplatformclientv2/models/import_week_schedule_request.rb +316 -0
  200. data/lib/purecloudplatformclientv2/models/intraday_data_update_notification_date_time.rb +17 -17
  201. data/lib/purecloudplatformclientv2/models/intraday_data_update_notification_start_date.rb +17 -17
  202. data/lib/purecloudplatformclientv2/models/json_node.rb +17 -17
  203. data/lib/purecloudplatformclientv2/models/language_reference.rb +228 -0
  204. data/lib/purecloudplatformclientv2/models/line_id.rb +231 -0
  205. data/lib/purecloudplatformclientv2/models/line_user_id.rb +203 -0
  206. data/lib/purecloudplatformclientv2/models/list_wrapper_forecast_source_day_pointer.rb +203 -0
  207. data/lib/purecloudplatformclientv2/models/list_wrapper_shift_start_variance.rb +203 -0
  208. data/lib/purecloudplatformclientv2/models/list_wrapper_wfm_forecast_modification.rb +203 -0
  209. data/lib/purecloudplatformclientv2/models/message_conversation_notification_message_details.rb +31 -4
  210. data/lib/purecloudplatformclientv2/models/message_conversation_notification_message_media.rb +79 -4
  211. data/lib/purecloudplatformclientv2/models/message_conversation_notification_message_media_participant.rb +2 -2
  212. data/lib/purecloudplatformclientv2/models/message_conversation_notification_message_sticker.rb +226 -0
  213. data/lib/purecloudplatformclientv2/models/message_conversation_notification_messages.rb +31 -4
  214. data/lib/purecloudplatformclientv2/models/message_conversation_notification_participants.rb +2 -2
  215. data/lib/purecloudplatformclientv2/models/message_media_policy_conditions.rb +28 -1
  216. data/lib/purecloudplatformclientv2/models/org_user.rb +27 -1
  217. data/lib/purecloudplatformclientv2/models/partial_upload_response.rb +202 -0
  218. data/lib/purecloudplatformclientv2/models/patch_user.rb +1 -26
  219. data/lib/purecloudplatformclientv2/models/prompt_notification_notification_architect_operation.rb +2 -2
  220. data/lib/purecloudplatformclientv2/models/prompt_notification_notification_current_operation.rb +2 -2
  221. data/lib/purecloudplatformclientv2/models/{survey_form_uri_reference.rb → published_survey_form_reference.rb} +16 -14
  222. data/lib/purecloudplatformclientv2/models/query_division.rb +176 -0
  223. data/lib/purecloudplatformclientv2/models/queue_media_association.rb +283 -0
  224. data/lib/purecloudplatformclientv2/models/queue_reference.rb +228 -0
  225. data/lib/purecloudplatformclientv2/models/recording_messaging_message.rb +26 -1
  226. data/lib/purecloudplatformclientv2/models/reporting_export_job_request.rb +2 -2
  227. data/lib/purecloudplatformclientv2/models/reporting_export_job_response.rb +2 -2
  228. data/lib/purecloudplatformclientv2/models/route_group.rb +363 -0
  229. data/lib/purecloudplatformclientv2/models/route_group_attributes.rb +307 -0
  230. data/lib/purecloudplatformclientv2/models/route_group_list.rb +235 -0
  231. data/lib/purecloudplatformclientv2/models/routing_skill_reference.rb +228 -0
  232. data/lib/purecloudplatformclientv2/models/schedule_generation_warning.rb +389 -0
  233. data/lib/purecloudplatformclientv2/models/scheduling_run_list_response.rb +203 -0
  234. data/lib/purecloudplatformclientv2/models/scheduling_run_response.rb +451 -0
  235. data/lib/purecloudplatformclientv2/models/service_goal_group.rb +339 -0
  236. data/lib/purecloudplatformclientv2/models/service_goal_group_goals.rb +239 -0
  237. data/lib/purecloudplatformclientv2/models/service_goal_group_list.rb +230 -0
  238. data/lib/purecloudplatformclientv2/models/set_wrapper_day_of_week.rb +203 -0
  239. data/lib/purecloudplatformclientv2/models/shift_start_variance.rb +241 -0
  240. data/lib/purecloudplatformclientv2/models/short_term_forecast.rb +466 -0
  241. data/lib/purecloudplatformclientv2/models/short_term_forecast_list_item_response.rb +362 -0
  242. data/lib/purecloudplatformclientv2/models/short_term_forecast_list_response.rb +203 -0
  243. data/lib/purecloudplatformclientv2/models/short_term_forecast_reference.rb +291 -0
  244. data/lib/purecloudplatformclientv2/models/short_term_forecast_response.rb +268 -0
  245. data/lib/purecloudplatformclientv2/models/survey_assignment.rb +62 -5
  246. data/lib/purecloudplatformclientv2/models/survey_form.rb +32 -1
  247. data/lib/purecloudplatformclientv2/models/time_off_request_entity_list.rb +203 -0
  248. data/lib/purecloudplatformclientv2/models/time_off_request_lookup.rb +264 -0
  249. data/lib/purecloudplatformclientv2/models/time_off_request_lookup_list.rb +209 -0
  250. data/lib/purecloudplatformclientv2/models/time_off_request_query_body.rb +258 -0
  251. data/lib/purecloudplatformclientv2/models/trust_user.rb +27 -1
  252. data/lib/purecloudplatformclientv2/models/trustee_authorization.rb +204 -0
  253. data/lib/purecloudplatformclientv2/models/trustor.rb +27 -1
  254. data/lib/purecloudplatformclientv2/models/update_activity_code_request.rb +378 -0
  255. data/lib/purecloudplatformclientv2/models/update_week_schedule_request.rb +346 -0
  256. data/lib/purecloudplatformclientv2/models/user.rb +27 -1
  257. data/lib/purecloudplatformclientv2/models/user_me.rb +27 -1
  258. data/lib/purecloudplatformclientv2/models/user_schedule_adherence_update_notification_date_time.rb +17 -17
  259. data/lib/purecloudplatformclientv2/models/user_schedules_partial_upload_request.rb +210 -0
  260. data/lib/purecloudplatformclientv2/models/view_filter.rb +112 -4
  261. data/lib/purecloudplatformclientv2/models/week_schedule.rb +465 -0
  262. data/lib/purecloudplatformclientv2/models/week_schedule_generation_result.rb +282 -0
  263. data/lib/purecloudplatformclientv2/models/week_schedule_list_item_response.rb +384 -0
  264. data/lib/purecloudplatformclientv2/models/week_schedule_list_response.rb +204 -0
  265. data/lib/purecloudplatformclientv2/models/week_schedule_response.rb +229 -0
  266. data/lib/purecloudplatformclientv2/models/wfm_agent.rb +443 -0
  267. data/lib/purecloudplatformclientv2/models/wfm_average_speed_of_answer.rb +234 -0
  268. data/lib/purecloudplatformclientv2/models/wfm_forecast_modification.rb +435 -0
  269. data/lib/purecloudplatformclientv2/models/wfm_forecast_modification_attributes.rb +288 -0
  270. data/lib/purecloudplatformclientv2/models/wfm_forecast_modification_interval_offset_value.rb +239 -0
  271. data/lib/purecloudplatformclientv2/models/wfm_historical_adherence_query.rb +1 -1
  272. data/lib/purecloudplatformclientv2/models/wfm_historical_adherence_query_for_users.rb +324 -0
  273. data/lib/purecloudplatformclientv2/models/wfm_service_level.rb +260 -0
  274. data/lib/purecloudplatformclientv2/models/wfm_time_zone.rb +203 -0
  275. data/lib/purecloudplatformclientv2/models/work_plan.rb +627 -0
  276. data/lib/purecloudplatformclientv2/models/work_plan_activity.rb +515 -0
  277. data/lib/purecloudplatformclientv2/models/work_plan_list_item_response.rb +410 -0
  278. data/lib/purecloudplatformclientv2/models/work_plan_list_response.rb +203 -0
  279. data/lib/purecloudplatformclientv2/models/work_plan_reference.rb +207 -0
  280. data/lib/purecloudplatformclientv2/models/work_plan_shift.rb +678 -0
  281. data/lib/purecloudplatformclientv2/version.rb +1 -1
  282. metadata +194 -4
@@ -28,7 +28,7 @@ module PureCloud
28
28
  # The time zone to use for returned results in olson format. If it is not set, the management unit time zone will be used to compute adherence
29
29
  attr_accessor :time_zone
30
30
 
31
- # The userIds to report on. If it is not set, adherence will be computed for all the users in management unit
31
+ # The userIds to report on. If null or not set, adherence will be computed for all the users in management unit
32
32
  attr_accessor :user_ids
33
33
 
34
34
  # Whether user exceptions should be returned as part of the results
@@ -0,0 +1,324 @@
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: ININ
11
+ http://www.inin.com
12
+
13
+ Terms of Service: https://developer.mypurecloud.com/tos
14
+
15
+ =end
16
+
17
+ require 'date'
18
+
19
+ module PureCloud
20
+ # Query to request a historical adherence report for users across management units from Workforce Management Service
21
+ class WfmHistoricalAdherenceQueryForUsers
22
+ # Beginning of the date range to query in ISO-8601 format
23
+ attr_accessor :start_date
24
+
25
+ # End of the date range to query in ISO-8601 format. If it is not set, end date will be set to current time
26
+ attr_accessor :end_date
27
+
28
+ # The time zone to use for returned results in olson format
29
+ attr_accessor :time_zone
30
+
31
+ # The userIds to report on
32
+ attr_accessor :user_ids
33
+
34
+ # Whether user exceptions should be returned as part of the results
35
+ attr_accessor :include_exceptions
36
+
37
+ # Attribute mapping from ruby-style variable name to JSON key.
38
+ def self.attribute_map
39
+ {
40
+
41
+ :'start_date' => :'startDate',
42
+
43
+ :'end_date' => :'endDate',
44
+
45
+ :'time_zone' => :'timeZone',
46
+
47
+ :'user_ids' => :'userIds',
48
+
49
+ :'include_exceptions' => :'includeExceptions'
50
+
51
+ }
52
+ end
53
+
54
+ # Attribute type mapping.
55
+ def self.swagger_types
56
+ {
57
+
58
+ :'start_date' => :'DateTime',
59
+
60
+ :'end_date' => :'DateTime',
61
+
62
+ :'time_zone' => :'String',
63
+
64
+ :'user_ids' => :'Array<String>',
65
+
66
+ :'include_exceptions' => :'BOOLEAN'
67
+
68
+ }
69
+ end
70
+
71
+ # Initializes the object
72
+ # @param [Hash] attributes Model attributes in the form of hash
73
+ def initialize(attributes = {})
74
+ return unless attributes.is_a?(Hash)
75
+
76
+ # convert string to symbol for hash key
77
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
78
+
79
+
80
+ if attributes.has_key?(:'startDate')
81
+
82
+
83
+ self.start_date = attributes[:'startDate']
84
+
85
+
86
+ end
87
+
88
+
89
+ if attributes.has_key?(:'endDate')
90
+
91
+
92
+ self.end_date = attributes[:'endDate']
93
+
94
+
95
+ end
96
+
97
+
98
+ if attributes.has_key?(:'timeZone')
99
+
100
+
101
+ self.time_zone = attributes[:'timeZone']
102
+
103
+
104
+ end
105
+
106
+
107
+ if attributes.has_key?(:'userIds')
108
+
109
+ if (value = attributes[:'userIds']).is_a?(Array)
110
+ self.user_ids = value
111
+ end
112
+
113
+
114
+
115
+ end
116
+
117
+
118
+ if attributes.has_key?(:'includeExceptions')
119
+
120
+
121
+ self.include_exceptions = attributes[:'includeExceptions']
122
+
123
+
124
+ end
125
+
126
+
127
+ end
128
+
129
+ # Show invalid properties with the reasons. Usually used together with valid?
130
+ # @return Array for valid properies with the reasons
131
+ def list_invalid_properties
132
+ invalid_properties = Array.new
133
+
134
+
135
+ return invalid_properties
136
+ end
137
+
138
+ # Check to see if the all the properties in the model are valid
139
+ # @return true if the model is valid
140
+ def valid?
141
+
142
+
143
+ if @start_date.nil?
144
+ return false
145
+ end
146
+
147
+
148
+
149
+
150
+
151
+
152
+
153
+
154
+
155
+
156
+ if @time_zone.nil?
157
+ return false
158
+ end
159
+
160
+
161
+
162
+
163
+
164
+
165
+ if @user_ids.nil?
166
+ return false
167
+ end
168
+
169
+
170
+
171
+
172
+
173
+
174
+
175
+
176
+
177
+ end
178
+
179
+
180
+
181
+
182
+
183
+
184
+
185
+
186
+
187
+
188
+
189
+
190
+
191
+
192
+
193
+
194
+
195
+
196
+
197
+
198
+
199
+
200
+
201
+
202
+
203
+
204
+
205
+ # Checks equality by comparing each attribute.
206
+ # @param [Object] Object to be compared
207
+ def ==(o)
208
+ return true if self.equal?(o)
209
+ self.class == o.class &&
210
+ start_date == o.start_date &&
211
+ end_date == o.end_date &&
212
+ time_zone == o.time_zone &&
213
+ user_ids == o.user_ids &&
214
+ include_exceptions == o.include_exceptions
215
+ end
216
+
217
+ # @see the `==` method
218
+ # @param [Object] Object to be compared
219
+ def eql?(o)
220
+ self == o
221
+ end
222
+
223
+ # Calculates hash code according to all attributes.
224
+ # @return [Fixnum] Hash code
225
+ def hash
226
+ [start_date, end_date, time_zone, user_ids, include_exceptions].hash
227
+ end
228
+
229
+ # build the object from hash
230
+ def build_from_hash(attributes)
231
+ return nil unless attributes.is_a?(Hash)
232
+ self.class.swagger_types.each_pair do |key, type|
233
+ if type =~ /^Array<(.*)>/i
234
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
235
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
236
+ else
237
+ #TODO show warning in debug mode
238
+ end
239
+ elsif !attributes[self.class.attribute_map[key]].nil?
240
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
241
+ else
242
+ # data not found in attributes(hash), not an issue as the data can be optional
243
+ end
244
+ end
245
+
246
+ self
247
+ end
248
+
249
+ def _deserialize(type, value)
250
+ case type.to_sym
251
+ when :DateTime
252
+ DateTime.parse(value)
253
+ when :Date
254
+ Date.parse(value)
255
+ when :String
256
+ value.to_s
257
+ when :Integer
258
+ value.to_i
259
+ when :Float
260
+ value.to_f
261
+ when :BOOLEAN
262
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
263
+ true
264
+ else
265
+ false
266
+ end
267
+ when :Object
268
+ # generic object (usually a Hash), return directly
269
+ value
270
+ when /\AArray<(?<inner_type>.+)>\z/
271
+ inner_type = Regexp.last_match[:inner_type]
272
+ value.map { |v| _deserialize(inner_type, v) }
273
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
274
+ k_type = Regexp.last_match[:k_type]
275
+ v_type = Regexp.last_match[:v_type]
276
+ {}.tap do |hash|
277
+ value.each do |k, v|
278
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
279
+ end
280
+ end
281
+ else # model
282
+ _model = Object.const_get("PureCloud").const_get(type).new
283
+ _model.build_from_hash(value)
284
+ end
285
+ end
286
+
287
+ def to_s
288
+ to_hash.to_s
289
+ end
290
+
291
+ # to_body is an alias to to_body (backward compatibility))
292
+ def to_body
293
+ to_hash
294
+ end
295
+
296
+ # return the object in the form of hash
297
+ def to_hash
298
+ hash = {}
299
+ self.class.attribute_map.each_pair do |attr, param|
300
+ value = self.send(attr)
301
+ next if value.nil?
302
+ hash[param] = _to_hash(value)
303
+ end
304
+ hash
305
+ end
306
+
307
+ # Method to output non-array value in the form of hash
308
+ # For object, use to_hash. Otherwise, just return the value
309
+ def _to_hash(value)
310
+ if value.is_a?(Array)
311
+ value.compact.map{ |v| _to_hash(v) }
312
+ elsif value.is_a?(Hash)
313
+ {}.tap do |hash|
314
+ value.each { |k, v| hash[k] = _to_hash(v) }
315
+ end
316
+ elsif value.respond_to? :to_hash
317
+ value.to_hash
318
+ else
319
+ value
320
+ end
321
+ end
322
+
323
+ end
324
+ end
@@ -0,0 +1,260 @@
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: ININ
11
+ http://www.inin.com
12
+
13
+ Terms of Service: https://developer.mypurecloud.com/tos
14
+
15
+ =end
16
+
17
+ require 'date'
18
+
19
+ module PureCloud
20
+ # Service level target configuration for a service goal group
21
+ class WfmServiceLevel
22
+ # Whether to include service level targets in the associated service goal group's configuration
23
+ attr_accessor :include
24
+
25
+ # Service level target percent answered for the associated service goal group. Required if include == true
26
+ attr_accessor :percent
27
+
28
+ # Service level target answer time for the associated service goal group. Required if include == true
29
+ attr_accessor :seconds
30
+
31
+ # Attribute mapping from ruby-style variable name to JSON key.
32
+ def self.attribute_map
33
+ {
34
+
35
+ :'include' => :'include',
36
+
37
+ :'percent' => :'percent',
38
+
39
+ :'seconds' => :'seconds'
40
+
41
+ }
42
+ end
43
+
44
+ # Attribute type mapping.
45
+ def self.swagger_types
46
+ {
47
+
48
+ :'include' => :'BOOLEAN',
49
+
50
+ :'percent' => :'Integer',
51
+
52
+ :'seconds' => :'Integer'
53
+
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
+
66
+ if attributes.has_key?(:'include')
67
+
68
+
69
+ self.include = attributes[:'include']
70
+
71
+
72
+ end
73
+
74
+
75
+ if attributes.has_key?(:'percent')
76
+
77
+
78
+ self.percent = attributes[:'percent']
79
+
80
+
81
+ end
82
+
83
+
84
+ if attributes.has_key?(:'seconds')
85
+
86
+
87
+ self.seconds = attributes[:'seconds']
88
+
89
+
90
+ end
91
+
92
+
93
+ end
94
+
95
+ # Show invalid properties with the reasons. Usually used together with valid?
96
+ # @return Array for valid properies with the reasons
97
+ def list_invalid_properties
98
+ invalid_properties = Array.new
99
+
100
+
101
+ return invalid_properties
102
+ end
103
+
104
+ # Check to see if the all the properties in the model are valid
105
+ # @return true if the model is valid
106
+ def valid?
107
+
108
+
109
+ if @include.nil?
110
+ return false
111
+ end
112
+
113
+
114
+
115
+
116
+
117
+
118
+
119
+
120
+
121
+
122
+
123
+
124
+
125
+ end
126
+
127
+
128
+
129
+
130
+
131
+
132
+
133
+
134
+
135
+
136
+
137
+
138
+
139
+
140
+
141
+
142
+
143
+ # Checks equality by comparing each attribute.
144
+ # @param [Object] Object to be compared
145
+ def ==(o)
146
+ return true if self.equal?(o)
147
+ self.class == o.class &&
148
+ include == o.include &&
149
+ percent == o.percent &&
150
+ seconds == o.seconds
151
+ end
152
+
153
+ # @see the `==` method
154
+ # @param [Object] Object to be compared
155
+ def eql?(o)
156
+ self == o
157
+ end
158
+
159
+ # Calculates hash code according to all attributes.
160
+ # @return [Fixnum] Hash code
161
+ def hash
162
+ [include, percent, seconds].hash
163
+ end
164
+
165
+ # build the object from hash
166
+ def build_from_hash(attributes)
167
+ return nil unless attributes.is_a?(Hash)
168
+ self.class.swagger_types.each_pair do |key, type|
169
+ if type =~ /^Array<(.*)>/i
170
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
171
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
172
+ else
173
+ #TODO show warning in debug mode
174
+ end
175
+ elsif !attributes[self.class.attribute_map[key]].nil?
176
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
177
+ else
178
+ # data not found in attributes(hash), not an issue as the data can be optional
179
+ end
180
+ end
181
+
182
+ self
183
+ end
184
+
185
+ def _deserialize(type, value)
186
+ case type.to_sym
187
+ when :DateTime
188
+ DateTime.parse(value)
189
+ when :Date
190
+ Date.parse(value)
191
+ when :String
192
+ value.to_s
193
+ when :Integer
194
+ value.to_i
195
+ when :Float
196
+ value.to_f
197
+ when :BOOLEAN
198
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
199
+ true
200
+ else
201
+ false
202
+ end
203
+ when :Object
204
+ # generic object (usually a Hash), return directly
205
+ value
206
+ when /\AArray<(?<inner_type>.+)>\z/
207
+ inner_type = Regexp.last_match[:inner_type]
208
+ value.map { |v| _deserialize(inner_type, v) }
209
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
210
+ k_type = Regexp.last_match[:k_type]
211
+ v_type = Regexp.last_match[:v_type]
212
+ {}.tap do |hash|
213
+ value.each do |k, v|
214
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
215
+ end
216
+ end
217
+ else # model
218
+ _model = Object.const_get("PureCloud").const_get(type).new
219
+ _model.build_from_hash(value)
220
+ end
221
+ end
222
+
223
+ def to_s
224
+ to_hash.to_s
225
+ end
226
+
227
+ # to_body is an alias to to_body (backward compatibility))
228
+ def to_body
229
+ to_hash
230
+ end
231
+
232
+ # return the object in the form of hash
233
+ def to_hash
234
+ hash = {}
235
+ self.class.attribute_map.each_pair do |attr, param|
236
+ value = self.send(attr)
237
+ next if value.nil?
238
+ hash[param] = _to_hash(value)
239
+ end
240
+ hash
241
+ end
242
+
243
+ # Method to output non-array value in the form of hash
244
+ # For object, use to_hash. Otherwise, just return the value
245
+ def _to_hash(value)
246
+ if value.is_a?(Array)
247
+ value.compact.map{ |v| _to_hash(v) }
248
+ elsif value.is_a?(Hash)
249
+ {}.tap do |hash|
250
+ value.each { |k, v| hash[k] = _to_hash(v) }
251
+ end
252
+ elsif value.respond_to? :to_hash
253
+ value.to_hash
254
+ else
255
+ value
256
+ end
257
+ end
258
+
259
+ end
260
+ end