purecloudplatformclientv2 70.0.0 → 71.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 (39) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +2 -2
  3. data/docs/AnalyticsSession.md +1 -0
  4. data/docs/BuSearchAgentSchedulesRequest.md +15 -0
  5. data/docs/ConversationsApi.md +198 -0
  6. data/docs/ManagementUnitReference.md +14 -0
  7. data/docs/RoutingApi.md +126 -0
  8. data/docs/SCIMApi.md +270 -0
  9. data/docs/ScimServiceProviderConfigAuthenticationScheme.md +1 -1
  10. data/docs/ScimV2Group.md +2 -1
  11. data/docs/SendAgentlessOutboundMessageRequest.md +16 -0
  12. data/docs/SendAgentlessOutboundMessageResponse.md +21 -0
  13. data/docs/ShiftTradeSettings.md +1 -0
  14. data/docs/TranscriptionSettings.md +14 -0
  15. data/docs/WhatsAppIntegrationRequest.md +17 -0
  16. data/docs/WorkPlanReference.md +3 -1
  17. data/docs/WorkforceManagementApi.md +74 -3
  18. data/lib/purecloudplatformclientv2.rb +6 -0
  19. data/lib/purecloudplatformclientv2/api/conversations_api.rb +195 -0
  20. data/lib/purecloudplatformclientv2/api/routing_api.rb +120 -0
  21. data/lib/purecloudplatformclientv2/api/scim_api.rb +276 -0
  22. data/lib/purecloudplatformclientv2/api/workforce_management_api.rb +73 -0
  23. data/lib/purecloudplatformclientv2/api_client.rb +1 -1
  24. data/lib/purecloudplatformclientv2/models/analytics_session.rb +30 -4
  25. data/lib/purecloudplatformclientv2/models/bu_search_agent_schedules_request.rb +266 -0
  26. data/lib/purecloudplatformclientv2/models/conversation_aggregate_query_predicate.rb +2 -2
  27. data/lib/purecloudplatformclientv2/models/flow_aggregate_query_predicate.rb +2 -2
  28. data/lib/purecloudplatformclientv2/models/management_unit_reference.rb +229 -0
  29. data/lib/purecloudplatformclientv2/models/scim_service_provider_config_authentication_scheme.rb +1 -1
  30. data/lib/purecloudplatformclientv2/models/scim_v2_group.rb +32 -1
  31. data/lib/purecloudplatformclientv2/models/segment_detail_query_predicate.rb +2 -2
  32. data/lib/purecloudplatformclientv2/models/send_agentless_outbound_message_request.rb +314 -0
  33. data/lib/purecloudplatformclientv2/models/send_agentless_outbound_message_response.rb +424 -0
  34. data/lib/purecloudplatformclientv2/models/shift_trade_settings.rb +27 -1
  35. data/lib/purecloudplatformclientv2/models/transcription_settings.rb +252 -0
  36. data/lib/purecloudplatformclientv2/models/whats_app_integration_request.rb +321 -0
  37. data/lib/purecloudplatformclientv2/models/work_plan_reference.rb +57 -9
  38. data/lib/purecloudplatformclientv2/version.rb +1 -1
  39. metadata +14 -2
@@ -154,6 +154,7 @@ require 'purecloudplatformclientv2/models/billing_usage'
154
154
  require 'purecloudplatformclientv2/models/billing_usage_report'
155
155
  require 'purecloudplatformclientv2/models/billing_usage_resource'
156
156
  require 'purecloudplatformclientv2/models/biography'
157
+ require 'purecloudplatformclientv2/models/bu_search_agent_schedules_request'
157
158
  require 'purecloudplatformclientv2/models/bullseye'
158
159
  require 'purecloudplatformclientv2/models/business_unit_reference'
159
160
  require 'purecloudplatformclientv2/models/calibration'
@@ -940,6 +941,7 @@ require 'purecloudplatformclientv2/models/lock_info'
940
941
  require 'purecloudplatformclientv2/models/logical_interface_entity_listing'
941
942
  require 'purecloudplatformclientv2/models/management_unit'
942
943
  require 'purecloudplatformclientv2/models/management_unit_listing'
944
+ require 'purecloudplatformclientv2/models/management_unit_reference'
943
945
  require 'purecloudplatformclientv2/models/management_unit_settings_request'
