Platform Overview

Beacons are one-way transmitters that are used to mark important places and objects. Typically, a beacon is visible to a user's device from a range of a few meters, allowing for highly context-sensitive use cases. Google's beacon platform is designed to make it easy to incorporate these kinds of use cases into your own apps and venues, whether or not you maintain a widely distributed app.

Using the beacon platform, including Google Proximity Beacon API and Eddystone, you can:

The Google Proximity Beacon API can be used to register any beacon that supports one of the following specifications:

Components

The Google beacon platform consists of the following components:

  • Eddystone, the open beacon format from Google that works with Android and iOS.
  • Nearby API for Android and iOS, managing beacon scanning for your own app.
  • Proximity Beacon API for integrating with Google products and your own app.

Beacons with Eddystone

Eddystone is an open beacon format from Google that works with Android and iOS. The process of setting up a beacon to broadcast (sometimes called 'provisioning') can be completed using Google's Beacon Tools app for Android and iOS, using a tool from your manufacturer, or sometimes in bulk by prior arrangement with the beacon manufacturer.

Beacons can be deployed at fixed places such as airports, museums, and bus stops, and attached to movable objects such as bicycles, kiosks, and taxis.

Once you have identified the places and objects that are important to your users, you should decide which frame types to include. In almost all cases, you should include an abstract identifier frame such as Eddystone-UID or Eddystone-EID. These frame types allow the greatest flexibility in how your infrastructure can be used in the future.

Once your beacon is provisioned and deployed, you should register it with Google Proximity Beacon API to get the full benefits of the Google beacon platform. The Google beacon platform provides an abstraction between the beacon hardware or identifier and information associated with the beacon. This allows a single beacon to play a role for many different apps, services, and features. Once a beacon is provisioned and registered, you should focus on attachment data, namespace and types in order to take full advantage of the beacon platform's flexibility.

See Get Started with Beacons to learn more about setting up and using beacons.

Proximity Beacon API

The Proximity Beacon API allows you to interact with Google's cloud registry of beacons. Registering your beacons with Google allows you to:

  • Manage information associated with your beacon network remotely, in real time.
  • Share information associated with your beacons with other projects.
  • Allow Google products to react to your beacon network.
  • Take advantage of power-efficient beacon scanning (including background scans) using Nearby.

In addition to currently launched beacon integrations, registering your beacons with Google will make it easy to take advantage of new Google products as they are announced.

Data use in the Proximity Beacon API

There are two types of data associated with beacons in the Proximity Beacon API.

  1. Registration data, generally used for administration and lower-level integration with Google products (such as Places API integration).
  2. Attachments, used by specific (sets of) apps that scan for beacons using Nearby or Proximity Beacon API directly.

Google may use registration data, including for example Place ID or Latitude/Longitude/Level, across its full range of products.

Attachment data is associated with specific Namespace and Type. The data, together with the namespacedType, makes up the attachment. Attachments in a namespace associated only with your project, and where the visibility is set to UNLISTED, are not used by Google except for the purpose of abuse detection or to improve the performance of Proximity Beacon API.

Since attachments are stored in the cloud, the Google Proximity Beacon API provides a scalable, low-latency way to manage and update the data associated with your deployed beacons. This ensures that your users always see the latest available data, and eliminates the need to manually re-provision beacons.

The diagnostics component of the Google Proximity Beacon API helps you to monitor your fleet of registered beacons, providing a means to detect remotely when individual beacons behave unusually.