diff --git a/.changeset/smooth-shoes-cover.md b/.changeset/smooth-shoes-cover.md
new file mode 100644
index 0000000000..303eddee06
--- /dev/null
+++ b/.changeset/smooth-shoes-cover.md
@@ -0,0 +1,6 @@
+---
+"@medusajs/dashboard": patch
+"@medusajs/medusa": patch
+---
+
+fix(medusa,dashboard): Retrieve `metadata` for product_tags by default and add metadta UI to product tag domain in admin dashboard
diff --git a/packages/admin/dashboard/src/dashboard-app/routes/get-route.map.tsx b/packages/admin/dashboard/src/dashboard-app/routes/get-route.map.tsx
index 1a0012a2a9..9643cb5114 100644
--- a/packages/admin/dashboard/src/dashboard-app/routes/get-route.map.tsx
+++ b/packages/admin/dashboard/src/dashboard-app/routes/get-route.map.tsx
@@ -1329,6 +1329,13 @@ export function getRouteMap({
lazy: () =>
import("../../routes/product-tags/product-tag-edit"),
},
+ {
+ path: "metadata/edit",
+ lazy: () =>
+ import(
+ "../../routes/product-tags/product-tag-metadata"
+ ),
+ },
],
},
],
diff --git a/packages/admin/dashboard/src/routes/product-tags/product-tag-detail/product-tag-detail.tsx b/packages/admin/dashboard/src/routes/product-tags/product-tag-detail/product-tag-detail.tsx
index 784e317436..39c88ee711 100644
--- a/packages/admin/dashboard/src/routes/product-tags/product-tag-detail/product-tag-detail.tsx
+++ b/packages/admin/dashboard/src/routes/product-tags/product-tag-detail/product-tag-detail.tsx
@@ -40,6 +40,7 @@ export const ProductTagDetail = () => {
before: getWidgets("product_tag.details.before"),
}}
showJSON
+ showMetadata
data={product_tag}
>
diff --git a/packages/admin/dashboard/src/routes/product-tags/product-tag-metadata/index.ts b/packages/admin/dashboard/src/routes/product-tags/product-tag-metadata/index.ts
new file mode 100644
index 0000000000..1e126af25f
--- /dev/null
+++ b/packages/admin/dashboard/src/routes/product-tags/product-tag-metadata/index.ts
@@ -0,0 +1 @@
+export { ProductTagMetadata as Component } from "./product-tag-metadata"
diff --git a/packages/admin/dashboard/src/routes/product-tags/product-tag-metadata/product-tag-metadata.tsx b/packages/admin/dashboard/src/routes/product-tags/product-tag-metadata/product-tag-metadata.tsx
new file mode 100644
index 0000000000..42e9d59d39
--- /dev/null
+++ b/packages/admin/dashboard/src/routes/product-tags/product-tag-metadata/product-tag-metadata.tsx
@@ -0,0 +1,26 @@
+import { useParams } from "react-router-dom"
+import { MetadataForm } from "../../../components/forms/metadata-form/metadata-form"
+import { useProductTag, useUpdateProductTag } from "../../../hooks/api"
+
+export const ProductTagMetadata = () => {
+ const { id } = useParams()
+
+ const { product_tag, isPending, isError, error } = useProductTag(id!)
+
+ const { mutateAsync, isPending: isMutating } = useUpdateProductTag(
+ product_tag?.id!
+ )
+
+ if (isError) {
+ throw error
+ }
+
+ return (
+
+ )
+}
diff --git a/packages/medusa/src/api/admin/product-tags/query-config.ts b/packages/medusa/src/api/admin/product-tags/query-config.ts
index 79b5ebef5e..391b51b5b2 100644
--- a/packages/medusa/src/api/admin/product-tags/query-config.ts
+++ b/packages/medusa/src/api/admin/product-tags/query-config.ts
@@ -3,6 +3,7 @@ export const defaultAdminProductTagFields = [
"value",
"created_at",
"updated_at",
+ "metadata",
]
export const retrieveProductTagTransformQueryConfig = {