1. Packages
  2. Google Cloud Native
  3. API Docs
  4. cloudiot
  5. cloudiot/v1
  6. Device

Google Cloud Native is in preview. Google Cloud Classic is fully supported.

Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi

google-native.cloudiot/v1.Device

Explore with Pulumi AI

Google Cloud Native is in preview. Google Cloud Classic is fully supported.

Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi

Creates a device in a device registry.

Create Device Resource

Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

Constructor syntax

new Device(name: string, args: DeviceArgs, opts?: CustomResourceOptions);
@overload
def Device(resource_name: str,
           args: DeviceArgs,
           opts: Optional[ResourceOptions] = None)

@overload
def Device(resource_name: str,
           opts: Optional[ResourceOptions] = None,
           registry_id: Optional[str] = None,
           blocked: Optional[bool] = None,
           config: Optional[DeviceConfigArgs] = None,
           credentials: Optional[Sequence[DeviceCredentialArgs]] = None,
           gateway_config: Optional[GatewayConfigArgs] = None,
           id: Optional[str] = None,
           location: Optional[str] = None,
           log_level: Optional[DeviceLogLevel] = None,
           metadata: Optional[Mapping[str, str]] = None,
           name: Optional[str] = None,
           project: Optional[str] = None)
func NewDevice(ctx *Context, name string, args DeviceArgs, opts ...ResourceOption) (*Device, error)
public Device(string name, DeviceArgs args, CustomResourceOptions? opts = null)
public Device(String name, DeviceArgs args)
public Device(String name, DeviceArgs args, CustomResourceOptions options)
type: google-native:cloudiot/v1:Device
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

Parameters

name This property is required. string
The unique name of the resource.
args This property is required. DeviceArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args This property is required. DeviceArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name This property is required. string
The unique name of the resource.
args This property is required. DeviceArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args This property is required. DeviceArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. DeviceArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

Constructor example

The following reference example uses placeholder values for all input properties.

var exampledeviceResourceResourceFromCloudiotv1 = new GoogleNative.CloudIoT.V1.Device("exampledeviceResourceResourceFromCloudiotv1", new()
{
    RegistryId = "string",
    Blocked = false,
    Config = new GoogleNative.CloudIoT.V1.Inputs.DeviceConfigArgs
    {
        BinaryData = "string",
    },
    Credentials = new[]
    {
        new GoogleNative.CloudIoT.V1.Inputs.DeviceCredentialArgs
        {
            ExpirationTime = "string",
            PublicKey = new GoogleNative.CloudIoT.V1.Inputs.PublicKeyCredentialArgs
            {
                Format = GoogleNative.CloudIoT.V1.PublicKeyCredentialFormat.UnspecifiedPublicKeyFormat,
                Key = "string",
            },
        },
    },
    GatewayConfig = new GoogleNative.CloudIoT.V1.Inputs.GatewayConfigArgs
    {
        GatewayAuthMethod = GoogleNative.CloudIoT.V1.GatewayConfigGatewayAuthMethod.GatewayAuthMethodUnspecified,
        GatewayType = GoogleNative.CloudIoT.V1.GatewayConfigGatewayType.GatewayTypeUnspecified,
    },
    Id = "string",
    Location = "string",
    LogLevel = GoogleNative.CloudIoT.V1.DeviceLogLevel.LogLevelUnspecified,
    Metadata = 
    {
        { "string", "string" },
    },
    Name = "string",
    Project = "string",
});
Copy
example, err := cloudiot.NewDevice(ctx, "exampledeviceResourceResourceFromCloudiotv1", &cloudiot.DeviceArgs{
	RegistryId: pulumi.String("string"),
	Blocked:    pulumi.Bool(false),
	Config: &cloudiot.DeviceConfigArgs{
		BinaryData: pulumi.String("string"),
	},
	Credentials: cloudiot.DeviceCredentialArray{
		&cloudiot.DeviceCredentialArgs{
			ExpirationTime: pulumi.String("string"),
			PublicKey: &cloudiot.PublicKeyCredentialArgs{
				Format: cloudiot.PublicKeyCredentialFormatUnspecifiedPublicKeyFormat,
				Key:    pulumi.String("string"),
			},
		},
	},
	GatewayConfig: &cloudiot.GatewayConfigArgs{
		GatewayAuthMethod: cloudiot.GatewayConfigGatewayAuthMethodGatewayAuthMethodUnspecified,
		GatewayType:       cloudiot.GatewayConfigGatewayTypeGatewayTypeUnspecified,
	},
	Id:       pulumi.String("string"),
	Location: pulumi.String("string"),
	LogLevel: cloudiot.DeviceLogLevelLogLevelUnspecified,
	Metadata: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	Name:    pulumi.String("string"),
	Project: pulumi.String("string"),
})
Copy
var exampledeviceResourceResourceFromCloudiotv1 = new Device("exampledeviceResourceResourceFromCloudiotv1", DeviceArgs.builder()
    .registryId("string")
    .blocked(false)
    .config(DeviceConfigArgs.builder()
        .binaryData("string")
        .build())
    .credentials(DeviceCredentialArgs.builder()
        .expirationTime("string")
        .publicKey(PublicKeyCredentialArgs.builder()
            .format("UNSPECIFIED_PUBLIC_KEY_FORMAT")
            .key("string")
            .build())
        .build())
    .gatewayConfig(GatewayConfigArgs.builder()
        .gatewayAuthMethod("GATEWAY_AUTH_METHOD_UNSPECIFIED")
        .gatewayType("GATEWAY_TYPE_UNSPECIFIED")
        .build())
    .id("string")
    .location("string")
    .logLevel("LOG_LEVEL_UNSPECIFIED")
    .metadata(Map.of("string", "string"))
    .name("string")
    .project("string")
    .build());
Copy
exampledevice_resource_resource_from_cloudiotv1 = google_native.cloudiot.v1.Device("exampledeviceResourceResourceFromCloudiotv1",
    registry_id="string",
    blocked=False,
    config={
        "binary_data": "string",
    },
    credentials=[{
        "expiration_time": "string",
        "public_key": {
            "format": google_native.cloudiot.v1.PublicKeyCredentialFormat.UNSPECIFIED_PUBLIC_KEY_FORMAT,
            "key": "string",
        },
    }],
    gateway_config={
        "gateway_auth_method": google_native.cloudiot.v1.GatewayConfigGatewayAuthMethod.GATEWAY_AUTH_METHOD_UNSPECIFIED,
        "gateway_type": google_native.cloudiot.v1.GatewayConfigGatewayType.GATEWAY_TYPE_UNSPECIFIED,
    },
    id="string",
    location="string",
    log_level=google_native.cloudiot.v1.DeviceLogLevel.LOG_LEVEL_UNSPECIFIED,
    metadata={
        "string": "string",
    },
    name="string",
    project="string")
Copy
const exampledeviceResourceResourceFromCloudiotv1 = new google_native.cloudiot.v1.Device("exampledeviceResourceResourceFromCloudiotv1", {
    registryId: "string",
    blocked: false,
    config: {
        binaryData: "string",
    },
    credentials: [{
        expirationTime: "string",
        publicKey: {
            format: google_native.cloudiot.v1.PublicKeyCredentialFormat.UnspecifiedPublicKeyFormat,
            key: "string",
        },
    }],
    gatewayConfig: {
        gatewayAuthMethod: google_native.cloudiot.v1.GatewayConfigGatewayAuthMethod.GatewayAuthMethodUnspecified,
        gatewayType: google_native.cloudiot.v1.GatewayConfigGatewayType.GatewayTypeUnspecified,
    },
    id: "string",
    location: "string",
    logLevel: google_native.cloudiot.v1.DeviceLogLevel.LogLevelUnspecified,
    metadata: {
        string: "string",
    },
    name: "string",
    project: "string",
});
Copy
type: google-native:cloudiot/v1:Device
properties:
    blocked: false
    config:
        binaryData: string
    credentials:
        - expirationTime: string
          publicKey:
            format: UNSPECIFIED_PUBLIC_KEY_FORMAT
            key: string
    gatewayConfig:
        gatewayAuthMethod: GATEWAY_AUTH_METHOD_UNSPECIFIED
        gatewayType: GATEWAY_TYPE_UNSPECIFIED
    id: string
    location: string
    logLevel: LOG_LEVEL_UNSPECIFIED
    metadata:
        string: string
    name: string
    project: string
    registryId: string