944
946
  require 'purecloudplatformclientv2/models/management_unit_settings_response'
945
947
  require 'purecloudplatformclientv2/models/manager'
@@ -1426,6 +1428,8 @@ require 'purecloudplatformclientv2/models/segment_detail_query_clause'
1426
1428
  require 'purecloudplatformclientv2/models/segment_detail_query_filter'
1427
1429
  require 'purecloudplatformclientv2/models/segment_detail_query_predicate'
1428
1430
  require 'purecloudplatformclientv2/models/selected_columns'
1431
+ require 'purecloudplatformclientv2/models/send_agentless_outbound_message_request'
1432
+ require 'purecloudplatformclientv2/models/send_agentless_outbound_message_response'
1429
1433
  require 'purecloudplatformclientv2/models/sequence_schedule'
1430
1434
  require 'purecloudplatformclientv2/models/server_date'
1431
1435
  require 'purecloudplatformclientv2/models/service_context'
@@ -1545,6 +1549,7 @@ require 'purecloudplatformclientv2/models/time_zone_mapping_preview'
1545
1549
  require 'purecloudplatformclientv2/models/token'
1546
1550
  require 'purecloudplatformclientv2/models/token_info'
1547
1551
  require 'purecloudplatformclientv2/models/transcript_property'
1552
+ require 'purecloudplatformclientv2/models/transcription_settings'
1548
1553
  require 'purecloudplatformclientv2/models/transfer_request'
1549
1554
  require 'purecloudplatformclientv2/models/trunk'
1550
1555
  require 'purecloudplatformclientv2/models/trunk_base'
@@ -1769,6 +1774,7 @@ require 'purecloudplatformclientv2/models/wfm_versioned_entity_metadata'
1769
1774
  require 'purecloudplatformclientv2/models/whats_app_id'
1770
1775
  require 'purecloudplatformclientv2/models/whats_app_integration'
1771
1776
  require 'purecloudplatformclientv2/models/whats_app_integration_entity_listing'
1777
+ require 'purecloudplatformclientv2/models/whats_app_integration_request'
1772
1778
  require 'purecloudplatformclientv2/models/whats_app_integration_update_request'
1773
1779
  require 'purecloudplatformclientv2/models/widget_client_config'
1774
1780
  require 'purecloudplatformclientv2/models/widget_client_config_third_party'
@@ -586,6 +586,71 @@ module PureCloud
586
586
  return data, status_code, headers
587
587
  end
588
588
 
589
+ # Delete a WhatsApp messaging integration
590
+ #
591
+ # @param integration_id Integration ID
592
+ # @param [Hash] opts the optional parameters
593
+ # @return [WhatsAppIntegration]
594
+ def delete_conversations_messaging_integrations_whatsapp_integration_id(integration_id, opts = {})
595
+ data, _status_code, _headers = delete_conversations_messaging_integrations_whatsapp_integration_id_with_http_info(integration_id, opts)
596
+ return data
597
+ end
598
+
599
+ # Delete a WhatsApp messaging integration
600
+ #
601
+ # @param integration_id Integration ID
602
+ # @param [Hash] opts the optional parameters
603
+ # @return [Array<(WhatsAppIntegration, Fixnum, Hash)>] WhatsAppIntegration data, response status code and response headers
604
+ def delete_conversations_messaging_integrations_whatsapp_integration_id_with_http_info(integration_id, opts = {})
605
+ if @api_client.config.debugging
606
+ @api_client.config.logger.debug "Calling API: ConversationsApi.delete_conversations_messaging_integrations_whatsapp_integration_id ..."
607
+ end
608
+
609
+
610
+ # verify the required parameter 'integration_id' is set
611
+ fail ArgumentError, "Missing the required parameter 'integration_id' when calling ConversationsApi.delete_conversations_messaging_integrations_whatsapp_integration_id" if integration_id.nil?
612
+
613
+
614
+
615
+
616
+
617
+ # resource path
618
+ local_var_path = "/api/v2/conversations/messaging/integrations/whatsapp/{integrationId}".sub('{format}','json').sub('{' + 'integrationId' + '}', integration_id.to_s)
619
+
620
+ # query parameters
621
+ query_params = {}
622
+
623
+ # header parameters
624
+ header_params = {}
625
+
626
+ # HTTP header 'Accept' (if needed)
627
+ local_header_accept = ['application/json']
628
+ local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result
629
+
630
+ # HTTP header 'Content-Type'
631
+ local_header_content_type = ['application/json']
632
+ header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type)
633
+
634
+ # form parameters
635
+ form_params = {}
636
+
637
+ # http body (model)
638
+ post_body = nil
639
+
640
+ auth_names = ['PureCloud OAuth']
641
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path,
642
+ :header_params => header_params,
643
+ :query_params => query_params,
644
+ :form_params => form_params,
645
+ :body => post_body,
646
+ :auth_names => auth_names,
647
+ :return_type => 'WhatsAppIntegration')
648
+ if @api_client.config.debugging
649
+ @api_client.config.logger.debug "API called: ConversationsApi#delete_conversations_messaging_integrations_whatsapp_integration_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
650
+ end
651
+ return data, status_code, headers
652
+ end
653
+
589
654
  # Get a conversation by id
