blob: 06188cee349924eaf645191290f50523f5202c36 [file] [log] [blame] [edit]
{
"rootUrl": "https://smartdevicemanagement.googleapis.com/",
"icons": {
"x32": "http://www.google.com/images/icons/product/search-32.gif",
"x16": "http://www.google.com/images/icons/product/search-16.gif"
},
"discoveryVersion": "v1",
"resources": {
"enterprises": {
"resources": {
"devices": {
"methods": {
"get": {
"httpMethod": "GET",
"path": "v1/{+name}",
"parameterOrder": [
"name"
],
"description": "Gets a device managed by the enterprise.",
"flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}",
"response": {
"$ref": "GoogleHomeEnterpriseSdmV1Device"
},
"scopes": [
"https://www.googleapis.com/auth/sdm.service"
],
"parameters": {
"name": {
"pattern": "^enterprises/[^/]+/devices/[^/]+$",
"required": true,
"description": "The name of the device requested. For example: \"enterprises/XYZ/devices/123\"",
"location": "path",
"type": "string"
}
},
"id": "smartdevicemanagement.enterprises.devices.get"
},
"list": {
"response": {
"$ref": "GoogleHomeEnterpriseSdmV1ListDevicesResponse"
},
"httpMethod": "GET",
"id": "smartdevicemanagement.enterprises.devices.list",
"parameters": {
"filter": {
"type": "string",
"description": "Optional filter to list devices. Filters can be done on: Device custom name (substring match): 'customName=wing'",
"location": "query"
},
"pageToken": {
"type": "string",
"description": "Optional token of the page to retrieve.",
"location": "query"
},
"parent": {
"required": true,
"pattern": "^enterprises/[^/]+$",
"description": "The parent enterprise to list devices under. E.g. \"enterprises/XYZ\".",
"location": "path",
"type": "string"
},
"pageSize": {
"description": "Optional requested page size. Server may return fewer devices than requested. If unspecified, server will pick an appropriate default.",
"location": "query",
"type": "integer",
"format": "int32"
}
},
"scopes": [
"https://www.googleapis.com/auth/sdm.service"
],
"flatPath": "v1/enterprises/{enterprisesId}/devices",
"parameterOrder": [
"parent"
],
"path": "v1/{+parent}/devices",
"description": "Lists devices managed by the enterprise."
},
"executeCommand": {
"parameters": {
"name": {
"required": true,
"pattern": "^enterprises/[^/]+/devices/[^/]+$",
"description": "The name of the device requested. For example: \"enterprises/XYZ/devices/123\"",
"type": "string",
"location": "path"
}
},
"id": "smartdevicemanagement.enterprises.devices.executeCommand",
"path": "v1/{+name}:executeCommand",
"scopes": [
"https://www.googleapis.com/auth/sdm.service"
],
"flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}:executeCommand",
"description": "Executes a command to device managed by the enterprise.",
"httpMethod": "POST",
"request": {
"$ref": "GoogleHomeEnterpriseSdmV1ExecuteDeviceCommandRequest"
},
"response": {
"$ref": "GoogleHomeEnterpriseSdmV1ExecuteDeviceCommandResponse"
},
"parameterOrder": [
"name"
]
}
}
},
"structures": {
"methods": {
"list": {
"httpMethod": "GET",
"response": {
"$ref": "GoogleHomeEnterpriseSdmV1ListStructuresResponse"
},
"parameters": {
"filter": {
"description": "Optional filter to list structures.",
"type": "string",
"location": "query"
},
"parent": {
"description": "The parent enterprise to list structures under. E.g. \"enterprises/XYZ\".",
"location": "path",
"pattern": "^enterprises/[^/]+$",
"required": true,
"type": "string"
},
"pageToken": {
"type": "string",
"description": "The token of the page to retrieve.",
"location": "query"
},
"pageSize": {
"description": "Requested page size. Server may return fewer structures than requested. If unspecified, server will pick an appropriate default.",
"format": "int32",
"type": "integer",
"location": "query"
}
},
"description": "Lists structures managed by the enterprise.",
"parameterOrder": [
"parent"
],
"flatPath": "v1/enterprises/{enterprisesId}/structures",
"path": "v1/{+parent}/structures",
"id": "smartdevicemanagement.enterprises.structures.list",
"scopes": [
"https://www.googleapis.com/auth/sdm.service"
]
},
"get": {
"response": {
"$ref": "GoogleHomeEnterpriseSdmV1Structure"
},
"id": "smartdevicemanagement.enterprises.structures.get",
"scopes": [
"https://www.googleapis.com/auth/sdm.service"
],
"parameters": {
"name": {
"required": true,
"pattern": "^enterprises/[^/]+/structures/[^/]+$",
"description": "The name of the structure requested. For example: \"enterprises/XYZ/structures/ABC\".",
"type": "string",
"location": "path"
}
},
"parameterOrder": [
"name"
],
"httpMethod": "GET",
"description": "Gets a structure managed by the enterprise.",
"flatPath": "v1/enterprises/{enterprisesId}/structures/{structuresId}",
"path": "v1/{+name}"
}
},
"resources": {
"rooms": {
"methods": {
"list": {
"parameterOrder": [
"parent"
],
"httpMethod": "GET",
"flatPath": "v1/enterprises/{enterprisesId}/structures/{structuresId}/rooms",
"id": "smartdevicemanagement.enterprises.structures.rooms.list",
"description": "Lists rooms managed by the enterprise.",
"path": "v1/{+parent}/rooms",
"parameters": {
"pageToken": {
"type": "string",
"location": "query",
"description": "The token of the page to retrieve."
},
"pageSize": {
"location": "query",
"format": "int32",
"type": "integer",
"description": "Requested page size. Server may return fewer rooms than requested. If unspecified, server will pick an appropriate default."
},
"parent": {
"pattern": "^enterprises/[^/]+/structures/[^/]+$",
"type": "string",
"description": "The parent resource name of the rooms requested. For example: \"enterprises/XYZ/structures/ABC\".",
"location": "path",
"required": true
}
},
"scopes": [
"https://www.googleapis.com/auth/sdm.service"
],
"response": {
"$ref": "GoogleHomeEnterpriseSdmV1ListRoomsResponse"
}
},
"get": {
"parameters": {
"name": {
"required": true,
"location": "path",
"pattern": "^enterprises/[^/]+/structures/[^/]+/rooms/[^/]+$",
"description": "The name of the room requested. For example: \"enterprises/XYZ/structures/ABC/rooms/123\".",
"type": "string"
}
},
"scopes": [
"https://www.googleapis.com/auth/sdm.service"
],
"flatPath": "v1/enterprises/{enterprisesId}/structures/{structuresId}/rooms/{roomsId}",
"response": {
"$ref": "GoogleHomeEnterpriseSdmV1Room"
},
"id": "smartdevicemanagement.enterprises.structures.rooms.get",
"path": "v1/{+name}",
"description": "Gets a room managed by the enterprise.",
"httpMethod": "GET",
"parameterOrder": [
"name"
]
}
}
}
}
}
}
}
},
"batchPath": "batch",
"mtlsRootUrl": "https://smartdevicemanagement.mtls.googleapis.com/",
"auth": {
"oauth2": {
"scopes": {
"https://www.googleapis.com/auth/sdm.service": {
"description": "See and/or control the devices that you selected"
}
}
}
},
"version": "v1",
"documentationLink": "https://developers.google.com/nest/device-access",
"basePath": "",
"ownerDomain": "google.com",
"name": "smartdevicemanagement",
"baseUrl": "https://smartdevicemanagement.googleapis.com/",
"schemas": {
"GoogleHomeEnterpriseSdmV1ParentRelation": {
"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.",
"properties": {
"displayName": {
"readOnly": true,
"description": "Output only. The custom name of the relation -- e.g., structure/room where the device is assigned to.",
"type": "string"
},
"parent": {
"readOnly": true,
"type": "string",
"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\""
}
},
"type": "object",
"id": "GoogleHomeEnterpriseSdmV1ParentRelation"
},
"GoogleHomeEnterpriseSdmV1ExecuteDeviceCommandResponse": {
"type": "object",
"id": "GoogleHomeEnterpriseSdmV1ExecuteDeviceCommandResponse",
"properties": {
"results": {
"additionalProperties": {
"description": "Properties of the object.",
"type": "any"
},
"type": "object",
"description": "The results of executing the command."
}
},
"description": "Response message for SmartDeviceManagementService.ExecuteDeviceCommand"
},
"GoogleHomeEnterpriseSdmV1Device": {
"id": "GoogleHomeEnterpriseSdmV1Device",
"type": "object",
"properties": {
"traits": {
"additionalProperties": {
"type": "any",
"description": "Properties of the object."
},
"type": "object",
"description": "Output only. Device traits.",
"readOnly": true
},
"name": {
"description": "Required. The resource name of the device. For example: \"enterprises/XYZ/devices/123\".",
"type": "string"
},
"type": {
"type": "string",
"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.",
"readOnly": true
},
"parentRelations": {
"type": "array",
"description": "Assignee details of the device.",
"items": {
"$ref": "GoogleHomeEnterpriseSdmV1ParentRelation"
}
}
},
"description": "Device resource represents an instance of enterprise managed device in the property."
},
"GoogleHomeEnterpriseSdmV1Structure": {
"id": "GoogleHomeEnterpriseSdmV1Structure",
"properties": {
"name": {
"readOnly": true,
"description": "Output only. The resource name of the structure. For example: \"enterprises/XYZ/structures/ABC\".",
"type": "string"
},
"traits": {
"type": "object",
"description": "Structure traits.",
"additionalProperties": {
"description": "Properties of the object.",
"type": "any"
}
}
},
"description": "Structure resource represents an instance of enterprise managed home or hotel room.",
"type": "object"
},
"GoogleHomeEnterpriseSdmV1ExecuteDeviceCommandRequest": {
"type": "object",
"id": "GoogleHomeEnterpriseSdmV1ExecuteDeviceCommandRequest",
"properties": {
"params": {
"additionalProperties": {
"type": "any",
"description": "Properties of the object."
},
"description": "The command message to execute, represented as a Struct.",
"type": "object"
},
"command": {
"description": "The command name to execute, represented by the fully qualified protobuf message name.",
"type": "string"
}
},
"description": "Request message for SmartDeviceManagementService.ExecuteDeviceCommand"
},
"GoogleHomeEnterpriseSdmV1ListDevicesResponse": {
"id": "GoogleHomeEnterpriseSdmV1ListDevicesResponse",
"properties": {
"devices": {
"type": "array",
"description": "The list of devices.",
"items": {
"$ref": "GoogleHomeEnterpriseSdmV1Device"
}
},
"nextPageToken": {
"type": "string",
"description": "The pagination token to retrieve the next page of results."
}
},
"type": "object",
"description": "Response message for SmartDeviceManagementService.ListDevices"
},
"GoogleHomeEnterpriseSdmV1ListStructuresResponse": {
"properties": {
"structures": {
"description": "The list of structures.",
"items": {
"$ref": "GoogleHomeEnterpriseSdmV1Structure"
},
"type": "array"
},
"nextPageToken": {
"description": "The pagination token to retrieve the next page of results. If this field is omitted, there are no subsequent pages.",
"type": "string"
}
},
"type": "object",
"description": "Response message for SmartDeviceManagementService.ListStructures",
"id": "GoogleHomeEnterpriseSdmV1ListStructuresResponse"
},
"GoogleHomeEnterpriseSdmV1Room": {
"id": "GoogleHomeEnterpriseSdmV1Room",
"properties": {
"name": {
"readOnly": true,
"description": "Output only. The resource name of the room. For example: \"enterprises/XYZ/structures/ABC/rooms/123\".",
"type": "string"
},
"traits": {
"description": "Room traits.",
"additionalProperties": {
"type": "any",
"description": "Properties of the object."
},
"type": "object"
}
},
"type": "object",
"description": "Room resource represents an instance of sub-space within a structure such as rooms in a hotel suite or rental apartment."
},
"GoogleHomeEnterpriseSdmV1ListRoomsResponse": {
"description": "Response message for SmartDeviceManagementService.ListRooms",
"type": "object",
"properties": {
"nextPageToken": {
"type": "string",
"description": "The pagination token to retrieve the next page of results. If this field is omitted, there are no subsequent pages."
},
"rooms": {
"items": {
"$ref": "GoogleHomeEnterpriseSdmV1Room"
},
"type": "array",
"description": "The list of rooms."
}
},
"id": "GoogleHomeEnterpriseSdmV1ListRoomsResponse"
}
},
"parameters": {
"upload_protocol": {
"location": "query",
"description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
"type": "string"
},
"uploadType": {
"location": "query",
"type": "string",
"description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")."
},
"callback": {
"location": "query",
"type": "string",
"description": "JSONP"
},
"oauth_token": {
"location": "query",
"description": "OAuth 2.0 token for the current user.",
"type": "string"
},
"$.xgafv": {
"enumDescriptions": [
"v1 error format",
"v2 error format"
],
"enum": [
"1",
"2"
],
"location": "query",
"description": "V1 error format.",
"type": "string"
},
"quotaUser": {
"type": "string",
"location": "query",
"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."
},
"access_token": {
"location": "query",
"type": "string",
"description": "OAuth access token."
},
"fields": {
"type": "string",
"location": "query",
"description": "Selector specifying which fields to include in a partial response."
},
"alt": {
"description": "Data format for response.",
"enumDescriptions": [
"Responses with Content-Type of application/json",
"Media download with context-dependent Content-Type",
"Responses with Content-Type of application/x-protobuf"
],
"type": "string",
"enum": [
"json",
"media",
"proto"
],
"location": "query",
"default": "json"
},
"key": {
"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.",
"type": "string",
"location": "query"
},
"prettyPrint": {
"type": "boolean",
"default": "true",
"location": "query",
"description": "Returns response with indentations and line breaks."
}
},
"revision": "20201022",
"protocol": "rest",
"description": "Allow select enterprise partners to access, control, and manage Google and Nest devices programmatically.",
"servicePath": "",
"title": "Smart Device Management API",
"ownerName": "Google",
"version_module": true,
"id": "smartdevicemanagement:v1",
"canonicalName": "Smart Device Management",
"kind": "discovery#restDescription",
"fullyEncodeReservedExpansion": true
}