blob: 06188cee349924eaf645191290f50523f5202c36 [file] [log] [blame]
Yoshi Automation Botb6971b02020-11-26 17:16:03 -08001{
2 "rootUrl": "https://smartdevicemanagement.googleapis.com/",
3 "icons": {
4 "x32": "http://www.google.com/images/icons/product/search-32.gif",
5 "x16": "http://www.google.com/images/icons/product/search-16.gif"
6 },
7 "discoveryVersion": "v1",
8 "resources": {
9 "enterprises": {
10 "resources": {
11 "devices": {
12 "methods": {
13 "get": {
14 "httpMethod": "GET",
15 "path": "v1/{+name}",
16 "parameterOrder": [
17 "name"
18 ],
19 "description": "Gets a device managed by the enterprise.",
20 "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}",
21 "response": {
22 "$ref": "GoogleHomeEnterpriseSdmV1Device"
23 },
24 "scopes": [
25 "https://www.googleapis.com/auth/sdm.service"
26 ],
27 "parameters": {
28 "name": {
29 "pattern": "^enterprises/[^/]+/devices/[^/]+$",
30 "required": true,
31 "description": "The name of the device requested. For example: \"enterprises/XYZ/devices/123\"",
32 "location": "path",
33 "type": "string"
34 }
35 },
36 "id": "smartdevicemanagement.enterprises.devices.get"
37 },
38 "list": {
39 "response": {
40 "$ref": "GoogleHomeEnterpriseSdmV1ListDevicesResponse"
41 },
42 "httpMethod": "GET",
43 "id": "smartdevicemanagement.enterprises.devices.list",
44 "parameters": {
45 "filter": {
46 "type": "string",
47 "description": "Optional filter to list devices. Filters can be done on: Device custom name (substring match): 'customName=wing'",
48 "location": "query"
49 },
50 "pageToken": {
51 "type": "string",
52 "description": "Optional token of the page to retrieve.",
53 "location": "query"
54 },
55 "parent": {
56 "required": true,
57 "pattern": "^enterprises/[^/]+$",
58 "description": "The parent enterprise to list devices under. E.g. \"enterprises/XYZ\".",
59 "location": "path",
60 "type": "string"
61 },
62 "pageSize": {
63 "description": "Optional requested page size. Server may return fewer devices than requested. If unspecified, server will pick an appropriate default.",
64 "location": "query",
65 "type": "integer",
66 "format": "int32"
67 }
68 },
69 "scopes": [
70 "https://www.googleapis.com/auth/sdm.service"
71 ],
72 "flatPath": "v1/enterprises/{enterprisesId}/devices",
73 "parameterOrder": [
74 "parent"
75 ],
76 "path": "v1/{+parent}/devices",
77 "description": "Lists devices managed by the enterprise."
78 },
79 "executeCommand": {
80 "parameters": {
81 "name": {
82 "required": true,
83 "pattern": "^enterprises/[^/]+/devices/[^/]+$",
84 "description": "The name of the device requested. For example: \"enterprises/XYZ/devices/123\"",
85 "type": "string",
86 "location": "path"
87 }
88 },
89 "id": "smartdevicemanagement.enterprises.devices.executeCommand",
90 "path": "v1/{+name}:executeCommand",
91 "scopes": [
92 "https://www.googleapis.com/auth/sdm.service"
93 ],
94 "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}:executeCommand",
95 "description": "Executes a command to device managed by the enterprise.",
96 "httpMethod": "POST",
97 "request": {
98 "$ref": "GoogleHomeEnterpriseSdmV1ExecuteDeviceCommandRequest"
99 },
100 "response": {
101 "$ref": "GoogleHomeEnterpriseSdmV1ExecuteDeviceCommandResponse"
102 },
103 "parameterOrder": [
104 "name"
105 ]
106 }
107 }
108 },
109 "structures": {
110 "methods": {
111 "list": {
112 "httpMethod": "GET",
113 "response": {
114 "$ref": "GoogleHomeEnterpriseSdmV1ListStructuresResponse"
115 },
116 "parameters": {
117 "filter": {
118 "description": "Optional filter to list structures.",
119 "type": "string",
120 "location": "query"
121 },
122 "parent": {
123 "description": "The parent enterprise to list structures under. E.g. \"enterprises/XYZ\".",
124 "location": "path",
125 "pattern": "^enterprises/[^/]+$",
126 "required": true,
127 "type": "string"
128 },
129 "pageToken": {
130 "type": "string",
131 "description": "The token of the page to retrieve.",
132 "location": "query"
133 },
134 "pageSize": {
135 "description": "Requested page size. Server may return fewer structures than requested. If unspecified, server will pick an appropriate default.",
136 "format": "int32",
137 "type": "integer",
138 "location": "query"
139 }
140 },
141 "description": "Lists structures managed by the enterprise.",
142 "parameterOrder": [
143 "parent"
144 ],
145 "flatPath": "v1/enterprises/{enterprisesId}/structures",
146 "path": "v1/{+parent}/structures",
147 "id": "smartdevicemanagement.enterprises.structures.list",
148 "scopes": [
149 "https://www.googleapis.com/auth/sdm.service"
150 ]
151 },
152 "get": {
153 "response": {
154 "$ref": "GoogleHomeEnterpriseSdmV1Structure"
155 },
156 "id": "smartdevicemanagement.enterprises.structures.get",
157 "scopes": [
158 "https://www.googleapis.com/auth/sdm.service"
159 ],
160 "parameters": {
161 "name": {
162 "required": true,
163 "pattern": "^enterprises/[^/]+/structures/[^/]+$",
164 "description": "The name of the structure requested. For example: \"enterprises/XYZ/structures/ABC\".",
165 "type": "string",
166 "location": "path"
167 }
168 },
169 "parameterOrder": [
170 "name"
171 ],
172 "httpMethod": "GET",
173 "description": "Gets a structure managed by the enterprise.",
174 "flatPath": "v1/enterprises/{enterprisesId}/structures/{structuresId}",
175 "path": "v1/{+name}"
176 }
177 },
178 "resources": {
179 "rooms": {
180 "methods": {
181 "list": {
182 "parameterOrder": [
183 "parent"
184 ],
185 "httpMethod": "GET",
186 "flatPath": "v1/enterprises/{enterprisesId}/structures/{structuresId}/rooms",
187 "id": "smartdevicemanagement.enterprises.structures.rooms.list",
188 "description": "Lists rooms managed by the enterprise.",
189 "path": "v1/{+parent}/rooms",
190 "parameters": {
191 "pageToken": {
192 "type": "string",
193 "location": "query",
194 "description": "The token of the page to retrieve."
195 },
196 "pageSize": {
197 "location": "query",
198 "format": "int32",
199 "type": "integer",
200 "description": "Requested page size. Server may return fewer rooms than requested. If unspecified, server will pick an appropriate default."
201 },
202 "parent": {
203 "pattern": "^enterprises/[^/]+/structures/[^/]+$",
204 "type": "string",
205 "description": "The parent resource name of the rooms requested. For example: \"enterprises/XYZ/structures/ABC\".",
206 "location": "path",
207 "required": true
208 }
209 },
210 "scopes": [
211 "https://www.googleapis.com/auth/sdm.service"
212 ],
213 "response": {
214 "$ref": "GoogleHomeEnterpriseSdmV1ListRoomsResponse"
215 }
216 },
217 "get": {
218 "parameters": {
219 "name": {
220 "required": true,
221 "location": "path",
222 "pattern": "^enterprises/[^/]+/structures/[^/]+/rooms/[^/]+$",
223 "description": "The name of the room requested. For example: \"enterprises/XYZ/structures/ABC/rooms/123\".",
224 "type": "string"
225 }
226 },
227 "scopes": [
228 "https://www.googleapis.com/auth/sdm.service"
229 ],
230 "flatPath": "v1/enterprises/{enterprisesId}/structures/{structuresId}/rooms/{roomsId}",
231 "response": {
232 "$ref": "GoogleHomeEnterpriseSdmV1Room"
233 },
234 "id": "smartdevicemanagement.enterprises.structures.rooms.get",
235 "path": "v1/{+name}",
236 "description": "Gets a room managed by the enterprise.",
237 "httpMethod": "GET",
238 "parameterOrder": [
239 "name"
240 ]
241 }
242 }
243 }
244 }
245 }
246 }
247 }
248 },
249 "batchPath": "batch",
250 "mtlsRootUrl": "https://smartdevicemanagement.mtls.googleapis.com/",
251 "auth": {
252 "oauth2": {
253 "scopes": {
254 "https://www.googleapis.com/auth/sdm.service": {
255 "description": "See and/or control the devices that you selected"
256 }
257 }
258 }
259 },
260 "version": "v1",
261 "documentationLink": "https://developers.google.com/nest/device-access",
262 "basePath": "",
263 "ownerDomain": "google.com",
264 "name": "smartdevicemanagement",
265 "baseUrl": "https://smartdevicemanagement.googleapis.com/",
266 "schemas": {
267 "GoogleHomeEnterpriseSdmV1ParentRelation": {
268 "description": "Represents device relationships, for instance, structure/room to which the device is assigned to. For now this is only filled in the enterprise flow.",
269 "properties": {
270 "displayName": {
271 "readOnly": true,
272 "description": "Output only. The custom name of the relation -- e.g., structure/room where the device is assigned to.",
273 "type": "string"
274 },
275 "parent": {
276 "readOnly": true,
277 "type": "string",
278 "description": "Output only. The name of the relation -- e.g., structure/room where the device is assigned to. For example: \"enterprises/XYZ/structures/ABC\" or \"enterprises/XYZ/structures/ABC/rooms/123\""
279 }
280 },
281 "type": "object",
282 "id": "GoogleHomeEnterpriseSdmV1ParentRelation"
283 },
284 "GoogleHomeEnterpriseSdmV1ExecuteDeviceCommandResponse": {
285 "type": "object",
286 "id": "GoogleHomeEnterpriseSdmV1ExecuteDeviceCommandResponse",
287 "properties": {
288 "results": {
289 "additionalProperties": {
290 "description": "Properties of the object.",
291 "type": "any"
292 },
293 "type": "object",
294 "description": "The results of executing the command."
295 }
296 },
297 "description": "Response message for SmartDeviceManagementService.ExecuteDeviceCommand"
298 },
299 "GoogleHomeEnterpriseSdmV1Device": {
300 "id": "GoogleHomeEnterpriseSdmV1Device",
301 "type": "object",
302 "properties": {
303 "traits": {
304 "additionalProperties": {
305 "type": "any",
306 "description": "Properties of the object."
307 },
308 "type": "object",
309 "description": "Output only. Device traits.",
310 "readOnly": true
311 },
312 "name": {
313 "description": "Required. The resource name of the device. For example: \"enterprises/XYZ/devices/123\".",
314 "type": "string"
315 },
316 "type": {
317 "type": "string",
318 "description": "Output only. Type of the device for general display purposes. For example: \"THERMOSTAT\". The device type should not be used to deduce or infer functionality of the actual device it is assigned to. Instead, use the returned traits for the device.",
319 "readOnly": true
320 },
321 "parentRelations": {
322 "type": "array",
323 "description": "Assignee details of the device.",
324 "items": {
325 "$ref": "GoogleHomeEnterpriseSdmV1ParentRelation"
326 }
327 }
328 },
329 "description": "Device resource represents an instance of enterprise managed device in the property."
330 },
331 "GoogleHomeEnterpriseSdmV1Structure": {
332 "id": "GoogleHomeEnterpriseSdmV1Structure",
333 "properties": {
334 "name": {
335 "readOnly": true,
336 "description": "Output only. The resource name of the structure. For example: \"enterprises/XYZ/structures/ABC\".",
337 "type": "string"
338 },
339 "traits": {
340 "type": "object",
341 "description": "Structure traits.",
342 "additionalProperties": {
343 "description": "Properties of the object.",
344 "type": "any"
345 }
346 }
347 },
348 "description": "Structure resource represents an instance of enterprise managed home or hotel room.",
349 "type": "object"
350 },
351 "GoogleHomeEnterpriseSdmV1ExecuteDeviceCommandRequest": {
352 "type": "object",
353 "id": "GoogleHomeEnterpriseSdmV1ExecuteDeviceCommandRequest",
354 "properties": {
355 "params": {
356 "additionalProperties": {
357 "type": "any",
358 "description": "Properties of the object."
359 },
360 "description": "The command message to execute, represented as a Struct.",
361 "type": "object"
362 },
363 "command": {
364 "description": "The command name to execute, represented by the fully qualified protobuf message name.",
365 "type": "string"
366 }
367 },
368 "description": "Request message for SmartDeviceManagementService.ExecuteDeviceCommand"
369 },
370 "GoogleHomeEnterpriseSdmV1ListDevicesResponse": {
371 "id": "GoogleHomeEnterpriseSdmV1ListDevicesResponse",
372 "properties": {
373 "devices": {
374 "type": "array",
375 "description": "The list of devices.",
376 "items": {
377 "$ref": "GoogleHomeEnterpriseSdmV1Device"
378 }
379 },
380 "nextPageToken": {
381 "type": "string",
382 "description": "The pagination token to retrieve the next page of results."
383 }
384 },
385 "type": "object",
386 "description": "Response message for SmartDeviceManagementService.ListDevices"
387 },
388 "GoogleHomeEnterpriseSdmV1ListStructuresResponse": {
389 "properties": {
390 "structures": {
391 "description": "The list of structures.",
392 "items": {
393 "$ref": "GoogleHomeEnterpriseSdmV1Structure"
394 },
395 "type": "array"
396 },
397 "nextPageToken": {
398 "description": "The pagination token to retrieve the next page of results. If this field is omitted, there are no subsequent pages.",
399 "type": "string"
400 }
401 },
402 "type": "object",
403 "description": "Response message for SmartDeviceManagementService.ListStructures",
404 "id": "GoogleHomeEnterpriseSdmV1ListStructuresResponse"
405 },
406 "GoogleHomeEnterpriseSdmV1Room": {
407 "id": "GoogleHomeEnterpriseSdmV1Room",
408 "properties": {
409 "name": {
410 "readOnly": true,
411 "description": "Output only. The resource name of the room. For example: \"enterprises/XYZ/structures/ABC/rooms/123\".",
412 "type": "string"
413 },
414 "traits": {
415 "description": "Room traits.",
416 "additionalProperties": {
417 "type": "any",
418 "description": "Properties of the object."
419 },
420 "type": "object"
421 }
422 },
423 "type": "object",
424 "description": "Room resource represents an instance of sub-space within a structure such as rooms in a hotel suite or rental apartment."
425 },
426 "GoogleHomeEnterpriseSdmV1ListRoomsResponse": {
427 "description": "Response message for SmartDeviceManagementService.ListRooms",
428 "type": "object",
429 "properties": {
430 "nextPageToken": {
431 "type": "string",
432 "description": "The pagination token to retrieve the next page of results. If this field is omitted, there are no subsequent pages."
433 },
434 "rooms": {
435 "items": {
436 "$ref": "GoogleHomeEnterpriseSdmV1Room"
437 },
438 "type": "array",
439 "description": "The list of rooms."
440 }
441 },
442 "id": "GoogleHomeEnterpriseSdmV1ListRoomsResponse"
443 }
444 },
445 "parameters": {
446 "upload_protocol": {
447 "location": "query",
448 "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
449 "type": "string"
450 },
451 "uploadType": {
452 "location": "query",
453 "type": "string",
454 "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")."
455 },
456 "callback": {
457 "location": "query",
458 "type": "string",
459 "description": "JSONP"
460 },
461 "oauth_token": {
462 "location": "query",
463 "description": "OAuth 2.0 token for the current user.",
464 "type": "string"
465 },
466 "$.xgafv": {
467 "enumDescriptions": [
468 "v1 error format",
469 "v2 error format"
470 ],
471 "enum": [
472 "1",
473 "2"
474 ],
475 "location": "query",
476 "description": "V1 error format.",
477 "type": "string"
478 },
479 "quotaUser": {
480 "type": "string",
481 "location": "query",
482 "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters."
483 },
484 "access_token": {
485 "location": "query",
486 "type": "string",
487 "description": "OAuth access token."
488 },
489 "fields": {
490 "type": "string",
491 "location": "query",
492 "description": "Selector specifying which fields to include in a partial response."
493 },
494 "alt": {
495 "description": "Data format for response.",
496 "enumDescriptions": [
497 "Responses with Content-Type of application/json",
498 "Media download with context-dependent Content-Type",
499 "Responses with Content-Type of application/x-protobuf"
500 ],
501 "type": "string",
502 "enum": [
503 "json",
504 "media",
505 "proto"
506 ],
507 "location": "query",
508 "default": "json"
509 },
510 "key": {
511 "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
512 "type": "string",
513 "location": "query"
514 },
515 "prettyPrint": {
516 "type": "boolean",
517 "default": "true",
518 "location": "query",
519 "description": "Returns response with indentations and line breaks."
520 }
521 },
522 "revision": "20201022",
523 "protocol": "rest",
524 "description": "Allow select enterprise partners to access, control, and manage Google and Nest devices programmatically.",
525 "servicePath": "",
526 "title": "Smart Device Management API",
527 "ownerName": "Google",
528 "version_module": true,
529 "id": "smartdevicemanagement:v1",
530 "canonicalName": "Smart Device Management",
531 "kind": "discovery#restDescription",
532 "fullyEncodeReservedExpansion": true
533}