diff --git a/oem/nvidia/bootstrap-credentials-oem-cmds.cpp b/oem/nvidia/bootstrap-credentials-oem-cmds.cpp
new file mode 100644
index 0000000..5863306
--- /dev/null
+++ b/oem/nvidia/bootstrap-credentials-oem-cmds.cpp
@@ -0,0 +1,48 @@
+/*
+ * SPDX-FileCopyrightText: Copyright (c) 2024-2025 NVIDIA CORPORATION &
+ * AFFILIATES. All rights reserved.
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+#include "oemcommands.hpp"
+
+#include <ipmid/api.hpp>
+#include <ipmid/types.hpp>
+
+#include <cstdint>
+
+void registerBootstrapCredentialsOemCommands() __attribute__((constructor));
+
+namespace ipmi
+{
+ipmi::RspType<uint8_t, uint8_t> ipmiGetUsbVendorIdProductId(uint8_t type)
+{
+    constexpr uint8_t descriptorVendorId = 1;
+    constexpr uint8_t descriptorProductId = 2;
+
+    // IPMI OEM USB Linux Gadget info
+    constexpr uint16_t usbVendorId = 0x0525;
+    constexpr uint16_t usbProductId = 0xA4A2;
+
+    if (type == descriptorVendorId)
+    {
+        return ipmi::responseSuccess(static_cast<uint8_t>(usbVendorId >> 8),
+                                     static_cast<uint8_t>(usbVendorId & 0xFF));
+    }
+    else if (type == descriptorProductId)
+    {
+        return ipmi::responseSuccess(static_cast<uint8_t>(usbProductId >> 8),
+                                     static_cast<uint8_t>(usbProductId & 0xFF));
+    }
+    return ipmi::responseInvalidFieldRequest();
+}
+
+} // namespace ipmi
+
+void registerBootstrapCredentialsOemCommands()
+{
+    ipmi::registerHandler(
+        ipmi::prioOemBase, ipmi::groupNvidia,
+        ipmi::bootstrap_credentials_oem::cmdGetUsbVendorIdProductId,
+        ipmi::Privilege::Admin, ipmi::ipmiGetUsbVendorIdProductId);
+}
diff --git a/oem/nvidia/meson.build b/oem/nvidia/meson.build
index f22c98e..9bb504f 100644
--- a/oem/nvidia/meson.build
+++ b/oem/nvidia/meson.build
@@ -1,6 +1,9 @@
 # nvidia OEM library build
 
-nvidia_oem_src = ['biosconfigcommands.cpp']
+nvidia_oem_src = [
+    'biosconfigcommands.cpp',
+    'bootstrap-credentials-oem-cmds.cpp',
+]
 
 nvidia_oem_deps = [
     boost,
@@ -13,7 +16,6 @@
     stdplus_dep,
 ]
 
-
 nvidia_ipmi_oem = library(
     'nvidia_ipmi_oem',
     nvidia_oem_src,
diff --git a/oem/nvidia/oemcommands.hpp b/oem/nvidia/oemcommands.hpp
index 2aa67ee..d305973 100644
--- a/oem/nvidia/oemcommands.hpp
+++ b/oem/nvidia/oemcommands.hpp
@@ -1,3 +1,9 @@
+/*
+ * SPDX-FileCopyrightText: Copyright (c) 2024-2025 NVIDIA CORPORATION &
+ * AFFILIATES. All rights reserved.
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
 #pragma once
 #include <cstdint>
 
@@ -7,6 +13,11 @@
 using Group = uint8_t;
 constexpr Group groupNvidia = 0x3C;
 
+namespace bootstrap_credentials_oem
+{
+constexpr auto cmdGetUsbVendorIdProductId = 0x30;
+} // namespace bootstrap_credentials_oem
+
 namespace bios_password
 {
 constexpr auto cmdSetBiosPassword = 0x36;