Copy

Device Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

The Device resource accepts the following input properties:

RegistryId
This property is required.
Changes to this property will trigger replacement.
string
Blocked bool
If a device is blocked, connections or requests from this device will fail. Can be used to temporarily prevent the device from connecting if, for example, the sensor is generating bad data and needs maintenance.
Config Pulumi.GoogleNative.CloudIoT.V1.Inputs.DeviceConfig
The most recent device configuration, which is eventually sent from Cloud IoT Core to the device. If not present on creation, the configuration will be initialized with an empty payload and version value of 1. To update this field after creation, use the DeviceManager.ModifyCloudToDeviceConfig method.
Credentials List<Pulumi.GoogleNative.CloudIoT.V1.Inputs.DeviceCredential>
The credentials used to authenticate this device. To allow credential rotation without interruption, multiple device credentials can be bound to this device. No more than 3 credentials can be bound to a single device at a time. When new credentials are added to a device, they are verified against the registry credentials. For details, see the description of the DeviceRegistry.credentials field.
GatewayConfig Pulumi.GoogleNative.CloudIoT.V1.Inputs.GatewayConfig
Gateway-related configuration and state.
Id string
The user-defined device identifier. The device ID must be unique within a device registry.
Location Changes to this property will trigger replacement. string
LogLevel Pulumi.GoogleNative.CloudIoT.V1.DeviceLogLevel
Beta Feature The logging verbosity for device activity. If unspecified, DeviceRegistry.log_level will be used.
Metadata Dictionary<string, string>
The metadata key-value pairs assigned to the device. This metadata is not interpreted or indexed by Cloud IoT Core. It can be used to add contextual information for the device. Keys must conform to the regular expression a-zA-Z+ and be less than 128 bytes in length. Values are free-form strings. Each value must be less than or equal to 32 KB in size. The total size of all keys and values must be less than 256 KB, and the maximum number of key-value pairs is 500.
Name string
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.
Project Changes to this property will trigger replacement. string
RegistryId
This property is required.
Changes to this property will trigger replacement.
string
Blocked bool
If a device is blocked, connections or requests from this device will fail. Can be used to temporarily prevent the device from connecting if, for example, the sensor is generating bad data and needs maintenance.
Config DeviceConfigArgs
The most recent device configuration, which is eventually sent from Cloud IoT Core to the device. If not present on creation, the configuration will be initialized with an empty payload and version value of 1. To update this field after creation, use the DeviceManager.ModifyCloudToDeviceConfig method.
Credentials []DeviceCredentialArgs
The credentials used to authenticate this device. To allow credential rotation without interruption, multiple device credentials can be bound to this device. No more than 3 credentials can be bound to a single device at a time. When new credentials are added to a device, they are verified against the registry credentials. For details, see the description of the DeviceRegistry.credentials field.
GatewayConfig GatewayConfigArgs
Gateway-related configuration and state.
Id string
The user-defined device identifier. The device ID must be unique within a device registry.
Location Changes to this property will trigger replacement. string
LogLevel DeviceLogLevel
Beta Feature The logging verbosity for device activity. If unspecified, DeviceRegistry.log_level will be used.
Metadata map[string]string
The metadata key-value pairs assigned to the device. This metadata is not interpreted or indexed by Cloud IoT Core. It can be used to add contextual information for the device. Keys must conform to the regular expression a-zA-Z+ and be less than 128 bytes in length. Values are free-form strings. Each value must be less than or equal to 32 KB in size. The total size of all keys and values must be less than 256 KB, and the maximum number of key-value pairs is 500.
Name string
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.
Project Changes to this property will trigger replacement. string
registryId
This property is required.
Changes to this property will trigger replacement.
String
blocked Boolean
If a device is blocked, connections or requests from this device will fail. Can be used to temporarily prevent the device from connecting if, for example, the sensor is generating bad data and needs maintenance.
config DeviceConfig
The most recent device configuration, which is eventually sent from Cloud IoT Core to the device. If not present on creation, the configuration will be initialized with an empty payload and version value of 1. To update this field after creation, use the DeviceManager.ModifyCloudToDeviceConfig method.
credentials List<DeviceCredential>
The credentials used to authenticate this device. To allow credential rotation without interruption, multiple device credentials can be bound to this device. No more than 3 credentials can be bound to a single device at a time. When new credentials are added to a device, they are verified against the registry credentials. For details, see the description of the DeviceRegistry.credentials field.
gatewayConfig GatewayConfig
Gateway-related configuration and state.
id String
The user-defined device identifier. The device ID must be unique within a device registry.
location Changes to this property will trigger replacement. String
logLevel DeviceLogLevel
Beta Feature The logging verbosity for device activity. If unspecified, DeviceRegistry.log_level will be used.
metadata Map<String,String>
The metadata key-value pairs assigned to the device. This metadata is not interpreted or indexed by Cloud IoT Core. It can be used to add contextual information for the device. Keys must conform to the regular expression a-zA-Z+ and be less than 128 bytes in length. Values are free-form strings. Each value must be less than or equal to 32 KB in size. The total size of all keys and values must be less than 256 KB, and the maximum number of key-value pairs is 500.
name String
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.
project Changes to this property will trigger replacement. String
registryId
This property is required.
Changes to this property will trigger replacement.
string
blocked boolean
If a device is blocked, connections or requests from this device will fail. Can be used to temporarily prevent the device from connecting if, for example, the sensor is generating bad data and needs maintenance.
config DeviceConfig
The most recent device configuration, which is eventually sent from Cloud IoT Core to the device. If not present on creation, the configuration will be initialized with an empty payload and version value of 1. To update this field after creation, use the DeviceManager.ModifyCloudToDeviceConfig method.
credentials DeviceCredential[]
The credentials used to authenticate this device. To allow credential rotation without interruption, multiple device credentials can be bound to this device. No more than 3 credentials can be bound to a single device at a time. When new credentials are added to a device, they are verified against the registry credentials. For details, see the description of the DeviceRegistry.credentials field.
gatewayConfig GatewayConfig
Gateway-related configuration and state.
id string
The user-defined device identifier. The device ID must be unique within a device registry.
location Changes to this property will trigger replacement. string
logLevel DeviceLogLevel
Beta Feature The logging verbosity for device activity. If unspecified, DeviceRegistry.log_level will be used.
metadata {[key: string]: string}
The metadata key-value pairs assigned to the device. This metadata is not interpreted or indexed by Cloud IoT Core. It can be used to add contextual information for the device. Keys must conform to the regular expression a-zA-Z+ and be less than 128 bytes in length. Values are free-form strings. Each value must be less than or equal to 32 KB in size. The total size of all keys and values must be less than 256 KB, and the maximum number of key-value pairs is 500.
name string
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.
project Changes to this property will trigger replacement. string
registry_id
This property is required.
Changes to this property will trigger replacement.
str
blocked bool
If a device is blocked, connections or requests from this device will fail. Can be used to temporarily prevent the device from connecting if, for example, the sensor is generating bad data and needs maintenance.
config DeviceConfigArgs
The most recent device configuration, which is eventually sent from Cloud IoT Core to the device. If not present on creation, the configuration will be initialized with an empty payload and version value of 1. To update this field after creation, use the DeviceManager.ModifyCloudToDeviceConfig method.
credentials Sequence[DeviceCredentialArgs]
The credentials used to authenticate this device. To allow credential rotation without interruption, multiple device credentials can be bound to this device. No more than 3 credentials can be bound to a single device at a time. When new credentials are added to a device, they are verified against the registry credentials. For details, see the description of the DeviceRegistry.credentials field.
gateway_config GatewayConfigArgs
Gateway-related configuration and state.
id str
The user-defined device identifier. The device ID must be unique within a device registry.
location Changes to this property will trigger replacement. str
log_level DeviceLogLevel
Beta Feature The logging verbosity for device activity. If unspecified, DeviceRegistry.log_level will be used.
metadata Mapping[str, str]
The metadata key-value pairs assigned to the device. This metadata is not interpreted or indexed by Cloud IoT Core. It can be used to add contextual information for the device. Keys must conform to the regular expression a-zA-Z+ and be less than 128 bytes in length. Values are free-form strings. Each value must be less than or equal to 32 KB in size. The total size of all keys and values must be less than 256 KB, and the maximum number of key-value pairs is 500.
name str
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.
project Changes to this property will trigger replacement. str
registryId
This property is required.
Changes to this property will trigger replacement.
String
blocked Boolean
If a device is blocked, connections or requests from this device will fail. Can be used to temporarily prevent the device from connecting if, for example, the sensor is generating bad data and needs maintenance.
config Property Map
The most recent device configuration, which is eventually sent from Cloud IoT Core to the device. If not present on creation, the configuration will be initialized with an empty payload and version value of 1. To update this field after creation, use the DeviceManager.ModifyCloudToDeviceConfig method.
credentials List<Property Map>
The credentials used to authenticate this device. To allow credential rotation without interruption, multiple device credentials can be bound to this device. No more than 3 credentials can be bound to a single device at a time. When new credentials are added to a device, they are verified against the registry credentials. For details, see the description of the DeviceRegistry.credentials field.
gatewayConfig Property Map
Gateway-related configuration and state.
id String
The user-defined device identifier. The device ID must be unique within a device registry.
location Changes to this property will trigger replacement. String
logLevel "LOG_LEVEL_UNSPECIFIED" | "NONE" | "ERROR" | "INFO" | "DEBUG"
Beta Feature The logging verbosity for device activity. If unspecified, DeviceRegistry.log_level will be used.
metadata Map<String>
The metadata key-value pairs assigned to the device. This metadata is not interpreted or indexed by Cloud IoT Core. It can be used to add contextual information for the device. Keys must conform to the regular expression a-zA-Z+ and be less than 128 bytes in length. Values are free-form strings. Each value must be less than or equal to 32 KB in size. The total size of all keys and values must be less than 256 KB, and the maximum number of key-value pairs is 500.
name String
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.
project Changes to this property will trigger replacement. String

