# Copyright 2015 Google Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. require 'google/apis/core/base_service' require 'google/apis/core/json_representation' require 'google/apis/core/hashable' require 'google/apis/errors' module Google module Apis module ProximitybeaconV1beta1 # Google Proximity Beacon API # # Registers, manages, indexes, and searches beacons. # # @example # require 'google/apis/proximitybeacon_v1beta1' # # Proximitybeacon = Google::Apis::ProximitybeaconV1beta1 # Alias the module # service = Proximitybeacon::ProximitybeaconService.new # # @see https://developers.google.com/beacons/proximity/ class ProximitybeaconService < Google::Apis::Core::BaseService # @return [String] # API key. Your API key identifies your project and provides you with API access, # quota, and reports. Required unless you provide an OAuth 2.0 token. attr_accessor :key # @return [String] # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. attr_accessor :quota_user def initialize super('https://proximitybeacon.googleapis.com/', '') end # Registers a previously unregistered beacon given its `advertisedId`. These IDs # are unique within the system. An ID can be registered only once. Authenticate # using an [OAuth access token](https://developers.google.com/identity/protocols/ # OAuth2) from a signed-in user with **Is owner** or **Can edit** permissions in # the Google Developers Console project. # @param [Google::Apis::ProximitybeaconV1beta1::Beacon] beacon_object # @param [String] project_id # The project id of the project the beacon will be registered to. If the project # id is not specified then the project making the request is used. Optional. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::ProximitybeaconV1beta1::Beacon] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::ProximitybeaconV1beta1::Beacon] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def register_beacon(beacon_object = nil, project_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'v1beta1/beacons:register', options) command.request_representation = Google::Apis::ProximitybeaconV1beta1::Beacon::Representation command.request_object = beacon_object command.response_representation = Google::Apis::ProximitybeaconV1beta1::Beacon::Representation command.response_class = Google::Apis::ProximitybeaconV1beta1::Beacon command.query['projectId'] = project_id unless project_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Decommissions the specified beacon in the service. This beacon will no longer # be returned from `beaconinfo.getforobserved`. This operation is permanent -- # you will not be able to re-register a beacon with this ID again. Authenticate # using an [OAuth access token](https://developers.google.com/identity/protocols/ # OAuth2) from a signed-in user with **Is owner** or **Can edit** permissions in # the Google Developers Console project. # @param [String] beacon_name # Beacon that should be decommissioned. A beacon name has the format "beacons/N! # beaconId" where the beaconId is the base16 ID broadcast by the beacon and N is # a code for the beacon's type. Possible values are `3` for Eddystone-UID, `4` # for Eddystone-EID, `1` for iBeacon, or `5` for AltBeacon. For Eddystone-EID # beacons, you may use either the current EID of the beacon's "stable" UID. # Required. # @param [String] project_id # The project id of the beacon to decommission. If the project id is not # specified then the project making the request is used. The project id must # match the project that owns the beacon. Optional. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::ProximitybeaconV1beta1::Empty] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::ProximitybeaconV1beta1::Empty] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def decommission_beacon(beacon_name, project_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'v1beta1/{+beaconName}:decommission', options) command.response_representation = Google::Apis::ProximitybeaconV1beta1::Empty::Representation command.response_class = Google::Apis::ProximitybeaconV1beta1::Empty command.params['beaconName'] = beacon_name unless beacon_name.nil? command.query['projectId'] = project_id unless project_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Returns detailed information about the specified beacon. Authenticate using an # [OAuth access token](https://developers.google.com/identity/protocols/OAuth2) # from a signed-in user with **viewer**, **Is owner** or **Can edit** # permissions in the Google Developers Console project. Requests may supply an # Eddystone-EID beacon name in the form: `beacons/4!beaconId` where the ` # beaconId` is the base16 ephemeral ID broadcast by the beacon. The returned ` # Beacon` object will contain the beacon's stable Eddystone-UID. Clients not # authorized to resolve the beacon's ephemeral Eddystone-EID broadcast will # receive an error. # @param [String] beacon_name # Resource name of this beacon. A beacon name has the format "beacons/N!beaconId" # where the beaconId is the base16 ID broadcast by the beacon and N is a code # for the beacon's type. Possible values are `3` for Eddystone-UID, `4` for # Eddystone-EID, `1` for iBeacon, or `5` for AltBeacon. For Eddystone-EID # beacons, you may use either the current EID or the beacon's "stable" UID. # Required. # @param [String] project_id # The project id of the beacon to request. If the project id is not specified # then the project making the request is used. The project id must match the # project that owns the beacon. Optional. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::ProximitybeaconV1beta1::Beacon] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::ProximitybeaconV1beta1::Beacon] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def get_beacon(beacon_name, project_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'v1beta1/{+beaconName}', options) command.response_representation = Google::Apis::ProximitybeaconV1beta1::Beacon::Representation command.response_class = Google::Apis::ProximitybeaconV1beta1::Beacon command.params['beaconName'] = beacon_name unless beacon_name.nil? command.query['projectId'] = project_id unless project_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Searches the beacon registry for beacons that match the given search criteria. # Only those beacons that the client has permission to list will be returned. # Authenticate using an [OAuth access token](https://developers.google.com/ # identity/protocols/OAuth2) from a signed-in user with **viewer**, **Is owner** # or **Can edit** permissions in the Google Developers Console project. # @param [String] q # Filter query string that supports the following field filters: * `description:" # "` For example: `description:"Room 3"` Returns beacons whose description # matches tokens in the string "Room 3" (not necessarily that exact string). The # string must be double-quoted. * `status:` For example: `status:active` Returns # beacons whose status matches the given value. Values must be one of the Beacon. # Status enum values (case insensitive). Accepts multiple filters which will be # combined with OR logic. * `stability:` For example: `stability:mobile` Returns # beacons whose expected stability matches the given value. Values must be one # of the Beacon.Stability enum values (case insensitive). Accepts multiple # filters which will be combined with OR logic. * `place_id:""` For example: ` # place_id:"ChIJVSZzVR8FdkgRXGmmm6SslKw="` Returns beacons explicitly registered # at the given place, expressed as a Place ID obtained from [Google Places API](/ # places/place-id). Does not match places inside the given place. Does not # consider the beacon's actual location (which may be different from its # registered place). Accepts multiple filters that will be combined with OR # logic. The place ID must be double-quoted. * `registration_time[|=]` For # example: `registration_time>=1433116800` Returns beacons whose registration # time matches the given filter. Supports the operators: , =. Timestamp must be # expressed as an integer number of seconds since midnight January 1, 1970 UTC. # Accepts at most two filters that will be combined with AND logic, to support " # between" semantics. If more than two are supplied, the latter ones are ignored. # * `lat: lng: radius:` For example: `lat:51.1232343 lng:-1.093852 radius:1000` # Returns beacons whose registered location is within the given circle. When any # of these fields are given, all are required. Latitude and longitude must be # decimal degrees between -90.0 and 90.0 and between -180.0 and 180.0 # respectively. Radius must be an integer number of meters between 10 and 1,000, # 000 (1000 km). * `property:"="` For example: `property:"battery-type=CR2032"` # Returns beacons which have a property of the given name and value. Supports # multiple filters which will be combined with OR logic. The entire name=value # string must be double-quoted as one string. * `attachment_type:""` For example: # `attachment_type:"my-namespace/my-type"` Returns beacons having at least one # attachment of the given namespaced type. Supports "any within this namespace" # via the partial wildcard syntax: "my-namespace/*". Supports multiple filters # which will be combined with OR logic. The string must be double-quoted. # Multiple filters on the same field are combined with OR logic (except # registration_time which is combined with AND logic). Multiple filters on # different fields are combined with AND logic. Filters should be separated by # spaces. As with any HTTP query string parameter, the whole filter expression # must be URL-encoded. Example REST request: `GET /v1beta1/beacons?q=status: # active%20lat:51.123%20lng:-1.095%20radius:1000` # @param [String] page_token # A pagination token obtained from a previous request to list beacons. # @param [Fixnum] page_size # The maximum number of records to return for this request, up to a server- # defined upper limit. # @param [String] project_id # The project id to list beacons under. If not present then the project # credential that made the request is used as the project. Optional. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::ProximitybeaconV1beta1::ListBeaconsResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::ProximitybeaconV1beta1::ListBeaconsResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_beacons(q: nil, page_token: nil, page_size: nil, project_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'v1beta1/beacons', options) command.response_representation = Google::Apis::ProximitybeaconV1beta1::ListBeaconsResponse::Representation command.response_class = Google::Apis::ProximitybeaconV1beta1::ListBeaconsResponse command.query['q'] = q unless q.nil? command.query['pageToken'] = page_token unless page_token.nil? command.query['pageSize'] = page_size unless page_size.nil? command.query['projectId'] = project_id unless project_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Updates the information about the specified beacon. **Any field that you do # not populate in the submitted beacon will be permanently erased**, so you # should follow the "read, modify, write" pattern to avoid inadvertently # destroying data. Changes to the beacon status via this method will be silently # ignored. To update beacon status, use the separate methods on this API for # activation, deactivation, and decommissioning. Authenticate using an [OAuth # access token](https://developers.google.com/identity/protocols/OAuth2) from a # signed-in user with **Is owner** or **Can edit** permissions in the Google # Developers Console project. # @param [String] beacon_name # Resource name of this beacon. A beacon name has the format "beacons/N!beaconId" # where the beaconId is the base16 ID broadcast by the beacon and N is a code # for the beacon's type. Possible values are `3` for Eddystone, `1` for iBeacon, # or `5` for AltBeacon. This field must be left empty when registering. After # reading a beacon, clients can use the name for future operations. # @param [Google::Apis::ProximitybeaconV1beta1::Beacon] beacon_object # @param [String] project_id # The project id of the beacon to update. If the project id is not specified # then the project making the request is used. The project id must match the # project that owns the beacon. Optional. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::ProximitybeaconV1beta1::Beacon] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::ProximitybeaconV1beta1::Beacon] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def update_beacon(beacon_name, beacon_object = nil, project_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:put, 'v1beta1/{+beaconName}', options) command.request_representation = Google::Apis::ProximitybeaconV1beta1::Beacon::Representation command.request_object = beacon_object command.response_representation = Google::Apis::ProximitybeaconV1beta1::Beacon::Representation command.response_class = Google::Apis::ProximitybeaconV1beta1::Beacon command.params['beaconName'] = beacon_name unless beacon_name.nil? command.query['projectId'] = project_id unless project_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Activates a beacon. A beacon that is active will return information and # attachment data when queried via `beaconinfo.getforobserved`. Calling this # method on an already active beacon will do nothing (but will return a # successful response code). Authenticate using an [OAuth access token](https:// # developers.google.com/identity/protocols/OAuth2) from a signed-in user with ** # Is owner** or **Can edit** permissions in the Google Developers Console # project. # @param [String] beacon_name # Beacon that should be activated. A beacon name has the format "beacons/N! # beaconId" where the beaconId is the base16 ID broadcast by the beacon and N is # a code for the beacon's type. Possible values are `3` for Eddystone-UID, `4` # for Eddystone-EID, `1` for iBeacon, or `5` for AltBeacon. For Eddystone-EID # beacons, you may use either the current EID or the beacon's "stable" UID. # Required. # @param [String] project_id # The project id of the beacon to activate. If the project id is not specified # then the project making the request is used. The project id must match the # project that owns the beacon. Optional. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::ProximitybeaconV1beta1::Empty] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::ProximitybeaconV1beta1::Empty] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def activate_beacon(beacon_name, project_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'v1beta1/{+beaconName}:activate', options) command.response_representation = Google::Apis::ProximitybeaconV1beta1::Empty::Representation command.response_class = Google::Apis::ProximitybeaconV1beta1::Empty command.params['beaconName'] = beacon_name unless beacon_name.nil? command.query['projectId'] = project_id unless project_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Deactivates a beacon. Once deactivated, the API will not return information # nor attachment data for the beacon when queried via `beaconinfo.getforobserved` # . Calling this method on an already inactive beacon will do nothing (but will # return a successful response code). Authenticate using an [OAuth access token]( # https://developers.google.com/identity/protocols/OAuth2) from a signed-in user # with **Is owner** or **Can edit** permissions in the Google Developers Console # project. # @param [String] beacon_name # Beacon that should be deactivated. A beacon name has the format "beacons/N! # beaconId" where the beaconId is the base16 ID broadcast by the beacon and N is # a code for the beacon's type. Possible values are `3` for Eddystone-UID, `4` # for Eddystone-EID, `1` for iBeacon, or `5` for AltBeacon. For Eddystone-EID # beacons, you may use either the current EID or the beacon's "stable" UID. # Required. # @param [String] project_id # The project id of the beacon to deactivate. If the project id is not specified # then the project making the request is used. The project id must match the # project that owns the beacon. Optional. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::ProximitybeaconV1beta1::Empty] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::ProximitybeaconV1beta1::Empty] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def deactivate_beacon(beacon_name, project_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'v1beta1/{+beaconName}:deactivate', options) command.response_representation = Google::Apis::ProximitybeaconV1beta1::Empty::Representation command.response_class = Google::Apis::ProximitybeaconV1beta1::Empty command.params['beaconName'] = beacon_name unless beacon_name.nil? command.query['projectId'] = project_id unless project_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Associates the given data with the specified beacon. Attachment data must # contain two parts: # - A namespaced type. # - The actual attachment data itself. The namespaced type consists of two # parts, the namespace and the type. The namespace must be one of the values # returned by the `namespaces` endpoint, while the type can be a string of any # characters except for the forward slash (`/`) up to 100 characters in length. # Attachment data can be up to 1024 bytes long. Authenticate using an [OAuth # access token](https://developers.google.com/identity/protocols/OAuth2) from a # signed-in user with **Is owner** or **Can edit** permissions in the Google # Developers Console project. # @param [String] beacon_name # Beacon on which the attachment should be created. A beacon name has the format # "beacons/N!beaconId" where the beaconId is the base16 ID broadcast by the # beacon and N is a code for the beacon's type. Possible values are `3` for # Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5` for AltBeacon. # For Eddystone-EID beacons, you may use either the current EID or the beacon's " # stable" UID. Required. # @param [Google::Apis::ProximitybeaconV1beta1::BeaconAttachment] beacon_attachment_object # @param [String] project_id # The project id of the project the attachment will belong to. If the project id # is not specified then the project making the request is used. Optional. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::ProximitybeaconV1beta1::BeaconAttachment] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::ProximitybeaconV1beta1::BeaconAttachment] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def create_beacon_attachment(beacon_name, beacon_attachment_object = nil, project_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'v1beta1/{+beaconName}/attachments', options) command.request_representation = Google::Apis::ProximitybeaconV1beta1::BeaconAttachment::Representation command.request_object = beacon_attachment_object command.response_representation = Google::Apis::ProximitybeaconV1beta1::BeaconAttachment::Representation command.response_class = Google::Apis::ProximitybeaconV1beta1::BeaconAttachment command.params['beaconName'] = beacon_name unless beacon_name.nil? command.query['projectId'] = project_id unless project_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Returns the attachments for the specified beacon that match the specified # namespaced-type pattern. To control which namespaced types are returned, you # add the `namespacedType` query parameter to the request. You must either use `* # /*`, to return all attachments, or the namespace must be one of the ones # returned from the `namespaces` endpoint. Authenticate using an [OAuth access # token](https://developers.google.com/identity/protocols/OAuth2) from a signed- # in user with **viewer**, **Is owner** or **Can edit** permissions in the # Google Developers Console project. # @param [String] beacon_name # Beacon whose attachments should be fetched. A beacon name has the format " # beacons/N!beaconId" where the beaconId is the base16 ID broadcast by the # beacon and N is a code for the beacon's type. Possible values are `3` for # Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5` for AltBeacon. # For Eddystone-EID beacons, you may use either the current EID or the beacon's " # stable" UID. Required. # @param [String] namespaced_type # Specifies the namespace and type of attachment to include in response in # namespace/type format. Accepts `*/*` to specify "all types in all namespaces". # @param [String] project_id # The project id to list beacon attachments under. This field can be used when "* # " is specified to mean all attachment namespaces. Projects may have multiple # attachments with multiple namespaces. If "*" is specified and the projectId # string is empty, then the project making the request is used. Optional. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::ProximitybeaconV1beta1::ListBeaconAttachmentsResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::ProximitybeaconV1beta1::ListBeaconAttachmentsResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_beacon_attachments(beacon_name, namespaced_type: nil, project_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'v1beta1/{+beaconName}/attachments', options) command.response_representation = Google::Apis::ProximitybeaconV1beta1::ListBeaconAttachmentsResponse::Representation command.response_class = Google::Apis::ProximitybeaconV1beta1::ListBeaconAttachmentsResponse command.params['beaconName'] = beacon_name unless beacon_name.nil? command.query['namespacedType'] = namespaced_type unless namespaced_type.nil? command.query['projectId'] = project_id unless project_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Deletes the specified attachment for the given beacon. Each attachment has a # unique attachment name (`attachmentName`) which is returned when you fetch the # attachment data via this API. You specify this with the delete request to # control which attachment is removed. This operation cannot be undone. # Authenticate using an [OAuth access token](https://developers.google.com/ # identity/protocols/OAuth2) from a signed-in user with **Is owner** or **Can # edit** permissions in the Google Developers Console project. # @param [String] attachment_name # The attachment name (`attachmentName`) of the attachment to remove. For # example: `beacons/3!893737abc9/attachments/c5e937-af0-494-959-ec49d12738`. For # Eddystone-EID beacons, the beacon ID portion (`3!893737abc9`) may be the # beacon's current EID, or its "stable" Eddystone-UID. Required. # @param [String] project_id # The project id of the attachment to delete. If not provided, the project that # is making the request is used. Optional. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::ProximitybeaconV1beta1::Empty] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::ProximitybeaconV1beta1::Empty] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def delete_beacon_attachment(attachment_name, project_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:delete, 'v1beta1/{+attachmentName}', options) command.response_representation = Google::Apis::ProximitybeaconV1beta1::Empty::Representation command.response_class = Google::Apis::ProximitybeaconV1beta1::Empty command.params['attachmentName'] = attachment_name unless attachment_name.nil? command.query['projectId'] = project_id unless project_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Deletes multiple attachments on a given beacon. This operation is permanent # and cannot be undone. You can optionally specify `namespacedType` to choose # which attachments should be deleted. If you do not specify `namespacedType`, # all your attachments on the given beacon will be deleted. You also may # explicitly specify `*/*` to delete all. Authenticate using an [OAuth access # token](https://developers.google.com/identity/protocols/OAuth2) from a signed- # in user with **Is owner** or **Can edit** permissions in the Google Developers # Console project. # @param [String] beacon_name # The beacon whose attachments should be deleted. A beacon name has the format " # beacons/N!beaconId" where the beaconId is the base16 ID broadcast by the # beacon and N is a code for the beacon's type. Possible values are `3` for # Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5` for AltBeacon. # For Eddystone-EID beacons, you may use either the current EID or the beacon's " # stable" UID. Required. # @param [String] namespaced_type # Specifies the namespace and type of attachments to delete in `namespace/type` # format. Accepts `*/*` to specify "all types in all namespaces". Optional. # @param [String] project_id # The project id to delete beacon attachments under. This field can be used when # "*" is specified to mean all attachment namespaces. Projects may have multiple # attachments with multiple namespaces. If "*" is specified and the projectId # string is empty, then the project making the request is used. Optional. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::ProximitybeaconV1beta1::DeleteAttachmentsResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::ProximitybeaconV1beta1::DeleteAttachmentsResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def batch_beacon_attachment_delete(beacon_name, namespaced_type: nil, project_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'v1beta1/{+beaconName}/attachments:batchDelete', options) command.response_representation = Google::Apis::ProximitybeaconV1beta1::DeleteAttachmentsResponse::Representation command.response_class = Google::Apis::ProximitybeaconV1beta1::DeleteAttachmentsResponse command.params['beaconName'] = beacon_name unless beacon_name.nil? command.query['namespacedType'] = namespaced_type unless namespaced_type.nil? command.query['projectId'] = project_id unless project_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # List the diagnostics for a single beacon. You can also list diagnostics for # all the beacons owned by your Google Developers Console project by using the # beacon name `beacons/-`. Authenticate using an [OAuth access token](https:// # developers.google.com/identity/protocols/OAuth2) from a signed-in user with ** # viewer**, **Is owner** or **Can edit** permissions in the Google Developers # Console project. # @param [String] beacon_name # Beacon that the diagnostics are for. # @param [Fixnum] page_size # Specifies the maximum number of results to return. Defaults to 10. Maximum # 1000. Optional. # @param [String] page_token # Requests results that occur after the `page_token`, obtained from the response # to a previous request. Optional. # @param [String] alert_filter # Requests only beacons that have the given alert. For example, to find beacons # that have low batteries use `alert_filter=LOW_BATTERY`. # @param [String] project_id # Requests only diagnostic records for the given project id. If not set, then # the project making the request will be used for looking up diagnostic records. # Optional. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::ProximitybeaconV1beta1::ListDiagnosticsResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::ProximitybeaconV1beta1::ListDiagnosticsResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_beacon_diagnostics(beacon_name, page_size: nil, page_token: nil, alert_filter: nil, project_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'v1beta1/{+beaconName}/diagnostics', options) command.response_representation = Google::Apis::ProximitybeaconV1beta1::ListDiagnosticsResponse::Representation command.response_class = Google::Apis::ProximitybeaconV1beta1::ListDiagnosticsResponse command.params['beaconName'] = beacon_name unless beacon_name.nil? command.query['pageSize'] = page_size unless page_size.nil? command.query['pageToken'] = page_token unless page_token.nil? command.query['alertFilter'] = alert_filter unless alert_filter.nil? command.query['projectId'] = project_id unless project_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Lists all attachment namespaces owned by your Google Developers Console # project. Attachment data associated with a beacon must include a namespaced # type, and the namespace must be owned by your project. Authenticate using an [ # OAuth access token](https://developers.google.com/identity/protocols/OAuth2) # from a signed-in user with **viewer**, **Is owner** or **Can edit** # permissions in the Google Developers Console project. # @param [String] project_id # The project id to list namespaces under. Optional. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::ProximitybeaconV1beta1::ListNamespacesResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::ProximitybeaconV1beta1::ListNamespacesResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_namespaces(project_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'v1beta1/namespaces', options) command.response_representation = Google::Apis::ProximitybeaconV1beta1::ListNamespacesResponse::Representation command.response_class = Google::Apis::ProximitybeaconV1beta1::ListNamespacesResponse command.query['projectId'] = project_id unless project_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Updates the information about the specified namespace. Only the namespace # visibility can be updated. # @param [String] namespace_name # Resource name of this namespace. Namespaces names have the format: namespaces/ # namespace. # @param [Google::Apis::ProximitybeaconV1beta1::Namespace] namespace_object # @param [String] project_id # The project id of the namespace to update. If the project id is not specified # then the project making the request is used. The project id must match the # project that owns the beacon. Optional. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::ProximitybeaconV1beta1::Namespace] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::ProximitybeaconV1beta1::Namespace] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def update_namespace(namespace_name, namespace_object = nil, project_id: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:put, 'v1beta1/{+namespaceName}', options) command.request_representation = Google::Apis::ProximitybeaconV1beta1::Namespace::Representation command.request_object = namespace_object command.response_representation = Google::Apis::ProximitybeaconV1beta1::Namespace::Representation command.response_class = Google::Apis::ProximitybeaconV1beta1::Namespace command.params['namespaceName'] = namespace_name unless namespace_name.nil? command.query['projectId'] = project_id unless project_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Gets the Proximity Beacon API's current public key and associated parameters # used to initiate the Diffie-Hellman key exchange required to register a beacon # that broadcasts the Eddystone-EID format. This key changes periodically; # clients may cache it and re-use the same public key to provision and register # multiple beacons. However, clients should be prepared to refresh this key when # they encounter an error registering an Eddystone-EID beacon. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::ProximitybeaconV1beta1::EphemeralIdRegistrationParams] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::ProximitybeaconV1beta1::EphemeralIdRegistrationParams] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def get_eidparams(fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'v1beta1/eidparams', options) command.response_representation = Google::Apis::ProximitybeaconV1beta1::EphemeralIdRegistrationParams::Representation command.response_class = Google::Apis::ProximitybeaconV1beta1::EphemeralIdRegistrationParams command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end # Given one or more beacon observations, returns any beacon information and # attachments accessible to your application. Authorize by using the [API key]( # https://developers.google.com/beacons/proximity/how-tos/authorizing#APIKey) # for the application. # @param [Google::Apis::ProximitybeaconV1beta1::GetInfoForObservedBeaconsRequest] get_info_for_observed_beacons_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::ProximitybeaconV1beta1::GetInfoForObservedBeaconsResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::ProximitybeaconV1beta1::GetInfoForObservedBeaconsResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def getforobserved_beaconinfo(get_info_for_observed_beacons_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'v1beta1/beaconinfo:getforobserved', options) command.request_representation = Google::Apis::ProximitybeaconV1beta1::GetInfoForObservedBeaconsRequest::Representation command.request_object = get_info_for_observed_beacons_request_object command.response_representation = Google::Apis::ProximitybeaconV1beta1::GetInfoForObservedBeaconsResponse::Representation command.response_class = Google::Apis::ProximitybeaconV1beta1::GetInfoForObservedBeaconsResponse command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end protected def apply_command_defaults(command) command.query['key'] = key unless key.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? end end end end end