| <html><body> |
| <style> |
| |
| body, h1, h2, h3, div, span, p, pre, a { |
| margin: 0; |
| padding: 0; |
| border: 0; |
| font-weight: inherit; |
| font-style: inherit; |
| font-size: 100%; |
| font-family: inherit; |
| vertical-align: baseline; |
| } |
| |
| body { |
| font-size: 13px; |
| padding: 1em; |
| } |
| |
| h1 { |
| font-size: 26px; |
| margin-bottom: 1em; |
| } |
| |
| h2 { |
| font-size: 24px; |
| margin-bottom: 1em; |
| } |
| |
| h3 { |
| font-size: 20px; |
| margin-bottom: 1em; |
| margin-top: 1em; |
| } |
| |
| pre, code { |
| line-height: 1.5; |
| font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace; |
| } |
| |
| pre { |
| margin-top: 0.5em; |
| } |
| |
| h1, h2, h3, p { |
| font-family: Arial, sans serif; |
| } |
| |
| h1, h2, h3 { |
| border-bottom: solid #CCC 1px; |
| } |
| |
| .toc_element { |
| margin-top: 0.5em; |
| } |
| |
| .firstline { |
| margin-left: 2 em; |
| } |
| |
| .method { |
| margin-top: 1em; |
| border: solid 1px #CCC; |
| padding: 1em; |
| background: #EEE; |
| } |
| |
| .details { |
| font-weight: bold; |
| font-size: 14px; |
| } |
| |
| </style> |
| |
| <h1><a href="proximitybeacon_v1beta1.html">Google Proximity Beacon API</a> . <a href="proximitybeacon_v1beta1.beacons.html">beacons</a></h1> |
| <h2>Instance Methods</h2> |
| <p class="toc_element"> |
| <code><a href="proximitybeacon_v1beta1.beacons.attachments.html">attachments()</a></code> |
| </p> |
| <p class="firstline">Returns the attachments Resource.</p> |
| |
| <p class="toc_element"> |
| <code><a href="proximitybeacon_v1beta1.beacons.diagnostics.html">diagnostics()</a></code> |
| </p> |
| <p class="firstline">Returns the diagnostics Resource.</p> |
| |
| <p class="toc_element"> |
| <code><a href="#activate">activate(beaconName, projectId=None, x__xgafv=None)</a></code></p> |
| <p class="firstline">Activates a beacon. A beacon that is active will return information</p> |
| <p class="toc_element"> |
| <code><a href="#deactivate">deactivate(beaconName, projectId=None, x__xgafv=None)</a></code></p> |
| <p class="firstline">Deactivates a beacon. Once deactivated, the API will not return</p> |
| <p class="toc_element"> |
| <code><a href="#decommission">decommission(beaconName, projectId=None, x__xgafv=None)</a></code></p> |
| <p class="firstline">Decommissions the specified beacon in the service. This beacon will no</p> |
| <p class="toc_element"> |
| <code><a href="#delete">delete(beaconName, projectId=None, x__xgafv=None)</a></code></p> |
| <p class="firstline">Deletes the specified beacon including all diagnostics data for the beacon</p> |
| <p class="toc_element"> |
| <code><a href="#get">get(beaconName, projectId=None, x__xgafv=None)</a></code></p> |
| <p class="firstline">Returns detailed information about the specified beacon.</p> |
| <p class="toc_element"> |
| <code><a href="#list">list(pageSize=None, projectId=None, q=None, syntax=None, pageToken=None, x__xgafv=None)</a></code></p> |
| <p class="firstline">Searches the beacon registry for beacons that match the given search</p> |
| <p class="toc_element"> |
| <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p> |
| <p class="firstline">Retrieves the next page of results.</p> |
| <p class="toc_element"> |
| <code><a href="#register">register(body, projectId=None, x__xgafv=None)</a></code></p> |
| <p class="firstline">Registers a previously unregistered beacon given its `advertisedId`.</p> |
| <p class="toc_element"> |
| <code><a href="#update">update(beaconName, body, projectId=None, x__xgafv=None)</a></code></p> |
| <p class="firstline">Updates the information about the specified beacon. **Any field that you do</p> |
| <h3>Method Details</h3> |
| <div class="method"> |
| <code class="details" id="activate">activate(beaconName, projectId=None, x__xgafv=None)</code> |
| <pre>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. |
| |
| Args: |
| beaconName: string, 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. (required) |
| projectId: string, 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. |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # A generic empty message that you can re-use to avoid defining duplicated |
| # empty messages in your APIs. A typical example is to use it as the request |
| # or the response type of an API method. For instance: |
| # |
| # service Foo { |
| # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); |
| # } |
| # |
| # The JSON representation for `Empty` is empty JSON object `{}`. |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="deactivate">deactivate(beaconName, projectId=None, x__xgafv=None)</code> |
| <pre>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. |
| |
| Args: |
| beaconName: string, 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. (required) |
| projectId: string, 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. |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # A generic empty message that you can re-use to avoid defining duplicated |
| # empty messages in your APIs. A typical example is to use it as the request |
| # or the response type of an API method. For instance: |
| # |
| # service Foo { |
| # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); |
| # } |
| # |
| # The JSON representation for `Empty` is empty JSON object `{}`. |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="decommission">decommission(beaconName, projectId=None, x__xgafv=None)</code> |
| <pre>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. |
| |
| Args: |
| beaconName: string, 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. (required) |
| projectId: string, 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. |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # A generic empty message that you can re-use to avoid defining duplicated |
| # empty messages in your APIs. A typical example is to use it as the request |
| # or the response type of an API method. For instance: |
| # |
| # service Foo { |
| # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); |
| # } |
| # |
| # The JSON representation for `Empty` is empty JSON object `{}`. |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="delete">delete(beaconName, projectId=None, x__xgafv=None)</code> |
| <pre>Deletes the specified beacon including all diagnostics data for the beacon |
| as well as any attachments on the beacon (including those belonging to |
| other projects). 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. |
| |
| Args: |
| beaconName: string, Beacon that 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. (required) |
| projectId: string, The project id of the beacon to delete. If not provided, the project |
| that is making the request is used. |
| Optional. |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # A generic empty message that you can re-use to avoid defining duplicated |
| # empty messages in your APIs. A typical example is to use it as the request |
| # or the response type of an API method. For instance: |
| # |
| # service Foo { |
| # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); |
| # } |
| # |
| # The JSON representation for `Empty` is empty JSON object `{}`. |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="get">get(beaconName, projectId=None, x__xgafv=None)</code> |
| <pre>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. |
| |
| Args: |
| beaconName: 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-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. (required) |
| projectId: string, 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. |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # Details of a beacon device. |
| "status": "A String", # Current status of the beacon. |
| # Required. |
| "description": "A String", # Free text used to identify and describe the beacon. Maximum length 140 |
| # characters. |
| # Optional. |
| "indoorLevel": { # Indoor level, a human-readable string as returned by Google Maps APIs, # The indoor level information for this beacon, if known. As returned by the |
| # Google Maps API. |
| # Optional. |
| # useful to indicate which floor of a building a beacon is located on. |
| "name": "A String", # The name of this level. |
| }, |
| "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # The location of the beacon, expressed as a latitude and longitude pair. |
| # This location is given when the beacon is registered or updated. It does |
| # not necessarily indicate the actual current location of the beacon. |
| # Optional. |
| # of doubles representing degrees latitude and degrees longitude. Unless |
| # specified otherwise, this must conform to the |
| # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84 |
| # standard</a>. Values must be within normalized ranges. |
| # |
| # Example of normalization code in Python: |
| # |
| # def NormalizeLongitude(longitude): |
| # """Wraps decimal degrees longitude to [-180.0, 180.0].""" |
| # q, r = divmod(longitude, 360.0) |
| # if r > 180.0 or (r == 180.0 and q <= -1.0): |
| # return r - 360.0 |
| # return r |
| # |
| # def NormalizeLatLng(latitude, longitude): |
| # """Wraps decimal degrees latitude and longitude to |
| # [-90.0, 90.0] and [-180.0, 180.0], respectively.""" |
| # r = latitude % 360.0 |
| # if r <= 90.0: |
| # return r, NormalizeLongitude(longitude) |
| # elif r >= 270.0: |
| # return r - 360, NormalizeLongitude(longitude) |
| # else: |
| # return 180 - r, NormalizeLongitude(longitude + 180.0) |
| # |
| # assert 180.0 == NormalizeLongitude(180.0) |
| # assert -180.0 == NormalizeLongitude(-180.0) |
| # assert -179.0 == NormalizeLongitude(181.0) |
| # assert (0.0, 0.0) == NormalizeLatLng(360.0, 0.0) |
| # assert (0.0, 0.0) == NormalizeLatLng(-360.0, 0.0) |
| # assert (85.0, 180.0) == NormalizeLatLng(95.0, 0.0) |
| # assert (-85.0, -170.0) == NormalizeLatLng(-95.0, 10.0) |
| # assert (90.0, 10.0) == NormalizeLatLng(90.0, 10.0) |
| # assert (-90.0, -10.0) == NormalizeLatLng(-90.0, -10.0) |
| # assert (0.0, -170.0) == NormalizeLatLng(-180.0, 10.0) |
| # assert (0.0, -170.0) == NormalizeLatLng(180.0, 10.0) |
| # assert (-90.0, 10.0) == NormalizeLatLng(270.0, 10.0) |
| # assert (90.0, 10.0) == NormalizeLatLng(-270.0, 10.0) |
| "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0]. |
| "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0]. |
| }, |
| "placeId": "A String", # The [Google Places API](/places/place-id) 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. |
| "ephemeralIdRegistration": { # Write-only registration parameters for beacons using Eddystone-EID format. # Write-only registration parameters for beacons using Eddystone-EID |
| # (remotely resolved ephemeral ID) format. This information will not be |
| # populated in API responses. When submitting this data, the `advertised_id` |
| # field must contain an ID of type Eddystone-UID. Any other ID type will |
| # result in an error. |
| # Two ways of securely registering an Eddystone-EID beacon with the service |
| # are supported: |
| # |
| # 1. Perform an ECDH key exchange via this API, including a previous call |
| # to `GET /v1beta1/eidparams`. In this case the fields |
| # `beacon_ecdh_public_key` and `service_ecdh_public_key` should be |
| # populated and `beacon_identity_key` should not be populated. This |
| # method ensures that only the two parties in the ECDH key exchange can |
| # compute the identity key, which becomes a secret between them. |
| # 2. Derive or obtain the beacon's identity key via other secure means |
| # (perhaps an ECDH key exchange between the beacon and a mobile device |
| # or any other secure method), and then submit the resulting identity key |
| # to the service. In this case `beacon_identity_key` field should be |
| # populated, and neither of `beacon_ecdh_public_key` nor |
| # `service_ecdh_public_key` fields should be. The security of this method |
| # depends on how securely the parties involved (in particular the |
| # bluetooth client) handle the identity key, and obviously on how |
| # securely the identity key was generated. |
| # |
| # See [the Eddystone specification](https://github.com/google/eddystone/tree/master/eddystone-eid) at GitHub. |
| "rotationPeriodExponent": 42, # 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](https://github.com/google/eddystone/tree/master/eddystone-eid) |
| # 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. |
| "initialClockValue": "A String", # 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. |
| "serviceEcdhPublicKey": "A String", # 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, and `beacon_identity_key` must not be. |
| "initialEid": "A String", # An initial ephemeral ID calculated using the clock value submitted as |
| # `initial_clock_value`, and the secret key generated by the |
| # Diffie-Hellman key exchange using `service_ecdh_public_key` and |
| # `service_ecdh_public_key`. This initial EID value will be used by the |
| # service to confirm that the key exchange process was successful. |
| "beaconEcdhPublicKey": "A String", # 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, and `beacon_identity_key` must not be. |
| "beaconIdentityKey": "A String", # The private key of the beacon. If this field is populated, |
| # `beacon_ecdh_public_key` and `service_ecdh_public_key` must not be |
| # populated. |
| }, |
| "advertisedId": { # Defines a unique identifier of a beacon as broadcast by the device. # The identifier of a beacon as advertised by it. This field must be |
| # populated when registering. It may be empty when updating a beacon |
| # record because it is ignored in updates. |
| # |
| # When registering a beacon that broadcasts Eddystone-EID, this field |
| # should contain a "stable" Eddystone-UID that identifies the beacon and |
| # links it to its attachments. The stable Eddystone-UID is only used for |
| # administering the beacon. |
| "type": "A String", # Specifies the identifier type. |
| # Required. |
| "id": "A String", # The actual beacon identifier, as broadcast by the beacon hardware. Must be |
| # [base64](http://tools.ietf.org/html/rfc4648#section-4) 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. |
| }, |
| "beaconName": "A 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, or `5` for AltBeacon. |
| # |
| # This field must be left empty when registering. After reading a beacon, |
| # clients can use the name for future operations. |
| "expectedStability": "A String", # Expected location stability. This is set when the beacon is registered or |
| # updated, not automatically detected in any way. |
| # Optional. |
| "properties": { # Properties of the beacon device, for example battery type or firmware |
| # version. |
| # Optional. |
| "a_key": "A String", |
| }, |
| "provisioningKey": "A String", # 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. |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="list">list(pageSize=None, projectId=None, q=None, syntax=None, pageToken=None, x__xgafv=None)</code> |
| <pre>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. |
| |
| Args: |
| pageSize: integer, The maximum number of records to return for this request, up to a |
| server-defined upper limit. |
| projectId: string, The project id to list beacons under. If not present then the project |
| credential that made the request is used as the project. |
| Optional. |
| q: string, Filter query string that supports the following field filters: |
| |
| * **description:`"<string>"`** |
| 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:`<enum>`** |
| 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:`<enum>`** |
| 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:`"<string>"`** |
| 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`[<|>|<=|>=]<integer>`** |
| For example: **registration\_time>=1433116800** |
| Returns beacons whose registration time matches the given filter. |
| Supports the operators: <, >, <=, and >=. 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:`<double> lng:<double> radius:<integer>`** |
| 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:`"<string>=<string>"`** |
| 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:`"<string>"`** |
| 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. |
| * **indoor\_level:`"<string>"`** |
| For example: **indoor\_level:"1"** |
| Returns beacons which are located on the given indoor level. Accepts |
| multiple filters that will be combined with OR logic. |
| |
| 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` |
| pageToken: string, A pagination token obtained from a previous request to list beacons. |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # Response that contains list beacon results and pagination help. |
| "nextPageToken": "A String", # An opaque pagination token that the client may provide in their next |
| # request to retrieve the next page of results. |
| "beacons": [ # The beacons that matched the search criteria. |
| { # Details of a beacon device. |
| "status": "A String", # Current status of the beacon. |
| # Required. |
| "description": "A String", # Free text used to identify and describe the beacon. Maximum length 140 |
| # characters. |
| # Optional. |
| "indoorLevel": { # Indoor level, a human-readable string as returned by Google Maps APIs, # The indoor level information for this beacon, if known. As returned by the |
| # Google Maps API. |
| # Optional. |
| # useful to indicate which floor of a building a beacon is located on. |
| "name": "A String", # The name of this level. |
| }, |
| "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # The location of the beacon, expressed as a latitude and longitude pair. |
| # This location is given when the beacon is registered or updated. It does |
| # not necessarily indicate the actual current location of the beacon. |
| # Optional. |
| # of doubles representing degrees latitude and degrees longitude. Unless |
| # specified otherwise, this must conform to the |
| # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84 |
| # standard</a>. Values must be within normalized ranges. |
| # |
| # Example of normalization code in Python: |
| # |
| # def NormalizeLongitude(longitude): |
| # """Wraps decimal degrees longitude to [-180.0, 180.0].""" |
| # q, r = divmod(longitude, 360.0) |
| # if r > 180.0 or (r == 180.0 and q <= -1.0): |
| # return r - 360.0 |
| # return r |
| # |
| # def NormalizeLatLng(latitude, longitude): |
| # """Wraps decimal degrees latitude and longitude to |
| # [-90.0, 90.0] and [-180.0, 180.0], respectively.""" |
| # r = latitude % 360.0 |
| # if r <= 90.0: |
| # return r, NormalizeLongitude(longitude) |
| # elif r >= 270.0: |
| # return r - 360, NormalizeLongitude(longitude) |
| # else: |
| # return 180 - r, NormalizeLongitude(longitude + 180.0) |
| # |
| # assert 180.0 == NormalizeLongitude(180.0) |
| # assert -180.0 == NormalizeLongitude(-180.0) |
| # assert -179.0 == NormalizeLongitude(181.0) |
| # assert (0.0, 0.0) == NormalizeLatLng(360.0, 0.0) |
| # assert (0.0, 0.0) == NormalizeLatLng(-360.0, 0.0) |
| # assert (85.0, 180.0) == NormalizeLatLng(95.0, 0.0) |
| # assert (-85.0, -170.0) == NormalizeLatLng(-95.0, 10.0) |
| # assert (90.0, 10.0) == NormalizeLatLng(90.0, 10.0) |
| # assert (-90.0, -10.0) == NormalizeLatLng(-90.0, -10.0) |
| # assert (0.0, -170.0) == NormalizeLatLng(-180.0, 10.0) |
| # assert (0.0, -170.0) == NormalizeLatLng(180.0, 10.0) |
| # assert (-90.0, 10.0) == NormalizeLatLng(270.0, 10.0) |
| # assert (90.0, 10.0) == NormalizeLatLng(-270.0, 10.0) |
| "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0]. |
| "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0]. |
| }, |
| "placeId": "A String", # The [Google Places API](/places/place-id) 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. |
| "ephemeralIdRegistration": { # Write-only registration parameters for beacons using Eddystone-EID format. # Write-only registration parameters for beacons using Eddystone-EID |
| # (remotely resolved ephemeral ID) format. This information will not be |
| # populated in API responses. When submitting this data, the `advertised_id` |
| # field must contain an ID of type Eddystone-UID. Any other ID type will |
| # result in an error. |
| # Two ways of securely registering an Eddystone-EID beacon with the service |
| # are supported: |
| # |
| # 1. Perform an ECDH key exchange via this API, including a previous call |
| # to `GET /v1beta1/eidparams`. In this case the fields |
| # `beacon_ecdh_public_key` and `service_ecdh_public_key` should be |
| # populated and `beacon_identity_key` should not be populated. This |
| # method ensures that only the two parties in the ECDH key exchange can |
| # compute the identity key, which becomes a secret between them. |
| # 2. Derive or obtain the beacon's identity key via other secure means |
| # (perhaps an ECDH key exchange between the beacon and a mobile device |
| # or any other secure method), and then submit the resulting identity key |
| # to the service. In this case `beacon_identity_key` field should be |
| # populated, and neither of `beacon_ecdh_public_key` nor |
| # `service_ecdh_public_key` fields should be. The security of this method |
| # depends on how securely the parties involved (in particular the |
| # bluetooth client) handle the identity key, and obviously on how |
| # securely the identity key was generated. |
| # |
| # See [the Eddystone specification](https://github.com/google/eddystone/tree/master/eddystone-eid) at GitHub. |
| "rotationPeriodExponent": 42, # 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](https://github.com/google/eddystone/tree/master/eddystone-eid) |
| # 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. |
| "initialClockValue": "A String", # 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. |
| "serviceEcdhPublicKey": "A String", # 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, and `beacon_identity_key` must not be. |
| "initialEid": "A String", # An initial ephemeral ID calculated using the clock value submitted as |
| # `initial_clock_value`, and the secret key generated by the |
| # Diffie-Hellman key exchange using `service_ecdh_public_key` and |
| # `service_ecdh_public_key`. This initial EID value will be used by the |
| # service to confirm that the key exchange process was successful. |
| "beaconEcdhPublicKey": "A String", # 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, and `beacon_identity_key` must not be. |
| "beaconIdentityKey": "A String", # The private key of the beacon. If this field is populated, |
| # `beacon_ecdh_public_key` and `service_ecdh_public_key` must not be |
| # populated. |
| }, |
| "advertisedId": { # Defines a unique identifier of a beacon as broadcast by the device. # The identifier of a beacon as advertised by it. This field must be |
| # populated when registering. It may be empty when updating a beacon |
| # record because it is ignored in updates. |
| # |
| # When registering a beacon that broadcasts Eddystone-EID, this field |
| # should contain a "stable" Eddystone-UID that identifies the beacon and |
| # links it to its attachments. The stable Eddystone-UID is only used for |
| # administering the beacon. |
| "type": "A String", # Specifies the identifier type. |
| # Required. |
| "id": "A String", # The actual beacon identifier, as broadcast by the beacon hardware. Must be |
| # [base64](http://tools.ietf.org/html/rfc4648#section-4) 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. |
| }, |
| "beaconName": "A 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, or `5` for AltBeacon. |
| # |
| # This field must be left empty when registering. After reading a beacon, |
| # clients can use the name for future operations. |
| "expectedStability": "A String", # Expected location stability. This is set when the beacon is registered or |
| # updated, not automatically detected in any way. |
| # Optional. |
| "properties": { # Properties of the beacon device, for example battery type or firmware |
| # version. |
| # Optional. |
| "a_key": "A String", |
| }, |
| "provisioningKey": "A String", # 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. |
| }, |
| ], |
| "totalCount": "A String", # Estimate of the total number of beacons matched by the query. Higher |
| # values may be less accurate. |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="list_next">list_next(previous_request, previous_response)</code> |
| <pre>Retrieves the next page of results. |
| |
| Args: |
| previous_request: The request for the previous page. (required) |
| previous_response: The response from the request for the previous page. (required) |
| |
| Returns: |
| A request object that you can call 'execute()' on to request the next |
| page. Returns None if there are no more items in the collection. |
| </pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="register">register(body, projectId=None, x__xgafv=None)</code> |
| <pre>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. |
| |
| Args: |
| body: object, The request body. (required) |
| The object takes the form of: |
| |
| { # Details of a beacon device. |
| "status": "A String", # Current status of the beacon. |
| # Required. |
| "description": "A String", # Free text used to identify and describe the beacon. Maximum length 140 |
| # characters. |
| # Optional. |
| "indoorLevel": { # Indoor level, a human-readable string as returned by Google Maps APIs, # The indoor level information for this beacon, if known. As returned by the |
| # Google Maps API. |
| # Optional. |
| # useful to indicate which floor of a building a beacon is located on. |
| "name": "A String", # The name of this level. |
| }, |
| "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # The location of the beacon, expressed as a latitude and longitude pair. |
| # This location is given when the beacon is registered or updated. It does |
| # not necessarily indicate the actual current location of the beacon. |
| # Optional. |
| # of doubles representing degrees latitude and degrees longitude. Unless |
| # specified otherwise, this must conform to the |
| # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84 |
| # standard</a>. Values must be within normalized ranges. |
| # |
| # Example of normalization code in Python: |
| # |
| # def NormalizeLongitude(longitude): |
| # """Wraps decimal degrees longitude to [-180.0, 180.0].""" |
| # q, r = divmod(longitude, 360.0) |
| # if r > 180.0 or (r == 180.0 and q <= -1.0): |
| # return r - 360.0 |
| # return r |
| # |
| # def NormalizeLatLng(latitude, longitude): |
| # """Wraps decimal degrees latitude and longitude to |
| # [-90.0, 90.0] and [-180.0, 180.0], respectively.""" |
| # r = latitude % 360.0 |
| # if r <= 90.0: |
| # return r, NormalizeLongitude(longitude) |
| # elif r >= 270.0: |
| # return r - 360, NormalizeLongitude(longitude) |
| # else: |
| # return 180 - r, NormalizeLongitude(longitude + 180.0) |
| # |
| # assert 180.0 == NormalizeLongitude(180.0) |
| # assert -180.0 == NormalizeLongitude(-180.0) |
| # assert -179.0 == NormalizeLongitude(181.0) |
| # assert (0.0, 0.0) == NormalizeLatLng(360.0, 0.0) |
| # assert (0.0, 0.0) == NormalizeLatLng(-360.0, 0.0) |
| # assert (85.0, 180.0) == NormalizeLatLng(95.0, 0.0) |
| # assert (-85.0, -170.0) == NormalizeLatLng(-95.0, 10.0) |
| # assert (90.0, 10.0) == NormalizeLatLng(90.0, 10.0) |
| # assert (-90.0, -10.0) == NormalizeLatLng(-90.0, -10.0) |
| # assert (0.0, -170.0) == NormalizeLatLng(-180.0, 10.0) |
| # assert (0.0, -170.0) == NormalizeLatLng(180.0, 10.0) |
| # assert (-90.0, 10.0) == NormalizeLatLng(270.0, 10.0) |
| # assert (90.0, 10.0) == NormalizeLatLng(-270.0, 10.0) |
| "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0]. |
| "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0]. |
| }, |
| "placeId": "A String", # The [Google Places API](/places/place-id) 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. |
| "ephemeralIdRegistration": { # Write-only registration parameters for beacons using Eddystone-EID format. # Write-only registration parameters for beacons using Eddystone-EID |
| # (remotely resolved ephemeral ID) format. This information will not be |
| # populated in API responses. When submitting this data, the `advertised_id` |
| # field must contain an ID of type Eddystone-UID. Any other ID type will |
| # result in an error. |
| # Two ways of securely registering an Eddystone-EID beacon with the service |
| # are supported: |
| # |
| # 1. Perform an ECDH key exchange via this API, including a previous call |
| # to `GET /v1beta1/eidparams`. In this case the fields |
| # `beacon_ecdh_public_key` and `service_ecdh_public_key` should be |
| # populated and `beacon_identity_key` should not be populated. This |
| # method ensures that only the two parties in the ECDH key exchange can |
| # compute the identity key, which becomes a secret between them. |
| # 2. Derive or obtain the beacon's identity key via other secure means |
| # (perhaps an ECDH key exchange between the beacon and a mobile device |
| # or any other secure method), and then submit the resulting identity key |
| # to the service. In this case `beacon_identity_key` field should be |
| # populated, and neither of `beacon_ecdh_public_key` nor |
| # `service_ecdh_public_key` fields should be. The security of this method |
| # depends on how securely the parties involved (in particular the |
| # bluetooth client) handle the identity key, and obviously on how |
| # securely the identity key was generated. |
| # |
| # See [the Eddystone specification](https://github.com/google/eddystone/tree/master/eddystone-eid) at GitHub. |
| "rotationPeriodExponent": 42, # 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](https://github.com/google/eddystone/tree/master/eddystone-eid) |
| # 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. |
| "initialClockValue": "A String", # 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. |
| "serviceEcdhPublicKey": "A String", # 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, and `beacon_identity_key` must not be. |
| "initialEid": "A String", # An initial ephemeral ID calculated using the clock value submitted as |
| # `initial_clock_value`, and the secret key generated by the |
| # Diffie-Hellman key exchange using `service_ecdh_public_key` and |
| # `service_ecdh_public_key`. This initial EID value will be used by the |
| # service to confirm that the key exchange process was successful. |
| "beaconEcdhPublicKey": "A String", # 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, and `beacon_identity_key` must not be. |
| "beaconIdentityKey": "A String", # The private key of the beacon. If this field is populated, |
| # `beacon_ecdh_public_key` and `service_ecdh_public_key` must not be |
| # populated. |
| }, |
| "advertisedId": { # Defines a unique identifier of a beacon as broadcast by the device. # The identifier of a beacon as advertised by it. This field must be |
| # populated when registering. It may be empty when updating a beacon |
| # record because it is ignored in updates. |
| # |
| # When registering a beacon that broadcasts Eddystone-EID, this field |
| # should contain a "stable" Eddystone-UID that identifies the beacon and |
| # links it to its attachments. The stable Eddystone-UID is only used for |
| # administering the beacon. |
| "type": "A String", # Specifies the identifier type. |
| # Required. |
| "id": "A String", # The actual beacon identifier, as broadcast by the beacon hardware. Must be |
| # [base64](http://tools.ietf.org/html/rfc4648#section-4) 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. |
| }, |
| "beaconName": "A 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, or `5` for AltBeacon. |
| # |
| # This field must be left empty when registering. After reading a beacon, |
| # clients can use the name for future operations. |
| "expectedStability": "A String", # Expected location stability. This is set when the beacon is registered or |
| # updated, not automatically detected in any way. |
| # Optional. |
| "properties": { # Properties of the beacon device, for example battery type or firmware |
| # version. |
| # Optional. |
| "a_key": "A String", |
| }, |
| "provisioningKey": "A String", # 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. |
| } |
| |
| projectId: string, 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. |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # Details of a beacon device. |
| "status": "A String", # Current status of the beacon. |
| # Required. |
| "description": "A String", # Free text used to identify and describe the beacon. Maximum length 140 |
| # characters. |
| # Optional. |
| "indoorLevel": { # Indoor level, a human-readable string as returned by Google Maps APIs, # The indoor level information for this beacon, if known. As returned by the |
| # Google Maps API. |
| # Optional. |
| # useful to indicate which floor of a building a beacon is located on. |
| "name": "A String", # The name of this level. |
| }, |
| "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # The location of the beacon, expressed as a latitude and longitude pair. |
| # This location is given when the beacon is registered or updated. It does |
| # not necessarily indicate the actual current location of the beacon. |
| # Optional. |
| # of doubles representing degrees latitude and degrees longitude. Unless |
| # specified otherwise, this must conform to the |
| # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84 |
| # standard</a>. Values must be within normalized ranges. |
| # |
| # Example of normalization code in Python: |
| # |
| # def NormalizeLongitude(longitude): |
| # """Wraps decimal degrees longitude to [-180.0, 180.0].""" |
| # q, r = divmod(longitude, 360.0) |
| # if r > 180.0 or (r == 180.0 and q <= -1.0): |
| # return r - 360.0 |
| # return r |
| # |
| # def NormalizeLatLng(latitude, longitude): |
| # """Wraps decimal degrees latitude and longitude to |
| # [-90.0, 90.0] and [-180.0, 180.0], respectively.""" |
| # r = latitude % 360.0 |
| # if r <= 90.0: |
| # return r, NormalizeLongitude(longitude) |
| # elif r >= 270.0: |
| # return r - 360, NormalizeLongitude(longitude) |
| # else: |
| # return 180 - r, NormalizeLongitude(longitude + 180.0) |
| # |
| # assert 180.0 == NormalizeLongitude(180.0) |
| # assert -180.0 == NormalizeLongitude(-180.0) |
| # assert -179.0 == NormalizeLongitude(181.0) |
| # assert (0.0, 0.0) == NormalizeLatLng(360.0, 0.0) |
| # assert (0.0, 0.0) == NormalizeLatLng(-360.0, 0.0) |
| # assert (85.0, 180.0) == NormalizeLatLng(95.0, 0.0) |
| # assert (-85.0, -170.0) == NormalizeLatLng(-95.0, 10.0) |
| # assert (90.0, 10.0) == NormalizeLatLng(90.0, 10.0) |
| # assert (-90.0, -10.0) == NormalizeLatLng(-90.0, -10.0) |
| # assert (0.0, -170.0) == NormalizeLatLng(-180.0, 10.0) |
| # assert (0.0, -170.0) == NormalizeLatLng(180.0, 10.0) |
| # assert (-90.0, 10.0) == NormalizeLatLng(270.0, 10.0) |
| # assert (90.0, 10.0) == NormalizeLatLng(-270.0, 10.0) |
| "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0]. |
| "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0]. |
| }, |
| "placeId": "A String", # The [Google Places API](/places/place-id) 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. |
| "ephemeralIdRegistration": { # Write-only registration parameters for beacons using Eddystone-EID format. # Write-only registration parameters for beacons using Eddystone-EID |
| # (remotely resolved ephemeral ID) format. This information will not be |
| # populated in API responses. When submitting this data, the `advertised_id` |
| # field must contain an ID of type Eddystone-UID. Any other ID type will |
| # result in an error. |
| # Two ways of securely registering an Eddystone-EID beacon with the service |
| # are supported: |
| # |
| # 1. Perform an ECDH key exchange via this API, including a previous call |
| # to `GET /v1beta1/eidparams`. In this case the fields |
| # `beacon_ecdh_public_key` and `service_ecdh_public_key` should be |
| # populated and `beacon_identity_key` should not be populated. This |
| # method ensures that only the two parties in the ECDH key exchange can |
| # compute the identity key, which becomes a secret between them. |
| # 2. Derive or obtain the beacon's identity key via other secure means |
| # (perhaps an ECDH key exchange between the beacon and a mobile device |
| # or any other secure method), and then submit the resulting identity key |
| # to the service. In this case `beacon_identity_key` field should be |
| # populated, and neither of `beacon_ecdh_public_key` nor |
| # `service_ecdh_public_key` fields should be. The security of this method |
| # depends on how securely the parties involved (in particular the |
| # bluetooth client) handle the identity key, and obviously on how |
| # securely the identity key was generated. |
| # |
| # See [the Eddystone specification](https://github.com/google/eddystone/tree/master/eddystone-eid) at GitHub. |
| "rotationPeriodExponent": 42, # 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](https://github.com/google/eddystone/tree/master/eddystone-eid) |
| # 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. |
| "initialClockValue": "A String", # 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. |
| "serviceEcdhPublicKey": "A String", # 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, and `beacon_identity_key` must not be. |
| "initialEid": "A String", # An initial ephemeral ID calculated using the clock value submitted as |
| # `initial_clock_value`, and the secret key generated by the |
| # Diffie-Hellman key exchange using `service_ecdh_public_key` and |
| # `service_ecdh_public_key`. This initial EID value will be used by the |
| # service to confirm that the key exchange process was successful. |
| "beaconEcdhPublicKey": "A String", # 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, and `beacon_identity_key` must not be. |
| "beaconIdentityKey": "A String", # The private key of the beacon. If this field is populated, |
| # `beacon_ecdh_public_key` and `service_ecdh_public_key` must not be |
| # populated. |
| }, |
| "advertisedId": { # Defines a unique identifier of a beacon as broadcast by the device. # The identifier of a beacon as advertised by it. This field must be |
| # populated when registering. It may be empty when updating a beacon |
| # record because it is ignored in updates. |
| # |
| # When registering a beacon that broadcasts Eddystone-EID, this field |
| # should contain a "stable" Eddystone-UID that identifies the beacon and |
| # links it to its attachments. The stable Eddystone-UID is only used for |
| # administering the beacon. |
| "type": "A String", # Specifies the identifier type. |
| # Required. |
| "id": "A String", # The actual beacon identifier, as broadcast by the beacon hardware. Must be |
| # [base64](http://tools.ietf.org/html/rfc4648#section-4) 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. |
| }, |
| "beaconName": "A 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, or `5` for AltBeacon. |
| # |
| # This field must be left empty when registering. After reading a beacon, |
| # clients can use the name for future operations. |
| "expectedStability": "A String", # Expected location stability. This is set when the beacon is registered or |
| # updated, not automatically detected in any way. |
| # Optional. |
| "properties": { # Properties of the beacon device, for example battery type or firmware |
| # version. |
| # Optional. |
| "a_key": "A String", |
| }, |
| "provisioningKey": "A String", # 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. |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="update">update(beaconName, body, projectId=None, x__xgafv=None)</code> |
| <pre>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. |
| |
| Args: |
| beaconName: 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, or `5` for AltBeacon. |
| |
| This field must be left empty when registering. After reading a beacon, |
| clients can use the name for future operations. (required) |
| body: object, The request body. (required) |
| The object takes the form of: |
| |
| { # Details of a beacon device. |
| "status": "A String", # Current status of the beacon. |
| # Required. |
| "description": "A String", # Free text used to identify and describe the beacon. Maximum length 140 |
| # characters. |
| # Optional. |
| "indoorLevel": { # Indoor level, a human-readable string as returned by Google Maps APIs, # The indoor level information for this beacon, if known. As returned by the |
| # Google Maps API. |
| # Optional. |
| # useful to indicate which floor of a building a beacon is located on. |
| "name": "A String", # The name of this level. |
| }, |
| "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # The location of the beacon, expressed as a latitude and longitude pair. |
| # This location is given when the beacon is registered or updated. It does |
| # not necessarily indicate the actual current location of the beacon. |
| # Optional. |
| # of doubles representing degrees latitude and degrees longitude. Unless |
| # specified otherwise, this must conform to the |
| # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84 |
| # standard</a>. Values must be within normalized ranges. |
| # |
| # Example of normalization code in Python: |
| # |
| # def NormalizeLongitude(longitude): |
| # """Wraps decimal degrees longitude to [-180.0, 180.0].""" |
| # q, r = divmod(longitude, 360.0) |
| # if r > 180.0 or (r == 180.0 and q <= -1.0): |
| # return r - 360.0 |
| # return r |
| # |
| # def NormalizeLatLng(latitude, longitude): |
| # """Wraps decimal degrees latitude and longitude to |
| # [-90.0, 90.0] and [-180.0, 180.0], respectively.""" |
| # r = latitude % 360.0 |
| # if r <= 90.0: |
| # return r, NormalizeLongitude(longitude) |
| # elif r >= 270.0: |
| # return r - 360, NormalizeLongitude(longitude) |
| # else: |
| # return 180 - r, NormalizeLongitude(longitude + 180.0) |
| # |
| # assert 180.0 == NormalizeLongitude(180.0) |
| # assert -180.0 == NormalizeLongitude(-180.0) |
| # assert -179.0 == NormalizeLongitude(181.0) |
| # assert (0.0, 0.0) == NormalizeLatLng(360.0, 0.0) |
| # assert (0.0, 0.0) == NormalizeLatLng(-360.0, 0.0) |
| # assert (85.0, 180.0) == NormalizeLatLng(95.0, 0.0) |
| # assert (-85.0, -170.0) == NormalizeLatLng(-95.0, 10.0) |
| # assert (90.0, 10.0) == NormalizeLatLng(90.0, 10.0) |
| # assert (-90.0, -10.0) == NormalizeLatLng(-90.0, -10.0) |
| # assert (0.0, -170.0) == NormalizeLatLng(-180.0, 10.0) |
| # assert (0.0, -170.0) == NormalizeLatLng(180.0, 10.0) |
| # assert (-90.0, 10.0) == NormalizeLatLng(270.0, 10.0) |
| # assert (90.0, 10.0) == NormalizeLatLng(-270.0, 10.0) |
| "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0]. |
| "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0]. |
| }, |
| "placeId": "A String", # The [Google Places API](/places/place-id) 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. |
| "ephemeralIdRegistration": { # Write-only registration parameters for beacons using Eddystone-EID format. # Write-only registration parameters for beacons using Eddystone-EID |
| # (remotely resolved ephemeral ID) format. This information will not be |
| # populated in API responses. When submitting this data, the `advertised_id` |
| # field must contain an ID of type Eddystone-UID. Any other ID type will |
| # result in an error. |
| # Two ways of securely registering an Eddystone-EID beacon with the service |
| # are supported: |
| # |
| # 1. Perform an ECDH key exchange via this API, including a previous call |
| # to `GET /v1beta1/eidparams`. In this case the fields |
| # `beacon_ecdh_public_key` and `service_ecdh_public_key` should be |
| # populated and `beacon_identity_key` should not be populated. This |
| # method ensures that only the two parties in the ECDH key exchange can |
| # compute the identity key, which becomes a secret between them. |
| # 2. Derive or obtain the beacon's identity key via other secure means |
| # (perhaps an ECDH key exchange between the beacon and a mobile device |
| # or any other secure method), and then submit the resulting identity key |
| # to the service. In this case `beacon_identity_key` field should be |
| # populated, and neither of `beacon_ecdh_public_key` nor |
| # `service_ecdh_public_key` fields should be. The security of this method |
| # depends on how securely the parties involved (in particular the |
| # bluetooth client) handle the identity key, and obviously on how |
| # securely the identity key was generated. |
| # |
| # See [the Eddystone specification](https://github.com/google/eddystone/tree/master/eddystone-eid) at GitHub. |
| "rotationPeriodExponent": 42, # 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](https://github.com/google/eddystone/tree/master/eddystone-eid) |
| # 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. |
| "initialClockValue": "A String", # 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. |
| "serviceEcdhPublicKey": "A String", # 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, and `beacon_identity_key` must not be. |
| "initialEid": "A String", # An initial ephemeral ID calculated using the clock value submitted as |
| # `initial_clock_value`, and the secret key generated by the |
| # Diffie-Hellman key exchange using `service_ecdh_public_key` and |
| # `service_ecdh_public_key`. This initial EID value will be used by the |
| # service to confirm that the key exchange process was successful. |
| "beaconEcdhPublicKey": "A String", # 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, and `beacon_identity_key` must not be. |
| "beaconIdentityKey": "A String", # The private key of the beacon. If this field is populated, |
| # `beacon_ecdh_public_key` and `service_ecdh_public_key` must not be |
| # populated. |
| }, |
| "advertisedId": { # Defines a unique identifier of a beacon as broadcast by the device. # The identifier of a beacon as advertised by it. This field must be |
| # populated when registering. It may be empty when updating a beacon |
| # record because it is ignored in updates. |
| # |
| # When registering a beacon that broadcasts Eddystone-EID, this field |
| # should contain a "stable" Eddystone-UID that identifies the beacon and |
| # links it to its attachments. The stable Eddystone-UID is only used for |
| # administering the beacon. |
| "type": "A String", # Specifies the identifier type. |
| # Required. |
| "id": "A String", # The actual beacon identifier, as broadcast by the beacon hardware. Must be |
| # [base64](http://tools.ietf.org/html/rfc4648#section-4) 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. |
| }, |
| "beaconName": "A 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, or `5` for AltBeacon. |
| # |
| # This field must be left empty when registering. After reading a beacon, |
| # clients can use the name for future operations. |
| "expectedStability": "A String", # Expected location stability. This is set when the beacon is registered or |
| # updated, not automatically detected in any way. |
| # Optional. |
| "properties": { # Properties of the beacon device, for example battery type or firmware |
| # version. |
| # Optional. |
| "a_key": "A String", |
| }, |
| "provisioningKey": "A String", # 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. |
| } |
| |
| projectId: 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. |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { # Details of a beacon device. |
| "status": "A String", # Current status of the beacon. |
| # Required. |
| "description": "A String", # Free text used to identify and describe the beacon. Maximum length 140 |
| # characters. |
| # Optional. |
| "indoorLevel": { # Indoor level, a human-readable string as returned by Google Maps APIs, # The indoor level information for this beacon, if known. As returned by the |
| # Google Maps API. |
| # Optional. |
| # useful to indicate which floor of a building a beacon is located on. |
| "name": "A String", # The name of this level. |
| }, |
| "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # The location of the beacon, expressed as a latitude and longitude pair. |
| # This location is given when the beacon is registered or updated. It does |
| # not necessarily indicate the actual current location of the beacon. |
| # Optional. |
| # of doubles representing degrees latitude and degrees longitude. Unless |
| # specified otherwise, this must conform to the |
| # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84 |
| # standard</a>. Values must be within normalized ranges. |
| # |
| # Example of normalization code in Python: |
| # |
| # def NormalizeLongitude(longitude): |
| # """Wraps decimal degrees longitude to [-180.0, 180.0].""" |
| # q, r = divmod(longitude, 360.0) |
| # if r > 180.0 or (r == 180.0 and q <= -1.0): |
| # return r - 360.0 |
| # return r |
| # |
| # def NormalizeLatLng(latitude, longitude): |
| # """Wraps decimal degrees latitude and longitude to |
| # [-90.0, 90.0] and [-180.0, 180.0], respectively.""" |
| # r = latitude % 360.0 |
| # if r <= 90.0: |
| # return r, NormalizeLongitude(longitude) |
| # elif r >= 270.0: |
| # return r - 360, NormalizeLongitude(longitude) |
| # else: |
| # return 180 - r, NormalizeLongitude(longitude + 180.0) |
| # |
| # assert 180.0 == NormalizeLongitude(180.0) |
| # assert -180.0 == NormalizeLongitude(-180.0) |
| # assert -179.0 == NormalizeLongitude(181.0) |
| # assert (0.0, 0.0) == NormalizeLatLng(360.0, 0.0) |
| # assert (0.0, 0.0) == NormalizeLatLng(-360.0, 0.0) |
| # assert (85.0, 180.0) == NormalizeLatLng(95.0, 0.0) |
| # assert (-85.0, -170.0) == NormalizeLatLng(-95.0, 10.0) |
| # assert (90.0, 10.0) == NormalizeLatLng(90.0, 10.0) |
| # assert (-90.0, -10.0) == NormalizeLatLng(-90.0, -10.0) |
| # assert (0.0, -170.0) == NormalizeLatLng(-180.0, 10.0) |
| # assert (0.0, -170.0) == NormalizeLatLng(180.0, 10.0) |
| # assert (-90.0, 10.0) == NormalizeLatLng(270.0, 10.0) |
| # assert (90.0, 10.0) == NormalizeLatLng(-270.0, 10.0) |
| "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0]. |
| "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0]. |
| }, |
| "placeId": "A String", # The [Google Places API](/places/place-id) 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. |
| "ephemeralIdRegistration": { # Write-only registration parameters for beacons using Eddystone-EID format. # Write-only registration parameters for beacons using Eddystone-EID |
| # (remotely resolved ephemeral ID) format. This information will not be |
| # populated in API responses. When submitting this data, the `advertised_id` |
| # field must contain an ID of type Eddystone-UID. Any other ID type will |
| # result in an error. |
| # Two ways of securely registering an Eddystone-EID beacon with the service |
| # are supported: |
| # |
| # 1. Perform an ECDH key exchange via this API, including a previous call |
| # to `GET /v1beta1/eidparams`. In this case the fields |
| # `beacon_ecdh_public_key` and `service_ecdh_public_key` should be |
| # populated and `beacon_identity_key` should not be populated. This |
| # method ensures that only the two parties in the ECDH key exchange can |
| # compute the identity key, which becomes a secret between them. |
| # 2. Derive or obtain the beacon's identity key via other secure means |
| # (perhaps an ECDH key exchange between the beacon and a mobile device |
| # or any other secure method), and then submit the resulting identity key |
| # to the service. In this case `beacon_identity_key` field should be |
| # populated, and neither of `beacon_ecdh_public_key` nor |
| # `service_ecdh_public_key` fields should be. The security of this method |
| # depends on how securely the parties involved (in particular the |
| # bluetooth client) handle the identity key, and obviously on how |
| # securely the identity key was generated. |
| # |
| # See [the Eddystone specification](https://github.com/google/eddystone/tree/master/eddystone-eid) at GitHub. |
| "rotationPeriodExponent": 42, # 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](https://github.com/google/eddystone/tree/master/eddystone-eid) |
| # 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. |
| "initialClockValue": "A String", # 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. |
| "serviceEcdhPublicKey": "A String", # 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, and `beacon_identity_key` must not be. |
| "initialEid": "A String", # An initial ephemeral ID calculated using the clock value submitted as |
| # `initial_clock_value`, and the secret key generated by the |
| # Diffie-Hellman key exchange using `service_ecdh_public_key` and |
| # `service_ecdh_public_key`. This initial EID value will be used by the |
| # service to confirm that the key exchange process was successful. |
| "beaconEcdhPublicKey": "A String", # 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, and `beacon_identity_key` must not be. |
| "beaconIdentityKey": "A String", # The private key of the beacon. If this field is populated, |
| # `beacon_ecdh_public_key` and `service_ecdh_public_key` must not be |
| # populated. |
| }, |
| "advertisedId": { # Defines a unique identifier of a beacon as broadcast by the device. # The identifier of a beacon as advertised by it. This field must be |
| # populated when registering. It may be empty when updating a beacon |
| # record because it is ignored in updates. |
| # |
| # When registering a beacon that broadcasts Eddystone-EID, this field |
| # should contain a "stable" Eddystone-UID that identifies the beacon and |
| # links it to its attachments. The stable Eddystone-UID is only used for |
| # administering the beacon. |
| "type": "A String", # Specifies the identifier type. |
| # Required. |
| "id": "A String", # The actual beacon identifier, as broadcast by the beacon hardware. Must be |
| # [base64](http://tools.ietf.org/html/rfc4648#section-4) 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. |
| }, |
| "beaconName": "A 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, or `5` for AltBeacon. |
| # |
| # This field must be left empty when registering. After reading a beacon, |
| # clients can use the name for future operations. |
| "expectedStability": "A String", # Expected location stability. This is set when the beacon is registered or |
| # updated, not automatically detected in any way. |
| # Optional. |
| "properties": { # Properties of the beacon device, for example battery type or firmware |
| # version. |
| # Optional. |
| "a_key": "A String", |
| }, |
| "provisioningKey": "A String", # 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. |
| }</pre> |
| </div> |
| |
| </body></html> |