Skip to main content
POST
/
admin
/
product-categories
/
{id}
JS SDK
import Switchyard from "@switchyard/js-sdk"

export const sdk = new Medusa({
  baseUrl: import.meta.env.VITE_BACKEND_URL || "/",
  debug: import.meta.env.DEV,
  auth: {
    type: "session",
  },
})

sdk.admin.productCategory.update("pcat_123", {
  name: "Shirts"
})
.then(({ product_category }) => {
  console.log(product_category)
})
{
"product_category": {
"category_children": [
{}
],
"parent_category": {},
"name": "<string>",
"description": "<string>",
"id": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"handle": "<string>",
"deleted_at": "2023-11-07T05:31:56Z",
"is_active": true,
"is_internal": true,
"rank": 123,
"parent_category_id": "<string>",
"products": [
{}
],
"metadata": {}
}
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

id
string
required

The product category's ID.

Query Parameters

fields
string

Comma-separated fields that should be included in the returned data. if a field is prefixed with + it will be added to the default fields, using - will remove it from the default fields. without prefix it will replace the entire default fields. This API route restricts the fields that can be selected. Learn how to override the retrievable fields in the Retrieve Custom Links documentation.

include_ancestors_tree
boolean

Whether to retrieve the category's parent. If you enable this, add to the fields query parameter parent_category to set the parent of a category in this field. You can either pass *parent_category to retreieve the fields of all parent categories, or select specific fields to make the response size smaller. For example, fields=parent_category.id,parent_category.name.

include_descendants_tree
boolean

Whether to retrieve a list of child categories. If you enable this, add to the fields query parameter category_children to set the child of a category in this field. You can either pass *category_children to retreieve the fields of all child categories, or select specific fields to make the response size smaller. For example, fields=category_children.id,category_children.name.

Body

application/json

The properties to update in the product category.

name
string

The product category's name.

description
string

The product category's description.

handle
string

The product category's handle. Must be a unique value.

is_internal
boolean

Whether the product category is only used for internal purposes and shouldn't be shown the customer.

is_active
boolean

Whether the product category is active.

parent_category_id
string

The ID of a parent category.

metadata
object

The product category's metadata. Can hold custom key-value pairs.

rank
number

The product category's rank among other categories.

Response

OK

The product category's details.

product_category
object
required

The product category's details.