google-api-client 0.10.0 → 0.10.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (193) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +4 -0
  3. data/README.md +1 -1
  4. data/api_names.yaml +37747 -36512
  5. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  6. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +1016 -114
  7. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +426 -22
  8. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +481 -95
  9. data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
  10. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +27 -10
  11. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +1 -0
  12. data/generated/google/apis/admin_reports_v1.rb +2 -2
  13. data/generated/google/apis/adsense_v1_4.rb +1 -1
  14. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  15. data/generated/google/apis/analytics_v3.rb +1 -1
  16. data/generated/google/apis/analyticsreporting_v4.rb +4 -4
  17. data/generated/google/apis/analyticsreporting_v4/classes.rb +428 -428
  18. data/generated/google/apis/analyticsreporting_v4/representations.rb +108 -108
  19. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  20. data/generated/google/apis/androidenterprise_v1/classes.rb +60 -66
  21. data/generated/google/apis/androidenterprise_v1/service.rb +12 -11
  22. data/generated/google/apis/androidpublisher_v2.rb +1 -1
  23. data/generated/google/apis/androidpublisher_v2/classes.rb +7 -0
  24. data/generated/google/apis/androidpublisher_v2/representations.rb +1 -0
  25. data/generated/google/apis/androidpublisher_v2/service.rb +1 -1
  26. data/generated/google/apis/appsactivity_v1.rb +3 -3
  27. data/generated/google/apis/appsactivity_v1/service.rb +1 -1
  28. data/generated/google/apis/appstate_v1.rb +1 -1
  29. data/generated/google/apis/bigquery_v2.rb +1 -1
  30. data/generated/google/apis/bigquery_v2/classes.rb +34 -8
  31. data/generated/google/apis/bigquery_v2/representations.rb +15 -0
  32. data/generated/google/apis/calendar_v3.rb +1 -1
  33. data/generated/google/apis/calendar_v3/classes.rb +3 -5
  34. data/generated/google/apis/classroom_v1.rb +25 -22
  35. data/generated/google/apis/classroom_v1/classes.rb +910 -1001
  36. data/generated/google/apis/classroom_v1/representations.rb +240 -240
  37. data/generated/google/apis/classroom_v1/service.rb +1064 -1272
  38. data/generated/google/apis/cloudbilling_v1.rb +3 -3
  39. data/generated/google/apis/cloudbilling_v1/classes.rb +76 -75
  40. data/generated/google/apis/cloudbilling_v1/representations.rb +17 -17
  41. data/generated/google/apis/cloudbilling_v1/service.rb +117 -110
  42. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  43. data/generated/google/apis/cloudbuild_v1/classes.rb +238 -238
  44. data/generated/google/apis/cloudbuild_v1/representations.rb +48 -48
  45. data/generated/google/apis/cloudbuild_v1/service.rb +176 -176
  46. data/generated/google/apis/clouddebugger_v2.rb +4 -4
  47. data/generated/google/apis/clouddebugger_v2/classes.rb +315 -315
  48. data/generated/google/apis/clouddebugger_v2/representations.rb +90 -90
  49. data/generated/google/apis/clouddebugger_v2/service.rb +152 -152
  50. data/generated/google/apis/cloudkms_v1.rb +35 -0
  51. data/generated/google/apis/cloudkms_v1/classes.rb +1039 -0
  52. data/generated/google/apis/cloudkms_v1/representations.rb +448 -0
  53. data/generated/google/apis/cloudkms_v1/service.rb +933 -0
  54. data/generated/google/apis/cloudkms_v1beta1.rb +1 -1
  55. data/generated/google/apis/cloudkms_v1beta1/classes.rb +645 -605
  56. data/generated/google/apis/cloudkms_v1beta1/representations.rb +136 -136
  57. data/generated/google/apis/cloudkms_v1beta1/service.rb +258 -264
  58. data/generated/google/apis/cloudmonitoring_v2beta2.rb +1 -1
  59. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  60. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +677 -456
  61. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +154 -89
  62. data/generated/google/apis/cloudresourcemanager_v1/service.rb +380 -279
  63. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +4 -4
  64. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +247 -114
  65. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +72 -40
  66. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +202 -208
  67. data/generated/google/apis/cloudtrace_v1.rb +4 -4
  68. data/generated/google/apis/cloudtrace_v1/classes.rb +39 -39
  69. data/generated/google/apis/cloudtrace_v1/representations.rb +13 -13
  70. data/generated/google/apis/cloudtrace_v1/service.rb +18 -18
  71. data/generated/google/apis/compute_beta.rb +1 -1
  72. data/generated/google/apis/compute_beta/classes.rb +813 -82
  73. data/generated/google/apis/compute_beta/representations.rb +305 -0
  74. data/generated/google/apis/compute_beta/service.rb +971 -180
  75. data/generated/google/apis/compute_v1.rb +1 -1
  76. data/generated/google/apis/compute_v1/classes.rb +147 -21
  77. data/generated/google/apis/compute_v1/representations.rb +38 -0
  78. data/generated/google/apis/compute_v1/service.rb +347 -65
  79. data/generated/google/apis/content_v2.rb +1 -1
  80. data/generated/google/apis/content_v2/classes.rb +2 -1
  81. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  82. data/generated/google/apis/dataflow_v1b3/classes.rb +3352 -3110
  83. data/generated/google/apis/dataflow_v1b3/representations.rb +812 -730
  84. data/generated/google/apis/dataflow_v1b3/service.rb +264 -183
  85. data/generated/google/apis/dataproc_v1.rb +1 -1
  86. data/generated/google/apis/dataproc_v1/classes.rb +1200 -1164
  87. data/generated/google/apis/dataproc_v1/representations.rb +220 -204
  88. data/generated/google/apis/dataproc_v1/service.rb +299 -299
  89. data/generated/google/apis/datastore_v1.rb +4 -4
  90. data/generated/google/apis/datastore_v1/classes.rb +688 -688
  91. data/generated/google/apis/datastore_v1/representations.rb +167 -167
  92. data/generated/google/apis/datastore_v1/service.rb +68 -68
  93. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  94. data/generated/google/apis/deploymentmanager_v2/classes.rb +13 -3
  95. data/generated/google/apis/dns_v1.rb +1 -1
  96. data/generated/google/apis/dns_v2beta1.rb +1 -1
  97. data/generated/google/apis/doubleclickbidmanager_v1.rb +1 -1
  98. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +1 -1
  99. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  100. data/generated/google/apis/drive_v2.rb +1 -1
  101. data/generated/google/apis/drive_v2/classes.rb +487 -15
  102. data/generated/google/apis/drive_v2/representations.rb +120 -0
  103. data/generated/google/apis/drive_v2/service.rb +355 -38
  104. data/generated/google/apis/drive_v3.rb +1 -1
  105. data/generated/google/apis/drive_v3/classes.rb +416 -14
  106. data/generated/google/apis/drive_v3/representations.rb +99 -0
  107. data/generated/google/apis/drive_v3/service.rb +315 -28
  108. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  109. data/generated/google/apis/games_management_v1management.rb +1 -1
  110. data/generated/google/apis/games_v1.rb +1 -1
  111. data/generated/google/apis/genomics_v1.rb +7 -7
  112. data/generated/google/apis/genomics_v1/classes.rb +2301 -2301
  113. data/generated/google/apis/genomics_v1/representations.rb +239 -239
  114. data/generated/google/apis/genomics_v1/service.rb +599 -599
  115. data/generated/google/apis/gmail_v1.rb +2 -2
  116. data/generated/google/apis/gmail_v1/service.rb +18 -1
  117. data/generated/google/apis/groupssettings_v1.rb +1 -1
  118. data/generated/google/apis/iam_v1.rb +1 -1
  119. data/generated/google/apis/iam_v1/classes.rb +440 -440
  120. data/generated/google/apis/iam_v1/representations.rb +96 -96
  121. data/generated/google/apis/iam_v1/service.rb +150 -150
  122. data/generated/google/apis/kgsearch_v1/service.rb +13 -13
  123. data/generated/google/apis/language_v1beta1.rb +1 -1
  124. data/generated/google/apis/language_v1beta1/classes.rb +235 -235
  125. data/generated/google/apis/language_v1beta1/representations.rb +73 -73
  126. data/generated/google/apis/language_v1beta1/service.rb +49 -49
  127. data/generated/google/apis/licensing_v1.rb +1 -1
  128. data/generated/google/apis/logging_v2beta1.rb +1 -1
  129. data/generated/google/apis/logging_v2beta1/classes.rb +888 -879
  130. data/generated/google/apis/logging_v2beta1/representations.rb +129 -129
  131. data/generated/google/apis/logging_v2beta1/service.rb +315 -316
  132. data/generated/google/apis/manufacturers_v1/classes.rb +139 -139
  133. data/generated/google/apis/manufacturers_v1/representations.rb +30 -30
  134. data/generated/google/apis/manufacturers_v1/service.rb +32 -32
  135. data/generated/google/apis/monitoring_v3.rb +4 -4
  136. data/generated/google/apis/monitoring_v3/classes.rb +229 -229
  137. data/generated/google/apis/monitoring_v3/representations.rb +45 -45
  138. data/generated/google/apis/monitoring_v3/service.rb +141 -141
  139. data/generated/google/apis/partners_v2.rb +3 -3
  140. data/generated/google/apis/partners_v2/classes.rb +1837 -483
  141. data/generated/google/apis/partners_v2/representations.rb +614 -157
  142. data/generated/google/apis/partners_v2/service.rb +881 -150
  143. data/generated/google/apis/people_v1.rb +1 -1
  144. data/generated/google/apis/people_v1/classes.rb +517 -465
  145. data/generated/google/apis/people_v1/representations.rb +138 -107
  146. data/generated/google/apis/people_v1/service.rb +56 -49
  147. data/generated/google/apis/plus_domains_v1.rb +1 -1
  148. data/generated/google/apis/plus_v1.rb +1 -1
  149. data/generated/google/apis/proximitybeacon_v1beta1.rb +1 -1
  150. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +529 -458
  151. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +98 -97
  152. data/generated/google/apis/proximitybeacon_v1beta1/service.rb +494 -370
  153. data/generated/google/apis/pubsub_v1.rb +4 -4
  154. data/generated/google/apis/pubsub_v1/classes.rb +203 -203
  155. data/generated/google/apis/pubsub_v1/representations.rb +65 -65
  156. data/generated/google/apis/pubsub_v1/service.rb +226 -217
  157. data/generated/google/apis/reseller_v1.rb +1 -1
  158. data/generated/google/apis/reseller_v1/classes.rb +213 -61
  159. data/generated/google/apis/reseller_v1/representations.rb +27 -0
  160. data/generated/google/apis/reseller_v1/service.rb +240 -47
  161. data/generated/google/apis/script_v1.rb +14 -14
  162. data/generated/google/apis/script_v1/classes.rb +95 -95
  163. data/generated/google/apis/script_v1/representations.rb +25 -25
  164. data/generated/google/apis/sheets_v4.rb +1 -1
  165. data/generated/google/apis/sheets_v4/classes.rb +4346 -4300
  166. data/generated/google/apis/sheets_v4/representations.rb +853 -837
  167. data/generated/google/apis/sheets_v4/service.rb +32 -32
  168. data/generated/google/apis/slides_v1.rb +1 -1
  169. data/generated/google/apis/slides_v1/classes.rb +804 -748
  170. data/generated/google/apis/slides_v1/representations.rb +204 -187
  171. data/generated/google/apis/slides_v1/service.rb +16 -16
  172. data/generated/google/apis/speech_v1beta1.rb +1 -1
  173. data/generated/google/apis/speech_v1beta1/classes.rb +57 -57
  174. data/generated/google/apis/speech_v1beta1/representations.rb +19 -19
  175. data/generated/google/apis/speech_v1beta1/service.rb +66 -66
  176. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  177. data/generated/google/apis/sqladmin_v1beta4/classes.rb +32 -7
  178. data/generated/google/apis/sqladmin_v1beta4/representations.rb +16 -0
  179. data/generated/google/apis/sqladmin_v1beta4/service.rb +9 -2
  180. data/generated/google/apis/storage_v1.rb +1 -1
  181. data/generated/google/apis/storage_v1/service.rb +10 -7
  182. data/generated/google/apis/vision_v1.rb +1 -1
  183. data/generated/google/apis/vision_v1/classes.rb +1393 -865
  184. data/generated/google/apis/vision_v1/representations.rb +367 -102
  185. data/generated/google/apis/vision_v1/service.rb +4 -4
  186. data/generated/google/apis/youtube_analytics_v1.rb +1 -1
  187. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  188. data/generated/google/apis/youtubereporting_v1.rb +4 -4
  189. data/generated/google/apis/youtubereporting_v1/classes.rb +93 -93
  190. data/generated/google/apis/youtubereporting_v1/representations.rb +25 -25
  191. data/generated/google/apis/youtubereporting_v1/service.rb +108 -108
  192. data/lib/google/apis/version.rb +1 -1
  193. metadata +34 -30
