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=None, 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 device is already claimed by another customer, the call returns an error.</p>
80<p class="toc_element">
81  <code><a href="#claimAsync">claimAsync(partnerId, body=None, x__xgafv=None)</a></code></p>
82<p class="firstline">Claims a batch of devices for a customer asynchronously. Adds the devices to zero-touch enrollment. To learn more, read [Long‑running batch operations](/zero-touch/guides/how-it-works#operations).</p>
83<p class="toc_element">
84  <code><a href="#close">close()</a></code></p>
85<p class="firstline">Close httplib2 connections.</p>
86<p class="toc_element">
87  <code><a href="#findByIdentifier">findByIdentifier(partnerId, body=None, x__xgafv=None)</a></code></p>
88<p class="firstline">Finds devices by hardware identifiers, such as IMEI.</p>
89<p class="toc_element">
90  <code><a href="#findByIdentifier_next">findByIdentifier_next(previous_request, previous_response)</a></code></p>
91<p class="firstline">Retrieves the next page of results.</p>
92<p class="toc_element">
93  <code><a href="#findByOwner">findByOwner(partnerId, body=None, x__xgafv=None)</a></code></p>
94<p class="firstline">Finds devices claimed for customers. The results only contain devices registered to the reseller that's identified by the `partnerId` argument. The customer's devices purchased from other resellers don't appear in the results.</p>
95<p class="toc_element">
96  <code><a href="#findByOwner_next">findByOwner_next(previous_request, previous_response)</a></code></p>
97<p class="firstline">Retrieves the next page of results.</p>
98<p class="toc_element">
99  <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
100<p class="firstline">Gets a device.</p>
101<p class="toc_element">
102  <code><a href="#metadata">metadata(metadataOwnerId, deviceId, body=None, x__xgafv=None)</a></code></p>
103<p class="firstline">Updates reseller metadata associated with the device.</p>
104<p class="toc_element">
105  <code><a href="#unclaim">unclaim(partnerId, body=None, x__xgafv=None)</a></code></p>
106<p class="firstline">Unclaims a device from a customer and removes it from zero-touch enrollment.</p>
107<p class="toc_element">
108  <code><a href="#unclaimAsync">unclaimAsync(partnerId, body=None, x__xgafv=None)</a></code></p>
109<p class="firstline">Unclaims a batch of devices for a customer asynchronously. Removes the devices from zero-touch enrollment. To learn more, read [Long‑running batch operations](/zero-touch/guides/how-it-works#operations).</p>
110<p class="toc_element">
111  <code><a href="#updateMetadataAsync">updateMetadataAsync(partnerId, body=None, x__xgafv=None)</a></code></p>
112<p class="firstline">Updates the reseller metadata attached to a batch of devices. This method updates devices asynchronously and returns an `Operation` that can be used to track progress. Read [Long‑running batch operations](/zero-touch/guides/how-it-works#operations).</p>
113<h3>Method Details</h3>
114<div class="method">
115    <code class="details" id="claim">claim(partnerId, body=None, x__xgafv=None)</code>
116  <pre>Claims a device for a customer and adds it to zero-touch enrollment. If the device is already claimed by another customer, the call returns an error.
117
118Args:
119  partnerId: string, Required. The ID of the reseller partner. (required)
120  body: object, The request body.
121    The object takes the form of:
122
123{ # Request message to claim a device on behalf of a customer.
124  &quot;customerId&quot;: &quot;A String&quot;, # Required. The ID of the customer for whom the device is being claimed.
125  &quot;deviceIdentifier&quot;: { # Encapsulates hardware and product IDs to identify a manufactured device. To understand requirements on identifier sets, read [Identifiers](https://developers.google.com/zero-touch/guides/identifiers). # Required. Required. The device identifier of the device to claim.
126    &quot;imei&quot;: &quot;A String&quot;, # The device’s IMEI number. Validated on input.
127    &quot;manufacturer&quot;: &quot;A String&quot;, # The device manufacturer’s name. Matches the device&#x27;s built-in value returned from `android.os.Build.MANUFACTURER`. Allowed values are listed in [manufacturers](/zero-touch/resources/manufacturer-names#manufacturers-names).
128    &quot;meid&quot;: &quot;A String&quot;, # The device’s MEID number.
129    &quot;model&quot;: &quot;A String&quot;, # The device model&#x27;s name. Matches the device&#x27;s built-in value returned from `android.os.Build.MODEL`. Allowed values are listed in [models](/zero-touch/resources/manufacturer-names#model-names).
130    &quot;serialNumber&quot;: &quot;A String&quot;, # The manufacturer&#x27;s serial number for the device. This value might not be unique across different device models.
131  },
132  &quot;deviceMetadata&quot;: { # Metadata entries that can be attached to a `Device`. To learn more, read [Device metadata](https://developers.google.com/zero-touch/guides/metadata). # Optional. The metadata to attach to the device.
133    &quot;entries&quot;: { # Metadata entries recorded as key-value pairs.
134      &quot;a_key&quot;: &quot;A String&quot;,
135    },
136  },
137  &quot;sectionType&quot;: &quot;A String&quot;, # Required. The section type of the device&#x27;s provisioning record.
138}
139
140  x__xgafv: string, V1 error format.
141    Allowed values
142      1 - v1 error format
143      2 - v2 error format
144
145Returns:
146  An object of the form:
147
148    { # Response message containing device id of the claim.
149  &quot;deviceId&quot;: &quot;A String&quot;, # The device ID of the claimed device.
150  &quot;deviceName&quot;: &quot;A String&quot;, # The resource name of the device in the format `partners/[PARTNER_ID]/devices/[DEVICE_ID]`.
151}</pre>
152</div>
153
154<div class="method">
155    <code class="details" id="claimAsync">claimAsync(partnerId, body=None, x__xgafv=None)</code>
156  <pre>Claims a batch of devices for a customer asynchronously. Adds the devices to zero-touch enrollment. To learn more, read [Long‑running batch operations](/zero-touch/guides/how-it-works#operations).
157
158Args:
159  partnerId: string, Required. The ID of the reseller partner. (required)
160  body: object, The request body.
161    The object takes the form of:
162
163{ # Request to claim devices asynchronously in batch. Claiming a device adds the device to zero-touch enrollment and shows the device in the customer&#x27;s view of the portal.
164  &quot;claims&quot;: [ # Required. A list of device claims.
165    { # Identifies one claim request.
166      &quot;customerId&quot;: &quot;A String&quot;, # Required. The ID of the customer for whom the device is being claimed.
167      &quot;deviceIdentifier&quot;: { # Encapsulates hardware and product IDs to identify a manufactured device. To understand requirements on identifier sets, read [Identifiers](https://developers.google.com/zero-touch/guides/identifiers). # Required. Required. Device identifier of the device.
168        &quot;imei&quot;: &quot;A String&quot;, # The device’s IMEI number. Validated on input.
169        &quot;manufacturer&quot;: &quot;A String&quot;, # The device manufacturer’s name. Matches the device&#x27;s built-in value returned from `android.os.Build.MANUFACTURER`. Allowed values are listed in [manufacturers](/zero-touch/resources/manufacturer-names#manufacturers-names).
170        &quot;meid&quot;: &quot;A String&quot;, # The device’s MEID number.
171        &quot;model&quot;: &quot;A String&quot;, # The device model&#x27;s name. Matches the device&#x27;s built-in value returned from `android.os.Build.MODEL`. Allowed values are listed in [models](/zero-touch/resources/manufacturer-names#model-names).
172        &quot;serialNumber&quot;: &quot;A String&quot;, # The manufacturer&#x27;s serial number for the device. This value might not be unique across different device models.
173      },
174      &quot;deviceMetadata&quot;: { # Metadata entries that can be attached to a `Device`. To learn more, read [Device metadata](https://developers.google.com/zero-touch/guides/metadata). # Required. The metadata to attach to the device at claim.
175        &quot;entries&quot;: { # Metadata entries recorded as key-value pairs.
176          &quot;a_key&quot;: &quot;A String&quot;,
177        },
178      },
179      &quot;sectionType&quot;: &quot;A String&quot;, # Required. The section type of the device&#x27;s provisioning record.
180    },
181  ],
182}
183
184  x__xgafv: string, V1 error format.
185    Allowed values
186      1 - v1 error format
187      2 - v2 error format
188
189Returns:
190  An object of the form:
191
192    { # This resource represents a long-running operation that is the result of a network API call.
193  &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
194  &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # 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`.
195    &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
196    &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
197      {
198        &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
199      },
200    ],
201    &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
202  },
203  &quot;metadata&quot;: { # This field will contain a `DevicesLongRunningOperationMetadata` object if the operation is created by `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`.
204    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
205  },
206  &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
207  &quot;response&quot;: { # This field will contain a `DevicesLongRunningOperationResponse` object if the operation is created by `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`.
208    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
209  },
210}</pre>
211</div>
212
213<div class="method">
214    <code class="details" id="close">close()</code>
215  <pre>Close httplib2 connections.</pre>
216</div>
217
218<div class="method">
219    <code class="details" id="findByIdentifier">findByIdentifier(partnerId, body=None, x__xgafv=None)</code>
220  <pre>Finds devices by hardware identifiers, such as IMEI.
221
222Args:
223  partnerId: string, Required. The ID of the reseller partner. (required)
224  body: object, The request body.
225    The object takes the form of:
226
227{ # Request to find devices.
228  &quot;deviceIdentifier&quot;: { # Encapsulates hardware and product IDs to identify a manufactured device. To understand requirements on identifier sets, read [Identifiers](https://developers.google.com/zero-touch/guides/identifiers). # Required. Required. The device identifier to search for.
229    &quot;imei&quot;: &quot;A String&quot;, # The device’s IMEI number. Validated on input.
230    &quot;manufacturer&quot;: &quot;A String&quot;, # The device manufacturer’s name. Matches the device&#x27;s built-in value returned from `android.os.Build.MANUFACTURER`. Allowed values are listed in [manufacturers](/zero-touch/resources/manufacturer-names#manufacturers-names).
231    &quot;meid&quot;: &quot;A String&quot;, # The device’s MEID number.
232    &quot;model&quot;: &quot;A String&quot;, # The device model&#x27;s name. Matches the device&#x27;s built-in value returned from `android.os.Build.MODEL`. Allowed values are listed in [models](/zero-touch/resources/manufacturer-names#model-names).
233    &quot;serialNumber&quot;: &quot;A String&quot;, # The manufacturer&#x27;s serial number for the device. This value might not be unique across different device models.
234  },
235  &quot;limit&quot;: &quot;A String&quot;, # Required. The maximum number of devices to show in a page of results. Must be between 1 and 100 inclusive.
236  &quot;pageToken&quot;: &quot;A String&quot;, # A token specifying which result page to return.
237}
238
239  x__xgafv: string, V1 error format.
240    Allowed values
241      1 - v1 error format
242      2 - v2 error format
243
244Returns:
245  An object of the form:
246
247    { # Response containing found devices.
248  &quot;devices&quot;: [ # Found devices.
249    { # An Android device registered for zero-touch enrollment.
250      &quot;claims&quot;: [ # Output only. The provisioning claims for a device. Devices claimed for zero-touch enrollment have a claim with the type `SECTION_TYPE_ZERO_TOUCH`. Call `partners.devices.unclaim` or `partners.devices.unclaimAsync` to remove the device from zero-touch enrollment.
251        { # A record of a device claimed by a reseller for a customer. Devices claimed for zero-touch enrollment have a claim with the type `SECTION_TYPE_ZERO_TOUCH`. To learn more, read [Claim devices for customers](/zero-touch/guides/how-it-works#claim).
252          &quot;additionalService&quot;: &quot;A String&quot;, # The Additional service registered for the device.
253          &quot;ownerCompanyId&quot;: &quot;A String&quot;, # The ID of the Customer that purchased the device.
254          &quot;resellerId&quot;: &quot;A String&quot;, # The ID of the reseller that claimed the device.
255          &quot;sectionType&quot;: &quot;A String&quot;, # Output only. The type of claim made on the device.
256          &quot;vacationModeExpireTime&quot;: &quot;A String&quot;, # The timestamp when the device will exit ‘vacation mode’. This value is present iff the device is in &#x27;vacation mode&#x27;.
257          &quot;vacationModeStartTime&quot;: &quot;A String&quot;, # The timestamp when the device was put into ‘vacation mode’. This value is present iff the device is in &#x27;vacation mode&#x27;.
258        },
259      ],
260      &quot;configuration&quot;: &quot;A String&quot;, # Not available to resellers.
261      &quot;deviceId&quot;: &quot;A String&quot;, # Output only. The ID of the device. Assigned by the server.
262      &quot;deviceIdentifier&quot;: { # Encapsulates hardware and product IDs to identify a manufactured device. To understand requirements on identifier sets, read [Identifiers](https://developers.google.com/zero-touch/guides/identifiers). # The hardware IDs that identify a manufactured device. To learn more, read [Identifiers](https://developers.google.com/zero-touch/guides/identifiers).
263        &quot;imei&quot;: &quot;A String&quot;, # The device’s IMEI number. Validated on input.
264        &quot;manufacturer&quot;: &quot;A String&quot;, # The device manufacturer’s name. Matches the device&#x27;s built-in value returned from `android.os.Build.MANUFACTURER`. Allowed values are listed in [manufacturers](/zero-touch/resources/manufacturer-names#manufacturers-names).
265        &quot;meid&quot;: &quot;A String&quot;, # The device’s MEID number.
266        &quot;model&quot;: &quot;A String&quot;, # The device model&#x27;s name. Matches the device&#x27;s built-in value returned from `android.os.Build.MODEL`. Allowed values are listed in [models](/zero-touch/resources/manufacturer-names#model-names).
267        &quot;serialNumber&quot;: &quot;A String&quot;, # The manufacturer&#x27;s serial number for the device. This value might not be unique across different device models.
268      },
269      &quot;deviceMetadata&quot;: { # Metadata entries that can be attached to a `Device`. To learn more, read [Device metadata](https://developers.google.com/zero-touch/guides/metadata). # The metadata attached to the device. Structured as key-value pairs. To learn more, read [Device metadata](https://developers.google.com/zero-touch/guides/metadata).
270        &quot;entries&quot;: { # Metadata entries recorded as key-value pairs.
271          &quot;a_key&quot;: &quot;A String&quot;,
272        },
273      },
274      &quot;name&quot;: &quot;A String&quot;, # Output only. The API resource name in the format `partners/[PARTNER_ID]/devices/[DEVICE_ID]`. Assigned by the server.
275    },
276  ],
277  &quot;nextPageToken&quot;: &quot;A String&quot;, # A token used to access the next page of results. Omitted if no further results are available.
278  &quot;totalSize&quot;: 42, # The total count of items in the list irrespective of pagination.
279}</pre>
280</div>
281
282<div class="method">
283    <code class="details" id="findByIdentifier_next">findByIdentifier_next(previous_request, previous_response)</code>
284  <pre>Retrieves the next page of results.
285
286Args:
287  previous_request: The request for the previous page. (required)
288  previous_response: The response from the request for the previous page. (required)
289
290Returns:
291  A request object that you can call &#x27;execute()&#x27; on to request the next
292  page. Returns None if there are no more items in the collection.
293    </pre>
294</div>
295
296<div class="method">
297    <code class="details" id="findByOwner">findByOwner(partnerId, body=None, x__xgafv=None)</code>
298  <pre>Finds devices claimed for customers. The results only contain devices registered to the reseller that&#x27;s identified by the `partnerId` argument. The customer&#x27;s devices purchased from other resellers don&#x27;t appear in the results.
299
300Args:
301  partnerId: string, Required. The ID of the reseller partner. (required)
302  body: object, The request body.
303    The object takes the form of:
304
305{ # Request to find devices by customers.
306  &quot;customerId&quot;: [ # Required. The list of customer IDs to search for.
307    &quot;A String&quot;,
308  ],
309  &quot;limit&quot;: &quot;A String&quot;, # Required. The maximum number of devices to show in a page of results. Must be between 1 and 100 inclusive.
310  &quot;pageToken&quot;: &quot;A String&quot;, # A token specifying which result page to return.
311  &quot;sectionType&quot;: &quot;A String&quot;, # Required. The section type of the device&#x27;s provisioning record.
312}
313
314  x__xgafv: string, V1 error format.
315    Allowed values
316      1 - v1 error format
317      2 - v2 error format
318
319Returns:
320  An object of the form:
321
322    { # Response containing found devices.
323  &quot;devices&quot;: [ # The customer&#x27;s devices.
324    { # An Android device registered for zero-touch enrollment.
325      &quot;claims&quot;: [ # Output only. The provisioning claims for a device. Devices claimed for zero-touch enrollment have a claim with the type `SECTION_TYPE_ZERO_TOUCH`. Call `partners.devices.unclaim` or `partners.devices.unclaimAsync` to remove the device from zero-touch enrollment.
326        { # A record of a device claimed by a reseller for a customer. Devices claimed for zero-touch enrollment have a claim with the type `SECTION_TYPE_ZERO_TOUCH`. To learn more, read [Claim devices for customers](/zero-touch/guides/how-it-works#claim).
327          &quot;additionalService&quot;: &quot;A String&quot;, # The Additional service registered for the device.
328          &quot;ownerCompanyId&quot;: &quot;A String&quot;, # The ID of the Customer that purchased the device.
329          &quot;resellerId&quot;: &quot;A String&quot;, # The ID of the reseller that claimed the device.
330          &quot;sectionType&quot;: &quot;A String&quot;, # Output only. The type of claim made on the device.
331          &quot;vacationModeExpireTime&quot;: &quot;A String&quot;, # The timestamp when the device will exit ‘vacation mode’. This value is present iff the device is in &#x27;vacation mode&#x27;.
332          &quot;vacationModeStartTime&quot;: &quot;A String&quot;, # The timestamp when the device was put into ‘vacation mode’. This value is present iff the device is in &#x27;vacation mode&#x27;.
333        },
334      ],
335      &quot;configuration&quot;: &quot;A String&quot;, # Not available to resellers.
336      &quot;deviceId&quot;: &quot;A String&quot;, # Output only. The ID of the device. Assigned by the server.
337      &quot;deviceIdentifier&quot;: { # Encapsulates hardware and product IDs to identify a manufactured device. To understand requirements on identifier sets, read [Identifiers](https://developers.google.com/zero-touch/guides/identifiers). # The hardware IDs that identify a manufactured device. To learn more, read [Identifiers](https://developers.google.com/zero-touch/guides/identifiers).
338        &quot;imei&quot;: &quot;A String&quot;, # The device’s IMEI number. Validated on input.
339        &quot;manufacturer&quot;: &quot;A String&quot;, # The device manufacturer’s name. Matches the device&#x27;s built-in value returned from `android.os.Build.MANUFACTURER`. Allowed values are listed in [manufacturers](/zero-touch/resources/manufacturer-names#manufacturers-names).
340        &quot;meid&quot;: &quot;A String&quot;, # The device’s MEID number.
341        &quot;model&quot;: &quot;A String&quot;, # The device model&#x27;s name. Matches the device&#x27;s built-in value returned from `android.os.Build.MODEL`. Allowed values are listed in [models](/zero-touch/resources/manufacturer-names#model-names).
342        &quot;serialNumber&quot;: &quot;A String&quot;, # The manufacturer&#x27;s serial number for the device. This value might not be unique across different device models.
343      },
344      &quot;deviceMetadata&quot;: { # Metadata entries that can be attached to a `Device`. To learn more, read [Device metadata](https://developers.google.com/zero-touch/guides/metadata). # The metadata attached to the device. Structured as key-value pairs. To learn more, read [Device metadata](https://developers.google.com/zero-touch/guides/metadata).
345        &quot;entries&quot;: { # Metadata entries recorded as key-value pairs.
346          &quot;a_key&quot;: &quot;A String&quot;,
347        },
348      },
349      &quot;name&quot;: &quot;A String&quot;, # Output only. The API resource name in the format `partners/[PARTNER_ID]/devices/[DEVICE_ID]`. Assigned by the server.
350    },
351  ],
352  &quot;nextPageToken&quot;: &quot;A String&quot;, # A token used to access the next page of results. Omitted if no further results are available.
353  &quot;totalSize&quot;: 42, # The total count of items in the list irrespective of pagination.
354}</pre>
355</div>
356
357<div class="method">
358    <code class="details" id="findByOwner_next">findByOwner_next(previous_request, previous_response)</code>
359  <pre>Retrieves the next page of results.
360
361Args:
362  previous_request: The request for the previous page. (required)
363  previous_response: The response from the request for the previous page. (required)
364
365Returns:
366  A request object that you can call &#x27;execute()&#x27; on to request the next
367  page. Returns None if there are no more items in the collection.
368    </pre>
369</div>
370
371<div class="method">
372    <code class="details" id="get">get(name, x__xgafv=None)</code>
373  <pre>Gets a device.
374
375Args:
376  name: string, Required. The device API resource name in the format `partners/[PARTNER_ID]/devices/[DEVICE_ID]`. (required)
377  x__xgafv: string, V1 error format.
378    Allowed values
379      1 - v1 error format
380      2 - v2 error format
381
382Returns:
383  An object of the form:
384
385    { # An Android device registered for zero-touch enrollment.
386  &quot;claims&quot;: [ # Output only. The provisioning claims for a device. Devices claimed for zero-touch enrollment have a claim with the type `SECTION_TYPE_ZERO_TOUCH`. Call `partners.devices.unclaim` or `partners.devices.unclaimAsync` to remove the device from zero-touch enrollment.
387    { # A record of a device claimed by a reseller for a customer. Devices claimed for zero-touch enrollment have a claim with the type `SECTION_TYPE_ZERO_TOUCH`. To learn more, read [Claim devices for customers](/zero-touch/guides/how-it-works#claim).
388      &quot;additionalService&quot;: &quot;A String&quot;, # The Additional service registered for the device.
389      &quot;ownerCompanyId&quot;: &quot;A String&quot;, # The ID of the Customer that purchased the device.
390      &quot;resellerId&quot;: &quot;A String&quot;, # The ID of the reseller that claimed the device.
391      &quot;sectionType&quot;: &quot;A String&quot;, # Output only. The type of claim made on the device.
392      &quot;vacationModeExpireTime&quot;: &quot;A String&quot;, # The timestamp when the device will exit ‘vacation mode’. This value is present iff the device is in &#x27;vacation mode&#x27;.
393      &quot;vacationModeStartTime&quot;: &quot;A String&quot;, # The timestamp when the device was put into ‘vacation mode’. This value is present iff the device is in &#x27;vacation mode&#x27;.
394    },
395  ],
396  &quot;configuration&quot;: &quot;A String&quot;, # Not available to resellers.
397  &quot;deviceId&quot;: &quot;A String&quot;, # Output only. The ID of the device. Assigned by the server.
398  &quot;deviceIdentifier&quot;: { # Encapsulates hardware and product IDs to identify a manufactured device. To understand requirements on identifier sets, read [Identifiers](https://developers.google.com/zero-touch/guides/identifiers). # The hardware IDs that identify a manufactured device. To learn more, read [Identifiers](https://developers.google.com/zero-touch/guides/identifiers).
399    &quot;imei&quot;: &quot;A String&quot;, # The device’s IMEI number. Validated on input.
400    &quot;manufacturer&quot;: &quot;A String&quot;, # The device manufacturer’s name. Matches the device&#x27;s built-in value returned from `android.os.Build.MANUFACTURER`. Allowed values are listed in [manufacturers](/zero-touch/resources/manufacturer-names#manufacturers-names).
401    &quot;meid&quot;: &quot;A String&quot;, # The device’s MEID number.
402    &quot;model&quot;: &quot;A String&quot;, # The device model&#x27;s name. Matches the device&#x27;s built-in value returned from `android.os.Build.MODEL`. Allowed values are listed in [models](/zero-touch/resources/manufacturer-names#model-names).
403    &quot;serialNumber&quot;: &quot;A String&quot;, # The manufacturer&#x27;s serial number for the device. This value might not be unique across different device models.
404  },
405  &quot;deviceMetadata&quot;: { # Metadata entries that can be attached to a `Device`. To learn more, read [Device metadata](https://developers.google.com/zero-touch/guides/metadata). # The metadata attached to the device. Structured as key-value pairs. To learn more, read [Device metadata](https://developers.google.com/zero-touch/guides/metadata).
406    &quot;entries&quot;: { # Metadata entries recorded as key-value pairs.
407      &quot;a_key&quot;: &quot;A String&quot;,
408    },
409  },
410  &quot;name&quot;: &quot;A String&quot;, # Output only. The API resource name in the format `partners/[PARTNER_ID]/devices/[DEVICE_ID]`. Assigned by the server.
411}</pre>
412</div>
413
414<div class="method">
415    <code class="details" id="metadata">metadata(metadataOwnerId, deviceId, body=None, x__xgafv=None)</code>
416  <pre>Updates reseller metadata associated with the device.
417
418Args:
419  metadataOwnerId: string, Required. The owner of the newly set metadata. Set this to the partner ID. (required)
420  deviceId: string, Required. The ID of the device. (required)
421  body: object, The request body.
422    The object takes the form of:
423
424{ # Request to set metadata for a device.
425  &quot;deviceMetadata&quot;: { # Metadata entries that can be attached to a `Device`. To learn more, read [Device metadata](https://developers.google.com/zero-touch/guides/metadata). # Required. The metadata to attach to the device.
426    &quot;entries&quot;: { # Metadata entries recorded as key-value pairs.
427      &quot;a_key&quot;: &quot;A String&quot;,
428    },
429  },
430}
431
432  x__xgafv: string, V1 error format.
433    Allowed values
434      1 - v1 error format
435      2 - v2 error format
436
437Returns:
438  An object of the form:
439
440    { # Metadata entries that can be attached to a `Device`. To learn more, read [Device metadata](https://developers.google.com/zero-touch/guides/metadata).
441  &quot;entries&quot;: { # Metadata entries recorded as key-value pairs.
442    &quot;a_key&quot;: &quot;A String&quot;,
443  },
444}</pre>
445</div>
446
447<div class="method">
448    <code class="details" id="unclaim">unclaim(partnerId, body=None, x__xgafv=None)</code>
449  <pre>Unclaims a device from a customer and removes it from zero-touch enrollment.
450
451Args:
452  partnerId: string, Required. The ID of the reseller partner. (required)
453  body: object, The request body.
454    The object takes the form of:
455
456{ # Request message to unclaim a device.
457  &quot;deviceId&quot;: &quot;A String&quot;, # Required. The device ID returned by `ClaimDevice`.
458  &quot;deviceIdentifier&quot;: { # Encapsulates hardware and product IDs to identify a manufactured device. To understand requirements on identifier sets, read [Identifiers](https://developers.google.com/zero-touch/guides/identifiers). # Required. The device identifier you used when you claimed this device.
459    &quot;imei&quot;: &quot;A String&quot;, # The device’s IMEI number. Validated on input.
460    &quot;manufacturer&quot;: &quot;A String&quot;, # The device manufacturer’s name. Matches the device&#x27;s built-in value returned from `android.os.Build.MANUFACTURER`. Allowed values are listed in [manufacturers](/zero-touch/resources/manufacturer-names#manufacturers-names).
461    &quot;meid&quot;: &quot;A String&quot;, # The device’s MEID number.
462    &quot;model&quot;: &quot;A String&quot;, # The device model&#x27;s name. Matches the device&#x27;s built-in value returned from `android.os.Build.MODEL`. Allowed values are listed in [models](/zero-touch/resources/manufacturer-names#model-names).
463    &quot;serialNumber&quot;: &quot;A String&quot;, # The manufacturer&#x27;s serial number for the device. This value might not be unique across different device models.
464  },
465  &quot;sectionType&quot;: &quot;A String&quot;, # Required. The section type of the device&#x27;s provisioning record.
466  &quot;vacationModeDays&quot;: 42, # The duration of the vacation unlock starting from when the request is processed. (1 day is treated as 24 hours)
467  &quot;vacationModeExpireTime&quot;: &quot;A String&quot;, # The expiration time of the vacation unlock.
468}
469
470  x__xgafv: string, V1 error format.
471    Allowed values
472      1 - v1 error format
473      2 - v2 error format
474
475Returns:
476  An object of the form:
477
478    { # A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); } The JSON representation for `Empty` is empty JSON object `{}`.
479}</pre>
480</div>
481
482<div class="method">
483    <code class="details" id="unclaimAsync">unclaimAsync(partnerId, body=None, x__xgafv=None)</code>
484  <pre>Unclaims a batch of devices for a customer asynchronously. Removes the devices from zero-touch enrollment. To learn more, read [Long‑running batch operations](/zero-touch/guides/how-it-works#operations).
485
486Args:
487  partnerId: string, Required. The reseller partner ID. (required)
488  body: object, The request body.
489    The object takes the form of:
490
491{ # Request to unclaim devices asynchronously in batch.
492  &quot;unclaims&quot;: [ # Required. The list of devices to unclaim.
493    { # Identifies one unclaim request.
494      &quot;deviceId&quot;: &quot;A String&quot;, # Required. Device ID of the device.
495      &quot;deviceIdentifier&quot;: { # Encapsulates hardware and product IDs to identify a manufactured device. To understand requirements on identifier sets, read [Identifiers](https://developers.google.com/zero-touch/guides/identifiers). # Required. Device identifier of the device.
496        &quot;imei&quot;: &quot;A String&quot;, # The device’s IMEI number. Validated on input.
497        &quot;manufacturer&quot;: &quot;A String&quot;, # The device manufacturer’s name. Matches the device&#x27;s built-in value returned from `android.os.Build.MANUFACTURER`. Allowed values are listed in [manufacturers](/zero-touch/resources/manufacturer-names#manufacturers-names).
498        &quot;meid&quot;: &quot;A String&quot;, # The device’s MEID number.
499        &quot;model&quot;: &quot;A String&quot;, # The device model&#x27;s name. Matches the device&#x27;s built-in value returned from `android.os.Build.MODEL`. Allowed values are listed in [models](/zero-touch/resources/manufacturer-names#model-names).
500        &quot;serialNumber&quot;: &quot;A String&quot;, # The manufacturer&#x27;s serial number for the device. This value might not be unique across different device models.
501      },
502      &quot;sectionType&quot;: &quot;A String&quot;, # Required. The section type of the device&#x27;s provisioning record.
503      &quot;vacationModeDays&quot;: 42, # Optional. The duration of the vacation unlock starting from when the request is processed. (1 day is treated as 24 hours)
504      &quot;vacationModeExpireTime&quot;: &quot;A String&quot;, # Optional. The expiration time of the vacation unlock.
505    },
506  ],
507}
508
509  x__xgafv: string, V1 error format.
510    Allowed values
511      1 - v1 error format
512      2 - v2 error format
513
514Returns:
515  An object of the form:
516
517    { # This resource represents a long-running operation that is the result of a network API call.
518  &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
519  &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # 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`.
520    &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
521    &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
522      {
523        &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
524      },
525    ],
526    &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
527  },
528  &quot;metadata&quot;: { # This field will contain a `DevicesLongRunningOperationMetadata` object if the operation is created by `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`.
529    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
530  },
531  &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
532  &quot;response&quot;: { # This field will contain a `DevicesLongRunningOperationResponse` object if the operation is created by `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`.
533    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
534  },
535}</pre>
536</div>
537
538<div class="method">
539    <code class="details" id="updateMetadataAsync">updateMetadataAsync(partnerId, body=None, x__xgafv=None)</code>
540  <pre>Updates the reseller metadata attached to a batch of devices. This method updates devices asynchronously and returns an `Operation` that can be used to track progress. Read [Long‑running batch operations](/zero-touch/guides/how-it-works#operations).
541
542Args:
543  partnerId: string, Required. The reseller partner ID. (required)
544  body: object, The request body.
545    The object takes the form of:
546
547{ # Request to update device metadata in batch.
548  &quot;updates&quot;: [ # Required. The list of metadata updates.
549    { # Identifies metadata updates to one device.
550      &quot;deviceId&quot;: &quot;A String&quot;, # Required. Device ID of the device.
551      &quot;deviceIdentifier&quot;: { # Encapsulates hardware and product IDs to identify a manufactured device. To understand requirements on identifier sets, read [Identifiers](https://developers.google.com/zero-touch/guides/identifiers). # Required. Device identifier.
552        &quot;imei&quot;: &quot;A String&quot;, # The device’s IMEI number. Validated on input.
553        &quot;manufacturer&quot;: &quot;A String&quot;, # The device manufacturer’s name. Matches the device&#x27;s built-in value returned from `android.os.Build.MANUFACTURER`. Allowed values are listed in [manufacturers](/zero-touch/resources/manufacturer-names#manufacturers-names).
554        &quot;meid&quot;: &quot;A String&quot;, # The device’s MEID number.
555        &quot;model&quot;: &quot;A String&quot;, # The device model&#x27;s name. Matches the device&#x27;s built-in value returned from `android.os.Build.MODEL`. Allowed values are listed in [models](/zero-touch/resources/manufacturer-names#model-names).
556        &quot;serialNumber&quot;: &quot;A String&quot;, # The manufacturer&#x27;s serial number for the device. This value might not be unique across different device models.
557      },
558      &quot;deviceMetadata&quot;: { # Metadata entries that can be attached to a `Device`. To learn more, read [Device metadata](https://developers.google.com/zero-touch/guides/metadata). # Required. The metadata to update.
559        &quot;entries&quot;: { # Metadata entries recorded as key-value pairs.
560          &quot;a_key&quot;: &quot;A String&quot;,
561        },
562      },
563    },
564  ],
565}
566
567  x__xgafv: string, V1 error format.
568    Allowed values
569      1 - v1 error format
570      2 - v2 error format
571
572Returns:
573  An object of the form:
574
575    { # This resource represents a long-running operation that is the result of a network API call.
576  &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
577  &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # 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`.
578    &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
579    &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
580      {
581        &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
582      },
583    ],
584    &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
585  },
586  &quot;metadata&quot;: { # This field will contain a `DevicesLongRunningOperationMetadata` object if the operation is created by `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`.
587    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
588  },
589  &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
590  &quot;response&quot;: { # This field will contain a `DevicesLongRunningOperationResponse` object if the operation is created by `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`.
591    &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
592  },
593}</pre>
594</div>
595
596</body></html>