require "uri" module PureCloud class GeolocationApi attr_accessor :api_client def initialize(api_client = ApiClient.default) @api_client = api_client end # Get a organization's GeolocationSettings # # @param [Hash] opts the optional parameters # @return [GeolocationSettings] def get_settings(opts = {}) data, status_code, headers = get_settings_with_http_info(opts) return data end # Get a organization's GeolocationSettings # # @param [Hash] opts the optional parameters # @return [Array<(GeolocationSettings, Fixnum, Hash)>] GeolocationSettings data, response status code and response headers def get_settings_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: GeolocationApi#get_settings ..." end # resource path path = "/api/v1/geolocations/settings".sub('{format}','json') # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) _header_accept = ['application/json'] _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result # HTTP header 'Content-Type' _header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(_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, path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'GeolocationSettings') if @api_client.config.debugging @api_client.config.logger.debug "API called: GeolocationApi#get_settings\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Patch a organization's GeolocationSettings # # @param [Hash] opts the optional parameters # @option opts [GeolocationSettings] :body # @return [GeolocationSettings] def patch_settings(opts = {}) data, status_code, headers = patch_settings_with_http_info(opts) return data end # Patch a organization's GeolocationSettings # # @param [Hash] opts the optional parameters # @option opts [GeolocationSettings] :body # @return [Array<(GeolocationSettings, Fixnum, Hash)>] GeolocationSettings data, response status code and response headers def patch_settings_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: GeolocationApi#patch_settings ..." end # resource path path = "/api/v1/geolocations/settings".sub('{format}','json') # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) _header_accept = ['application/json'] _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result # HTTP header 'Content-Type' _header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(_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(:PATCH, path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'GeolocationSettings') if @api_client.config.debugging @api_client.config.logger.debug "API called: GeolocationApi#patch_settings\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get a user's Geolocation # # @param user_id user Id # @param client_id client Id # @param [Hash] opts the optional parameters # @return [Geolocation] def get_user_id_geolocations_client_id(user_id, client_id, opts = {}) data, status_code, headers = get_user_id_geolocations_client_id_with_http_info(user_id, client_id, opts) return data end # Get a user's Geolocation # # @param user_id user Id # @param client_id client Id # @param [Hash] opts the optional parameters # @return [Array<(Geolocation, Fixnum, Hash)>] Geolocation data, response status code and response headers def get_user_id_geolocations_client_id_with_http_info(user_id, client_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: GeolocationApi#get_user_id_geolocations_client_id ..." end # verify the required parameter 'user_id' is set fail "Missing the required parameter 'user_id' when calling get_user_id_geolocations_client_id" if user_id.nil? # verify the required parameter 'client_id' is set fail "Missing the required parameter 'client_id' when calling get_user_id_geolocations_client_id" if client_id.nil? # resource path path = "/api/v1/users/{userId}/geolocations/{clientId}".sub('{format}','json').sub('{' + 'userId' + '}', user_id.to_s).sub('{' + 'clientId' + '}', client_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) _header_accept = ['application/json'] _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result # HTTP header 'Content-Type' _header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(_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, path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'Geolocation') if @api_client.config.debugging @api_client.config.logger.debug "API called: GeolocationApi#get_user_id_geolocations_client_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Patch a user's Geolocation # The geolocation object can be patched one of three ways. Option 1: Set the 'primary' property to true. This will set the client as the user's primary geolocation source. Option 2: Provide the 'latitude' and 'longitude' values. This will enqueue an asynchronous update of the 'city', 'region', and 'country', generating a notification. A subsequent GET operation will include the new values for 'city', 'region' and 'country'. Option 3: Provide the 'city', 'region', 'country' values. Option 1 can be combined with Option 2 or Option 3. For example, update the client as primary and provide latitude and longitude values. # @param user_id user Id # @param client_id client Id # @param [Hash] opts the optional parameters # @option opts [Geolocation] :body # @return [Geolocation] def patch_user_id_geolocations_client_id(user_id, client_id, opts = {}) data, status_code, headers = patch_user_id_geolocations_client_id_with_http_info(user_id, client_id, opts) return data end # Patch a user's Geolocation # The geolocation object can be patched one of three ways. Option 1: Set the 'primary' property to true. This will set the client as the user's primary geolocation source. Option 2: Provide the 'latitude' and 'longitude' values. This will enqueue an asynchronous update of the 'city', 'region', and 'country', generating a notification. A subsequent GET operation will include the new values for 'city', 'region' and 'country'. Option 3: Provide the 'city', 'region', 'country' values. Option 1 can be combined with Option 2 or Option 3. For example, update the client as primary and provide latitude and longitude values. # @param user_id user Id # @param client_id client Id # @param [Hash] opts the optional parameters # @option opts [Geolocation] :body # @return [Array<(Geolocation, Fixnum, Hash)>] Geolocation data, response status code and response headers def patch_user_id_geolocations_client_id_with_http_info(user_id, client_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: GeolocationApi#patch_user_id_geolocations_client_id ..." end # verify the required parameter 'user_id' is set fail "Missing the required parameter 'user_id' when calling patch_user_id_geolocations_client_id" if user_id.nil? # verify the required parameter 'client_id' is set fail "Missing the required parameter 'client_id' when calling patch_user_id_geolocations_client_id" if client_id.nil? # resource path path = "/api/v1/users/{userId}/geolocations/{clientId}".sub('{format}','json').sub('{' + 'userId' + '}', user_id.to_s).sub('{' + 'clientId' + '}', client_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) _header_accept = ['application/json'] _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result # HTTP header 'Content-Type' _header_content_type = ['application/json'] header_params['Content-Type'] = @api_client.select_header_content_type(_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(:PATCH, path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'Geolocation') if @api_client.config.debugging @api_client.config.logger.debug "API called: GeolocationApi#patch_user_id_geolocations_client_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end end end