@@ -46,14 +46,9 @@ module Google
46
46
  super('https://people.googleapis.com/', '')
47
47
  end
48
48
 
49
- # Provides information about a person resource for a resource name. Use
50
- # `people/me` to indicate the authenticated user.
51
- # @param [String] resource_name
52
- # The resource name of the person to provide information about.
53
- # - To get information about the authenticated user, specify `people/me`.
54
- # - To get information about any user, specify the resource name that
55
- # identifies the user, such as the resource names returned by
56
- # [`people.connections.list`](/people/api/rest/v1/people.connections/list).
49
+ # Provides information about a list of specific people by specifying a list
50
+ # of requested resource names. Use `people/me` to indicate the authenticated
51
+ # user.
57
52
  # @param [String] request_mask_include_field
58
53
  # Comma-separated list of fields to be included in the response. Omitting
59
54
  # this field will include all fields except for connections.list requests,
@@ -61,37 +56,47 @@ module Google
61
56
  # photo, and profile url.
62
57
  # Each path should start with `person.`: for example, `person.names` or
63
58
  # `person.photos`.
59
+ # @param [Array<String>, String] resource_names
60
+ # The resource name, such as one returned by
61
+ # [`people.connections.list`](/people/api/rest/v1/people.connections/list),
62
+ # of one of the people to provide information about. You can include this
63
+ # parameter up to 50 times in one request.
64
+ # @param [String] fields
65
+ # Selector specifying which fields to include in a partial response.
64
66
  # @param [String] quota_user
65
67
  # Available to use for quota purposes for server-side applications. Can be any
66
68
  # arbitrary string assigned to a user, but should not exceed 40 characters.
67
- # @param [String] fields
68
- # Selector specifying which fields to include in a partial response.
69
69
  # @param [Google::Apis::RequestOptions] options
70
70
  # Request-specific options
71
71
  #
72
72
  # @yield [result, err] Result & error if block supplied
73
- # @yieldparam result [Google::Apis::PeopleV1::Person] parsed result object
73
+ # @yieldparam result [Google::Apis::PeopleV1::GetPeopleResponse] parsed result object
74
74
  # @yieldparam err [StandardError] error object if request failed
75
75
  #
76
- # @return [Google::Apis::PeopleV1::Person]
76
+ # @return [Google::Apis::PeopleV1::GetPeopleResponse]
77
77
  #
78
78
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
79
79
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
80
80
  # @raise [Google::Apis::AuthorizationError] Authorization is required
81
- def get_person(resource_name, request_mask_include_field: nil, quota_user: nil, fields: nil, options: nil, &block)
82
- command = make_simple_command(:get, 'v1/{+resourceName}', options)
83
- command.response_representation = Google::Apis::PeopleV1::Person::Representation
84
- command.response_class = Google::Apis::PeopleV1::Person
85
- command.params['resourceName'] = resource_name unless resource_name.nil?
81
+ def get_people(request_mask_include_field: nil, resource_names: nil, fields: nil, quota_user: nil, options: nil, &block)
82
+ command = make_simple_command(:get, 'v1/people:batchGet', options)
83
+ command.response_representation = Google::Apis::PeopleV1::GetPeopleResponse::Representation
84
+ command.response_class = Google::Apis::PeopleV1::GetPeopleResponse
86
85
  command.query['requestMask.includeField'] = request_mask_include_field unless request_mask_include_field.nil?
87
- command.query['quotaUser'] = quota_user unless quota_user.nil?
86
+ command.query['resourceNames'] = resource_names unless resource_names.nil?
88
87
  command.query['fields'] = fields unless fields.nil?
88
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
89
89
  execute_or_queue_command(command, &block)
90
90
  end
91
91
 
92
- # Provides information about a list of specific people by specifying a list
93
- # of requested resource names. Use `people/me` to indicate the authenticated
94
- # user.
92
+ # Provides information about a person resource for a resource name. Use
93
+ # `people/me` to indicate the authenticated user.
94
+ # @param [String] resource_name
95
+ # The resource name of the person to provide information about.
96
+ # - To get information about the authenticated user, specify `people/me`.
97
+ # - To get information about any user, specify the resource name that
98
+ # identifies the user, such as the resource names returned by
99
+ # [`people.connections.list`](/people/api/rest/v1/people.connections/list).
95
100
  # @param [String] request_mask_include_field
96
101
  # Comma-separated list of fields to be included in the response. Omitting
97
102
  # this field will include all fields except for connections.list requests,
@@ -99,46 +104,46 @@ module Google
99
104
  # photo, and profile url.
100
105
  # Each path should start with `person.`: for example, `person.names` or
101
106
  # `person.photos`.
102
- # @param [Array<String>, String] resource_names
103
- # The resource name, such as one returned by
104
- # [`people.connections.list`](/people/api/rest/v1/people.connections/list),
105
- # of one of the people to provide information about. You can include this
106
- # parameter up to 50 times in one request.
107
+ # @param [String] fields
108
+ # Selector specifying which fields to include in a partial response.
107
109
  # @param [String] quota_user
108
110
  # Available to use for quota purposes for server-side applications. Can be any
109
111
  # arbitrary string assigned to a user, but should not exceed 40 characters.
110
- # @param [String] fields
111
- # Selector specifying which fields to include in a partial response.
112
112
  # @param [Google::Apis::RequestOptions] options
113
113
  # Request-specific options
114
114
  #
115
115
  # @yield [result, err] Result & error if block supplied
116
- # @yieldparam result [Google::Apis::PeopleV1::GetPeopleResponse] parsed result object
116
+ # @yieldparam result [Google::Apis::PeopleV1::Person] parsed result object
117
117
  # @yieldparam err [StandardError] error object if request failed
118
118
  #
119
- # @return [Google::Apis::PeopleV1::GetPeopleResponse]
119
+ # @return [Google::Apis::PeopleV1::Person]
120
120
  #
121
121
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
122
122
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
123
123
  # @raise [Google::Apis::AuthorizationError] Authorization is required
124
- def get_people(request_mask_include_field: nil, resource_names: nil, quota_user: nil, fields: nil, options: nil, &block)
125
- command = make_simple_command(:get, 'v1/people:batchGet', options)
126
- command.response_representation = Google::Apis::PeopleV1::GetPeopleResponse::Representation
127
- command.response_class = Google::Apis::PeopleV1::GetPeopleResponse
124
+ def get_person(resource_name, request_mask_include_field: nil, fields: nil, quota_user: nil, options: nil, &block)
125
+ command = make_simple_command(:get, 'v1/{+resourceName}', options)
126
+ command.response_representation = Google::Apis::PeopleV1::Person::Representation
127
+ command.response_class = Google::Apis::PeopleV1::Person
128
+ command.params['resourceName'] = resource_name unless resource_name.nil?
128
129
  command.query['requestMask.includeField'] = request_mask_include_field unless request_mask_include_field.nil?
129
- command.query['resourceNames'] = resource_names unless resource_names.nil?
130
- command.query['quotaUser'] = quota_user unless quota_user.nil?
131
130
  command.query['fields'] = fields unless fields.nil?
131
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
132
132
  execute_or_queue_command(command, &block)
133
133
  end
134
134
 
135
135
  # Provides a list of the authenticated user's contacts merged with any
136
136
  # linked profiles.
137
+ # @param [String] resource_name
138
+ # The resource name to return connections for. Only `people/me` is valid.
139
+ # @param [String] sort_order
140
+ # The order in which the connections should be sorted. Defaults to
141
+ # `LAST_MODIFIED_ASCENDING`.
142
+ # @param [Boolean] request_sync_token
143
+ # Whether the response should include a sync token, which can be used to get
144
+ # all changes since the last request.
137
145
  # @param [String] page_token
138
146
  # The token of the page to be returned.
139
- # @param [Fixnum] page_size
140
- # The number of connections to include in the response. Valid values are
141
- # between 1 and 500, inclusive. Defaults to 100.
142
147
  # @param [String] request_mask_include_field
143
148
  # Comma-separated list of fields to be included in the response. Omitting
144
149
  # this field will include all fields except for connections.list requests,
@@ -146,17 +151,17 @@ module Google
146
151
  # photo, and profile url.
147
152
  # Each path should start with `person.`: for example, `person.names` or
148
153
  # `person.photos`.
149
- # @param [String] sort_order
150
- # The order in which the connections should be sorted. Defaults to
151
- # `LAST_MODIFIED_ASCENDING`.
154
+ # @param [Fixnum] page_size
155
+ # The number of connections to include in the response. Valid values are
156
+ # between 1 and 500, inclusive. Defaults to 100.
152
157
  # @param [String] sync_token
153
158
  # A sync token, returned by a previous call to `people.connections.list`.
154
159
  # Only resources changed since the sync token was created will be returned.
160
+ # @param [String] fields
161
+ # Selector specifying which fields to include in a partial response.
155
162
  # @param [String] quota_user
156
163
  # Available to use for quota purposes for server-side applications. Can be any
157
164
  # arbitrary string assigned to a user, but should not exceed 40 characters.
158
- # @param [String] fields
159
- # Selector specifying which fields to include in a partial response.
160
165
  # @param [Google::Apis::RequestOptions] options
161
166
  # Request-specific options
162
167
  #
@@ -169,17 +174,19 @@ module Google
169
174
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
170
175
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
171
176
  # @raise [Google::Apis::AuthorizationError] Authorization is required