590
655
  #
591
656
  # @param conversation_id conversationId
@@ -9133,6 +9198,71 @@ module PureCloud
9133
9198
  return data, status_code, headers
9134
9199
  end
9135
9200
 
9201
+ # Send an agentless outbound message
9202
+ # Send an agentlesss (api participant) outbound message using a client credential grant. In order to call this endpoint you will need OAuth token generated using OAuth client credentials authorized with at least messaging scope. This will generate a new Conversation, if there is an existing active Conversation between the fromAddress and toAddress already, then this POST will fail.
9203
+ # @param body Create agentless outbound messaging request
9204
+ # @param [Hash] opts the optional parameters
9205
+ # @return [SendAgentlessOutboundMessageResponse]
9206
+ def post_conversations_messages_agentless(body, opts = {})
9207
+ data, _status_code, _headers = post_conversations_messages_agentless_with_http_info(body, opts)
9208
+ return data
9209
+ end
9210
+
9211
+ # Send an agentless outbound message
9212
+ # Send an agentlesss (api participant) outbound message using a client credential grant. In order to call this endpoint you will need OAuth token generated using OAuth client credentials authorized with at least messaging scope. This will generate a new Conversation, if there is an existing active Conversation between the fromAddress and toAddress already, then this POST will fail.
9213
+ # @param body Create agentless outbound messaging request
9214
+ # @param [Hash] opts the optional parameters
9215
+ # @return [Array<(SendAgentlessOutboundMessageResponse, Fixnum, Hash)>] SendAgentlessOutboundMessageResponse data, response status code and response headers
9216
+ def post_conversations_messages_agentless_with_http_info(body, opts = {})
9217
+ if @api_client.config.debugging
9218
+ @api_client.config.logger.debug "Calling API: ConversationsApi.post_conversations_messages_agentless ..."
9219
+ end
9220
+
9221
+
9222
+ # verify the required parameter 'body' is set
9223
+ fail ArgumentError, "Missing the required parameter 'body' when calling ConversationsApi.post_conversations_messages_agentless" if body.nil?
9224
+
9225
+
9226
+
9227
+
9228
+
9229
+ # resource path
9230
+ local_var_path = "/api/v2/conversations/messages/agentless".sub('{format}','json')
9231
+
9232
+ # query parameters
9233
+ query_params = {}
9234
+
9235
+ # header parameters
9236
+ header_params = {}
9237
+
9238
+ # HTTP header 'Accept' (if needed)
9239
+ local_header_accept = ['application/json']
9240
+ local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result
9241
+
9242
+ # HTTP header 'Content-Type'
9243
+ local_header_content_type = ['application/json']
9244
+ header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type)
9245
+
9246
+ # form parameters
9247
+ form_params = {}
9248
+
9249
+ # http body (model)
9250
+ post_body = @api_client.object_to_http_body(body)
9251
+
9252
+ auth_names = ['PureCloud OAuth']
9253
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
9254
+ :header_params => header_params,
9255
+ :query_params => query_params,
9256
+ :form_params => form_params,
9257
+ :body => post_body,
9258
+ :auth_names => auth_names,
9259
+ :return_type => 'SendAgentlessOutboundMessageResponse')
9260
+ if @api_client.config.debugging
9261
+ @api_client.config.logger.debug "API called: ConversationsApi#post_conversations_messages_agentless\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
9262
+ end
9263
+ return data, status_code, headers
9264
+ end
9265
+
9136
9266
  # Create a Facebook Integration
