=begin PureCloud Platform API 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. OpenAPI spec version: v2 Contact: DeveloperEvangelists@genesys.com Generated by: https://github.com/swagger-api/swagger-codegen.git License: ININ http://www.inin.com Terms of Service: https://developer.mypurecloud.com/tos =end require "uri" module PureCloud class GroupsApi attr_accessor :api_client def initialize(api_client = ApiClient.default) @api_client = api_client end # Delete group # # @param group_id Group ID # @param [Hash] opts the optional parameters # @return [nil] def delete_group(group_id, opts = {}) delete_group_with_http_info(group_id, opts) return nil end # Delete group # # @param group_id Group ID # @param [Hash] opts the optional parameters # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers def delete_group_with_http_info(group_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: GroupsApi.delete_group ..." end # verify the required parameter 'group_id' is set fail ArgumentError, "Missing the required parameter 'group_id' when calling GroupsApi.delete_group" if group_id.nil? # resource path local_var_path = "/api/v2/groups/{groupId}".sub('{format}','json').sub('{' + 'groupId' + '}', group_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud Auth'] data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names) if @api_client.config.debugging @api_client.config.logger.debug "API called: GroupsApi#delete_group\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Remove members # # @param group_id Group ID # @param ids Comma separated list of userIds to remove # @param [Hash] opts the optional parameters # @return [Empty] def delete_group_members(group_id, ids, opts = {}) data, _status_code, _headers = delete_group_members_with_http_info(group_id, ids, opts) return data end # Remove members # # @param group_id Group ID # @param ids Comma separated list of userIds to remove # @param [Hash] opts the optional parameters # @return [Array<(Empty, Fixnum, Hash)>] Empty data, response status code and response headers def delete_group_members_with_http_info(group_id, ids, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: GroupsApi.delete_group_members ..." end # verify the required parameter 'group_id' is set fail ArgumentError, "Missing the required parameter 'group_id' when calling GroupsApi.delete_group_members" if group_id.nil? # verify the required parameter 'ids' is set fail ArgumentError, "Missing the required parameter 'ids' when calling GroupsApi.delete_group_members" if ids.nil? # resource path local_var_path = "/api/v2/groups/{groupId}/members".sub('{format}','json').sub('{' + 'groupId' + '}', group_id.to_s) # query parameters query_params = {} query_params[:'ids'] = ids # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud Auth'] data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'Empty') if @api_client.config.debugging @api_client.config.logger.debug "API called: GroupsApi#delete_group_members\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Fetch field config for an entity type # # @param type Field type # @param [Hash] opts the optional parameters # @return [FieldConfig] def get_fieldconfig(type, opts = {}) data, _status_code, _headers = get_fieldconfig_with_http_info(type, opts) return data end # Fetch field config for an entity type # # @param type Field type # @param [Hash] opts the optional parameters # @return [Array<(FieldConfig, Fixnum, Hash)>] FieldConfig data, response status code and response headers def get_fieldconfig_with_http_info(type, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: GroupsApi.get_fieldconfig ..." end # verify the required parameter 'type' is set fail ArgumentError, "Missing the required parameter 'type' when calling GroupsApi.get_fieldconfig" if type.nil? # verify enum value unless ['person', 'group', 'org', 'externalContact'].include?(type) fail ArgumentError, "invalid value for 'type', must be one of person, group, org, externalContact" end # resource path local_var_path = "/api/v2/fieldconfig".sub('{format}','json') # query parameters query_params = {} query_params[:'type'] = type # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud Auth'] data, status_code, headers = @api_client.call_api(:GET, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'FieldConfig') if @api_client.config.debugging @api_client.config.logger.debug "API called: GroupsApi#get_fieldconfig\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get group # # @param group_id Group ID # @param [Hash] opts the optional parameters # @return [Group] def get_group(group_id, opts = {}) data, _status_code, _headers = get_group_with_http_info(group_id, opts) return data end # Get group # # @param group_id Group ID # @param [Hash] opts the optional parameters # @return [Array<(Group, Fixnum, Hash)>] Group data, response status code and response headers def get_group_with_http_info(group_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: GroupsApi.get_group ..." end # verify the required parameter 'group_id' is set fail ArgumentError, "Missing the required parameter 'group_id' when calling GroupsApi.get_group" if group_id.nil? # resource path local_var_path = "/api/v2/groups/{groupId}".sub('{format}','json').sub('{' + 'groupId' + '}', group_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud Auth'] data, status_code, headers = @api_client.call_api(:GET, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'Group') if @api_client.config.debugging @api_client.config.logger.debug "API called: GroupsApi#get_group\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get all individuals associated with the group # # @param group_id Group ID # @param [Hash] opts the optional parameters # @return [UserEntityListing] def get_group_individuals(group_id, opts = {}) data, _status_code, _headers = get_group_individuals_with_http_info(group_id, opts) return data end # Get all individuals associated with the group # # @param group_id Group ID # @param [Hash] opts the optional parameters # @return [Array<(UserEntityListing, Fixnum, Hash)>] UserEntityListing data, response status code and response headers def get_group_individuals_with_http_info(group_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: GroupsApi.get_group_individuals ..." end # verify the required parameter 'group_id' is set fail ArgumentError, "Missing the required parameter 'group_id' when calling GroupsApi.get_group_individuals" if group_id.nil? # resource path local_var_path = "/api/v2/groups/{groupId}/individuals".sub('{format}','json').sub('{' + 'groupId' + '}', group_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud Auth'] data, status_code, headers = @api_client.call_api(:GET, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'UserEntityListing') if @api_client.config.debugging @api_client.config.logger.debug "API called: GroupsApi#get_group_individuals\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get group members, includes individuals, owners, and dynamically included people # # @param group_id Group ID # @param [Hash] opts the optional parameters # @option opts [Integer] :page_size Page size (default to 25) # @option opts [Integer] :page_number Page number (default to 1) # @option opts [String] :sort_order Ascending or descending sort order (default to ASC) # @option opts [Array] :expand Which fields, if any, to expand # @return [UserEntityListing] def get_group_members(group_id, opts = {}) data, _status_code, _headers = get_group_members_with_http_info(group_id, opts) return data end # Get group members, includes individuals, owners, and dynamically included people # # @param group_id Group ID # @param [Hash] opts the optional parameters # @option opts [Integer] :page_size Page size # @option opts [Integer] :page_number Page number # @option opts [String] :sort_order Ascending or descending sort order # @option opts [Array] :expand Which fields, if any, to expand # @return [Array<(UserEntityListing, Fixnum, Hash)>] UserEntityListing data, response status code and response headers def get_group_members_with_http_info(group_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: GroupsApi.get_group_members ..." end # verify the required parameter 'group_id' is set fail ArgumentError, "Missing the required parameter 'group_id' when calling GroupsApi.get_group_members" if group_id.nil? if opts[:'sort_order'] && !['ascending', 'descending'].include?(opts[:'sort_order']) fail ArgumentError, 'invalid value for "sort_order", must be one of ascending, descending' end # resource path local_var_path = "/api/v2/groups/{groupId}/members".sub('{format}','json').sub('{' + 'groupId' + '}', group_id.to_s) # query parameters query_params = {} query_params[:'pageSize'] = opts[:'page_size'] if opts[:'page_size'] query_params[:'pageNumber'] = opts[:'page_number'] if opts[:'page_number'] query_params[:'sortOrder'] = opts[:'sort_order'] if opts[:'sort_order'] query_params[:'expand'] = @api_client.build_collection_param(opts[:'expand'], :multi) if opts[:'expand'] # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud Auth'] data, status_code, headers = @api_client.call_api(:GET, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'UserEntityListing') if @api_client.config.debugging @api_client.config.logger.debug "API called: GroupsApi#get_group_members\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get group profile # # @param group_id groupId # @param [Hash] opts the optional parameters # @option opts [String] :fields Comma separated fields to return. Allowable values can be found by querying /api/v2/fieldconfig?type=group and using the key for the elements returned by the fieldList # @return [GroupProfile] def get_group_profile(group_id, opts = {}) data, _status_code, _headers = get_group_profile_with_http_info(group_id, opts) return data end # Get group profile # # @param group_id groupId # @param [Hash] opts the optional parameters # @option opts [String] :fields Comma separated fields to return. Allowable values can be found by querying /api/v2/fieldconfig?type=group and using the key for the elements returned by the fieldList # @return [Array<(GroupProfile, Fixnum, Hash)>] GroupProfile data, response status code and response headers def get_group_profile_with_http_info(group_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: GroupsApi.get_group_profile ..." end # verify the required parameter 'group_id' is set fail ArgumentError, "Missing the required parameter 'group_id' when calling GroupsApi.get_group_profile" if group_id.nil? # resource path local_var_path = "/api/v2/groups/{groupId}/profile".sub('{format}','json').sub('{' + 'groupId' + '}', group_id.to_s) # query parameters query_params = {} query_params[:'fields'] = opts[:'fields'] if opts[:'fields'] # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud Auth'] data, status_code, headers = @api_client.call_api(:GET, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'GroupProfile') if @api_client.config.debugging @api_client.config.logger.debug "API called: GroupsApi#get_group_profile\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get a group list # # @param [Hash] opts the optional parameters # @option opts [Integer] :page_size Page size (default to 25) # @option opts [Integer] :page_number Page number (default to 1) # @option opts [Array] :id id # @option opts [String] :sort_order Ascending or descending sort order (default to ASC) # @return [GroupEntityListing] def get_groups(opts = {}) data, _status_code, _headers = get_groups_with_http_info(opts) return data end # Get a group list # # @param [Hash] opts the optional parameters # @option opts [Integer] :page_size Page size # @option opts [Integer] :page_number Page number # @option opts [Array] :id id # @option opts [String] :sort_order Ascending or descending sort order # @return [Array<(GroupEntityListing, Fixnum, Hash)>] GroupEntityListing data, response status code and response headers def get_groups_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: GroupsApi.get_groups ..." end if opts[:'sort_order'] && !['ascending', 'descending'].include?(opts[:'sort_order']) fail ArgumentError, 'invalid value for "sort_order", must be one of ascending, descending' end # resource path local_var_path = "/api/v2/groups".sub('{format}','json') # query parameters query_params = {} query_params[:'pageSize'] = opts[:'page_size'] if opts[:'page_size'] query_params[:'pageNumber'] = opts[:'page_number'] if opts[:'page_number'] query_params[:'id'] = @api_client.build_collection_param(opts[:'id'], :multi) if opts[:'id'] query_params[:'sortOrder'] = opts[:'sort_order'] if opts[:'sort_order'] # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud Auth'] data, status_code, headers = @api_client.call_api(:GET, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'GroupEntityListing') if @api_client.config.debugging @api_client.config.logger.debug "API called: GroupsApi#get_groups\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Search groups using the q64 value returned from a previous search # # @param q64 q64 # @param [Hash] opts the optional parameters # @option opts [Array] :expand expand # @return [GroupsSearchResponse] def get_groups_search(q64, opts = {}) data, _status_code, _headers = get_groups_search_with_http_info(q64, opts) return data end # Search groups using the q64 value returned from a previous search # # @param q64 q64 # @param [Hash] opts the optional parameters # @option opts [Array] :expand expand # @return [Array<(GroupsSearchResponse, Fixnum, Hash)>] GroupsSearchResponse data, response status code and response headers def get_groups_search_with_http_info(q64, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: GroupsApi.get_groups_search ..." end # verify the required parameter 'q64' is set fail ArgumentError, "Missing the required parameter 'q64' when calling GroupsApi.get_groups_search" if q64.nil? # resource path local_var_path = "/api/v2/groups/search".sub('{format}','json') # query parameters query_params = {} query_params[:'q64'] = q64 query_params[:'expand'] = @api_client.build_collection_param(opts[:'expand'], :multi) if opts[:'expand'] # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud Auth'] data, status_code, headers = @api_client.call_api(:GET, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'GroupsSearchResponse') if @api_client.config.debugging @api_client.config.logger.debug "API called: GroupsApi#get_groups_search\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get group profile listing # # @param [Hash] opts the optional parameters # @option opts [Integer] :page_size Page size (default to 25) # @option opts [Integer] :page_number Page number (default to 1) # @option opts [Array] :id id # @option opts [String] :sort_order Ascending or descending sort order (default to ASC) # @return [GroupProfileEntityListing] def get_profiles_groups(opts = {}) data, _status_code, _headers = get_profiles_groups_with_http_info(opts) return data end # Get group profile listing # # @param [Hash] opts the optional parameters # @option opts [Integer] :page_size Page size # @option opts [Integer] :page_number Page number # @option opts [Array] :id id # @option opts [String] :sort_order Ascending or descending sort order # @return [Array<(GroupProfileEntityListing, Fixnum, Hash)>] GroupProfileEntityListing data, response status code and response headers def get_profiles_groups_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: GroupsApi.get_profiles_groups ..." end if opts[:'sort_order'] && !['ascending', 'descending'].include?(opts[:'sort_order']) fail ArgumentError, 'invalid value for "sort_order", must be one of ascending, descending' end # resource path local_var_path = "/api/v2/profiles/groups".sub('{format}','json') # query parameters query_params = {} query_params[:'pageSize'] = opts[:'page_size'] if opts[:'page_size'] query_params[:'pageNumber'] = opts[:'page_number'] if opts[:'page_number'] query_params[:'id'] = @api_client.build_collection_param(opts[:'id'], :multi) if opts[:'id'] query_params[:'sortOrder'] = opts[:'sort_order'] if opts[:'sort_order'] # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['PureCloud Auth'] data, status_code, headers = @api_client.call_api(:GET, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'GroupProfileEntityListing') if @api_client.config.debugging @api_client.config.logger.debug "API called: GroupsApi#get_profiles_groups\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Add members # # @param group_id Group ID # @param body Add members # @param [Hash] opts the optional parameters # @return [Empty] def post_group_members(group_id, body, opts = {}) data, _status_code, _headers = post_group_members_with_http_info(group_id, body, opts) return data end # Add members # # @param group_id Group ID # @param body Add members # @param [Hash] opts the optional parameters # @return [Array<(Empty, Fixnum, Hash)>] Empty data, response status code and response headers def post_group_members_with_http_info(group_id, body, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: GroupsApi.post_group_members ..." end # verify the required parameter 'group_id' is set fail ArgumentError, "Missing the required parameter 'group_id' when calling GroupsApi.post_group_members" if group_id.nil? # verify the required parameter 'body' is set fail ArgumentError, "Missing the required parameter 'body' when calling GroupsApi.post_group_members" if body.nil? # resource path local_var_path = "/api/v2/groups/{groupId}/members".sub('{format}','json').sub('{' + 'groupId' + '}', group_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = @api_client.object_to_http_body(body) auth_names = ['PureCloud Auth'] data, status_code, headers = @api_client.call_api(:POST, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'Empty') if @api_client.config.debugging @api_client.config.logger.debug "API called: GroupsApi#post_group_members\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Create a group # # @param body Group # @param [Hash] opts the optional parameters # @return [Group] def post_groups(body, opts = {}) data, _status_code, _headers = post_groups_with_http_info(body, opts) return data end # Create a group # # @param body Group # @param [Hash] opts the optional parameters # @return [Array<(Group, Fixnum, Hash)>] Group data, response status code and response headers def post_groups_with_http_info(body, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: GroupsApi.post_groups ..." end # verify the required parameter 'body' is set fail ArgumentError, "Missing the required parameter 'body' when calling GroupsApi.post_groups" if body.nil? # resource path local_var_path = "/api/v2/groups".sub('{format}','json') # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = @api_client.object_to_http_body(body) auth_names = ['PureCloud Auth'] data, status_code, headers = @api_client.call_api(:POST, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'Group') if @api_client.config.debugging @api_client.config.logger.debug "API called: GroupsApi#post_groups\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Search groups # # @param body Search request options # @param [Hash] opts the optional parameters # @return [GroupsSearchResponse] def post_groups_search(body, opts = {}) data, _status_code, _headers = post_groups_search_with_http_info(body, opts) return data end # Search groups # # @param body Search request options # @param [Hash] opts the optional parameters # @return [Array<(GroupsSearchResponse, Fixnum, Hash)>] GroupsSearchResponse data, response status code and response headers def post_groups_search_with_http_info(body, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: GroupsApi.post_groups_search ..." end # verify the required parameter 'body' is set fail ArgumentError, "Missing the required parameter 'body' when calling GroupsApi.post_groups_search" if body.nil? # resource path local_var_path = "/api/v2/groups/search".sub('{format}','json') # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = @api_client.object_to_http_body(body) auth_names = ['PureCloud Auth'] data, status_code, headers = @api_client.call_api(:POST, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'GroupsSearchResponse') if @api_client.config.debugging @api_client.config.logger.debug "API called: GroupsApi#post_groups_search\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Update group # # @param group_id Group ID # @param [Hash] opts the optional parameters # @option opts [GroupUpdate] :body Group # @return [Group] def put_group(group_id, opts = {}) data, _status_code, _headers = put_group_with_http_info(group_id, opts) return data end # Update group # # @param group_id Group ID # @param [Hash] opts the optional parameters # @option opts [GroupUpdate] :body Group # @return [Array<(Group, Fixnum, Hash)>] Group data, response status code and response headers def put_group_with_http_info(group_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: GroupsApi.put_group ..." end # verify the required parameter 'group_id' is set fail ArgumentError, "Missing the required parameter 'group_id' when calling GroupsApi.put_group" if group_id.nil? # resource path local_var_path = "/api/v2/groups/{groupId}".sub('{format}','json').sub('{' + 'groupId' + '}', group_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) local_header_accept = ['application/json'] local_header_accept_result = @api_client.select_header_accept(local_header_accept) and header_params['Accept'] = local_header_accept_result # HTTP header 'Content-Type' local_header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(local_header_content_type) # form parameters form_params = {} # http body (model) post_body = @api_client.object_to_http_body(opts[:'body']) auth_names = ['PureCloud Auth'] data, status_code, headers = @api_client.call_api(:PUT, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'Group') if @api_client.config.debugging @api_client.config.logger.debug "API called: GroupsApi#put_group\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end end end