Outputs

All input properties are implicitly available as output properties. Additionally, the Device resource produces the following output properties:

Id string
The provider-assigned unique ID for this managed resource.
LastConfigAckTime string
[Output only] The last time a cloud-to-device config version acknowledgment was received from the device. This field is only for configurations sent through MQTT.
LastConfigSendTime string
[Output only] The last time a cloud-to-device config version was sent to the device.
LastErrorStatus Pulumi.GoogleNative.CloudIoT.V1.Outputs.StatusResponse
[Output only] The error message of the most recent error, such as a failure to publish to Cloud Pub/Sub. 'last_error_time' is the timestamp of this field. If no errors have occurred, this field has an empty message and the status code 0 == OK. Otherwise, this field is expected to have a status code other than OK.
LastErrorTime string
[Output only] The time the most recent error occurred, such as a failure to publish to Cloud Pub/Sub. This field is the timestamp of 'last_error_status'.
LastEventTime string
[Output only] The last time a telemetry event was received. Timestamps are periodically collected and written to storage; they may be stale by a few minutes.
LastHeartbeatTime string
[Output only] The last time an MQTT PINGREQ was received. This field applies only to devices connecting through MQTT. MQTT clients usually only send PINGREQ messages if the connection is idle, and no other messages have been sent. Timestamps are periodically collected and written to storage; they may be stale by a few minutes.
LastStateTime string
[Output only] The last time a state event was received. Timestamps are periodically collected and written to storage; they may be stale by a few minutes.
NumId string
[Output only] A server-defined unique numeric ID for the device. This is a more compact way to identify devices, and it is globally unique.
State Pulumi.GoogleNative.CloudIoT.V1.Outputs.DeviceStateResponse
[Output only] The state most recently received from the device. If no state has been reported, this field is not present.
Id string
The provider-assigned unique ID for this managed resource.
LastConfigAckTime string
[Output only] The last time a cloud-to-device config version acknowledgment was received from the device. This field is only for configurations sent through MQTT.
LastConfigSendTime string
[Output only] The last time a cloud-to-device config version was sent to the device.
LastErrorStatus StatusResponse
[Output only] The error message of the most recent error, such as a failure to publish to Cloud Pub/Sub. 'last_error_time' is the timestamp of this field. If no errors have occurred, this field has an empty message and the status code 0 == OK. Otherwise, this field is expected to have a status code other than OK.
LastErrorTime string
[Output only] The time the most recent error occurred, such as a failure to publish to Cloud Pub/Sub. This field is the timestamp of 'last_error_status'.
LastEventTime string
[Output only] The last time a telemetry event was received. Timestamps are periodically collected and written to storage; they may be stale by a few minutes.
LastHeartbeatTime string
[Output only] The last time an MQTT PINGREQ was received. This field applies only to devices connecting through MQTT. MQTT clients usually only send PINGREQ messages if the connection is idle, and no other messages have been sent. Timestamps are periodically collected and written to storage; they may be stale by a few minutes.
LastStateTime string
[Output only] The last time a state event was received. Timestamps are periodically collected and written to storage; they may be stale by a few minutes.
NumId string
[Output only] A server-defined unique numeric ID for the device. This is a more compact way to identify devices, and it is globally unique.
State DeviceStateResponse
[Output only] The state most recently received from the device. If no state has been reported, this field is not present.
id String
The provider-assigned unique ID for this managed resource.
lastConfigAckTime String
[Output only] The last time a cloud-to-device config version acknowledgment was received from the device. This field is only for configurations sent through MQTT.
lastConfigSendTime String
[Output only] The last time a cloud-to-device config version was sent to the device.
lastErrorStatus StatusResponse
[Output only] The error message of the most recent error, such as a failure to publish to Cloud Pub/Sub. 'last_error_time' is the timestamp of this field. If no errors have occurred, this field has an empty message and the status code 0 == OK. Otherwise, this field is expected to have a status code other than OK.
lastErrorTime String
[Output only] The time the most recent error occurred, such as a failure to publish to Cloud Pub/Sub. This field is the timestamp of 'last_error_status'.
lastEventTime String
[Output only] The last time a telemetry event was received. Timestamps are periodically collected and written to storage; they may be stale by a few minutes.
lastHeartbeatTime String
[Output only] The last time an MQTT PINGREQ was received. This field applies only to devices connecting through MQTT. MQTT clients usually only send PINGREQ messages if the connection is idle, and no other messages have been sent. Timestamps are periodically collected and written to storage; they may be stale by a few minutes.
lastStateTime String
[Output only] The last time a state event was received. Timestamps are periodically collected and written to storage; they may be stale by a few minutes.
numId String
[Output only] A server-defined unique numeric ID for the device. This is a more compact way to identify devices, and it is globally unique.
state DeviceStateResponse
[Output only] The state most recently received from the device. If no state has been reported, this field is not present.
id string
The provider-assigned unique ID for this managed resource.
lastConfigAckTime string
[Output only] The last time a cloud-to-device config version acknowledgment was received from the device. This field is only for configurations sent through MQTT.
lastConfigSendTime string
[Output only] The last time a cloud-to-device config version was sent to the device.
lastErrorStatus StatusResponse
[Output only] The error message of the most recent error, such as a failure to publish to Cloud Pub/Sub. 'last_error_time' is the timestamp of this field. If no errors have occurred, this field has an empty message and the status code 0 == OK. Otherwise, this field is expected to have a status code other than OK.
lastErrorTime string
[Output only] The time the most recent error occurred, such as a failure to publish to Cloud Pub/Sub. This field is the timestamp of 'last_error_status'.
lastEventTime string
[Output only] The last time a telemetry event was received. Timestamps are periodically collected and written to storage; they may be stale by a few minutes.
lastHeartbeatTime string
[Output only] The last time an MQTT PINGREQ was received. This field applies only to devices connecting through MQTT. MQTT clients usually only send PINGREQ messages if the connection is idle, and no other messages have been sent. Timestamps are periodically collected and written to storage; they may be stale by a few minutes.
lastStateTime string
[Output only] The last time a state event was received. Timestamps are periodically collected and written to storage; they may be stale by a few minutes.
numId string
[Output only] A server-defined unique numeric ID for the device. This is a more compact way to identify devices, and it is globally unique.
state DeviceStateResponse
[Output only] The state most recently received from the device. If no state has been reported, this field is not present.
id str
The provider-assigned unique ID for this managed resource.
last_config_ack_time str
[Output only] The last time a cloud-to-device config version acknowledgment was received from the device. This field is only for configurations sent through MQTT.
last_config_send_time str
[Output only] The last time a cloud-to-device config version was sent to the device.
last_error_status StatusResponse
[Output only] The error message of the most recent error, such as a failure to publish to Cloud Pub/Sub. 'last_error_time' is the timestamp of this field. If no errors have occurred, this field has an empty message and the status code 0 == OK. Otherwise, this field is expected to have a status code other than OK.
last_error_time str
[Output only] The time the most recent error occurred, such as a failure to publish to Cloud Pub/Sub. This field is the timestamp of 'last_error_status'.
last_event_time str
[Output only] The last time a telemetry event was received. Timestamps are periodically collected and written to storage; they may be stale by a few minutes.
last_heartbeat_time str
[Output only] The last time an MQTT PINGREQ was received. This field applies only to devices connecting through MQTT. MQTT clients usually only send PINGREQ messages if the connection is idle, and no other messages have been sent. Timestamps are periodically collected and written to storage; they may be stale by a few minutes.
last_state_time str
[Output only] The last time a state event was received. Timestamps are periodically collected and written to storage; they may be stale by a few minutes.
num_id str
[Output only] A server-defined unique numeric ID for the device. This is a more compact way to identify devices, and it is globally unique.
state DeviceStateResponse
[Output only] The state most recently received from the device. If no state has been reported, this field is not present.
id String
The provider-assigned unique ID for this managed resource.
lastConfigAckTime String
[Output only] The last time a cloud-to-device config version acknowledgment was received from the device. This field is only for configurations sent through MQTT.
lastConfigSendTime String
[Output only] The last time a cloud-to-device config version was sent to the device.
lastErrorStatus Property Map
[Output only] The error message of the most recent error, such as a failure to publish to Cloud Pub/Sub. 'last_error_time' is the timestamp of this field. If no errors have occurred, this field has an empty message and the status code 0 == OK. Otherwise, this field is expected to have a status code other than OK.
lastErrorTime String
[Output only] The time the most recent error occurred, such as a failure to publish to Cloud Pub/Sub. This field is the timestamp of 'last_error_status'.
lastEventTime String
[Output only] The last time a telemetry event was received. Timestamps are periodically collected and written to storage; they may be stale by a few minutes.
lastHeartbeatTime String
[Output only] The last time an MQTT PINGREQ was received. This field applies only to devices connecting through MQTT. MQTT clients usually only send PINGREQ messages if the connection is idle, and no other messages have been sent. Timestamps are periodically collected and written to storage; they may be stale by a few minutes.
lastStateTime String
[Output only] The last time a state event was received. Timestamps are periodically collected and written to storage; they may be stale by a few minutes.
numId String
[Output only] A server-defined unique numeric ID for the device. This is a more compact way to identify devices, and it is globally unique.
state Property Map
[Output only] The state most recently received from the device. If no state has been reported, this field is not present.

