1<html><body> 2<style> 3 4body, h1, h2, h3, div, span, p, pre, a { 5 margin: 0; 6 padding: 0; 7 border: 0; 8 font-weight: inherit; 9 font-style: inherit; 10 font-size: 100%; 11 font-family: inherit; 12 vertical-align: baseline; 13} 14 15body { 16 font-size: 13px; 17 padding: 1em; 18} 19 20h1 { 21 font-size: 26px; 22 margin-bottom: 1em; 23} 24 25h2 { 26 font-size: 24px; 27 margin-bottom: 1em; 28} 29 30h3 { 31 font-size: 20px; 32 margin-bottom: 1em; 33 margin-top: 1em; 34} 35 36pre, code { 37 line-height: 1.5; 38 font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace; 39} 40 41pre { 42 margin-top: 0.5em; 43} 44 45h1, h2, h3, p { 46 font-family: Arial, sans serif; 47} 48 49h1, h2, h3 { 50 border-bottom: solid #CCC 1px; 51} 52 53.toc_element { 54 margin-top: 0.5em; 55} 56 57.firstline { 58 margin-left: 2 em; 59} 60 61.method { 62 margin-top: 1em; 63 border: solid 1px #CCC; 64 padding: 1em; 65 background: #EEE; 66} 67 68.details { 69 font-weight: bold; 70 font-size: 14px; 71} 72 73</style> 74 75<h1><a href="androiddeviceprovisioning_v1.html">Android Device Provisioning Partner API</a> . <a href="androiddeviceprovisioning_v1.partners.html">partners</a> . <a href="androiddeviceprovisioning_v1.partners.devices.html">devices</a></h1> 76<h2>Instance Methods</h2> 77<p class="toc_element"> 78 <code><a href="#claim">claim(partnerId, body, x__xgafv=None)</a></code></p> 79<p class="firstline">Claims a device for a customer and adds it to zero-touch enrollment. If the</p> 80<p class="toc_element"> 81 <code><a href="#claimAsync">claimAsync(partnerId, body, x__xgafv=None)</a></code></p> 82<p class="firstline">Claims a batch of devices for a customer asynchronously. Adds the devices</p> 83<p class="toc_element"> 84 <code><a href="#findByIdentifier">findByIdentifier(partnerId, body, x__xgafv=None)</a></code></p> 85<p class="firstline">Finds devices by hardware identifiers, such as IMEI.</p> 86<p class="toc_element"> 87 <code><a href="#findByIdentifier_next">findByIdentifier_next(previous_request, previous_response)</a></code></p> 88<p class="firstline">Retrieves the next page of results.</p> 89<p class="toc_element"> 90 <code><a href="#findByOwner">findByOwner(partnerId, body, x__xgafv=None)</a></code></p> 91<p class="firstline">Finds devices claimed for customers. The results only contain devices</p> 92<p class="toc_element"> 93 <code><a href="#findByOwner_next">findByOwner_next(previous_request, previous_response)</a></code></p> 94<p class="firstline">Retrieves the next page of results.</p> 95<p class="toc_element"> 96 <code><a href="#get">get(name, x__xgafv=None)</a></code></p> 97<p class="firstline">Gets a device.</p> 98<p class="toc_element"> 99 <code><a href="#metadata">metadata(metadataOwnerId, deviceId, body, x__xgafv=None)</a></code></p> 100<p class="firstline">Updates reseller metadata associated with the device.</p> 101<p class="toc_element"> 102 <code><a href="#unclaim">unclaim(partnerId, body, x__xgafv=None)</a></code></p> 103<p class="firstline">Unclaims a device from a customer and removes it from zero-touch</p> 104<p class="toc_element"> 105 <code><a href="#unclaimAsync">unclaimAsync(partnerId, body, x__xgafv=None)</a></code></p> 106<p class="firstline">Unclaims a batch of devices for a customer asynchronously. Removes the</p> 107<p class="toc_element"> 108 <code><a href="#updateMetadataAsync">updateMetadataAsync(partnerId, body, x__xgafv=None)</a></code></p> 109<p class="firstline">Updates the reseller metadata attached to a batch of devices. This method</p> 110<h3>Method Details</h3> 111<div class="method"> 112 <code class="details" id="claim">claim(partnerId, body, x__xgafv=None)</code> 113 <pre>Claims a device for a customer and adds it to zero-touch enrollment. If the 114device is already claimed by another customer, the call returns an error. 115 116Args: 117 partnerId: string, Required. The ID of the reseller partner. (required) 118 body: object, The request body. (required) 119 The object takes the form of: 120 121{ # Request message to claim a device on behalf of a customer. 122 "deviceIdentifier": { # Encapsulates hardware and product IDs to identify a manufactured device. # Required. The device identifier of the device to claim. 123 # To understand requirements on identifier sets, read 124 # [Identifiers](/zero-touch/guides/identifiers). 125 "imei": "A String", # The device’s IMEI number. Validated on input. 126 "model": "A String", # The device model's name. Matches the device's built-in value returned from 127 # `android.os.Build.MODEL`. Allowed values are listed in 128 # [models](/zero-touch/resources/manufacturer-names#model-names). 129 "serialNumber": "A String", # The manufacturer's serial number for the device. This value might not be 130 # unique across different device models. 131 "meid": "A String", # The device’s MEID number. 132 "manufacturer": "A String", # The device manufacturer’s name. Matches the device's built-in 133 # value returned from `android.os.Build.MANUFACTURER`. Allowed values are 134 # listed in 135 # [manufacturers](/zero-touch/resources/manufacturer-names#manufacturers-names). 136 }, 137 "deviceMetadata": { # Metadata entries that can be attached to a `Device`. To learn more, read # Optional. The metadata to attach to the device. 138 # [Device metadata](/zero-touch/guides/metadata). 139 "entries": { # Metadata entries recorded as key-value pairs. 140 "a_key": "A String", 141 }, 142 }, 143 "sectionType": "A String", # Required. The section type of the device's provisioning record. 144 "customerId": "A String", # Required. The ID of the customer for whom the device is being claimed. 145 } 146 147 x__xgafv: string, V1 error format. 148 Allowed values 149 1 - v1 error format 150 2 - v2 error format 151 152Returns: 153 An object of the form: 154 155 { # Response message containing device id of the claim. 156 "deviceName": "A String", # The resource name of the device in the format 157 # `partners/[PARTNER_ID]/devices/[DEVICE_ID]`. 158 "deviceId": "A String", # The device ID of the claimed device. 159 }</pre> 160</div> 161 162<div class="method"> 163 <code class="details" id="claimAsync">claimAsync(partnerId, body, x__xgafv=None)</code> 164 <pre>Claims a batch of devices for a customer asynchronously. Adds the devices 165to zero-touch enrollment. To learn more, read [Long‑running batch 166operations](/zero-touch/guides/how-it-works#operations). 167 168Args: 169 partnerId: string, Required. The ID of the reseller partner. (required) 170 body: object, The request body. (required) 171 The object takes the form of: 172 173{ # Request to claim devices asynchronously in batch. Claiming a device adds the 174 # device to zero-touch enrollment and shows the device in the customer's view 175 # of the portal. 176 "claims": [ # Required. A list of device claims. 177 { # Identifies one claim request. 178 "deviceMetadata": { # Metadata entries that can be attached to a `Device`. To learn more, read # Required. The metadata to attach to the device at claim. 179 # [Device metadata](/zero-touch/guides/metadata). 180 "entries": { # Metadata entries recorded as key-value pairs. 181 "a_key": "A String", 182 }, 183 }, 184 "deviceIdentifier": { # Encapsulates hardware and product IDs to identify a manufactured device. # Required. Device identifier of the device. 185 # To understand requirements on identifier sets, read 186 # [Identifiers](/zero-touch/guides/identifiers). 187 "imei": "A String", # The device’s IMEI number. Validated on input. 188 "model": "A String", # The device model's name. Matches the device's built-in value returned from 189 # `android.os.Build.MODEL`. Allowed values are listed in 190 # [models](/zero-touch/resources/manufacturer-names#model-names). 191 "serialNumber": "A String", # The manufacturer's serial number for the device. This value might not be 192 # unique across different device models. 193 "meid": "A String", # The device’s MEID number. 194 "manufacturer": "A String", # The device manufacturer’s name. Matches the device's built-in 195 # value returned from `android.os.Build.MANUFACTURER`. Allowed values are 196 # listed in 197 # [manufacturers](/zero-touch/resources/manufacturer-names#manufacturers-names). 198 }, 199 "customerId": "A String", # Required. The ID of the customer for whom the device is being claimed. 200 "sectionType": "A String", # Required. The section type of the device's provisioning record. 201 }, 202 ], 203 } 204 205 x__xgafv: string, V1 error format. 206 Allowed values 207 1 - v1 error format 208 2 - v2 error format 209 210Returns: 211 An object of the form: 212 213 { # This resource represents a long-running operation that is the result of a 214 # network API call. 215 "response": { # This field will contain a `DevicesLongRunningOperationResponse` object if the operation is created by `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`. 216 "a_key": "", # Properties of the object. Contains field @type with type URL. 217 }, 218 "metadata": { # This field will contain a `DevicesLongRunningOperationMetadata` object if the operation is created by `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`. 219 "a_key": "", # Properties of the object. Contains field @type with type URL. 220 }, 221 "done": True or False, # If the value is `false`, it means the operation is still in progress. 222 # If `true`, the operation is completed, and either `error` or `response` is 223 # available. 224 "name": "A String", # The server-assigned name, which is only unique within the same service that 225 # originally returns it. If you use the default HTTP mapping, the 226 # `name` should be a resource name ending with `operations/{unique_id}`. 227 "error": { # The `Status` type defines a logical error model that is suitable for # This field will always be not set if the operation is created by `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`. In this case, error information for each device is set in `response.perDeviceStatus.result.status`. 228 # different programming environments, including REST APIs and RPC APIs. It is 229 # used by [gRPC](https://github.com/grpc). Each `Status` message contains 230 # three pieces of data: error code, error message, and error details. 231 # 232 # You can find out more about this error model and how to work with it in the 233 # [API Design Guide](https://cloud.google.com/apis/design/errors). 234 "message": "A String", # A developer-facing error message, which should be in English. Any 235 # user-facing error message should be localized and sent in the 236 # google.rpc.Status.details field, or localized by the client. 237 "code": 42, # The status code, which should be an enum value of google.rpc.Code. 238 "details": [ # A list of messages that carry the error details. There is a common set of 239 # message types for APIs to use. 240 { 241 "a_key": "", # Properties of the object. Contains field @type with type URL. 242 }, 243 ], 244 }, 245 }</pre> 246</div> 247 248<div class="method"> 249 <code class="details" id="findByIdentifier">findByIdentifier(partnerId, body, x__xgafv=None)</code> 250 <pre>Finds devices by hardware identifiers, such as IMEI. 251 252Args: 253 partnerId: string, Required. The ID of the reseller partner. (required) 254 body: object, The request body. (required) 255 The object takes the form of: 256 257{ # Request to find devices. 258 "pageToken": "A String", # A token specifying which result page to return. 259 "deviceIdentifier": { # Encapsulates hardware and product IDs to identify a manufactured device. # Required. The device identifier to search for. 260 # To understand requirements on identifier sets, read 261 # [Identifiers](/zero-touch/guides/identifiers). 262 "imei": "A String", # The device’s IMEI number. Validated on input. 263 "model": "A String", # The device model's name. Matches the device's built-in value returned from 264 # `android.os.Build.MODEL`. Allowed values are listed in 265 # [models](/zero-touch/resources/manufacturer-names#model-names). 266 "serialNumber": "A String", # The manufacturer's serial number for the device. This value might not be 267 # unique across different device models. 268 "meid": "A String", # The device’s MEID number. 269 "manufacturer": "A String", # The device manufacturer’s name. Matches the device's built-in 270 # value returned from `android.os.Build.MANUFACTURER`. Allowed values are 271 # listed in 272 # [manufacturers](/zero-touch/resources/manufacturer-names#manufacturers-names). 273 }, 274 "limit": "A String", # Required. The maximum number of devices to show in a page of results. Must 275 # be between 1 and 100 inclusive. 276 } 277 278 x__xgafv: string, V1 error format. 279 Allowed values 280 1 - v1 error format 281 2 - v2 error format 282 283Returns: 284 An object of the form: 285 286 { # Response containing found devices. 287 "nextPageToken": "A String", # A token used to access the next page of results. Omitted if no further 288 # results are available. 289 "totalSize": 42, # The total count of items in the list irrespective of pagination. 290 "devices": [ # Found devices. 291 { # An Android device registered for zero-touch enrollment. 292 "deviceIdentifier": { # Encapsulates hardware and product IDs to identify a manufactured device. # The hardware IDs that identify a manufactured device. To learn more, read 293 # [Identifiers](/zero-touch/guides/identifiers). 294 # To understand requirements on identifier sets, read 295 # [Identifiers](/zero-touch/guides/identifiers). 296 "imei": "A String", # The device’s IMEI number. Validated on input. 297 "model": "A String", # The device model's name. Matches the device's built-in value returned from 298 # `android.os.Build.MODEL`. Allowed values are listed in 299 # [models](/zero-touch/resources/manufacturer-names#model-names). 300 "serialNumber": "A String", # The manufacturer's serial number for the device. This value might not be 301 # unique across different device models. 302 "meid": "A String", # The device’s MEID number. 303 "manufacturer": "A String", # The device manufacturer’s name. Matches the device's built-in 304 # value returned from `android.os.Build.MANUFACTURER`. Allowed values are 305 # listed in 306 # [manufacturers](/zero-touch/resources/manufacturer-names#manufacturers-names). 307 }, 308 "name": "A String", # Output only. The API resource name in the format 309 # `partners/[PARTNER_ID]/devices/[DEVICE_ID]`. Assigned by the server. 310 "deviceMetadata": { # Metadata entries that can be attached to a `Device`. To learn more, read # The metadata attached to the device. Structured as key-value pairs. To 311 # learn more, read [Device metadata](/zero-touch/guides/metadata). 312 # [Device metadata](/zero-touch/guides/metadata). 313 "entries": { # Metadata entries recorded as key-value pairs. 314 "a_key": "A String", 315 }, 316 }, 317 "deviceId": "A String", # Output only. The ID of the device. Assigned by the server. 318 "claims": [ # Output only. The provisioning claims for a device. Devices claimed for 319 # zero-touch enrollment have a claim with the type `SECTION_TYPE_ZERO_TOUCH`. 320 # Call 321 # `partners.devices.unclaim` 322 # or 323 # `partners.devices.unclaimAsync` 324 # to remove the device from zero-touch enrollment. 325 { # A record of a device claimed by a reseller for a customer. Devices claimed 326 # for zero-touch enrollment have a claim with the type 327 # `SECTION_TYPE_ZERO_TOUCH`. To learn more, read 328 # [Claim devices for customers](/zero-touch/guides/how-it-works#claim). 329 "vacationModeStartTime": "A String", # The timestamp when the device was put into ‘vacation mode’. This value is 330 # present iff the device is in 'vacation mode'. 331 "resellerId": "A String", # The ID of the reseller that claimed the device. 332 "vacationModeExpireTime": "A String", # The timestamp when the device will exit ‘vacation mode’. This value is 333 # present iff the device is in 'vacation mode'. 334 "sectionType": "A String", # Output only. The type of claim made on the device. 335 "ownerCompanyId": "A String", # The ID of the Customer that purchased the device. 336 }, 337 ], 338 "configuration": "A String", # Not available to resellers. 339 }, 340 ], 341 }</pre> 342</div> 343 344<div class="method"> 345 <code class="details" id="findByIdentifier_next">findByIdentifier_next(previous_request, previous_response)</code> 346 <pre>Retrieves the next page of results. 347 348Args: 349 previous_request: The request for the previous page. (required) 350 previous_response: The response from the request for the previous page. (required) 351 352Returns: 353 A request object that you can call 'execute()' on to request the next 354 page. Returns None if there are no more items in the collection. 355 </pre> 356</div> 357 358<div class="method"> 359 <code class="details" id="findByOwner">findByOwner(partnerId, body, x__xgafv=None)</code> 360 <pre>Finds devices claimed for customers. The results only contain devices 361registered to the reseller that's identified by the `partnerId` argument. 362The customer's devices purchased from other resellers don't appear in the 363results. 364 365Args: 366 partnerId: string, Required. The ID of the reseller partner. (required) 367 body: object, The request body. (required) 368 The object takes the form of: 369 370{ # Request to find devices by customers. 371 "pageToken": "A String", # A token specifying which result page to return. 372 "limit": "A String", # Required. The maximum number of devices to show in a page of results. Must 373 # be between 1 and 100 inclusive. 374 "customerId": [ # Required. The list of customer IDs to search for. 375 "A String", 376 ], 377 "sectionType": "A String", # Required. The section type of the device's provisioning record. 378 } 379 380 x__xgafv: string, V1 error format. 381 Allowed values 382 1 - v1 error format 383 2 - v2 error format 384 385Returns: 386 An object of the form: 387 388 { # Response containing found devices. 389 "totalSize": 42, # The total count of items in the list irrespective of pagination. 390 "nextPageToken": "A String", # A token used to access the next page of results. 391 # Omitted if no further results are available. 392 "devices": [ # The customer's devices. 393 { # An Android device registered for zero-touch enrollment. 394 "deviceIdentifier": { # Encapsulates hardware and product IDs to identify a manufactured device. # The hardware IDs that identify a manufactured device. To learn more, read 395 # [Identifiers](/zero-touch/guides/identifiers). 396 # To understand requirements on identifier sets, read 397 # [Identifiers](/zero-touch/guides/identifiers). 398 "imei": "A String", # The device’s IMEI number. Validated on input. 399 "model": "A String", # The device model's name. Matches the device's built-in value returned from 400 # `android.os.Build.MODEL`. Allowed values are listed in 401 # [models](/zero-touch/resources/manufacturer-names#model-names). 402 "serialNumber": "A String", # The manufacturer's serial number for the device. This value might not be 403 # unique across different device models. 404 "meid": "A String", # The device’s MEID number. 405 "manufacturer": "A String", # The device manufacturer’s name. Matches the device's built-in 406 # value returned from `android.os.Build.MANUFACTURER`. Allowed values are 407 # listed in 408 # [manufacturers](/zero-touch/resources/manufacturer-names#manufacturers-names). 409 }, 410 "name": "A String", # Output only. The API resource name in the format 411 # `partners/[PARTNER_ID]/devices/[DEVICE_ID]`. Assigned by the server. 412 "deviceMetadata": { # Metadata entries that can be attached to a `Device`. To learn more, read # The metadata attached to the device. Structured as key-value pairs. To 413 # learn more, read [Device metadata](/zero-touch/guides/metadata). 414 # [Device metadata](/zero-touch/guides/metadata). 415 "entries": { # Metadata entries recorded as key-value pairs. 416 "a_key": "A String", 417 }, 418 }, 419 "deviceId": "A String", # Output only. The ID of the device. Assigned by the server. 420 "claims": [ # Output only. The provisioning claims for a device. Devices claimed for 421 # zero-touch enrollment have a claim with the type `SECTION_TYPE_ZERO_TOUCH`. 422 # Call 423 # `partners.devices.unclaim` 424 # or 425 # `partners.devices.unclaimAsync` 426 # to remove the device from zero-touch enrollment. 427 { # A record of a device claimed by a reseller for a customer. Devices claimed 428 # for zero-touch enrollment have a claim with the type 429 # `SECTION_TYPE_ZERO_TOUCH`. To learn more, read 430 # [Claim devices for customers](/zero-touch/guides/how-it-works#claim). 431 "vacationModeStartTime": "A String", # The timestamp when the device was put into ‘vacation mode’. This value is 432 # present iff the device is in 'vacation mode'. 433 "resellerId": "A String", # The ID of the reseller that claimed the device. 434 "vacationModeExpireTime": "A String", # The timestamp when the device will exit ‘vacation mode’. This value is 435 # present iff the device is in 'vacation mode'. 436 "sectionType": "A String", # Output only. The type of claim made on the device. 437 "ownerCompanyId": "A String", # The ID of the Customer that purchased the device. 438 }, 439 ], 440 "configuration": "A String", # Not available to resellers. 441 }, 442 ], 443 }</pre> 444</div> 445 446<div class="method"> 447 <code class="details" id="findByOwner_next">findByOwner_next(previous_request, previous_response)</code> 448 <pre>Retrieves the next page of results. 449 450Args: 451 previous_request: The request for the previous page. (required) 452 previous_response: The response from the request for the previous page. (required) 453 454Returns: 455 A request object that you can call 'execute()' on to request the next 456 page. Returns None if there are no more items in the collection. 457 </pre> 458</div> 459 460<div class="method"> 461 <code class="details" id="get">get(name, x__xgafv=None)</code> 462 <pre>Gets a device. 463 464Args: 465 name: string, Required. The device API resource name in the format 466`partners/[PARTNER_ID]/devices/[DEVICE_ID]`. (required) 467 x__xgafv: string, V1 error format. 468 Allowed values 469 1 - v1 error format 470 2 - v2 error format 471 472Returns: 473 An object of the form: 474 475 { # An Android device registered for zero-touch enrollment. 476 "deviceIdentifier": { # Encapsulates hardware and product IDs to identify a manufactured device. # The hardware IDs that identify a manufactured device. To learn more, read 477 # [Identifiers](/zero-touch/guides/identifiers). 478 # To understand requirements on identifier sets, read 479 # [Identifiers](/zero-touch/guides/identifiers). 480 "imei": "A String", # The device’s IMEI number. Validated on input. 481 "model": "A String", # The device model's name. Matches the device's built-in value returned from 482 # `android.os.Build.MODEL`. Allowed values are listed in 483 # [models](/zero-touch/resources/manufacturer-names#model-names). 484 "serialNumber": "A String", # The manufacturer's serial number for the device. This value might not be 485 # unique across different device models. 486 "meid": "A String", # The device’s MEID number. 487 "manufacturer": "A String", # The device manufacturer’s name. Matches the device's built-in 488 # value returned from `android.os.Build.MANUFACTURER`. Allowed values are 489 # listed in 490 # [manufacturers](/zero-touch/resources/manufacturer-names#manufacturers-names). 491 }, 492 "name": "A String", # Output only. The API resource name in the format 493 # `partners/[PARTNER_ID]/devices/[DEVICE_ID]`. Assigned by the server. 494 "deviceMetadata": { # Metadata entries that can be attached to a `Device`. To learn more, read # The metadata attached to the device. Structured as key-value pairs. To 495 # learn more, read [Device metadata](/zero-touch/guides/metadata). 496 # [Device metadata](/zero-touch/guides/metadata). 497 "entries": { # Metadata entries recorded as key-value pairs. 498 "a_key": "A String", 499 }, 500 }, 501 "deviceId": "A String", # Output only. The ID of the device. Assigned by the server. 502 "claims": [ # Output only. The provisioning claims for a device. Devices claimed for 503 # zero-touch enrollment have a claim with the type `SECTION_TYPE_ZERO_TOUCH`. 504 # Call 505 # `partners.devices.unclaim` 506 # or 507 # `partners.devices.unclaimAsync` 508 # to remove the device from zero-touch enrollment. 509 { # A record of a device claimed by a reseller for a customer. Devices claimed 510 # for zero-touch enrollment have a claim with the type 511 # `SECTION_TYPE_ZERO_TOUCH`. To learn more, read 512 # [Claim devices for customers](/zero-touch/guides/how-it-works#claim). 513 "vacationModeStartTime": "A String", # The timestamp when the device was put into ‘vacation mode’. This value is 514 # present iff the device is in 'vacation mode'. 515 "resellerId": "A String", # The ID of the reseller that claimed the device. 516 "vacationModeExpireTime": "A String", # The timestamp when the device will exit ‘vacation mode’. This value is 517 # present iff the device is in 'vacation mode'. 518 "sectionType": "A String", # Output only. The type of claim made on the device. 519 "ownerCompanyId": "A String", # The ID of the Customer that purchased the device. 520 }, 521 ], 522 "configuration": "A String", # Not available to resellers. 523 }</pre> 524</div> 525 526<div class="method"> 527 <code class="details" id="metadata">metadata(metadataOwnerId, deviceId, body, x__xgafv=None)</code> 528 <pre>Updates reseller metadata associated with the device. 529 530Args: 531 metadataOwnerId: string, Required. The owner of the newly set metadata. Set this to the partner ID. (required) 532 deviceId: string, Required. The ID of the device. (required) 533 body: object, The request body. (required) 534 The object takes the form of: 535 536{ # Request to set metadata for a device. 537 "deviceMetadata": { # Metadata entries that can be attached to a `Device`. To learn more, read # Required. The metdata to attach to the device. 538 # [Device metadata](/zero-touch/guides/metadata). 539 "entries": { # Metadata entries recorded as key-value pairs. 540 "a_key": "A String", 541 }, 542 }, 543 } 544 545 x__xgafv: string, V1 error format. 546 Allowed values 547 1 - v1 error format 548 2 - v2 error format 549 550Returns: 551 An object of the form: 552 553 { # Metadata entries that can be attached to a `Device`. To learn more, read 554 # [Device metadata](/zero-touch/guides/metadata). 555 "entries": { # Metadata entries recorded as key-value pairs. 556 "a_key": "A String", 557 }, 558 }</pre> 559</div> 560 561<div class="method"> 562 <code class="details" id="unclaim">unclaim(partnerId, body, x__xgafv=None)</code> 563 <pre>Unclaims a device from a customer and removes it from zero-touch 564enrollment. 565 566Args: 567 partnerId: string, Required. The ID of the reseller partner. (required) 568 body: object, The request body. (required) 569 The object takes the form of: 570 571{ # Request message to unclaim a device. 572 "vacationModeDays": 42, # The duration of the vacation unlock starting from when the request is 573 # processed. (1 day is treated as 24 hours) 574 "deviceIdentifier": { # Encapsulates hardware and product IDs to identify a manufactured device. # The device identifier you used when you claimed this device. 575 # To understand requirements on identifier sets, read 576 # [Identifiers](/zero-touch/guides/identifiers). 577 "imei": "A String", # The device’s IMEI number. Validated on input. 578 "model": "A String", # The device model's name. Matches the device's built-in value returned from 579 # `android.os.Build.MODEL`. Allowed values are listed in 580 # [models](/zero-touch/resources/manufacturer-names#model-names). 581 "serialNumber": "A String", # The manufacturer's serial number for the device. This value might not be 582 # unique across different device models. 583 "meid": "A String", # The device’s MEID number. 584 "manufacturer": "A String", # The device manufacturer’s name. Matches the device's built-in 585 # value returned from `android.os.Build.MANUFACTURER`. Allowed values are 586 # listed in 587 # [manufacturers](/zero-touch/resources/manufacturer-names#manufacturers-names). 588 }, 589 "vacationModeExpireTime": "A String", # The expiration time of the vacation unlock. 590 "deviceId": "A String", # The device ID returned by `ClaimDevice`. 591 "sectionType": "A String", # Required. The section type of the device's provisioning record. 592 } 593 594 x__xgafv: string, V1 error format. 595 Allowed values 596 1 - v1 error format 597 2 - v2 error format 598 599Returns: 600 An object of the form: 601 602 { # A generic empty message that you can re-use to avoid defining duplicated 603 # empty messages in your APIs. A typical example is to use it as the request 604 # or the response type of an API method. For instance: 605 # 606 # service Foo { 607 # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); 608 # } 609 # 610 # The JSON representation for `Empty` is empty JSON object `{}`. 611 }</pre> 612</div> 613 614<div class="method"> 615 <code class="details" id="unclaimAsync">unclaimAsync(partnerId, body, x__xgafv=None)</code> 616 <pre>Unclaims a batch of devices for a customer asynchronously. Removes the 617devices from zero-touch enrollment. To learn more, read [Long‑running batch 618operations](/zero-touch/guides/how-it-works#operations). 619 620Args: 621 partnerId: string, Required. The reseller partner ID. (required) 622 body: object, The request body. (required) 623 The object takes the form of: 624 625{ # Request to unclaim devices asynchronously in batch. 626 "unclaims": [ # Required. The list of devices to unclaim. 627 { # Identifies one unclaim request. 628 "vacationModeDays": 42, # The duration of the vacation unlock starting from when the request is 629 # processed. (1 day is treated as 24 hours) 630 "deviceIdentifier": { # Encapsulates hardware and product IDs to identify a manufactured device. # Device identifier of the device. 631 # To understand requirements on identifier sets, read 632 # [Identifiers](/zero-touch/guides/identifiers). 633 "imei": "A String", # The device’s IMEI number. Validated on input. 634 "model": "A String", # The device model's name. Matches the device's built-in value returned from 635 # `android.os.Build.MODEL`. Allowed values are listed in 636 # [models](/zero-touch/resources/manufacturer-names#model-names). 637 "serialNumber": "A String", # The manufacturer's serial number for the device. This value might not be 638 # unique across different device models. 639 "meid": "A String", # The device’s MEID number. 640 "manufacturer": "A String", # The device manufacturer’s name. Matches the device's built-in 641 # value returned from `android.os.Build.MANUFACTURER`. Allowed values are 642 # listed in 643 # [manufacturers](/zero-touch/resources/manufacturer-names#manufacturers-names). 644 }, 645 "vacationModeExpireTime": "A String", # The expiration time of the vacation unlock. 646 "deviceId": "A String", # Device ID of the device. 647 "sectionType": "A String", # Required. The section type of the device's provisioning record. 648 }, 649 ], 650 } 651 652 x__xgafv: string, V1 error format. 653 Allowed values 654 1 - v1 error format 655 2 - v2 error format 656 657Returns: 658 An object of the form: 659 660 { # This resource represents a long-running operation that is the result of a 661 # network API call. 662 "response": { # This field will contain a `DevicesLongRunningOperationResponse` object if the operation is created by `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`. 663 "a_key": "", # Properties of the object. Contains field @type with type URL. 664 }, 665 "metadata": { # This field will contain a `DevicesLongRunningOperationMetadata` object if the operation is created by `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`. 666 "a_key": "", # Properties of the object. Contains field @type with type URL. 667 }, 668 "done": True or False, # If the value is `false`, it means the operation is still in progress. 669 # If `true`, the operation is completed, and either `error` or `response` is 670 # available. 671 "name": "A String", # The server-assigned name, which is only unique within the same service that 672 # originally returns it. If you use the default HTTP mapping, the 673 # `name` should be a resource name ending with `operations/{unique_id}`. 674 "error": { # The `Status` type defines a logical error model that is suitable for # This field will always be not set if the operation is created by `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`. In this case, error information for each device is set in `response.perDeviceStatus.result.status`. 675 # different programming environments, including REST APIs and RPC APIs. It is 676 # used by [gRPC](https://github.com/grpc). Each `Status` message contains 677 # three pieces of data: error code, error message, and error details. 678 # 679 # You can find out more about this error model and how to work with it in the 680 # [API Design Guide](https://cloud.google.com/apis/design/errors). 681 "message": "A String", # A developer-facing error message, which should be in English. Any 682 # user-facing error message should be localized and sent in the 683 # google.rpc.Status.details field, or localized by the client. 684 "code": 42, # The status code, which should be an enum value of google.rpc.Code. 685 "details": [ # A list of messages that carry the error details. There is a common set of 686 # message types for APIs to use. 687 { 688 "a_key": "", # Properties of the object. Contains field @type with type URL. 689 }, 690 ], 691 }, 692 }</pre> 693</div> 694 695<div class="method"> 696 <code class="details" id="updateMetadataAsync">updateMetadataAsync(partnerId, body, x__xgafv=None)</code> 697 <pre>Updates the reseller metadata attached to a batch of devices. This method 698updates devices asynchronously and returns an `Operation` that can be used 699to track progress. Read [Long‑running batch 700operations](/zero-touch/guides/how-it-works#operations). 701 702Args: 703 partnerId: string, Required. The reseller partner ID. (required) 704 body: object, The request body. (required) 705 The object takes the form of: 706 707{ # Request to update device metadata in batch. 708 "updates": [ # Required. The list of metadata updates. 709 { # Identifies metdata updates to one device. 710 "deviceMetadata": { # Metadata entries that can be attached to a `Device`. To learn more, read # Required. The metadata to update. 711 # [Device metadata](/zero-touch/guides/metadata). 712 "entries": { # Metadata entries recorded as key-value pairs. 713 "a_key": "A String", 714 }, 715 }, 716 "deviceIdentifier": { # Encapsulates hardware and product IDs to identify a manufactured device. # Device identifier. 717 # To understand requirements on identifier sets, read 718 # [Identifiers](/zero-touch/guides/identifiers). 719 "imei": "A String", # The device’s IMEI number. Validated on input. 720 "model": "A String", # The device model's name. Matches the device's built-in value returned from 721 # `android.os.Build.MODEL`. Allowed values are listed in 722 # [models](/zero-touch/resources/manufacturer-names#model-names). 723 "serialNumber": "A String", # The manufacturer's serial number for the device. This value might not be 724 # unique across different device models. 725 "meid": "A String", # The device’s MEID number. 726 "manufacturer": "A String", # The device manufacturer’s name. Matches the device's built-in 727 # value returned from `android.os.Build.MANUFACTURER`. Allowed values are 728 # listed in 729 # [manufacturers](/zero-touch/resources/manufacturer-names#manufacturers-names). 730 }, 731 "deviceId": "A String", # Device ID of the device. 732 }, 733 ], 734 } 735 736 x__xgafv: string, V1 error format. 737 Allowed values 738 1 - v1 error format 739 2 - v2 error format 740 741Returns: 742 An object of the form: 743 744 { # This resource represents a long-running operation that is the result of a 745 # network API call. 746 "response": { # This field will contain a `DevicesLongRunningOperationResponse` object if the operation is created by `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`. 747 "a_key": "", # Properties of the object. Contains field @type with type URL. 748 }, 749 "metadata": { # This field will contain a `DevicesLongRunningOperationMetadata` object if the operation is created by `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`. 750 "a_key": "", # Properties of the object. Contains field @type with type URL. 751 }, 752 "done": True or False, # If the value is `false`, it means the operation is still in progress. 753 # If `true`, the operation is completed, and either `error` or `response` is 754 # available. 755 "name": "A String", # The server-assigned name, which is only unique within the same service that 756 # originally returns it. If you use the default HTTP mapping, the 757 # `name` should be a resource name ending with `operations/{unique_id}`. 758 "error": { # The `Status` type defines a logical error model that is suitable for # This field will always be not set if the operation is created by `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`. In this case, error information for each device is set in `response.perDeviceStatus.result.status`. 759 # different programming environments, including REST APIs and RPC APIs. It is 760 # used by [gRPC](https://github.com/grpc). Each `Status` message contains 761 # three pieces of data: error code, error message, and error details. 762 # 763 # You can find out more about this error model and how to work with it in the 764 # [API Design Guide](https://cloud.google.com/apis/design/errors). 765 "message": "A String", # A developer-facing error message, which should be in English. Any 766 # user-facing error message should be localized and sent in the 767 # google.rpc.Status.details field, or localized by the client. 768 "code": 42, # The status code, which should be an enum value of google.rpc.Code. 769 "details": [ # A list of messages that carry the error details. There is a common set of 770 # message types for APIs to use. 771 { 772 "a_key": "", # Properties of the object. Contains field @type with type URL. 773 }, 774 ], 775 }, 776 }</pre> 777</div> 778 779</body></html>