9137
9267
  #
9138
9268
  # @param body FacebookIntegrationRequest
@@ -9328,6 +9458,71 @@ module PureCloud
9328
9458
  return data, status_code, headers
9329
9459
  end
9330
9460
 
9461
+ # Create a WhatsApp Integration
9462
+ #
9463
+ # @param body WhatsAppIntegrationRequest
9464
+ # @param [Hash] opts the optional parameters
9465
+ # @return [WhatsAppIntegration]
9466
+ def post_conversations_messaging_integrations_whatsapp(body, opts = {})
9467
+ data, _status_code, _headers = post_conversations_messaging_integrations_whatsapp_with_http_info(body, opts)
9468
+ return data
9469
+ end
9470
+
9471
+ # Create a WhatsApp Integration
9472
+ #
9473
+ # @param body WhatsAppIntegrationRequest
9474
+ # @param [Hash] opts the optional parameters
9475
+ # @return [Array<(WhatsAppIntegration, Fixnum, Hash)>] WhatsAppIntegration data, response status code and response headers
9476
+ def post_conversations_messaging_integrations_whatsapp_with_http_info(body, opts = {})
9477
+ if @api_client.config.debugging
9478
+ @api_client.config.logger.debug "Calling API: ConversationsApi.post_conversations_messaging_integrations_whatsapp ..."
9479
+ end
9480
+
9481
+
9482
+ # verify the required parameter 'body' is set
9483
+ fail ArgumentError, "Missing the required parameter 'body' when calling ConversationsApi.post_conversations_messaging_integrations_whatsapp" if body.nil?
9484
+
9485
+
9486
+
9487
+
9488
+
9489
+ # resource path
9490
+ local_var_path = "/api/v2/conversations/messaging/integrations/whatsapp".sub('{format}','json')
9491
+
9492
+ # query parameters
9493
+ query_params = {}
9494
+
9495
+ # header parameters
9496
+ header_params = {}
9497
+
9498
+ # HTTP header 'Accept' (if needed)
9499
+ local_header_accept = ['application/json']
9500
+ local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result
9501
+
9502
+ # HTTP header 'Content-Type'
9503
+ local_header_content_type = ['application/json']
9504
+ header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type)
9505
+
9506
+ # form parameters
9507
+ form_params = {}
9508
+
9509
+ # http body (model)
9510
+ post_body = @api_client.object_to_http_body(body)
9511
+
9512
+ auth_names = ['PureCloud OAuth']
9513
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
9514
+ :header_params => header_params,
9515
+ :query_params => query_params,
9516
+ :form_params => form_params,
9517
+ :body => post_body,
9518
+ :auth_names => auth_names,
9519
+ :return_type => 'WhatsAppIntegration')
9520
+ if @api_client.config.debugging
9521
+ @api_client.config.logger.debug "API called: ConversationsApi#post_conversations_messaging_integrations_whatsapp\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
9522
+ end
9523
+ return data, status_code, headers
9524
+ end
9525
+
9331
9526
  # Set flagged reason on conversation participant to indicate bad conversation quality.
9332
9527
  #
9333
9528
  # @param conversation_id conversation ID
@@ -2324,6 +2324,61 @@ module PureCloud
2324
2324
  return data, status_code, headers
2325
2325
  end
2326
2326
 