Supporting Types

DeviceConfig
, DeviceConfigArgs

BinaryData string
The device configuration data.
BinaryData string
The device configuration data.
binaryData String
The device configuration data.
binaryData string
The device configuration data.
binary_data str
The device configuration data.
binaryData String
The device configuration data.

DeviceConfigResponse
, DeviceConfigResponseArgs

BinaryData This property is required. string
The device configuration data.
CloudUpdateTime This property is required. string
[Output only] The time at which this configuration version was updated in Cloud IoT Core. This timestamp is set by the server.
DeviceAckTime This property is required. string
[Output only] The time at which Cloud IoT Core received the acknowledgment from the device, indicating that the device has received this configuration version. If this field is not present, the device has not yet acknowledged that it received this version. Note that when the config was sent to the device, many config versions may have been available in Cloud IoT Core while the device was disconnected, and on connection, only the latest version is sent to the device. Some versions may never be sent to the device, and therefore are never acknowledged. This timestamp is set by Cloud IoT Core.
Version This property is required. string
[Output only] The version of this update. The version number is assigned by the server, and is always greater than 0 after device creation. The version must be 0 on the CreateDevice request if a config is specified; the response of CreateDevice will always have a value of 1.
BinaryData This property is required. string
The device configuration data.
CloudUpdateTime This property is required. string
[Output only] The time at which this configuration version was updated in Cloud IoT Core. This timestamp is set by the server.
DeviceAckTime This property is required. string
[Output only] The time at which Cloud IoT Core received the acknowledgment from the device, indicating that the device has received this configuration version. If this field is not present, the device has not yet acknowledged that it received this version. Note that when the config was sent to the device, many config versions may have been available in Cloud IoT Core while the device was disconnected, and on connection, only the latest version is sent to the device. Some versions may never be sent to the device, and therefore are never acknowledged. This timestamp is set by Cloud IoT Core.
Version This property is required. string
[Output only] The version of this update. The version number is assigned by the server, and is always greater than 0 after device creation. The version must be 0 on the CreateDevice request if a config is specified; the response of CreateDevice will always have a value of 1.
binaryData This property is required. String
The device configuration data.
cloudUpdateTime This property is required. String
[Output only] The time at which this configuration version was updated in Cloud IoT Core. This timestamp is set by the server.
deviceAckTime This property is required. String
[Output only] The time at which Cloud IoT Core received the acknowledgment from the device, indicating that the device has received this configuration version. If this field is not present, the device has not yet acknowledged that it received this version. Note that when the config was sent to the device, many config versions may have been available in Cloud IoT Core while the device was disconnected, and on connection, only the latest version is sent to the device. Some versions may never be sent to the device, and therefore are never acknowledged. This timestamp is set by Cloud IoT Core.
version This property is required. String
[Output only] The version of this update. The version number is assigned by the server, and is always greater than 0 after device creation. The version must be 0 on the CreateDevice request if a config is specified; the response of CreateDevice will always have a value of 1.
binaryData This property is required. string
The device configuration data.
cloudUpdateTime This property is required. string
[Output only] The time at which this configuration version was updated in Cloud IoT Core. This timestamp is set by the server.
deviceAckTime This property is required. string
[Output only] The time at which Cloud IoT Core received the acknowledgment from the device, indicating that the device has received this configuration version. If this field is not present, the device has not yet acknowledged that it received this version. Note that when the config was sent to the device, many config versions may have been available in Cloud IoT Core while the device was disconnected, and on connection, only the latest version is sent to the device. Some versions may never be sent to the device, and therefore are never acknowledged. This timestamp is set by Cloud IoT Core.
version This property is required. string
[Output only] The version of this update. The version number is assigned by the server, and is always greater than 0 after device creation. The version must be 0 on the CreateDevice request if a config is specified; the response of CreateDevice will always have a value of 1.
binary_data This property is required. str
The device configuration data.
cloud_update_time This property is required. str
[Output only] The time at which this configuration version was updated in Cloud IoT Core. This timestamp is set by the server.
device_ack_time This property is required. str
[Output only] The time at which Cloud IoT Core received the acknowledgment from the device, indicating that the device has received this configuration version. If this field is not present, the device has not yet acknowledged that it received this version. Note that when the config was sent to the device, many config versions may have been available in Cloud IoT Core while the device was disconnected, and on connection, only the latest version is sent to the device. Some versions may never be sent to the device, and therefore are never acknowledged. This timestamp is set by Cloud IoT Core.
version This property is required. str
[Output only] The version of this update. The version number is assigned by the server, and is always greater than 0 after device creation. The version must be 0 on the CreateDevice request if a config is specified; the response of CreateDevice will always have a value of 1.
binaryData This property is required. String
The device configuration data.
cloudUpdateTime This property is required. String
[Output only] The time at which this configuration version was updated in Cloud IoT Core. This timestamp is set by the server.
deviceAckTime This property is required. String
[Output only] The time at which Cloud IoT Core received the acknowledgment from the device, indicating that the device has received this configuration version. If this field is not present, the device has not yet acknowledged that it received this version. Note that when the config was sent to the device, many config versions may have been available in Cloud IoT Core while the device was disconnected, and on connection, only the latest version is sent to the device. Some versions may never be sent to the device, and therefore are never acknowledged. This timestamp is set by Cloud IoT Core.
version This property is required. String
[Output only] The version of this update. The version number is assigned by the server, and is always greater than 0 after device creation. The version must be 0 on the CreateDevice request if a config is specified; the response of CreateDevice will always have a value of 1.

