--- title: GeolocationApi --- ## PureCloud::GeolocationApi All URIs are relative to *https://api.mypurecloud.com* Method | Description ------------- | ------------- | ------------- [**get_geolocations_settings**](GeolocationApi.html#get_geolocations_settings) | Get a organization's GeolocationSettings [**get_user_geolocation**](GeolocationApi.html#get_user_geolocation) | Get a user's Geolocation [**patch_geolocations_settings**](GeolocationApi.html#patch_geolocations_settings) | Patch a organization's GeolocationSettings [**patch_user_geolocation**](GeolocationApi.html#patch_user_geolocation) | Patch a user's Geolocation {: class="table table-striped"} ## -[**GeolocationSettings**](GeolocationSettings.html) get_geolocations_settings Get a organization's GeolocationSettings Wraps GET /api/v2/geolocations/settings Requires NO permissions: ### Example ~~~ruby # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::GeolocationApi.new begin #Get a organization's GeolocationSettings result = api_instance.get_geolocations_settings p result rescue PureCloud::ApiError => e puts "Exception when calling GeolocationApi->get_geolocations_settings: #{e}" end ~~~ ### Parameters This endpoint does not need any parameter. {: class="table table-striped"} ### Return type [**GeolocationSettings**](GeolocationSettings.html) ### HTTP request headers - **Content-Type**: application/json - **Accept**: application/json ## -[**Geolocation**](Geolocation.html) get_user_geolocation(user_id, client_id) Get a user's Geolocation Wraps GET /api/v2/users/{userId}/geolocations/{clientId} Requires NO permissions: ### Example ~~~ruby # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::GeolocationApi.new user_id = "user_id_example" # String | user Id client_id = "client_id_example" # String | client Id begin #Get a user's Geolocation result = api_instance.get_user_geolocation(user_id, client_id) p result rescue PureCloud::ApiError => e puts "Exception when calling GeolocationApi->get_user_geolocation: #{e}" end ~~~ ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **user_id** | **String**| user Id | | **client_id** | **String**| client Id | | {: class="table table-striped"} ### Return type [**Geolocation**](Geolocation.html) ### HTTP request headers - **Content-Type**: application/json - **Accept**: application/json ## -[**GeolocationSettings**](GeolocationSettings.html) patch_geolocations_settings(body) Patch a organization's GeolocationSettings Wraps PATCH /api/v2/geolocations/settings Requires ANY permissions: * telephony:plugin:all ### Example ~~~ruby # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::GeolocationApi.new body = PureCloud::GeolocationSettings.new # GeolocationSettings | Geolocation settings begin #Patch a organization's GeolocationSettings result = api_instance.patch_geolocations_settings(body) p result rescue PureCloud::ApiError => e puts "Exception when calling GeolocationApi->patch_geolocations_settings: #{e}" end ~~~ ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **body** | [**GeolocationSettings**](GeolocationSettings.html)| Geolocation settings | | {: class="table table-striped"} ### Return type [**GeolocationSettings**](GeolocationSettings.html) ### HTTP request headers - **Content-Type**: application/json - **Accept**: application/json ## -[**Geolocation**](Geolocation.html) patch_user_geolocation(user_id, client_id, body) 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. Wraps PATCH /api/v2/users/{userId}/geolocations/{clientId} Requires NO permissions: ### Example ~~~ruby # load the gem require 'purecloudplatformclientv2' # setup authorization @secret = ENV['PURECLOUD_SECRET'] @id = ENV['PURECLOUD_CLIENT_ID'] environment = "mypurecloud.com" @authToken = PureCloud.authenticate_with_client_credentials @id, @secret, environment PureCloud.configure do |config| config.access_token = @authToken end api_instance = PureCloud::GeolocationApi.new user_id = "user_id_example" # String | user Id client_id = "client_id_example" # String | client Id body = PureCloud::Geolocation.new # Geolocation | Geolocation begin #Patch a user's Geolocation result = api_instance.patch_user_geolocation(user_id, client_id, body) p result rescue PureCloud::ApiError => e puts "Exception when calling GeolocationApi->patch_user_geolocation: #{e}" end ~~~ ### Parameters Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **user_id** | **String**| user Id | | **client_id** | **String**| client Id | | **body** | [**Geolocation**](Geolocation.html)| Geolocation | | {: class="table table-striped"} ### Return type [**Geolocation**](Geolocation.html) ### HTTP request headers - **Content-Type**: application/json - **Accept**: application/json