Categories

Categories allow you to organize your products into a hierarchical structure. Each category belongs to a language and can contain nested subcategories via the parent category reference. All category endpoints are scoped to a language.

The category model

The category model represents a product category in your store. Categories can be nested using the parent_category_id field and contain references to the products they hold.

Properties

  • Name
    id
    Type
    string
    Description

    Unique identifier for the category.

  • Name
    parent_category_id
    Type
    string
    Description

    The ID of the parent category. null if this is a top-level category.

  • Name
    product_ids
    Type
    array
    Description

    An array of product IDs that belong to this category.

  • Name
    name
    Type
    string
    Description

    The display name of the category.

  • Name
    url
    Type
    string
    Description

    The URL of the category page in your store.

  • Name
    created_at
    Type
    timestamp
    Description

    Timestamp of when the category was created.

  • Name
    updated_at
    Type
    timestamp
    Description

    Timestamp of when the category was last updated.

  • Name
    custom_attributes
    Type
    array
    Description

    An array of custom attribute objects with name and a value field (string_value, integer_value, date_value, datetime_value, or boolean_value).


GET/v2/languages/:language_id/categories

List all categories

This endpoint allows you to retrieve a paginated list of all categories for a given language. By default, a maximum of ten categories are shown per page, with a maximum of 250 per page.

Optional attributes

  • Name
    page
    Type
    integer
    Description

    Page offset to fetch. Defaults to 1.

  • Name
    per_page
    Type
    integer
    Description

    Number of categories per page. Defaults to 10, maximum 250.

  • Name
    created_after
    Type
    timestamp
    Description

    Only return categories created after this date.

  • Name
    created_before
    Type
    timestamp
    Description

    Only return categories created before this date.

  • Name
    updated_after
    Type
    timestamp
    Description

    Only return categories updated after this date.

  • Name
    updated_before
    Type
    timestamp
    Description

    Only return categories updated before this date.

Request

GET
/v2/languages/:language_id/categories
curl -G https://app.reloadify.com/api/v2/languages/en/categories \
  -H "Authorization: Bearer {token}" \
  -d per_page=10 \
  -d page=1

Response

{
  "data": [
    {
      "id": "cat_001",
      "parent_category_id": null,
      "product_ids": ["prod_101", "prod_102", "prod_103"],
      "name": "Electronics",
      "url": "https://example.com/categories/electronics",
      "created_at": "2025-06-01T10:00:00Z",
      "updated_at": "2025-09-15T14:30:00Z",
      "custom_attributes": []
    },
    {
      "id": "cat_002",
      "parent_category_id": "cat_001",
      "product_ids": ["prod_201", "prod_202"],
      "name": "Smartphones",
      "url": "https://example.com/categories/electronics/smartphones",
      "created_at": "2025-06-05T12:00:00Z",
      "updated_at": "2025-09-20T09:15:00Z",
      "custom_attributes": []
    }
  ]
}

PUT/v2/languages/:language_id/categories

Create or update a category

This endpoint allows you to create a new category or update an existing one. If a category with the given ID already exists, it will be updated with the provided fields.

Required attributes

  • Name
    id
    Type
    string
    Description

    The unique identifier for the category.

  • Name
    name
    Type
    string
    Description

    The display name of the category.

Optional attributes

  • Name
    parent_category_id
    Type
    string
    Description

    The ID of the parent category for nesting.

  • Name
    url
    Type
    string
    Description

    The URL of the category page in your store.

  • Name
    visible
    Type
    boolean
    Description

    Whether the category is visible in your store.

  • Name
    created_at
    Type
    timestamp
    Description

    The creation timestamp. Defaults to the current time.

  • Name
    updated_at
    Type
    timestamp
    Description

    The last updated timestamp. Defaults to the current time.

  • Name
    custom_attributes
    Type
    array
    Description

    An array of custom attribute objects. Each object requires a name and one value field: string_value, integer_value, date_value, datetime_value, or boolean_value.

Request

PUT
/v2/languages/:language_id/categories
curl -X PUT https://app.reloadify.com/api/v2/languages/en/categories \
  -H "Authorization: Bearer {token}" \
  -H "Content-Type: application/json" \
  -d '{
    "category": {
      "id": "cat_003",
      "name": "Clothing",
      "url": "https://example.com/categories/clothing",
      "visible": true,
      "custom_attributes": [
        {
          "name": "season",
          "string_value": "summer"
        }
      ]
    }
  }'

Response

{
  "id": "cat_003",
  "parent_category_id": null,
  "product_ids": [],
  "name": "Clothing",
  "url": "https://example.com/categories/clothing",
  "created_at": "2025-10-01T08:00:00Z",
  "updated_at": "2025-10-01T08:00:00Z",
  "custom_attributes": [
    {
      "name": "season",
      "string_value": "summer"
    }
  ]
}

GET/v2/languages/:language_id/categories/:category_id

Retrieve a category

This endpoint allows you to retrieve a category by providing the category ID. Refer to the model at the top of this page to see which properties are included with category objects.

Request

GET
/v2/languages/en/categories/cat_001
curl https://app.reloadify.com/api/v2/languages/en/categories/cat_001 \
  -H "Authorization: Bearer {token}"

Response

{
  "id": "cat_001",
  "parent_category_id": null,
  "product_ids": ["prod_101", "prod_102", "prod_103"],
  "name": "Electronics",
  "url": "https://example.com/categories/electronics",
  "created_at": "2025-06-01T10:00:00Z",
  "updated_at": "2025-09-15T14:30:00Z",
  "custom_attributes": []
}

DELETE/v2/languages/:language_id/categories/:category_id

Delete a category

This endpoint allows you to delete a category. Be careful — this action is irreversible and will remove the category and its associations.

Request

DELETE
/v2/languages/en/categories/cat_003
curl -X DELETE https://app.reloadify.com/api/v2/languages/en/categories/cat_003 \
  -H "Authorization: Bearer {token}"

GET/v2/languages/:language_id/categories/:category_id/products

List category products

This endpoint allows you to retrieve a list of all products that belong to a specific category.

Request

GET
/v2/languages/en/categories/cat_001/products
curl -G https://app.reloadify.com/api/v2/languages/en/categories/cat_001/products \
  -H "Authorization: Bearer {token}"

Response

{
  "data": [
    {
      "id": "prod_101",
      "name": "Wireless Headphones",
      "url": "https://example.com/products/wireless-headphones"
    },
    {
      "id": "prod_102",
      "name": "USB-C Charging Cable",
      "url": "https://example.com/products/usb-c-cable"
    },
    {
      "id": "prod_103",
      "name": "Bluetooth Speaker",
      "url": "https://example.com/products/bluetooth-speaker"
    }
  ]
}

Was this page helpful?