172
- def list_person_me_connections(page_token: nil, page_size: nil, request_mask_include_field: nil, sort_order: nil, sync_token: nil, quota_user: nil, fields: nil, options: nil, &block)
173
- command = make_simple_command(:get, 'v1/people/me/connections', options)
177
+ def list_person_connections(resource_name, sort_order: nil, request_sync_token: nil, page_token: nil, request_mask_include_field: nil, page_size: nil, sync_token: nil, fields: nil, quota_user: nil, options: nil, &block)
178
+ command = make_simple_command(:get, 'v1/{+resourceName}/connections', options)
174
179
  command.response_representation = Google::Apis::PeopleV1::ListConnectionsResponse::Representation
175
180
  command.response_class = Google::Apis::PeopleV1::ListConnectionsResponse
181
+ command.params['resourceName'] = resource_name unless resource_name.nil?
182
+ command.query['sortOrder'] = sort_order unless sort_order.nil?
183
+ command.query['requestSyncToken'] = request_sync_token unless request_sync_token.nil?
176
184
  command.query['pageToken'] = page_token unless page_token.nil?
177
- command.query['pageSize'] = page_size unless page_size.nil?
178
185
  command.query['requestMask.includeField'] = request_mask_include_field unless request_mask_include_field.nil?
179
- command.query['sortOrder'] = sort_order unless sort_order.nil?
186
+ command.query['pageSize'] = page_size unless page_size.nil?
180
187
  command.query['syncToken'] = sync_token unless sync_token.nil?
181
- command.query['quotaUser'] = quota_user unless quota_user.nil?
182
188
  command.query['fields'] = fields unless fields.nil?
189
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
183
190
  execute_or_queue_command(command, &block)
184
191
  end
185
192
 
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/+/domains/
26
26
  module PlusDomainsV1
27
27
  VERSION = 'V1'
28
- REVISION = '20170208'
28
+ REVISION = '20170301'
29
29
 
30
30
  # View your circles and the people and pages in them
31
31
  AUTH_PLUS_CIRCLES_READ = 'https://www.googleapis.com/auth/plus.circles.read'
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/+/api/
26
26
  module PlusV1
27
27
  VERSION = 'V1'
28
- REVISION = '20170208'
28
+ REVISION = '20170301'
29
29
 
30
30
  # Know the list of people in your circles, your age range, and language
31
31
  AUTH_PLUS_LOGIN = 'https://www.googleapis.com/auth/plus.login'
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/beacons/proximity/
26
26
  module ProximitybeaconV1beta1
27
27
  VERSION = 'V1beta1'
28
- REVISION = '20160429'
28
+ REVISION = '20170220'
29
29
 
30
30
  # View and modify your beacons
31
31
  AUTH_USERLOCATION_BEACON_REGISTRY = 'https://www.googleapis.com/auth/userlocation.beacon.registry'
@@ -22,115 +22,97 @@ module Google
22
22
  module Apis
23
23
  module ProximitybeaconV1beta1
24
24
 
25
- # Details of a beacon device.
26
- class Beacon
25
+ # Response that contains list beacon results and pagination help.
26
+ class ListBeaconsResponse
27
27
  include Google::Apis::Core::Hashable
28
28
 
29
- # Resource name of this beacon. A beacon name has the format "beacons/N!beaconId"
30
- # where the beaconId is the base16 ID broadcast by the beacon and N is a code
31
- # for the beacon's type. Possible values are `3` for Eddystone, `1` for iBeacon,
32
- # or `5` for AltBeacon. This field must be left empty when registering. After
33
- # reading a beacon, clients can use the name for future operations.
34
- # Corresponds to the JSON property `beaconName`
29
+ # The beacons that matched the search criteria.
30
+ # Corresponds to the JSON property `beacons`
31
+ # @return [Array<Google::Apis::ProximitybeaconV1beta1::Beacon>]
32
+ attr_accessor :beacons
33
+
34
+ # An opaque pagination token that the client may provide in their next
35
+ # request to retrieve the next page of results.
36
+ # Corresponds to the JSON property `nextPageToken`
35
37
  # @return [String]
36
- attr_accessor :beacon_name
38
+ attr_accessor :next_page_token
39
+
40
+ # Estimate of the total number of beacons matched by the query. Higher
41
+ # values may be less accurate.
42
+ # Corresponds to the JSON property `totalCount`
43
+ # @return [String]
44
+ attr_accessor :total_count
45
+
46
+ def initialize(**args)
47
+ update!(**args)
48
+ end
49
+
50
+ # Update properties of this object
51
+ def update!(**args)
52
+ @beacons = args[:beacons] if args.key?(:beacons)
53
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
54
+ @total_count = args[:total_count] if args.key?(:total_count)
55
+ end
56
+ end
57
+
58
+ # Represents one beacon observed once.
59
+ class Observation
60
+ include Google::Apis::Core::Hashable
37
61
 
38
62
  # Defines a unique identifier of a beacon as broadcast by the device.
39
63
  # Corresponds to the JSON property `advertisedId`
40
64
  # @return [Google::Apis::ProximitybeaconV1beta1::AdvertisedId]
41
65
  attr_accessor :advertised_id
42
66
 
43
- # Current status of the beacon. Required.
44
- # Corresponds to the JSON property `status`
67
+ # The array of telemetry bytes received from the beacon. The server is
68
+ # responsible for parsing it. This field may frequently be empty, as
69
+ # with a beacon that transmits telemetry only occasionally.
70
+ # Corresponds to the JSON property `telemetry`
45
71
  # @return [String]
46
- attr_accessor :status
72
+ attr_accessor :telemetry
47
73
 
48
- # The [Google Places API](/places/place-id) Place ID of the place where the
49
- # beacon is deployed. This is given when the beacon is registered or updated,
50
- # not automatically detected in any way. Optional.
51
- # Corresponds to the JSON property `placeId`
74
+ # Time when the beacon was observed.
75
+ # Corresponds to the JSON property `timestampMs`
52
76
  # @return [String]
53
- attr_accessor :place_id
54
-
55
- # An object representing a latitude/longitude pair. This is expressed as a pair
56
- # of doubles representing degrees latitude and degrees longitude. Unless
57
- # specified otherwise, this must conform to the WGS84 standard. Values must be
58
- # within normalized ranges. Example of normalization code in Python: def
59
- # NormalizeLongitude(longitude): """Wraps decimal degrees longitude to [-180.0,
60
- # 180.0].""" q, r = divmod(longitude, 360.0) if r > 180.0 or (r == 180.0 and q <=
61
- # -1.0): return r - 360.0 return r def NormalizeLatLng(latitude, longitude): """
62
- # Wraps decimal degrees latitude and longitude to [-90.0, 90.0] and [-180.0, 180.
63
- # 0], respectively.""" r = latitude % 360.0 if r = 270.0: return r - 360,
64
- # NormalizeLongitude(longitude) else: return 180 - r, NormalizeLongitude(
65
- # longitude + 180.0) assert 180.0 == NormalizeLongitude(180.0) assert -180.0 ==
66
- # NormalizeLongitude(-180.0) assert -179.0 == NormalizeLongitude(181.0) assert (
67
- # 0.0, 0.0) == NormalizeLatLng(360.0, 0.0) assert (0.0, 0.0) == NormalizeLatLng(-
68
- # 360.0, 0.0) assert (85.0, 180.0) == NormalizeLatLng(95.0, 0.0) assert (-85.0, -
69
- # 170.0) == NormalizeLatLng(-95.0, 10.0) assert (90.0, 10.0) == NormalizeLatLng(
70
- # 90.0, 10.0) assert (-90.0, -10.0) == NormalizeLatLng(-90.0, -10.0) assert (0.0,
71
- # -170.0) == NormalizeLatLng(-180.0, 10.0) assert (0.0, -170.0) ==
72
- # NormalizeLatLng(180.0, 10.0) assert (-90.0, 10.0) == NormalizeLatLng(270.0, 10.
73
- # 0) assert (90.0, 10.0) == NormalizeLatLng(-270.0, 10.0)
74
- # Corresponds to the JSON property `latLng`
75
- # @return [Google::Apis::ProximitybeaconV1beta1::LatLng]
76
- attr_accessor :lat_lng
77
-
78
- # Indoor level, a human-readable string as returned by Google Maps APIs, useful
79
- # to indicate which floor of a building a beacon is located on.
80
- # Corresponds to the JSON property `indoorLevel`
81
- # @return [Google::Apis::ProximitybeaconV1beta1::IndoorLevel]
82
- attr_accessor :indoor_level
77
+ attr_accessor :timestamp_ms
83
78
 
84
- # Expected location stability. This is set when the beacon is registered or
85
- # updated, not automatically detected in any way. Optional.
86
- # Corresponds to the JSON property `expectedStability`
87
- # @return [String]
88
- attr_accessor :expected_stability
79
+ def initialize(**args)
80
+ update!(**args)
81
+ end
89
82
 
90
- # Free text used to identify and describe the beacon. Maximum length 140
91
- # characters. Optional.
92
- # Corresponds to the JSON property `description`
93
- # @return [String]
94
- attr_accessor :description
83
+ # Update properties of this object
84
+ def update!(**args)
85
+ @advertised_id = args[:advertised_id] if args.key?(:advertised_id)
86
+ @telemetry = args[:telemetry] if args.key?(:telemetry)
87
+ @timestamp_ms = args[:timestamp_ms] if args.key?(:timestamp_ms)
88
+ end
89
+ end
95
90
 
96
- # Properties of the beacon device, for example battery type or firmware version.
97
- # Optional.
98
- # Corresponds to the JSON property `properties`
99
- # @return [Hash<String,String>]
100
- attr_accessor :properties
91
+ # Diagnostics for a single beacon.
92
+ class Diagnostics
93
+ include Google::Apis::Core::Hashable
101
94
 
102
- # Write-only registration parameters for beacons using Eddystone-EID format. Two
103
- # ways of securely registering an Eddystone-EID beacon with the service are
104
- # supported: 1. Perform an ECDH key exchange via this API, including a previous
105
- # call to `GET /v1beta1/eidparams`. In this case the fields `
106
- # beacon_ecdh_public_key` and `service_ecdh_public_key` should be populated and `
107
- # beacon_identity_key` should not be populated. This method ensures that only
108
- # the two parties in the ECDH key exchange can compute the identity key, which
109
- # becomes a secret between them. 2. Derive or obtain the beacon's identity key
110
- # via other secure means (perhaps an ECDH key exchange between the beacon and a
111
- # mobile device or any other secure method), and then submit the resulting
112
- # identity key to the service. In this case `beacon_identity_key` field should
113
- # be populated, and neither of `beacon_ecdh_public_key` nor `
114
- # service_ecdh_public_key` fields should be. The security of this method depends
115
- # on how securely the parties involved (in particular the bluetooth client)
116
- # handle the identity key, and obviously on how securely the identity key was
117
- # generated. See [the Eddystone specification](https://github.com/google/
118
- # eddystone/tree/master/eddystone-eid) at GitHub.
119
- # Corresponds to the JSON property `ephemeralIdRegistration`
120
- # @return [Google::Apis::ProximitybeaconV1beta1::EphemeralIdRegistration]
121
- attr_accessor :ephemeral_id_registration
95
+ # An unordered list of Alerts that the beacon has.
96
+ # Corresponds to the JSON property `alerts`
97
+ # @return [Array<String>]
98
+ attr_accessor :alerts
122
99
 
