{
  "auth": {
    "oauth2": {
      "scopes": {
        "https://www.googleapis.com/auth/userlocation.beacon.registry": {
          "description": "View and modify your beacons"
        }
      }
    }
  },
  "basePath": "",
  "baseUrl": "https://proximitybeacon.googleapis.com/",
  "batchPath": "batch",
  "description": "Registers, manages, indexes, and searches beacons.",
  "discoveryVersion": "v1",
  "documentationLink": "https://developers.google.com/beacons/proximity/",
  "icons": {
    "x16": "http://www.google.com/images/icons/product/search-16.gif",
    "x32": "http://www.google.com/images/icons/product/search-32.gif"
  },
  "id": "proximitybeacon:v1beta1",
  "kind": "discovery#restDescription",
  "name": "proximitybeacon",
  "ownerDomain": "google.com",
  "ownerName": "Google",
  "parameters": {
    "$.xgafv": {
      "description": "V1 error format.",
      "enum": [
        "1",
        "2"
      ],
      "enumDescriptions": [
        "v1 error format",
        "v2 error format"
      ],
      "location": "query",
      "type": "string"
    },
    "access_token": {
      "description": "OAuth access token.",
      "location": "query",
      "type": "string"
    },
    "alt": {
      "default": "json",
      "description": "Data format for response.",
      "enum": [
        "json",
        "media",
        "proto"
      ],
      "enumDescriptions": [
        "Responses with Content-Type of application/json",
        "Media download with context-dependent Content-Type",
        "Responses with Content-Type of application/x-protobuf"
      ],
      "location": "query",
      "type": "string"
    },
    "callback": {
      "description": "JSONP",
      "location": "query",
      "type": "string"
    },
    "fields": {
      "description": "Selector specifying which fields to include in a partial response.",
      "location": "query",
      "type": "string"
    },
    "key": {
      "description": "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.",
      "location": "query",
      "type": "string"
    },
    "oauth_token": {
      "description": "OAuth 2.0 token for the current user.",
      "location": "query",
      "type": "string"
    },
    "prettyPrint": {
      "default": "true",
      "description": "Returns response with indentations and line breaks.",
      "location": "query",
      "type": "boolean"
    },
    "quotaUser": {
      "description": "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.",
      "location": "query",
      "type": "string"
    },
    "uploadType": {
      "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
      "location": "query",
      "type": "string"
    },
    "upload_protocol": {
      "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
      "location": "query",
      "type": "string"
    }
  },
  "protocol": "rest",
  "resources": {
    "beaconinfo": {
      "methods": {
        "getforobserved": {
          "description": "Given one or more beacon observations, returns any beacon information\nand attachments accessible to your application. Authorize by using the\n[API\nkey](https://developers.google.com/beacons/proximity/get-started#request_a_browser_api_key)\nfor the application.",
          "flatPath": "v1beta1/beaconinfo:getforobserved",
          "httpMethod": "POST",
          "id": "proximitybeacon.beaconinfo.getforobserved",
          "parameterOrder": [],
          "parameters": {},
          "path": "v1beta1/beaconinfo:getforobserved",
          "request": {
            "$ref": "GetInfoForObservedBeaconsRequest"
          },
          "response": {
            "$ref": "GetInfoForObservedBeaconsResponse"
          }
        }
      }
    },
    "beacons": {
      "methods": {
        "activate": {
          "description": "Activates a beacon. A beacon that is active will return information\nand attachment data when queried via `beaconinfo.getforobserved`.\nCalling this method on an already active beacon will do nothing (but\nwill return a successful response code).\n\nAuthenticate using an [OAuth access\ntoken](https://developers.google.com/identity/protocols/OAuth2) from a\nsigned-in user with **Is owner** or **Can edit** permissions in the Google\nDevelopers Console project.",
          "flatPath": "v1beta1/beacons/{beaconsId}:activate",
          "httpMethod": "POST",
          "id": "proximitybeacon.beacons.activate",
          "parameterOrder": [
            "beaconName"
          ],
          "parameters": {
            "beaconName": {
              "description": "Beacon that should be activated. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.",
              "location": "path",
              "pattern": "^beacons/[^/]+$",
              "required": true,
              "type": "string"
            },
            "projectId": {
              "description": "The project id of the beacon to activate. If the project id is not\nspecified then the project making the request is used. The project id\nmust match the project that owns the beacon.\nOptional.",
              "location": "query",
              "type": "string"
            }
          },
          "path": "v1beta1/{+beaconName}:activate",
          "response": {
            "$ref": "Empty"
          },
          "scopes": [
            "https://www.googleapis.com/auth/userlocation.beacon.registry"
          ]
        },
        "deactivate": {
          "description": "Deactivates a beacon. Once deactivated, the API will not return\ninformation nor attachment data for the beacon when queried via\n`beaconinfo.getforobserved`. Calling this method on an already inactive\nbeacon will do nothing (but will return a successful response code).\n\nAuthenticate using an [OAuth access\ntoken](https://developers.google.com/identity/protocols/OAuth2) from a\nsigned-in user with **Is owner** or **Can edit** permissions in the Google\nDevelopers Console project.",
          "flatPath": "v1beta1/beacons/{beaconsId}:deactivate",
          "httpMethod": "POST",
          "id": "proximitybeacon.beacons.deactivate",
          "parameterOrder": [
            "beaconName"
          ],
          "parameters": {
            "beaconName": {
              "description": "Beacon that should be deactivated. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.",
              "location": "path",
              "pattern": "^beacons/[^/]+$",
              "required": true,
              "type": "string"
            },
            "projectId": {
              "description": "The project id of the beacon to deactivate. If the project id is not\nspecified then the project making the request is used. The project id must\nmatch the project that owns the beacon.\nOptional.",
              "location": "query",
              "type": "string"
            }
          },
          "path": "v1beta1/{+beaconName}:deactivate",
          "response": {
            "$ref": "Empty"
          },
          "scopes": [
            "https://www.googleapis.com/auth/userlocation.beacon.registry"
          ]
        },
        "decommission": {
          "description": "Decommissions the specified beacon in the service. This beacon will no\nlonger be returned from `beaconinfo.getforobserved`. This operation is\npermanent -- you will not be able to re-register a beacon with this ID\nagain.\n\nAuthenticate using an [OAuth access\ntoken](https://developers.google.com/identity/protocols/OAuth2) from a\nsigned-in user with **Is owner** or **Can edit** permissions in the Google\nDevelopers Console project.",
          "flatPath": "v1beta1/beacons/{beaconsId}:decommission",
          "httpMethod": "POST",
          "id": "proximitybeacon.beacons.decommission",
          "parameterOrder": [
            "beaconName"
          ],
          "parameters": {
            "beaconName": {
              "description": "Beacon that should be decommissioned. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID of the beacon's \"stable\" UID.\nRequired.",
              "location": "path",
              "pattern": "^beacons/[^/]+$",
              "required": true,
              "type": "string"
            },
            "projectId": {
              "description": "The project id of the beacon to decommission. If the project id is not\nspecified then the project making the request is used. The project id\nmust match the project that owns the beacon.\nOptional.",
              "location": "query",
              "type": "string"
            }
          },
          "path": "v1beta1/{+beaconName}:decommission",
          "response": {
            "$ref": "Empty"
          },
          "scopes": [
            "https://www.googleapis.com/auth/userlocation.beacon.registry"
          ]
        },
        "delete": {
          "description": "Deletes the specified beacon including all diagnostics data for the beacon\nas well as any attachments on the beacon (including those belonging to\nother projects). This operation cannot be undone.\n\nAuthenticate using an [OAuth access\ntoken](https://developers.google.com/identity/protocols/OAuth2) from a\nsigned-in user with **Is owner** or **Can edit** permissions in the Google\nDevelopers Console project.",
          "flatPath": "v1beta1/beacons/{beaconsId}",
          "httpMethod": "DELETE",
          "id": "proximitybeacon.beacons.delete",
          "parameterOrder": [
            "beaconName"
          ],
          "parameters": {
            "beaconName": {
              "description": "Beacon that should be deleted. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.",
              "location": "path",
              "pattern": "^beacons/[^/]+$",
              "required": true,
              "type": "string"
            },
            "projectId": {
              "description": "The project id of the beacon to delete. If not provided, the project\nthat is making the request is used.\nOptional.",
              "location": "query",
              "type": "string"
            }
          },
          "path": "v1beta1/{+beaconName}",
          "response": {
            "$ref": "Empty"
          },
          "scopes": [
            "https://www.googleapis.com/auth/userlocation.beacon.registry"
          ]
        },
        "get": {
          "description": "Returns detailed information about the specified beacon.\n\nAuthenticate using an [OAuth access\ntoken](https://developers.google.com/identity/protocols/OAuth2) from a\nsigned-in user with **viewer**, **Is owner** or **Can edit** permissions in\nthe Google Developers Console project.\n\nRequests may supply an Eddystone-EID beacon name in the form:\n`beacons/4!beaconId` where the `beaconId` is the base16 ephemeral ID\nbroadcast by the beacon. The returned `Beacon` object will contain the\nbeacon's stable Eddystone-UID. Clients not authorized to resolve the\nbeacon's ephemeral Eddystone-EID broadcast will receive an error.",
          "flatPath": "v1beta1/beacons/{beaconsId}",
          "httpMethod": "GET",
          "id": "proximitybeacon.beacons.get",
          "parameterOrder": [
            "beaconName"
          ],
          "parameters": {
            "beaconName": {
              "description": "Resource name of this beacon. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.",
              "location": "path",
              "pattern": "^beacons/[^/]+$",
              "required": true,
              "type": "string"
            },
            "projectId": {
              "description": "The project id of the beacon to request. If the project id is not specified\nthen the project making the request is used. The project id must match the\nproject that owns the beacon.\nOptional.",
              "location": "query",
              "type": "string"
            }
          },
          "path": "v1beta1/{+beaconName}",
          "response": {
            "$ref": "Beacon"
          },
          "scopes": [
            "https://www.googleapis.com/auth/userlocation.beacon.registry"
          ]
        },
        "list": {
          "description": "Searches the beacon registry for beacons that match the given search\ncriteria. Only those beacons that the client has permission to list\nwill be returned.\n\nAuthenticate using an [OAuth access\ntoken](https://developers.google.com/identity/protocols/OAuth2) from a\nsigned-in user with **viewer**, **Is owner** or **Can edit** permissions in\nthe Google Developers Console project.",
          "flatPath": "v1beta1/beacons",
          "httpMethod": "GET",
          "id": "proximitybeacon.beacons.list",
          "parameterOrder": [],
          "parameters": {
            "pageSize": {
              "description": "The maximum number of records to return for this request, up to a\nserver-defined upper limit.",
              "format": "int32",
              "location": "query",
              "type": "integer"
            },
            "pageToken": {
              "description": "A pagination token obtained from a previous request to list beacons.",
              "location": "query",
              "type": "string"
            },
            "projectId": {
              "description": "The project id to list beacons under. If not present then the project\ncredential that made the request is used as the project.\nOptional.",
              "location": "query",
              "type": "string"
            },
            "q": {
              "description": "Filter query string that supports the following field filters:\n\n* **description:`\"\u003cstring\u003e\"`**\n  For example: **description:\"Room 3\"**\n  Returns beacons whose description matches tokens in the string \"Room 3\"\n  (not necessarily that exact string).\n  The string must be double-quoted.\n* **status:`\u003cenum\u003e`**\n  For example: **status:active**\n  Returns beacons whose status matches the given value. Values must be\n  one of the Beacon.Status enum values (case insensitive). Accepts\n  multiple filters which will be combined with OR logic.\n* **stability:`\u003cenum\u003e`**\n  For example: **stability:mobile**\n  Returns beacons whose expected stability matches the given value.\n  Values must be one of the Beacon.Stability enum values (case\n  insensitive). Accepts multiple filters which will be combined with\n  OR logic.\n* **place\\_id:`\"\u003cstring\u003e\"`**\n  For example: **place\\_id:\"ChIJVSZzVR8FdkgRXGmmm6SslKw=\"**\n  Returns beacons explicitly registered at the given place, expressed as\n  a Place ID obtained from [Google Places API](/places/place-id). Does not\n  match places inside the given place. Does not consider the beacon's\n  actual location (which may be different from its registered place).\n  Accepts multiple filters that will be combined with OR logic. The place\n  ID must be double-quoted.\n* **registration\\_time`[\u003c|\u003e|\u003c=|\u003e=]\u003cinteger\u003e`**\n  For example: **registration\\_time\u003e=1433116800**\n  Returns beacons whose registration time matches the given filter.\n  Supports the operators: \u003c, \u003e, \u003c=, and \u003e=. Timestamp must be expressed as\n  an integer number of seconds since midnight January 1, 1970 UTC. Accepts\n  at most two filters that will be combined with AND logic, to support\n  \"between\" semantics. If more than two are supplied, the latter ones are\n  ignored.\n* **lat:`\u003cdouble\u003e lng:\u003cdouble\u003e radius:\u003cinteger\u003e`**\n  For example: **lat:51.1232343 lng:-1.093852 radius:1000**\n  Returns beacons whose registered location is within the given circle.\n  When any of these fields are given, all are required. Latitude and\n  longitude must be decimal degrees between -90.0 and 90.0 and between\n  -180.0 and 180.0 respectively. Radius must be an integer number of\n  meters between 10 and 1,000,000 (1000 km).\n* **property:`\"\u003cstring\u003e=\u003cstring\u003e\"`**\n  For example: **property:\"battery-type=CR2032\"**\n  Returns beacons which have a property of the given name and value.\n  Supports multiple filters which will be combined with OR logic.\n  The entire name=value string must be double-quoted as one string.\n* **attachment\\_type:`\"\u003cstring\u003e\"`**\n  For example: **attachment_type:\"my-namespace/my-type\"**\n  Returns beacons having at least one attachment of the given namespaced\n  type. Supports \"any within this namespace\" via the partial wildcard\n  syntax: \"my-namespace/*\". Supports multiple filters which will be\n  combined with OR logic. The string must be double-quoted.\n* **indoor\\_level:`\"\u003cstring\u003e\"`**\n  For example: **indoor\\_level:\"1\"**\n  Returns beacons which are located on the given indoor level. Accepts\n  multiple filters that will be combined with OR logic.\n\nMultiple filters on the same field are combined with OR logic (except\nregistration_time which is combined with AND logic).\nMultiple filters on different fields are combined with AND logic.\nFilters should be separated by spaces.\n\nAs with any HTTP query string parameter, the whole filter expression must\nbe URL-encoded.\n\nExample REST request:\n`GET\n/v1beta1/beacons?q=status:active%20lat:51.123%20lng:-1.095%20radius:1000`",
              "location": "query",
              "type": "string"
            }
          },
          "path": "v1beta1/beacons",
          "response": {
            "$ref": "ListBeaconsResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/userlocation.beacon.registry"
          ]
        },
        "register": {
          "description": "Registers a previously unregistered beacon given its `advertisedId`.\nThese IDs are unique within the system. An ID can be registered only once.\n\nAuthenticate using an [OAuth access\ntoken](https://developers.google.com/identity/protocols/OAuth2) from a\nsigned-in user with **Is owner** or **Can edit** permissions in the Google\nDevelopers Console project.",
          "flatPath": "v1beta1/beacons:register",
          "httpMethod": "POST",
          "id": "proximitybeacon.beacons.register",
          "parameterOrder": [],
          "parameters": {
            "projectId": {
              "description": "The project id of the project the beacon will be registered to. If\nthe project id is not specified then the project making the request\nis used.\nOptional.",
              "location": "query",
              "type": "string"
            }
          },
          "path": "v1beta1/beacons:register",
          "request": {
            "$ref": "Beacon"
          },
          "response": {
            "$ref": "Beacon"
          },
          "scopes": [
            "https://www.googleapis.com/auth/userlocation.beacon.registry"
          ]
        },
        "update": {
          "description": "Updates the information about the specified beacon. **Any field that you do\nnot populate in the submitted beacon will be permanently erased**, so you\nshould follow the \"read, modify, write\" pattern to avoid inadvertently\ndestroying data.\n\nChanges to the beacon status via this method will be  silently ignored.\nTo update beacon status, use the separate methods on this API for\nactivation, deactivation, and decommissioning.\nAuthenticate using an [OAuth access\ntoken](https://developers.google.com/identity/protocols/OAuth2) from a\nsigned-in user with **Is owner** or **Can edit** permissions in the Google\nDevelopers Console project.",
          "flatPath": "v1beta1/beacons/{beaconsId}",
          "httpMethod": "PUT",
          "id": "proximitybeacon.beacons.update",
          "parameterOrder": [
            "beaconName"
          ],
          "parameters": {
            "beaconName": {
              "description": "Resource name of this beacon. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone, `1` for iBeacon, or `5` for AltBeacon.\n\nThis field must be left empty when registering. After reading a beacon,\nclients can use the name for future operations.",
              "location": "path",
              "pattern": "^beacons/[^/]+$",
              "required": true,
              "type": "string"
            },
            "projectId": {
              "description": "The project id of the beacon to update. If the project id is not\nspecified then the project making the request is used. The project id\nmust match the project that owns the beacon.\nOptional.",
              "location": "query",
              "type": "string"
            }
          },
          "path": "v1beta1/{+beaconName}",
          "request": {
            "$ref": "Beacon"
          },
          "response": {
            "$ref": "Beacon"
          },
          "scopes": [
            "https://www.googleapis.com/auth/userlocation.beacon.registry"
          ]
        }
      },
      "resources": {
        "attachments": {
          "methods": {
            "batchDelete": {
              "description": "Deletes multiple attachments on a given beacon. This operation is\npermanent and cannot be undone.\n\nYou can optionally specify `namespacedType` to choose which attachments\nshould be deleted. If you do not specify `namespacedType`,  all your\nattachments on the given beacon will be deleted. You also may explicitly\nspecify `*/*` to delete all.\n\nAuthenticate using an [OAuth access\ntoken](https://developers.google.com/identity/protocols/OAuth2) from a\nsigned-in user with **Is owner** or **Can edit** permissions in the Google\nDevelopers Console project.",
              "flatPath": "v1beta1/beacons/{beaconsId}/attachments:batchDelete",
              "httpMethod": "POST",
              "id": "proximitybeacon.beacons.attachments.batchDelete",
              "parameterOrder": [
                "beaconName"
              ],
              "parameters": {
                "beaconName": {
                  "description": "The beacon whose attachments should be deleted. A beacon name has the\nformat \"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast\nby the beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.",
                  "location": "path",
                  "pattern": "^beacons/[^/]+$",
                  "required": true,
                  "type": "string"
                },
                "namespacedType": {
                  "description": "Specifies the namespace and type of attachments to delete in\n`namespace/type` format. Accepts `*/*` to specify\n\"all types in all namespaces\".\nOptional.",
                  "location": "query",
                  "type": "string"
                },
                "projectId": {
                  "description": "The project id to delete beacon attachments under. This field can be\nused when \"*\" is specified to mean all attachment namespaces. Projects\nmay have multiple attachments with multiple namespaces. If \"*\" is\nspecified and the projectId string is empty, then the project\nmaking the request is used.\nOptional.",
                  "location": "query",
                  "type": "string"
                }
              },
              "path": "v1beta1/{+beaconName}/attachments:batchDelete",
              "response": {
                "$ref": "DeleteAttachmentsResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/userlocation.beacon.registry"
              ]
            },
            "create": {
              "description": "Associates the given data with the specified beacon. Attachment data must\ncontain two parts:\n\u003cul\u003e\n\u003cli\u003eA namespaced type.\u003c/li\u003e\n\u003cli\u003eThe actual attachment data itself.\u003c/li\u003e\n\u003c/ul\u003e\nThe namespaced type consists of two parts, the namespace and the type.\nThe namespace must be one of the values returned by the `namespaces`\nendpoint, while the type can be a string of any characters except for the\nforward slash (`/`) up to 100 characters in length.\n\nAttachment data can be up to 1024 bytes long.\n\nAuthenticate using an [OAuth access\ntoken](https://developers.google.com/identity/protocols/OAuth2) from a\nsigned-in user with **Is owner** or **Can edit** permissions in the Google\nDevelopers Console project.",
              "flatPath": "v1beta1/beacons/{beaconsId}/attachments",
              "httpMethod": "POST",
              "id": "proximitybeacon.beacons.attachments.create",
              "parameterOrder": [
                "beaconName"
              ],
              "parameters": {
                "beaconName": {
                  "description": "Beacon on which the attachment should be created. A beacon name has the\nformat \"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast\nby the beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.",
                  "location": "path",
                  "pattern": "^beacons/[^/]+$",
                  "required": true,
                  "type": "string"
                },
                "projectId": {
                  "description": "The project id of the project the attachment will belong to. If\nthe project id is not specified then the project making the request\nis used.\nOptional.",
                  "location": "query",
                  "type": "string"
                }
              },
              "path": "v1beta1/{+beaconName}/attachments",
              "request": {
                "$ref": "BeaconAttachment"
              },
              "response": {
                "$ref": "BeaconAttachment"
              },
              "scopes": [
                "https://www.googleapis.com/auth/userlocation.beacon.registry"
              ]
            },
            "delete": {
              "description": "Deletes the specified attachment for the given beacon. Each attachment has\na unique attachment name (`attachmentName`) which is returned when you\nfetch the attachment data via this API. You specify this with the delete\nrequest to control which attachment is removed. This operation cannot be\nundone.\n\nAuthenticate using an [OAuth access\ntoken](https://developers.google.com/identity/protocols/OAuth2) from a\nsigned-in user with **Is owner** or **Can edit** permissions in the Google\nDevelopers Console project.",
              "flatPath": "v1beta1/beacons/{beaconsId}/attachments/{attachmentsId}",
              "httpMethod": "DELETE",
              "id": "proximitybeacon.beacons.attachments.delete",
              "parameterOrder": [
                "attachmentName"
              ],
              "parameters": {
                "attachmentName": {
                  "description": "The attachment name (`attachmentName`) of\nthe attachment to remove. For example:\n`beacons/3!893737abc9/attachments/c5e937-af0-494-959-ec49d12738`. For\nEddystone-EID beacons, the beacon ID portion (`3!893737abc9`) may be the\nbeacon's current EID, or its \"stable\" Eddystone-UID.\nRequired.",
                  "location": "path",
                  "pattern": "^beacons/[^/]+/attachments/[^/]+$",
                  "required": true,
                  "type": "string"
                },
                "projectId": {
                  "description": "The project id of the attachment to delete. If not provided, the project\nthat is making the request is used.\nOptional.",
                  "location": "query",
                  "type": "string"
                }
              },
              "path": "v1beta1/{+attachmentName}",
              "response": {
                "$ref": "Empty"
              },
              "scopes": [
                "https://www.googleapis.com/auth/userlocation.beacon.registry"
              ]
            },
            "list": {
              "description": "Returns the attachments for the specified beacon that match the specified\nnamespaced-type pattern.\n\nTo control which namespaced types are returned, you add the\n`namespacedType` query parameter to the request. You must either use\n`*/*`, to return all attachments, or the namespace must be one of\nthe ones returned from the  `namespaces` endpoint.\n\nAuthenticate using an [OAuth access\ntoken](https://developers.google.com/identity/protocols/OAuth2) from a\nsigned-in user with **viewer**, **Is owner** or **Can edit** permissions in\nthe Google Developers Console project.",
              "flatPath": "v1beta1/beacons/{beaconsId}/attachments",
              "httpMethod": "GET",
              "id": "proximitybeacon.beacons.attachments.list",
              "parameterOrder": [
                "beaconName"
              ],
              "parameters": {
                "beaconName": {
                  "description": "Beacon whose attachments should be fetched. A beacon name has the\nformat \"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast\nby the beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5`\nfor AltBeacon. For Eddystone-EID beacons, you may use either the\ncurrent EID or the beacon's \"stable\" UID.\nRequired.",
                  "location": "path",
                  "pattern": "^beacons/[^/]+$",
                  "required": true,
                  "type": "string"
                },
                "namespacedType": {
                  "description": "Specifies the namespace and type of attachment to include in response in\n\u003cvar\u003enamespace/type\u003c/var\u003e format. Accepts `*/*` to specify\n\"all types in all namespaces\".",
                  "location": "query",
                  "type": "string"
                },
                "projectId": {
                  "description": "The project id to list beacon attachments under. This field can be\nused when \"*\" is specified to mean all attachment namespaces. Projects\nmay have multiple attachments with multiple namespaces. If \"*\" is\nspecified and the projectId string is empty, then the project\nmaking the request is used.\nOptional.",
                  "location": "query",
                  "type": "string"
                }
              },
              "path": "v1beta1/{+beaconName}/attachments",
              "response": {
                "$ref": "ListBeaconAttachmentsResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/userlocation.beacon.registry"
              ]
            }
          }
        },
        "diagnostics": {
          "methods": {
            "list": {
              "description": "List the diagnostics for a single beacon. You can also list diagnostics for\nall the beacons owned by your Google Developers Console project by using\nthe beacon name `beacons/-`.\n\nAuthenticate using an [OAuth access\ntoken](https://developers.google.com/identity/protocols/OAuth2) from a\nsigned-in user with **viewer**, **Is owner** or **Can edit** permissions in\nthe Google Developers Console project.",
              "flatPath": "v1beta1/beacons/{beaconsId}/diagnostics",
              "httpMethod": "GET",
              "id": "proximitybeacon.beacons.diagnostics.list",
              "parameterOrder": [
                "beaconName"
              ],
              "parameters": {
                "alertFilter": {
                  "description": "Requests only beacons that have the given alert. For example, to find\nbeacons that have low batteries use `alert_filter=LOW_BATTERY`.",
                  "enum": [
                    "ALERT_UNSPECIFIED",
                    "WRONG_LOCATION",
                    "LOW_BATTERY",
                    "LOW_ACTIVITY"
                  ],
                  "location": "query",
                  "type": "string"
                },
                "beaconName": {
                  "description": "Beacon that the diagnostics are for.",
                  "location": "path",
                  "pattern": "^beacons/[^/]+$",
                  "required": true,
                  "type": "string"
                },
                "pageSize": {
                  "description": "Specifies the maximum number of results to return. Defaults to\n10. Maximum 1000. Optional.",
                  "format": "int32",
                  "location": "query",
                  "type": "integer"
                },
                "pageToken": {
                  "description": "Requests results that occur after the `page_token`, obtained from the\nresponse to a previous request. Optional.",
                  "location": "query",
                  "type": "string"
                },
                "projectId": {
                  "description": "Requests only diagnostic records for the given project id. If not set,\nthen the project making the request will be used for looking up\ndiagnostic records. Optional.",
                  "location": "query",
                  "type": "string"
                }
              },
              "path": "v1beta1/{+beaconName}/diagnostics",
              "response": {
                "$ref": "ListDiagnosticsResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/userlocation.beacon.registry"
              ]
            }
          }
        }
      }
    },
    "namespaces": {
      "methods": {
        "list": {
          "description": "Lists all attachment namespaces owned by your Google Developers Console\nproject. Attachment data associated with a beacon must include a\nnamespaced type, and the namespace must be owned by your project.\n\nAuthenticate using an [OAuth access\ntoken](https://developers.google.com/identity/protocols/OAuth2) from a\nsigned-in user with **viewer**, **Is owner** or **Can edit** permissions in\nthe Google Developers Console project.",
          "flatPath": "v1beta1/namespaces",
          "httpMethod": "GET",
          "id": "proximitybeacon.namespaces.list",
          "parameterOrder": [],
          "parameters": {
            "projectId": {
              "description": "The project id to list namespaces under.\nOptional.",
              "location": "query",
              "type": "string"
            }
          },
          "path": "v1beta1/namespaces",
          "response": {
            "$ref": "ListNamespacesResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/userlocation.beacon.registry"
          ]
        },
        "update": {
          "description": "Updates the information about the specified namespace. Only the namespace\nvisibility can be updated.",
          "flatPath": "v1beta1/namespaces/{namespacesId}",
          "httpMethod": "PUT",
          "id": "proximitybeacon.namespaces.update",
          "parameterOrder": [
            "namespaceName"
          ],
          "parameters": {
            "namespaceName": {
              "description": "Resource name of this namespace. Namespaces names have the format:\n\u003ccode\u003enamespaces/\u003cvar\u003enamespace\u003c/var\u003e\u003c/code\u003e.",
              "location": "path",
              "pattern": "^namespaces/[^/]+$",
              "required": true,
              "type": "string"
            },
            "projectId": {
              "description": "The project id of the namespace to update. If the project id is not\nspecified then the project making the request is used. The project id\nmust match the project that owns the beacon.\nOptional.",
              "location": "query",
              "type": "string"
            }
          },
          "path": "v1beta1/{+namespaceName}",
          "request": {
            "$ref": "Namespace"
          },
          "response": {
            "$ref": "Namespace"
          },
          "scopes": [
            "https://www.googleapis.com/auth/userlocation.beacon.registry"
          ]
        }
      }
    },
    "v1beta1": {
      "methods": {
        "getEidparams": {
          "description": "Gets the Proximity Beacon API's current public key and associated\nparameters used to initiate the Diffie-Hellman key exchange required to\nregister a beacon that broadcasts the Eddystone-EID format. This key\nchanges periodically; clients may cache it and re-use the same public key\nto provision and register multiple beacons. However, clients should be\nprepared to refresh this key when they encounter an error registering an\nEddystone-EID beacon.",
          "flatPath": "v1beta1/eidparams",
          "httpMethod": "GET",
          "id": "proximitybeacon.getEidparams",
          "parameterOrder": [],
          "parameters": {},
          "path": "v1beta1/eidparams",
          "response": {
            "$ref": "EphemeralIdRegistrationParams"
          },
          "scopes": [
            "https://www.googleapis.com/auth/userlocation.beacon.registry"
          ]
        }
      }
    }
  },
  "revision": "20190913",
  "rootUrl": "https://proximitybeacon.googleapis.com/",
  "schemas": {
    "AdvertisedId": {
      "description": "Defines a unique identifier of a beacon as broadcast by the device.",
      "id": "AdvertisedId",
      "properties": {
        "id": {
          "description": "The actual beacon identifier, as broadcast by the beacon hardware. Must be\n[base64](http://tools.ietf.org/html/rfc4648#section-4) encoded in HTTP\nrequests, and will be so encoded (with padding) in responses. The base64\nencoding should be of the binary byte-stream and not any textual (such as\nhex) representation thereof.\nRequired.",
          "format": "byte",
          "type": "string"
        },
        "type": {
          "description": "Specifies the identifier type.\nRequired.",
          "enum": [
            "TYPE_UNSPECIFIED",
            "EDDYSTONE",
            "IBEACON",
            "ALTBEACON",
            "EDDYSTONE_EID"
          ],
          "enumDescriptions": [
            "Do not use this value.",
            "Eddystone, an open beacon format that supports Android and iOS devices\nhttps://github.com/google/eddystone/wiki/Beacon-Specification",
            "Apple iBeacon compatible beacon",
            "See http://altbeacon.org and/or https://github.com/AltBeacon/spec.",
            "Eddystone Ephemeral ID"
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "AttachmentInfo": {
      "description": "A subset of attachment information served via the\n`beaconinfo.getforobserved` method, used when your users encounter your\nbeacons.",
      "id": "AttachmentInfo",
      "properties": {
        "data": {
          "description": "An opaque data container for client-provided data.",
          "format": "byte",
          "type": "string"
        },
        "maxDistanceMeters": {
          "description": "The distance away from the beacon at which this attachment should be\ndelivered to a mobile app.\n\nSetting this to a value greater than zero indicates that the app should\nbehave as if the beacon is \"seen\" when the mobile device is less than this\ndistance away from the beacon.\n\nDifferent attachments on the same beacon can have different max distances.\n\nNote that even though this value is expressed with fractional meter\nprecision, real-world behavior is likley to be much less precise than one\nmeter, due to the nature of current Bluetooth radio technology.\n\nOptional. When not set or zero, the attachment should be delivered at the\nbeacon's outer limit of detection.",
          "format": "double",
          "type": "number"
        },
        "namespacedType": {
          "description": "Specifies what kind of attachment this is. Tells a client how to\ninterpret the `data` field. Format is \u003cvar\u003enamespace/type\u003c/var\u003e, for\nexample \u003ccode\u003escrupulous-wombat-12345/welcome-message\u003c/code\u003e",
          "type": "string"
        }
      },
      "type": "object"
    },
    "Beacon": {
      "description": "Details of a beacon device.",
      "id": "Beacon",
      "properties": {
        "advertisedId": {
          "$ref": "AdvertisedId",
          "description": "The identifier of a beacon as advertised by it. This field must be\npopulated when registering. It may be empty when updating a beacon\nrecord because it is ignored in updates.\n\nWhen registering a beacon that broadcasts Eddystone-EID, this field\nshould contain a \"stable\" Eddystone-UID that identifies the beacon and\nlinks it to its attachments. The stable Eddystone-UID is only used for\nadministering the beacon."
        },
        "beaconName": {
          "description": "Resource name of this beacon. A beacon name has the format\n\"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by\nthe beacon and N is a code for the beacon's type. Possible values are\n`3` for Eddystone, `1` for iBeacon, or `5` for AltBeacon.\n\nThis field must be left empty when registering. After reading a beacon,\nclients can use the name for future operations.",
          "type": "string"
        },
        "description": {
          "description": "Free text used to identify and describe the beacon. Maximum length 140\ncharacters.\nOptional.",
          "type": "string"
        },
        "ephemeralIdRegistration": {
          "$ref": "EphemeralIdRegistration",
          "description": "Write-only registration parameters for beacons using Eddystone-EID\n(remotely resolved ephemeral ID) format. This information will not be\npopulated in API responses. When submitting this data, the `advertised_id`\nfield must contain an ID of type Eddystone-UID. Any other ID type will\nresult in an error."
        },
        "expectedStability": {
          "description": "Expected location stability. This is set when the beacon is registered or\nupdated, not automatically detected in any way.\nOptional.",
          "enum": [
            "STABILITY_UNSPECIFIED",
            "STABLE",
            "PORTABLE",
            "MOBILE",
            "ROVING"
          ],
          "enumDescriptions": [
            "Do not use this value.",
            "Not expected to move, for example a store's front door.",
            "Usually stable but may move rarely, usually within a single place,\nfor example a store display.",
            "Moves frequently, for example a personal item or food truck.",
            "Moves continuously in service, for example a bus or train."
          ],
          "type": "string"
        },
        "indoorLevel": {
          "$ref": "IndoorLevel",
          "description": "The indoor level information for this beacon, if known. As returned by the\nGoogle Maps API.\nOptional."
        },
        "latLng": {
          "$ref": "LatLng",
          "description": "The location of the beacon, expressed as a latitude and longitude pair.\nThis location is given when the beacon is registered or updated. It does\nnot necessarily indicate the actual current location of the beacon.\nOptional."
        },
        "placeId": {
          "description": "The [Google Places API](/places/place-id) Place ID of the place where\nthe beacon is deployed. This is given when the beacon is registered or\nupdated, not automatically detected in any way.\nOptional.",
          "type": "string"
        },
        "properties": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "Properties of the beacon device, for example battery type or firmware\nversion.\nOptional.",
          "type": "object"
        },
        "provisioningKey": {
          "description": "Some beacons may require a user to provide an authorization key before\nchanging any of its configuration (e.g. broadcast frames, transmit power).\nThis field provides a place to store and control access to that key.\nThis field is populated in responses to `GET /v1beta1/beacons/3!beaconId`\nfrom users with write access to the given beacon. That is to say: If the\nuser is authorized to write the beacon's confidential data in the service,\nthe service considers them authorized to configure the beacon. Note\nthat this key grants nothing on the service, only on the beacon itself.",
          "format": "byte",
          "type": "string"
        },
        "status": {
          "description": "Current status of the beacon.\nRequired.",
          "enum": [
            "STATUS_UNSPECIFIED",
            "ACTIVE",
            "DECOMMISSIONED",
            "INACTIVE"
          ],
          "enumDescriptions": [
            "Do not use this value.",
            "The \"normal\" in-use state of a beacon.",
            "Beacon should no longer be used for any purpose. This is irreversible.",
            "The beacon should not be visible to mobile devices. This is reversible."
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "BeaconAttachment": {
      "description": "Project-specific data associated with a beacon.",
      "id": "BeaconAttachment",
      "properties": {
        "attachmentName": {
          "description": "Resource name of this attachment. Attachment names have the format:\n\u003ccode\u003ebeacons/\u003cvar\u003ebeacon_id\u003c/var\u003e/attachments/\u003cvar\u003eattachment_id\u003c/var\u003e\u003c/code\u003e.\nLeave this empty on creation.",
          "type": "string"
        },
        "creationTimeMs": {
          "description": "The UTC time when this attachment was created, in milliseconds since the\nUNIX epoch.",
          "format": "google-datetime",
          "type": "string"
        },
        "data": {
          "description": "An opaque data container for client-provided data. Must be\n[base64](http://tools.ietf.org/html/rfc4648#section-4) encoded in HTTP\nrequests, and will be so encoded (with padding) in responses.\nRequired.",
          "format": "byte",
          "type": "string"
        },
        "maxDistanceMeters": {
          "description": "The distance away from the beacon at which this attachment should be\ndelivered to a mobile app.\n\nSetting this to a value greater than zero indicates that the app should\nbehave as if the beacon is \"seen\" when the mobile device is less than this\ndistance away from the beacon.\n\nDifferent attachments on the same beacon can have different max distances.\n\nNote that even though this value is expressed with fractional meter\nprecision, real-world behavior is likley to be much less precise than one\nmeter, due to the nature of current Bluetooth radio technology.\n\nOptional. When not set or zero, the attachment should be delivered at the\nbeacon's outer limit of detection.\n\nNegative values are invalid and return an error.",
          "format": "double",
          "type": "number"
        },
        "namespacedType": {
          "description": "Specifies what kind of attachment this is. Tells a client how to\ninterpret the `data` field. Format is \u003cvar\u003enamespace/type\u003c/var\u003e. Namespace\nprovides type separation between clients. Type describes the type of\n`data`, for use by the client when parsing the `data` field.\nRequired.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "BeaconInfo": {
      "description": "A subset of beacon information served via the `beaconinfo.getforobserved`\nmethod, which you call when users of your app encounter your beacons.",
      "id": "BeaconInfo",
      "properties": {
        "advertisedId": {
          "$ref": "AdvertisedId",
          "description": "The ID advertised by the beacon."
        },
        "attachments": {
          "description": "Attachments matching the type(s) requested.\nMay be empty if no attachment types were requested.",
          "items": {
            "$ref": "AttachmentInfo"
          },
          "type": "array"
        },
        "beaconName": {
          "description": "The name under which the beacon is registered.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "Date": {
      "description": "Represents a whole or partial calendar date, e.g. a birthday. The time of day\nand time zone are either specified elsewhere or are not significant. The date\nis relative to the Proleptic Gregorian Calendar. This can represent:\n\n* A full date, with non-zero year, month and day values\n* A month and day value, with a zero year, e.g. an anniversary\n* A year on its own, with zero month and day values\n* A year and month value, with a zero day, e.g. a credit card expiration date\n\nRelated types are google.type.TimeOfDay and `google.protobuf.Timestamp`.",
      "id": "Date",
      "properties": {
        "day": {
          "description": "Day of month. Must be from 1 to 31 and valid for the year and month, or 0\nif specifying a year by itself or a year and month where the day is not\nsignificant.",
          "format": "int32",
          "type": "integer"
        },
        "month": {
          "description": "Month of year. Must be from 1 to 12, or 0 if specifying a year without a\nmonth and day.",
          "format": "int32",
          "type": "integer"
        },
        "year": {
          "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.",
          "format": "int32",
          "type": "integer"
        }
      },
      "type": "object"
    },
    "DeleteAttachmentsResponse": {
      "description": "Response for a request to delete attachments.",
      "id": "DeleteAttachmentsResponse",
      "properties": {
        "numDeleted": {
          "description": "The number of attachments that were deleted.",
          "format": "int32",
          "type": "integer"
        }
      },
      "type": "object"
    },
    "Diagnostics": {
      "description": "Diagnostics for a single beacon.",
      "id": "Diagnostics",
      "properties": {
        "alerts": {
          "description": "An unordered list of Alerts that the beacon has.",
          "enumDescriptions": [
            "Invalid value. Should never appear.",
            "The beacon has been reported far from its expected location (the beacon's\nlat_lng field if populated, otherwise, if the beacon's place_id field is\npresent, the center of that place). This may indicate that the beacon has\nbeen moved. This signal is not 100% accurate, but indicates that further\ninvestigation is worthwhile.",
            "The battery level for the beacon is low enough that, given the beacon's\ncurrent use, its battery will run out with in the next 60 days. This\nindicates that the battery should be replaced soon.",
            "The beacon has been reported at a very low rate or not at all. This may\nindicate that the beacon is broken or just that no one has gone near the\nbeacon in recent days. If this status appears unexpectedly, the beacon\nowner should investigate further."
          ],
          "items": {
            "enum": [
              "ALERT_UNSPECIFIED",
              "WRONG_LOCATION",
              "LOW_BATTERY",
              "LOW_ACTIVITY"
            ],
            "type": "string"
          },
          "type": "array"
        },
        "beaconName": {
          "description": "Resource name of the beacon. For Eddystone-EID beacons, this may\nbe the beacon's current EID, or the beacon's \"stable\" Eddystone-UID.",
          "type": "string"
        },
        "estimatedLowBatteryDate": {
          "$ref": "Date",
          "description": "The date when the battery is expected to be low. If the value is missing\nthen there is no estimate for when the battery will be low.\nThis value is only an estimate, not an exact date."
        }
      },
      "type": "object"
    },
    "Empty": {
      "description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n    service Foo {\n      rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n    }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
      "id": "Empty",
      "properties": {},
      "type": "object"
    },
    "EphemeralIdRegistration": {
      "description": "Write-only registration parameters for beacons using Eddystone-EID format.\nTwo ways of securely registering an Eddystone-EID beacon with the service\nare supported:\n\n1. Perform an ECDH key exchange via this API, including a previous call\n   to `GET /v1beta1/eidparams`. In this case the fields\n   `beacon_ecdh_public_key` and `service_ecdh_public_key` should be\n   populated and `beacon_identity_key` should not be populated. This\n   method ensures that only the two parties in the ECDH key exchange can\n   compute the identity key, which becomes a secret between them.\n2. Derive or obtain the beacon's identity key via other secure means\n   (perhaps an ECDH key exchange between the beacon and a mobile device\n   or any other secure method), and then submit the resulting identity key\n   to the service. In this case `beacon_identity_key` field should be\n   populated, and neither of `beacon_ecdh_public_key` nor\n   `service_ecdh_public_key` fields should be. The security of this method\n   depends on how securely the parties involved (in particular the\n   bluetooth client) handle the identity key, and obviously on how\n   securely the identity key was generated.\n\nSee [the Eddystone\nspecification](https://github.com/google/eddystone/tree/master/eddystone-eid)\nat GitHub.",
      "id": "EphemeralIdRegistration",
      "properties": {
        "beaconEcdhPublicKey": {
          "description": "The beacon's public key used for the Elliptic curve Diffie-Hellman\nkey exchange. When this field is populated, `service_ecdh_public_key`\nmust also be populated, and `beacon_identity_key` must not be.",
          "format": "byte",
          "type": "string"
        },
        "beaconIdentityKey": {
          "description": "The private key of the beacon. If this field is populated,\n`beacon_ecdh_public_key` and `service_ecdh_public_key` must not be\npopulated.",
          "format": "byte",
          "type": "string"
        },
        "initialClockValue": {
          "description": "The initial clock value of the beacon. The beacon's clock must have\nbegun counting at this value immediately prior to transmitting this\nvalue to the resolving service. Significant delay in transmitting this\nvalue to the service risks registration or resolution failures. If a\nvalue is not provided, the default is zero.",
          "format": "uint64",
          "type": "string"
        },
        "initialEid": {
          "description": "An initial ephemeral ID calculated using the clock value submitted as\n`initial_clock_value`, and the secret key generated by the\nDiffie-Hellman key exchange using `service_ecdh_public_key` and\n`service_ecdh_public_key`. This initial EID value will be used by the\nservice to confirm that the key exchange process was successful.",
          "format": "byte",
          "type": "string"
        },
        "rotationPeriodExponent": {
          "description": "Indicates the nominal period between each rotation of the beacon's\nephemeral ID. \"Nominal\" because the beacon should randomize the\nactual interval. See [the spec at\ngithub](https://github.com/google/eddystone/tree/master/eddystone-eid)\nfor details. This value corresponds to a power-of-two scaler on the\nbeacon's clock: when the scaler value is K, the beacon will begin\nbroadcasting a new ephemeral ID on average every 2^K seconds.",
          "format": "uint32",
          "type": "integer"
        },
        "serviceEcdhPublicKey": {
          "description": "The service's public key used for the Elliptic curve Diffie-Hellman\nkey exchange. When this field is populated, `beacon_ecdh_public_key`\nmust also be populated, and `beacon_identity_key` must not be.",
          "format": "byte",
          "type": "string"
        }
      },
      "type": "object"
    },
    "EphemeralIdRegistrationParams": {
      "description": "Information a client needs to provision and register beacons that\nbroadcast Eddystone-EID format beacon IDs, using Elliptic curve\nDiffie-Hellman key exchange. See\n[the Eddystone\nspecification](https://github.com/google/eddystone/tree/master/eddystone-eid)\nat GitHub.",
      "id": "EphemeralIdRegistrationParams",
      "properties": {
        "maxRotationPeriodExponent": {
          "description": "Indicates the maximum rotation period supported by the service.\nSee\nEddystoneEidRegistration.rotation_period_exponent",
          "format": "uint32",
          "type": "integer"
        },
        "minRotationPeriodExponent": {
          "description": "Indicates the minimum rotation period supported by the service.\nSee\nEddystoneEidRegistration.rotation_period_exponent",
          "format": "uint32",
          "type": "integer"
        },
        "serviceEcdhPublicKey": {
          "description": "The beacon service's public key for use by a beacon to derive its\nIdentity Key using Elliptic Curve Diffie-Hellman key exchange.",
          "format": "byte",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GetInfoForObservedBeaconsRequest": {
      "description": "Request for beacon and attachment information about beacons that\na mobile client has encountered \"in the wild\".",
      "id": "GetInfoForObservedBeaconsRequest",
      "properties": {
        "namespacedTypes": {
          "description": "Specifies what kind of attachments to include in the response.\nWhen given, the response will include only attachments of the given types.\nWhen empty, no attachments will be returned. Must be in the format\n\u003cvar\u003enamespace/type\u003c/var\u003e. Accepts `*` to specify all types in\nall namespaces owned by the client.\nOptional.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "observations": {
          "description": "The beacons that the client has encountered.\nAt least one must be given.",
          "items": {
            "$ref": "Observation"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "GetInfoForObservedBeaconsResponse": {
      "description": "Information about the requested beacons, optionally including attachment\ndata.",
      "id": "GetInfoForObservedBeaconsResponse",
      "properties": {
        "beacons": {
          "description": "Public information about beacons.\nMay be empty if the request matched no beacons.",
          "items": {
            "$ref": "BeaconInfo"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "IndoorLevel": {
      "description": "Indoor level, a human-readable string as returned by Google Maps APIs,\nuseful to indicate which floor of a building a beacon is located on.",
      "id": "IndoorLevel",
      "properties": {
        "name": {
          "description": "The name of this level.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "LatLng": {
      "description": "An object representing a latitude/longitude pair. This is expressed as a pair\nof doubles representing degrees latitude and degrees longitude. Unless\nspecified otherwise, this must conform to the\n\u003ca href=\"http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf\"\u003eWGS84\nstandard\u003c/a\u003e. Values must be within normalized ranges.",
      "id": "LatLng",
      "properties": {
        "latitude": {
          "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].",
          "format": "double",
          "type": "number"
        },
        "longitude": {
          "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].",
          "format": "double",
          "type": "number"
        }
      },
      "type": "object"
    },
    "ListBeaconAttachmentsResponse": {
      "description": "Response to `ListBeaconAttachments` that contains the requested attachments.",
      "id": "ListBeaconAttachmentsResponse",
      "properties": {
        "attachments": {
          "description": "The attachments that corresponded to the request params.",
          "items": {
            "$ref": "BeaconAttachment"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "ListBeaconsResponse": {
      "description": "Response that contains list beacon results and pagination help.",
      "id": "ListBeaconsResponse",
      "properties": {
        "beacons": {
          "description": "The beacons that matched the search criteria.",
          "items": {
            "$ref": "Beacon"
          },
          "type": "array"
        },
        "nextPageToken": {
          "description": "An opaque pagination token that the client may provide in their next\nrequest to retrieve the next page of results.",
          "type": "string"
        },
        "totalCount": {
          "description": "Estimate of the total number of beacons matched by the query. Higher\nvalues may be less accurate.",
          "format": "int64",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ListDiagnosticsResponse": {
      "description": "Response that contains the requested diagnostics.",
      "id": "ListDiagnosticsResponse",
      "properties": {
        "diagnostics": {
          "description": "The diagnostics matching the given request.",
          "items": {
            "$ref": "Diagnostics"
          },
          "type": "array"
        },
        "nextPageToken": {
          "description": "Token that can be used for pagination. Returned only if the\nrequest matches more beacons than can be returned in this response.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ListNamespacesResponse": {
      "description": "Response to ListNamespacesRequest that contains all the project's namespaces.",
      "id": "ListNamespacesResponse",
      "properties": {
        "namespaces": {
          "description": "The attachments that corresponded to the request params.",
          "items": {
            "$ref": "Namespace"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "Namespace": {
      "description": "An attachment namespace defines read and write access for all the attachments\ncreated under it. Each namespace is globally unique, and owned by one\nproject which is the only project that can create attachments under it.",
      "id": "Namespace",
      "properties": {
        "namespaceName": {
          "description": "Resource name of this namespace. Namespaces names have the format:\n\u003ccode\u003enamespaces/\u003cvar\u003enamespace\u003c/var\u003e\u003c/code\u003e.",
          "type": "string"
        },
        "servingVisibility": {
          "description": "Specifies what clients may receive attachments under this namespace\nvia `beaconinfo.getforobserved`.",
          "enum": [
            "VISIBILITY_UNSPECIFIED",
            "UNLISTED",
            "PUBLIC"
          ],
          "enumDescriptions": [
            "Do not use this value.",
            "Served only to the project that owns the namespace.",
            "Any project can subscribe to attachments under the namespace."
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "Observation": {
      "description": "Represents one beacon observed once.",
      "id": "Observation",
      "properties": {
        "advertisedId": {
          "$ref": "AdvertisedId",
          "description": "The ID advertised by the beacon the client has encountered.\n\nIf the submitted `advertised_id` type is Eddystone-EID, then the client\nmust be authorized to resolve the given beacon. Otherwise no data will be\nreturned for that beacon.\nRequired."
        },
        "telemetry": {
          "description": "The array of telemetry bytes received from the beacon. The server is\nresponsible for parsing it. This field may frequently be empty, as\nwith a beacon that transmits telemetry only occasionally.",
          "format": "byte",
          "type": "string"
        },
        "timestampMs": {
          "description": "Time when the beacon was observed.",
          "format": "google-datetime",
          "type": "string"
        }
      },
      "type": "object"
    }
  },
  "servicePath": "",
  "title": "Proximity Beacon API",
  "version": "v1beta1",
  "version_module": true
}