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