2327
+ # Get Transcription Settings
2328
+ #
2329
+ # @param [Hash] opts the optional parameters
2330
+ # @return [TranscriptionSettings]
2331
+ def get_routing_settings_transcription(opts = {})
2332
+ data, _status_code, _headers = get_routing_settings_transcription_with_http_info(opts)
2333
+ return data
2334
+ end
2335
+
2336
+ # Get Transcription Settings
2337
+ #
2338
+ # @param [Hash] opts the optional parameters
2339
+ # @return [Array<(TranscriptionSettings, Fixnum, Hash)>] TranscriptionSettings data, response status code and response headers
2340
+ def get_routing_settings_transcription_with_http_info(opts = {})
2341
+ if @api_client.config.debugging
2342
+ @api_client.config.logger.debug "Calling API: RoutingApi.get_routing_settings_transcription ..."
2343
+ end
2344
+
2345
+ # resource path
2346
+ local_var_path = "/api/v2/routing/settings/transcription".sub('{format}','json')
2347
+
2348
+ # query parameters
2349
+ query_params = {}
2350
+
2351
+ # header parameters
2352
+ header_params = {}
2353
+
2354
+ # HTTP header 'Accept' (if needed)
2355
+ local_header_accept = ['application/json']
2356
+ local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result
2357
+
2358
+ # HTTP header 'Content-Type'
2359
+ local_header_content_type = ['application/json']
2360
+ header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type)
2361
+
2362
+ # form parameters
2363
+ form_params = {}
2364
+
2365
+ # http body (model)
2366
+ post_body = nil
2367
+
2368
+ auth_names = ['PureCloud OAuth']
2369
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
2370
+ :header_params => header_params,
2371
+ :query_params => query_params,
2372
+ :form_params => form_params,
2373
+ :body => post_body,
2374
+ :auth_names => auth_names,
2375
+ :return_type => 'TranscriptionSettings')
2376
+ if @api_client.config.debugging
2377
+ @api_client.config.logger.debug "API called: RoutingApi#get_routing_settings_transcription\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2378
+ end
2379
+ return data, status_code, headers
2380
+ end
2381
+
2327
2382
  # Get Routing Skill
2328
2383
  #
2329
2384
  # @param skill_id Skill ID
@@ -4927,6 +4982,71 @@ module PureCloud
4927
4982
  return data, status_code, headers
4928
4983
  end
4929
4984
 
4985
+ # Update Transcription Settings
4986
+ #
4987
+ # @param body Organization Settings
4988
+ # @param [Hash] opts the optional parameters
4989
+ # @return [TranscriptionSettings]
4990
+ def put_routing_settings_transcription(body, opts = {})
4991
+ data, _status_code, _headers = put_routing_settings_transcription_with_http_info(body, opts)
4992
+ return data
4993
+ end
4994
+
4995
+ # Update Transcription Settings
4996
+ #
4997
+ # @param body Organization Settings
4998
+ # @param [Hash] opts the optional parameters
4999
+ # @return [Array<(TranscriptionSettings, Fixnum, Hash)>] TranscriptionSettings data, response status code and response headers
5000
+ def put_routing_settings_transcription_with_http_info(body, opts = {})
5001
+ if @api_client.config.debugging
5002
+ @api_client.config.logger.debug "Calling API: RoutingApi.put_routing_settings_transcription ..."
5003
+ end
5004
+
5005
+
5006
+ # verify the required parameter 'body' is set
5007
+ fail ArgumentError, "Missing the required parameter 'body' when calling RoutingApi.put_routing_settings_transcription" if body.nil?
5008
+
5009
+
5010
+
5011
+
5012
+
5013
+ # resource path
5014
+ local_var_path = "/api/v2/routing/settings/transcription".sub('{format}','json')
5015
+
5016
+ # query parameters
5017
+ query_params = {}
5018
+
5019
+ # header parameters
5020
+ header_params = {}
5021
+
5022
+ # HTTP header 'Accept' (if needed)
5023
+ local_header_accept = ['application/json']
5024
+ local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result
5025
+
5026
+ # HTTP header 'Content-Type'
5027
+ local_header_content_type = ['application/json']
5028
+ header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type)
5029
+
5030
+ # form parameters
5031
+ form_params = {}
5032
+
5033
+ # http body (model)
5034
+ post_body = @api_client.object_to_http_body(body)
5035
+
5036
+ auth_names = ['PureCloud OAuth']
5037
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path,
5038
+ :header_params => header_params,
5039
+ :query_params => query_params,
5040
+ :form_params => form_params,
5041
+ :body => post_body,
5042
+ :auth_names => auth_names,
5043
+ :return_type => 'TranscriptionSettings')
5044
+ if @api_client.config.debugging
5045
+ @api_client.config.logger.debug "API called: RoutingApi#put_routing_settings_transcription\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
5046
+ end
5047
+ return data, status_code, headers
5048
+ end
5049
+
4930
5050
  # Update a phone number provisioned for SMS.
4931
5051
  #
4932
5052
  # @param address_id Address ID
@@ -24,6 +24,79 @@ module PureCloud
24
24
  @api_client = api_client