DeviceCredential
, DeviceCredentialArgs

ExpirationTime string
[Optional] The time at which this credential becomes invalid. This credential will be ignored for new client authentication requests after this timestamp; however, it will not be automatically deleted.
PublicKey Pulumi.GoogleNative.CloudIoT.V1.Inputs.PublicKeyCredential
A public key used to verify the signature of JSON Web Tokens (JWTs). When adding a new device credential, either via device creation or via modifications, this public key credential may be required to be signed by one of the registry level certificates. More specifically, if the registry contains at least one certificate, any new device credential must be signed by one of the registry certificates. As a result, when the registry contains certificates, only X.509 certificates are accepted as device credentials. However, if the registry does not contain a certificate, self-signed certificates and public keys will be accepted. New device credentials must be different from every registry-level certificate.
ExpirationTime string
[Optional] The time at which this credential becomes invalid. This credential will be ignored for new client authentication requests after this timestamp; however, it will not be automatically deleted.
PublicKey PublicKeyCredential
A public key used to verify the signature of JSON Web Tokens (JWTs). When adding a new device credential, either via device creation or via modifications, this public key credential may be required to be signed by one of the registry level certificates. More specifically, if the registry contains at least one certificate, any new device credential must be signed by one of the registry certificates. As a result, when the registry contains certificates, only X.509 certificates are accepted as device credentials. However, if the registry does not contain a certificate, self-signed certificates and public keys will be accepted. New device credentials must be different from every registry-level certificate.
expirationTime String
[Optional] The time at which this credential becomes invalid. This credential will be ignored for new client authentication requests after this timestamp; however, it will not be automatically deleted.
publicKey PublicKeyCredential
A public key used to verify the signature of JSON Web Tokens (JWTs). When adding a new device credential, either via device creation or via modifications, this public key credential may be required to be signed by one of the registry level certificates. More specifically, if the registry contains at least one certificate, any new device credential must be signed by one of the registry certificates. As a result, when the registry contains certificates, only X.509 certificates are accepted as device credentials. However, if the registry does not contain a certificate, self-signed certificates and public keys will be accepted. New device credentials must be different from every registry-level certificate.
expirationTime string
[Optional] The time at which this credential becomes invalid. This credential will be ignored for new client authentication requests after this timestamp; however, it will not be automatically deleted.
publicKey PublicKeyCredential
A public key used to verify the signature of JSON Web Tokens (JWTs). When adding a new device credential, either via device creation or via modifications, this public key credential may be required to be signed by one of the registry level certificates. More specifically, if the registry contains at least one certificate, any new device credential must be signed by one of the registry certificates. As a result, when the registry contains certificates, only X.509 certificates are accepted as device credentials. However, if the registry does not contain a certificate, self-signed certificates and public keys will be accepted. New device credentials must be different from every registry-level certificate.
expiration_time str
[Optional] The time at which this credential becomes invalid. This credential will be ignored for new client authentication requests after this timestamp; however, it will not be automatically deleted.
public_key PublicKeyCredential
A public key used to verify the signature of JSON Web Tokens (JWTs). When adding a new device credential, either via device creation or via modifications, this public key credential may be required to be signed by one of the registry level certificates. More specifically, if the registry contains at least one certificate, any new device credential must be signed by one of the registry certificates. As a result, when the registry contains certificates, only X.509 certificates are accepted as device credentials. However, if the registry does not contain a certificate, self-signed certificates and public keys will be accepted. New device credentials must be different from every registry-level certificate.
expirationTime String
[Optional] The time at which this credential becomes invalid. This credential will be ignored for new client authentication requests after this timestamp; however, it will not be automatically deleted.
publicKey Property Map
A public key used to verify the signature of JSON Web Tokens (JWTs). When adding a new device credential, either via device creation or via modifications, this public key credential may be required to be signed by one of the registry level certificates. More specifically, if the registry contains at least one certificate, any new device credential must be signed by one of the registry certificates. As a result, when the registry contains certificates, only X.509 certificates are accepted as device credentials. However, if the registry does not contain a certificate, self-signed certificates and public keys will be accepted. New device credentials must be different from every registry-level certificate.

DeviceCredentialResponse
, DeviceCredentialResponseArgs

ExpirationTime This property is required. string
[Optional] The time at which this credential becomes invalid. This credential will be ignored for new client authentication requests after this timestamp; however, it will not be automatically deleted.
PublicKey This property is required. Pulumi.GoogleNative.CloudIoT.V1.Inputs.PublicKeyCredentialResponse
A public key used to verify the signature of JSON Web Tokens (JWTs). When adding a new device credential, either via device creation or via modifications, this public key credential may be required to be signed by one of the registry level certificates. More specifically, if the registry contains at least one certificate, any new device credential must be signed by one of the registry certificates. As a result, when the registry contains certificates, only X.509 certificates are accepted as device credentials. However, if the registry does not contain a certificate, self-signed certificates and public keys will be accepted. New device credentials must be different from every registry-level certificate.
ExpirationTime This property is required. string
[Optional] The time at which this credential becomes invalid. This credential will be ignored for new client authentication requests after this timestamp; however, it will not be automatically deleted.
PublicKey This property is required. PublicKeyCredentialResponse
A public key used to verify the signature of JSON Web Tokens (JWTs). When adding a new device credential, either via device creation or via modifications, this public key credential may be required to be signed by one of the registry level certificates. More specifically, if the registry contains at least one certificate, any new device credential must be signed by one of the registry certificates. As a result, when the registry contains certificates, only X.509 certificates are accepted as device credentials. However, if the registry does not contain a certificate, self-signed certificates and public keys will be accepted. New device credentials must be different from every registry-level certificate.
expirationTime This property is required. String
[Optional] The time at which this credential becomes invalid. This credential will be ignored for new client authentication requests after this timestamp; however, it will not be automatically deleted.
publicKey This property is required. PublicKeyCredentialResponse
A public key used to verify the signature of JSON Web Tokens (JWTs). When adding a new device credential, either via device creation or via modifications, this public key credential may be required to be signed by one of the registry level certificates. More specifically, if the registry contains at least one certificate, any new device credential must be signed by one of the registry certificates. As a result, when the registry contains certificates, only X.509 certificates are accepted as device credentials. However, if the registry does not contain a certificate, self-signed certificates and public keys will be accepted. New device credentials must be different from every registry-level certificate.
expirationTime This property is required. string
[Optional] The time at which this credential becomes invalid. This credential will be ignored for new client authentication requests after this timestamp; however, it will not be automatically deleted.
publicKey This property is required. PublicKeyCredentialResponse
A public key used to verify the signature of JSON Web Tokens (JWTs). When adding a new device credential, either via device creation or via modifications, this public key credential may be required to be signed by one of the registry level certificates. More specifically, if the registry contains at least one certificate, any new device credential must be signed by one of the registry certificates. As a result, when the registry contains certificates, only X.509 certificates are accepted as device credentials. However, if the registry does not contain a certificate, self-signed certificates and public keys will be accepted. New device credentials must be different from every registry-level certificate.
expiration_time This property is required. str
[Optional] The time at which this credential becomes invalid. This credential will be ignored for new client authentication requests after this timestamp; however, it will not be automatically deleted.
public_key This property is required. PublicKeyCredentialResponse
A public key used to verify the signature of JSON Web Tokens (JWTs). When adding a new device credential, either via device creation or via modifications, this public key credential may be required to be signed by one of the registry level certificates. More specifically, if the registry contains at least one certificate, any new device credential must be signed by one of the registry certificates. As a result, when the registry contains certificates, only X.509 certificates are accepted as device credentials. However, if the registry does not contain a certificate, self-signed certificates and public keys will be accepted. New device credentials must be different from every registry-level certificate.
expirationTime This property is required. String
[Optional] The time at which this credential becomes invalid. This credential will be ignored for new client authentication requests after this timestamp; however, it will not be automatically deleted.
publicKey This property is required. Property Map
A public key used to verify the signature of JSON Web Tokens (JWTs). When adding a new device credential, either via device creation or via modifications, this public key credential may be required to be signed by one of the registry level certificates. More specifically, if the registry contains at least one certificate, any new device credential must be signed by one of the registry certificates. As a result, when the registry contains certificates, only X.509 certificates are accepted as device credentials. However, if the registry does not contain a certificate, self-signed certificates and public keys will be accepted. New device credentials must be different from every registry-level certificate.

