google-api-client 0.10.0 → 0.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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