@salesforce/pwa-kit-mcp 0.3.0-preview.2 → 0.3.0-preview.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +1 -1
- package/LICENSE +14 -0
- package/dist/CHANGELOG.md +16 -0
- package/dist/LICENSE +14 -0
- package/dist/README.md +154 -0
- package/dist/data/CategoryDocument.json +239 -0
- package/dist/data/DocumentList.json +920 -0
- package/dist/data/ProductDocument.json +1458 -0
- package/dist/docs/cursor-integration-guide.md +310 -0
- package/dist/docs/images/claude-config.png +0 -0
- package/dist/docs/images/claude-list-tools.png +0 -0
- package/dist/docs/images/cursor-mcp-tools.png +0 -0
- package/dist/docs/images/cursor-settings.png +0 -0
- package/dist/package.json +66 -0
- package/dist/server/server.js +144 -0
- package/dist/tools/create-app-guideline.js +218 -0
- package/dist/tools/create-new-component.js +335 -0
- package/dist/tools/create-new-page-tool.js +307 -0
- package/dist/tools/developer-guideline.js +131 -0
- package/dist/tools/index.js +55 -0
- package/dist/tools/site-test-accessibility.js +38 -0
- package/dist/tools/site-test-performance.js +87 -0
- package/dist/tools/site-test.js +47 -0
- package/dist/utils/index.js +84 -0
- package/dist/utils/telemetry.js +179 -0
- package/dist/utils/utils.js +225 -0
- package/package.json +5 -10
package/CHANGELOG.md
CHANGED
package/LICENSE
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
BSD 3-Clause License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2023 Salesforce, Inc.
|
|
4
|
+
All rights reserved.
|
|
5
|
+
|
|
6
|
+
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
|
|
7
|
+
|
|
8
|
+
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
|
|
9
|
+
|
|
10
|
+
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
|
|
11
|
+
|
|
12
|
+
3. Neither the name of Salesforce.com nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
|
|
13
|
+
|
|
14
|
+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
## v0.3.0-preview.4 (Sep 23, 2025)
|
|
2
|
+
- Added telemetry for MCP tools. [#3327](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/3327)
|
|
3
|
+
|
|
4
|
+
## v0.2.0 (Sep 4, 2025)
|
|
5
|
+
- Normalize tool names; Add introduction section for PWA Kit MCP and resize the images on README. [#3239](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/3239)
|
|
6
|
+
|
|
7
|
+
## v0.1.1 (Aug 11, 2025)
|
|
8
|
+
- Add missing `shelljs` dependency. [#3053](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/3053)
|
|
9
|
+
|
|
10
|
+
## v0.1.0 (Jun 26, 2025)
|
|
11
|
+
- Clean up readme [#2954](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/2954)
|
|
12
|
+
- Add `create_app_guidelines` MCP tool [#2663](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/2663)
|
|
13
|
+
- Add `create_new_sample_component` MCP tool. [#2651](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/2651)
|
|
14
|
+
- Add `create_app_guidelines` MCP tool. [#2599](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/2599)
|
|
15
|
+
- Add `run_site_test` MCP tool [#2989](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/2989) [#2645](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/2645) [#3003](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/3003)
|
|
16
|
+
- Add `create_sample_storefront_page` MCP tool [#2899](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/2899) [#3014](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/3014)
|
package/dist/LICENSE
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
BSD 3-Clause License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2023 Salesforce, Inc.
|
|
4
|
+
All rights reserved.
|
|
5
|
+
|
|
6
|
+
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
|
|
7
|
+
|
|
8
|
+
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
|
|
9
|
+
|
|
10
|
+
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
|
|
11
|
+
|
|
12
|
+
3. Neither the name of Salesforce.com nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
|
|
13
|
+
|
|
14
|
+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
package/dist/README.md
ADDED
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
# 🚀 PWA Kit MCP Server
|
|
2
|
+
|
|
3
|
+
An MCP server that enhances the entire development lifecycle of PWA Kit storefront apps — from project creation and management to AI-assisted coding, testing, and implementation of best practices — all within your IDE.
|
|
4
|
+
|
|
5
|
+
## 🔍 What is MCP?
|
|
6
|
+
|
|
7
|
+
**Model Context Protocol (MCP)** is an open protocol that enables secure, structured communication between host applications (like [Cursor IDE](https://www.cursor.so/) or other AI development tools) and external tools or data sources.
|
|
8
|
+
|
|
9
|
+
It allows AI agents to query context-aware services like this server to help developers build better software, faster.
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
👉 **[Read more at modelcontextprotocol.io](https://modelcontextprotocol.io/)**
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
## What is PWA-Kit-MCP?
|
|
16
|
+
|
|
17
|
+
PWA-Kit-MCP is a local STDIO MCP Server that communicates via STDIO and operates in conjunction with a running local process, making it a fully locally installed MCP server. It provides an initial suite of MCP tools intended to standardize and optimize the developer workflow for PWA Kit storefront development. These tools facilitate project creation, supply development guidelines, enable the generation of new components and pages, and support site validation through performance and accessibility testing.
|
|
18
|
+
|
|
19
|
+
_NOTE: Cursor provides multiple LLMs for your use. These PWA Kit MCP tools were tested with the Claude 4 Sonnet LLM_
|
|
20
|
+
|
|
21
|
+
## 🧰 Features
|
|
22
|
+
|
|
23
|
+
The PWA Kit MCP Server offers the following intelligent tools tailored to Salesforce Commerce Cloud PWA development:
|
|
24
|
+
|
|
25
|
+
* **`create_storefront_app`**:
|
|
26
|
+
Guides agents and developers through creating a new PWA Kit project with `@salesforce/pwa-kit-create-app`.
|
|
27
|
+
|
|
28
|
+
* **`create_sample_component`**:
|
|
29
|
+
Walks developers through a brief Q\&A to scaffold a component using the commerce data model, layout, and structure.
|
|
30
|
+
|
|
31
|
+
* **`create_sample_page`**:
|
|
32
|
+
Interactive tool to generate a new PWA storefront page with custom routing and components.
|
|
33
|
+
|
|
34
|
+
* **`development_guidelines`**:
|
|
35
|
+
Provides best practices and guidance for building PWA Kit storefronts.
|
|
36
|
+
|
|
37
|
+
* **`run_site_test`**:
|
|
38
|
+
Runs performance and accessibility audits on a provided site URL.
|
|
39
|
+
*Example: `https://pwa-kit.mobify-storefront.com`*
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
## ▶️ Running the MCP Server
|
|
43
|
+
|
|
44
|
+
### 🖥️ From Cursor IDE
|
|
45
|
+
|
|
46
|
+
1. Open **Cursor**.
|
|
47
|
+
|
|
48
|
+
2. Navigate to **Settings > Cursor Settings...**
|
|
49
|
+
<img src="https://raw.githubusercontent.com/SalesforceCommerceCloud/pwa-kit/refs/heads/develop/packages/pwa-kit-mcp/docs/images/cursor-settings.png" alt="Cursor Settings Screenshot" width="50%" />
|
|
50
|
+
|
|
51
|
+
3. Go to **Tools & Integrations > MCP Tools > New MCP Server**
|
|
52
|
+
<img src="https://raw.githubusercontent.com/SalesforceCommerceCloud/pwa-kit/refs/heads/develop/packages/pwa-kit-mcp/docs/images/cursor-mcp-tools.png" alt="Cursor MCP Tools Screenshot" width="50%" />
|
|
53
|
+
|
|
54
|
+
4. Update your `mcp.json` like this (edit the placeholders as needed):
|
|
55
|
+
```json
|
|
56
|
+
{
|
|
57
|
+
"mcpServers": {
|
|
58
|
+
"pwa-kit": {
|
|
59
|
+
"command": "npx",
|
|
60
|
+
"args": ["-y", "@salesforce/pwa-kit-mcp"],
|
|
61
|
+
"env": {
|
|
62
|
+
"PWA_STOREFRONT_APP_PATH": "{{path-to-app-directory}}"
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
```
|
|
68
|
+
_NOTE: Replace `{{path-to-app-directory}}` with the absolute path to your generated project's `app` subfolder. For example: `"/Users/username/mcp-server-folder/mystorefront/app"`._
|
|
69
|
+
|
|
70
|
+
## 📊 Telemetry
|
|
71
|
+
|
|
72
|
+
The server collects minimal, anonymous usage data to improve reliability and the developer experience.
|
|
73
|
+
|
|
74
|
+
- **What's included**:
|
|
75
|
+
- Server lifecycle events: started, stopped, errors (`SERVER_STATUS`).
|
|
76
|
+
- Tool usage: tool name, run time, success/error (`TOOL_CALLED`).
|
|
77
|
+
- **What’s not included**:
|
|
78
|
+
- No source code, file contents, prompts, or secrets are collected by default.
|
|
79
|
+
- **How to disable/opt out**:
|
|
80
|
+
- Add `--no-telemetry` to your `args`.
|
|
81
|
+
|
|
82
|
+
**Beta:** Telemetry for the PWA Kit MCP server is in beta and subject to change. Event names, payloads, and destinations may change without notice; the feature may be modified or removed.
|
|
83
|
+
|
|
84
|
+
These are the available flags that you can pass to the `args` option.
|
|
85
|
+
|
|
86
|
+
| Flag Name | Description | Required? |Notes |
|
|
87
|
+
| -----------------| -------| ------- | ----- |
|
|
88
|
+
| `--no-telemetry` | Boolean flag to disable telemetry, the automatic collection of data for monitoring and analysis. | No | Telemetry is enabled by default, so specify this flag to disable it. |
|
|
89
|
+
| `"-y", "@salesforce/mcp"` | Tells `npx` to automatically install the `@salesforce/mcp` package instead of asking permission. | Yes | Don't change this.
|
|
90
|
+
|
|
91
|
+
Once saved, Cursor will:
|
|
92
|
+
|
|
93
|
+
* Launch the MCP server
|
|
94
|
+
* Connect to it as a client
|
|
95
|
+
* Display the available tools in the UI and how you can invoke them
|
|
96
|
+
|
|
97
|
+
You can return to **MCP Tools** anytime to enable or disable specific tools or servers.
|
|
98
|
+
|
|
99
|
+
### 🧪 From Other MCP Clients
|
|
100
|
+
|
|
101
|
+
We currently only support Cursor IDE, but if you wish to try it out with your AI agent enabled IDE, you can manually run the server be following the below steps. **NOTE:** This server communicates via **stdio**, so it is important to ensure your IDE can communicate in this manner.
|
|
102
|
+
|
|
103
|
+
```bash
|
|
104
|
+
cd {{dir-to-mcp}}
|
|
105
|
+
npm run start
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
Then send JSON-RPC requests like:
|
|
109
|
+
|
|
110
|
+
```json
|
|
111
|
+
{"jsonrpc": "2.0", "id": 1, "method": "tools/list", "params": {}}
|
|
112
|
+
{"jsonrpc": "2.0", "id": 2, "method": "tools/call", "params": {"name": "create_sample_component", "arguments": {}}}
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
---
|
|
116
|
+
|
|
117
|
+
## 👩💻 Development
|
|
118
|
+
|
|
119
|
+
If you are actively developing features for the MCP server and want to get immediate feedback during testing, follow the below steps.
|
|
120
|
+
|
|
121
|
+
1. Update your Cursor IDE MCP server configuration so that you are referencing the local server. This can be done by opening the "View: Open MCP Settings"
|
|
122
|
+
from the command pallet and editing your `pwa-kit` entry to look like the entry below.
|
|
123
|
+
```json
|
|
124
|
+
{
|
|
125
|
+
"mcpServers": {
|
|
126
|
+
"pwa-kit": {
|
|
127
|
+
"command": "node",
|
|
128
|
+
"args": ["{{path-to-app-mono-repo}}/packages/pwa-kit-mcp/dist/server/server.js"],
|
|
129
|
+
"env": {
|
|
130
|
+
"PWA_STOREFRONT_APP_PATH": "{{path-to-app-directory}}"
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
2. Ensure that your server is built and will rebuild whenever changes are made you by running the following command in the `/pwa-kit-mcp` folder:
|
|
138
|
+
```bash
|
|
139
|
+
npm run build:watch
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
The server logs to `stderr` and communicates using MCP via `stdio`. You can view these logs in the `Output` section (shift + command + U) and filtering
|
|
143
|
+
the output on "MCP Logs".
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
### 🔹 File & Folder Overview
|
|
147
|
+
|
|
148
|
+
| Location | Purpose |
|
|
149
|
+
| -------------- | --------------------------------------------------------------------- |
|
|
150
|
+
| `package.json` | Node.js dependencies and project scripts |
|
|
151
|
+
| `mcp.json` | MCP client configuration (used by Cursor or other IDEs) |
|
|
152
|
+
| `src/server/` | Main server entry point (`server.js`) |
|
|
153
|
+
| `src/tools/` | Contains all MCP tools like `create-storefront-app`, `site-test`, etc. |
|
|
154
|
+
| `src/utils/` | Shared utility functions |
|
|
@@ -0,0 +1,239 @@
|
|
|
1
|
+
{
|
|
2
|
+
"description": "Document representing a category.",
|
|
3
|
+
"properties": {
|
|
4
|
+
"c_alternativeUrl": {
|
|
5
|
+
"$ref": "https://zzrf-001.dx.commercecloud.salesforce.com/s/-/dw/meta/rest/data/v23_1/documents/markup_text",
|
|
6
|
+
"description": "Renders an alternative URL in main navigation. Uses Commerce Cloud content url notation. For example: $url('Account-Show')$ or normal URL http://xchange.demandware.com",
|
|
7
|
+
"x-label": {
|
|
8
|
+
"default": "Alternative URL"
|
|
9
|
+
}
|
|
10
|
+
},
|
|
11
|
+
"c_catBannerID": {
|
|
12
|
+
"description": "Used to define the content asset used to populate a grid page banner for a category. This value is applied to all sub-category navigation (cascading) if no specific catBannerID has been defined for a sub-category.",
|
|
13
|
+
"x-label": {
|
|
14
|
+
"default": "Category Banner ID"
|
|
15
|
+
},
|
|
16
|
+
"type": "string"
|
|
17
|
+
},
|
|
18
|
+
"c_customCSSFile": {
|
|
19
|
+
"$ref": "https://zzrf-001.dx.commercecloud.salesforce.com/s/-/dw/meta/rest/data/v23_1/documents/media_file",
|
|
20
|
+
"description": "Use this attribute to apply custom styles for this category.",
|
|
21
|
+
"x-label": {
|
|
22
|
+
"default": "Custom CSS File"
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
"c_enableCompare": {
|
|
26
|
+
"description": "Used to define if/when the Compare feature is to be visualized in the storefront based on navigation. If enableCompare = FALSE, no Compare checkboxes will be displayed in the grid view. If enableCompare = TRUE, the category (and its children) will support the Compare feature.",
|
|
27
|
+
"x-label": {
|
|
28
|
+
"default": "Enable Compare"
|
|
29
|
+
},
|
|
30
|
+
"type": "boolean"
|
|
31
|
+
},
|
|
32
|
+
"c_headerMenuBanner": {
|
|
33
|
+
"$ref": "https://zzrf-001.dx.commercecloud.salesforce.com/s/-/dw/meta/rest/data/v23_1/documents/markup_text",
|
|
34
|
+
"x-label": {
|
|
35
|
+
"default": "Header Menu Banner"
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
"c_headerMenuOrientation": {
|
|
39
|
+
"description": "Which way to orient the menu and optional header menu HTML. Vertical will list all in one line. Horizontal will list in columns.",
|
|
40
|
+
"enum": [
|
|
41
|
+
"Horizontal",
|
|
42
|
+
"Vertical"
|
|
43
|
+
],
|
|
44
|
+
"x-enum-labels": [
|
|
45
|
+
{
|
|
46
|
+
"default": "Horizontal"
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"default": "Vertical"
|
|
50
|
+
}
|
|
51
|
+
],
|
|
52
|
+
"x-label": {
|
|
53
|
+
"default": "Header Menu Orientation"
|
|
54
|
+
},
|
|
55
|
+
"type": "string"
|
|
56
|
+
},
|
|
57
|
+
"c_showInMenu": {
|
|
58
|
+
"description": "Used to indicate that a category (such as Mens -> Footwear -> Boots) will display in the roll-over navigation. A sub-category only shows if also the parent category is marked as showInMenu. Up to three category levels are shown in roll-over navigation.",
|
|
59
|
+
"x-label": {
|
|
60
|
+
"default": "Show in Menu Navigation"
|
|
61
|
+
},
|
|
62
|
+
"type": "boolean"
|
|
63
|
+
},
|
|
64
|
+
"c_sizeChartID": {
|
|
65
|
+
"description": "Used to define the content asset ID of the Size Chart that is appropriate for products whose PRIMARY category is the associated category (and its children). Whenever a product detail page (or quick view) is rendered, the Size Chart link is populated based on the value of this attribute for the products primary categorization. If not defined, NO size chart link is displayed.",
|
|
66
|
+
"x-label": {
|
|
67
|
+
"default": "Size Chart"
|
|
68
|
+
},
|
|
69
|
+
"type": "string"
|
|
70
|
+
},
|
|
71
|
+
"c_slotBannerHtml": {
|
|
72
|
+
"additionalProperties": {
|
|
73
|
+
"$ref": "https://zzrf-001.dx.commercecloud.salesforce.com/s/-/dw/meta/rest/data/v23_1/documents/markup_text"
|
|
74
|
+
},
|
|
75
|
+
"format": "localized",
|
|
76
|
+
"x-label": {
|
|
77
|
+
"default": "Slot Banner HTML"
|
|
78
|
+
},
|
|
79
|
+
"type": "object"
|
|
80
|
+
},
|
|
81
|
+
"c_slotBannerImage": {
|
|
82
|
+
"$ref": "https://zzrf-001.dx.commercecloud.salesforce.com/s/-/dw/meta/rest/data/v23_1/documents/media_file",
|
|
83
|
+
"description": "Image used on either the top or bottom slot on the category landing pages.",
|
|
84
|
+
"x-label": {
|
|
85
|
+
"default": "Category Landing Slot Image"
|
|
86
|
+
}
|
|
87
|
+
},
|
|
88
|
+
"catalog_id": {
|
|
89
|
+
"description": "The id of the catalog that contains it.",
|
|
90
|
+
"x-label": {
|
|
91
|
+
"default": "ID"
|
|
92
|
+
},
|
|
93
|
+
"type": "string"
|
|
94
|
+
},
|
|
95
|
+
"categories": {
|
|
96
|
+
"description": "The array of sub categories for the category.",
|
|
97
|
+
"items": {
|
|
98
|
+
"$ref": "https://zzrf-001.dx.commercecloud.salesforce.com/s/-/dw/meta/rest/data/v23_1/documents/category"
|
|
99
|
+
},
|
|
100
|
+
"type": "array"
|
|
101
|
+
},
|
|
102
|
+
"creation_date": {
|
|
103
|
+
"description": "Returns the value of attribute 'creationDate'.",
|
|
104
|
+
"format": "date-time",
|
|
105
|
+
"x-label": {
|
|
106
|
+
"default": "Creation Date"
|
|
107
|
+
},
|
|
108
|
+
"readOnly": true,
|
|
109
|
+
"type": "string"
|
|
110
|
+
},
|
|
111
|
+
"description": {
|
|
112
|
+
"additionalProperties": {
|
|
113
|
+
"type": "string"
|
|
114
|
+
},
|
|
115
|
+
"description": "The localized description of the category.",
|
|
116
|
+
"format": "localized",
|
|
117
|
+
"x-label": {
|
|
118
|
+
"default": "Description"
|
|
119
|
+
},
|
|
120
|
+
"type": "object"
|
|
121
|
+
},
|
|
122
|
+
"id": {
|
|
123
|
+
"description": "The id of the category.",
|
|
124
|
+
"x-label": {
|
|
125
|
+
"default": "ID"
|
|
126
|
+
},
|
|
127
|
+
"maxLength": 256,
|
|
128
|
+
"minLength": 1,
|
|
129
|
+
"type": "string"
|
|
130
|
+
},
|
|
131
|
+
"image": {
|
|
132
|
+
"description": "The name of the category image. The URL to the image is computed.",
|
|
133
|
+
"x-label": {
|
|
134
|
+
"default": "Standard Image"
|
|
135
|
+
},
|
|
136
|
+
"maxLength": 256,
|
|
137
|
+
"minLength": 1,
|
|
138
|
+
"type": "string"
|
|
139
|
+
},
|
|
140
|
+
"last_modified": {
|
|
141
|
+
"description": "Returns the value of attribute 'lastModified'.",
|
|
142
|
+
"format": "date-time",
|
|
143
|
+
"x-label": {
|
|
144
|
+
"default": "Last Modified"
|
|
145
|
+
},
|
|
146
|
+
"readOnly": true,
|
|
147
|
+
"type": "string"
|
|
148
|
+
},
|
|
149
|
+
"link": {
|
|
150
|
+
"description": "The URL to get the category. This is a computed attribute and cannot be modified.",
|
|
151
|
+
"type": "string"
|
|
152
|
+
},
|
|
153
|
+
"name": {
|
|
154
|
+
"additionalProperties": {
|
|
155
|
+
"type": "string"
|
|
156
|
+
},
|
|
157
|
+
"description": "The localized name of the category.",
|
|
158
|
+
"format": "localized",
|
|
159
|
+
"x-label": {
|
|
160
|
+
"default": "Name"
|
|
161
|
+
},
|
|
162
|
+
"type": "object"
|
|
163
|
+
},
|
|
164
|
+
"online": {
|
|
165
|
+
"description": "The online status of the category determines if it is visible in the storefront. Defaults to false if not specified on create.",
|
|
166
|
+
"x-label": {
|
|
167
|
+
"default": "Online"
|
|
168
|
+
},
|
|
169
|
+
"type": "boolean"
|
|
170
|
+
},
|
|
171
|
+
"page_description": {
|
|
172
|
+
"additionalProperties": {
|
|
173
|
+
"type": "string"
|
|
174
|
+
},
|
|
175
|
+
"description": "The localized page description of the category.",
|
|
176
|
+
"format": "localized",
|
|
177
|
+
"x-label": {
|
|
178
|
+
"default": "Page Description"
|
|
179
|
+
},
|
|
180
|
+
"type": "object"
|
|
181
|
+
},
|
|
182
|
+
"page_keywords": {
|
|
183
|
+
"additionalProperties": {
|
|
184
|
+
"type": "string"
|
|
185
|
+
},
|
|
186
|
+
"description": "The localized page keywords for the category.",
|
|
187
|
+
"format": "localized",
|
|
188
|
+
"x-label": {
|
|
189
|
+
"default": "Page Keywords"
|
|
190
|
+
},
|
|
191
|
+
"type": "object"
|
|
192
|
+
},
|
|
193
|
+
"page_title": {
|
|
194
|
+
"additionalProperties": {
|
|
195
|
+
"type": "string"
|
|
196
|
+
},
|
|
197
|
+
"description": "The localized page title of the category.",
|
|
198
|
+
"format": "localized",
|
|
199
|
+
"x-label": {
|
|
200
|
+
"default": "Page Title"
|
|
201
|
+
},
|
|
202
|
+
"type": "object"
|
|
203
|
+
},
|
|
204
|
+
"parent_category_id": {
|
|
205
|
+
"description": "The id of the parent category. Defaults to root if not specified on create.",
|
|
206
|
+
"maxLength": 256,
|
|
207
|
+
"minLength": 1,
|
|
208
|
+
"type": "string"
|
|
209
|
+
},
|
|
210
|
+
"paths": {
|
|
211
|
+
"description": "The paths that contains catalog and category information requested by non-standard expand request",
|
|
212
|
+
"items": {
|
|
213
|
+
"$ref": "https://zzrf-001.dx.commercecloud.salesforce.com/s/-/dw/meta/rest/data/v23_1/documents/path_record"
|
|
214
|
+
},
|
|
215
|
+
"type": "array"
|
|
216
|
+
},
|
|
217
|
+
"position": {
|
|
218
|
+
"description": "The position of the category determines the display order in the storefront.",
|
|
219
|
+
"format": "double",
|
|
220
|
+
"type": "number"
|
|
221
|
+
},
|
|
222
|
+
"sorting_rules": {
|
|
223
|
+
"description": "The sorting rules that are attached to the category requested by non-standard expand request",
|
|
224
|
+
"items": {
|
|
225
|
+
"$ref": "https://zzrf-001.dx.commercecloud.salesforce.com/s/-/dw/meta/rest/data/v23_1/documents/sorting_rule"
|
|
226
|
+
},
|
|
227
|
+
"type": "array"
|
|
228
|
+
},
|
|
229
|
+
"thumbnail": {
|
|
230
|
+
"description": "The name of the category thumbnail. The URL to the thumbnail is computed.",
|
|
231
|
+
"x-label": {
|
|
232
|
+
"default": "Thumbnail Image"
|
|
233
|
+
},
|
|
234
|
+
"maxLength": 256,
|
|
235
|
+
"minLength": 1,
|
|
236
|
+
"type": "string"
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
}
|