DeviceLogLevel
, DeviceLogLevelArgs

LogLevelUnspecified
LOG_LEVEL_UNSPECIFIEDNo logging specified. If not specified, logging will be disabled.
None
NONEDisables logging.
Error
ERRORError events will be logged.
Info
INFOInformational events will be logged, such as connections and disconnections.
Debug
DEBUGAll events will be logged.
DeviceLogLevelLogLevelUnspecified
LOG_LEVEL_UNSPECIFIEDNo logging specified. If not specified, logging will be disabled.
DeviceLogLevelNone
NONEDisables logging.
DeviceLogLevelError
ERRORError events will be logged.
DeviceLogLevelInfo
INFOInformational events will be logged, such as connections and disconnections.
DeviceLogLevelDebug
DEBUGAll events will be logged.
LogLevelUnspecified
LOG_LEVEL_UNSPECIFIEDNo logging specified. If not specified, logging will be disabled.
None
NONEDisables logging.
Error
ERRORError events will be logged.
Info
INFOInformational events will be logged, such as connections and disconnections.
Debug
DEBUGAll events will be logged.
LogLevelUnspecified
LOG_LEVEL_UNSPECIFIEDNo logging specified. If not specified, logging will be disabled.
None
NONEDisables logging.
Error
ERRORError events will be logged.
Info
INFOInformational events will be logged, such as connections and disconnections.
Debug
DEBUGAll events will be logged.
LOG_LEVEL_UNSPECIFIED
LOG_LEVEL_UNSPECIFIEDNo logging specified. If not specified, logging will be disabled.
NONE
NONEDisables logging.
ERROR
ERRORError events will be logged.
INFO
INFOInformational events will be logged, such as connections and disconnections.
DEBUG
DEBUGAll events will be logged.
"LOG_LEVEL_UNSPECIFIED"
LOG_LEVEL_UNSPECIFIEDNo logging specified. If not specified, logging will be disabled.
"NONE"
NONEDisables logging.
"ERROR"
ERRORError events will be logged.
"INFO"
INFOInformational events will be logged, such as connections and disconnections.
"DEBUG"
DEBUGAll events will be logged.

DeviceStateResponse
, DeviceStateResponseArgs

BinaryData This property is required. string
The device state data.
UpdateTime This property is required. string
[Output only] The time at which this state version was updated in Cloud IoT Core.
BinaryData This property is required. string
The device state data.
UpdateTime This property is required. string
[Output only] The time at which this state version was updated in Cloud IoT Core.
binaryData This property is required. String
The device state data.
updateTime This property is required. String
[Output only] The time at which this state version was updated in Cloud IoT Core.
binaryData This property is required. string
The device state data.
updateTime This property is required. string
[Output only] The time at which this state version was updated in Cloud IoT Core.
binary_data This property is required. str
The device state data.
update_time This property is required. str
[Output only] The time at which this state version was updated in Cloud IoT Core.
binaryData This property is required. String
The device state data.
updateTime This property is required. String
[Output only] The time at which this state version was updated in Cloud IoT Core.

GatewayConfig
, GatewayConfigArgs

GatewayAuthMethod Pulumi.GoogleNative.CloudIoT.V1.GatewayConfigGatewayAuthMethod
Indicates how to authorize and/or authenticate devices to access the gateway.
GatewayType Pulumi.GoogleNative.CloudIoT.V1.GatewayConfigGatewayType
Indicates whether the device is a gateway.
GatewayAuthMethod GatewayConfigGatewayAuthMethod
Indicates how to authorize and/or authenticate devices to access the gateway.
GatewayType GatewayConfigGatewayType
Indicates whether the device is a gateway.
gatewayAuthMethod GatewayConfigGatewayAuthMethod
Indicates how to authorize and/or authenticate devices to access the gateway.
gatewayType GatewayConfigGatewayType
Indicates whether the device is a gateway.
gatewayAuthMethod GatewayConfigGatewayAuthMethod
Indicates how to authorize and/or authenticate devices to access the gateway.
gatewayType GatewayConfigGatewayType
Indicates whether the device is a gateway.
gateway_auth_method GatewayConfigGatewayAuthMethod
Indicates how to authorize and/or authenticate devices to access the gateway.
gateway_type GatewayConfigGatewayType
Indicates whether the device is a gateway.

GatewayConfigGatewayAuthMethod
, GatewayConfigGatewayAuthMethodArgs

GatewayAuthMethodUnspecified
GATEWAY_AUTH_METHOD_UNSPECIFIEDNo authentication/authorization method specified. No devices are allowed to access the gateway.
AssociationOnly
ASSOCIATION_ONLYThe device is authenticated through the gateway association only. Device credentials are ignored even if provided.
DeviceAuthTokenOnly
DEVICE_AUTH_TOKEN_ONLYThe device is authenticated through its own credentials. Gateway association is not checked.
AssociationAndDeviceAuthToken
ASSOCIATION_AND_DEVICE_AUTH_TOKENThe device is authenticated through both device credentials and gateway association. The device must be bound to the gateway and must provide its own credentials.
GatewayConfigGatewayAuthMethodGatewayAuthMethodUnspecified
GATEWAY_AUTH_METHOD_UNSPECIFIEDNo authentication/authorization method specified. No devices are allowed to access the gateway.
GatewayConfigGatewayAuthMethodAssociationOnly
ASSOCIATION_ONLYThe device is authenticated through the gateway association only. Device credentials are ignored even if provided.
GatewayConfigGatewayAuthMethodDeviceAuthTokenOnly
DEVICE_AUTH_TOKEN_ONLYThe device is authenticated through its own credentials. Gateway association is not checked.
GatewayConfigGatewayAuthMethodAssociationAndDeviceAuthToken
ASSOCIATION_AND_DEVICE_AUTH_TOKENThe device is authenticated through both device credentials and gateway association. The device must be bound to the gateway and must provide its own credentials.
GatewayAuthMethodUnspecified
GATEWAY_AUTH_METHOD_UNSPECIFIEDNo authentication/authorization method specified. No devices are allowed to access the gateway.
AssociationOnly
ASSOCIATION_ONLYThe device is authenticated through the gateway association only. Device credentials are ignored even if provided.
DeviceAuthTokenOnly
DEVICE_AUTH_TOKEN_ONLYThe device is authenticated through its own credentials. Gateway association is not checked.
AssociationAndDeviceAuthToken
ASSOCIATION_AND_DEVICE_AUTH_TOKENThe device is authenticated through both device credentials and gateway association. The device must be bound to the gateway and must provide its own credentials.
GatewayAuthMethodUnspecified
GATEWAY_AUTH_METHOD_UNSPECIFIEDNo authentication/authorization method specified. No devices are allowed to access the gateway.
AssociationOnly
ASSOCIATION_ONLYThe device is authenticated through the gateway association only. Device credentials are ignored even if provided.
DeviceAuthTokenOnly
DEVICE_AUTH_TOKEN_ONLYThe device is authenticated through its own credentials. Gateway association is not checked.
AssociationAndDeviceAuthToken
ASSOCIATION_AND_DEVICE_AUTH_TOKENThe device is authenticated through both device credentials and gateway association. The device must be bound to the gateway and must provide its own credentials.
GATEWAY_AUTH_METHOD_UNSPECIFIED
GATEWAY_AUTH_METHOD_UNSPECIFIEDNo authentication/authorization method specified. No devices are allowed to access the gateway.
ASSOCIATION_ONLY
ASSOCIATION_ONLYThe device is authenticated through the gateway association only. Device credentials are ignored even if provided.
DEVICE_AUTH_TOKEN_ONLY
DEVICE_AUTH_TOKEN_ONLYThe device is authenticated through its own credentials. Gateway association is not checked.
ASSOCIATION_AND_DEVICE_AUTH_TOKEN
ASSOCIATION_AND_DEVICE_AUTH_TOKENThe device is authenticated through both device credentials and gateway association. The device must be bound to the gateway and must provide its own credentials.
"GATEWAY_AUTH_METHOD_UNSPECIFIED"
GATEWAY_AUTH_METHOD_UNSPECIFIEDNo authentication/authorization method specified. No devices are allowed to access the gateway.
"ASSOCIATION_ONLY"
ASSOCIATION_ONLYThe device is authenticated through the gateway association only. Device credentials are ignored even if provided.
"DEVICE_AUTH_TOKEN_ONLY"
DEVICE_AUTH_TOKEN_ONLYThe device is authenticated through its own credentials. Gateway association is not checked.
"ASSOCIATION_AND_DEVICE_AUTH_TOKEN"
ASSOCIATION_AND_DEVICE_AUTH_TOKENThe device is authenticated through both device credentials and gateway association. The device must be bound to the gateway and must provide its own credentials.

