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 from a signed-in user with Is owner or Can edit permissions in the Google Developers Console project.
Scopes
You will need authorization for the https://www.googleapis.com/auth/userlocation.beacon.registry scope to make a valid call.
If unset, the scope for this method defaults to https://www.googleapis.com/auth/userlocation.beacon.registry.
You can set the scope for this method like this: proximitybeacon1-beta1 --scope <scope> beacons update ...
Required Scalar Argument
- <beacon-name> (string)
-
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, or5
for AltBeacon.This field must be left empty when registering. After reading a beacon, clients can use the name for future operations.
Required Request Value
-
The request value is a data-structure with various fields. Each field may be a simple scalar or another data-structure. In the latter case it is advised to set the field-cursor to the data-structure's field to specify values more concisely.
For example, a structure like this:
Beacon:
advertised-id:
id: string
type: string
beacon-name: string
description: string
ephemeral-id-registration:
beacon-ecdh-public-key: string
beacon-identity-key: string
initial-clock-value: string
initial-eid: string
rotation-period-exponent: integer
service-ecdh-public-key: string
expected-stability: string
indoor-level:
name: string
lat-lng:
latitude: number
longitude: number
place-id: string
properties: { string: string }
provisioning-key: string
status: string
can be set completely with the following arguments which are assumed to be executed in the given order. Note how the cursor position is adjusted to the respective structures, allowing simple field names to be used most of the time.
-r .advertised-id id=ut
- The actual beacon identifier, as broadcast by the beacon hardware. Must be base64 encoded in HTTP requests, and will be so encoded (with padding) in responses. The base64 encoding should be of the binary byte-stream and not any textual (such as hex) representation thereof. Required.
-
type=gubergren
- Specifies the identifier type. Required.
-
.. beacon-name=rebum.
-
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, or5
for AltBeacon.This field must be left empty when registering. After reading a beacon, clients can use the name for future operations. *
description=est
- Free text used to identify and describe the beacon. Maximum length 140 characters. Optional. *ephemeral-id-registration beacon-ecdh-public-key=ipsum
- The beacon's public key used for the Elliptic curve Diffie-Hellman key exchange. When this field is populated,service_ecdh_public_key
must also be populated, andbeacon_identity_key
must not be. *beacon-identity-key=ipsum
- The private key of the beacon. If this field is populated,beacon_ecdh_public_key
andservice_ecdh_public_key
must not be populated. *initial-clock-value=est
- The initial clock value of the beacon. The beacon's clock must have begun counting at this value immediately prior to transmitting this value to the resolving service. Significant delay in transmitting this value to the service risks registration or resolution failures. If a value is not provided, the default is zero. *initial-eid=gubergren
- An initial ephemeral ID calculated using the clock value submitted asinitial_clock_value
, and the secret key generated by the Diffie-Hellman key exchange usingservice_ecdh_public_key
andservice_ecdh_public_key
. This initial EID value will be used by the service to confirm that the key exchange process was successful. *rotation-period-exponent=84
- Indicates the nominal period between each rotation of the beacon's ephemeral ID. "Nominal" because the beacon should randomize the actual interval. See the spec at github for details. This value corresponds to a power-of-two scaler on the beacon's clock: when the scaler value is K, the beacon will begin broadcasting a new ephemeral ID on average every 2^K seconds. *service-ecdh-public-key=dolor
- The service's public key used for the Elliptic curve Diffie-Hellman key exchange. When this field is populated,beacon_ecdh_public_key
must also be populated, andbeacon_identity_key
must not be.
-
-
.. expected-stability=lorem
- Expected location stability. This is set when the beacon is registered or updated, not automatically detected in any way. Optional.
-
indoor-level name=eos
- The name of this level.
-
..lat-lng latitude=0.11853734747270994
- The latitude in degrees. It must be in the range [-90.0, +90.0].
-
longitude=0.24638057468506236
- The longitude in degrees. It must be in the range [-180.0, +180.0].
-
.. place-id=sed
- The Google Places API Place ID of the place where the beacon is deployed. This is given when the beacon is registered or updated, not automatically detected in any way. Optional.
properties=key=no
- Properties of the beacon device, for example battery type or firmware version. Optional.
- the value will be associated with the given
key
provisioning-key=stet
- Some beacons may require a user to provide an authorization key before
changing any of its configuration (e.g. broadcast frames, transmit power).
This field provides a place to store and control access to that key.
This field is populated in responses to
GET /v1beta1/beacons/3!beaconId
from users with write access to the given beacon. That is to say: If the user is authorized to write the beacon's confidential data in the service, the service considers them authorized to configure the beacon. Note that this key grants nothing on the service, only on the beacon itself.
- Some beacons may require a user to provide an authorization key before
changing any of its configuration (e.g. broadcast frames, transmit power).
This field provides a place to store and control access to that key.
This field is populated in responses to
status=kasd
- Current status of the beacon. Required.
About Cursors
The cursor position is key to comfortably set complex nested structures. The following rules apply:
- The cursor position is always set relative to the current one, unless the field name starts with the
.
character. Fields can be nested such as in-r f.s.o
. - The cursor position is set relative to the top-level structure if it starts with
.
, e.g.-r .s.s
- You can also set nested fields without setting the cursor explicitly. For example, to set a value relative to the current cursor position, you would specify
-r struct.sub_struct=bar
. - You can move the cursor one level up by using
..
. Each additional.
moves it up one additional level. E.g....
would go three levels up.
Optional Output Flags
The method's return value a JSON encoded structure, which will be written to standard output by default.
- -o out
- out specifies the destination to which to write the server's result to.
It will be a JSON-encoded structure.
The destination may be
-
to indicate standard output, or a filepath that is to contain the received bytes. If unset, it defaults to standard output.
- out specifies the destination to which to write the server's result to.
It will be a JSON-encoded structure.
The destination may be
Optional Method Properties
You may set the following properties to further configure the call. Please note that -p
is followed by one
or more key-value-pairs, and is called like this -p k1=v1 k2=v2
even though the listing below repeats the
-p
for completeness.
- -p project-id=string
- 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.
Optional General Properties
The following properties can configure any call, and are not specific to this method.
-
-p $-xgafv=string
- V1 error format.
-
-p access-token=string
- OAuth access token.
-
-p alt=string
- Data format for response.
-
-p callback=string
- JSONP
-
-p fields=string
- Selector specifying which fields to include in a partial response.
-
-p key=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.
-
-p oauth-token=string
- OAuth 2.0 token for the current user.
-
-p pretty-print=boolean
- Returns response with indentations and line breaks.
-
-p quota-user=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.
-
-p upload-type=string
- Legacy upload protocol for media (e.g. "media", "multipart").
-
-p upload-protocol=string
- Upload protocol for media (e.g. "raw", "multipart").