123
- # Some beacons may require a user to provide an authorization key before
124
- # changing any of its configuration (e.g. broadcast frames, transmit power).
125
- # This field provides a place to store and control access to that key. This
126
- # field is populated in responses to `GET /v1beta1/beacons/3!beaconId` from
127
- # users with write access to the given beacon. That is to say: If the user is
128
- # authorized to write the beacon's confidential data in the service, the service
129
- # considers them authorized to configure the beacon. Note that this key grants
130
- # nothing on the service, only on the beacon itself.
131
- # Corresponds to the JSON property `provisioningKey`
100
+ # Resource name of the beacon. For Eddystone-EID beacons, this may
101
+ # be the beacon's current EID, or the beacon's "stable" Eddystone-UID.
102
+ # Corresponds to the JSON property `beaconName`
132
103
  # @return [String]
133
- attr_accessor :provisioning_key
104
+ attr_accessor :beacon_name
105
+
106
+ # Represents a whole calendar date, e.g. date of birth. The time of day and
107
+ # time zone are either specified elsewhere or are not significant. The date
108
+ # is relative to the Proleptic Gregorian Calendar. The day may be 0 to
109
+ # represent a year and month where the day is not significant, e.g. credit card
110
+ # expiration date. The year may be 0 to represent a month and day independent
111
+ # of year, e.g. anniversary date. Related types are google.type.TimeOfDay
112
+ # and `google.protobuf.Timestamp`.
113
+ # Corresponds to the JSON property `estimatedLowBatteryDate`
114
+ # @return [Google::Apis::ProximitybeaconV1beta1::Date]
115
+ attr_accessor :estimated_low_battery_date
134
116
 
135
117
  def initialize(**args)
136
118
  update!(**args)
@@ -138,17 +120,9 @@ module Google
138
120
 
139
121
  # Update properties of this object
140
122
  def update!(**args)
123
+ @alerts = args[:alerts] if args.key?(:alerts)
141
124
  @beacon_name = args[:beacon_name] if args.key?(:beacon_name)
142
- @advertised_id = args[:advertised_id] if args.key?(:advertised_id)
143
- @status = args[:status] if args.key?(:status)
144
- @place_id = args[:place_id] if args.key?(:place_id)
145
- @lat_lng = args[:lat_lng] if args.key?(:lat_lng)
146
- @indoor_level = args[:indoor_level] if args.key?(:indoor_level)
147
- @expected_stability = args[:expected_stability] if args.key?(:expected_stability)
148
- @description = args[:description] if args.key?(:description)
149
- @properties = args[:properties] if args.key?(:properties)
150
- @ephemeral_id_registration = args[:ephemeral_id_registration] if args.key?(:ephemeral_id_registration)
151
- @provisioning_key = args[:provisioning_key] if args.key?(:provisioning_key)
125
+ @estimated_low_battery_date = args[:estimated_low_battery_date] if args.key?(:estimated_low_battery_date)
152
126
  end
153
127
  end
154
128
 
@@ -156,16 +130,18 @@ module Google
156
130
  class AdvertisedId
157
131
  include Google::Apis::Core::Hashable
158
132
 
159
- # Specifies the identifier type. Required.
133
+ # Specifies the identifier type.
134
+ # Required.
160
135
  # Corresponds to the JSON property `type`
161
136
  # @return [String]
162
137
  attr_accessor :type
163
138
 
164
- # The actual beacon identifier, as broadcast by the beacon hardware. Must be [
165
- # base64](http://tools.ietf.org/html/rfc4648#section-4) encoded in HTTP requests,
166
- # and will be so encoded (with padding) in responses. The base64 encoding
167
- # should be of the binary byte-stream and not any textual (such as hex)
168
- # representation thereof. Required.
139
+ # The actual beacon identifier, as broadcast by the beacon hardware. Must be
140
+ # [base64](http://tools.ietf.org/html/rfc4648#section-4) encoded in HTTP
141
+ # requests, and will be so encoded (with padding) in responses. The base64
142
+ # encoding should be of the binary byte-stream and not any textual (such as
143
+ # hex) representation thereof.
144
+ # Required.
169
145
  # Corresponds to the JSON property `id`
170
146
  # @return [String]
171
147
  attr_accessor :id
@@ -181,58 +157,14 @@ module Google
181
157
  end
182
158
  end
183
159
 
184
- # An object representing a latitude/longitude pair. This is expressed as a pair
185
- # of doubles representing degrees latitude and degrees longitude. Unless
186
- # specified otherwise, this must conform to the WGS84 standard. Values must be
187
- # within normalized ranges. Example of normalization code in Python: def
188
- # NormalizeLongitude(longitude): """Wraps decimal degrees longitude to [-180.0,
189
- # 180.0].""" q, r = divmod(longitude, 360.0) if r > 180.0 or (r == 180.0 and q <=
190
- # -1.0): return r - 360.0 return r def NormalizeLatLng(latitude, longitude): """
191
- # Wraps decimal degrees latitude and longitude to [-90.0, 90.0] and [-180.0, 180.
192
- # 0], respectively.""" r = latitude % 360.0 if r = 270.0: return r - 360,
193
- # NormalizeLongitude(longitude) else: return 180 - r, NormalizeLongitude(
194
- # longitude + 180.0) assert 180.0 == NormalizeLongitude(180.0) assert -180.0 ==
195
- # NormalizeLongitude(-180.0) assert -179.0 == NormalizeLongitude(181.0) assert (
196
- # 0.0, 0.0) == NormalizeLatLng(360.0, 0.0) assert (0.0, 0.0) == NormalizeLatLng(-
197
- # 360.0, 0.0) assert (85.0, 180.0) == NormalizeLatLng(95.0, 0.0) assert (-85.0, -
198
- # 170.0) == NormalizeLatLng(-95.0, 10.0) assert (90.0, 10.0) == NormalizeLatLng(
199
- # 90.0, 10.0) assert (-90.0, -10.0) == NormalizeLatLng(-90.0, -10.0) assert (0.0,
200
- # -170.0) == NormalizeLatLng(-180.0, 10.0) assert (0.0, -170.0) ==
201
- # NormalizeLatLng(180.0, 10.0) assert (-90.0, 10.0) == NormalizeLatLng(270.0, 10.
202
- # 0) assert (90.0, 10.0) == NormalizeLatLng(-270.0, 10.0)
203
- class LatLng
204
- include Google::Apis::Core::Hashable
205
-
206
- # The latitude in degrees. It must be in the range [-90.0, +90.0].
207
- # Corresponds to the JSON property `latitude`
208
- # @return [Float]
209
- attr_accessor :latitude
210
-
211
- # The longitude in degrees. It must be in the range [-180.0, +180.0].
212
- # Corresponds to the JSON property `longitude`
213
- # @return [Float]
214
- attr_accessor :longitude
215
-
216
- def initialize(**args)
217
- update!(**args)
218
- end
219
-
220
- # Update properties of this object
221
- def update!(**args)
222
- @latitude = args[:latitude] if args.key?(:latitude)
223
- @longitude = args[:longitude] if args.key?(:longitude)
224
- end
225
- end
226
-
227
- # Indoor level, a human-readable string as returned by Google Maps APIs, useful
228
- # to indicate which floor of a building a beacon is located on.
229
- class IndoorLevel
160
+ # Response for a request to delete attachments.
161
+ class DeleteAttachmentsResponse
230
162
  include Google::Apis::Core::Hashable
231
163
 
232
- # The name of this level.
233
- # Corresponds to the JSON property `name`
234
- # @return [String]
235
- attr_accessor :name
164
+ # The number of attachments that were deleted.
165
+ # Corresponds to the JSON property `numDeleted`
166
+ # @return [Fixnum]
167
+ attr_accessor :num_deleted
236
168
 
237
169
  def initialize(**args)
238
170
  update!(**args)
@@ -240,74 +172,79 @@ module Google
240
172
 
241
173
  # Update properties of this object
242
174
  def update!(**args)
243
- @name = args[:name] if args.key?(:name)
175
+ @num_deleted = args[:num_deleted] if args.key?(:num_deleted)
244
176
  end
245
177
  end
246
178
 
247
- # Write-only registration parameters for beacons using Eddystone-EID format. Two
248
- # ways of securely registering an Eddystone-EID beacon with the service are
249
- # supported: 1. Perform an ECDH key exchange via this API, including a previous
250
- # call to `GET /v1beta1/eidparams`. In this case the fields `
251
- # beacon_ecdh_public_key` and `service_ecdh_public_key` should be populated and `
252
- # beacon_identity_key` should not be populated. This method ensures that only
253
- # the two parties in the ECDH key exchange can compute the identity key, which
254
- # becomes a secret between them. 2. Derive or obtain the beacon's identity key
255
- # via other secure means (perhaps an ECDH key exchange between the beacon and a
256
- # mobile device or any other secure method), and then submit the resulting
257
- # identity key to the service. In this case `beacon_identity_key` field should
258
- # be populated, and neither of `beacon_ecdh_public_key` nor `
259
- # service_ecdh_public_key` fields should be. The security of this method depends
260
- # on how securely the parties involved (in particular the bluetooth client)
261
- # handle the identity key, and obviously on how securely the identity key was
262
- # generated. See [the Eddystone specification](https://github.com/google/
263
- # eddystone/tree/master/eddystone-eid) at GitHub.
179
+ # Write-only registration parameters for beacons using Eddystone-EID format.
180
+ # Two ways of securely registering an Eddystone-EID beacon with the service
181
+ # are supported:
182
+ # 1. Perform an ECDH key exchange via this API, including a previous call
183
+ # to `GET /v1beta1/eidparams`. In this case the fields
184
+ # `beacon_ecdh_public_key` and `service_ecdh_public_key` should be
185
+ # populated and `beacon_identity_key` should not be populated. This
186
+ # method ensures that only the two parties in the ECDH key exchange can
187
+ # compute the identity key, which becomes a secret between them.
188
+ # 2. Derive or obtain the beacon's identity key via other secure means
189
+ # (perhaps an ECDH key exchange between the beacon and a mobile device
190
+ # or any other secure method), and then submit the resulting identity key
191
+ # to the service. In this case `beacon_identity_key` field should be
192
+ # populated, and neither of `beacon_ecdh_public_key` nor
193
+ # `service_ecdh_public_key` fields should be. The security of this method
194
+ # depends on how securely the parties involved (in particular the
195
+ # bluetooth client) handle the identity key, and obviously on how
196
+ # securely the identity key was generated.
197
+ # See [the Eddystone specification](https://github.com/google/eddystone/tree/
198
+ # master/eddystone-eid) at GitHub.
264
199
  class EphemeralIdRegistration
265
200
  include Google::Apis::Core::Hashable
266
201
 
267
- # The beacon's public key used for the Elliptic curve Diffie-Hellman key
268
- # exchange. When this field is populated, `service_ecdh_public_key` must also be
269
- # populated, and `beacon_identity_key` must not be.
202
+ # The beacon's public key used for the Elliptic curve Diffie-Hellman
203
+ # key exchange. When this field is populated, `service_ecdh_public_key`
204
+ # must also be populated, and `beacon_identity_key` must not be.
270
205
  # Corresponds to the JSON property `beaconEcdhPublicKey`
