@wix/ditto-codegen-public 1.0.144 → 1.0.161

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.
@@ -1,130 +1,1607 @@
1
- <stores_products_updateProduct>
2
- <purpose>Updates specified fields in a product. To update a single field across multiple products, use Bulk Update Product Property.</purpose>
3
- <use_cases>
4
- - Update product information such as name, description, or pricing
5
- - Modify product visibility settings
6
- - Update product inventory and stock tracking
7
- - Change product media and images
8
- - Update product SEO settings and metadata
9
- - Modify product options and variants
10
- - Update product collections and categories
11
- - Change product shipping and tax settings
12
- - Update product custom fields and properties
13
- - Modify product discount and pricing rules
14
- </use_cases>
15
- <method_declaration>
16
- products.updateProduct(_id, productUpdate)
17
- </method_declaration>
18
- <required_parameters>
19
- - _id: string - Product ID (generated automatically by the catalog)
20
- - product: UpdateProduct - Product info to update
21
- </required_parameters>
22
- <optional_parameters>
23
- None
24
- </optional_parameters>
25
- <import>import { products } from '@wix/stores'</import>
26
- <types>
1
+ <stores_productsV3_updateProduct>
2
+ <usage>
3
+ import { productsV3 } from '@wix/stores';
27
4
 
28
- **UpdateProduct**
29
- Properties:
30
- - additionalInfoSections: AdditionalInfoSections[] - Additional text that the store owner can assign to the product (e.g. shipping details, refund policy, etc.).
31
- - brand: string - product brand.
32
- - costAndProfitData: CostAndProfitData - Cost and profit data.
33
- - description: string - description.
34
- - manageVariants: boolean - Whether variants are being managed for this product - enables unique SKU, price and weight per variant. Also affects inventory data. Once set to true, can be reset to false only if no variants exist. You cannot set manageVariants to true if more than 300 variants are defined.
35
- - name: string - Product name. Min: 1 character Max: 80 characters
36
- - priceData: PriceData - Price data.
37
- - pricePerUnitData: PricePerUnitData - price per unit data
38
- - productOptions: ProductOption[] - Options for this product.
39
- - productType: ProductType - Currently, only creating physical products ( "productType": "physical" ) is supported via the API.
40
- - ribbon: string - Product ribbon. Used to highlight relevant information about a product. For example, "Sale", "New Arrival", "Sold Out".
41
- - seoData: SeoSchema - Custom SEO data for the product.
42
- - sku: string - Stock keeping unit. If variant management is enabled, SKUs will be set per variant, and this field will be empty.
43
- - slug: string - A friendly URL name (generated automatically by the catalog when a product is created), can be updated.
44
- - visible: boolean - Whether the product is visible to site visitors.
45
- - weight: number - Product weight. If variant management is enabled, weight will be set per variant, and this field will be empty.
46
-
47
- **AdditionalInfoSections**
48
- Properties:
49
- - description: string - Product info section description
50
- - title: string - Product info section title
51
-
52
- **PriceData**
53
- Properties:
54
- - price: number - Product price
55
-
56
- **PricePerUnitData**
57
- Properties:
58
- - baseMeasurementUnit: BaseMeasurementUnit - Base measurement unit
59
- - baseQuantity: number - Base quantity
60
- - totalMeasurementUnit: MeasurementUnit - Total measurement unit
61
- - totalQuantity: number - Total quantity
62
-
63
- **ProductOption**
64
- Properties:
65
- - choices: Choice[] - Choices available for this option.
66
- - name: string - Option name
67
-
68
- **Choice**
69
- - description: string - Choice description.
70
- - value: string - Choice value
71
-
72
- **UpdateProductResponse**
73
- Properties:
74
- - product: Product - The updated product object.
75
- </types>
76
- <important_notes>
77
- - This method updates specified fields in a product
78
- - To update a single field across multiple products, use Bulk Update Product Property
79
- - Only the fields you specify in the productUpdate parameter will be updated
80
- - All other fields will remain unchanged
81
- - The method returns the updated product object
82
- - Product ID is required and cannot be updated
83
- - This method doesn't return any custom errors, but may return standard errors
84
- - **Required Permission**: In order to use this method, the app must have the permission scope named "SCOPE.STORES.PRODUCT_WRITE"
85
- </important_notes>
86
-
87
- <return_type>
88
- Promise<UpdateProductResponse>
89
- </return_type>
90
-
91
- <example_usage>
92
- ```typescript
93
- import { products } from '@wix/stores';
94
-
95
- // Update a product
96
- const updatedProduct = await products.updateProduct('product-id', {
97
- name: 'Updated Product Name',
98
- description: 'Updated product description',
99
- price: {
100
- price: 29.99,
101
- currency: 'USD'
102
- },
103
- // Add a promotional ribbon
104
- ribbon: 'New Arrival'
105
- });
106
-
107
- // Update product with different ribbon
108
- const saleProduct = await products.updateProduct('product-id', {
109
- ribbon: 'Sale'
110
- });
111
-
112
- // Remove ribbon from product
113
- const noRibbonProduct = await products.updateProduct('product-id', {
114
- ribbon: '' // or null to remove ribbon
115
- });
116
- ```
117
- </example_usage>
118
-
119
- <related_methods>
120
- - products.createProduct() - Method to create new products
121
- - products.getProduct() - Method to retrieve product details
122
- - products.deleteProduct() - Method to delete products
123
- - products.queryProducts() - Method to query products with filters
124
- - products.bulkUpdateProductsProperty() - Method to update single field across multiple products
125
- - products.addProductMedia() - Method to add media to products
126
- - products.removeProductMedia() - Method to remove media from products
127
- - products.addProductsToCollection() - Method to add products to collections
128
- - products.removeProductsFromCollection() - Method to remove products from collections
129
- </related_methods>
130
- </stores_products_updateProduct>
5
+ async function updateProduct(id, product, options) {
6
+ const response = await productsV3.updateProduct(id, product, options);
7
+ };
8
+ </usage>
9
+ <type_definition>
10
+ Method: stores.productsV3.updateProduct(_id, product, options)
11
+ Description: Updates a product. Each time the product is updated, `revision` increments by 1. The current `revision` must be passed when updating the product. This ensures you're working with the latest product and prevents unintended overwrites. >**Notes:** > + To update array fields like `options`, `modifiers`, `variantsInfo.variants`, and any others, you must pass the entire existing array. Passing only the changed item will overwrite the entire array, not just merge the single change. > + To update `variantsInfo.variants` you must also pass `options` and vise versa. This is because variants and options are mutually dependant and must be aligned. > + To update existing `variantsInfo.variants`, make sure to provide `variantsInfo.variants.id`. If no GUID is passed, the variant will be created with a new GUID. > + Updating media per variant is not supported. Instead, assign media items to product option choices using the `linkedMedia` field. You must use preexisting product media.
12
+ Method parameters:
13
+ param name: _id | type: string | description: Product GUID. | required: true
14
+ param name: product | type: UpdateProduct | description: none | required: true
15
+ - name: brand | type: Brand | description: Product brand. + Pass `brand.name` to add a new brand while creating a product. + Pass an existing brand's `id` to assign that brand to the product.
16
+ - name: _id | type: string | description: Brand GUID.
17
+ - name: name | type: string | description: Brand name.
18
+ - name: description | type: RichContent | description: Product description using rich content. > **Note:** Returned only when you pass `"DESCRIPTION"` to the `fields` array in Products API requests. <widget src="https://apps.wix.com/_serverless/ricos-playground-services/goto/api-component" plugins="indent.emoji.divider.codeBlock.file.gallery.giphy.image.table.link.textHighlight.textColor" exampleid="7dc9240e-d548-417a-abcf-0291b68b4303"> <a href="https://dev.wix.com/docs/ricos/api-reference/ricos-document">See Ricos document reference</a> </widget>
19
+ - name: documentStyle | type: DocumentStyle | description: Global styling for header, paragraph, block quote, and code block nodes in the object.
20
+ - name: blockquote | type: TextNodeStyle | description: Styling for block quote nodes.
21
+ - name: decorations | type: Array<Decoration> | description: The decorations to apply to the node.
22
+ - name: type | type: DecorationType | description: The type of decoration to apply.
23
+ enum: ANCHOR, BOLD, COLOR, EXTERNAL, FONT_FAMILY, FONT_SIZE, ITALIC, LINK, MENTION, SPOILER, STRIKETHROUGH, SUBSCRIPT, SUPERSCRIPT, UNDERLINE
24
+ - ONE-OF:
25
+ - name: anchorData | type: AnchorData | description: Data for an anchor link decoration.
26
+ - name: anchor | type: string | description: The target node's GUID.
27
+ - name: colorData | type: ColorData | description: Data for a color decoration.
28
+ - name: background | type: string | description: The text's background color as a hexadecimal value.
29
+ - name: foreground | type: string | description: The text's foreground color as a hexadecimal value.
30
+ - name: fontFamilyData | type: FontFamilyData | description: Data for a font family decoration.
31
+ - name: value | type: string | description: none
32
+ - name: fontSizeData | type: FontSizeData | description: Data for a font size decoration.
33
+ - name: unit | type: FontType | description: The units used for the font size.
34
+ enum: EM, PX
35
+ - name: value | type: number | description: Font size value.
36
+ - name: fontWeightValue | type: number | description: Font weight for a bold decoration.
37
+ - name: italicData | type: boolean | description: Data for an italic decoration. Defaults to `true`.
38
+ - name: linkData | type: LinkData | description: Data for an external link decoration.
39
+ - name: link | type: Link | description: Link details.
40
+ - name: customData | type: string | description: A serialized object used for a custom or external link panel.
41
+ - name: rel | type: Rel | description: The HTML `rel` attribute value for the link. This object specifies the relationship between the current document and the linked document.
42
+ - name: nofollow | type: boolean | description: Indicates to search engine crawlers not to follow the link. Defaults to `false`.
43
+ - name: noreferrer | type: boolean | description: Indicates that this link protect referral information from being passed to the target website.
44
+ - name: sponsored | type: boolean | description: Indicates to search engine crawlers that the link is a paid placement such as sponsored content or an advertisement. Defaults to `false`.
45
+ - name: ugc | type: boolean | description: Indicates that this link is user-generated content and isn't necessarily trusted or endorsed by the page’s author. For example, a link in a fourm post. Defaults to `false`.
46
+ - name: target | type: Target | description: he HTML `target` attribute value for the link. This property defines where the linked document opens as follows: `SELF` - Default. Opens the linked document in the same frame as the link. `BLANK` - Opens the linked document in a new browser tab or window. `PARENT` - Opens the linked document in the link's parent frame. `TOP` - Opens the linked document in the full body of the link's browser tab or window.
47
+ enum:
48
+ BLANK: Opens the linked document in a new window or tab
49
+ PARENT: Opens the linked document in the parent frame
50
+ SELF: Opens the linked document in the same frame as it was clicked (this is default)
51
+ TOP: Opens the linked document in the full body of the window
52
+ - ONE-OF:
53
+ - name: anchor | type: string | description: The target node's GUID. Used for linking to another node in this object.
54
+ - name: url | type: string | description: The absolute URL for the linked document.
55
+ - name: mentionData | type: MentionData | description: Data for a mention decoration.
56
+ - name: id | type: string | description: Mentioned user's GUID.
57
+ - name: name | type: string | description: The mentioned user's name.
58
+ - name: slug | type: string | description: The version of the user's name that appears after the `@` character in the mention.
59
+ - name: spoilerData | type: SpoilerData | description: Data for a spoiler decoration.
60
+ - name: id | type: string | description: Spoiler GUID.
61
+ - name: strikethroughData | type: boolean | description: Data for a strikethrough decoration. Defaults to `true`.
62
+ - name: subscriptData | type: boolean | description: Data for a subscript decoration. Defaults to `true`.
63
+ - name: superscriptData | type: boolean | description: Data for a superscript decoration. Defaults to `true`.
64
+ - name: underlineData | type: boolean | description: Data for an underline decoration. Defaults to `true`.
65
+ - name: lineHeight | type: string | description: Line height for text in the node.
66
+ - name: nodeStyle | type: NodeStyle | description: Padding and background color for the node.
67
+ - name: backgroundColor | type: string | description: The background color as a hexadecimal value.
68
+ - name: paddingBottom | type: string | description: The bottom padding value in pixels.
69
+ - name: paddingTop | type: string | description: The top padding value in pixels.
70
+ - name: codeBlock | type: TextNodeStyle | description: Styling for code block nodes.
71
+ - name: headerFive | type: TextNodeStyle | description: Styling for H5 nodes.
72
+ - name: headerFour | type: TextNodeStyle | description: Styling for H4 nodes.
73
+ - name: headerOne | type: TextNodeStyle | description: Styling for H1 nodes.
74
+ - name: headerSix | type: TextNodeStyle | description: Styling for H6 nodes.
75
+ - name: headerThree | type: TextNodeStyle | description: Styling for H3 nodes.
76
+ - name: headerTwo | type: TextNodeStyle | description: Styling for H2 nodes.
77
+ - name: paragraph | type: TextNodeStyle | description: Styling for paragraph nodes.
78
+ - name: metadata | type: Metadata | description: Object metadata.
79
+ - name: _id | type: string | description: Object GUID.
80
+ - name: version | type: number | description: Schema version.
81
+ - name: nodes | type: Array<Node> | description: Node objects representing a rich content document.
82
+ - name: id | type: string | description: Node GUID.
83
+ - name: nodes | type: Array<Node> | description: A list of child nodes.
84
+ - name: style | type: NodeStyle | description: Padding and background color styling for the node.
85
+ - name: type | type: NodeType | description: Node type. Use `APP_EMBED` for nodes that embed content from other Wix apps. Use `EMBED` to embed content in [oEmbed](https://oembed.com/) format.
86
+ enum: APP_EMBED, AUDIO, BLOCKQUOTE, BULLETED_LIST, BUTTON, CAPTION, CODE_BLOCK, COLLAPSIBLE_ITEM, COLLAPSIBLE_ITEM_BODY, COLLAPSIBLE_ITEM_TITLE, COLLAPSIBLE_LIST, DIVIDER, EMBED, EXTERNAL, FILE, GALLERY, GIF, HEADING, HTML, IMAGE, LAYOUT, LAYOUT_CELL, LINK_PREVIEW, LIST_ITEM, MAP, ORDERED_LIST, PARAGRAPH, POLL, TABLE, TABLE_CELL, TABLE_ROW, TEXT, VIDEO
87
+ - ONE-OF:
88
+ - name: appEmbedData | type: AppEmbedData | description: Data for an app embed node.
89
+ - name: buttonStyles | type: ButtonStyles | description: Button styling options.
90
+ - name: backgroundColor | type: string | description: Background color as a hexadecimal value.
91
+ - name: backgroundColorHover | type: string | description: Background color as a hexadecimal value (hover state).
92
+ - name: borderColor | type: string | description: Border color as a hexadecimal value.
93
+ - name: borderColorHover | type: string | description: Border color as a hexadecimal value (hover state).
94
+ - name: borderRadius | type: number | description: Border radius in pixels.
95
+ - name: borderWidth | type: number | description: Border width in pixels.
96
+ - name: buttonSize | type: string | description: Button size option, one of `SMALL`, `MEDIUM` or `LARGE`. Defaults to `MEDIUM`.
97
+ - name: buttonText | type: string | description: Text to display on the button.
98
+ - name: textColor | type: string | description: Text color as a hexadecimal value.
99
+ - name: textColorHover | type: string | description: Text color as a hexadecimal value (hover state).
100
+ - name: cardStyles | type: CardStyles | description: Card styling options.
101
+ - name: alignment | type: Alignment | description: Content alignment. Defaults to `START`.
102
+ enum:
103
+ CENTER: Content centered
104
+ END: Content aligned to end (right in LTR layouts, left in RTL layouts)
105
+ START: Content aligned to start (left in LTR layouts, right in RTL layouts)
106
+ - name: backgroundColor | type: string | description: Card background color as a hexadecimal value.
107
+ - name: borderColor | type: string | description: Card border color as a hexadecimal value.
108
+ - name: borderRadius | type: number | description: Card border radius in pixels.
109
+ - name: borderWidth | type: number | description: Card border width in pixels.
110
+ - name: textColor | type: string | description: Text color as a hexadecimal value.
111
+ - name: titleColor | type: string | description: Title text color as a hexadecimal value.
112
+ - name: titlePriceLayout | type: Layout | description: Layout for title and price. Defaults to `STACKED`.
113
+ enum:
114
+ SIDE_BY_SIDE: Elements arranged horizontally
115
+ STACKED: Elements stacked vertically
116
+ - name: type | type: Type | description: Card type. Defaults to `CONTAINED`.
117
+ enum:
118
+ CONTAINED: Card with visible border and background
119
+ FRAMELESS: Card without visible border
120
+ - name: containerData | type: PluginContainerData | description: Styling for the app embed's container.
121
+ - name: alignment | type: PluginContainerDataAlignment | description: The node's alignment within its container.
122
+ enum:
123
+ CENTER: Center Alignment
124
+ LEFT: Left Alignment
125
+ RIGHT: Right Alignment
126
+ - name: height | type: Height | description: The height of the node when it's displayed.
127
+ - name: custom | type: string | description: A custom height value in pixels.
128
+ - name: spoiler | type: Spoiler | description: Spoiler cover settings for the node.
129
+ - name: buttonText | type: string | description: The text for the button used to remove the spoiler cover.
130
+ - name: description | type: string | description: The description displayed on top of the spoiler cover.
131
+ - name: enabled | type: boolean | description: Sets whether the spoiler cover is enabled for this node. Defaults to `false`.
132
+ - name: textWrap | type: boolean | description: Sets whether text should wrap around this node when it's displayed. If `textWrap` is `false`, the node takes up the width of its container. Defaults to `true` for all node types except 'DIVIVDER' where it defaults to `false`.
133
+ - name: width | type: PluginContainerDataWidth | description: The width of the node when it's displayed.
134
+ - ONE-OF:
135
+ - name: custom | type: string | description: A custom width value in pixels.
136
+ - name: size | type: WidthType | description: One of the following predefined width options: `CONTENT`: The width of the container matches the content width. `SMALL`: A small width. `ORIGINAL`: For `imageData` containers only. The width of the container matches the original image width. `FULL_WIDTH`: For `imageData` containers only. The image container takes up the full width of the screen.
137
+ enum:
138
+ CONTENT: Width matches the content width
139
+ FULL_WIDTH: coast-to-coast display
140
+ ORIGINAL: Width will match the original asset width
141
+ SMALL: Small Width
142
+ - name: hideButton | type: boolean | description: Whether to hide the button.
143
+ - name: hideDateTime | type: boolean | description: Whether to hide the date and time (Event).
144
+ - name: hideDescription | type: boolean | description: Whether to hide the description (Event and Booking).
145
+ - name: hideDuration | type: boolean | description: Whether to hide the duration (Booking).
146
+ - name: hideImage | type: boolean | description: Whether to hide the image.
147
+ - name: hideLocation | type: boolean | description: Whether to hide the location (Event).
148
+ - name: hidePrice | type: boolean | description: Whether to hide the price.
149
+ - name: hideRibbon | type: boolean | description: Whether to hide the ribbon.
150
+ - name: hideTitle | type: boolean | description: Whether to hide the title.
151
+ - name: image | type: V1Media | description: An image for the embedded content.
152
+ - name: duration | type: number | description: Media duration in seconds. Only relevant for audio and video files.
153
+ - name: height | type: number | description: Media height in pixels.
154
+ - name: src | type: FileSource | description: The source for the media's data.
155
+ - name: private | type: boolean | description: Indicates whether the file's source is private. Defaults to `false`.
156
+ - ONE-OF:
157
+ - name: custom | type: string | description: Custom GUID. Use `id` instead.
158
+ - name: id | type: string | description: An GUID that's resolved to a URL by a resolver function.
159
+ - name: url | type: string | description: The absolute URL for the file's source.
160
+ - name: width | type: number | description: Media width in pixels.
161
+ - name: imageStyles | type: ImageStyles | description: Image styling options.
162
+ - name: aspectRatio | type: AspectRatio | description: Aspect ratio for the image. Defaults to `SQUARE`.
163
+ enum:
164
+ RECTANGLE: 16:9 aspect ratio
165
+ SQUARE: 1:1 aspect ratio
166
+ - name: borderColor | type: string | description: Image border color as a hexadecimal value.
167
+ - name: borderRadius | type: number | description: Image border radius in pixels.
168
+ - name: borderWidth | type: number | description: Image border width in pixels.
169
+ - name: hideImage | type: boolean | description: Whether to hide the image.
170
+ - name: imagePosition | type: Position | description: Position of image. Defaults to `START`.
171
+ enum:
172
+ END: Image positioned at the end (right in LTR layouts, left in RTL layouts)
173
+ START: Image positioned at the start (left in LTR layouts, right in RTL layouts)
174
+ TOP: Image positioned at the top
175
+ - name: resizing | type: Resizing | description: How the image should be resized. Defaults to `FILL`.
176
+ enum:
177
+ FILL: Fill the container, may crop the image
178
+ FIT: Fit the image within the container
179
+ - name: itemId | type: string | description: The GUID of the embedded content.
180
+ - name: name | type: string | description: The name of the embedded content.
181
+ - name: pricingData | type: PricingData | description: Pricing data for embedded Wix App content.
182
+ - name: currency | type: string | description: Currency of the value in ISO 4217 format (e.g., "USD", "EUR").
183
+ - name: discountedValue | type: string | description: Numeric price value as string after discount application (e.g., "15.99").
184
+ - name: pricingPlanId | type: string | description: Pricing plan GUID.
185
+ - name: valueFrom | type: string | description: Minimum numeric price value as string (e.g., "10.99").
186
+ - name: valueTo | type: string | description: Maximum numeric price value as string (e.g., "19.99").
187
+ - name: ribbonStyles | type: RibbonStyles | description: Ribbon styling options.
188
+ - name: backgroundColor | type: string | description: Ribbon background color as a hexadecimal value.
189
+ - name: borderColor | type: string | description: Ribbon border color as a hexadecimal value.
190
+ - name: borderRadius | type: number | description: Ribbon border radius in pixels.
191
+ - name: borderWidth | type: number | description: Ribbon border width in pixels.
192
+ - name: ribbonPlacement | type: Placement | description: Placement of the ribbon. Defaults to `IMAGE`.
193
+ enum:
194
+ IMAGE: Ribbon placed on the image
195
+ PRODUCT_INFO: Ribbon placed on the product information
196
+ - name: ribbonText | type: string | description: Text to display on the ribbon.
197
+ - name: textColor | type: string | description: Ribbon text color as a hexadecimal value.
198
+ - name: type | type: AppType | description: The type of Wix App content being embedded.
199
+ enum: BOOKING, EVENT, PRODUCT
200
+ - name: url | type: string | description: The URL for the embedded content.
201
+ - ONE-OF:
202
+ - name: bookingData | type: BookingData | description: Data for embedded Wix Bookings content.
203
+ - name: durations | type: string | description: Booking duration in minutes.
204
+ - name: eventData | type: EventData | description: Data for embedded Wix Events content.
205
+ - name: location | type: string | description: Event location.
206
+ - name: scheduling | type: string | description: Event schedule.
207
+ - name: audioData | type: AudioData | description: Data for an audio node.
208
+ - name: audio | type: V1Media | description: Audio file details.
209
+ - name: authorName | type: string | description: Author name.
210
+ - name: containerData | type: PluginContainerData | description: Styling for the audio node's container.
211
+ - name: coverImage | type: V1Media | description: Cover image.
212
+ - name: disableDownload | type: boolean | description: Sets whether the audio node's download button is disabled. Defaults to `false`.
213
+ - name: html | type: string | description: An HTML version of the audio node.
214
+ - name: name | type: string | description: Track name.
215
+ - name: blockquoteData | type: BlockquoteData | description: Data for a block quote node.
216
+ - name: indentation | type: number | description: Indentation level from 1-4.
217
+ - name: bulletedListData | type: BulletedListData | description: Data for a bulleted list node.
218
+ - name: indentation | type: number | description: Indentation level from 0-4.
219
+ - name: offset | type: number | description: Offset level from 0-4.
220
+ - name: buttonData | type: ButtonData | description: Data for a button node.
221
+ - name: containerData | type: PluginContainerData | description: Styling for the button's container.
222
+ - name: link | type: Link | description: Button link details.
223
+ - name: styles | type: Styles | description: Styling for the button.
224
+ - name: backgroundColor | type: string | description: Background color as a hexadecimal value.
225
+ - name: backgroundColorHover | type: string | description: Background color as a hexadecimal value (hover state).
226
+ - name: borderColor | type: string | description: Border color as a hexadecimal value.
227
+ - name: borderColorHover | type: string | description: Border color as a hexadecimal value (hover state).
228
+ - name: borderRadius | type: number | description: Border radius in pixels.
229
+ - name: borderWidth | type: number | description: Border width in pixels.
230
+ - name: buttonSize | type: string | description: Button size option, one of `SMALL`, `MEDIUM` or `LARGE`. Defaults to `MEDIUM`.
231
+ - name: textColor | type: string | description: Text color as a hexadecimal value.
232
+ - name: textColorHover | type: string | description: Text color as a hexadecimal value (hover state).
233
+ - name: text | type: string | description: The text to display on the button.
234
+ - name: type | type: ButtonDataType | description: The button type.
235
+ enum:
236
+ ACTION: Triggers custom action that is defined in plugin configuration by the consumer
237
+ LINK: Regular link button
238
+ - name: captionData | type: CaptionData | description: Data for a caption node.
239
+ - name: textStyle | type: TextStyle | description: none
240
+ - name: lineHeight | type: string | description: A CSS `line-height` value for the text expressed as a ratio relative to the font size. For example, if the font size is 20px, a `lineHeight` value of `'1.5'`` results in a line height of 30px.
241
+ - name: textAlignment | type: TextAlignment | description: Text alignment. Defaults to `AUTO`.
242
+ enum:
243
+ AUTO: browser default, eqivalent to `initial`
244
+ CENTER: Center align
245
+ JUSTIFY: Text is spaced to line up its left and right edges to the left and right edges of the line box, except for the last line
246
+ LEFT: Left align
247
+ RIGHT: Right align
248
+ - name: codeBlockData | type: CodeBlockData | description: Data for a code block node.
249
+ - name: textStyle | type: TextStyle | description: Styling for the code block's text.
250
+ - name: collapsibleListData | type: CollapsibleListData | description: Data for a collapsible list node.
251
+ - name: containerData | type: PluginContainerData | description: Styling for the collapsible list's container.
252
+ - name: direction | type: Direction | description: The direction of the text in the list. Either left-to-right or right-to-left.
253
+ enum:
254
+ LTR: Left-to-right
255
+ RTL: Right-to-left
256
+ - name: expandOnlyOne | type: boolean | description: If `true`, only one item can be expanded at a time. Defaults to `false`.
257
+ - name: initialExpandedItems | type: InitialExpandedItems | description: Sets which items are expanded when the page loads.
258
+ enum:
259
+ ALL: All items will expended initally
260
+ FIRST: First item will be expended initally
261
+ NONE: All items collapsed initally
262
+ - name: isQapageData | type: boolean | description: If `true`, The collapsible item will appear in search results as an FAQ.
263
+ - name: dividerData | type: DividerData | description: Data for a divider node.
264
+ - name: alignment | type: DividerDataAlignment | description: Divider alignment.
265
+ enum:
266
+ CENTER: Center alignment
267
+ LEFT: Left alignment
268
+ RIGHT: Right alignment
269
+ - name: containerData | type: PluginContainerData | description: Styling for the divider's container.
270
+ - name: lineStyle | type: LineStyle | description: Divider line style.
271
+ enum:
272
+ DASHED: Dashed Line
273
+ DOTTED: Dotted Line
274
+ DOUBLE: Double Line
275
+ SINGLE: Single Line
276
+ - name: width | type: Width | description: Divider width.
277
+ enum:
278
+ LARGE: Large line
279
+ MEDIUM: Medium line
280
+ SMALL: Small line
281
+ - name: embedData | type: EmbedData | description: Data for an oEmbed node.
282
+ - name: containerData | type: PluginContainerData | description: Styling for the oEmbed node's container.
283
+ - name: oembed | type: Oembed | description: An [oEmbed](https://www.oembed.com) object.
284
+ - name: authorName | type: string | description: The name of the author or owner of the resource.
285
+ - name: authorUrl | type: string | description: The URL for the author or owner of the resource.
286
+ - name: height | type: number | description: The height of the resource specified in the `url` property in pixels.
287
+ - name: html | type: string | description: HTML for embedding a video player. The HTML should have no padding or margins.
288
+ - name: providerName | type: string | description: The name of the resource provider.
289
+ - name: providerUrl | type: string | description: The URL for the resource provider.
290
+ - name: thumbnailHeight | type: string | description: The height of the resource's thumbnail image. If this property is defined, `thumbnailUrl` and `thumbnailWidth`must also be defined.
291
+ - name: thumbnailUrl | type: string | description: The URL for a thumbnail image for the resource. If this property is defined, `thumbnailWidth` and `thumbnailHeight` must also be defined.
292
+ - name: thumbnailWidth | type: string | description: The width of the resource's thumbnail image. If this property is defined, `thumbnailUrl` and `thumbnailHeight` must also be defined.
293
+ - name: title | type: string | description: Resource title.
294
+ - name: type | type: string | description: The resource type.
295
+ - name: url | type: string | description: The source URL for the resource.
296
+ - name: version | type: string | description: The oEmbed version number. This value must be `1.0`.
297
+ - name: videoUrl | type: string | description: The URL for an embedded viedo.
298
+ - name: width | type: number | description: The width of the resource specified in the `url` property in pixels.
299
+ - name: src | type: string | description: Origin asset source.
300
+ - name: externalData | type: Record<string, any> | description: Data for a custom external node.
301
+ - name: fileData | type: FileData | description: Data for a file node.
302
+ - name: containerData | type: PluginContainerData | description: Styling for the file's container.
303
+ - name: mimeType | type: string | description: File MIME type.
304
+ - name: name | type: string | description: File name.
305
+ - name: path | type: string | description: File path.
306
+ - name: pdfSettings | type: PDFSettings | description: Settings for PDF files.
307
+ - name: disableDownload | type: boolean | description: Sets whether the PDF download button is disabled. Defaults to `false`.
308
+ - name: disablePrint | type: boolean | description: Sets whether the PDF print button is disabled. Defaults to `false`.
309
+ - name: viewMode | type: ViewMode | description: PDF view mode. One of the following: `NONE` : The PDF isn't displayed. `FULL` : A full page view of the PDF is displayed. `MINI` : A mini view of the PDF is displayed.
310
+ enum:
311
+ FULL: Full PDF view
312
+ MINI: Mini PDF view
313
+ NONE: No PDF view
314
+ - name: sizeInKb | type: string | description: File size in KB.
315
+ - name: src | type: FileSource | description: The source for the file's data.
316
+ - name: type | type: string | description: File type.
317
+ - name: galleryData | type: GalleryData | description: Data for a gallery node.
318
+ - name: containerData | type: PluginContainerData | description: Styling for the gallery's container.
319
+ - name: disableDownload | type: boolean | description: Sets whether the gallery's download button is disabled. Defaults to `false`.
320
+ - name: disableExpand | type: boolean | description: Sets whether the gallery's expand button is disabled. Defaults to `false`.
321
+ - name: items | type: Array<Item> | description: The items in the gallery.
322
+ - name: altText | type: string | description: Item's alternative text.
323
+ - name: title | type: string | description: Item title.
324
+ - ONE-OF:
325
+ - name: image | type: Image | description: An image item.
326
+ - name: link | type: Link | description: Link details for images that are links.
327
+ - name: media | type: V1Media | description: Image file details.
328
+ - name: video | type: Video | description: A video item.
329
+ - name: media | type: V1Media | description: Video file details.
330
+ - name: thumbnail | type: V1Media | description: Video thumbnail file details.
331
+ - name: options | type: GalleryOptions | description: Options for defining the gallery's appearance.
332
+ - name: item | type: ItemStyle | description: Styling for gallery items.
333
+ - name: crop | type: Crop | description: Sets how item images are cropped.
334
+ enum:
335
+ FILL: Crop to fill
336
+ FIT: Crop to fit
337
+ - name: ratio | type: number | description: Item ratio
338
+ - name: spacing | type: number | description: The spacing between items in pixels.
339
+ - name: targetSize | type: number | description: Desirable dimension for each item in pixels (behvaior changes according to gallery type)
340
+ - name: layout | type: GalleryOptionsLayout | description: Gallery layout.
341
+ - name: horizontalScroll | type: boolean | description: Sets whether horizontal scroll is enabled. Defaults to `true` unless the layout `type` is set to `GRID` or `COLLAGE`.
342
+ - name: mobileNumberOfColumns | type: number | description: The number of columns to display on mobile screens.
343
+ - name: numberOfColumns | type: number | description: The number of columns to display on full size screens.
344
+ - name: orientation | type: Orientation | description: Gallery orientation.
345
+ enum:
346
+ COLUMNS: Columns Orientation
347
+ ROWS: Rows Orientation
348
+ - name: type | type: LayoutType | description: Gallery layout type.
349
+ enum:
350
+ COLLAGE: Collage type
351
+ COLUMN: Column type
352
+ FULLSIZE: Fullsize images type
353
+ GRID: Grid type
354
+ MAGIC: Magic type
355
+ MASONRY: Masonry type
356
+ PANORAMA: Panorama type
357
+ SLIDER: Slider type
358
+ SLIDESHOW: Slideshow type
359
+ THUMBNAIL: Thumbnail type
360
+ - name: thumbnails | type: Thumbnails | description: Styling for gallery thumbnail images.
361
+ - name: placement | type: ThumbnailsAlignment | description: Thumbnail alignment.
362
+ enum:
363
+ BOTTOM: Bottom alignment
364
+ LEFT: Left alignment
365
+ NONE: No thumbnail
366
+ RIGHT: Right alignment
367
+ TOP: Top alignment
368
+ - name: spacing | type: number | description: Spacing between thumbnails in pixels.
369
+ - name: gifData | type: GIFData | description: Data for a GIF node.
370
+ - name: containerData | type: PluginContainerData | description: Styling for the GIF's container.
371
+ - name: downsized | type: GIF | description: The source of the downsized GIF.
372
+ - name: gif | type: string | description: GIF format URL.
373
+ - name: mp4 | type: string | description: MP4 format URL.
374
+ - name: still | type: string | description: Thumbnail URL.
375
+ - name: gifType | type: GIFType | description: Type of GIF (Sticker or NORMAL). Defaults to `NORMAL`.
376
+ enum: NORMAL, STICKER
377
+ - name: height | type: number | description: Height in pixels.
378
+ - name: original | type: GIF | description: The source of the full size GIF.
379
+ - name: width | type: number | description: Width in pixels.
380
+ - name: headingData | type: HeadingData | description: Data for a heading node.
381
+ - name: indentation | type: number | description: Indentation level from 1-4.
382
+ - name: level | type: number | description: Heading level from 1-6.
383
+ - name: textStyle | type: TextStyle | description: Styling for the heading text.
384
+ - name: htmlData | type: HTMLData | description: Data for an embedded HTML node.
385
+ - name: autoHeight | type: boolean | description: If container height is aligned with its content height. Defaults to `true`.
386
+ - name: containerData | type: PluginContainerData | description: Styling for the HTML node's container. Height property is irrelevant for HTML embeds when autoHeight is set to `true`.
387
+ - name: source | type: Source | description: The type of HTML code.
388
+ enum: ADSENSE, AI, HTML
389
+ - ONE-OF:
390
+ - name: html | type: string | description: The HTML code for the node.
391
+ - name: isAdsense | type: boolean | description: Whether this is an AdSense element. Use `source` instead.
392
+ - name: url | type: string | description: The URL for the HTML code for the node.
393
+ - name: imageData | type: ImageData | description: Data for an image node.
394
+ - name: altText | type: string | description: Image's alternative text.
395
+ - name: containerData | type: PluginContainerData | description: Styling for the image's container.
396
+ - name: decorative | type: boolean | description: Sets whether the image is decorative and does not need an explanation. Defaults to `false`.
397
+ - name: disableDownload | type: boolean | description: Sets whether the image's download button is disabled. Defaults to `false`.
398
+ - name: disableExpand | type: boolean | description: Sets whether the image expands to full screen when clicked. Defaults to `false`.
399
+ - name: image | type: V1Media | description: Image file details.
400
+ - name: link | type: Link | description: Link details for images that are links.
401
+ - name: styles | type: ImageDataStyles | description: Styling for the image.
402
+ - name: border | type: StylesBorder | description: Border attributes.
403
+ - name: color | type: string | description: Border color as a hexadecimal value.
404
+ - name: radius | type: number | description: Border radius in pixels.
405
+ - name: width | type: number | description: Border width in pixels.
406
+ - name: layoutCellData | type: LayoutCellData | description: Data for a cell node.
407
+ - name: colSpan | type: number | description: Size of the cell in 12 columns grid.
408
+ - name: layoutData | type: LayoutData | description: Data for a layout node. Reserved for future use.
409
+ - name: backdropColor | type: string | description: Backdrop color as a hexadecimal value.
410
+ - name: backdropImage | type: BackgroundImage | description: Backdrop image.radius in pixels.
411
+ - name: media | type: V1Media | description: Background image.
412
+ - name: opacity | type: number | description: Background image opacity.
413
+ - name: position | type: ImagePosition | description: Position of background. Defaults to `CENTER`.
414
+ enum:
415
+ BOTTOM: Image positioned at the center bottom
416
+ BOTTOM_LEFT: Image positioned at the bottom left
417
+ BOTTOM_RIGHT: Image positioned at the bottom right
418
+ CENTER: Image positioned at the center
419
+ CENTER_LEFT: Image positioned on the left
420
+ CENTER_RIGHT: Image positioned on the right
421
+ TOP: Image positioned at the center top
422
+ TOP_LEFT: Image positioned at the top left
423
+ TOP_RIGHT: Image positioned at the top right
424
+ - name: scaling | type: Scaling | description: Background image scaling.
425
+ enum:
426
+ AUTO: Auto image scaling
427
+ CONTAIN: Contain image scaling
428
+ COVER: Cover image scaling
429
+ - name: backdropPaddingBottom | type: number | description: Backdrop bottom padding
430
+ - name: backdropPaddingTop | type: number | description: Backdrop top padding.
431
+ - name: backgroundColor | type: string | description: Background color as a hexadecimal value.
432
+ - name: backgroundImage | type: BackgroundImage | description: Background image.
433
+ - name: borderColor | type: string | description: Border color as a hexadecimal value.
434
+ - name: borderRadius | type: number | description: Border
435
+ - name: borderWidth | type: number | description: Border width in pixels.
436
+ - name: cellPadding | type: Array<number> | description: Padding in pixels for cells. Follows CSS order: top, right, bottom, left
437
+ - name: cellVerticalAlignment | type: VerticalAlignmentAlignment | description: Vertical alignment for the cell's items.
438
+ enum:
439
+ BOTTOM: Bottom alignment
440
+ MIDDLE: Middle alignment
441
+ TOP: Top alignment
442
+ - name: containerData | type: PluginContainerData | description: Styling for the layout's container.
443
+ - name: gap | type: number | description: Horizontal and vertical gap between columns
444
+ - name: responsivenessBehaviour | type: ResponsivenessBehaviour | description: Responsiveness behaviour of columns when responsiveness applies. Either stacks or wrappers.
445
+ enum:
446
+ STACK: Stacking of columns
447
+ WRAP: Wrapping of columns
448
+ - name: responsivenessBreakpoint | type: number | description: Size in pixels when responsiveness_behaviour applies
449
+ - name: linkPreviewData | type: LinkPreviewData | description: Data for a link preview node.
450
+ - name: containerData | type: PluginContainerData | description: Styling for the link preview's container.
451
+ - name: description | type: string | description: Preview description.
452
+ - name: html | type: string | description: The preview content as HTML.
453
+ - name: link | type: Link | description: Link details.
454
+ - name: styles | type: LinkPreviewDataStyles | description: Styling for the link preview.
455
+ - name: backgroundColor | type: string | description: Background color as a hexadecimal value.
456
+ - name: borderColor | type: string | description: Border color as a hexadecimal value.
457
+ - name: borderRadius | type: number | description: Border radius in pixels.
458
+ - name: borderWidth | type: number | description: Border width in pixels.
459
+ - name: linkColor | type: string | description: Link color as a hexadecimal value.
460
+ - name: subtitleColor | type: string | description: Subtitle color as a hexadecimal value.
461
+ - name: thumbnailPosition | type: StylesPosition | description: Position of thumbnail. Defaults to `START`.
462
+ enum:
463
+ END: Thumbnail positioned at the end (right in LTR layouts, left in RTL layouts)
464
+ HIDDEN: Thumbnail hidden and not displayed
465
+ START: Thumbnail positioned at the start (left in LTR layouts, right in RTL layouts)
466
+ TOP: Thumbnail positioned at the top
467
+ - name: titleColor | type: string | description: Title color as a hexadecimal value.
468
+ - name: thumbnailUrl | type: string | description: Preview thumbnail URL.
469
+ - name: title | type: string | description: Preview title.
470
+ - name: mapData | type: MapData | description: none
471
+ - name: containerData | type: PluginContainerData | description: Styling for the map's container.
472
+ - name: mapSettings | type: MapSettings | description: Map settings.
473
+ - name: address | type: string | description: The address to display on the map.
474
+ - name: draggable | type: boolean | description: Sets whether the map is draggable.
475
+ - name: initialZoom | type: number | description: Initial zoom value.
476
+ - name: lat | type: number | description: Location latitude.
477
+ - name: lng | type: number | description: Location longitude.
478
+ - name: locationName | type: string | description: Location name.
479
+ - name: mapType | type: MapType | description: Map type. `HYBRID` is a combination of the `ROADMAP` and `SATELLITE` map types.
480
+ enum:
481
+ HYBRID: Hybrid map type
482
+ ROADMAP: Roadmap map type
483
+ SATELITE: Satellite map type
484
+ TERRAIN: Terrain map type
485
+ - name: marker | type: boolean | description: Sets whether the location marker is visible.
486
+ - name: streetViewControl | type: boolean | description: Sets whether street view control is enabled.
487
+ - name: viewModeControl | type: boolean | description: Sets whether view mode control is enabled.
488
+ - name: zoomControl | type: boolean | description: Sets whether zoom control is enabled.
489
+ - name: orderedListData | type: OrderedListData | description: Data for an ordered list node.
490
+ - name: indentation | type: number | description: Indentation level from 0-4.
491
+ - name: offset | type: number | description: Offset level from 0-4.
492
+ - name: start | type: number | description: List start number.
493
+ - name: paragraphData | type: ParagraphData | description: Data for a paragraph node.
494
+ - name: indentation | type: number | description: Indentation level from 1-4.
495
+ - name: level | type: number | description: Paragraph level
496
+ - name: textStyle | type: TextStyle | description: Styling for the paragraph text.
497
+ - name: pollData | type: PollData | description: Data for a poll node.
498
+ - name: containerData | type: PluginContainerData | description: Styling for the poll's container.
499
+ - name: design | type: Design | description: Styling for the poll and voting options.
500
+ - name: options | type: OptionDesign | description: Styling for voting options.
501
+ - name: borderRadius | type: number | description: Border radius in pixels.
502
+ - name: poll | type: PollDesign | description: Styling for the poll.
503
+ - name: background | type: Background | description: Background styling.
504
+ - name: type | type: BackgroundType | description: Background type. For each option, include the relevant details.
505
+ enum:
506
+ COLOR: Color background type
507
+ GRADIENT: Gradiant background type
508
+ IMAGE: Image background type
509
+ - ONE-OF:
510
+ - name: color | type: string | description: The background color as a hexademical value.
511
+ - name: gradient | type: Gradient | description: Details for a gradient background.
512
+ - name: angle | type: number | description: The gradient angle in degrees.
513
+ - name: lastColor | type: string | description: The end color as a hexademical value.
514
+ - name: startColor | type: string | description: The start color as a hexademical value.
515
+ - name: image | type: V1Media | description: An image to use for the background.
516
+ - name: borderRadius | type: number | description: Border radius in pixels.
517
+ - name: layout | type: PollDataLayout | description: Layout settings for the poll and voting options.
518
+ - name: options | type: OptionLayout | description: Voting otpions layout settings.
519
+ - name: enableImage | type: boolean | description: Sets whether to display option images. Defaults to `false`.
520
+ - name: poll | type: PollLayout | description: Poll layout settings.
521
+ - name: direction | type: PollLayoutDirection | description: The direction of the text displayed in the voting options. Text can be displayed either right-to-left or left-to-right.
522
+ enum:
523
+ LTR: Left-to-right
524
+ RTL: Right-to-left
525
+ - name: enableImage | type: boolean | description: Sets whether to display the main poll image. Defaults to `false`.
526
+ - name: type | type: PollLayoutType | description: The layout for displaying the voting options.
527
+ enum:
528
+ GRID: Grid
529
+ LIST: List
530
+ - name: poll | type: Poll | description: Poll data.
531
+ - name: creatorId | type: string | description: Poll creator GUID.
532
+ - name: id | type: string | description: Poll GUID.
533
+ - name: image | type: V1Media | description: Main poll image.
534
+ - name: options | type: Array<Option> | description: Voting options.
535
+ - name: id | type: string | description: Option GUID.
536
+ - name: image | type: V1Media | description: The image displayed with the option.
537
+ - name: title | type: string | description: Option title.
538
+ - name: settings | type: PollSettings | description: The poll's permissions and display settings.
539
+ - name: permissions | type: Permissions | description: Permissions settings for voting.
540
+ - name: allowMultipleVotes | type: boolean | description: Sets whether one voter can vote multiple times. Defaults to `false`.
541
+ - name: view | type: ViewRole | description: Sets who can view the poll results.
542
+ enum:
543
+ CREATOR: Only Poll creator can view the results
544
+ EVERYONE: Anyone can see the results, even if one didn't vote
545
+ VOTERS: Anyone who voted can see the results
546
+ - name: vote | type: VoteRole | description: Sets who can vote.
547
+ enum:
548
+ ALL: Anyone
549
+ SITE_MEMBERS: Logged in member
550
+ - name: showVoters | type: boolean | description: Sets whether voters are displayed in the vote results. Defaults to `true`.
551
+ - name: showVotesCount | type: boolean | description: Sets whether the vote count is displayed. Defaults to `true`.
552
+ - name: title | type: string | description: Poll title.
553
+ - name: tableCellData | type: TableCellData | description: Data for a table cell node.
554
+ - name: borderColors | type: BorderColors | description: The cell's border colors.
555
+ - name: bottom | type: string | description: Bottom border color as a hexadecimal value.
556
+ - name: left | type: string | description: Left border color as a hexadecimal value.
557
+ - name: right | type: string | description: Right border color as a hexadecimal value.
558
+ - name: top | type: string | description: Top border color as a hexadecimal value.
559
+ - name: borderWidths | type: BorderWidths | description: The cell's border widths.
560
+ - name: bottom | type: number | description: Bottom border width in pixels.
561
+ - name: left | type: number | description: Left border width in pixels.
562
+ - name: right | type: number | description: Right border width in pixels.
563
+ - name: top | type: number | description: Top border width in pixels.
564
+ - name: cellStyle | type: CellStyle | description: Styling for the cell's background color and text alignment.
565
+ - name: backgroundColor | type: string | description: Cell background color as a hexadecimal value.
566
+ - name: verticalAlignment | type: VerticalAlignment | description: Vertical alignment for the cell's text.
567
+ enum:
568
+ BOTTOM: Bottom alignment
569
+ MIDDLE: Middle alignment
570
+ TOP: Top alignment
571
+ - name: colspan | type: number | description: Defines how many columns the cell spans. Default: 1.
572
+ - name: rowspan | type: number | description: Defines how many rows the cell spans. Default: 1.
573
+ - name: tableData | type: TableData | description: Data for a table node.
574
+ - name: cellPadding | type: Array<number> | description: Padding in pixels for cells. Follows CSS order: top, right, bottom, left.
575
+ - name: cellSpacing | type: number | description: The spacing between cells in pixels. Defaults to `0`.
576
+ - name: columnHeader | type: boolean | description: Sets whether the table's first column is a header. Defaults to `false`.
577
+ - name: containerData | type: PluginContainerData | description: Styling for the table's container.
578
+ - name: dimensions | type: Dimensions | description: The table's dimensions.
579
+ - name: colsMinWidth | type: Array<number> | description: An array representing the minimum width of each column in pixels.
580
+ - name: colsWidthRatio | type: Array<number> | description: An array representing relative width of each column in relation to the other columns.
581
+ - name: rowsHeight | type: Array<number> | description: An array representing the height of each row in pixels.
582
+ - name: rowHeader | type: boolean | description: Sets whether the table's first row is a header. Defaults to `false`.
583
+ - name: textData | type: TextData | description: Data for a text node. Used to apply decorations to text.
584
+ - name: decorations | type: Array<Decoration> | description: The decorations to apply.
585
+ - name: text | type: string | description: The text to apply decorations to.
586
+ - name: videoData | type: VideoData | description: Data for a video node.
587
+ - name: containerData | type: PluginContainerData | description: Styling for the video's container.
588
+ - name: disableDownload | type: boolean | description: Sets whether the video's download button is disabled. Defaults to `false`.
589
+ - name: options | type: PlaybackOptions | description: Video options.
590
+ - name: autoPlay | type: boolean | description: Sets whether the media will automatically start playing.
591
+ - name: playInLoop | type: boolean | description: Sets whether media's will be looped.
592
+ - name: showControls | type: boolean | description: Sets whether media's controls will be shown.
593
+ - name: thumbnail | type: V1Media | description: Video thumbnail details.
594
+ - name: title | type: string | description: Video title.
595
+ - name: video | type: V1Media | description: Video details.
596
+ - name: extendedFields | type: ExtendedFields | description: Custom extended fields for the product object. [Extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields) must be configured in the app dashboard before they can be accessed with API calls.
597
+ - name: namespaces | type: Record<string, undefined> | description: Extended field data. Each key corresponds to the namespace of the app that created the extended fields. The value of each key is structured according to the schema defined when the extended fields were configured. You can only access fields for which you have the appropriate permissions. Learn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields).
598
+ - name: infoSections | type: Array<InfoSection> | description: Product info section. + Pass `infoSection.uniqueName`, `infoSection.title`, and `infoSection.description` to add a new info section while creating a product. + Pass an existing info section's `id` or `uniqueName` to assign that info section to the product.
599
+ - name: _id | type: string | description: Info section GUID.
600
+ - name: plainDescription | type: string | description: Info section description in HTML. When provided on create/update, this string must be a valid HTML. It will then be converted to rich content. `plainDescription` is ignored when value is also passed to the `description` field. > **Note:** Returned only when you pass `"INFO_SECTION_PLAIN_DESCRIPTION"` to the `fields` array in Products API requests.
601
+ - name: uniqueName | type: string | description: Info section unique name. > **Note:** Returned only when you pass `"INFO_SECTION"` to the `fields` array in Products API requests.
602
+ - name: mainCategoryId | type: string | description: The GUID of the product's primary direct category, which defines the product’s breadcrumbs path. For example, if the product's main category is "T-Shirts" (which is a subcategory of "Clothing"), the breadcrumbs path will be "Clothing > T-Shirts".
603
+ - name: media | type: Media | description: Product media items.
604
+ - name: itemsInfo | type: MediaItemsInfo | description: All media items. > **Note:** Returned only when you pass `"MEDIA_ITEMS_INFO"` to the `fields` array in Products API requests.
605
+ - name: items | type: Array<ProductMedia> | description: All media items (images, videos etc) associated with this product.
606
+ - name: altText | type: string | description: Image alt text.
607
+ - name: displayName | type: string | description: Media display name. Allows to override the default media name. Can be passed only when `setBy: url`.
608
+ - name: thumbnail | type: Thumbnail | description: Media thumbnail. > **Note:** Returned only when you pass `"THUMBNAIL"` to the `fields` array in Products API requests.
609
+ - name: altText | type: string | description: Thumbnail alt text.
610
+ - name: height | type: number | description: Thumbnail height.
611
+ - name: url | type: string | description: Thumbnail url.
612
+ - name: width | type: number | description: Thumbnail width.
613
+ - ONE-OF:
614
+ - name: _id | type: string | description: Set media by GUID of an existing file in Wix Media Manager.
615
+ - name: url | type: string | description: Set media using an external media URL.
616
+ - ONE-OF:
617
+ - name: image | type: string | description: Product image.
618
+ - name: video | type: string | description: Product video.
619
+ - name: modifiers | type: Array<ConnectedModifier> | description: Product modifiers. Allows the customer to customize product, e.g. select Color, Size and so on similarly to `options` but with one main difference - `modifiers` never generate any variants.
620
+ - name: _id | type: string | description: GUID of a customization with `customizationType: MODIFIER`.
621
+ - name: mandatory | type: boolean | description: Whether customer input is required for this modifier.
622
+ - name: modifierRenderType | type: ModifierRenderType | description: Modifier render type.
623
+ enum:
624
+ FREE_TEXT: Free text.
625
+ SWATCH_CHOICES: Swatch choices.
626
+ TEXT_CHOICES: Text choices.
627
+ UNKNOWN_MODIFIER_RENDER_TYPE: Not implemented.
628
+ - name: name | type: string | description: Modifier title.
629
+ - ONE-OF:
630
+ - name: choicesSettings | type: ModifierChoicesSettings | description: Choice settings.
631
+ - name: choices | type: Array<ConnectedModifierChoice> | description: List of modifier choices.
632
+ - name: addedPrice | type: string | description: Added price.
633
+ - name: choiceId | type: string | description: Choice GUID.
634
+ - name: choiceType | type: ChoiceType | description: Choice type.
635
+ enum:
636
+ CHOICE_TEXT: Text choice.
637
+ IMAGE: Image choice.
638
+ MULTIPLE_COLORS: Multiple colors choice.
639
+ ONE_COLOR: Single color choice.
640
+ UNKNOWN_CHOICE_TYPE
641
+ - name: linkedMedia | type: Array<ProductMedia> | description: Product media.
642
+ - name: name | type: string | description: Choice name.
643
+ - ONE-OF:
644
+ - name: colorCode | type: string | description: Color code in HEX format, [as described by MDN](https://developer.mozilla.org/en-US/docs/Web/CSS/hex-color).
645
+ - name: freeTextSettings | type: FreeTextSettings | description: Free text modifier settings.
646
+ - name: defaultAddedPrice | type: string | description: Default amount to be added to the product's price.
647
+ - name: maxCharCount | type: number | description: Maximum number of characters.
648
+ - name: minCharCount | type: number | description: Minimum number of characters.
649
+ - name: title | type: string | description: Title of the text to be input by the customer.
650
+ - name: name | type: string | description: Product name. Translatable.
651
+ - name: options | type: Array<ConnectedOption> | description: Product options. Allows the customer to customize the product. For example, selecting color, size, and more. Always generates variants: every variant must have exactly one choice related to each option. Since options and variants tightly coupled and rely on each other they usually should be provided together in all operations.
652
+ - name: _id | type: string | description: GUID of a customization with `customizationType: PRODUCT_OPTION`.
653
+ - name: name | type: string | description: Option name.
654
+ - name: optionRenderType | type: ProductOptionRenderType | description: Option render type.
655
+ enum:
656
+ SWATCH_CHOICES: Swatch choices.
657
+ TEXT_CHOICES: Text choices.
658
+ UNKNOWN_OPTION_RENDER_TYPE: Not implemented.
659
+ - ONE-OF:
660
+ - name: choicesSettings | type: ChoicesSettings | description: Choices settings.
661
+ - name: choices | type: Array<ConnectedOptionChoice> | description: List of available choices for the option.
662
+ - name: choiceId | type: string | description: The id of the choice.
663
+ - name: choiceType | type: ChoiceType | description: The type of this choice.
664
+ - name: linkedMedia | type: Array<ProductMedia> | description: Product media overrides. When not empty only these images will be shown when such choices selected by customer. Otherwise all images of product. When several choices from different options selected only media filter present in `media_overrides` of ALL choices will be shown. For example if Color:red has images 1,2,3 and Material:Silk has images 2,3,5 then only images 2,3 will be shown when both of them selected.
665
+ - name: name | type: string | description: Choice name.
666
+ - ONE-OF:
667
+ - name: colorCode | type: string | description: Color code in HEX format, [as described by MDN](https://developer.mozilla.org/en-US/docs/Web/CSS/hex-color).
668
+ - name: physicalProperties | type: PhysicalProperties | description: Physical properties. Required when `productType: PHYSICAL`.
669
+ - name: deliveryProfileId | type: string | description: Delivery profile GUID.
670
+ - name: fulfillerId | type: string | description: Fulfiller GUID.
671
+ - name: pricePerUnit | type: PricePerUnitSettings | description: Price per unit settings. > **Note:** Use this field only when relevant. For example, for products that are sold by weight, volume, or length.
672
+ - name: measurementUnit | type: MeasurementUnit | description: Measurement unit. For example, to define price per 100 grams, set this field to "G".
673
+ enum: CBM, CL, CM, FLOZ, FT, G, GAL, IN, KG, L, LB, M, MG, ML, MM, OZ, PT, QT, SQFT, SQM, UNSPECIFIED, YD
674
+ - name: quantity | type: number | description: Quantity. For example, to define price per per 100 grams, set this field to `100`.
675
+ - name: plainDescription | type: string | description: Product description in HTML. + When provided on create/update, this string must be a valid HTML. It will then be converted to rich content. + `plainDescription` is ignored when value is also passed to the `description` field. > **Note:** Returned only when you pass `"PLAIN_DESCRIPTION"` to the `fields` array in Products API requests.
676
+ - name: productType | type: ProductType | description: Product type. When passing `productType: PHYSICAL`, you must also pass `physicalProperties`.
677
+ enum:
678
+ DIGITAL: Digital product.
679
+ PHYSICAL: Physical product.
680
+ UNKNOWN_PRODUCT_TYPE: Not implemented.
681
+ - name: revision | type: string | description: Revision number, which increments by 1 each time the product is updated. To prevent conflicting changes, the current revision must be passed when updating the product. Ignored when creating a product. | required: true
682
+ - name: ribbon | type: Ribbon | description: Product ribbon. + Pass `ribbon.name` to add a new ribbon while creating a product. + Pass an existing ribbon's `id` or `name` to assign that ribbon to the product.
683
+ - name: _id | type: string | description: Ribbon GUID.
684
+ - name: name | type: string | description: Ribbon name.
685
+ - name: seoData | type: SeoSchema | description: Product SEO data.
686
+ - name: settings | type: Settings | description: SEO general settings.
687
+ - name: keywords | type: Array<Keyword> | description: User-selected keyword terms for a specific page.
688
+ - name: isMain | type: boolean | description: Whether the keyword is the main focus keyword.
689
+ - name: origin | type: string | description: The source that added the keyword terms to the SEO settings.
690
+ - name: term | type: string | description: Keyword value.
691
+ - name: preventAutoRedirect | type: boolean | description: Whether the [automatical redirect visits](https://support.wix.com/en/article/customizing-your-pages-seo-settings-in-the-seo-panel) from the old URL to the new one is enabled. Default: `false` (automatical redirect is enabled).
692
+ - name: tags | type: Array<Tag> | description: SEO tag information.
693
+ - name: children | type: string | description: SEO tag inner content. For example, `<title> inner content </title>`.
694
+ - name: custom | type: boolean | description: Whether the tag is a [custom tag](https://support.wix.com/en/article/adding-additional-meta-tags-to-your-sites-pages).
695
+ - name: disabled | type: boolean | description: Whether the tag is disabled. If the tag is disabled, people can't find your page when searching for this phrase in search engines.
696
+ - name: meta | type: Record<string, any> | description: SEO tag metadata. For example, `{"height": 300, "width": 240}`.
697
+ - name: props | type: Record<string, any> | description: A `{"key": "value"}` pair object where each SEO tag property (`"name"`, `"content"`, `"rel"`, `"href"`) contains a value. For example: `{"name": "description", "content": "the description itself"}`.
698
+ - name: type | type: string | description: SEO tag type. Supported values: `title`, `meta`, `script`, `link`.
699
+ - name: slug | type: string | description: Product slug. If not provided, the slug is autogenerated based on the product name.
700
+ - name: subscriptionDetails | type: SubscriptionDetails | description: Product subscriptions.
701
+ - name: allowOneTimePurchases | type: boolean | description: Whether to allow one-time purchases in addition to subscription-based purchases. Default: `false`
702
+ - name: subscriptions | type: Array<Subscription> | description: Subscriptions.
703
+ - name: _id | type: string | description: Subscription GUID.
704
+ - name: description | type: string | description: Subscription description.
705
+ - name: discount | type: SubscriptionDiscount | description: Discount info (optional). For example, a $20 discount would be `amount: 20`, `type: AMOUNT`.
706
+ - name: type | type: DiscountType | description: Discount type.
707
+ enum:
708
+ AMOUNT: Discount by a specific amount.
709
+ PERCENT: Discount by a percentage.
710
+ UNKNOWN_DISCOUNT
711
+ - ONE-OF:
712
+ - name: amountOff | type: string | description: Amount to discount from the variant discounted_price.
713
+ - name: percentOff | type: number | description: Percentage to discount from variant discounted_price.
714
+ - name: frequency | type: SubscriptionFrequency | description: Frequency of recurring payment. For example, if `frequency: MONTH` and `billingCycles: 6`; payment will be made monthly for 6 months.
715
+ enum: DAY, MONTH, UNDEFINED, WEEK, YEAR
716
+ - name: interval | type: number | description: Interval of recurring payment. Default: `1`. For example, if `frequency: MONTH`, `billingCycles: 3` and `interval: 2`; payment will be made every 2 months for a total of 6 months.
717
+ - name: title | type: string | description: Subscription title.
718
+ - name: visible | type: boolean | description: Whether the subscription is visible to site visitors. Default: `true`
719
+ - ONE-OF:
720
+ - name: autoRenewal | type: boolean | description: Whether subscription is renewed automatically at the end of each period. Cannot be `false`, instead set `billingCycles`.
721
+ - name: billingCycles | type: number | description: Number of billing cycles before subscription ends.
722
+ - name: taxGroupId | type: string | description: Tax group GUID.
723
+ - name: variantsInfo | type: VariantsInfo | description: Product variants. Each variant must reference all product options via its `choices` array. Each choice references an option using `optionChoiceNames` for all requests.
724
+ - name: variants | type: Array<Variant> | description: List of related variants.
725
+ - name: _id | type: string | description: Variant GUID.
726
+ - name: barcode | type: string | description: Variant barcode.
727
+ - name: choices | type: Array<OptionChoice> | description: List of choices that define the product's variant, which requires exactly one choice per product option. Must use `optionChoiceNames` in all requests this field is required. Empty only for default variants of unmanaged products.
728
+ - name: optionChoiceIds | type: OptionChoiceIds | description: Option and choice GUIDs. These match the GUIDs of the option and choice from the product's options field.
729
+ - name: choiceId | type: string | description: Choice GUID.
730
+ - name: optionId | type: string | description: Option GUID.
731
+ - name: optionChoiceNames | type: OptionChoiceNames | description: Option and choice names. This needs to be used in all requests `OptionChoice` is needed, and all `OptionChoiceNames` fields are required. > **Note:** Returned only when you pass `"VARIANT_OPTION_CHOICE_NAMES"` to the `fields` array in Products API requests.
732
+ - name: choiceName | type: string | description: Choice name.
733
+ - name: optionName | type: string | description: Option name.
734
+ - name: renderType | type: ProductOptionRenderType | description: Render type.
735
+ - name: price | type: PriceInfo | description: Variant price. | required: true
736
+ - name: actualPrice | type: FixedMonetaryAmount | description: Variant price. Must be greater or equal to 0. | required: true
737
+ - name: amount | type: string | description: Monetary amount. For example, `"3.99"`, or `"-4.99"` for a negative amount.
738
+ - name: compareAtPrice | type: FixedMonetaryAmount | description: The compare-at-price represents the original price of a product before any discount. It is optional and should only be set if a discount applies. When set, it must be higher than the current price to reflect accurate savings.
739
+ - name: revenueDetails | type: RevenueDetails | description: Variant revenue details. > **Note:** Returned only when the following conditions are met: > + You pass `"MERCHANT_DATA"` to the `fields` array in Products API requests. > + Your app has the required `SCOPE.STORES.PRODUCT_READ_ADMIN` permission scope.
740
+ - name: cost | type: FixedMonetaryAmount | description: Item cost.
741
+ - name: sku | type: string | description: Variant SKU (stock keeping unit).
742
+ - name: visible | type: boolean | description: Whether the variant is visible to site visitors. Default: `true`
743
+ - ONE-OF:
744
+ - name: digitalProperties | type: VariantDigitalProperties | description: Digital properties. Must be passed when `productType: DIGITAL`
745
+ - name: digitalFile | type: SecuredMedia | description: Digital file which will be downloaded by customer after successful purchase.
746
+ - name: _id | type: string | description: Media GUID in media manager.
747
+ - name: physicalProperties | type: VariantPhysicalProperties | description: Physical properties. Must be passed when `productType: PHYSICAL`
748
+ - name: pricePerUnit | type: PricePerUnit | description: Price per unit info, in order to show price per unit on the product page. For example if one sells cheese and defines 100g here then we know that buying this variant buyer receives 100g of cheese. But on product page price will be displayed for units defined on product level. See `pricePerUnit.value` to understand how it's calculated.
749
+ - name: settings | type: PricePerUnitSettings | description: Price per unit data for this variant. `measurementUnit` value must correspond to the measurement unit set on the product.
750
+ - name: weight | type: number | description: Variant shipping weight. product.physicalProperties.shipping_weight_range values are taken from here.
751
+ - name: visible | type: boolean | description: Whether the product is visible to site visitors on the site. Default: `true`
752
+ - name: visibleInPos | type: boolean | description: Whether the product is visible in POS (point of sale). Default: `true` > **Note:** Always `false` for `productType: DIGITAL`.
753
+ param name: options | type: UpdateProductOptions | description: none
754
+ - name: fields | type: Array<SingleEntityOpsRequestedFields> | description: Fields to include in the response.
755
+ enum:
756
+ ALL_CATEGORIES_INFO: Provides GUIDs and indexes for all categories including inherited parent categories.
757
+ BREADCRUMBS_INFO: Returns the category breadcrumb navigation path from root categories down to the product's main category, including category GUIDs, names, and slugs.
758
+ CURRENCY: Currency information including the currency code and formatted price amounts for storefront display.
759
+ DESCRIPTION: Returns the product description as rich content with complete node structure, metadata, and styling information.
760
+ DIRECT_CATEGORIES_INFO: Provides the GUIDs and indexes of categories the product is directly assigned to.
761
+ INFO_SECTION: Returns basic info section metadata including GUIDs, unique names, and titles. Use with `INFO_SECTION_DESCRIPTION` or `INFO_SECTION_PLAIN_DESCRIPTION` to include content.
762
+ INFO_SECTION_DESCRIPTION: Returns info section descriptions as rich content with complete node structure, metadata, and styling information. Use with `INFO_SECTION` for complete metadata.
763
+ INFO_SECTION_PLAIN_DESCRIPTION: Returns info section descriptions as HTML content. Use with `INFO_SECTION` for complete metadata.
764
+ MEDIA_ITEMS_INFO: Returns all media items associated with the product, including detailed metadata (URLs, alt-text, dimensions, filenames, file sizes).
765
+ MERCHANT_DATA: Returns merchant-related financial data including cost ranges and variant revenue details like cost, profit, and profit margin. Requires the `SCOPE.STORES.PRODUCT_READ_ADMIN` permission scope.
766
+ PLAIN_DESCRIPTION: Provides product description as plain HTML text.
767
+ SUBSCRIPTION_PRICES_INFO: Details subscription pricing options, empty for non-subscription products.
768
+ THUMBNAIL: Returns an optimized thumbnail image with standard dimensions, suitable for listings or previews.
769
+ UNKNOWN_REQUESTED_FIELD: Not implemented.
770
+ URL: The product's public storefront URL, including both relative path and full URL with base domain.
771
+ VARIANT_OPTION_CHOICE_NAMES: Enriches variant choices with human-readable option and choice names alongside render types.
772
+ WEIGHT_MEASUREMENT_UNIT_INFO: Returns the weight measurement unit (KG, LB) for the product.
773
+ Return type: PROMISE<V3Product>
774
+ - name: _createdDate | type: Date | description: Date and time the product was created.
775
+ - name: _id | type: string | description: Product GUID.
776
+ - name: _updatedDate | type: Date | description: Date and time the product was updated.
777
+ - name: actualPriceRange | type: PriceRange | description: Product actualPrice range - minimum and maximum prices of all product variants.
778
+ - name: actualPriceRange.maxValue | type: FixedMonetaryAmount | description: Maximum value.
779
+ - name: actualPriceRange.maxValue.amount | type: string | description: Monetary amount. For example, `"3.99"`, or `"-4.99"` for a negative amount.
780
+ - name: actualPriceRange.maxValue.formattedAmount | type: string | description: Formatted monetary amount. For example, `"$3.99"`. > **Note:** Returned only when you pass `"CURRENCY"` to the `fields` array in Products API requests.
781
+ - name: actualPriceRange.minValue | type: FixedMonetaryAmount | description: Minimum value.
782
+ - name: allCategoriesInfo | type: ProductCategoriesInfo | description: List of categories that directly contain this product, as well as their parent categories. > **Note:** Returned only when you pass `"ALL_CATEGORIES_INFO"` to the `fields` array in Products API requests.
783
+ - name: allCategoriesInfo.categories | type: Array<ProductCategory> | description: A list of categories related to product.
784
+ - name: allCategoriesInfo.categories[]._id | type: string | description: Category GUID.
785
+ - name: allCategoriesInfo.categories[].index | type: number | description: Index location of the product within the category, which can be utilized for sorting products in a specific category. For detailed instructions on how to set this up, refer to the [Add and arrange products in category](https://dev.wix.com/docs/rest/business-solutions/stores/catalog-v3/products-v3/sample-use-cases-and-flows#add-and-arrange-products-in-category) sample flow.
786
+ - name: brand | type: Brand | description: Product brand. + Pass `brand.name` to add a new brand while creating a product. + Pass an existing brand's `id` to assign that brand to the product.
787
+ - name: brand._id | type: string | description: Brand GUID.
788
+ - name: brand.name | type: string | description: Brand name.
789
+ - name: breadcrumbsInfo | type: BreadcrumbsInfo | description: Breadcrumbs of the `mainCategoryId`. Used to navigate to parent categories. > **Note:** Returned only when you pass `"BREADCRUMBS_INFO"` to the `fields` array in Products API requests.
790
+ - name: breadcrumbsInfo.breadcrumbs | type: Array<BreadCrumb> | description: Breadcrumbs.
791
+ - name: breadcrumbsInfo.breadcrumbs[].categoryId | type: string | description: Category GUID.
792
+ - name: breadcrumbsInfo.breadcrumbs[].categoryName | type: string | description: Category name.
793
+ - name: breadcrumbsInfo.breadcrumbs[].categorySlug | type: string | description: Category slug.
794
+ - name: compareAtPriceRange | type: PriceRange | description: Product compareAtPrice range - minimum and maximum compare at prices of all product variants.
795
+ - name: costRange | type: PriceRange | description: Product cost range - minimum and maximum costs of all product variants. > **Note:** Returned only when the following conditions are met: > + You pass `"MERCHANT_DATA"` to the `fields` array in Products API requests. > + Your app has the required `SCOPE.STORES.PRODUCT_READ_ADMIN` permission scope.
796
+ - name: currency | type: string | description: Currency used for the pricing of this product, in [ISO-4217](https://en.wikipedia.org/wiki/ISO_4217#List_of_ISO_4217_currency_codes) format. Defaults to the currency defined in the site settings, unless specified in `x-wix-currency` header. > **Note:** Returned only when you pass `"CURRENCY"` to the `fields` array in Products API requests.
797
+ - name: description | type: RichContent | description: Product description using rich content. > **Note:** Returned only when you pass `"DESCRIPTION"` to the `fields` array in Products API requests. <widget src="https://apps.wix.com/_serverless/ricos-playground-services/goto/api-component" plugins="indent.emoji.divider.codeBlock.file.gallery.giphy.image.table.link.textHighlight.textColor" exampleid="7dc9240e-d548-417a-abcf-0291b68b4303"> <a href="https://dev.wix.com/docs/ricos/api-reference/ricos-document">See Ricos document reference</a> </widget>
798
+ - name: description.documentStyle | type: DocumentStyle | description: Global styling for header, paragraph, block quote, and code block nodes in the object.
799
+ - name: description.documentStyle.blockquote | type: TextNodeStyle | description: Styling for block quote nodes.
800
+ - name: description.documentStyle.blockquote.decorations | type: Array<Decoration> | description: The decorations to apply to the node.
801
+ - name: description.documentStyle.blockquote.decorations[].type | type: DecorationType | description: The type of decoration to apply.
802
+ enum: ANCHOR, BOLD, COLOR, EXTERNAL, FONT_FAMILY, FONT_SIZE, ITALIC, LINK, MENTION, SPOILER, STRIKETHROUGH, SUBSCRIPT, SUPERSCRIPT, UNDERLINE
803
+ - ONE-OF:
804
+ - name: description.documentStyle.blockquote.decorations[].anchorData | type: AnchorData | description: Data for an anchor link decoration.
805
+ - name: description.documentStyle.blockquote.decorations[].anchorData.anchor | type: string | description: The target node's GUID.
806
+ - name: description.documentStyle.blockquote.decorations[].colorData | type: ColorData | description: Data for a color decoration.
807
+ - name: description.documentStyle.blockquote.decorations[].colorData.background | type: string | description: The text's background color as a hexadecimal value.
808
+ - name: description.documentStyle.blockquote.decorations[].colorData.foreground | type: string | description: The text's foreground color as a hexadecimal value.
809
+ - name: description.documentStyle.blockquote.decorations[].fontFamilyData | type: FontFamilyData | description: Data for a font family decoration.
810
+ - name: description.documentStyle.blockquote.decorations[].fontFamilyData.value | type: string | description: none
811
+ - name: description.documentStyle.blockquote.decorations[].fontSizeData | type: FontSizeData | description: Data for a font size decoration.
812
+ - name: description.documentStyle.blockquote.decorations[].fontSizeData.unit | type: FontType | description: The units used for the font size.
813
+ enum: EM, PX
814
+ - name: description.documentStyle.blockquote.decorations[].fontSizeData.value | type: number | description: Font size value.
815
+ - name: description.documentStyle.blockquote.decorations[].fontWeightValue | type: number | description: Font weight for a bold decoration.
816
+ - name: description.documentStyle.blockquote.decorations[].italicData | type: boolean | description: Data for an italic decoration. Defaults to `true`.
817
+ - name: description.documentStyle.blockquote.decorations[].linkData | type: LinkData | description: Data for an external link decoration.
818
+ - name: description.documentStyle.blockquote.decorations[].linkData.link | type: Link | description: Link details.
819
+ - name: description.documentStyle.blockquote.decorations[].linkData.link.customData | type: string | description: A serialized object used for a custom or external link panel.
820
+ - name: description.documentStyle.blockquote.decorations[].linkData.link.rel | type: Rel | description: The HTML `rel` attribute value for the link. This object specifies the relationship between the current document and the linked document.
821
+ - name: description.documentStyle.blockquote.decorations[].linkData.link.rel.nofollow | type: boolean | description: Indicates to search engine crawlers not to follow the link. Defaults to `false`.
822
+ - name: description.documentStyle.blockquote.decorations[].linkData.link.rel.noreferrer | type: boolean | description: Indicates that this link protect referral information from being passed to the target website.
823
+ - name: description.documentStyle.blockquote.decorations[].linkData.link.rel.sponsored | type: boolean | description: Indicates to search engine crawlers that the link is a paid placement such as sponsored content or an advertisement. Defaults to `false`.
824
+ - name: description.documentStyle.blockquote.decorations[].linkData.link.rel.ugc | type: boolean | description: Indicates that this link is user-generated content and isn't necessarily trusted or endorsed by the page’s author. For example, a link in a fourm post. Defaults to `false`.
825
+ - name: description.documentStyle.blockquote.decorations[].linkData.link.target | type: Target | description: he HTML `target` attribute value for the link. This property defines where the linked document opens as follows: `SELF` - Default. Opens the linked document in the same frame as the link. `BLANK` - Opens the linked document in a new browser tab or window. `PARENT` - Opens the linked document in the link's parent frame. `TOP` - Opens the linked document in the full body of the link's browser tab or window.
826
+ enum:
827
+ BLANK: Opens the linked document in a new window or tab
828
+ PARENT: Opens the linked document in the parent frame
829
+ SELF: Opens the linked document in the same frame as it was clicked (this is default)
830
+ TOP: Opens the linked document in the full body of the window
831
+ - ONE-OF:
832
+ - name: description.documentStyle.blockquote.decorations[].linkData.link.anchor | type: string | description: The target node's GUID. Used for linking to another node in this object.
833
+ - name: description.documentStyle.blockquote.decorations[].linkData.link.url | type: string | description: The absolute URL for the linked document.
834
+ - name: description.documentStyle.blockquote.decorations[].mentionData | type: MentionData | description: Data for a mention decoration.
835
+ - name: description.documentStyle.blockquote.decorations[].mentionData.id | type: string | description: Mentioned user's GUID.
836
+ - name: description.documentStyle.blockquote.decorations[].mentionData.name | type: string | description: The mentioned user's name.
837
+ - name: description.documentStyle.blockquote.decorations[].mentionData.slug | type: string | description: The version of the user's name that appears after the `@` character in the mention.
838
+ - name: description.documentStyle.blockquote.decorations[].spoilerData | type: SpoilerData | description: Data for a spoiler decoration.
839
+ - name: description.documentStyle.blockquote.decorations[].spoilerData.id | type: string | description: Spoiler GUID.
840
+ - name: description.documentStyle.blockquote.decorations[].strikethroughData | type: boolean | description: Data for a strikethrough decoration. Defaults to `true`.
841
+ - name: description.documentStyle.blockquote.decorations[].subscriptData | type: boolean | description: Data for a subscript decoration. Defaults to `true`.
842
+ - name: description.documentStyle.blockquote.decorations[].superscriptData | type: boolean | description: Data for a superscript decoration. Defaults to `true`.
843
+ - name: description.documentStyle.blockquote.decorations[].underlineData | type: boolean | description: Data for an underline decoration. Defaults to `true`.
844
+ - name: description.documentStyle.blockquote.lineHeight | type: string | description: Line height for text in the node.
845
+ - name: description.documentStyle.blockquote.nodeStyle | type: NodeStyle | description: Padding and background color for the node.
846
+ - name: description.documentStyle.blockquote.nodeStyle.backgroundColor | type: string | description: The background color as a hexadecimal value.
847
+ - name: description.documentStyle.blockquote.nodeStyle.paddingBottom | type: string | description: The bottom padding value in pixels.
848
+ - name: description.documentStyle.blockquote.nodeStyle.paddingTop | type: string | description: The top padding value in pixels.
849
+ - name: description.documentStyle.codeBlock | type: TextNodeStyle | description: Styling for code block nodes.
850
+ - name: description.documentStyle.headerFive | type: TextNodeStyle | description: Styling for H5 nodes.
851
+ - name: description.documentStyle.headerFour | type: TextNodeStyle | description: Styling for H4 nodes.
852
+ - name: description.documentStyle.headerOne | type: TextNodeStyle | description: Styling for H1 nodes.
853
+ - name: description.documentStyle.headerSix | type: TextNodeStyle | description: Styling for H6 nodes.
854
+ - name: description.documentStyle.headerThree | type: TextNodeStyle | description: Styling for H3 nodes.
855
+ - name: description.documentStyle.headerTwo | type: TextNodeStyle | description: Styling for H2 nodes.
856
+ - name: description.documentStyle.paragraph | type: TextNodeStyle | description: Styling for paragraph nodes.
857
+ - name: description.metadata | type: Metadata | description: Object metadata.
858
+ - name: description.metadata._id | type: string | description: Object GUID.
859
+ - name: description.metadata.version | type: number | description: Schema version.
860
+ - name: description.nodes | type: Array<Node> | description: Node objects representing a rich content document.
861
+ - name: description.nodes[].id | type: string | description: Node GUID.
862
+ - name: description.nodes[].nodes | type: Array<Node> | description: A list of child nodes.
863
+ - name: description.nodes[].style | type: NodeStyle | description: Padding and background color styling for the node.
864
+ - name: description.nodes[].type | type: NodeType | description: Node type. Use `APP_EMBED` for nodes that embed content from other Wix apps. Use `EMBED` to embed content in [oEmbed](https://oembed.com/) format.
865
+ enum: APP_EMBED, AUDIO, BLOCKQUOTE, BULLETED_LIST, BUTTON, CAPTION, CODE_BLOCK, COLLAPSIBLE_ITEM, COLLAPSIBLE_ITEM_BODY, COLLAPSIBLE_ITEM_TITLE, COLLAPSIBLE_LIST, DIVIDER, EMBED, EXTERNAL, FILE, GALLERY, GIF, HEADING, HTML, IMAGE, LAYOUT, LAYOUT_CELL, LINK_PREVIEW, LIST_ITEM, MAP, ORDERED_LIST, PARAGRAPH, POLL, TABLE, TABLE_CELL, TABLE_ROW, TEXT, VIDEO
866
+ - ONE-OF:
867
+ - name: description.nodes[].appEmbedData | type: AppEmbedData | description: Data for an app embed node.
868
+ - name: description.nodes[].appEmbedData.buttonStyles | type: ButtonStyles | description: Button styling options.
869
+ - name: description.nodes[].appEmbedData.buttonStyles.backgroundColor | type: string | description: Background color as a hexadecimal value.
870
+ - name: description.nodes[].appEmbedData.buttonStyles.backgroundColorHover | type: string | description: Background color as a hexadecimal value (hover state).
871
+ - name: description.nodes[].appEmbedData.buttonStyles.borderColor | type: string | description: Border color as a hexadecimal value.
872
+ - name: description.nodes[].appEmbedData.buttonStyles.borderColorHover | type: string | description: Border color as a hexadecimal value (hover state).
873
+ - name: description.nodes[].appEmbedData.buttonStyles.borderRadius | type: number | description: Border radius in pixels.
874
+ - name: description.nodes[].appEmbedData.buttonStyles.borderWidth | type: number | description: Border width in pixels.
875
+ - name: description.nodes[].appEmbedData.buttonStyles.buttonSize | type: string | description: Button size option, one of `SMALL`, `MEDIUM` or `LARGE`. Defaults to `MEDIUM`.
876
+ - name: description.nodes[].appEmbedData.buttonStyles.buttonText | type: string | description: Text to display on the button.
877
+ - name: description.nodes[].appEmbedData.buttonStyles.textColor | type: string | description: Text color as a hexadecimal value.
878
+ - name: description.nodes[].appEmbedData.buttonStyles.textColorHover | type: string | description: Text color as a hexadecimal value (hover state).
879
+ - name: description.nodes[].appEmbedData.cardStyles | type: CardStyles | description: Card styling options.
880
+ - name: description.nodes[].appEmbedData.cardStyles.alignment | type: Alignment | description: Content alignment. Defaults to `START`.
881
+ enum:
882
+ CENTER: Content centered
883
+ END: Content aligned to end (right in LTR layouts, left in RTL layouts)
884
+ START: Content aligned to start (left in LTR layouts, right in RTL layouts)
885
+ - name: description.nodes[].appEmbedData.cardStyles.backgroundColor | type: string | description: Card background color as a hexadecimal value.
886
+ - name: description.nodes[].appEmbedData.cardStyles.borderColor | type: string | description: Card border color as a hexadecimal value.
887
+ - name: description.nodes[].appEmbedData.cardStyles.borderRadius | type: number | description: Card border radius in pixels.
888
+ - name: description.nodes[].appEmbedData.cardStyles.borderWidth | type: number | description: Card border width in pixels.
889
+ - name: description.nodes[].appEmbedData.cardStyles.textColor | type: string | description: Text color as a hexadecimal value.
890
+ - name: description.nodes[].appEmbedData.cardStyles.titleColor | type: string | description: Title text color as a hexadecimal value.
891
+ - name: description.nodes[].appEmbedData.cardStyles.titlePriceLayout | type: Layout | description: Layout for title and price. Defaults to `STACKED`.
892
+ enum:
893
+ SIDE_BY_SIDE: Elements arranged horizontally
894
+ STACKED: Elements stacked vertically
895
+ - name: description.nodes[].appEmbedData.cardStyles.type | type: Type | description: Card type. Defaults to `CONTAINED`.
896
+ enum:
897
+ CONTAINED: Card with visible border and background
898
+ FRAMELESS: Card without visible border
899
+ - name: description.nodes[].appEmbedData.containerData | type: PluginContainerData | description: Styling for the app embed's container.
900
+ - name: description.nodes[].appEmbedData.containerData.alignment | type: PluginContainerDataAlignment | description: The node's alignment within its container.
901
+ enum:
902
+ CENTER: Center Alignment
903
+ LEFT: Left Alignment
904
+ RIGHT: Right Alignment
905
+ - name: description.nodes[].appEmbedData.containerData.height | type: Height | description: The height of the node when it's displayed.
906
+ - name: description.nodes[].appEmbedData.containerData.height.custom | type: string | description: A custom height value in pixels.
907
+ - name: description.nodes[].appEmbedData.containerData.spoiler | type: Spoiler | description: Spoiler cover settings for the node.
908
+ - name: description.nodes[].appEmbedData.containerData.spoiler.buttonText | type: string | description: The text for the button used to remove the spoiler cover.
909
+ - name: description.nodes[].appEmbedData.containerData.spoiler.description | type: string | description: The description displayed on top of the spoiler cover.
910
+ - name: description.nodes[].appEmbedData.containerData.spoiler.enabled | type: boolean | description: Sets whether the spoiler cover is enabled for this node. Defaults to `false`.
911
+ - name: description.nodes[].appEmbedData.containerData.textWrap | type: boolean | description: Sets whether text should wrap around this node when it's displayed. If `textWrap` is `false`, the node takes up the width of its container. Defaults to `true` for all node types except 'DIVIVDER' where it defaults to `false`.
912
+ - name: description.nodes[].appEmbedData.containerData.width | type: PluginContainerDataWidth | description: The width of the node when it's displayed.
913
+ - ONE-OF:
914
+ - name: description.nodes[].appEmbedData.containerData.width.custom | type: string | description: A custom width value in pixels.
915
+ - name: description.nodes[].appEmbedData.containerData.width.size | type: WidthType | description: One of the following predefined width options: `CONTENT`: The width of the container matches the content width. `SMALL`: A small width. `ORIGINAL`: For `imageData` containers only. The width of the container matches the original image width. `FULL_WIDTH`: For `imageData` containers only. The image container takes up the full width of the screen.
916
+ enum:
917
+ CONTENT: Width matches the content width
918
+ FULL_WIDTH: coast-to-coast display
919
+ ORIGINAL: Width will match the original asset width
920
+ SMALL: Small Width
921
+ - name: description.nodes[].appEmbedData.hideButton | type: boolean | description: Whether to hide the button.
922
+ - name: description.nodes[].appEmbedData.hideDateTime | type: boolean | description: Whether to hide the date and time (Event).
923
+ - name: description.nodes[].appEmbedData.hideDescription | type: boolean | description: Whether to hide the description (Event and Booking).
924
+ - name: description.nodes[].appEmbedData.hideDuration | type: boolean | description: Whether to hide the duration (Booking).
925
+ - name: description.nodes[].appEmbedData.hideImage | type: boolean | description: Whether to hide the image.
926
+ - name: description.nodes[].appEmbedData.hideLocation | type: boolean | description: Whether to hide the location (Event).
927
+ - name: description.nodes[].appEmbedData.hidePrice | type: boolean | description: Whether to hide the price.
928
+ - name: description.nodes[].appEmbedData.hideRibbon | type: boolean | description: Whether to hide the ribbon.
929
+ - name: description.nodes[].appEmbedData.hideTitle | type: boolean | description: Whether to hide the title.
930
+ - name: description.nodes[].appEmbedData.image | type: V1Media | description: An image for the embedded content.
931
+ - name: description.nodes[].appEmbedData.image.duration | type: number | description: Media duration in seconds. Only relevant for audio and video files.
932
+ - name: description.nodes[].appEmbedData.image.height | type: number | description: Media height in pixels.
933
+ - name: description.nodes[].appEmbedData.image.src | type: FileSource | description: The source for the media's data.
934
+ - name: description.nodes[].appEmbedData.image.src.private | type: boolean | description: Indicates whether the file's source is private. Defaults to `false`.
935
+ - ONE-OF:
936
+ - name: description.nodes[].appEmbedData.image.src.custom | type: string | description: Custom GUID. Use `id` instead.
937
+ - name: description.nodes[].appEmbedData.image.src.id | type: string | description: An GUID that's resolved to a URL by a resolver function.
938
+ - name: description.nodes[].appEmbedData.image.src.url | type: string | description: The absolute URL for the file's source.
939
+ - name: description.nodes[].appEmbedData.image.width | type: number | description: Media width in pixels.
940
+ - name: description.nodes[].appEmbedData.imageStyles | type: ImageStyles | description: Image styling options.
941
+ - name: description.nodes[].appEmbedData.imageStyles.aspectRatio | type: AspectRatio | description: Aspect ratio for the image. Defaults to `SQUARE`.
942
+ enum:
943
+ RECTANGLE: 16:9 aspect ratio
944
+ SQUARE: 1:1 aspect ratio
945
+ - name: description.nodes[].appEmbedData.imageStyles.borderColor | type: string | description: Image border color as a hexadecimal value.
946
+ - name: description.nodes[].appEmbedData.imageStyles.borderRadius | type: number | description: Image border radius in pixels.
947
+ - name: description.nodes[].appEmbedData.imageStyles.borderWidth | type: number | description: Image border width in pixels.
948
+ - name: description.nodes[].appEmbedData.imageStyles.hideImage | type: boolean | description: Whether to hide the image.
949
+ - name: description.nodes[].appEmbedData.imageStyles.imagePosition | type: Position | description: Position of image. Defaults to `START`.
950
+ enum:
951
+ END: Image positioned at the end (right in LTR layouts, left in RTL layouts)
952
+ START: Image positioned at the start (left in LTR layouts, right in RTL layouts)
953
+ TOP: Image positioned at the top
954
+ - name: description.nodes[].appEmbedData.imageStyles.resizing | type: Resizing | description: How the image should be resized. Defaults to `FILL`.
955
+ enum:
956
+ FILL: Fill the container, may crop the image
957
+ FIT: Fit the image within the container
958
+ - name: description.nodes[].appEmbedData.itemId | type: string | description: The GUID of the embedded content.
959
+ - name: description.nodes[].appEmbedData.name | type: string | description: The name of the embedded content.
960
+ - name: description.nodes[].appEmbedData.pricingData | type: PricingData | description: Pricing data for embedded Wix App content.
961
+ - name: description.nodes[].appEmbedData.pricingData.currency | type: string | description: Currency of the value in ISO 4217 format (e.g., "USD", "EUR").
962
+ - name: description.nodes[].appEmbedData.pricingData.discountedValue | type: string | description: Numeric price value as string after discount application (e.g., "15.99").
963
+ - name: description.nodes[].appEmbedData.pricingData.pricingPlanId | type: string | description: Pricing plan GUID.
964
+ - name: description.nodes[].appEmbedData.pricingData.valueFrom | type: string | description: Minimum numeric price value as string (e.g., "10.99").
965
+ - name: description.nodes[].appEmbedData.pricingData.valueTo | type: string | description: Maximum numeric price value as string (e.g., "19.99").
966
+ - name: description.nodes[].appEmbedData.ribbonStyles | type: RibbonStyles | description: Ribbon styling options.
967
+ - name: description.nodes[].appEmbedData.ribbonStyles.backgroundColor | type: string | description: Ribbon background color as a hexadecimal value.
968
+ - name: description.nodes[].appEmbedData.ribbonStyles.borderColor | type: string | description: Ribbon border color as a hexadecimal value.
969
+ - name: description.nodes[].appEmbedData.ribbonStyles.borderRadius | type: number | description: Ribbon border radius in pixels.
970
+ - name: description.nodes[].appEmbedData.ribbonStyles.borderWidth | type: number | description: Ribbon border width in pixels.
971
+ - name: description.nodes[].appEmbedData.ribbonStyles.ribbonPlacement | type: Placement | description: Placement of the ribbon. Defaults to `IMAGE`.
972
+ enum:
973
+ IMAGE: Ribbon placed on the image
974
+ PRODUCT_INFO: Ribbon placed on the product information
975
+ - name: description.nodes[].appEmbedData.ribbonStyles.ribbonText | type: string | description: Text to display on the ribbon.
976
+ - name: description.nodes[].appEmbedData.ribbonStyles.textColor | type: string | description: Ribbon text color as a hexadecimal value.
977
+ - name: description.nodes[].appEmbedData.type | type: AppType | description: The type of Wix App content being embedded.
978
+ enum: BOOKING, EVENT, PRODUCT
979
+ - name: description.nodes[].appEmbedData.url | type: string | description: The URL for the embedded content.
980
+ - ONE-OF:
981
+ - name: description.nodes[].appEmbedData.bookingData | type: BookingData | description: Data for embedded Wix Bookings content.
982
+ - name: description.nodes[].appEmbedData.bookingData.durations | type: string | description: Booking duration in minutes.
983
+ - name: description.nodes[].appEmbedData.eventData | type: EventData | description: Data for embedded Wix Events content.
984
+ - name: description.nodes[].appEmbedData.eventData.location | type: string | description: Event location.
985
+ - name: description.nodes[].appEmbedData.eventData.scheduling | type: string | description: Event schedule.
986
+ - name: description.nodes[].audioData | type: AudioData | description: Data for an audio node.
987
+ - name: description.nodes[].audioData.audio | type: V1Media | description: Audio file details.
988
+ - name: description.nodes[].audioData.authorName | type: string | description: Author name.
989
+ - name: description.nodes[].audioData.containerData | type: PluginContainerData | description: Styling for the audio node's container.
990
+ - name: description.nodes[].audioData.coverImage | type: V1Media | description: Cover image.
991
+ - name: description.nodes[].audioData.disableDownload | type: boolean | description: Sets whether the audio node's download button is disabled. Defaults to `false`.
992
+ - name: description.nodes[].audioData.html | type: string | description: An HTML version of the audio node.
993
+ - name: description.nodes[].audioData.name | type: string | description: Track name.
994
+ - name: description.nodes[].blockquoteData | type: BlockquoteData | description: Data for a block quote node.
995
+ - name: description.nodes[].blockquoteData.indentation | type: number | description: Indentation level from 1-4.
996
+ - name: description.nodes[].bulletedListData | type: BulletedListData | description: Data for a bulleted list node.
997
+ - name: description.nodes[].bulletedListData.indentation | type: number | description: Indentation level from 0-4.
998
+ - name: description.nodes[].bulletedListData.offset | type: number | description: Offset level from 0-4.
999
+ - name: description.nodes[].buttonData | type: ButtonData | description: Data for a button node.
1000
+ - name: description.nodes[].buttonData.containerData | type: PluginContainerData | description: Styling for the button's container.
1001
+ - name: description.nodes[].buttonData.link | type: Link | description: Button link details.
1002
+ - name: description.nodes[].buttonData.styles | type: Styles | description: Styling for the button.
1003
+ - name: description.nodes[].buttonData.styles.backgroundColor | type: string | description: Background color as a hexadecimal value.
1004
+ - name: description.nodes[].buttonData.styles.backgroundColorHover | type: string | description: Background color as a hexadecimal value (hover state).
1005
+ - name: description.nodes[].buttonData.styles.borderColor | type: string | description: Border color as a hexadecimal value.
1006
+ - name: description.nodes[].buttonData.styles.borderColorHover | type: string | description: Border color as a hexadecimal value (hover state).
1007
+ - name: description.nodes[].buttonData.styles.borderRadius | type: number | description: Border radius in pixels.
1008
+ - name: description.nodes[].buttonData.styles.borderWidth | type: number | description: Border width in pixels.
1009
+ - name: description.nodes[].buttonData.styles.buttonSize | type: string | description: Button size option, one of `SMALL`, `MEDIUM` or `LARGE`. Defaults to `MEDIUM`.
1010
+ - name: description.nodes[].buttonData.styles.textColor | type: string | description: Text color as a hexadecimal value.
1011
+ - name: description.nodes[].buttonData.styles.textColorHover | type: string | description: Text color as a hexadecimal value (hover state).
1012
+ - name: description.nodes[].buttonData.text | type: string | description: The text to display on the button.
1013
+ - name: description.nodes[].buttonData.type | type: ButtonDataType | description: The button type.
1014
+ enum:
1015
+ ACTION: Triggers custom action that is defined in plugin configuration by the consumer
1016
+ LINK: Regular link button
1017
+ - name: description.nodes[].captionData | type: CaptionData | description: Data for a caption node.
1018
+ - name: description.nodes[].captionData.textStyle | type: TextStyle | description: none
1019
+ - name: description.nodes[].captionData.textStyle.lineHeight | type: string | description: A CSS `line-height` value for the text expressed as a ratio relative to the font size. For example, if the font size is 20px, a `lineHeight` value of `'1.5'`` results in a line height of 30px.
1020
+ - name: description.nodes[].captionData.textStyle.textAlignment | type: TextAlignment | description: Text alignment. Defaults to `AUTO`.
1021
+ enum:
1022
+ AUTO: browser default, eqivalent to `initial`
1023
+ CENTER: Center align
1024
+ JUSTIFY: Text is spaced to line up its left and right edges to the left and right edges of the line box, except for the last line
1025
+ LEFT: Left align
1026
+ RIGHT: Right align
1027
+ - name: description.nodes[].codeBlockData | type: CodeBlockData | description: Data for a code block node.
1028
+ - name: description.nodes[].codeBlockData.textStyle | type: TextStyle | description: Styling for the code block's text.
1029
+ - name: description.nodes[].collapsibleListData | type: CollapsibleListData | description: Data for a collapsible list node.
1030
+ - name: description.nodes[].collapsibleListData.containerData | type: PluginContainerData | description: Styling for the collapsible list's container.
1031
+ - name: description.nodes[].collapsibleListData.direction | type: Direction | description: The direction of the text in the list. Either left-to-right or right-to-left.
1032
+ enum:
1033
+ LTR: Left-to-right
1034
+ RTL: Right-to-left
1035
+ - name: description.nodes[].collapsibleListData.expandOnlyOne | type: boolean | description: If `true`, only one item can be expanded at a time. Defaults to `false`.
1036
+ - name: description.nodes[].collapsibleListData.initialExpandedItems | type: InitialExpandedItems | description: Sets which items are expanded when the page loads.
1037
+ enum:
1038
+ ALL: All items will expended initally
1039
+ FIRST: First item will be expended initally
1040
+ NONE: All items collapsed initally
1041
+ - name: description.nodes[].collapsibleListData.isQapageData | type: boolean | description: If `true`, The collapsible item will appear in search results as an FAQ.
1042
+ - name: description.nodes[].dividerData | type: DividerData | description: Data for a divider node.
1043
+ - name: description.nodes[].dividerData.alignment | type: DividerDataAlignment | description: Divider alignment.
1044
+ enum:
1045
+ CENTER: Center alignment
1046
+ LEFT: Left alignment
1047
+ RIGHT: Right alignment
1048
+ - name: description.nodes[].dividerData.containerData | type: PluginContainerData | description: Styling for the divider's container.
1049
+ - name: description.nodes[].dividerData.lineStyle | type: LineStyle | description: Divider line style.
1050
+ enum:
1051
+ DASHED: Dashed Line
1052
+ DOTTED: Dotted Line
1053
+ DOUBLE: Double Line
1054
+ SINGLE: Single Line
1055
+ - name: description.nodes[].dividerData.width | type: Width | description: Divider width.
1056
+ enum:
1057
+ LARGE: Large line
1058
+ MEDIUM: Medium line
1059
+ SMALL: Small line
1060
+ - name: description.nodes[].embedData | type: EmbedData | description: Data for an oEmbed node.
1061
+ - name: description.nodes[].embedData.containerData | type: PluginContainerData | description: Styling for the oEmbed node's container.
1062
+ - name: description.nodes[].embedData.oembed | type: Oembed | description: An [oEmbed](https://www.oembed.com) object.
1063
+ - name: description.nodes[].embedData.oembed.authorName | type: string | description: The name of the author or owner of the resource.
1064
+ - name: description.nodes[].embedData.oembed.authorUrl | type: string | description: The URL for the author or owner of the resource.
1065
+ - name: description.nodes[].embedData.oembed.height | type: number | description: The height of the resource specified in the `url` property in pixels.
1066
+ - name: description.nodes[].embedData.oembed.html | type: string | description: HTML for embedding a video player. The HTML should have no padding or margins.
1067
+ - name: description.nodes[].embedData.oembed.providerName | type: string | description: The name of the resource provider.
1068
+ - name: description.nodes[].embedData.oembed.providerUrl | type: string | description: The URL for the resource provider.
1069
+ - name: description.nodes[].embedData.oembed.thumbnailHeight | type: string | description: The height of the resource's thumbnail image. If this property is defined, `thumbnailUrl` and `thumbnailWidth`must also be defined.
1070
+ - name: description.nodes[].embedData.oembed.thumbnailUrl | type: string | description: The URL for a thumbnail image for the resource. If this property is defined, `thumbnailWidth` and `thumbnailHeight` must also be defined.
1071
+ - name: description.nodes[].embedData.oembed.thumbnailWidth | type: string | description: The width of the resource's thumbnail image. If this property is defined, `thumbnailUrl` and `thumbnailHeight` must also be defined.
1072
+ - name: description.nodes[].embedData.oembed.title | type: string | description: Resource title.
1073
+ - name: description.nodes[].embedData.oembed.type | type: string | description: The resource type.
1074
+ - name: description.nodes[].embedData.oembed.url | type: string | description: The source URL for the resource.
1075
+ - name: description.nodes[].embedData.oembed.version | type: string | description: The oEmbed version number. This value must be `1.0`.
1076
+ - name: description.nodes[].embedData.oembed.videoUrl | type: string | description: The URL for an embedded viedo.
1077
+ - name: description.nodes[].embedData.oembed.width | type: number | description: The width of the resource specified in the `url` property in pixels.
1078
+ - name: description.nodes[].embedData.src | type: string | description: Origin asset source.
1079
+ - name: description.nodes[].externalData | type: Record<string, any> | description: Data for a custom external node.
1080
+ - name: description.nodes[].fileData | type: FileData | description: Data for a file node.
1081
+ - name: description.nodes[].fileData.containerData | type: PluginContainerData | description: Styling for the file's container.
1082
+ - name: description.nodes[].fileData.mimeType | type: string | description: File MIME type.
1083
+ - name: description.nodes[].fileData.name | type: string | description: File name.
1084
+ - name: description.nodes[].fileData.path | type: string | description: File path.
1085
+ - name: description.nodes[].fileData.pdfSettings | type: PDFSettings | description: Settings for PDF files.
1086
+ - name: description.nodes[].fileData.pdfSettings.disableDownload | type: boolean | description: Sets whether the PDF download button is disabled. Defaults to `false`.
1087
+ - name: description.nodes[].fileData.pdfSettings.disablePrint | type: boolean | description: Sets whether the PDF print button is disabled. Defaults to `false`.
1088
+ - name: description.nodes[].fileData.pdfSettings.viewMode | type: ViewMode | description: PDF view mode. One of the following: `NONE` : The PDF isn't displayed. `FULL` : A full page view of the PDF is displayed. `MINI` : A mini view of the PDF is displayed.
1089
+ enum:
1090
+ FULL: Full PDF view
1091
+ MINI: Mini PDF view
1092
+ NONE: No PDF view
1093
+ - name: description.nodes[].fileData.sizeInKb | type: string | description: File size in KB.
1094
+ - name: description.nodes[].fileData.src | type: FileSource | description: The source for the file's data.
1095
+ - name: description.nodes[].fileData.type | type: string | description: File type.
1096
+ - name: description.nodes[].galleryData | type: GalleryData | description: Data for a gallery node.
1097
+ - name: description.nodes[].galleryData.containerData | type: PluginContainerData | description: Styling for the gallery's container.
1098
+ - name: description.nodes[].galleryData.disableDownload | type: boolean | description: Sets whether the gallery's download button is disabled. Defaults to `false`.
1099
+ - name: description.nodes[].galleryData.disableExpand | type: boolean | description: Sets whether the gallery's expand button is disabled. Defaults to `false`.
1100
+ - name: description.nodes[].galleryData.items | type: Array<Item> | description: The items in the gallery.
1101
+ - name: description.nodes[].galleryData.items[].altText | type: string | description: Item's alternative text.
1102
+ - name: description.nodes[].galleryData.items[].title | type: string | description: Item title.
1103
+ - ONE-OF:
1104
+ - name: description.nodes[].galleryData.items[].image | type: Image | description: An image item.
1105
+ - name: description.nodes[].galleryData.items[].image.link | type: Link | description: Link details for images that are links.
1106
+ - name: description.nodes[].galleryData.items[].image.media | type: V1Media | description: Image file details.
1107
+ - name: description.nodes[].galleryData.items[].video | type: Video | description: A video item.
1108
+ - name: description.nodes[].galleryData.items[].video.media | type: V1Media | description: Video file details.
1109
+ - name: description.nodes[].galleryData.items[].video.thumbnail | type: V1Media | description: Video thumbnail file details.
1110
+ - name: description.nodes[].galleryData.options | type: GalleryOptions | description: Options for defining the gallery's appearance.
1111
+ - name: description.nodes[].galleryData.options.item | type: ItemStyle | description: Styling for gallery items.
1112
+ - name: description.nodes[].galleryData.options.item.crop | type: Crop | description: Sets how item images are cropped.
1113
+ enum:
1114
+ FILL: Crop to fill
1115
+ FIT: Crop to fit
1116
+ - name: description.nodes[].galleryData.options.item.ratio | type: number | description: Item ratio
1117
+ - name: description.nodes[].galleryData.options.item.spacing | type: number | description: The spacing between items in pixels.
1118
+ - name: description.nodes[].galleryData.options.item.targetSize | type: number | description: Desirable dimension for each item in pixels (behvaior changes according to gallery type)
1119
+ - name: description.nodes[].galleryData.options.layout | type: GalleryOptionsLayout | description: Gallery layout.
1120
+ - name: description.nodes[].galleryData.options.layout.horizontalScroll | type: boolean | description: Sets whether horizontal scroll is enabled. Defaults to `true` unless the layout `type` is set to `GRID` or `COLLAGE`.
1121
+ - name: description.nodes[].galleryData.options.layout.mobileNumberOfColumns | type: number | description: The number of columns to display on mobile screens.
1122
+ - name: description.nodes[].galleryData.options.layout.numberOfColumns | type: number | description: The number of columns to display on full size screens.
1123
+ - name: description.nodes[].galleryData.options.layout.orientation | type: Orientation | description: Gallery orientation.
1124
+ enum:
1125
+ COLUMNS: Columns Orientation
1126
+ ROWS: Rows Orientation
1127
+ - name: description.nodes[].galleryData.options.layout.type | type: LayoutType | description: Gallery layout type.
1128
+ enum:
1129
+ COLLAGE: Collage type
1130
+ COLUMN: Column type
1131
+ FULLSIZE: Fullsize images type
1132
+ GRID: Grid type
1133
+ MAGIC: Magic type
1134
+ MASONRY: Masonry type
1135
+ PANORAMA: Panorama type
1136
+ SLIDER: Slider type
1137
+ SLIDESHOW: Slideshow type
1138
+ THUMBNAIL: Thumbnail type
1139
+ - name: description.nodes[].galleryData.options.thumbnails | type: Thumbnails | description: Styling for gallery thumbnail images.
1140
+ - name: description.nodes[].galleryData.options.thumbnails.placement | type: ThumbnailsAlignment | description: Thumbnail alignment.
1141
+ enum:
1142
+ BOTTOM: Bottom alignment
1143
+ LEFT: Left alignment
1144
+ NONE: No thumbnail
1145
+ RIGHT: Right alignment
1146
+ TOP: Top alignment
1147
+ - name: description.nodes[].galleryData.options.thumbnails.spacing | type: number | description: Spacing between thumbnails in pixels.
1148
+ - name: description.nodes[].gifData | type: GIFData | description: Data for a GIF node.
1149
+ - name: description.nodes[].gifData.containerData | type: PluginContainerData | description: Styling for the GIF's container.
1150
+ - name: description.nodes[].gifData.downsized | type: GIF | description: The source of the downsized GIF.
1151
+ - name: description.nodes[].gifData.downsized.gif | type: string | description: GIF format URL.
1152
+ - name: description.nodes[].gifData.downsized.mp4 | type: string | description: MP4 format URL.
1153
+ - name: description.nodes[].gifData.downsized.still | type: string | description: Thumbnail URL.
1154
+ - name: description.nodes[].gifData.gifType | type: GIFType | description: Type of GIF (Sticker or NORMAL). Defaults to `NORMAL`.
1155
+ enum: NORMAL, STICKER
1156
+ - name: description.nodes[].gifData.height | type: number | description: Height in pixels.
1157
+ - name: description.nodes[].gifData.original | type: GIF | description: The source of the full size GIF.
1158
+ - name: description.nodes[].gifData.width | type: number | description: Width in pixels.
1159
+ - name: description.nodes[].headingData | type: HeadingData | description: Data for a heading node.
1160
+ - name: description.nodes[].headingData.indentation | type: number | description: Indentation level from 1-4.
1161
+ - name: description.nodes[].headingData.level | type: number | description: Heading level from 1-6.
1162
+ - name: description.nodes[].headingData.textStyle | type: TextStyle | description: Styling for the heading text.
1163
+ - name: description.nodes[].htmlData | type: HTMLData | description: Data for an embedded HTML node.
1164
+ - name: description.nodes[].htmlData.autoHeight | type: boolean | description: If container height is aligned with its content height. Defaults to `true`.
1165
+ - name: description.nodes[].htmlData.containerData | type: PluginContainerData | description: Styling for the HTML node's container. Height property is irrelevant for HTML embeds when autoHeight is set to `true`.
1166
+ - name: description.nodes[].htmlData.source | type: Source | description: The type of HTML code.
1167
+ enum: ADSENSE, AI, HTML
1168
+ - ONE-OF:
1169
+ - name: description.nodes[].htmlData.html | type: string | description: The HTML code for the node.
1170
+ - name: description.nodes[].htmlData.isAdsense | type: boolean | description: Whether this is an AdSense element. Use `source` instead.
1171
+ - name: description.nodes[].htmlData.url | type: string | description: The URL for the HTML code for the node.
1172
+ - name: description.nodes[].imageData | type: ImageData | description: Data for an image node.
1173
+ - name: description.nodes[].imageData.altText | type: string | description: Image's alternative text.
1174
+ - name: description.nodes[].imageData.containerData | type: PluginContainerData | description: Styling for the image's container.
1175
+ - name: description.nodes[].imageData.decorative | type: boolean | description: Sets whether the image is decorative and does not need an explanation. Defaults to `false`.
1176
+ - name: description.nodes[].imageData.disableDownload | type: boolean | description: Sets whether the image's download button is disabled. Defaults to `false`.
1177
+ - name: description.nodes[].imageData.disableExpand | type: boolean | description: Sets whether the image expands to full screen when clicked. Defaults to `false`.
1178
+ - name: description.nodes[].imageData.image | type: V1Media | description: Image file details.
1179
+ - name: description.nodes[].imageData.link | type: Link | description: Link details for images that are links.
1180
+ - name: description.nodes[].imageData.styles | type: ImageDataStyles | description: Styling for the image.
1181
+ - name: description.nodes[].imageData.styles.border | type: StylesBorder | description: Border attributes.
1182
+ - name: description.nodes[].imageData.styles.border.color | type: string | description: Border color as a hexadecimal value.
1183
+ - name: description.nodes[].imageData.styles.border.radius | type: number | description: Border radius in pixels.
1184
+ - name: description.nodes[].imageData.styles.border.width | type: number | description: Border width in pixels.
1185
+ - name: description.nodes[].layoutCellData | type: LayoutCellData | description: Data for a cell node.
1186
+ - name: description.nodes[].layoutCellData.colSpan | type: number | description: Size of the cell in 12 columns grid.
1187
+ - name: description.nodes[].layoutData | type: LayoutData | description: Data for a layout node. Reserved for future use.
1188
+ - name: description.nodes[].layoutData.backdropColor | type: string | description: Backdrop color as a hexadecimal value.
1189
+ - name: description.nodes[].layoutData.backdropImage | type: BackgroundImage | description: Backdrop image.radius in pixels.
1190
+ - name: description.nodes[].layoutData.backdropImage.media | type: V1Media | description: Background image.
1191
+ - name: description.nodes[].layoutData.backdropImage.opacity | type: number | description: Background image opacity.
1192
+ - name: description.nodes[].layoutData.backdropImage.position | type: ImagePosition | description: Position of background. Defaults to `CENTER`.
1193
+ enum:
1194
+ BOTTOM: Image positioned at the center bottom
1195
+ BOTTOM_LEFT: Image positioned at the bottom left
1196
+ BOTTOM_RIGHT: Image positioned at the bottom right
1197
+ CENTER: Image positioned at the center
1198
+ CENTER_LEFT: Image positioned on the left
1199
+ CENTER_RIGHT: Image positioned on the right
1200
+ TOP: Image positioned at the center top
1201
+ TOP_LEFT: Image positioned at the top left
1202
+ TOP_RIGHT: Image positioned at the top right
1203
+ - name: description.nodes[].layoutData.backdropImage.scaling | type: Scaling | description: Background image scaling.
1204
+ enum:
1205
+ AUTO: Auto image scaling
1206
+ CONTAIN: Contain image scaling
1207
+ COVER: Cover image scaling
1208
+ - name: description.nodes[].layoutData.backdropPaddingBottom | type: number | description: Backdrop bottom padding
1209
+ - name: description.nodes[].layoutData.backdropPaddingTop | type: number | description: Backdrop top padding.
1210
+ - name: description.nodes[].layoutData.backgroundColor | type: string | description: Background color as a hexadecimal value.
1211
+ - name: description.nodes[].layoutData.backgroundImage | type: BackgroundImage | description: Background image.
1212
+ - name: description.nodes[].layoutData.borderColor | type: string | description: Border color as a hexadecimal value.
1213
+ - name: description.nodes[].layoutData.borderRadius | type: number | description: Border
1214
+ - name: description.nodes[].layoutData.borderWidth | type: number | description: Border width in pixels.
1215
+ - name: description.nodes[].layoutData.cellPadding | type: Array<number> | description: Padding in pixels for cells. Follows CSS order: top, right, bottom, left
1216
+ - name: description.nodes[].layoutData.cellVerticalAlignment | type: VerticalAlignmentAlignment | description: Vertical alignment for the cell's items.
1217
+ enum:
1218
+ BOTTOM: Bottom alignment
1219
+ MIDDLE: Middle alignment
1220
+ TOP: Top alignment
1221
+ - name: description.nodes[].layoutData.containerData | type: PluginContainerData | description: Styling for the layout's container.
1222
+ - name: description.nodes[].layoutData.gap | type: number | description: Horizontal and vertical gap between columns
1223
+ - name: description.nodes[].layoutData.responsivenessBehaviour | type: ResponsivenessBehaviour | description: Responsiveness behaviour of columns when responsiveness applies. Either stacks or wrappers.
1224
+ enum:
1225
+ STACK: Stacking of columns
1226
+ WRAP: Wrapping of columns
1227
+ - name: description.nodes[].layoutData.responsivenessBreakpoint | type: number | description: Size in pixels when responsiveness_behaviour applies
1228
+ - name: description.nodes[].linkPreviewData | type: LinkPreviewData | description: Data for a link preview node.
1229
+ - name: description.nodes[].linkPreviewData.containerData | type: PluginContainerData | description: Styling for the link preview's container.
1230
+ - name: description.nodes[].linkPreviewData.description | type: string | description: Preview description.
1231
+ - name: description.nodes[].linkPreviewData.html | type: string | description: The preview content as HTML.
1232
+ - name: description.nodes[].linkPreviewData.link | type: Link | description: Link details.
1233
+ - name: description.nodes[].linkPreviewData.styles | type: LinkPreviewDataStyles | description: Styling for the link preview.
1234
+ - name: description.nodes[].linkPreviewData.styles.backgroundColor | type: string | description: Background color as a hexadecimal value.
1235
+ - name: description.nodes[].linkPreviewData.styles.borderColor | type: string | description: Border color as a hexadecimal value.
1236
+ - name: description.nodes[].linkPreviewData.styles.borderRadius | type: number | description: Border radius in pixels.
1237
+ - name: description.nodes[].linkPreviewData.styles.borderWidth | type: number | description: Border width in pixels.
1238
+ - name: description.nodes[].linkPreviewData.styles.linkColor | type: string | description: Link color as a hexadecimal value.
1239
+ - name: description.nodes[].linkPreviewData.styles.subtitleColor | type: string | description: Subtitle color as a hexadecimal value.
1240
+ - name: description.nodes[].linkPreviewData.styles.thumbnailPosition | type: StylesPosition | description: Position of thumbnail. Defaults to `START`.
1241
+ enum:
1242
+ END: Thumbnail positioned at the end (right in LTR layouts, left in RTL layouts)
1243
+ HIDDEN: Thumbnail hidden and not displayed
1244
+ START: Thumbnail positioned at the start (left in LTR layouts, right in RTL layouts)
1245
+ TOP: Thumbnail positioned at the top
1246
+ - name: description.nodes[].linkPreviewData.styles.titleColor | type: string | description: Title color as a hexadecimal value.
1247
+ - name: description.nodes[].linkPreviewData.thumbnailUrl | type: string | description: Preview thumbnail URL.
1248
+ - name: description.nodes[].linkPreviewData.title | type: string | description: Preview title.
1249
+ - name: description.nodes[].mapData | type: MapData | description: none
1250
+ - name: description.nodes[].mapData.containerData | type: PluginContainerData | description: Styling for the map's container.
1251
+ - name: description.nodes[].mapData.mapSettings | type: MapSettings | description: Map settings.
1252
+ - name: description.nodes[].mapData.mapSettings.address | type: string | description: The address to display on the map.
1253
+ - name: description.nodes[].mapData.mapSettings.draggable | type: boolean | description: Sets whether the map is draggable.
1254
+ - name: description.nodes[].mapData.mapSettings.initialZoom | type: number | description: Initial zoom value.
1255
+ - name: description.nodes[].mapData.mapSettings.lat | type: number | description: Location latitude.
1256
+ - name: description.nodes[].mapData.mapSettings.lng | type: number | description: Location longitude.
1257
+ - name: description.nodes[].mapData.mapSettings.locationName | type: string | description: Location name.
1258
+ - name: description.nodes[].mapData.mapSettings.mapType | type: MapType | description: Map type. `HYBRID` is a combination of the `ROADMAP` and `SATELLITE` map types.
1259
+ enum:
1260
+ HYBRID: Hybrid map type
1261
+ ROADMAP: Roadmap map type
1262
+ SATELITE: Satellite map type
1263
+ TERRAIN: Terrain map type
1264
+ - name: description.nodes[].mapData.mapSettings.marker | type: boolean | description: Sets whether the location marker is visible.
1265
+ - name: description.nodes[].mapData.mapSettings.streetViewControl | type: boolean | description: Sets whether street view control is enabled.
1266
+ - name: description.nodes[].mapData.mapSettings.viewModeControl | type: boolean | description: Sets whether view mode control is enabled.
1267
+ - name: description.nodes[].mapData.mapSettings.zoomControl | type: boolean | description: Sets whether zoom control is enabled.
1268
+ - name: description.nodes[].orderedListData | type: OrderedListData | description: Data for an ordered list node.
1269
+ - name: description.nodes[].orderedListData.indentation | type: number | description: Indentation level from 0-4.
1270
+ - name: description.nodes[].orderedListData.offset | type: number | description: Offset level from 0-4.
1271
+ - name: description.nodes[].orderedListData.start | type: number | description: List start number.
1272
+ - name: description.nodes[].paragraphData | type: ParagraphData | description: Data for a paragraph node.
1273
+ - name: description.nodes[].paragraphData.indentation | type: number | description: Indentation level from 1-4.
1274
+ - name: description.nodes[].paragraphData.level | type: number | description: Paragraph level
1275
+ - name: description.nodes[].paragraphData.textStyle | type: TextStyle | description: Styling for the paragraph text.
1276
+ - name: description.nodes[].pollData | type: PollData | description: Data for a poll node.
1277
+ - name: description.nodes[].pollData.containerData | type: PluginContainerData | description: Styling for the poll's container.
1278
+ - name: description.nodes[].pollData.design | type: Design | description: Styling for the poll and voting options.
1279
+ - name: description.nodes[].pollData.design.options | type: OptionDesign | description: Styling for voting options.
1280
+ - name: description.nodes[].pollData.design.options.borderRadius | type: number | description: Border radius in pixels.
1281
+ - name: description.nodes[].pollData.design.poll | type: PollDesign | description: Styling for the poll.
1282
+ - name: description.nodes[].pollData.design.poll.background | type: Background | description: Background styling.
1283
+ - name: description.nodes[].pollData.design.poll.background.type | type: BackgroundType | description: Background type. For each option, include the relevant details.
1284
+ enum:
1285
+ COLOR: Color background type
1286
+ GRADIENT: Gradiant background type
1287
+ IMAGE: Image background type
1288
+ - ONE-OF:
1289
+ - name: description.nodes[].pollData.design.poll.background.color | type: string | description: The background color as a hexademical value.
1290
+ - name: description.nodes[].pollData.design.poll.background.gradient | type: Gradient | description: Details for a gradient background.
1291
+ - name: description.nodes[].pollData.design.poll.background.gradient.angle | type: number | description: The gradient angle in degrees.
1292
+ - name: description.nodes[].pollData.design.poll.background.gradient.lastColor | type: string | description: The end color as a hexademical value.
1293
+ - name: description.nodes[].pollData.design.poll.background.gradient.startColor | type: string | description: The start color as a hexademical value.
1294
+ - name: description.nodes[].pollData.design.poll.background.image | type: V1Media | description: An image to use for the background.
1295
+ - name: description.nodes[].pollData.design.poll.borderRadius | type: number | description: Border radius in pixels.
1296
+ - name: description.nodes[].pollData.layout | type: PollDataLayout | description: Layout settings for the poll and voting options.
1297
+ - name: description.nodes[].pollData.layout.options | type: OptionLayout | description: Voting otpions layout settings.
1298
+ - name: description.nodes[].pollData.layout.options.enableImage | type: boolean | description: Sets whether to display option images. Defaults to `false`.
1299
+ - name: description.nodes[].pollData.layout.poll | type: PollLayout | description: Poll layout settings.
1300
+ - name: description.nodes[].pollData.layout.poll.direction | type: PollLayoutDirection | description: The direction of the text displayed in the voting options. Text can be displayed either right-to-left or left-to-right.
1301
+ enum:
1302
+ LTR: Left-to-right
1303
+ RTL: Right-to-left
1304
+ - name: description.nodes[].pollData.layout.poll.enableImage | type: boolean | description: Sets whether to display the main poll image. Defaults to `false`.
1305
+ - name: description.nodes[].pollData.layout.poll.type | type: PollLayoutType | description: The layout for displaying the voting options.
1306
+ enum:
1307
+ GRID: Grid
1308
+ LIST: List
1309
+ - name: description.nodes[].pollData.poll | type: Poll | description: Poll data.
1310
+ - name: description.nodes[].pollData.poll.creatorId | type: string | description: Poll creator GUID.
1311
+ - name: description.nodes[].pollData.poll.id | type: string | description: Poll GUID.
1312
+ - name: description.nodes[].pollData.poll.image | type: V1Media | description: Main poll image.
1313
+ - name: description.nodes[].pollData.poll.options | type: Array<Option> | description: Voting options.
1314
+ - name: description.nodes[].pollData.poll.options[].id | type: string | description: Option GUID.
1315
+ - name: description.nodes[].pollData.poll.options[].image | type: V1Media | description: The image displayed with the option.
1316
+ - name: description.nodes[].pollData.poll.options[].title | type: string | description: Option title.
1317
+ - name: description.nodes[].pollData.poll.settings | type: PollSettings | description: The poll's permissions and display settings.
1318
+ - name: description.nodes[].pollData.poll.settings.permissions | type: Permissions | description: Permissions settings for voting.
1319
+ - name: description.nodes[].pollData.poll.settings.permissions.allowMultipleVotes | type: boolean | description: Sets whether one voter can vote multiple times. Defaults to `false`.
1320
+ - name: description.nodes[].pollData.poll.settings.permissions.view | type: ViewRole | description: Sets who can view the poll results.
1321
+ enum:
1322
+ CREATOR: Only Poll creator can view the results
1323
+ EVERYONE: Anyone can see the results, even if one didn't vote
1324
+ VOTERS: Anyone who voted can see the results
1325
+ - name: description.nodes[].pollData.poll.settings.permissions.vote | type: VoteRole | description: Sets who can vote.
1326
+ enum:
1327
+ ALL: Anyone
1328
+ SITE_MEMBERS: Logged in member
1329
+ - name: description.nodes[].pollData.poll.settings.showVoters | type: boolean | description: Sets whether voters are displayed in the vote results. Defaults to `true`.
1330
+ - name: description.nodes[].pollData.poll.settings.showVotesCount | type: boolean | description: Sets whether the vote count is displayed. Defaults to `true`.
1331
+ - name: description.nodes[].pollData.poll.title | type: string | description: Poll title.
1332
+ - name: description.nodes[].tableCellData | type: TableCellData | description: Data for a table cell node.
1333
+ - name: description.nodes[].tableCellData.borderColors | type: BorderColors | description: The cell's border colors.
1334
+ - name: description.nodes[].tableCellData.borderColors.bottom | type: string | description: Bottom border color as a hexadecimal value.
1335
+ - name: description.nodes[].tableCellData.borderColors.left | type: string | description: Left border color as a hexadecimal value.
1336
+ - name: description.nodes[].tableCellData.borderColors.right | type: string | description: Right border color as a hexadecimal value.
1337
+ - name: description.nodes[].tableCellData.borderColors.top | type: string | description: Top border color as a hexadecimal value.
1338
+ - name: description.nodes[].tableCellData.borderWidths | type: BorderWidths | description: The cell's border widths.
1339
+ - name: description.nodes[].tableCellData.borderWidths.bottom | type: number | description: Bottom border width in pixels.
1340
+ - name: description.nodes[].tableCellData.borderWidths.left | type: number | description: Left border width in pixels.
1341
+ - name: description.nodes[].tableCellData.borderWidths.right | type: number | description: Right border width in pixels.
1342
+ - name: description.nodes[].tableCellData.borderWidths.top | type: number | description: Top border width in pixels.
1343
+ - name: description.nodes[].tableCellData.cellStyle | type: CellStyle | description: Styling for the cell's background color and text alignment.
1344
+ - name: description.nodes[].tableCellData.cellStyle.backgroundColor | type: string | description: Cell background color as a hexadecimal value.
1345
+ - name: description.nodes[].tableCellData.cellStyle.verticalAlignment | type: VerticalAlignment | description: Vertical alignment for the cell's text.
1346
+ enum:
1347
+ BOTTOM: Bottom alignment
1348
+ MIDDLE: Middle alignment
1349
+ TOP: Top alignment
1350
+ - name: description.nodes[].tableCellData.colspan | type: number | description: Defines how many columns the cell spans. Default: 1.
1351
+ - name: description.nodes[].tableCellData.rowspan | type: number | description: Defines how many rows the cell spans. Default: 1.
1352
+ - name: description.nodes[].tableData | type: TableData | description: Data for a table node.
1353
+ - name: description.nodes[].tableData.cellPadding | type: Array<number> | description: Padding in pixels for cells. Follows CSS order: top, right, bottom, left.
1354
+ - name: description.nodes[].tableData.cellSpacing | type: number | description: The spacing between cells in pixels. Defaults to `0`.
1355
+ - name: description.nodes[].tableData.columnHeader | type: boolean | description: Sets whether the table's first column is a header. Defaults to `false`.
1356
+ - name: description.nodes[].tableData.containerData | type: PluginContainerData | description: Styling for the table's container.
1357
+ - name: description.nodes[].tableData.dimensions | type: Dimensions | description: The table's dimensions.
1358
+ - name: description.nodes[].tableData.dimensions.colsMinWidth | type: Array<number> | description: An array representing the minimum width of each column in pixels.
1359
+ - name: description.nodes[].tableData.dimensions.colsWidthRatio | type: Array<number> | description: An array representing relative width of each column in relation to the other columns.
1360
+ - name: description.nodes[].tableData.dimensions.rowsHeight | type: Array<number> | description: An array representing the height of each row in pixels.
1361
+ - name: description.nodes[].tableData.rowHeader | type: boolean | description: Sets whether the table's first row is a header. Defaults to `false`.
1362
+ - name: description.nodes[].textData | type: TextData | description: Data for a text node. Used to apply decorations to text.
1363
+ - name: description.nodes[].textData.decorations | type: Array<Decoration> | description: The decorations to apply.
1364
+ - name: description.nodes[].textData.text | type: string | description: The text to apply decorations to.
1365
+ - name: description.nodes[].videoData | type: VideoData | description: Data for a video node.
1366
+ - name: description.nodes[].videoData.containerData | type: PluginContainerData | description: Styling for the video's container.
1367
+ - name: description.nodes[].videoData.disableDownload | type: boolean | description: Sets whether the video's download button is disabled. Defaults to `false`.
1368
+ - name: description.nodes[].videoData.options | type: PlaybackOptions | description: Video options.
1369
+ - name: description.nodes[].videoData.options.autoPlay | type: boolean | description: Sets whether the media will automatically start playing.
1370
+ - name: description.nodes[].videoData.options.playInLoop | type: boolean | description: Sets whether media's will be looped.
1371
+ - name: description.nodes[].videoData.options.showControls | type: boolean | description: Sets whether media's controls will be shown.
1372
+ - name: description.nodes[].videoData.thumbnail | type: V1Media | description: Video thumbnail details.
1373
+ - name: description.nodes[].videoData.title | type: string | description: Video title.
1374
+ - name: description.nodes[].videoData.video | type: V1Media | description: Video details.
1375
+ - name: directCategoriesInfo | type: ProductCategoriesInfo | description: List of categories that directly contain this product. Updated automatically when a product is added/removed from a category, when an item is moved within a category, or when a category is deleted. > **Note:** Returned only when you pass `"DIRECT_CATEGORIES_INFO"` to the `fields` array in Products API requests.
1376
+ - name: extendedFields | type: ExtendedFields | description: Custom extended fields for the product object. [Extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields) must be configured in the app dashboard before they can be accessed with API calls.
1377
+ - name: extendedFields.namespaces | type: Record<string, undefined> | description: Extended field data. Each key corresponds to the namespace of the app that created the extended fields. The value of each key is structured according to the schema defined when the extended fields were configured. You can only access fields for which you have the appropriate permissions. Learn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields).
1378
+ - name: handle | type: string | description: A unique human-friendly identifier for the product. Unlike the product GUID, the handle can be set by the user to ensure consistency across multiple platforms. In case handle wasn't given, the handle will be automatically generated.
1379
+ - name: infoSections | type: Array<InfoSection> | description: Product info section. + Pass `infoSection.uniqueName`, `infoSection.title`, and `infoSection.description` to add a new info section while creating a product. + Pass an existing info section's `id` or `uniqueName` to assign that info section to the product.
1380
+ - name: infoSections[]._id | type: string | description: Info section GUID.
1381
+ - name: infoSections[].description | type: RichContent | description: Info section description using rich content. > **Note:** Returned only when you pass `"INFO_SECTION_DESCRIPTION"` to the `fields` array in Products API requests. <widget src="https://apps.wix.com/_serverless/ricos-playground-services/goto/api-component" plugins="indent.emoji.divider.codeBlock.file.gallery.giphy.image.table.link.textHighlight.textColor" exampleid="7dc9240e-d548-417a-abcf-0291b68b4303"> <a href="https://dev.wix.com/docs/ricos/api-reference/ricos-document">See Ricos document reference</a> </widget>
1382
+ - name: infoSections[].plainDescription | type: string | description: Info section description in HTML. When provided on create/update, this string must be a valid HTML. It will then be converted to rich content. `plainDescription` is ignored when value is also passed to the `description` field. > **Note:** Returned only when you pass `"INFO_SECTION_PLAIN_DESCRIPTION"` to the `fields` array in Products API requests.
1383
+ - name: infoSections[].title | type: string | description: Info section title. > **Note:** Returned only when you pass `"INFO_SECTION"` to the `fields` array in Products API requests.
1384
+ - name: infoSections[].uniqueName | type: string | description: Info section unique name. > **Note:** Returned only when you pass `"INFO_SECTION"` to the `fields` array in Products API requests.
1385
+ - name: inventory | type: Inventory | description: Product inventory info.
1386
+ - name: inventory.availabilityStatus | type: InventoryAvailabilityStatus | description: Current availability status.
1387
+ enum:
1388
+ IN_STOCK: All variants are in stock and available for purchase.
1389
+ OUT_OF_STOCK: All variants are out of stock.
1390
+ PARTIALLY_OUT_OF_STOCK: Some variants are out of stock and some are in stock and available for purchase.
1391
+ UNKNOWN_AVAILABILITY_STATUS
1392
+ - name: inventory.preorderAvailability | type: ProductPreorderAvailability | description: Preorder availability status.
1393
+ enum:
1394
+ ALL_VARIANTS: All the product variants are available for preorder.
1395
+ NO_VARIANTS: None of the product variants are available for preorder.
1396
+ SOME_VARIANTS: Some of the product variants are available for preorder.
1397
+ UNKNOWN_PREORDER_AVAILABILITY_STATUS
1398
+ - name: inventory.preorderStatus | type: PreorderStatus | description: Current preorder status.
1399
+ enum:
1400
+ DISABLED: All variants are disabled for preorder.
1401
+ ENABLED: All variants are enabled for preorder.
1402
+ PARTIALLY_ENABLED: Some variants are disabled and some are enabled for preorder.
1403
+ UNKNOWN_PREORDER_STATUS
1404
+ - name: mainCategoryId | type: string | description: The GUID of the product's primary direct category, which defines the product’s breadcrumbs path. For example, if the product's main category is "T-Shirts" (which is a subcategory of "Clothing"), the breadcrumbs path will be "Clothing > T-Shirts".
1405
+ - name: media | type: Media | description: Product media items.
1406
+ - name: media.itemsInfo | type: MediaItemsInfo | description: All media items. > **Note:** Returned only when you pass `"MEDIA_ITEMS_INFO"` to the `fields` array in Products API requests.
1407
+ - name: media.itemsInfo.items | type: Array<ProductMedia> | description: All media items (images, videos etc) associated with this product.
1408
+ - name: media.itemsInfo.items[].altText | type: string | description: Image alt text.
1409
+ - name: media.itemsInfo.items[].displayName | type: string | description: Media display name. Allows to override the default media name. Can be passed only when `setBy: url`.
1410
+ - name: media.itemsInfo.items[].mediaType | type: MediaType | description: Media type.
1411
+ enum:
1412
+ IMAGE: Image media type.
1413
+ UNKNOWN_MEDIA_TYPE, VIDEO: Video media type.
1414
+ - name: media.itemsInfo.items[].thumbnail | type: Thumbnail | description: Media thumbnail. > **Note:** Returned only when you pass `"THUMBNAIL"` to the `fields` array in Products API requests.
1415
+ - name: media.itemsInfo.items[].thumbnail.altText | type: string | description: Thumbnail alt text.
1416
+ - name: media.itemsInfo.items[].thumbnail.height | type: number | description: Thumbnail height.
1417
+ - name: media.itemsInfo.items[].thumbnail.url | type: string | description: Thumbnail url.
1418
+ - name: media.itemsInfo.items[].thumbnail.width | type: number | description: Thumbnail width.
1419
+ - name: media.itemsInfo.items[].uploadId | type: string | description: GUID used to upload media to Wix Media Manager.
1420
+ - ONE-OF:
1421
+ - name: media.itemsInfo.items[]._id | type: string | description: Set media by GUID of an existing file in Wix Media Manager.
1422
+ - name: media.itemsInfo.items[].url | type: string | description: Set media using an external media URL.
1423
+ - ONE-OF:
1424
+ - name: media.itemsInfo.items[].image | type: string | description: Product image.
1425
+ - name: media.itemsInfo.items[].video | type: string | description: Product video.
1426
+ - name: media.main | type: ProductMedia | description: Main media (image, video, etc.) associated with this product.
1427
+ - name: modifiers | type: Array<ConnectedModifier> | description: Product modifiers. Allows the customer to customize product, e.g. select Color, Size and so on similarly to `options` but with one main difference - `modifiers` never generate any variants.
1428
+ - name: modifiers[]._id | type: string | description: GUID of a customization with `customizationType: MODIFIER`.
1429
+ - name: modifiers[].mandatory | type: boolean | description: Whether customer input is required for this modifier.
1430
+ - name: modifiers[].modifierRenderType | type: ModifierRenderType | description: Modifier render type.
1431
+ enum:
1432
+ FREE_TEXT: Free text.
1433
+ SWATCH_CHOICES: Swatch choices.
1434
+ TEXT_CHOICES: Text choices.
1435
+ UNKNOWN_MODIFIER_RENDER_TYPE: Not implemented.
1436
+ - name: modifiers[].name | type: string | description: Modifier title.
1437
+ - ONE-OF:
1438
+ - name: modifiers[].choicesSettings | type: ModifierChoicesSettings | description: Choice settings.
1439
+ - name: modifiers[].choicesSettings.choices | type: Array<ConnectedModifierChoice> | description: List of modifier choices.
1440
+ - name: modifiers[].choicesSettings.choices[].addedPrice | type: string | description: Added price.
1441
+ - name: modifiers[].choicesSettings.choices[].choiceId | type: string | description: Choice GUID.
1442
+ - name: modifiers[].choicesSettings.choices[].choiceType | type: ChoiceType | description: Choice type.
1443
+ enum:
1444
+ CHOICE_TEXT: Text choice.
1445
+ IMAGE: Image choice.
1446
+ MULTIPLE_COLORS: Multiple colors choice.
1447
+ ONE_COLOR: Single color choice.
1448
+ UNKNOWN_CHOICE_TYPE
1449
+ - name: modifiers[].choicesSettings.choices[].key | type: string | description: Modifier key. Used for eCommerce integration.
1450
+ - name: modifiers[].choicesSettings.choices[].linkedMedia | type: Array<ProductMedia> | description: Product media.
1451
+ - name: modifiers[].choicesSettings.choices[].name | type: string | description: Choice name.
1452
+ - ONE-OF:
1453
+ - name: modifiers[].choicesSettings.choices[].colorCode | type: string | description: Color code in HEX format, [as described by MDN](https://developer.mozilla.org/en-US/docs/Web/CSS/hex-color).
1454
+ - name: modifiers[].freeTextSettings | type: FreeTextSettings | description: Free text modifier settings.
1455
+ - name: modifiers[].freeTextSettings.defaultAddedPrice | type: string | description: Default amount to be added to the product's price.
1456
+ - name: modifiers[].freeTextSettings.maxCharCount | type: number | description: Maximum number of characters.
1457
+ - name: modifiers[].freeTextSettings.minCharCount | type: number | description: Minimum number of characters.
1458
+ - name: modifiers[].freeTextSettings.title | type: string | description: Title of the text to be input by the customer.
1459
+ - name: name | type: string | description: Product name. Translatable.
1460
+ - name: options | type: Array<ConnectedOption> | description: Product options. Allows the customer to customize the product. For example, selecting color, size, and more. Always generates variants: every variant must have exactly one choice related to each option. Since options and variants tightly coupled and rely on each other they usually should be provided together in all operations.
1461
+ - name: options[]._id | type: string | description: GUID of a customization with `customizationType: PRODUCT_OPTION`.
1462
+ - name: options[].name | type: string | description: Option name.
1463
+ - name: options[].optionRenderType | type: ProductOptionRenderType | description: Option render type.
1464
+ enum:
1465
+ SWATCH_CHOICES: Swatch choices.
1466
+ TEXT_CHOICES: Text choices.
1467
+ UNKNOWN_OPTION_RENDER_TYPE: Not implemented.
1468
+ - ONE-OF:
1469
+ - name: options[].choicesSettings | type: ChoicesSettings | description: Choices settings.
1470
+ - name: options[].choicesSettings.choices | type: Array<ConnectedOptionChoice> | description: List of available choices for the option.
1471
+ - name: options[].choicesSettings.choices[].choiceId | type: string | description: The id of the choice.
1472
+ - name: options[].choicesSettings.choices[].choiceType | type: ChoiceType | description: The type of this choice.
1473
+ - name: options[].choicesSettings.choices[].inStock | type: boolean | description: A flag that indicates if at least one variant with this choice is in stock in the default store's location. For example, a product with 'Color' and 'Size' options with variants: [Blue, Small] which is out of stock and [Red Large] which is in stock. For choice 'Blue' ths flag will be 'false' and for 'Red' the flag will be true
1474
+ - name: options[].choicesSettings.choices[].linkedMedia | type: Array<ProductMedia> | description: Product media overrides. When not empty only these images will be shown when such choices selected by customer. Otherwise all images of product. When several choices from different options selected only media filter present in `media_overrides` of ALL choices will be shown. For example if Color:red has images 1,2,3 and Material:Silk has images 2,3,5 then only images 2,3 will be shown when both of them selected.
1475
+ - name: options[].choicesSettings.choices[].name | type: string | description: Choice name.
1476
+ - name: options[].choicesSettings.choices[].visible | type: boolean | description: Whether at least one variant with this choice is visible. Default: `false`
1477
+ - ONE-OF:
1478
+ - name: options[].choicesSettings.choices[].colorCode | type: string | description: Color code in HEX format, [as described by MDN](https://developer.mozilla.org/en-US/docs/Web/CSS/hex-color).
1479
+ - name: plainDescription | type: string | description: Product description in HTML. + When provided on create/update, this string must be a valid HTML. It will then be converted to rich content. + `plainDescription` is ignored when value is also passed to the `description` field. > **Note:** Returned only when you pass `"PLAIN_DESCRIPTION"` to the `fields` array in Products API requests.
1480
+ - name: productType | type: ProductType | description: Product type. When passing `productType: PHYSICAL`, you must also pass `physicalProperties`.
1481
+ enum:
1482
+ DIGITAL: Digital product.
1483
+ PHYSICAL: Physical product.
1484
+ UNKNOWN_PRODUCT_TYPE: Not implemented.
1485
+ - name: revision | type: string | description: Revision number, which increments by 1 each time the product is updated. To prevent conflicting changes, the current revision must be passed when updating the product. Ignored when creating a product.
1486
+ - name: ribbon | type: Ribbon | description: Product ribbon. + Pass `ribbon.name` to add a new ribbon while creating a product. + Pass an existing ribbon's `id` or `name` to assign that ribbon to the product.
1487
+ - name: ribbon._id | type: string | description: Ribbon GUID.
1488
+ - name: ribbon.name | type: string | description: Ribbon name.
1489
+ - name: seoData | type: SeoSchema | description: Product SEO data.
1490
+ - name: seoData.settings | type: Settings | description: SEO general settings.
1491
+ - name: seoData.settings.keywords | type: Array<Keyword> | description: User-selected keyword terms for a specific page.
1492
+ - name: seoData.settings.keywords[].isMain | type: boolean | description: Whether the keyword is the main focus keyword.
1493
+ - name: seoData.settings.keywords[].origin | type: string | description: The source that added the keyword terms to the SEO settings.
1494
+ - name: seoData.settings.keywords[].term | type: string | description: Keyword value.
1495
+ - name: seoData.settings.preventAutoRedirect | type: boolean | description: Whether the [automatical redirect visits](https://support.wix.com/en/article/customizing-your-pages-seo-settings-in-the-seo-panel) from the old URL to the new one is enabled. Default: `false` (automatical redirect is enabled).
1496
+ - name: seoData.tags | type: Array<Tag> | description: SEO tag information.
1497
+ - name: seoData.tags[].children | type: string | description: SEO tag inner content. For example, `<title> inner content </title>`.
1498
+ - name: seoData.tags[].custom | type: boolean | description: Whether the tag is a [custom tag](https://support.wix.com/en/article/adding-additional-meta-tags-to-your-sites-pages).
1499
+ - name: seoData.tags[].disabled | type: boolean | description: Whether the tag is disabled. If the tag is disabled, people can't find your page when searching for this phrase in search engines.
1500
+ - name: seoData.tags[].meta | type: Record<string, any> | description: SEO tag metadata. For example, `{"height": 300, "width": 240}`.
1501
+ - name: seoData.tags[].props | type: Record<string, any> | description: A `{"key": "value"}` pair object where each SEO tag property (`"name"`, `"content"`, `"rel"`, `"href"`) contains a value. For example: `{"name": "description", "content": "the description itself"}`.
1502
+ - name: seoData.tags[].type | type: string | description: SEO tag type. Supported values: `title`, `meta`, `script`, `link`.
1503
+ - name: slug | type: string | description: Product slug. If not provided, the slug is autogenerated based on the product name.
1504
+ - name: subscriptionDetails | type: SubscriptionDetails | description: Product subscriptions.
1505
+ - name: subscriptionDetails.allowOneTimePurchases | type: boolean | description: Whether to allow one-time purchases in addition to subscription-based purchases. Default: `false`
1506
+ - name: subscriptionDetails.subscriptions | type: Array<Subscription> | description: Subscriptions.
1507
+ - name: subscriptionDetails.subscriptions[]._id | type: string | description: Subscription GUID.
1508
+ - name: subscriptionDetails.subscriptions[].description | type: string | description: Subscription description.
1509
+ - name: subscriptionDetails.subscriptions[].discount | type: SubscriptionDiscount | description: Discount info (optional). For example, a $20 discount would be `amount: 20`, `type: AMOUNT`.
1510
+ - name: subscriptionDetails.subscriptions[].discount.type | type: DiscountType | description: Discount type.
1511
+ enum:
1512
+ AMOUNT: Discount by a specific amount.
1513
+ PERCENT: Discount by a percentage.
1514
+ UNKNOWN_DISCOUNT
1515
+ - ONE-OF:
1516
+ - name: subscriptionDetails.subscriptions[].discount.amountOff | type: string | description: Amount to discount from the variant discounted_price.
1517
+ - name: subscriptionDetails.subscriptions[].discount.percentOff | type: number | description: Percentage to discount from variant discounted_price.
1518
+ - name: subscriptionDetails.subscriptions[].frequency | type: SubscriptionFrequency | description: Frequency of recurring payment. For example, if `frequency: MONTH` and `billingCycles: 6`; payment will be made monthly for 6 months.
1519
+ enum: DAY, MONTH, UNDEFINED, WEEK, YEAR
1520
+ - name: subscriptionDetails.subscriptions[].interval | type: number | description: Interval of recurring payment. Default: `1`. For example, if `frequency: MONTH`, `billingCycles: 3` and `interval: 2`; payment will be made every 2 months for a total of 6 months.
1521
+ - name: subscriptionDetails.subscriptions[].title | type: string | description: Subscription title.
1522
+ - name: subscriptionDetails.subscriptions[].visible | type: boolean | description: Whether the subscription is visible to site visitors. Default: `true`
1523
+ - ONE-OF:
1524
+ - name: subscriptionDetails.subscriptions[].autoRenewal | type: boolean | description: Whether subscription is renewed automatically at the end of each period. Cannot be `false`, instead set `billingCycles`.
1525
+ - name: subscriptionDetails.subscriptions[].billingCycles | type: number | description: Number of billing cycles before subscription ends.
1526
+ - name: taxGroupId | type: string | description: Tax group GUID.
1527
+ - name: url | type: string | description: URL to the site's product page. > **Note:** Returned only when you pass `"URL"` to the `fields` array in Products API requests.
1528
+ - name: variantSummary | type: VariantSummary | description: The total number of variants for the product.
1529
+ - name: variantSummary.variantCount | type: number | description: The total number of variants for the product.
1530
+ - name: variantsInfo | type: VariantsInfo | description: Product variants. Each variant must reference all product options via its `choices` array. Each choice references an option using `optionChoiceNames` for all requests.
1531
+ - name: variantsInfo.variants | type: Array<Variant> | description: List of related variants.
1532
+ - name: variantsInfo.variants[]._id | type: string | description: Variant GUID.
1533
+ - name: variantsInfo.variants[].barcode | type: string | description: Variant barcode.
1534
+ - name: variantsInfo.variants[].choices | type: Array<OptionChoice> | description: List of choices that define the product's variant, which requires exactly one choice per product option. Must use `optionChoiceNames` in all requests this field is required. Empty only for default variants of unmanaged products.
1535
+ - name: variantsInfo.variants[].choices[].optionChoiceIds | type: OptionChoiceIds | description: Option and choice GUIDs. These match the GUIDs of the option and choice from the product's options field.
1536
+ - name: variantsInfo.variants[].choices[].optionChoiceIds.choiceId | type: string | description: Choice GUID.
1537
+ - name: variantsInfo.variants[].choices[].optionChoiceIds.optionId | type: string | description: Option GUID.
1538
+ - name: variantsInfo.variants[].choices[].optionChoiceNames | type: OptionChoiceNames | description: Option and choice names. This needs to be used in all requests `OptionChoice` is needed, and all `OptionChoiceNames` fields are required. > **Note:** Returned only when you pass `"VARIANT_OPTION_CHOICE_NAMES"` to the `fields` array in Products API requests.
1539
+ - name: variantsInfo.variants[].choices[].optionChoiceNames.choiceName | type: string | description: Choice name.
1540
+ - name: variantsInfo.variants[].choices[].optionChoiceNames.optionName | type: string | description: Option name.
1541
+ - name: variantsInfo.variants[].choices[].optionChoiceNames.renderType | type: ProductOptionRenderType | description: Render type.
1542
+ - name: variantsInfo.variants[].inventoryStatus | type: InventoryStatus | description: Variant inventory status.
1543
+ - name: variantsInfo.variants[].inventoryStatus.inStock | type: boolean | description: Whether the variant is in stock.
1544
+ - name: variantsInfo.variants[].inventoryStatus.preorderEnabled | type: boolean | description: Whether preorder is enabled for this variant.
1545
+ - name: variantsInfo.variants[].media | type: ProductMedia | description: Variant media.
1546
+ - name: variantsInfo.variants[].price | type: PriceInfo | description: Variant price. | required: true
1547
+ - name: variantsInfo.variants[].price.actualPrice | type: FixedMonetaryAmount | description: Variant price. Must be greater or equal to 0. | required: true
1548
+ - name: variantsInfo.variants[].price.compareAtPrice | type: FixedMonetaryAmount | description: The compare-at-price represents the original price of a product before any discount. It is optional and should only be set if a discount applies. When set, it must be higher than the current price to reflect accurate savings.
1549
+ - name: variantsInfo.variants[].revenueDetails | type: RevenueDetails | description: Variant revenue details. > **Note:** Returned only when the following conditions are met: > + You pass `"MERCHANT_DATA"` to the `fields` array in Products API requests. > + Your app has the required `SCOPE.STORES.PRODUCT_READ_ADMIN` permission scope.
1550
+ - name: variantsInfo.variants[].revenueDetails.cost | type: FixedMonetaryAmount | description: Item cost.
1551
+ - name: variantsInfo.variants[].revenueDetails.profit | type: FixedMonetaryAmount | description: Profit. Calculated by reducing `cost` from `discountedPrice`.
1552
+ - name: variantsInfo.variants[].revenueDetails.profitMargin | type: number | description: Profit Margin. Calculated by dividing `profit` by `discountedPrice`. The result is rounded to 4 decimal places.
1553
+ - name: variantsInfo.variants[].sku | type: string | description: Variant SKU (stock keeping unit).
1554
+ - name: variantsInfo.variants[].subscriptionPricesInfo | type: SubscriptionPricesInfo | description: Subscription prices calculated by applying subscription discount to the variant `price.actual_price`. > **Note:** Returned only when you pass `"SUBSCRIPTION_PRICES_INFO"` to the `fields` array in Products API requests.
1555
+ - name: variantsInfo.variants[].subscriptionPricesInfo.subscriptionPrices | type: Array<SubscriptionPrice> | description: Subscription prices.
1556
+ - name: variantsInfo.variants[].subscriptionPricesInfo.subscriptionPrices[].price | type: FixedMonetaryAmount | description: Subscription price calculated by applying subscription discount to the variant `price.actual_price`
1557
+ - name: variantsInfo.variants[].subscriptionPricesInfo.subscriptionPrices[].pricePerUnit | type: SubscriptionPricePerUnit | description: Price per unit info.
1558
+ - name: variantsInfo.variants[].subscriptionPricesInfo.subscriptionPrices[].pricePerUnit.description | type: string | description: Price per unit description. > **Note:** Returned only when you pass `"CURRENCY"` to the `fields` array in Products API requests.
1559
+ - name: variantsInfo.variants[].subscriptionPricesInfo.subscriptionPrices[].pricePerUnit.value | type: string | description: Calculated value of price per unit. Takes into account `pricePerUnit` settings of parent product, `pricePerUnit` settings of this variant, and the variant subscription price.
1560
+ - name: variantsInfo.variants[].subscriptionPricesInfo.subscriptionPrices[].subscriptionId | type: string | description: Subscription GUID.
1561
+ - name: variantsInfo.variants[].visible | type: boolean | description: Whether the variant is visible to site visitors. Default: `true`
1562
+ - ONE-OF:
1563
+ - name: variantsInfo.variants[].digitalProperties | type: VariantDigitalProperties | description: Digital properties. Must be passed when `productType: DIGITAL`
1564
+ - name: variantsInfo.variants[].digitalProperties.digitalFile | type: SecuredMedia | description: Digital file which will be downloaded by customer after successful purchase.
1565
+ - name: variantsInfo.variants[].digitalProperties.digitalFile._id | type: string | description: Media GUID in media manager.
1566
+ - name: variantsInfo.variants[].digitalProperties.digitalFile.fileName | type: string | description: Original file name.
1567
+ - name: variantsInfo.variants[].digitalProperties.digitalFile.fileSize | type: string | description: Original file size.
1568
+ - name: variantsInfo.variants[].digitalProperties.digitalFile.fileType | type: FileType | description: File type.
1569
+ enum:
1570
+ SECURE_ARCHIVE: Secure archive file.
1571
+ SECURE_DOCUMENT: Secure document file.
1572
+ SECURE_MUSIC: Secure music file.
1573
+ SECURE_PICTURE: Secure picture file.
1574
+ SECURE_VIDEO: Secure video file.
1575
+ UNSPECIFIED: Unspecified file type.
1576
+ - name: variantsInfo.variants[].physicalProperties | type: VariantPhysicalProperties | description: Physical properties. Must be passed when `productType: PHYSICAL`
1577
+ - name: variantsInfo.variants[].physicalProperties.pricePerUnit | type: PricePerUnit | description: Price per unit info, in order to show price per unit on the product page. For example if one sells cheese and defines 100g here then we know that buying this variant buyer receives 100g of cheese. But on product page price will be displayed for units defined on product level. See `pricePerUnit.value` to understand how it's calculated.
1578
+ - name: variantsInfo.variants[].physicalProperties.pricePerUnit.description | type: string | description: Price per unit description. > **Note:** Returned only when you pass `"CURRENCY"` to the `fields` array in Products API requests.
1579
+ - name: variantsInfo.variants[].physicalProperties.pricePerUnit.settings | type: PricePerUnitSettings | description: Price per unit data for this variant. `measurementUnit` value must correspond to the measurement unit set on the product.
1580
+ - name: variantsInfo.variants[].physicalProperties.pricePerUnit.settings.measurementUnit | type: MeasurementUnit | description: Measurement unit. For example, to define price per 100 grams, set this field to "G".
1581
+ enum: CBM, CL, CM, FLOZ, FT, G, GAL, IN, KG, L, LB, M, MG, ML, MM, OZ, PT, QT, SQFT, SQM, UNSPECIFIED, YD
1582
+ - name: variantsInfo.variants[].physicalProperties.pricePerUnit.settings.quantity | type: number | description: Quantity. For example, to define price per per 100 grams, set this field to `100`.
1583
+ - name: variantsInfo.variants[].physicalProperties.pricePerUnit.value | type: string | description: Calculated value of price per unit. Takes into account `pricePerUnit` settings of parent product, of this variant, and discounted price of variant. For example if discounted price is 2$, product's price per unit setting is 1 Kg, variant price per unit setting is 0.5 Kg then this value is 4$ (means variant weight is 0.5 Kg and it costs 2$ but we want to show price per 1 Kg so we show 4$).
1584
+ - name: variantsInfo.variants[].physicalProperties.weight | type: number | description: Variant shipping weight. product.physicalProperties.shipping_weight_range values are taken from here.
1585
+ - name: visible | type: boolean | description: Whether the product is visible to site visitors on the site. Default: `true`
1586
+ - name: visibleInPos | type: boolean | description: Whether the product is visible in POS (point of sale). Default: `true` > **Note:** Always `false` for `productType: DIGITAL`.
1587
+ - ONE-OF:
1588
+ - name: physicalProperties | type: PhysicalProperties | description: Physical properties. Required when `productType: PHYSICAL`.
1589
+ - name: physicalProperties.deliveryProfileId | type: string | description: Delivery profile GUID.
1590
+ - name: physicalProperties.fulfillerId | type: string | description: Fulfiller GUID.
1591
+ - name: physicalProperties.pricePerUnit | type: PricePerUnitSettings | description: Price per unit settings. > **Note:** Use this field only when relevant. For example, for products that are sold by weight, volume, or length.
1592
+ - name: physicalProperties.pricePerUnitRange | type: PricePerUnitRange | description: Product price per unit range. The minimum and maximum price per unit of all the variants.
1593
+ - name: physicalProperties.pricePerUnitRange.maxValue | type: PricePerUnitRangePricePerUnit | description: Maximum price per unit across all variants.
1594
+ - name: physicalProperties.pricePerUnitRange.maxValue.description | type: string | description: Price per unit info in the format of variant specific data / product setting, for example €4.00 / 1 Kg. > **Note:** This field is returned by the API only when you pass `fields: "CURRENCY"` in a request.
1595
+ - name: physicalProperties.pricePerUnitRange.maxValue.value | type: string | description: Calculated value of price per unit. Takes into account pricePerUnit settings of product and variants and price of variants. For example if discounted price is 2$, product's price per unit setting is 1 Kg, variant price per unit setting is 0.5 Kg then this value is 4$ (means variant weight is 0.5 Kg and it costs 2$ but we want to show price per 1 Kg so we show 4$).
1596
+ - name: physicalProperties.pricePerUnitRange.minValue | type: PricePerUnitRangePricePerUnit | description: Minimum price per unit across all variants.
1597
+ - name: physicalProperties.shippingWeightRange | type: WeightRange | description: Product shipping weight range - Calculated from the lightest and heaviest variant shipping weights.
1598
+ - name: physicalProperties.shippingWeightRange.maxValue | type: number | description: Maximum weight across all variants associated with this product.
1599
+ - name: physicalProperties.shippingWeightRange.minValue | type: number | description: Minimum weight across all variants associated with this product.
1600
+ - name: physicalProperties.weightMeasurementUnitInfo | type: WeightMeasurementUnitInfo | description: Weight measurement unit. > **Note:** Returned only when you pass `"WEIGHT_MEASUREMENT_UNIT_INFO"` to the `fields` array in Products API requests.
1601
+ - name: physicalProperties.weightMeasurementUnitInfo.weightMeasurementUnit | type: WeightUnit | description: Weight measurement unit.
1602
+ enum:
1603
+ KG: Kilograms.
1604
+ LB: Pounds.
1605
+ UNSPECIFIED_WEIGHT_UNIT: Weight unit can't be classified due to an error.
1606
+ </type_definition>
1607
+ </stores_productsV3_updateProduct>