25
25
  end
26
26
 
27
+ # Delete a group.
28
+ #
29
+ # @param group_id The ID of a group. Returned with GET /api/v2/scim/v2/groups.
30
+ # @param [Hash] opts the optional parameters
31
+ # @option opts [String] :if_match The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/v2/groups/{groupId}. Example: \&quot;42\&quot;. If the ETag is different from the version on the server, returns 400 with a \&quot;scimType\&quot; of \&quot;invalidVers\&quot;.
32
+ # @return [nil]
33
+ def delete_scim_group(group_id, opts = {})
34
+ delete_scim_group_with_http_info(group_id, opts)
35
+ return nil
36
+ end
37
+
38
+ # Delete a group.
39
+ #
40
+ # @param group_id The ID of a group. Returned with GET /api/v2/scim/v2/groups.
41
+ # @param [Hash] opts the optional parameters
42
+ # @option opts [String] :if_match The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/v2/groups/{groupId}. Example: \&quot;42\&quot;. If the ETag is different from the version on the server, returns 400 with a \&quot;scimType\&quot; of \&quot;invalidVers\&quot;.
43
+ # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
44
+ def delete_scim_group_with_http_info(group_id, opts = {})
45
+ if @api_client.config.debugging
46
+ @api_client.config.logger.debug "Calling API: SCIMApi.delete_scim_group ..."
47
+ end
48
+
49
+
50
+ # verify the required parameter 'group_id' is set
51
+ fail ArgumentError, "Missing the required parameter 'group_id' when calling SCIMApi.delete_scim_group" if group_id.nil?
52
+
53
+
54
+
55
+
56
+
57
+
58
+
59
+
60
+
61
+
62
+
63
+ # resource path
64
+ local_var_path = "/api/v2/scim/groups/{groupId}".sub('{format}','json').sub('{' + 'groupId' + '}', group_id.to_s)
65
+
66
+ # query parameters
67
+ query_params = {}
68
+
69
+ # header parameters
70
+ header_params = {}
71
+
72
+ # HTTP header 'Accept' (if needed)
73
+ local_header_accept = ['application/json', 'application/scim+json']
74
+ local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result
75
+
76
+ # HTTP header 'Content-Type'
77
+ local_header_content_type = ['application/json', 'application/scim+json']
78
+ header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type)
79
+ header_params[:'If-Match'] = opts[:'if_match'] if opts[:'if_match']
80
+
81
+ # form parameters
82
+ form_params = {}
83
+
84
+ # http body (model)
85
+ post_body = nil
86
+
87
+ auth_names = ['PureCloud OAuth']
88
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path,
89
+ :header_params => header_params,
90
+ :query_params => query_params,
91
+ :form_params => form_params,
92
+ :body => post_body,
93
+ :auth_names => auth_names)
94
+ if @api_client.config.debugging
95
+ @api_client.config.logger.debug "API called: SCIMApi#delete_scim_group\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
96
+ end
97
+ return data, status_code, headers
98
+ end
99
+
27
100
  # Delete a user
28
101
  #
29
102
  # @param user_id The ID of a user. Returned with GET /api/v2/scim/users.
@@ -98,6 +171,79 @@ module PureCloud
98
171
  return data, status_code, headers
99
172
  end
100
173
 