271
206
  # @return [String]
272
207
  attr_accessor :beacon_ecdh_public_key
273
208
 
274
- # The service's public key used for the Elliptic curve Diffie-Hellman key
275
- # exchange. When this field is populated, `beacon_ecdh_public_key` must also be
276
- # populated, and `beacon_identity_key` must not be.
277
- # Corresponds to the JSON property `serviceEcdhPublicKey`
209
+ # The initial clock value of the beacon. The beacon's clock must have
210
+ # begun counting at this value immediately prior to transmitting this
211
+ # value to the resolving service. Significant delay in transmitting this
212
+ # value to the service risks registration or resolution failures. If a
213
+ # value is not provided, the default is zero.
214
+ # Corresponds to the JSON property `initialClockValue`
278
215
  # @return [String]
279
- attr_accessor :service_ecdh_public_key
216
+ attr_accessor :initial_clock_value
280
217
 
281
- # The private key of the beacon. If this field is populated, `
282
- # beacon_ecdh_public_key` and `service_ecdh_public_key` must not be populated.
218
+ # The private key of the beacon. If this field is populated,
219
+ # `beacon_ecdh_public_key` and `service_ecdh_public_key` must not be
220
+ # populated.
283
221
  # Corresponds to the JSON property `beaconIdentityKey`
284
222
  # @return [String]
285
223
  attr_accessor :beacon_identity_key
286
224
 
287
- # Indicates the nominal period between each rotation of the beacon's ephemeral
288
- # ID. "Nominal" because the beacon should randomize the actual interval. See [
289
- # the spec at github](https://github.com/google/eddystone/tree/master/eddystone-
290
- # eid) for details. This value corresponds to a power-of-two scaler on the
291
- # beacon's clock: when the scaler value is K, the beacon will begin broadcasting
292
- # a new ephemeral ID on average every 2^K seconds.
225
+ # The service's public key used for the Elliptic curve Diffie-Hellman
226
+ # key exchange. When this field is populated, `beacon_ecdh_public_key`
227
+ # must also be populated, and `beacon_identity_key` must not be.
228
+ # Corresponds to the JSON property `serviceEcdhPublicKey`
229
+ # @return [String]
230
+ attr_accessor :service_ecdh_public_key
231
+
232
+ # Indicates the nominal period between each rotation of the beacon's
233
+ # ephemeral ID. "Nominal" because the beacon should randomize the
234
+ # actual interval. See [the spec at github](https://github.com/google/eddystone/
235
+ # tree/master/eddystone-eid)
236
+ # for details. This value corresponds to a power-of-two scaler on the
237
+ # beacon's clock: when the scaler value is K, the beacon will begin
238
+ # broadcasting a new ephemeral ID on average every 2^K seconds.
293
239
  # Corresponds to the JSON property `rotationPeriodExponent`
294
240
  # @return [Fixnum]
295
241
  attr_accessor :rotation_period_exponent
296
242
 
297
- # The initial clock value of the beacon. The beacon's clock must have begun
298
- # counting at this value immediately prior to transmitting this value to the
299
- # resolving service. Significant delay in transmitting this value to the service
300
- # risks registration or resolution failures. If a value is not provided, the
301
- # default is zero.
302
- # Corresponds to the JSON property `initialClockValue`
303
- # @return [String]
304
- attr_accessor :initial_clock_value
305
-
306
- # An initial ephemeral ID calculated using the clock value submitted as `
307
- # initial_clock_value`, and the secret key generated by the Diffie-Hellman key
308
- # exchange using `service_ecdh_public_key` and `service_ecdh_public_key`. This
309
- # initial EID value will be used by the service to confirm that the key exchange
310
- # process was successful.
243
+ # An initial ephemeral ID calculated using the clock value submitted as
244
+ # `initial_clock_value`, and the secret key generated by the
245
+ # Diffie-Hellman key exchange using `service_ecdh_public_key` and
246
+ # `service_ecdh_public_key`. This initial EID value will be used by the
247
+ # service to confirm that the key exchange process was successful.
311
248
  # Corresponds to the JSON property `initialEid`
312
249
  # @return [String]
313
250
  attr_accessor :initial_eid
@@ -319,51 +256,60 @@ module Google
319
256
  # Update properties of this object
320
257
  def update!(**args)
321
258
  @beacon_ecdh_public_key = args[:beacon_ecdh_public_key] if args.key?(:beacon_ecdh_public_key)
322
- @service_ecdh_public_key = args[:service_ecdh_public_key] if args.key?(:service_ecdh_public_key)
259
+ @initial_clock_value = args[:initial_clock_value] if args.key?(:initial_clock_value)
323
260
  @beacon_identity_key = args[:beacon_identity_key] if args.key?(:beacon_identity_key)
261
+ @service_ecdh_public_key = args[:service_ecdh_public_key] if args.key?(:service_ecdh_public_key)
324
262
  @rotation_period_exponent = args[:rotation_period_exponent] if args.key?(:rotation_period_exponent)
325
- @initial_clock_value = args[:initial_clock_value] if args.key?(:initial_clock_value)
326
263
  @initial_eid = args[:initial_eid] if args.key?(:initial_eid)
327
264
  end
328
265
  end
329
266
 
330
- # A generic empty message that you can re-use to avoid defining duplicated empty
331
- # messages in your APIs. A typical example is to use it as the request or the
332
- # response type of an API method. For instance: service Foo ` rpc Bar(google.
333
- # protobuf.Empty) returns (google.protobuf.Empty); ` The JSON representation for
334
- # `Empty` is empty JSON object ````.
335
- class Empty
267
+ # Response that contains the requested diagnostics.
268
+ class ListDiagnosticsResponse
336
269
  include Google::Apis::Core::Hashable
337
270
 
271
+ # Token that can be used for pagination. Returned only if the
272
+ # request matches more beacons than can be returned in this response.
273
+ # Corresponds to the JSON property `nextPageToken`
274
+ # @return [String]
275
+ attr_accessor :next_page_token
276
+
277
+ # The diagnostics matching the given request.
278
+ # Corresponds to the JSON property `diagnostics`
279
+ # @return [Array<Google::Apis::ProximitybeaconV1beta1::Diagnostics>]
280
+ attr_accessor :diagnostics
281
+
338
282
  def initialize(**args)
339
283
  update!(**args)
340
284
  end
341
285
 
342
286
  # Update properties of this object
343
287
  def update!(**args)
288
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
289
+ @diagnostics = args[:diagnostics] if args.key?(:diagnostics)
344
290
  end
345
291
  end
346
292
 
347
- # Response that contains list beacon results and pagination help.
348
- class ListBeaconsResponse
293
+ # A subset of beacon information served via the `beaconinfo.getforobserved`
294
+ # method, which you call when users of your app encounter your beacons.
295
+ class BeaconInfo
349
296
  include Google::Apis::Core::Hashable
350
297
 
351
- # The beacons that matched the search criteria.
352
- # Corresponds to the JSON property `beacons`
353
- # @return [Array<Google::Apis::ProximitybeaconV1beta1::Beacon>]
354
- attr_accessor :beacons
298
+ # Attachments matching the type(s) requested.
299
+ # May be empty if no attachment types were requested.
300
+ # Corresponds to the JSON property `attachments`
301
+ # @return [Array<Google::Apis::ProximitybeaconV1beta1::AttachmentInfo>]
302
+ attr_accessor :attachments
355
303
 
356
- # An opaque pagination token that the client may provide in their next request
357
- # to retrieve the next page of results.
358
- # Corresponds to the JSON property `nextPageToken`
304
+ # The name under which the beacon is registered.
305
+ # Corresponds to the JSON property `beaconName`
359
306
  # @return [String]
360
- attr_accessor :next_page_token
307
+ attr_accessor :beacon_name
361
308
 
362
- # Estimate of the total number of beacons matched by the query. Higher values
363
- # may be less accurate.
364
- # Corresponds to the JSON property `totalCount`
365
- # @return [String]
366
- attr_accessor :total_count
309
+ # Defines a unique identifier of a beacon as broadcast by the device.
310
+ # Corresponds to the JSON property `advertisedId`
311
+ # @return [Google::Apis::ProximitybeaconV1beta1::AdvertisedId]
312
+ attr_accessor :advertised_id
367
313
 
368
314
  def initialize(**args)
369
315
  update!(**args)
@@ -371,36 +317,57 @@ module Google
371
317
 
372
318
  # Update properties of this object
373
319
  def update!(**args)
374
- @beacons = args[:beacons] if args.key?(:beacons)
375
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
376
- @total_count = args[:total_count] if args.key?(:total_count)
320
+ @attachments = args[:attachments] if args.key?(:attachments)
321
+ @beacon_name = args[:beacon_name] if args.key?(:beacon_name)
322
+ @advertised_id = args[:advertised_id] if args.key?(:advertised_id)
377
323
  end
378
324
  end
379
325
 
380
- # Project-specific data associated with a beacon.
381
- class BeaconAttachment
326
+ # Indoor level, a human-readable string as returned by Google Maps APIs,
327
+ # useful to indicate which floor of a building a beacon is located on.
328
+ class IndoorLevel
382
329
  include Google::Apis::Core::Hashable
383
330
 
384
- # Resource name of this attachment. Attachment names have the format: beacons/
385
- # beacon_id/attachments/attachment_id. Leave this empty on creation.
386
- # Corresponds to the JSON property `attachmentName`
331
+ # The name of this level.
332
+ # Corresponds to the JSON property `name`
387
333
  # @return [String]
388
- attr_accessor :attachment_name
334
+ attr_accessor :name
389
335
 
390
- # Specifies what kind of attachment this is. Tells a client how to interpret the
391
- # `data` field. Format is namespace/type. Namespace provides type separation
392
- # between clients. Type describes the type of `data`, for use by the client when
393
- # parsing the `data` field. Required.
394
- # Corresponds to the JSON property `namespacedType`
395
- # @return [String]
396
- attr_accessor :namespaced_type
336
+ def initialize(**args)
337
+ update!(**args)
338
+ end
397
339
 
398
- # An opaque data container for client-provided data. Must be [base64](http://
399
- # tools.ietf.org/html/rfc4648#section-4) encoded in HTTP requests, and will be
400
- # so encoded (with padding) in responses. Required.
401
- # Corresponds to the JSON property `data`
340
+ # Update properties of this object
341
+ def update!(**args)
342
+ @name = args[:name] if args.key?(:name)
343
+ end
344
+ end
345
+
346
+ # Information a client needs to provision and register beacons that
347
+ # broadcast Eddystone-EID format beacon IDs, using Elliptic curve
348
+ # Diffie-Hellman key exchange. See
349
+ # [the Eddystone specification](https://github.com/google/eddystone/tree/master/
350
+ # eddystone-eid) at GitHub.
351
+ class EphemeralIdRegistrationParams
352
+ include Google::Apis::Core::Hashable
353
+
354
+ # The beacon service's public key for use by a beacon to derive its
355
+ # Identity Key using Elliptic Curve Diffie-Hellman key exchange.
356
+ # Corresponds to the JSON property `serviceEcdhPublicKey`
402
357
  # @return [String]
