{
  "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 key](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 token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers 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 token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers 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 token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers 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 token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers 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 token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **viewer**, **Is owner** or **Can edit**\npermissions in the 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 token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **viewer**, **Is owner** or **Can edit**\npermissions in the 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 /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 token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers 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 token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers 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 token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers 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 token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers 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 token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **Is owner** or **Can edit** permissions in the\nGoogle Developers 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 token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **viewer**, **Is owner** or **Can edit**\npermissions in the 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 token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **viewer**, **Is owner** or **Can edit**\npermissions in the 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 token](https://developers.google.com/identity/protocols/OAuth2)\nfrom a signed-in user with **viewer**, **Is owner** or **Can edit**\npermissions in the 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": "20181008",
  "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 specification](https://github.com/google/eddystone/tree/master/eddystone-eid) at 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 github](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 specification](https://github.com/google/eddystone/tree/master/eddystone-eid) at GitHub.",
      "id": "EphemeralIdRegistrationParams",
      "properties": {
        "maxRotationPeriodExponent": {
          "description": "Indicates the maximum rotation period supported by the service.\nSee EddystoneEidRegistration.rotation_period_exponent",
          "format": "uint32",
          "type": "integer"
        },
        "minRotationPeriodExponent": {
          "description": "Indicates the minimum rotation period supported by the service.\nSee EddystoneEidRegistration.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
}