* Registers and manages IoT (Internet of Things) devices that connect to the * Google Cloud Platform.

* *

* For more information about this service, see the API * Documentation *

* * @author Google, Inc. */ class CloudIot extends \Google\Service { /** See, edit, configure, and delete your Google Cloud data and see the email address for your Google Account.. */ const CLOUD_PLATFORM = "https://www.googleapis.com/auth/cloud-platform"; /** Register and manage devices in the Google Cloud IoT service. */ const CLOUDIOT = "https://www.googleapis.com/auth/cloudiot"; public $projects_locations_registries; public $projects_locations_registries_devices; public $projects_locations_registries_devices_configVersions; public $projects_locations_registries_devices_states; public $projects_locations_registries_groups; public $projects_locations_registries_groups_devices; /** * Constructs the internal representation of the CloudIot service. * * @param Client|array $clientOrConfig The client used to deliver requests, or a * config array to pass to a new Client instance. * @param string $rootUrl The root URL used for requests to the service. */ public function __construct($clientOrConfig = [], $rootUrl = null) { parent::__construct($clientOrConfig); $this->rootUrl = $rootUrl ?: 'https://cloudiot.googleapis.com/'; $this->servicePath = ''; $this->batchPath = 'batch'; $this->version = 'v1'; $this->serviceName = 'cloudiot'; $this->projects_locations_registries = new CloudIot\Resource\ProjectsLocationsRegistries( $this, $this->serviceName, 'registries', [ 'methods' => [ 'bindDeviceToGateway' => [ 'path' => 'v1/{+parent}:bindDeviceToGateway', 'httpMethod' => 'POST', 'parameters' => [ 'parent' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ],'create' => [ 'path' => 'v1/{+parent}/registries', 'httpMethod' => 'POST', 'parameters' => [ 'parent' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ],'delete' => [ 'path' => 'v1/{+name}', 'httpMethod' => 'DELETE', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ],'get' => [ 'path' => 'v1/{+name}', 'httpMethod' => 'GET', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ],'getIamPolicy' => [ 'path' => 'v1/{+resource}:getIamPolicy', 'httpMethod' => 'POST', 'parameters' => [ 'resource' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ],'list' => [ 'path' => 'v1/{+parent}/registries', 'httpMethod' => 'GET', 'parameters' => [ 'parent' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'pageSize' => [ 'location' => 'query', 'type' => 'integer', ], 'pageToken' => [ 'location' => 'query', 'type' => 'string', ], ], ],'patch' => [ 'path' => 'v1/{+name}', 'httpMethod' => 'PATCH', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'updateMask' => [ 'location' => 'query', 'type' => 'string', ], ], ],'setIamPolicy' => [ 'path' => 'v1/{+resource}:setIamPolicy', 'httpMethod' => 'POST', 'parameters' => [ 'resource' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ],'testIamPermissions' => [ 'path' => 'v1/{+resource}:testIamPermissions', 'httpMethod' => 'POST', 'parameters' => [ 'resource' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ],'unbindDeviceFromGateway' => [ 'path' => 'v1/{+parent}:unbindDeviceFromGateway', 'httpMethod' => 'POST', 'parameters' => [ 'parent' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ], ] ] ); $this->projects_locations_registries_devices = new CloudIot\Resource\ProjectsLocationsRegistriesDevices( $this, $this->serviceName, 'devices', [ 'methods' => [ 'create' => [ 'path' => 'v1/{+parent}/devices', 'httpMethod' => 'POST', 'parameters' => [ 'parent' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ],'delete' => [ 'path' => 'v1/{+name}', 'httpMethod' => 'DELETE', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ],'get' => [ 'path' => 'v1/{+name}', 'httpMethod' => 'GET', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'fieldMask' => [ 'location' => 'query', 'type' => 'string', ], ], ],'list' => [ 'path' => 'v1/{+parent}/devices', 'httpMethod' => 'GET', 'parameters' => [ 'parent' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'deviceIds' => [ 'location' => 'query', 'type' => 'string', 'repeated' => true, ], 'deviceNumIds' => [ 'location' => 'query', 'type' => 'string', 'repeated' => true, ], 'fieldMask' => [ 'location' => 'query', 'type' => 'string', ], 'gatewayListOptions.associationsDeviceId' => [ 'location' => 'query', 'type' => 'string', ], 'gatewayListOptions.associationsGatewayId' => [ 'location' => 'query', 'type' => 'string', ], 'gatewayListOptions.gatewayType' => [ 'location' => 'query', 'type' => 'string', ], 'pageSize' => [ 'location' => 'query', 'type' => 'integer', ], 'pageToken' => [ 'location' => 'query', 'type' => 'string', ], ], ],'modifyCloudToDeviceConfig' => [ 'path' => 'v1/{+name}:modifyCloudToDeviceConfig', 'httpMethod' => 'POST', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ],'patch' => [ 'path' => 'v1/{+name}', 'httpMethod' => 'PATCH', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'updateMask' => [ 'location' => 'query', 'type' => 'string', ], ], ],'sendCommandToDevice' => [ 'path' => 'v1/{+name}:sendCommandToDevice', 'httpMethod' => 'POST', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ], ] ] ); $this->projects_locations_registries_devices_configVersions = new CloudIot\Resource\ProjectsLocationsRegistriesDevicesConfigVersions( $this, $this->serviceName, 'configVersions', [ 'methods' => [ 'list' => [ 'path' => 'v1/{+name}/configVersions', 'httpMethod' => 'GET', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'numVersions' => [ 'location' => 'query', 'type' => 'integer', ], ], ], ] ] ); $this->projects_locations_registries_devices_states = new CloudIot\Resource\ProjectsLocationsRegistriesDevicesStates( $this, $this->serviceName, 'states', [ 'methods' => [ 'list' => [ 'path' => 'v1/{+name}/states', 'httpMethod' => 'GET', 'parameters' => [ 'name' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'numStates' => [ 'location' => 'query', 'type' => 'integer', ], ], ], ] ] ); $this->projects_locations_registries_groups = new CloudIot\Resource\ProjectsLocationsRegistriesGroups( $this, $this->serviceName, 'groups', [ 'methods' => [ 'getIamPolicy' => [ 'path' => 'v1/{+resource}:getIamPolicy', 'httpMethod' => 'POST', 'parameters' => [ 'resource' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ],'setIamPolicy' => [ 'path' => 'v1/{+resource}:setIamPolicy', 'httpMethod' => 'POST', 'parameters' => [ 'resource' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ],'testIamPermissions' => [ 'path' => 'v1/{+resource}:testIamPermissions', 'httpMethod' => 'POST', 'parameters' => [ 'resource' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], ], ], ] ] ); $this->projects_locations_registries_groups_devices = new CloudIot\Resource\ProjectsLocationsRegistriesGroupsDevices( $this, $this->serviceName, 'devices', [ 'methods' => [ 'list' => [ 'path' => 'v1/{+parent}/devices', 'httpMethod' => 'GET', 'parameters' => [ 'parent' => [ 'location' => 'path', 'type' => 'string', 'required' => true, ], 'deviceIds' => [ 'location' => 'query', 'type' => 'string', 'repeated' => true, ], 'deviceNumIds' => [ 'location' => 'query', 'type' => 'string', 'repeated' => true, ], 'fieldMask' => [ 'location' => 'query', 'type' => 'string', ], 'gatewayListOptions.associationsDeviceId' => [ 'location' => 'query', 'type' => 'string', ], 'gatewayListOptions.associationsGatewayId' => [ 'location' => 'query', 'type' => 'string', ], 'gatewayListOptions.gatewayType' => [ 'location' => 'query', 'type' => 'string', ], 'pageSize' => [ 'location' => 'query', 'type' => 'integer', ], 'pageToken' => [ 'location' => 'query', 'type' => 'string', ], ], ], ] ] ); } } // Adding a class alias for backwards compatibility with the previous class name. class_alias(CloudIot::class, 'Google_Service_CloudIot');