GatewayConfigGatewayType
, GatewayConfigGatewayTypeArgs

GatewayTypeUnspecified
GATEWAY_TYPE_UNSPECIFIEDIf unspecified, the device is considered a non-gateway device.
Gateway
GATEWAYThe device is a gateway.
NonGateway
NON_GATEWAYThe device is not a gateway.
GatewayConfigGatewayTypeGatewayTypeUnspecified
GATEWAY_TYPE_UNSPECIFIEDIf unspecified, the device is considered a non-gateway device.
GatewayConfigGatewayTypeGateway
GATEWAYThe device is a gateway.
GatewayConfigGatewayTypeNonGateway
NON_GATEWAYThe device is not a gateway.
GatewayTypeUnspecified
GATEWAY_TYPE_UNSPECIFIEDIf unspecified, the device is considered a non-gateway device.
Gateway
GATEWAYThe device is a gateway.
NonGateway
NON_GATEWAYThe device is not a gateway.
GatewayTypeUnspecified
GATEWAY_TYPE_UNSPECIFIEDIf unspecified, the device is considered a non-gateway device.
Gateway
GATEWAYThe device is a gateway.
NonGateway
NON_GATEWAYThe device is not a gateway.
GATEWAY_TYPE_UNSPECIFIED
GATEWAY_TYPE_UNSPECIFIEDIf unspecified, the device is considered a non-gateway device.
GATEWAY
GATEWAYThe device is a gateway.
NON_GATEWAY
NON_GATEWAYThe device is not a gateway.
"GATEWAY_TYPE_UNSPECIFIED"
GATEWAY_TYPE_UNSPECIFIEDIf unspecified, the device is considered a non-gateway device.
"GATEWAY"
GATEWAYThe device is a gateway.
"NON_GATEWAY"
NON_GATEWAYThe device is not a gateway.

GatewayConfigResponse
, GatewayConfigResponseArgs

GatewayAuthMethod This property is required. string
Indicates how to authorize and/or authenticate devices to access the gateway.
GatewayType This property is required. string
Indicates whether the device is a gateway.
LastAccessedGatewayId This property is required. string
[Output only] The ID of the gateway the device accessed most recently.
LastAccessedGatewayTime This property is required. string
[Output only] The most recent time at which the device accessed the gateway specified in last_accessed_gateway.
GatewayAuthMethod This property is required. string
Indicates how to authorize and/or authenticate devices to access the gateway.
GatewayType This property is required. string
Indicates whether the device is a gateway.
LastAccessedGatewayId This property is required. string
[Output only] The ID of the gateway the device accessed most recently.
LastAccessedGatewayTime This property is required. string
[Output only] The most recent time at which the device accessed the gateway specified in last_accessed_gateway.
gatewayAuthMethod This property is required. String
Indicates how to authorize and/or authenticate devices to access the gateway.
gatewayType This property is required. String
Indicates whether the device is a gateway.
lastAccessedGatewayId This property is required. String
[Output only] The ID of the gateway the device accessed most recently.
lastAccessedGatewayTime This property is required. String
[Output only] The most recent time at which the device accessed the gateway specified in last_accessed_gateway.
gatewayAuthMethod This property is required. string
Indicates how to authorize and/or authenticate devices to access the gateway.
gatewayType This property is required. string
Indicates whether the device is a gateway.
lastAccessedGatewayId This property is required. string
[Output only] The ID of the gateway the device accessed most recently.
lastAccessedGatewayTime This property is required. string
[Output only] The most recent time at which the device accessed the gateway specified in last_accessed_gateway.
gateway_auth_method This property is required. str
Indicates how to authorize and/or authenticate devices to access the gateway.
gateway_type This property is required. str
Indicates whether the device is a gateway.
last_accessed_gateway_id This property is required. str
[Output only] The ID of the gateway the device accessed most recently.
last_accessed_gateway_time This property is required. str
[Output only] The most recent time at which the device accessed the gateway specified in last_accessed_gateway.
gatewayAuthMethod This property is required. String
Indicates how to authorize and/or authenticate devices to access the gateway.
gatewayType This property is required. String
Indicates whether the device is a gateway.
lastAccessedGatewayId This property is required. String
[Output only] The ID of the gateway the device accessed most recently.
lastAccessedGatewayTime This property is required. String
[Output only] The most recent time at which the device accessed the gateway specified in last_accessed_gateway.

PublicKeyCredential
, PublicKeyCredentialArgs

Format PublicKeyCredentialFormat
The format of the key.
Key string
The key data.
format PublicKeyCredentialFormat
The format of the key.
key String
The key data.
format PublicKeyCredentialFormat
The format of the key.
key string
The key data.
format PublicKeyCredentialFormat
The format of the key.
key str
The key data.

PublicKeyCredentialFormat
, PublicKeyCredentialFormatArgs

