=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 LocationsApi attr_accessor :api_client def initialize(api_client = ApiClient.default) @api_client = api_client end # Get Location by ID. # # @param location_id Location ID # @param [Hash] opts the optional parameters # @return [LocationDefinition] def get_location(location_id, opts = {}) data, _status_code, _headers = get_location_with_http_info(location_id, opts) return data end # Get Location by ID. # # @param location_id Location ID # @param [Hash] opts the optional parameters # @return [Array<(LocationDefinition, Fixnum, Hash)>] LocationDefinition data, response status code and response headers def get_location_with_http_info(location_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: LocationsApi.get_location ..." end # verify the required parameter 'location_id' is set fail ArgumentError, "Missing the required parameter 'location_id' when calling LocationsApi.get_location" if location_id.nil? # resource path local_var_path = "/api/v2/locations/{locationId}".sub('{format}','json').sub('{' + 'locationId' + '}', location_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 => 'LocationDefinition') if @api_client.config.debugging @api_client.config.logger.debug "API called: LocationsApi#get_location\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Get a list of all locations. # # @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 Sort order # @return [Array] def get_locations(opts = {}) data, _status_code, _headers = get_locations_with_http_info(opts) return data end # Get a list of all locations. # # @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 Sort order # @return [Array<(Array, Fixnum, Hash)>] Array data, response status code and response headers def get_locations_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: LocationsApi.get_locations ..." end if opts[:'sort_order'] && !['asc', 'desc'].include?(opts[:'sort_order']) fail ArgumentError, 'invalid value for "sort_order", must be one of asc, desc' end # resource path local_var_path = "/api/v2/locations".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[:'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 => 'Array') if @api_client.config.debugging @api_client.config.logger.debug "API called: LocationsApi#get_locations\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Search locations using the q64 value returned from a previous search # # @param q64 q64 # @param [Hash] opts the optional parameters # @option opts [Array] :expand expand # @return [LocationsSearchResponse] def get_locations_search(q64, opts = {}) data, _status_code, _headers = get_locations_search_with_http_info(q64, opts) return data end # Search locations 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<(LocationsSearchResponse, Fixnum, Hash)>] LocationsSearchResponse data, response status code and response headers def get_locations_search_with_http_info(q64, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: LocationsApi.get_locations_search ..." end # verify the required parameter 'q64' is set fail ArgumentError, "Missing the required parameter 'q64' when calling LocationsApi.get_locations_search" if q64.nil? # resource path local_var_path = "/api/v2/locations/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 => 'LocationsSearchResponse') if @api_client.config.debugging @api_client.config.logger.debug "API called: LocationsApi#get_locations_search\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end # Search locations # # @param body Search request options # @param [Hash] opts the optional parameters # @return [LocationsSearchResponse] def post_locations_search(body, opts = {}) data, _status_code, _headers = post_locations_search_with_http_info(body, opts) return data end # Search locations # # @param body Search request options # @param [Hash] opts the optional parameters # @return [Array<(LocationsSearchResponse, Fixnum, Hash)>] LocationsSearchResponse data, response status code and response headers def post_locations_search_with_http_info(body, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: LocationsApi.post_locations_search ..." end # verify the required parameter 'body' is set fail ArgumentError, "Missing the required parameter 'body' when calling LocationsApi.post_locations_search" if body.nil? # resource path local_var_path = "/api/v2/locations/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 => 'LocationsSearchResponse') if @api_client.config.debugging @api_client.config.logger.debug "API called: LocationsApi#post_locations_search\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end end end