403
- attr_accessor :data
358
+ attr_accessor :service_ecdh_public_key
359
+
360
+ # Indicates the minimum rotation period supported by the service.
361
+ # See EddystoneEidRegistration.rotation_period_exponent
362
+ # Corresponds to the JSON property `minRotationPeriodExponent`
363
+ # @return [Fixnum]
364
+ attr_accessor :min_rotation_period_exponent
365
+
366
+ # Indicates the maximum rotation period supported by the service.
367
+ # See EddystoneEidRegistration.rotation_period_exponent
368
+ # Corresponds to the JSON property `maxRotationPeriodExponent`
369
+ # @return [Fixnum]
370
+ attr_accessor :max_rotation_period_exponent
404
371
 
405
372
  def initialize(**args)
406
373
  update!(**args)
@@ -408,13 +375,13 @@ module Google
408
375
 
409
376
  # Update properties of this object
410
377
  def update!(**args)
411
- @attachment_name = args[:attachment_name] if args.key?(:attachment_name)
412
- @namespaced_type = args[:namespaced_type] if args.key?(:namespaced_type)
413
- @data = args[:data] if args.key?(:data)
378
+ @service_ecdh_public_key = args[:service_ecdh_public_key] if args.key?(:service_ecdh_public_key)
379
+ @min_rotation_period_exponent = args[:min_rotation_period_exponent] if args.key?(:min_rotation_period_exponent)
380
+ @max_rotation_period_exponent = args[:max_rotation_period_exponent] if args.key?(:max_rotation_period_exponent)
414
381
  end
415
382
  end
416
383
 
417
- # Response to ListBeaconAttachments that contains the requested attachments.
384
+ # Response to `ListBeaconAttachments` that contains the requested attachments.
418
385
  class ListBeaconAttachmentsResponse
419
386
  include Google::Apis::Core::Hashable
420
387
 
@@ -433,33 +400,52 @@ module Google
433
400
  end
434
401
  end
435
402
 
436
- # Response for a request to delete attachments.
437
- class DeleteAttachmentsResponse
403
+ # An attachment namespace defines read and write access for all the attachments
404
+ # created under it. Each namespace is globally unique, and owned by one
405
+ # project which is the only project that can create attachments under it.
406
+ class Namespace
438
407
  include Google::Apis::Core::Hashable
439
408
 
440
- # The number of attachments that were deleted.
441
- # Corresponds to the JSON property `numDeleted`
442
- # @return [Fixnum]
443
- attr_accessor :num_deleted
444
-
409
+ # Resource name of this namespace. Namespaces names have the format:
410
+ # <code>namespaces/<var>namespace</var></code>.
411
+ # Corresponds to the JSON property `namespaceName`
412
+ # @return [String]
413
+ attr_accessor :namespace_name
414
+
415
+ # Specifies what clients may receive attachments under this namespace
416
+ # via `beaconinfo.getforobserved`.
417
+ # Corresponds to the JSON property `servingVisibility`
418
+ # @return [String]
419
+ attr_accessor :serving_visibility
420
+
445
421
  def initialize(**args)
446
422
  update!(**args)
447
423
  end
448
424
 
449
425
  # Update properties of this object
450
426
  def update!(**args)
451
- @num_deleted = args[:num_deleted] if args.key?(:num_deleted)
427
+ @namespace_name = args[:namespace_name] if args.key?(:namespace_name)
428
+ @serving_visibility = args[:serving_visibility] if args.key?(:serving_visibility)
452
429
  end
453
430
  end
454
431
 
455
- # Response to ListNamespacesRequest that contains all the project's namespaces.
456
- class ListNamespacesResponse
432
+ # A subset of attachment information served via the
433
+ # `beaconinfo.getforobserved` method, used when your users encounter your
434
+ # beacons.
435
+ class AttachmentInfo
457
436
  include Google::Apis::Core::Hashable
458
437
 
459
- # The attachments that corresponded to the request params.
460
- # Corresponds to the JSON property `namespaces`
461
- # @return [Array<Google::Apis::ProximitybeaconV1beta1::Namespace>]
462
- attr_accessor :namespaces
438
+ # An opaque data container for client-provided data.
439
+ # Corresponds to the JSON property `data`
440
+ # @return [String]
441
+ attr_accessor :data
442
+
443
+ # Specifies what kind of attachment this is. Tells a client how to
444
+ # interpret the `data` field. Format is <var>namespace/type</var>, for
445
+ # example <code>scrupulous-wombat-12345/welcome-message</code>
446
+ # Corresponds to the JSON property `namespacedType`
447
+ # @return [String]
448
+ attr_accessor :namespaced_type
463
449
 
464
450
  def initialize(**args)
465
451
  update!(**args)
@@ -467,63 +453,147 @@ module Google
467
453
 
468
454
  # Update properties of this object
469
455
  def update!(**args)
470
- @namespaces = args[:namespaces] if args.key?(:namespaces)
456
+ @data = args[:data] if args.key?(:data)
457
+ @namespaced_type = args[:namespaced_type] if args.key?(:namespaced_type)
471
458
  end
472
459
  end
473
460
 
474
- # An attachment namespace defines read and write access for all the attachments
475
- # created under it. Each namespace is globally unique, and owned by one project
476
- # which is the only project that can create attachments under it.
477
- class Namespace
461
+ # Details of a beacon device.
462
+ class Beacon
478
463
  include Google::Apis::Core::Hashable
479
464
 
480
- # Resource name of this namespace. Namespaces names have the format: namespaces/
481
- # namespace.
482
- # Corresponds to the JSON property `namespaceName`
465
+ # Free text used to identify and describe the beacon. Maximum length 140
466
+ # characters.
467
+ # Optional.
468
+ # Corresponds to the JSON property `description`
483
469
  # @return [String]
484
- attr_accessor :namespace_name
470
+ attr_accessor :description
485
471
 
486
- # Specifies what clients may receive attachments under this namespace via `
487
- # beaconinfo.getforobserved`.
488
- # Corresponds to the JSON property `servingVisibility`
472
+ # Some beacons may require a user to provide an authorization key before
473
+ # changing any of its configuration (e.g. broadcast frames, transmit power).
474
+ # This field provides a place to store and control access to that key.
475
+ # This field is populated in responses to `GET /v1beta1/beacons/3!beaconId`
476
+ # from users with write access to the given beacon. That is to say: If the
477
+ # user is authorized to write the beacon's confidential data in the service,
478
+ # the service considers them authorized to configure the beacon. Note
479
+ # that this key grants nothing on the service, only on the beacon itself.
480
+ # Corresponds to the JSON property `provisioningKey`
489
481
  # @return [String]
490
- attr_accessor :serving_visibility
482
+ attr_accessor :provisioning_key
491
483
 
492
- def initialize(**args)
493
- update!(**args)
494
- end
484
+ # Current status of the beacon.
485
+ # Required.
486
+ # Corresponds to the JSON property `status`
487
+ # @return [String]
488
+ attr_accessor :status
495
489
 
496
- # Update properties of this object
497
- def update!(**args)
498
- @namespace_name = args[:namespace_name] if args.key?(:namespace_name)
499
- @serving_visibility = args[:serving_visibility] if args.key?(:serving_visibility)
500
- end
501
- end
490
+ # Properties of the beacon device, for example battery type or firmware
491
+ # version.
492
+ # Optional.
493
+ # Corresponds to the JSON property `properties`
494
+ # @return [Hash<String,String>]
495
+ attr_accessor :properties
502
496
 
503
- # Information a client needs to provision and register beacons that broadcast
504
- # Eddystone-EID format beacon IDs, using Elliptic curve Diffie-Hellman key
505
- # exchange. See [the Eddystone specification](https://github.com/google/
506
- # eddystone/tree/master/eddystone-eid) at GitHub.
507
- class EphemeralIdRegistrationParams
508
- include Google::Apis::Core::Hashable
497
+ # Write-only registration parameters for beacons using Eddystone-EID format.
498
+ # Two ways of securely registering an Eddystone-EID beacon with the service
499
+ # are supported:
500
+ # 1. Perform an ECDH key exchange via this API, including a previous call
501
+ # to `GET /v1beta1/eidparams`. In this case the fields
502
+ # `beacon_ecdh_public_key` and `service_ecdh_public_key` should be
503
+ # populated and `beacon_identity_key` should not be populated. This
504
+ # method ensures that only the two parties in the ECDH key exchange can
505
+ # compute the identity key, which becomes a secret between them.
506
+ # 2. Derive or obtain the beacon's identity key via other secure means
507
+ # (perhaps an ECDH key exchange between the beacon and a mobile device
508
+ # or any other secure method), and then submit the resulting identity key
509
+ # to the service. In this case `beacon_identity_key` field should be
510
+ # populated, and neither of `beacon_ecdh_public_key` nor
511
+ # `service_ecdh_public_key` fields should be. The security of this method
512
+ # depends on how securely the parties involved (in particular the
513
+ # bluetooth client) handle the identity key, and obviously on how
514
+ # securely the identity key was generated.
515
+ # See [the Eddystone specification](https://github.com/google/eddystone/tree/
516
+ # master/eddystone-eid) at GitHub.
517
+ # Corresponds to the JSON property `ephemeralIdRegistration`
518
+ # @return [Google::Apis::ProximitybeaconV1beta1::EphemeralIdRegistration]
519
+ attr_accessor :ephemeral_id_registration
509
520
 
510
- # The beacon service's public key for use by a beacon to derive its Identity Key
511
- # using Elliptic Curve Diffie-Hellman key exchange.
512
- # Corresponds to the JSON property `serviceEcdhPublicKey`
521
+ # The [Google Places API](/places/place-id) Place ID of the place where
522
+ # the beacon is deployed. This is given when the beacon is registered or
523
+ # updated, not automatically detected in any way.
524
+ # Optional.
525
+ # Corresponds to the JSON property `placeId`
513
526
  # @return [String]
514
- attr_accessor :service_ecdh_public_key
527
+ attr_accessor :place_id
515
528
 
516
- # Indicates the minimum rotation period supported by the service. See
517
- # EddystoneEidRegistration.rotation_period_exponent
518
- # Corresponds to the JSON property `minRotationPeriodExponent`
519
- # @return [Fixnum]
520
- attr_accessor :min_rotation_period_exponent
529
+ # Defines a unique identifier of a beacon as broadcast by the device.
530
+ # Corresponds to the JSON property `advertisedId`
531
+ # @return [Google::Apis::ProximitybeaconV1beta1::AdvertisedId]
532
+ attr_accessor :advertised_id
521
533
 
