### Method

# FwupdPlugin Device build_instance_id_full

since: 1.9.8

#### Declaration [src]

    gboolean
    fu_device_build_instance_id_full (
      FuDevice* self,
      FuDeviceInstanceFlags flags,
      GError** error,
      const gchar* subsystem,
      ...
    )

#### Description [src]

Creates an instance ID with specific flags from a prefix and some key values. If any of the key values are unset then no instance ID is added.

Available since: 1.9.8

This method is not directly available to language bindings.

#### Parameters

`flags`

  Type: `FuDeviceInstanceFlags`

  Instance ID flags, e.g. `FU_DEVICE_INSTANCE_FLAG_QUIRKS`.

`error`

  Type: `GError`

  Optional return location for an error.

  The argument can be `NULL`.
  The data is owned by the caller of the method.

`subsystem`

  Type: `const gchar*`

  Subsystem, e.g. `NVME`.

  The data is owned by the caller of the method.
  The value is a NUL terminated UTF-8 string.

`...`

  Type: ``

  Pairs of string key values, ending with `NULL`.

#### Return value

Type: `gboolean`

`TRUE` if the instance ID was added.