174
+ # Delete a group.
175
+ #
176
+ # @param group_id The ID of a group. Returned with GET /api/v2/scim/v2/groups.
177
+ # @param [Hash] opts the optional parameters
178
+ # @option opts [String] :if_match The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/v2/groups/{groupId}. Example: \&quot;42\&quot;. If the ETag is different from the version on the server, returns 400 with a \&quot;scimType\&quot; of \&quot;invalidVers\&quot;.
179
+ # @return [nil]
180
+ def delete_scim_v2_group(group_id, opts = {})
181
+ delete_scim_v2_group_with_http_info(group_id, opts)
182
+ return nil
183
+ end
184
+
185
+ # Delete a group.
186
+ #
187
+ # @param group_id The ID of a group. Returned with GET /api/v2/scim/v2/groups.
188
+ # @param [Hash] opts the optional parameters
189
+ # @option opts [String] :if_match The ETag of a resource in double quotes. Returned as header and meta.version with initial call to GET /api/v2/scim/v2/groups/{groupId}. Example: \&quot;42\&quot;. If the ETag is different from the version on the server, returns 400 with a \&quot;scimType\&quot; of \&quot;invalidVers\&quot;.
190
+ # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
191
+ def delete_scim_v2_group_with_http_info(group_id, opts = {})
192
+ if @api_client.config.debugging
193
+ @api_client.config.logger.debug "Calling API: SCIMApi.delete_scim_v2_group ..."
194
+ end
195
+
196
+
197
+ # verify the required parameter 'group_id' is set
198
+ fail ArgumentError, "Missing the required parameter 'group_id' when calling SCIMApi.delete_scim_v2_group" if group_id.nil?
199
+
200
+
201
+
202
+
203
+
204
+
205
+
206
+
207
+
208
+
209
+
210
+ # resource path
211
+ local_var_path = "/api/v2/scim/v2/groups/{groupId}".sub('{format}','json').sub('{' + 'groupId' + '}', group_id.to_s)
212
+
213
+ # query parameters
214
+ query_params = {}
215
+
216
+ # header parameters
217
+ header_params = {}
218
+
219
+ # HTTP header 'Accept' (if needed)
220
+ local_header_accept = ['application/json', 'application/scim+json']
221
+ local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result
222
+
223
+ # HTTP header 'Content-Type'
224
+ local_header_content_type = ['application/json', 'application/scim+json']
225
+ header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type)
226
+ header_params[:'If-Match'] = opts[:'if_match'] if opts[:'if_match']
227
+
228
+ # form parameters
229
+ form_params = {}
230
+
231
+ # http body (model)
232
+ post_body = nil
233
+
234
+ auth_names = ['PureCloud OAuth']
235
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path,
236
+ :header_params => header_params,
237
+ :query_params => query_params,
238
+ :form_params => form_params,
239
+ :body => post_body,
240
+ :auth_names => auth_names)
241
+ if @api_client.config.debugging
242
+ @api_client.config.logger.debug "API called: SCIMApi#delete_scim_v2_group\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
243
+ end
244
+ return data, status_code, headers
245
+ end
246
+
101
247
  # Delete a user
102
248
  #
103
249
  # @param user_id The ID of a user. Returned with GET /api/v2/scim/v2/users.
@@ -1584,6 +1730,71 @@ module PureCloud
1584
1730
  return data, status_code, headers
1585
1731
  end
1586
1732
 
1733
+ # The information used to create a group.
1734
+ # PureCloud group will be created as \"Official\" group with visibility set \"Public\", and rules visibility True. Will auto-create an external ID if one is not provided on create. External ID is used to determine if delete should be allowed.
1735
+ # @param body The information used to create a group.
1736
+ # @param [Hash] opts the optional parameters
1737
+ # @return [ScimV2Group]
1738
+ def post_scim_groups(body, opts = {})
1739
+ data, _status_code, _headers = post_scim_groups_with_http_info(body, opts)
1740
+ return data
1741
+ end
1742
+
1743
+ # The information used to create a group.
1744
+ # PureCloud group will be created as \&quot;Official\&quot; group with visibility set \&quot;Public\&quot;, and rules visibility True. Will auto-create an external ID if one is not provided on create. External ID is used to determine if delete should be allowed.
1745
+ # @param body The information used to create a group.
1746
+ # @param [Hash] opts the optional parameters
1747
+ # @return [Array<(ScimV2Group, Fixnum, Hash)>] ScimV2Group data, response status code and response headers
1748
+ def post_scim_groups_with_http_info(body, opts = {})
1749
+ if @api_client.config.debugging
1750
+ @api_client.config.logger.debug "Calling API: SCIMApi.post_scim_groups ..."
1751
+ end
1752
+
1753
+
1754
+ # verify the required parameter 'body' is set
1755
+ fail ArgumentError, "Missing the required parameter 'body' when calling SCIMApi.post_scim_groups" if body.nil?
1756
+
1757
+
1758
+
1759
+
1760
+
1761
+ # resource path
1762
+ local_var_path = "/api/v2/scim/groups".sub('{format}','json')
1763
+
1764
+ # query parameters
1765
+ query_params = {}
1766
+
1767
+ # header parameters
1768
+ header_params = {}
1769
+
1770
+ # HTTP header 'Accept' (if needed)
1771
+ local_header_accept = ['application/json', 'application/scim+json']
1772
+ local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result
1773
+
1774
+ # HTTP header 'Content-Type'
1775
+ local_header_content_type = ['application/json', 'application/scim+json']
1776
+ header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type)
1777
+
1778
+ # form parameters
1779
+ form_params = {}
1780
+
1781
+ # http body (model)
1782
+ post_body = @api_client.object_to_http_body(body)
1783
+
1784
+ auth_names = ['PureCloud OAuth']
1785
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
1786
+ :header_params => header_params,
1787
+ :query_params => query_params,
1788
+ :form_params => form_params,
1789
+ :body => post_body,
1790
+ :auth_names => auth_names,
1791
+ :return_type => 'ScimV2Group')
1792
+ if @api_client.config.debugging
1793
+ @api_client.config.logger.debug "API called: SCIMApi#post_scim_groups\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1794
+ end
1795
+ return data, status_code, headers
1796
+ end
1797
+
1587
1798
  # Create a user