522
- # Indicates the maximum rotation period supported by the service. See
523
- # EddystoneEidRegistration.rotation_period_exponent
524
- # Corresponds to the JSON property `maxRotationPeriodExponent`
525
- # @return [Fixnum]
526
- attr_accessor :max_rotation_period_exponent
534
+ # An object representing a latitude/longitude pair. This is expressed as a pair
535
+ # of doubles representing degrees latitude and degrees longitude. Unless
536
+ # specified otherwise, this must conform to the
537
+ # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
538
+ # standard</a>. Values must be within normalized ranges.
539
+ # Example of normalization code in Python:
540
+ # def NormalizeLongitude(longitude):
541
+ # """Wraps decimal degrees longitude to [-180.0, 180.0]."""
542
+ # q, r = divmod(longitude, 360.0)
543
+ # if r > 180.0 or (r == 180.0 and q <= -1.0):
544
+ # return r - 360.0
545
+ # return r
546
+ # def NormalizeLatLng(latitude, longitude):
547
+ # """Wraps decimal degrees latitude and longitude to
548
+ # [-90.0, 90.0] and [-180.0, 180.0], respectively."""
549
+ # r = latitude % 360.0
550
+ # if r <= 90.0:
551
+ # return r, NormalizeLongitude(longitude)
552
+ # elif r >= 270.0:
553
+ # return r - 360, NormalizeLongitude(longitude)
554
+ # else:
555
+ # return 180 - r, NormalizeLongitude(longitude + 180.0)
556
+ # assert 180.0 == NormalizeLongitude(180.0)
557
+ # assert -180.0 == NormalizeLongitude(-180.0)
558
+ # assert -179.0 == NormalizeLongitude(181.0)
559
+ # assert (0.0, 0.0) == NormalizeLatLng(360.0, 0.0)
560
+ # assert (0.0, 0.0) == NormalizeLatLng(-360.0, 0.0)
561
+ # assert (85.0, 180.0) == NormalizeLatLng(95.0, 0.0)
562
+ # assert (-85.0, -170.0) == NormalizeLatLng(-95.0, 10.0)
563
+ # assert (90.0, 10.0) == NormalizeLatLng(90.0, 10.0)
564
+ # assert (-90.0, -10.0) == NormalizeLatLng(-90.0, -10.0)
565
+ # assert (0.0, -170.0) == NormalizeLatLng(-180.0, 10.0)
566
+ # assert (0.0, -170.0) == NormalizeLatLng(180.0, 10.0)
567
+ # assert (-90.0, 10.0) == NormalizeLatLng(270.0, 10.0)
568
+ # assert (90.0, 10.0) == NormalizeLatLng(-270.0, 10.0)
569
+ # The code in logs/storage/validator/logs_validator_traits.cc treats this type
570
+ # as if it were annotated as ST_LOCATION.
571
+ # Corresponds to the JSON property `latLng`
572
+ # @return [Google::Apis::ProximitybeaconV1beta1::LatLng]
573
+ attr_accessor :lat_lng
574
+
575
+ # Resource name of this beacon. A beacon name has the format
576
+ # "beacons/N!beaconId" where the beaconId is the base16 ID broadcast by
577
+ # the beacon and N is a code for the beacon's type. Possible values are
578
+ # `3` for Eddystone, `1` for iBeacon, or `5` for AltBeacon.
579
+ # This field must be left empty when registering. After reading a beacon,
580
+ # clients can use the name for future operations.
581
+ # Corresponds to the JSON property `beaconName`
582
+ # @return [String]
583
+ attr_accessor :beacon_name
584
+
585
+ # Expected location stability. This is set when the beacon is registered or
586
+ # updated, not automatically detected in any way.
587
+ # Optional.
588
+ # Corresponds to the JSON property `expectedStability`
589
+ # @return [String]
590
+ attr_accessor :expected_stability
591
+
592
+ # Indoor level, a human-readable string as returned by Google Maps APIs,
593
+ # useful to indicate which floor of a building a beacon is located on.
594
+ # Corresponds to the JSON property `indoorLevel`
595
+ # @return [Google::Apis::ProximitybeaconV1beta1::IndoorLevel]
596
+ attr_accessor :indoor_level
527
597
 
528
598
  def initialize(**args)
529
599
  update!(**args)
@@ -531,63 +601,72 @@ module Google
531
601
 
532
602
  # Update properties of this object
533
603
  def update!(**args)
534
- @service_ecdh_public_key = args[:service_ecdh_public_key] if args.key?(:service_ecdh_public_key)
535
- @min_rotation_period_exponent = args[:min_rotation_period_exponent] if args.key?(:min_rotation_period_exponent)
536
- @max_rotation_period_exponent = args[:max_rotation_period_exponent] if args.key?(:max_rotation_period_exponent)
604
+ @description = args[:description] if args.key?(:description)
605
+ @provisioning_key = args[:provisioning_key] if args.key?(:provisioning_key)
606
+ @status = args[:status] if args.key?(:status)
607
+ @properties = args[:properties] if args.key?(:properties)
608
+ @ephemeral_id_registration = args[:ephemeral_id_registration] if args.key?(:ephemeral_id_registration)
609
+ @place_id = args[:place_id] if args.key?(:place_id)
610
+ @advertised_id = args[:advertised_id] if args.key?(:advertised_id)
611
+ @lat_lng = args[:lat_lng] if args.key?(:lat_lng)
612
+ @beacon_name = args[:beacon_name] if args.key?(:beacon_name)
613
+ @expected_stability = args[:expected_stability] if args.key?(:expected_stability)
614
+ @indoor_level = args[:indoor_level] if args.key?(:indoor_level)
537
615
  end
538
616
  end
539
617
 
540
- # Response that contains the requested diagnostics.
541
- class ListDiagnosticsResponse
618
+ # A generic empty message that you can re-use to avoid defining duplicated
619
+ # empty messages in your APIs. A typical example is to use it as the request
620
+ # or the response type of an API method. For instance:
621
+ # service Foo `
622
+ # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
623
+ # `
624
+ # The JSON representation for `Empty` is empty JSON object ````.
625
+ class Empty
542
626
  include Google::Apis::Core::Hashable
543
627
 
544
- # The diagnostics matching the given request.
545
- # Corresponds to the JSON property `diagnostics`
546
- # @return [Array<Google::Apis::ProximitybeaconV1beta1::Diagnostics>]
547
- attr_accessor :diagnostics
548
-
549
- # Token that can be used for pagination. Returned only if the request matches
550
- # more beacons than can be returned in this response.
551
- # Corresponds to the JSON property `nextPageToken`
552
- # @return [String]
553
- attr_accessor :next_page_token
554
-
555
628
  def initialize(**args)
556
629
  update!(**args)
557
630
  end
558
631
 
559
632
  # Update properties of this object
560
633
  def update!(**args)
561
- @diagnostics = args[:diagnostics] if args.key?(:diagnostics)
562
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
563
634
  end
564
635
  end
565
636
 
566
- # Diagnostics for a single beacon.
567
- class Diagnostics
637
+ # Project-specific data associated with a beacon.
638
+ class BeaconAttachment
568
639
  include Google::Apis::Core::Hashable
569
640
 
570
- # Resource name of the beacon. For Eddystone-EID beacons, this may be the beacon'
571
- # s current EID, or the beacon's "stable" Eddystone-UID.
572
- # Corresponds to the JSON property `beaconName`
641
+ # An opaque data container for client-provided data. Must be
642
+ # [base64](http://tools.ietf.org/html/rfc4648#section-4) encoded in HTTP
643
+ # requests, and will be so encoded (with padding) in responses.
644
+ # Required.
645
+ # Corresponds to the JSON property `data`
573
646
  # @return [String]
574
- attr_accessor :beacon_name
647
+ attr_accessor :data
575
648
 
576
- # Represents a whole calendar date, e.g. date of birth. The time of day and time
577
- # zone are either specified elsewhere or are not significant. The date is
578
- # relative to the Proleptic Gregorian Calendar. The day may be 0 to represent a
579
- # year and month where the day is not significant, e.g. credit card expiration
580
- # date. The year may be 0 to represent a month and day independent of year, e.g.
581
- # anniversary date. Related types are google.type.TimeOfDay and `google.protobuf.
582
- # Timestamp`.
583
- # Corresponds to the JSON property `estimatedLowBatteryDate`
584
- # @return [Google::Apis::ProximitybeaconV1beta1::Date]
585
- attr_accessor :estimated_low_battery_date
649
+ # Specifies what kind of attachment this is. Tells a client how to
650
+ # interpret the `data` field. Format is <var>namespace/type</var>. Namespace
651
+ # provides type separation between clients. Type describes the type of
652
+ # `data`, for use by the client when parsing the `data` field.
653
+ # Required.
654
+ # Corresponds to the JSON property `namespacedType`
655
+ # @return [String]
656
+ attr_accessor :namespaced_type
586
657
 
587
- # An unordered list of Alerts that the beacon has.
588
- # Corresponds to the JSON property `alerts`
589
- # @return [Array<String>]
590
- attr_accessor :alerts
658
+ # Resource name of this attachment. Attachment names have the format:
659
+ # <code>beacons/<var>beacon_id</var>/attachments/<var>attachment_id</var></code>.
660
+ # Leave this empty on creation.
661
+ # Corresponds to the JSON property `attachmentName`
662
+ # @return [String]
663
+ attr_accessor :attachment_name
664
+
665
+ # The UTC time when this attachment was created, in milliseconds since the
666
+ # UNIX epoch.
667
+ # Corresponds to the JSON property `creationTimeMs`
668
+ # @return [String]
669
+ attr_accessor :creation_time_ms
591
670
 
592
671
  def initialize(**args)
593
672
  update!(**args)
@@ -595,37 +674,23 @@ module Google
595
674
 
596
675
  # Update properties of this object
597
676
  def update!(**args)
598
- @beacon_name = args[:beacon_name] if args.key?(:beacon_name)
599
- @estimated_low_battery_date = args[:estimated_low_battery_date] if args.key?(:estimated_low_battery_date)
600
- @alerts = args[:alerts] if args.key?(:alerts)
677
+ @data = args[:data] if args.key?(:data)
678
+ @namespaced_type = args[:namespaced_type] if args.key?(:namespaced_type)
679
+ @attachment_name = args[:attachment_name] if args.key?(:attachment_name)
680
+ @creation_time_ms = args[:creation_time_ms] if args.key?(:creation_time_ms)
601
681
  end
602
682
  end
603
683
 
604
- # Represents a whole calendar date, e.g. date of birth. The time of day and time
605
- # zone are either specified elsewhere or are not significant. The date is
606
- # relative to the Proleptic Gregorian Calendar. The day may be 0 to represent a
607
- # year and month where the day is not significant, e.g. credit card expiration
608
- # date. The year may be 0 to represent a month and day independent of year, e.g.
609
- # anniversary date. Related types are google.type.TimeOfDay and `google.protobuf.
610
- # Timestamp`.
611
- class Date
684
+ # Information about the requested beacons, optionally including attachment
685
+ # data.
686
+ class GetInfoForObservedBeaconsResponse
612
687
  include Google::Apis::Core::Hashable
613
688
 
614
- # Year of date. Must be from 1 to 9999, or 0 if specifying a date without a year.
615
- # Corresponds to the JSON property `year`
616
- # @return [Fixnum]
617
- attr_accessor :year
618
-
619
- # Month of year. Must be from 1 to 12.
620
- # Corresponds to the JSON property `month`
621
- # @return [Fixnum]
622
- attr_accessor :month
623
-
624
- # Day of month. Must be from 1 to 31 and valid for the year and month, or 0 if
625
- # specifying a year/month where the day is not significant.
626
- # Corresponds to the JSON property `day`
627
- # @return [Fixnum]
628
- attr_accessor :day
689
+ # Public information about beacons.
690
+ # May be empty if the request matched no beacons.
691
+ # Corresponds to the JSON property `beacons`
692
+ # @return [Array<Google::Apis::ProximitybeaconV1beta1::BeaconInfo>]
693
+ attr_accessor :beacons
629
694
 
