Cloud IoT API (cloudiot:v1)

2022-08-31

23 new methods | New API

Additions

    Methods
  • cloudiot.projects.locations.registries.testIamPermissions

      Parameters:

        resource

          Pattern: ^projects/[^/]+/locations/[^/]+/registries/[^/]+$

          Required: Yes

          Type: string

          Location: path

          Description: REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.

      Description: Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a NOT_FOUND error.

      Scopes:

    • https://www.googleapis.com/auth/cloud-platform
    • https://www.googleapis.com/auth/cloudiot
    • Parameter Order: resource

      Path: v1/{+resource}:testIamPermissions

      Flat Path: v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}:testIamPermissions

      HTTP Method: POST

  • cloudiot.projects.locations.registries.unbindDeviceFromGateway

      Path: v1/{+parent}:unbindDeviceFromGateway

      Scopes:

    • https://www.googleapis.com/auth/cloud-platform
    • https://www.googleapis.com/auth/cloudiot
    • Parameter Order: parent

      Flat Path: v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}:unbindDeviceFromGateway

      Parameters:

        parent

          Location: path

          Description: Required. The name of the registry. For example, `projects/example-project/locations/us-central1/registries/my-registry`.

          Pattern: ^projects/[^/]+/locations/[^/]+/registries/[^/]+$

          Type: string

          Required: Yes

      HTTP Method: POST

      Description: Deletes the association between the device and the gateway.

  • cloudiot.projects.locations.registries.list

      Parameter Order: parent

      Description: Lists device registries.

      Flat Path: v1/projects/{projectsId}/locations/{locationsId}/registries

      Scopes:

    • https://www.googleapis.com/auth/cloud-platform
    • https://www.googleapis.com/auth/cloudiot
    • HTTP Method: GET

      Path: v1/{+parent}/registries

      Parameters:

        pageSize

          Location: query

          Format: int32

          Description: The maximum number of registries to return in the response. If this value is zero, the service will select a default size. A call may return fewer objects than requested. A non-empty `next_page_token` in the response indicates that more data is available.

          Type: integer

        pageToken

          Type: string

          Description: The value returned by the last `ListDeviceRegistriesResponse`; indicates that this is a continuation of a prior `ListDeviceRegistries` call and the system should return the next page of data.

          Location: query

        parent

          Type: string

          Location: path

          Description: Required. The project and cloud region path. For example, `projects/example-project/locations/us-central1`.

          Required: Yes

          Pattern: ^projects/[^/]+/locations/[^/]+$

  • cloudiot.projects.locations.registries.get

      Description: Gets a device registry configuration.

      Flat Path: v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}

      HTTP Method: GET

      Parameter Order: name

      Parameters:

        name

          Description: Required. The name of the device registry. For example, `projects/example-project/locations/us-central1/registries/my-registry`.

          Required: Yes

          Type: string

          Pattern: ^projects/[^/]+/locations/[^/]+/registries/[^/]+$

          Location: path

      Path: v1/{+name}

      Scopes:

    • https://www.googleapis.com/auth/cloud-platform
    • https://www.googleapis.com/auth/cloudiot
  • cloudiot.projects.locations.registries.delete

      Parameters:

        name

          Type: string

          Location: path

          Description: Required. The name of the device registry. For example, `projects/example-project/locations/us-central1/registries/my-registry`.

          Pattern: ^projects/[^/]+/locations/[^/]+/registries/[^/]+$

          Required: Yes

      HTTP Method: DELETE

      Path: v1/{+name}

      Flat Path: v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}

      Parameter Order: name

      Description: Deletes a device registry configuration.

      Scopes:

    • https://www.googleapis.com/auth/cloud-platform
    • https://www.googleapis.com/auth/cloudiot
  • cloudiot.projects.locations.registries.create

      Scopes:

    • https://www.googleapis.com/auth/cloud-platform
    • https://www.googleapis.com/auth/cloudiot
    • Path: v1/{+parent}/registries

      Parameter Order: parent

      Description: Creates a device registry that contains devices.

      Parameters:

        parent

          Required: Yes

          Location: path

          Pattern: ^projects/[^/]+/locations/[^/]+$

          Description: Required. The project and cloud region where this device registry must be created. For example, `projects/example-project/locations/us-central1`.

          Type: string

      Flat Path: v1/projects/{projectsId}/locations/{locationsId}/registries

      HTTP Method: POST

  • cloudiot.projects.locations.registries.setIamPolicy

      HTTP Method: POST

      Parameter Order: resource

      Path: v1/{+resource}:setIamPolicy

      Flat Path: v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}:setIamPolicy

      Parameters:

        resource

          Location: path

          Pattern: ^projects/[^/]+/locations/[^/]+/registries/[^/]+$

          Type: string

          Description: REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.

          Required: Yes

      Description: Sets the access control policy on the specified resource. Replaces any existing policy.

      Scopes:

    • https://www.googleapis.com/auth/cloud-platform
    • https://www.googleapis.com/auth/cloudiot
  • cloudiot.projects.locations.registries.getIamPolicy

      Path: v1/{+resource}:getIamPolicy

      Flat Path: v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}:getIamPolicy

      Scopes:

    • https://www.googleapis.com/auth/cloud-platform
    • https://www.googleapis.com/auth/cloudiot
    • Parameters:

        resource

          Type: string

          Required: Yes

          Location: path

          Description: REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.

          Pattern: ^projects/[^/]+/locations/[^/]+/registries/[^/]+$

      HTTP Method: POST

      Description: Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.

      Parameter Order: resource

  • cloudiot.projects.locations.registries.bindDeviceToGateway

      Path: v1/{+parent}:bindDeviceToGateway

      Parameter Order: parent

      Parameters:

        parent

          Pattern: ^projects/[^/]+/locations/[^/]+/registries/[^/]+$

          Required: Yes

          Type: string

          Location: path

          Description: Required. The name of the registry. For example, `projects/example-project/locations/us-central1/registries/my-registry`.

      Scopes:

    • https://www.googleapis.com/auth/cloud-platform
    • https://www.googleapis.com/auth/cloudiot
    • Description: Associates the device with the gateway.

      Flat Path: v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}:bindDeviceToGateway

      HTTP Method: POST

  • cloudiot.projects.locations.registries.patch

      Path: v1/{+name}

      HTTP Method: PATCH

      Parameter Order: name

      Flat Path: v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}

      Description: Updates a device registry configuration.

      Scopes:

    • https://www.googleapis.com/auth/cloud-platform
    • https://www.googleapis.com/auth/cloudiot
    • Parameters:

        updateMask

          Format: google-fieldmask

          Location: query

          Type: string

          Description: Required. Only updates the `device_registry` fields indicated by this mask. The field mask must not be empty, and it must not contain fields that are immutable or only set by the server. Mutable top-level fields: `event_notification_config`, `http_config`, `mqtt_config`, and `state_notification_config`.

        name

          Description: The resource path name. For example, `projects/example-project/locations/us-central1/registries/my-registry`.

          Pattern: ^projects/[^/]+/locations/[^/]+/registries/[^/]+$

          Required: Yes

          Type: string

          Location: path

  • cloudiot.projects.locations.registries.groups.devices.list

      HTTP Method: GET

      Flat Path: v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/groups/{groupsId}/devices

      Parameter Order: parent

      Scopes:

    • https://www.googleapis.com/auth/cloud-platform
    • https://www.googleapis.com/auth/cloudiot
    • Path: v1/{+parent}/devices

      Description: List devices in a device registry.

      Parameters:

        gatewayListOptions.gatewayType

          Description: If `GATEWAY` is specified, only gateways are returned. If `NON_GATEWAY` is specified, only non-gateway devices are returned. If `GATEWAY_TYPE_UNSPECIFIED` is specified, all devices are returned.

          Type: string

          Location: query

          Enum Descriptions:

        • If unspecified, the device is considered a non-gateway device.
        • The device is a gateway.
        • The device is not a gateway.
        • Enum:

        • GATEWAY_TYPE_UNSPECIFIED
        • GATEWAY
        • NON_GATEWAY

        pageToken

          Type: string

          Location: query

          Description: The value returned by the last `ListDevicesResponse`; indicates that this is a continuation of a prior `ListDevices` call and the system should return the next page of data.

        pageSize

          Location: query

          Description: The maximum number of devices to return in the response. If this value is zero, the service will select a default size. A call may return fewer objects than requested. A non-empty `next_page_token` in the response indicates that more data is available.

          Format: int32

          Type: integer

        gatewayListOptions.associationsGatewayId

          Location: query

          Description: If set, only devices associated with the specified gateway are returned. The gateway ID can be numeric (`num_id`) or the user-defined string (`id`). For example, if `123` is specified, only devices bound to the gateway with `num_id` 123 are returned.

          Type: string

        deviceNumIds

          Location: query

          Repeated: Yes

          Description: A list of device numeric IDs. If empty, this field is ignored. Maximum IDs: 10,000.

          Type: string

          Format: uint64

        fieldMask

          Format: google-fieldmask

          Type: string

          Description: The fields of the `Device` resource to be returned in the response. The fields `id` and `num_id` are always returned, along with any other fields specified in snake_case format, for example: `last_heartbeat_time`.

          Location: query

        parent

          Location: path

          Pattern: ^projects/[^/]+/locations/[^/]+/registries/[^/]+/groups/[^/]+$

          Type: string

          Required: Yes

          Description: Required. The device registry path. Required. For example, `projects/my-project/locations/us-central1/registries/my-registry`.

        gatewayListOptions.associationsDeviceId

          Type: string

          Description: If set, returns only the gateways with which the specified device is associated. The device ID can be numeric (`num_id`) or the user-defined string (`id`). For example, if `456` is specified, returns only the gateways to which the device with `num_id` 456 is bound.

          Location: query

        deviceIds

          Repeated: Yes

          Type: string

          Location: query

          Description: A list of device string IDs. For example, `['device0', 'device12']`. If empty, this field is ignored. Maximum IDs: 10,000

  • cloudiot.projects.locations.registries.groups.setIamPolicy

      Parameter Order: resource

      HTTP Method: POST

      Flat Path: v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/groups/{groupsId}:setIamPolicy

      Description: Sets the access control policy on the specified resource. Replaces any existing policy.

      Path: v1/{+resource}:setIamPolicy

      Scopes:

    • https://www.googleapis.com/auth/cloud-platform
    • https://www.googleapis.com/auth/cloudiot
    • Parameters:

        resource

          Required: Yes

          Pattern: ^projects/[^/]+/locations/[^/]+/registries/[^/]+/groups/[^/]+$

          Type: string

          Description: REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.

          Location: path

  • cloudiot.projects.locations.registries.groups.testIamPermissions

      Parameter Order: resource

      Flat Path: v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/groups/{groupsId}:testIamPermissions

      Scopes:

    • https://www.googleapis.com/auth/cloud-platform
    • https://www.googleapis.com/auth/cloudiot
    • Parameters:

        resource

          Pattern: ^projects/[^/]+/locations/[^/]+/registries/[^/]+/groups/[^/]+$

          Location: path

          Type: string

          Description: REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.

          Required: Yes

      Path: v1/{+resource}:testIamPermissions

      HTTP Method: POST

      Description: Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a NOT_FOUND error.

  • cloudiot.projects.locations.registries.groups.getIamPolicy

      Path: v1/{+resource}:getIamPolicy

      Description: Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.

      HTTP Method: POST

      Parameters:

        resource

          Pattern: ^projects/[^/]+/locations/[^/]+/registries/[^/]+/groups/[^/]+$

          Required: Yes

          Description: REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.

          Type: string

          Location: path

      Parameter Order: resource

      Scopes:

    • https://www.googleapis.com/auth/cloud-platform
    • https://www.googleapis.com/auth/cloudiot
    • Flat Path: v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/groups/{groupsId}:getIamPolicy

  • cloudiot.projects.locations.registries.devices.configVersions.list

      Parameters:

        numVersions

          Location: query

          Format: int32

          Description: The number of versions to list. Versions are listed in decreasing order of the version number. The maximum number of versions retained is 10. If this value is zero, it will return all the versions available.

          Type: integer

        name

          Pattern: ^projects/[^/]+/locations/[^/]+/registries/[^/]+/devices/[^/]+$

          Type: string

          Location: path

          Required: Yes

          Description: Required. The name of the device. For example, `projects/p0/locations/us-central1/registries/registry0/devices/device0` or `projects/p0/locations/us-central1/registries/registry0/devices/{num_id}`.

      Description: Lists the last few versions of the device configuration in descending order (i.e.: newest first).

      HTTP Method: GET

      Scopes:

    • https://www.googleapis.com/auth/cloud-platform
    • https://www.googleapis.com/auth/cloudiot
    • Path: v1/{+name}/configVersions

      Flat Path: v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices/{devicesId}/configVersions

      Parameter Order: name

  • cloudiot.projects.locations.registries.devices.states.list

      Parameter Order: name

      Parameters:

        numStates

          Format: int32

          Type: integer

          Description: The number of states to list. States are listed in descending order of update time. The maximum number of states retained is 10. If this value is zero, it will return all the states available.

          Location: query

        name

          Description: Required. The name of the device. For example, `projects/p0/locations/us-central1/registries/registry0/devices/device0` or `projects/p0/locations/us-central1/registries/registry0/devices/{num_id}`.

          Location: path

          Pattern: ^projects/[^/]+/locations/[^/]+/registries/[^/]+/devices/[^/]+$

          Type: string

          Required: Yes

      HTTP Method: GET

      Scopes:

    • https://www.googleapis.com/auth/cloud-platform
    • https://www.googleapis.com/auth/cloudiot
    • Flat Path: v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices/{devicesId}/states

      Description: Lists the last few versions of the device state in descending order (i.e.: newest first).

      Path: v1/{+name}/states

  • cloudiot.projects.locations.registries.devices.patch

      Parameters:

        updateMask

          Description: Required. Only updates the `device` fields indicated by this mask. The field mask must not be empty, and it must not contain fields that are immutable or only set by the server. Mutable top-level fields: `credentials`, `blocked`, and `metadata`

          Format: google-fieldmask

          Type: string

          Location: query

        name

          Required: Yes

          Description: The resource path name. For example, `projects/p1/locations/us-central1/registries/registry0/devices/dev0` or `projects/p1/locations/us-central1/registries/registry0/devices/{num_id}`. When `name` is populated as a response from the service, it always ends in the device numeric ID.

          Pattern: ^projects/[^/]+/locations/[^/]+/registries/[^/]+/devices/[^/]+$

          Type: string

          Location: path

      Parameter Order: name

      Flat Path: v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices/{devicesId}

      HTTP Method: PATCH

      Scopes:

    • https://www.googleapis.com/auth/cloud-platform
    • https://www.googleapis.com/auth/cloudiot
    • Path: v1/{+name}

      Description: Updates a device.

  • cloudiot.projects.locations.registries.devices.list

      HTTP Method: GET

      Path: v1/{+parent}/devices

      Parameter Order: parent

      Flat Path: v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices

      Parameters:

        pageToken

          Type: string

          Description: The value returned by the last `ListDevicesResponse`; indicates that this is a continuation of a prior `ListDevices` call and the system should return the next page of data.

          Location: query

        gatewayListOptions.gatewayType

          Description: If `GATEWAY` is specified, only gateways are returned. If `NON_GATEWAY` is specified, only non-gateway devices are returned. If `GATEWAY_TYPE_UNSPECIFIED` is specified, all devices are returned.

          Enum Descriptions:

        • If unspecified, the device is considered a non-gateway device.
        • The device is a gateway.
        • The device is not a gateway.
        • Type: string

          Location: query

          Enum:

        • GATEWAY_TYPE_UNSPECIFIED
        • GATEWAY
        • NON_GATEWAY

        parent

          Description: Required. The device registry path. Required. For example, `projects/my-project/locations/us-central1/registries/my-registry`.

          Location: path

          Type: string

          Pattern: ^projects/[^/]+/locations/[^/]+/registries/[^/]+$

          Required: Yes

        deviceIds

          Type: string

          Repeated: Yes

          Description: A list of device string IDs. For example, `['device0', 'device12']`. If empty, this field is ignored. Maximum IDs: 10,000

          Location: query

        pageSize

          Description: The maximum number of devices to return in the response. If this value is zero, the service will select a default size. A call may return fewer objects than requested. A non-empty `next_page_token` in the response indicates that more data is available.

          Type: integer

          Format: int32

          Location: query

        fieldMask

          Description: The fields of the `Device` resource to be returned in the response. The fields `id` and `num_id` are always returned, along with any other fields specified in snake_case format, for example: `last_heartbeat_time`.

          Format: google-fieldmask

          Type: string

          Location: query

        gatewayListOptions.associationsDeviceId

          Location: query

          Description: If set, returns only the gateways with which the specified device is associated. The device ID can be numeric (`num_id`) or the user-defined string (`id`). For example, if `456` is specified, returns only the gateways to which the device with `num_id` 456 is bound.

          Type: string

        deviceNumIds

          Format: uint64

          Repeated: Yes

          Location: query

          Type: string

          Description: A list of device numeric IDs. If empty, this field is ignored. Maximum IDs: 10,000.

        gatewayListOptions.associationsGatewayId

          Location: query

          Description: If set, only devices associated with the specified gateway are returned. The gateway ID can be numeric (`num_id`) or the user-defined string (`id`). For example, if `123` is specified, only devices bound to the gateway with `num_id` 123 are returned.

          Type: string

      Scopes:

    • https://www.googleapis.com/auth/cloud-platform
    • https://www.googleapis.com/auth/cloudiot
    • Description: List devices in a device registry.

  • cloudiot.projects.locations.registries.devices.create

      Parameter Order: parent

      Flat Path: v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices

      HTTP Method: POST

      Parameters:

        parent

          Pattern: ^projects/[^/]+/locations/[^/]+/registries/[^/]+$

          Location: path

          Required: Yes

          Type: string

          Description: Required. The name of the device registry where this device should be created. For example, `projects/example-project/locations/us-central1/registries/my-registry`.

      Scopes:

    • https://www.googleapis.com/auth/cloud-platform
    • https://www.googleapis.com/auth/cloudiot
    • Description: Creates a device in a device registry.

      Path: v1/{+parent}/devices

  • cloudiot.projects.locations.registries.devices.delete

      Path: v1/{+name}

      Parameters:

        name

          Required: Yes

          Location: path

          Description: Required. The name of the device. For example, `projects/p0/locations/us-central1/registries/registry0/devices/device0` or `projects/p0/locations/us-central1/registries/registry0/devices/{num_id}`.

          Type: string

          Pattern: ^projects/[^/]+/locations/[^/]+/registries/[^/]+/devices/[^/]+$

      Flat Path: v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices/{devicesId}

      HTTP Method: DELETE

      Parameter Order: name

      Scopes:

    • https://www.googleapis.com/auth/cloud-platform
    • https://www.googleapis.com/auth/cloudiot
    • Description: Deletes a device.

  • cloudiot.projects.locations.registries.devices.modifyCloudToDeviceConfig

      Parameters:

        name

          Pattern: ^projects/[^/]+/locations/[^/]+/registries/[^/]+/devices/[^/]+$

          Required: Yes

          Location: path

          Type: string

          Description: Required. The name of the device. For example, `projects/p0/locations/us-central1/registries/registry0/devices/device0` or `projects/p0/locations/us-central1/registries/registry0/devices/{num_id}`.

      HTTP Method: POST

      Path: v1/{+name}:modifyCloudToDeviceConfig

      Scopes:

    • https://www.googleapis.com/auth/cloud-platform
    • https://www.googleapis.com/auth/cloudiot
    • Description: Modifies the configuration for the device, which is eventually sent from the Cloud IoT Core servers. Returns the modified configuration version and its metadata.

      Parameter Order: name

      Flat Path: v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices/{devicesId}:modifyCloudToDeviceConfig

  • cloudiot.projects.locations.registries.devices.get

      Parameters:

        name

          Pattern: ^projects/[^/]+/locations/[^/]+/registries/[^/]+/devices/[^/]+$

          Location: path

          Description: Required. The name of the device. For example, `projects/p0/locations/us-central1/registries/registry0/devices/device0` or `projects/p0/locations/us-central1/registries/registry0/devices/{num_id}`.

          Type: string

          Required: Yes

        fieldMask

          Location: query

          Format: google-fieldmask

          Description: The fields of the `Device` resource to be returned in the response. If the field mask is unset or empty, all fields are returned. Fields have to be provided in snake_case format, for example: `last_heartbeat_time`.

          Type: string

      Flat Path: v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices/{devicesId}

      Parameter Order: name

      HTTP Method: GET

      Path: v1/{+name}

      Scopes:

    • https://www.googleapis.com/auth/cloud-platform
    • https://www.googleapis.com/auth/cloudiot
    • Description: Gets details about a device.

  • cloudiot.projects.locations.registries.devices.sendCommandToDevice

      Scopes:

    • https://www.googleapis.com/auth/cloud-platform
    • https://www.googleapis.com/auth/cloudiot
    • Parameters:

        name

          Location: path

          Pattern: ^projects/[^/]+/locations/[^/]+/registries/[^/]+/devices/[^/]+$

          Required: Yes

          Description: Required. The name of the device. For example, `projects/p0/locations/us-central1/registries/registry0/devices/device0` or `projects/p0/locations/us-central1/registries/registry0/devices/{num_id}`.

          Type: string

      HTTP Method: POST

      Flat Path: v1/projects/{projectsId}/locations/{locationsId}/registries/{registriesId}/devices/{devicesId}:sendCommandToDevice

      Path: v1/{+name}:sendCommandToDevice

      Parameter Order: name

      Description: Sends a command to the specified device. In order for a device to be able to receive commands, it must: 1) be connected to Cloud IoT Core using the MQTT protocol, and 2) be subscribed to the group of MQTT topics specified by /devices/{device-id}/commands/#. This subscription will receive commands at the top-level topic /devices/{device-id}/commands as well as commands for subfolders, like /devices/{device-id}/commands/subfolder. Note that subscribing to specific subfolders is not supported. If the command could not be delivered to the device, this method will return an error; in particular, if the device is not subscribed, this method will return FAILED_PRECONDITION. Otherwise, this method will return OK. If the subscription is QoS 1, at least once delivery will be guaranteed; for QoS 0, no acknowledgment will be expected from the device.