1588
1799
  #
1589
1800
  # @param body The information used to create a user.
@@ -1649,6 +1860,71 @@ module PureCloud
1649
1860
  return data, status_code, headers
1650
1861
  end
1651
1862
 
1863
+ # The information used to create a group.
1864
+ # PureCloud group will be created as \"Official\" group with visibility set \"Public\", and rules visibility True. Will auto-create an external ID if one is not provided on create. External ID is used to determine if delete should be allowed.
1865
+ # @param body The information used to create a group.
1866
+ # @param [Hash] opts the optional parameters
1867
+ # @return [ScimV2Group]
1868
+ def post_scim_v2_groups(body, opts = {})
1869
+ data, _status_code, _headers = post_scim_v2_groups_with_http_info(body, opts)
1870
+ return data
1871
+ end
1872
+
1873
+ # The information used to create a group.
1874
+ # PureCloud group will be created as \&quot;Official\&quot; group with visibility set \&quot;Public\&quot;, and rules visibility True. Will auto-create an external ID if one is not provided on create. External ID is used to determine if delete should be allowed.
1875
+ # @param body The information used to create a group.
1876
+ # @param [Hash] opts the optional parameters
1877
+ # @return [Array<(ScimV2Group, Fixnum, Hash)>] ScimV2Group data, response status code and response headers
1878
+ def post_scim_v2_groups_with_http_info(body, opts = {})
1879
+ if @api_client.config.debugging
1880
+ @api_client.config.logger.debug "Calling API: SCIMApi.post_scim_v2_groups ..."
1881
+ end
1882
+
1883
+
1884
+ # verify the required parameter 'body' is set
1885
+ fail ArgumentError, "Missing the required parameter 'body' when calling SCIMApi.post_scim_v2_groups" if body.nil?
1886
+
1887
+
1888
+
1889
+
1890
+
1891
+ # resource path
1892
+ local_var_path = "/api/v2/scim/v2/groups".sub('{format}','json')
1893
+
1894
+ # query parameters
1895
+ query_params = {}
1896
+
1897
+ # header parameters
1898
+ header_params = {}
1899
+
1900
+ # HTTP header 'Accept' (if needed)
1901
+ local_header_accept = ['application/json', 'application/scim+json']
1902
+ local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result
1903
+
1904
+ # HTTP header 'Content-Type'
1905
+ local_header_content_type = ['application/json', 'application/scim+json']
1906
+ header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type)
1907
+
1908
+ # form parameters
1909
+ form_params = {}
1910
+
1911
+ # http body (model)
1912
+ post_body = @api_client.object_to_http_body(body)
1913
+
1914
+ auth_names = ['PureCloud OAuth']
1915
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
1916
+ :header_params => header_params,
1917
+ :query_params => query_params,
1918
+ :form_params => form_params,
1919
+ :body => post_body,
1920
+ :auth_names => auth_names,
1921
+ :return_type => 'ScimV2Group')
1922
+ if @api_client.config.debugging
1923
+ @api_client.config.logger.debug "API called: SCIMApi#post_scim_v2_groups\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1924
+ end
1925
+ return data, status_code, headers
1926
+ end
1927
+
1652
1928
  # Create a user
1653
1929
  #
1654
1930
  # @param body The information used to create a user.