630
695
  def initialize(**args)
631
696
  update!(**args)
@@ -633,26 +698,27 @@ module Google
633
698
 
634
699
  # Update properties of this object
635
700
  def update!(**args)
636
- @year = args[:year] if args.key?(:year)
637
- @month = args[:month] if args.key?(:month)
638
- @day = args[:day] if args.key?(:day)
701
+ @beacons = args[:beacons] if args.key?(:beacons)
639
702
  end
640
703
  end
641
704
 
642
- # Request for beacon and attachment information about beacons that a mobile
643
- # client has encountered "in the wild".
705
+ # Request for beacon and attachment information about beacons that
706
+ # a mobile client has encountered "in the wild".
644
707
  class GetInfoForObservedBeaconsRequest
645
708
  include Google::Apis::Core::Hashable
646
709
 
647
- # The beacons that the client has encountered. At least one must be given.
710
+ # The beacons that the client has encountered.
711
+ # At least one must be given.
648
712
  # Corresponds to the JSON property `observations`
649
713
  # @return [Array<Google::Apis::ProximitybeaconV1beta1::Observation>]
650
714
  attr_accessor :observations
651
715
 
652
- # Specifies what kind of attachments to include in the response. When given, the
653
- # response will include only attachments of the given types. When empty, no
654
- # attachments will be returned. Must be in the format namespace/type. Accepts `*`
655
- # to specify all types in all namespaces. Optional.
716
+ # Specifies what kind of attachments to include in the response.
717
+ # When given, the response will include only attachments of the given types.
718
+ # When empty, no attachments will be returned. Must be in the format
719
+ # <var>namespace/type</var>. Accepts `*` to specify all types in
720
+ # all namespaces owned by the client.
721
+ # Optional.
656
722
  # Corresponds to the JSON property `namespacedTypes`
657
723
  # @return [Array<String>]
658
724
  attr_accessor :namespaced_types
@@ -668,48 +734,14 @@ module Google
668
734
  end
669
735
  end
670
736
 
671
- # Represents one beacon observed once.
672
- class Observation
673
- include Google::Apis::Core::Hashable
674
-
675
- # Defines a unique identifier of a beacon as broadcast by the device.
676
- # Corresponds to the JSON property `advertisedId`
677
- # @return [Google::Apis::ProximitybeaconV1beta1::AdvertisedId]
678
- attr_accessor :advertised_id
679
-
680
- # The array of telemetry bytes received from the beacon. The server is
681
- # responsible for parsing it. This field may frequently be empty, as with a
682
- # beacon that transmits telemetry only occasionally.
683
- # Corresponds to the JSON property `telemetry`
684
- # @return [String]
685
- attr_accessor :telemetry
686
-
687
- # Time when the beacon was observed.
688
- # Corresponds to the JSON property `timestampMs`
689
- # @return [String]
690
- attr_accessor :timestamp_ms
691
-
692
- def initialize(**args)
693
- update!(**args)
694
- end
695
-
696
- # Update properties of this object
697
- def update!(**args)
698
- @advertised_id = args[:advertised_id] if args.key?(:advertised_id)
699
- @telemetry = args[:telemetry] if args.key?(:telemetry)
700
- @timestamp_ms = args[:timestamp_ms] if args.key?(:timestamp_ms)
701
- end
702
- end
703
-
704
- # Information about the requested beacons, optionally including attachment data.
705
- class GetInfoForObservedBeaconsResponse
737
+ # Response to ListNamespacesRequest that contains all the project's namespaces.
738
+ class ListNamespacesResponse
706
739
  include Google::Apis::Core::Hashable
707
740
 
708
- # Public information about beacons. May be empty if the request matched no
709
- # beacons.
710
- # Corresponds to the JSON property `beacons`
711
- # @return [Array<Google::Apis::ProximitybeaconV1beta1::BeaconInfo>]
712
- attr_accessor :beacons
741
+ # The attachments that corresponded to the request params.
742
+ # Corresponds to the JSON property `namespaces`
743
+ # @return [Array<Google::Apis::ProximitybeaconV1beta1::Namespace>]
744
+ attr_accessor :namespaces
713
745
 
714
746
  def initialize(**args)
715
747
  update!(**args)
@@ -717,30 +749,36 @@ module Google
717
749
 
718
750
  # Update properties of this object
719
751
  def update!(**args)
720
- @beacons = args[:beacons] if args.key?(:beacons)
752
+ @namespaces = args[:namespaces] if args.key?(:namespaces)
721
753
  end
722
754
  end
723
755
 
724
- # A subset of beacon information served via the `beaconinfo.getforobserved`
725
- # method, which you call when users of your app encounter your beacons.
726
- class BeaconInfo
756
+ # Represents a whole calendar date, e.g. date of birth. The time of day and
757
+ # time zone are either specified elsewhere or are not significant. The date
758
+ # is relative to the Proleptic Gregorian Calendar. The day may be 0 to
759
+ # represent a year and month where the day is not significant, e.g. credit card
760
+ # expiration date. The year may be 0 to represent a month and day independent
761
+ # of year, e.g. anniversary date. Related types are google.type.TimeOfDay
762
+ # and `google.protobuf.Timestamp`.
763
+ class Date
727
764
  include Google::Apis::Core::Hashable
728
765
 
729
- # Defines a unique identifier of a beacon as broadcast by the device.
730
- # Corresponds to the JSON property `advertisedId`
731
- # @return [Google::Apis::ProximitybeaconV1beta1::AdvertisedId]
732
- attr_accessor :advertised_id
766
+ # Month of year. Must be from 1 to 12.
767
+ # Corresponds to the JSON property `month`
768
+ # @return [Fixnum]
769
+ attr_accessor :month
733
770
 
734
- # The name under which the beacon is registered.
735
- # Corresponds to the JSON property `beaconName`
736
- # @return [String]
737
- attr_accessor :beacon_name
771
+ # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
772
+ # a year.
773
+ # Corresponds to the JSON property `year`
774
+ # @return [Fixnum]
775
+ attr_accessor :year
738
776
 
739
- # Attachments matching the type(s) requested. May be empty if no attachment
740
- # types were requested, or if none matched.
741
- # Corresponds to the JSON property `attachments`
742
- # @return [Array<Google::Apis::ProximitybeaconV1beta1::AttachmentInfo>]
743
- attr_accessor :attachments
777
+ # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
778
+ # if specifying a year/month where the day is not significant.
779
+ # Corresponds to the JSON property `day`
780
+ # @return [Fixnum]
781
+ attr_accessor :day
744
782
 
745
783
  def initialize(**args)
746
784
  update!(**args)
@@ -748,28 +786,61 @@ module Google
748
786
 
749
787
  # Update properties of this object
750
788
  def update!(**args)
751
- @advertised_id = args[:advertised_id] if args.key?(:advertised_id)
752
- @beacon_name = args[:beacon_name] if args.key?(:beacon_name)
753
- @attachments = args[:attachments] if args.key?(:attachments)
789
+ @month = args[:month] if args.key?(:month)
790
+ @year = args[:year] if args.key?(:year)
791
+ @day = args[:day] if args.key?(:day)
754
792
  end
755
793
  end
756
794
 
757
- # A subset of attachment information served via the `beaconinfo.getforobserved`
758
- # method, used when your users encounter your beacons.
759
- class AttachmentInfo
795
+ # An object representing a latitude/longitude pair. This is expressed as a pair
796
+ # of doubles representing degrees latitude and degrees longitude. Unless
797
+ # specified otherwise, this must conform to the
798
+ # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
799
+ # standard</a>. Values must be within normalized ranges.
800
+ # Example of normalization code in Python:
801
+ # def NormalizeLongitude(longitude):
802
+ # """Wraps decimal degrees longitude to [-180.0, 180.0]."""
803
+ # q, r = divmod(longitude, 360.0)
804
+ # if r > 180.0 or (r == 180.0 and q <= -1.0):
805
+ # return r - 360.0
806
+ # return r
807
+ # def NormalizeLatLng(latitude, longitude):
808
+ # """Wraps decimal degrees latitude and longitude to
809
+ # [-90.0, 90.0] and [-180.0, 180.0], respectively."""
810
+ # r = latitude % 360.0
811
+ # if r <= 90.0:
812
+ # return r, NormalizeLongitude(longitude)
813
+ # elif r >= 270.0:
814
+ # return r - 360, NormalizeLongitude(longitude)
815
+ # else:
816
+ # return 180 - r, NormalizeLongitude(longitude + 180.0)
817
+ # assert 180.0 == NormalizeLongitude(180.0)
818
+ # assert -180.0 == NormalizeLongitude(-180.0)
819
+ # assert -179.0 == NormalizeLongitude(181.0)
820
+ # assert (0.0, 0.0) == NormalizeLatLng(360.0, 0.0)
821
+ # assert (0.0, 0.0) == NormalizeLatLng(-360.0, 0.0)
822
+ # assert (85.0, 180.0) == NormalizeLatLng(95.0, 0.0)
823
+ # assert (-85.0, -170.0) == NormalizeLatLng(-95.0, 10.0)
824
+ # assert (90.0, 10.0) == NormalizeLatLng(90.0, 10.0)
825
+ # assert (-90.0, -10.0) == NormalizeLatLng(-90.0, -10.0)
826
+ # assert (0.0, -170.0) == NormalizeLatLng(-180.0, 10.0)
827
+ # assert (0.0, -170.0) == NormalizeLatLng(180.0, 10.0)
828
+ # assert (-90.0, 10.0) == NormalizeLatLng(270.0, 10.0)
829
+ # assert (90.0, 10.0) == NormalizeLatLng(-270.0, 10.0)
830
+ # The code in logs/storage/validator/logs_validator_traits.cc treats this type
831
+ # as if it were annotated as ST_LOCATION.
832
+ class LatLng
760
833
  include Google::Apis::Core::Hashable
761
834
 
762
- # Specifies what kind of attachment this is. Tells a client how to interpret the
763
- # `data` field. Format is namespace/type, for example scrupulous-wombat-12345/
764
- # welcome-message
765
- # Corresponds to the JSON property `namespacedType`
766
- # @return [String]
767
- attr_accessor :namespaced_type
835
+ # The latitude in degrees. It must be in the range [-90.0, +90.0].
836
+ # Corresponds to the JSON property `latitude`
837
+ # @return [Float]
838
+ attr_accessor :latitude
768
839
 
769
- # An opaque data container for client-provided data.
770
- # Corresponds to the JSON property `data`
771
- # @return [String]
772
- attr_accessor :data
840
+ # The longitude in degrees. It must be in the range [-180.0, +180.0].
841
+ # Corresponds to the JSON property `longitude`
842
+ # @return [Float]
843
+ attr_accessor :longitude
773
844
 
774
845
  def initialize(**args)
775
846
  update!(**args)
@@ -777,8 +848,8 @@ module Google
777
848
 
778
849
  # Update properties of this object
779
850
  def update!(**args)
780
- @namespaced_type = args[:namespaced_type] if args.key?(:namespaced_type)
781
- @data = args[:data] if args.key?(:data)
851
+ @latitude = args[:latitude] if args.key?(:latitude)
852
+ @longitude = args[:longitude] if args.key?(:longitude)
782
853
  end
783
854
  end
784
855
  end