diff --git a/src/widgets/arcane/component.jsx b/src/widgets/arcane/component.jsx
index d8a085156..8b58b9e2b 100644
--- a/src/widgets/arcane/component.jsx
+++ b/src/widgets/arcane/component.jsx
@@ -24,7 +24,8 @@ export default function Component({ service }) {
const { data: images, error: imagesError } = useWidgetAPI(widget, "images");
const { data: updates, error: updatesError } = useWidgetAPI(widget, "updates");
- const error = containersError ?? imagesError ?? updatesError;
+ const error =
+ containersError ?? imagesError ?? updatesError ?? containers?.detail ?? images?.detail ?? updates?.detail;
if (error) {
return ;
}
diff --git a/src/widgets/arcane/component.test.jsx b/src/widgets/arcane/component.test.jsx
index cf0533d3b..cb6fe6a5e 100644
--- a/src/widgets/arcane/component.test.jsx
+++ b/src/widgets/arcane/component.test.jsx
@@ -34,6 +34,16 @@ describe("widgets/arcane/component", () => {
expect(screen.getByText("arcane.environment_required")).toBeInTheDocument();
});
+ it("shows an error when API calls return detail errors", () => {
+ useWidgetAPI.mockImplementation(() => ({ data: { detail: "Specific API error" }, error: undefined }));
+
+ renderWithProviders(, {
+ settings: { hideErrors: false },
+ });
+
+ expect(screen.getByText("Specific API error")).toBeInTheDocument();
+ });
+
it("renders placeholders while loading data", () => {
useWidgetAPI.mockImplementation(() => ({ data: undefined, error: undefined }));