### Method

# FwupdPlugin Device build_instance_id_full

#### 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` | `FuDeviceInstanceFlags`
| Instance ID flags, e.g. `FU_DEVICE_INSTANCE_FLAG_QUIRKS`.
`error` | `GError`
| Optional return location for an error.
| The argument can be `NULL`.
| The data is owned by the caller of the function.
`subsystem` | `const gchar*`
| Subsystem, e.g. `NVME`
| The data is owned by the caller of the function.
| The value is a NUL terminated UTF-8 string.
`...` | ``
| Pairs of string key values, ending with `NULL`.

#### Return value

Returns: | `gboolean`
| `TRUE` if the instance ID was added.