UnspecifiedPublicKeyFormat
UNSPECIFIED_PUBLIC_KEY_FORMATThe format has not been specified. This is an invalid default value and must not be used.
RsaPem
RSA_PEMAn RSA public key encoded in base64, and wrapped by -----BEGIN PUBLIC KEY----- and -----END PUBLIC KEY-----. This can be used to verify RS256 signatures in JWT tokens (RFC7518).
RsaX509Pem
RSA_X509_PEMAs RSA_PEM, but wrapped in an X.509v3 certificate (RFC5280), encoded in base64, and wrapped by -----BEGIN CERTIFICATE----- and -----END CERTIFICATE-----.
Es256Pem
ES256_PEMPublic key for the ECDSA algorithm using P-256 and SHA-256, encoded in base64, and wrapped by -----BEGIN PUBLIC KEY----- and -----END PUBLIC KEY-----. This can be used to verify JWT tokens with the ES256 algorithm (RFC7518). This curve is defined in OpenSSL as the prime256v1 curve.
Es256X509Pem
ES256_X509_PEMAs ES256_PEM, but wrapped in an X.509v3 certificate (RFC5280), encoded in base64, and wrapped by -----BEGIN CERTIFICATE----- and -----END CERTIFICATE-----.
PublicKeyCredentialFormatUnspecifiedPublicKeyFormat
UNSPECIFIED_PUBLIC_KEY_FORMATThe format has not been specified. This is an invalid default value and must not be used.
PublicKeyCredentialFormatRsaPem
RSA_PEMAn RSA public key encoded in base64, and wrapped by -----BEGIN PUBLIC KEY----- and -----END PUBLIC KEY-----. This can be used to verify RS256 signatures in JWT tokens (RFC7518).
PublicKeyCredentialFormatRsaX509Pem
RSA_X509_PEMAs RSA_PEM, but wrapped in an X.509v3 certificate (RFC5280), encoded in base64, and wrapped by -----BEGIN CERTIFICATE----- and -----END CERTIFICATE-----.
PublicKeyCredentialFormatEs256Pem
ES256_PEMPublic key for the ECDSA algorithm using P-256 and SHA-256, encoded in base64, and wrapped by -----BEGIN PUBLIC KEY----- and -----END PUBLIC KEY-----. This can be used to verify JWT tokens with the ES256 algorithm (RFC7518). This curve is defined in OpenSSL as the prime256v1 curve.
PublicKeyCredentialFormatEs256X509Pem
ES256_X509_PEMAs ES256_PEM, but wrapped in an X.509v3 certificate (RFC5280), encoded in base64, and wrapped by -----BEGIN CERTIFICATE----- and -----END CERTIFICATE-----.
UnspecifiedPublicKeyFormat
UNSPECIFIED_PUBLIC_KEY_FORMATThe format has not been specified. This is an invalid default value and must not be used.
RsaPem
RSA_PEMAn RSA public key encoded in base64, and wrapped by -----BEGIN PUBLIC KEY----- and -----END PUBLIC KEY-----. This can be used to verify RS256 signatures in JWT tokens (RFC7518).
RsaX509Pem
RSA_X509_PEMAs RSA_PEM, but wrapped in an X.509v3 certificate (RFC5280), encoded in base64, and wrapped by -----BEGIN CERTIFICATE----- and -----END CERTIFICATE-----.
Es256Pem
ES256_PEMPublic key for the ECDSA algorithm using P-256 and SHA-256, encoded in base64, and wrapped by -----BEGIN PUBLIC KEY----- and -----END PUBLIC KEY-----. This can be used to verify JWT tokens with the ES256 algorithm (RFC7518). This curve is defined in OpenSSL as the prime256v1 curve.
Es256X509Pem
ES256_X509_PEMAs ES256_PEM, but wrapped in an X.509v3 certificate (RFC5280), encoded in base64, and wrapped by -----BEGIN CERTIFICATE----- and -----END CERTIFICATE-----.
UnspecifiedPublicKeyFormat
UNSPECIFIED_PUBLIC_KEY_FORMATThe format has not been specified. This is an invalid default value and must not be used.
RsaPem
RSA_PEMAn RSA public key encoded in base64, and wrapped by -----BEGIN PUBLIC KEY----- and -----END PUBLIC KEY-----. This can be used to verify RS256 signatures in JWT tokens (RFC7518).
RsaX509Pem
RSA_X509_PEMAs RSA_PEM, but wrapped in an X.509v3 certificate (RFC5280), encoded in base64, and wrapped by -----BEGIN CERTIFICATE----- and -----END CERTIFICATE-----.
Es256Pem
ES256_PEMPublic key for the ECDSA algorithm using P-256 and SHA-256, encoded in base64, and wrapped by -----BEGIN PUBLIC KEY----- and -----END PUBLIC KEY-----. This can be used to verify JWT tokens with the ES256 algorithm (RFC7518). This curve is defined in OpenSSL as the prime256v1 curve.
Es256X509Pem
ES256_X509_PEMAs ES256_PEM, but wrapped in an X.509v3 certificate (RFC5280), encoded in base64, and wrapped by -----BEGIN CERTIFICATE----- and -----END CERTIFICATE-----.
UNSPECIFIED_PUBLIC_KEY_FORMAT
UNSPECIFIED_PUBLIC_KEY_FORMATThe format has not been specified. This is an invalid default value and must not be used.
RSA_PEM
RSA_PEMAn RSA public key encoded in base64, and wrapped by -----BEGIN PUBLIC KEY----- and -----END PUBLIC KEY-----. This can be used to verify RS256 signatures in JWT tokens (RFC7518).
RSA_X509_PEM
RSA_X509_PEMAs RSA_PEM, but wrapped in an X.509v3 certificate (RFC5280), encoded in base64, and wrapped by -----BEGIN CERTIFICATE----- and -----END CERTIFICATE-----.
ES256_PEM
ES256_PEMPublic key for the ECDSA algorithm using P-256 and SHA-256, encoded in base64, and wrapped by -----BEGIN PUBLIC KEY----- and -----END PUBLIC KEY-----. This can be used to verify JWT tokens with the ES256 algorithm (RFC7518). This curve is defined in OpenSSL as the prime256v1 curve.
ES256_X509_PEM
ES256_X509_PEMAs ES256_PEM, but wrapped in an X.509v3 certificate (RFC5280), encoded in base64, and wrapped by -----BEGIN CERTIFICATE----- and -----END CERTIFICATE-----.
"UNSPECIFIED_PUBLIC_KEY_FORMAT"
UNSPECIFIED_PUBLIC_KEY_FORMATThe format has not been specified. This is an invalid default value and must not be used.
"RSA_PEM"
RSA_PEMAn RSA public key encoded in base64, and wrapped by -----BEGIN PUBLIC KEY----- and -----END PUBLIC KEY-----. This can be used to verify RS256 signatures in JWT tokens (RFC7518).
"RSA_X509_PEM"
RSA_X509_PEMAs RSA_PEM, but wrapped in an X.509v3 certificate (RFC5280), encoded in base64, and wrapped by -----BEGIN CERTIFICATE----- and -----END CERTIFICATE-----.
"ES256_PEM"
ES256_PEMPublic key for the ECDSA algorithm using P-256 and SHA-256, encoded in base64, and wrapped by -----BEGIN PUBLIC KEY----- and -----END PUBLIC KEY-----. This can be used to verify JWT tokens with the ES256 algorithm (RFC7518). This curve is defined in OpenSSL as the prime256v1 curve.
"ES256_X509_PEM"
ES256_X509_PEMAs ES256_PEM, but wrapped in an X.509v3 certificate (RFC5280), encoded in base64, and wrapped by -----BEGIN CERTIFICATE----- and -----END CERTIFICATE-----.

PublicKeyCredentialResponse
, PublicKeyCredentialResponseArgs

Format This property is required. string
The format of the key.
Key This property is required. string
The key data.
Format This property is required. string
The format of the key.
Key This property is required. string
The key data.
format This property is required. String
The format of the key.
key This property is required. String
The key data.
format This property is required. string
The format of the key.
key This property is required. string
The key data.
format This property is required. str
The format of the key.
key This property is required. str
The key data.
format This property is required. String
The format of the key.
key This property is required. String
The key data.

StatusResponse
, StatusResponseArgs

Code This property is required. int
The status code, which should be an enum value of google.rpc.Code.
Details This property is required. List<ImmutableDictionary<string, string>>
A list of messages that carry the error details. There is a common set of message types for APIs to use.
Message This property is required. string
A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
Code This property is required. int
The status code, which should be an enum value of google.rpc.Code.
Details This property is required. []map[string]string
A list of messages that carry the error details. There is a common set of message types for APIs to use.
Message This property is required. string
A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
code This property is required. Integer
The status code, which should be an enum value of google.rpc.Code.
details This property is required. List<Map<String,String>>
A list of messages that carry the error details. There is a common set of message types for APIs to use.
message This property is required. String
A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
code This property is required. number
The status code, which should be an enum value of google.rpc.Code.
details This property is required. {[key: string]: string}[]
A list of messages that carry the error details. There is a common set of message types for APIs to use.
message This property is required. string
A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
code This property is required. int
The status code, which should be an enum value of google.rpc.Code.
details This property is required. Sequence[Mapping[str, str]]
A list of messages that carry the error details. There is a common set of message types for APIs to use.
message This property is required. str
A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
code This property is required. Number
The status code, which should be an enum value of google.rpc.Code.
details This property is required. List<Map<String>>
A list of messages that carry the error details. There is a common set of message types for APIs to use.
message This property is required. String
A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.

Package Details

Repository
Google Cloud Native pulumi/pulumi-google-native
License
Apache-2.0

Google Cloud Native is in preview. Google Cloud Classic is fully supported.

Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi