@teemill/product-catalog 1.47.0 → 1.49.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +115 -2
- package/api.ts +113 -1
- package/base.ts +1 -1
- package/common.ts +1 -1
- package/configuration.ts +1 -1
- package/dist/api.d.ts +66 -1
- package/dist/api.js +74 -1
- package/dist/base.d.ts +1 -1
- package/dist/base.js +1 -1
- package/dist/common.d.ts +1 -1
- package/dist/common.js +1 -1
- package/dist/configuration.d.ts +1 -1
- package/dist/configuration.js +1 -1
- package/dist/esm/api.d.ts +66 -1
- package/dist/esm/api.js +74 -1
- package/dist/esm/base.d.ts +1 -1
- package/dist/esm/base.js +1 -1
- package/dist/esm/common.d.ts +1 -1
- package/dist/esm/common.js +1 -1
- package/dist/esm/configuration.d.ts +1 -1
- package/dist/esm/configuration.js +1 -1
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/docs/AdditionalFile.md +20 -0
- package/docs/ApiError.md +22 -0
- package/docs/Application.md +28 -0
- package/docs/ApplicationMockup.md +22 -0
- package/docs/ApplicationSet.md +38 -0
- package/docs/ApplicationSet1.md +22 -0
- package/docs/ApplicationSetRecord.md +26 -0
- package/docs/ApplicationSetsApi.md +317 -0
- package/docs/ApplicationSetsResponse.md +22 -0
- package/docs/Attribute.md +26 -0
- package/docs/AttributeThumbnail.md +23 -0
- package/docs/Attributes1Inner.md +22 -0
- package/docs/CreateApplication.md +24 -0
- package/docs/CreateApplicationSetRequest.md +30 -0
- package/docs/CreateApplicationSetRequestRecordsInner.md +22 -0
- package/docs/CreateApplicationSetRequestRecordsInnerAttributesInner.md +22 -0
- package/docs/CreateBundleProduct.md +54 -0
- package/docs/CreateProduct.md +56 -0
- package/docs/CreateProductAdditionalFilesInner.md +20 -0
- package/docs/CreateProductImagesInner.md +22 -0
- package/docs/CreateProductRequest.md +64 -0
- package/docs/CreateProductVariant.md +36 -0
- package/docs/CreateProductVariantImagesInner.md +20 -0
- package/docs/CreateProductVideosInner.md +20 -0
- package/docs/DuplicateProducts202Response.md +20 -0
- package/docs/DuplicateProductsRequest.md +22 -0
- package/docs/ExportProducts202Response.md +20 -0
- package/docs/Image.md +35 -0
- package/docs/ImageFile.md +22 -0
- package/docs/ImportProducts200Response.md +20 -0
- package/docs/Location.md +22 -0
- package/docs/MetaField.md +23 -0
- package/docs/OptimisationHistoryItem.md +22 -0
- package/docs/Price.md +23 -0
- package/docs/Product.md +86 -0
- package/docs/ProductAdditionalFilesInner.md +22 -0
- package/docs/ProductApplicationSetsInner.md +24 -0
- package/docs/ProductWarehouseProduct.md +22 -0
- package/docs/ProductsApi.md +626 -0
- package/docs/ProductsResponse.md +22 -0
- package/docs/SEOMetadata.md +23 -0
- package/docs/SeoOptimiseProducts202Response.md +20 -0
- package/docs/SeoOptimiseProductsRequest.md +22 -0
- package/docs/Stock.md +22 -0
- package/docs/TargetSearchPhraseData.md +22 -0
- package/docs/UpdateApplicationSetRequest.md +30 -0
- package/docs/UpdateApplicationSetRequestRecordsInner.md +22 -0
- package/docs/UpdateApplicationSetRequestRecordsInnerAttributesInner.md +22 -0
- package/docs/UpdateProductRequest.md +64 -0
- package/docs/UpdateProductRequestIntegrationConnectionsInner.md +22 -0
- package/docs/UpdateProductsRequest.md +20 -0
- package/docs/UpdateProductsRequestProductsInner.md +42 -0
- package/docs/UpdateProductsRequestProductsInnerIntegrationConnectionsInner.md +22 -0
- package/docs/UpdateProductsRequestProductsInnerSeoMetadata.md +22 -0
- package/docs/UpdateProductsRequestProductsInnerVariantsInner.md +30 -0
- package/docs/UpdateProductsRequestProductsInnerVariantsInnerAttributesInner.md +22 -0
- package/docs/UpdateProductsRequestProductsInnerVariantsInnerIntegrationConnectionsInner.md +22 -0
- package/docs/UpdateProductsRequestProductsInnerVariantsInnerRetailPrice.md +23 -0
- package/docs/UpdateProductsRequestProductsInnerVariantsInnerSalePrice.md +23 -0
- package/docs/Variant.md +58 -0
- package/docs/VariantIntegrationConnectionsInner.md +22 -0
- package/docs/VariantProduct.md +22 -0
- package/docs/VariantsApi.md +138 -0
- package/docs/VariantsResponse.md +22 -0
- package/docs/Video.md +31 -0
- package/docs/VideoFile.md +20 -0
- package/index.ts +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,626 @@
|
|
|
1
|
+
# ProductsApi
|
|
2
|
+
|
|
3
|
+
All URIs are relative to *https://api.podos.io*
|
|
4
|
+
|
|
5
|
+
|Method | HTTP request | Description|
|
|
6
|
+
|------------- | ------------- | -------------|
|
|
7
|
+
|[**createProduct**](#createproduct) | **POST** /v1/catalog/products | Create product|
|
|
8
|
+
|[**deleteProduct**](#deleteproduct) | **DELETE** /v1/catalog/products/{productId} | Delete catalog product|
|
|
9
|
+
|[**duplicateProducts**](#duplicateproducts) | **POST** /v1/catalog/products/duplicate | Duplicate products.|
|
|
10
|
+
|[**exportProducts**](#exportproducts) | **GET** /v1/catalog/products/export | Export products|
|
|
11
|
+
|[**getProduct**](#getproduct) | **GET** /v1/catalog/products/{productId} | Get product|
|
|
12
|
+
|[**importProducts**](#importproducts) | **POST** /v1/catalog/products/import | Import products|
|
|
13
|
+
|[**listProducts**](#listproducts) | **GET** /v1/catalog/products | List products|
|
|
14
|
+
|[**seoOptimiseProducts**](#seooptimiseproducts) | **POST** /v1/catalog/products/ai-seo-optimise | AI SEO optimise products.|
|
|
15
|
+
|[**updateProduct**](#updateproduct) | **PATCH** /v1/catalog/products/{productId} | Update product|
|
|
16
|
+
|[**updateProducts**](#updateproducts) | **PATCH** /v1/catalog/products | Update products|
|
|
17
|
+
|
|
18
|
+
# **createProduct**
|
|
19
|
+
> Product createProduct()
|
|
20
|
+
|
|
21
|
+
Creates a new catalog product based on a given warehouse product with the variants and design applications provided. To select a warehouse product to base this product on, use the GFN Catalog API to list available options.
|
|
22
|
+
|
|
23
|
+
### Example
|
|
24
|
+
|
|
25
|
+
```typescript
|
|
26
|
+
import {
|
|
27
|
+
ProductsApi,
|
|
28
|
+
Configuration,
|
|
29
|
+
CreateProductRequest
|
|
30
|
+
} from '@teemill/product-catalog';
|
|
31
|
+
|
|
32
|
+
const configuration = new Configuration();
|
|
33
|
+
const apiInstance = new ProductsApi(configuration);
|
|
34
|
+
|
|
35
|
+
let project: string; //What project it is (default to undefined)
|
|
36
|
+
let createProductRequest: CreateProductRequest; // (optional)
|
|
37
|
+
|
|
38
|
+
const { status, data } = await apiInstance.createProduct(
|
|
39
|
+
project,
|
|
40
|
+
createProductRequest
|
|
41
|
+
);
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
### Parameters
|
|
45
|
+
|
|
46
|
+
|Name | Type | Description | Notes|
|
|
47
|
+
|------------- | ------------- | ------------- | -------------|
|
|
48
|
+
| **createProductRequest** | **CreateProductRequest**| | |
|
|
49
|
+
| **project** | [**string**] | What project it is | defaults to undefined|
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
### Return type
|
|
53
|
+
|
|
54
|
+
**Product**
|
|
55
|
+
|
|
56
|
+
### Authorization
|
|
57
|
+
|
|
58
|
+
[session-oauth](../README.md#session-oauth), [api-key](../README.md#api-key)
|
|
59
|
+
|
|
60
|
+
### HTTP request headers
|
|
61
|
+
|
|
62
|
+
- **Content-Type**: application/json
|
|
63
|
+
- **Accept**: application/json
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
### HTTP response details
|
|
67
|
+
| Status code | Description | Response headers |
|
|
68
|
+
|-------------|-------------|------------------|
|
|
69
|
+
|**201** | Successfully retrieved a product. | - |
|
|
70
|
+
|**400** | Failed validation. | - |
|
|
71
|
+
|**401** | Not authorised to access this resource. | - |
|
|
72
|
+
|**403** | Refuse to authorize. | - |
|
|
73
|
+
|**404** | Resource not found. | - |
|
|
74
|
+
|**500** | Unknown server error. | - |
|
|
75
|
+
|
|
76
|
+
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
|
|
77
|
+
|
|
78
|
+
# **deleteProduct**
|
|
79
|
+
> deleteProduct()
|
|
80
|
+
|
|
81
|
+
Deletes a catalog product
|
|
82
|
+
|
|
83
|
+
### Example
|
|
84
|
+
|
|
85
|
+
```typescript
|
|
86
|
+
import {
|
|
87
|
+
ProductsApi,
|
|
88
|
+
Configuration
|
|
89
|
+
} from '@teemill/product-catalog';
|
|
90
|
+
|
|
91
|
+
const configuration = new Configuration();
|
|
92
|
+
const apiInstance = new ProductsApi(configuration);
|
|
93
|
+
|
|
94
|
+
let project: string; //What project it is (default to undefined)
|
|
95
|
+
let productId: string; //Product\'s unique identifier (default to undefined)
|
|
96
|
+
|
|
97
|
+
const { status, data } = await apiInstance.deleteProduct(
|
|
98
|
+
project,
|
|
99
|
+
productId
|
|
100
|
+
);
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
### Parameters
|
|
104
|
+
|
|
105
|
+
|Name | Type | Description | Notes|
|
|
106
|
+
|------------- | ------------- | ------------- | -------------|
|
|
107
|
+
| **project** | [**string**] | What project it is | defaults to undefined|
|
|
108
|
+
| **productId** | [**string**] | Product\'s unique identifier | defaults to undefined|
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
### Return type
|
|
112
|
+
|
|
113
|
+
void (empty response body)
|
|
114
|
+
|
|
115
|
+
### Authorization
|
|
116
|
+
|
|
117
|
+
[session-oauth](../README.md#session-oauth), [api-key](../README.md#api-key)
|
|
118
|
+
|
|
119
|
+
### HTTP request headers
|
|
120
|
+
|
|
121
|
+
- **Content-Type**: Not defined
|
|
122
|
+
- **Accept**: application/json
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
### HTTP response details
|
|
126
|
+
| Status code | Description | Response headers |
|
|
127
|
+
|-------------|-------------|------------------|
|
|
128
|
+
|**204** | Product deleted | - |
|
|
129
|
+
|**400** | Failed validation. | - |
|
|
130
|
+
|**401** | Not authorised to access this resource. | - |
|
|
131
|
+
|**403** | Refuse to authorize. | - |
|
|
132
|
+
|**404** | Refuse to authorize. | - |
|
|
133
|
+
|**500** | Unknown server error. | - |
|
|
134
|
+
|
|
135
|
+
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
|
|
136
|
+
|
|
137
|
+
# **duplicateProducts**
|
|
138
|
+
> DuplicateProducts202Response duplicateProducts()
|
|
139
|
+
|
|
140
|
+
Duplicate products by a set of given IDs to a set of given project IDs.
|
|
141
|
+
|
|
142
|
+
### Example
|
|
143
|
+
|
|
144
|
+
```typescript
|
|
145
|
+
import {
|
|
146
|
+
ProductsApi,
|
|
147
|
+
Configuration,
|
|
148
|
+
DuplicateProductsRequest
|
|
149
|
+
} from '@teemill/product-catalog';
|
|
150
|
+
|
|
151
|
+
const configuration = new Configuration();
|
|
152
|
+
const apiInstance = new ProductsApi(configuration);
|
|
153
|
+
|
|
154
|
+
let project: string; //What project it is (default to undefined)
|
|
155
|
+
let duplicateProductsRequest: DuplicateProductsRequest; //A set of product IDs to duplicate and the project IDs to duplicate them to. (optional)
|
|
156
|
+
|
|
157
|
+
const { status, data } = await apiInstance.duplicateProducts(
|
|
158
|
+
project,
|
|
159
|
+
duplicateProductsRequest
|
|
160
|
+
);
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
### Parameters
|
|
164
|
+
|
|
165
|
+
|Name | Type | Description | Notes|
|
|
166
|
+
|------------- | ------------- | ------------- | -------------|
|
|
167
|
+
| **duplicateProductsRequest** | **DuplicateProductsRequest**| A set of product IDs to duplicate and the project IDs to duplicate them to. | |
|
|
168
|
+
| **project** | [**string**] | What project it is | defaults to undefined|
|
|
169
|
+
|
|
170
|
+
|
|
171
|
+
### Return type
|
|
172
|
+
|
|
173
|
+
**DuplicateProducts202Response**
|
|
174
|
+
|
|
175
|
+
### Authorization
|
|
176
|
+
|
|
177
|
+
[session-oauth](../README.md#session-oauth), [api-key](../README.md#api-key)
|
|
178
|
+
|
|
179
|
+
### HTTP request headers
|
|
180
|
+
|
|
181
|
+
- **Content-Type**: application/json
|
|
182
|
+
- **Accept**: application/json
|
|
183
|
+
|
|
184
|
+
|
|
185
|
+
### HTTP response details
|
|
186
|
+
| Status code | Description | Response headers |
|
|
187
|
+
|-------------|-------------|------------------|
|
|
188
|
+
|**202** | Products queued for duplication. | - |
|
|
189
|
+
|**400** | Failed validation. | - |
|
|
190
|
+
|**401** | Not authorised to access this resource. | - |
|
|
191
|
+
|**403** | Refuse to authorize. | - |
|
|
192
|
+
|**404** | Resource not found. | - |
|
|
193
|
+
|**500** | Unknown server error. | - |
|
|
194
|
+
|
|
195
|
+
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
|
|
196
|
+
|
|
197
|
+
# **exportProducts**
|
|
198
|
+
> File exportProducts()
|
|
199
|
+
|
|
200
|
+
Export the project\'s products and variants as a CSV file.
|
|
201
|
+
|
|
202
|
+
### Example
|
|
203
|
+
|
|
204
|
+
```typescript
|
|
205
|
+
import {
|
|
206
|
+
ProductsApi,
|
|
207
|
+
Configuration
|
|
208
|
+
} from '@teemill/product-catalog';
|
|
209
|
+
|
|
210
|
+
const configuration = new Configuration();
|
|
211
|
+
const apiInstance = new ProductsApi(configuration);
|
|
212
|
+
|
|
213
|
+
let project: string; //What project it is (default to undefined)
|
|
214
|
+
|
|
215
|
+
const { status, data } = await apiInstance.exportProducts(
|
|
216
|
+
project
|
|
217
|
+
);
|
|
218
|
+
```
|
|
219
|
+
|
|
220
|
+
### Parameters
|
|
221
|
+
|
|
222
|
+
|Name | Type | Description | Notes|
|
|
223
|
+
|------------- | ------------- | ------------- | -------------|
|
|
224
|
+
| **project** | [**string**] | What project it is | defaults to undefined|
|
|
225
|
+
|
|
226
|
+
|
|
227
|
+
### Return type
|
|
228
|
+
|
|
229
|
+
**File**
|
|
230
|
+
|
|
231
|
+
### Authorization
|
|
232
|
+
|
|
233
|
+
[session-oauth](../README.md#session-oauth), [api-key](../README.md#api-key)
|
|
234
|
+
|
|
235
|
+
### HTTP request headers
|
|
236
|
+
|
|
237
|
+
- **Content-Type**: Not defined
|
|
238
|
+
- **Accept**: text/csv; charset=utf-8, application/json
|
|
239
|
+
|
|
240
|
+
|
|
241
|
+
### HTTP response details
|
|
242
|
+
| Status code | Description | Response headers |
|
|
243
|
+
|-------------|-------------|------------------|
|
|
244
|
+
|**200** | Returns the CSV export | - |
|
|
245
|
+
|**202** | Export started. When complete, the export will be available for download from a notification within PodOS Dashboard. | - |
|
|
246
|
+
|**400** | Failed validation. | - |
|
|
247
|
+
|**401** | Not authorised to access this resource. | - |
|
|
248
|
+
|**403** | Refuse to authorize. | - |
|
|
249
|
+
|**500** | Unknown server error. | - |
|
|
250
|
+
|
|
251
|
+
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
|
|
252
|
+
|
|
253
|
+
# **getProduct**
|
|
254
|
+
> Product getProduct()
|
|
255
|
+
|
|
256
|
+
Gets a product by a given ID.
|
|
257
|
+
|
|
258
|
+
### Example
|
|
259
|
+
|
|
260
|
+
```typescript
|
|
261
|
+
import {
|
|
262
|
+
ProductsApi,
|
|
263
|
+
Configuration
|
|
264
|
+
} from '@teemill/product-catalog';
|
|
265
|
+
|
|
266
|
+
const configuration = new Configuration();
|
|
267
|
+
const apiInstance = new ProductsApi(configuration);
|
|
268
|
+
|
|
269
|
+
let project: string; //What project it is (default to undefined)
|
|
270
|
+
let productId: string; //Product\'s unique identifier (default to undefined)
|
|
271
|
+
let fields: string; //Filter response fields to only include a subset of the resource. (optional) (default to undefined)
|
|
272
|
+
|
|
273
|
+
const { status, data } = await apiInstance.getProduct(
|
|
274
|
+
project,
|
|
275
|
+
productId,
|
|
276
|
+
fields
|
|
277
|
+
);
|
|
278
|
+
```
|
|
279
|
+
|
|
280
|
+
### Parameters
|
|
281
|
+
|
|
282
|
+
|Name | Type | Description | Notes|
|
|
283
|
+
|------------- | ------------- | ------------- | -------------|
|
|
284
|
+
| **project** | [**string**] | What project it is | defaults to undefined|
|
|
285
|
+
| **productId** | [**string**] | Product\'s unique identifier | defaults to undefined|
|
|
286
|
+
| **fields** | [**string**] | Filter response fields to only include a subset of the resource. | (optional) defaults to undefined|
|
|
287
|
+
|
|
288
|
+
|
|
289
|
+
### Return type
|
|
290
|
+
|
|
291
|
+
**Product**
|
|
292
|
+
|
|
293
|
+
### Authorization
|
|
294
|
+
|
|
295
|
+
[session-oauth](../README.md#session-oauth), [api-key](../README.md#api-key)
|
|
296
|
+
|
|
297
|
+
### HTTP request headers
|
|
298
|
+
|
|
299
|
+
- **Content-Type**: Not defined
|
|
300
|
+
- **Accept**: application/json
|
|
301
|
+
|
|
302
|
+
|
|
303
|
+
### HTTP response details
|
|
304
|
+
| Status code | Description | Response headers |
|
|
305
|
+
|-------------|-------------|------------------|
|
|
306
|
+
|**200** | Successfully retrieved a product. | - |
|
|
307
|
+
|**400** | Failed validation. | - |
|
|
308
|
+
|**401** | Not authorised to access this resource. | - |
|
|
309
|
+
|**403** | Refuse to authorize. | - |
|
|
310
|
+
|**404** | Resource not found. | - |
|
|
311
|
+
|**500** | Unknown server error. | - |
|
|
312
|
+
|
|
313
|
+
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
|
|
314
|
+
|
|
315
|
+
# **importProducts**
|
|
316
|
+
> ImportProducts200Response importProducts()
|
|
317
|
+
|
|
318
|
+
Initiates a product import from a CSV file. The result will be available as a notification within the dashboard.
|
|
319
|
+
|
|
320
|
+
### Example
|
|
321
|
+
|
|
322
|
+
```typescript
|
|
323
|
+
import {
|
|
324
|
+
ProductsApi,
|
|
325
|
+
Configuration
|
|
326
|
+
} from '@teemill/product-catalog';
|
|
327
|
+
|
|
328
|
+
const configuration = new Configuration();
|
|
329
|
+
const apiInstance = new ProductsApi(configuration);
|
|
330
|
+
|
|
331
|
+
let project: string; //What project it is (default to undefined)
|
|
332
|
+
let body: string; //A data URL of a CSV file containing data for one or more products. (optional)
|
|
333
|
+
|
|
334
|
+
const { status, data } = await apiInstance.importProducts(
|
|
335
|
+
project,
|
|
336
|
+
body
|
|
337
|
+
);
|
|
338
|
+
```
|
|
339
|
+
|
|
340
|
+
### Parameters
|
|
341
|
+
|
|
342
|
+
|Name | Type | Description | Notes|
|
|
343
|
+
|------------- | ------------- | ------------- | -------------|
|
|
344
|
+
| **body** | **string**| A data URL of a CSV file containing data for one or more products. | |
|
|
345
|
+
| **project** | [**string**] | What project it is | defaults to undefined|
|
|
346
|
+
|
|
347
|
+
|
|
348
|
+
### Return type
|
|
349
|
+
|
|
350
|
+
**ImportProducts200Response**
|
|
351
|
+
|
|
352
|
+
### Authorization
|
|
353
|
+
|
|
354
|
+
[session-oauth](../README.md#session-oauth), [api-key](../README.md#api-key)
|
|
355
|
+
|
|
356
|
+
### HTTP request headers
|
|
357
|
+
|
|
358
|
+
- **Content-Type**: text/csv
|
|
359
|
+
- **Accept**: application/json
|
|
360
|
+
|
|
361
|
+
|
|
362
|
+
### HTTP response details
|
|
363
|
+
| Status code | Description | Response headers |
|
|
364
|
+
|-------------|-------------|------------------|
|
|
365
|
+
|**200** | CSV file was accepted; products will be imported asynchronously. | - |
|
|
366
|
+
|**400** | Failed validation. | - |
|
|
367
|
+
|**401** | Not authorised to access this resource. | - |
|
|
368
|
+
|**403** | Refuse to authorize. | - |
|
|
369
|
+
|**404** | Resource not found. | - |
|
|
370
|
+
|**500** | Unknown server error. | - |
|
|
371
|
+
|
|
372
|
+
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
|
|
373
|
+
|
|
374
|
+
# **listProducts**
|
|
375
|
+
> ProductsResponse listProducts()
|
|
376
|
+
|
|
377
|
+
Lists all store listing products attached to the given project.
|
|
378
|
+
|
|
379
|
+
### Example
|
|
380
|
+
|
|
381
|
+
```typescript
|
|
382
|
+
import {
|
|
383
|
+
ProductsApi,
|
|
384
|
+
Configuration
|
|
385
|
+
} from '@teemill/product-catalog';
|
|
386
|
+
|
|
387
|
+
const configuration = new Configuration();
|
|
388
|
+
const apiInstance = new ProductsApi(configuration);
|
|
389
|
+
|
|
390
|
+
let project: string; //What project it is (default to undefined)
|
|
391
|
+
let pageToken: number; //Page reference token (optional) (default to 1)
|
|
392
|
+
let search: string; //Search query string to filter results. Supports field-specific filters like \'enabled:true\', \'uuid:<id>\', \'name:\"product name\"\', and \'tag:\"tag name\"\'. Multiple filters can be combined with spaces and commas. (optional) (default to 'enabled:true')
|
|
393
|
+
let sortBy: Array<string>; //An array of fields to sort by, prefixed with a \'-\' for descending order or \'+\' for ascending. Default is ascending. (optional) (default to undefined)
|
|
394
|
+
let pageSize: number; //Max page size. This is the maximum page size that will be returned, but it might be smaller. (optional) (default to 10)
|
|
395
|
+
let fields: string; //Filter response fields to only include a subset of the resource. (optional) (default to undefined)
|
|
396
|
+
|
|
397
|
+
const { status, data } = await apiInstance.listProducts(
|
|
398
|
+
project,
|
|
399
|
+
pageToken,
|
|
400
|
+
search,
|
|
401
|
+
sortBy,
|
|
402
|
+
pageSize,
|
|
403
|
+
fields
|
|
404
|
+
);
|
|
405
|
+
```
|
|
406
|
+
|
|
407
|
+
### Parameters
|
|
408
|
+
|
|
409
|
+
|Name | Type | Description | Notes|
|
|
410
|
+
|------------- | ------------- | ------------- | -------------|
|
|
411
|
+
| **project** | [**string**] | What project it is | defaults to undefined|
|
|
412
|
+
| **pageToken** | [**number**] | Page reference token | (optional) defaults to 1|
|
|
413
|
+
| **search** | [**string**] | Search query string to filter results. Supports field-specific filters like \'enabled:true\', \'uuid:<id>\', \'name:\"product name\"\', and \'tag:\"tag name\"\'. Multiple filters can be combined with spaces and commas. | (optional) defaults to 'enabled:true'|
|
|
414
|
+
| **sortBy** | **Array<string>** | An array of fields to sort by, prefixed with a \'-\' for descending order or \'+\' for ascending. Default is ascending. | (optional) defaults to undefined|
|
|
415
|
+
| **pageSize** | [**number**] | Max page size. This is the maximum page size that will be returned, but it might be smaller. | (optional) defaults to 10|
|
|
416
|
+
| **fields** | [**string**] | Filter response fields to only include a subset of the resource. | (optional) defaults to undefined|
|
|
417
|
+
|
|
418
|
+
|
|
419
|
+
### Return type
|
|
420
|
+
|
|
421
|
+
**ProductsResponse**
|
|
422
|
+
|
|
423
|
+
### Authorization
|
|
424
|
+
|
|
425
|
+
[session-oauth](../README.md#session-oauth), [api-key](../README.md#api-key)
|
|
426
|
+
|
|
427
|
+
### HTTP request headers
|
|
428
|
+
|
|
429
|
+
- **Content-Type**: Not defined
|
|
430
|
+
- **Accept**: application/json
|
|
431
|
+
|
|
432
|
+
|
|
433
|
+
### HTTP response details
|
|
434
|
+
| Status code | Description | Response headers |
|
|
435
|
+
|-------------|-------------|------------------|
|
|
436
|
+
|**200** | Successfully retrieved all products. | - |
|
|
437
|
+
|**400** | Failed validation. | - |
|
|
438
|
+
|**401** | Not authorised to access this resource. | - |
|
|
439
|
+
|**403** | Refuse to authorize. | - |
|
|
440
|
+
|**500** | Unknown server error. | - |
|
|
441
|
+
|
|
442
|
+
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
|
|
443
|
+
|
|
444
|
+
# **seoOptimiseProducts**
|
|
445
|
+
> SeoOptimiseProducts202Response seoOptimiseProducts()
|
|
446
|
+
|
|
447
|
+
AI SEO optimises products by a set of given IDs.
|
|
448
|
+
|
|
449
|
+
### Example
|
|
450
|
+
|
|
451
|
+
```typescript
|
|
452
|
+
import {
|
|
453
|
+
ProductsApi,
|
|
454
|
+
Configuration,
|
|
455
|
+
SeoOptimiseProductsRequest
|
|
456
|
+
} from '@teemill/product-catalog';
|
|
457
|
+
|
|
458
|
+
const configuration = new Configuration();
|
|
459
|
+
const apiInstance = new ProductsApi(configuration);
|
|
460
|
+
|
|
461
|
+
let project: string; //What project it is (default to undefined)
|
|
462
|
+
let seoOptimiseProductsRequest: SeoOptimiseProductsRequest; //A set of product IDs to AI SEO optimise. (optional)
|
|
463
|
+
|
|
464
|
+
const { status, data } = await apiInstance.seoOptimiseProducts(
|
|
465
|
+
project,
|
|
466
|
+
seoOptimiseProductsRequest
|
|
467
|
+
);
|
|
468
|
+
```
|
|
469
|
+
|
|
470
|
+
### Parameters
|
|
471
|
+
|
|
472
|
+
|Name | Type | Description | Notes|
|
|
473
|
+
|------------- | ------------- | ------------- | -------------|
|
|
474
|
+
| **seoOptimiseProductsRequest** | **SeoOptimiseProductsRequest**| A set of product IDs to AI SEO optimise. | |
|
|
475
|
+
| **project** | [**string**] | What project it is | defaults to undefined|
|
|
476
|
+
|
|
477
|
+
|
|
478
|
+
### Return type
|
|
479
|
+
|
|
480
|
+
**SeoOptimiseProducts202Response**
|
|
481
|
+
|
|
482
|
+
### Authorization
|
|
483
|
+
|
|
484
|
+
[session-oauth](../README.md#session-oauth), [api-key](../README.md#api-key)
|
|
485
|
+
|
|
486
|
+
### HTTP request headers
|
|
487
|
+
|
|
488
|
+
- **Content-Type**: application/json
|
|
489
|
+
- **Accept**: application/json
|
|
490
|
+
|
|
491
|
+
|
|
492
|
+
### HTTP response details
|
|
493
|
+
| Status code | Description | Response headers |
|
|
494
|
+
|-------------|-------------|------------------|
|
|
495
|
+
|**202** | Products queued for optimisation. | - |
|
|
496
|
+
|**400** | Failed validation. | - |
|
|
497
|
+
|**401** | Not authorised to access this resource. | - |
|
|
498
|
+
|**403** | Refuse to authorize. | - |
|
|
499
|
+
|**404** | Resource not found. | - |
|
|
500
|
+
|**500** | Unknown server error. | - |
|
|
501
|
+
|
|
502
|
+
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
|
|
503
|
+
|
|
504
|
+
# **updateProduct**
|
|
505
|
+
> Product updateProduct()
|
|
506
|
+
|
|
507
|
+
Updates a product by a given ID.
|
|
508
|
+
|
|
509
|
+
### Example
|
|
510
|
+
|
|
511
|
+
```typescript
|
|
512
|
+
import {
|
|
513
|
+
ProductsApi,
|
|
514
|
+
Configuration,
|
|
515
|
+
UpdateProductRequest
|
|
516
|
+
} from '@teemill/product-catalog';
|
|
517
|
+
|
|
518
|
+
const configuration = new Configuration();
|
|
519
|
+
const apiInstance = new ProductsApi(configuration);
|
|
520
|
+
|
|
521
|
+
let project: string; //What project it is (default to undefined)
|
|
522
|
+
let productId: string; //Product\'s unique identifier (default to undefined)
|
|
523
|
+
let updateProductRequest: UpdateProductRequest; // (optional)
|
|
524
|
+
|
|
525
|
+
const { status, data } = await apiInstance.updateProduct(
|
|
526
|
+
project,
|
|
527
|
+
productId,
|
|
528
|
+
updateProductRequest
|
|
529
|
+
);
|
|
530
|
+
```
|
|
531
|
+
|
|
532
|
+
### Parameters
|
|
533
|
+
|
|
534
|
+
|Name | Type | Description | Notes|
|
|
535
|
+
|------------- | ------------- | ------------- | -------------|
|
|
536
|
+
| **updateProductRequest** | **UpdateProductRequest**| | |
|
|
537
|
+
| **project** | [**string**] | What project it is | defaults to undefined|
|
|
538
|
+
| **productId** | [**string**] | Product\'s unique identifier | defaults to undefined|
|
|
539
|
+
|
|
540
|
+
|
|
541
|
+
### Return type
|
|
542
|
+
|
|
543
|
+
**Product**
|
|
544
|
+
|
|
545
|
+
### Authorization
|
|
546
|
+
|
|
547
|
+
[session-oauth](../README.md#session-oauth), [api-key](../README.md#api-key)
|
|
548
|
+
|
|
549
|
+
### HTTP request headers
|
|
550
|
+
|
|
551
|
+
- **Content-Type**: application/json
|
|
552
|
+
- **Accept**: application/json
|
|
553
|
+
|
|
554
|
+
|
|
555
|
+
### HTTP response details
|
|
556
|
+
| Status code | Description | Response headers |
|
|
557
|
+
|-------------|-------------|------------------|
|
|
558
|
+
|**200** | Successfully retrieved a product. | - |
|
|
559
|
+
|**400** | Failed validation. | - |
|
|
560
|
+
|**401** | Not authorised to access this resource. | - |
|
|
561
|
+
|**403** | Refuse to authorize. | - |
|
|
562
|
+
|**404** | Resource not found. | - |
|
|
563
|
+
|**500** | Unknown server error. | - |
|
|
564
|
+
|
|
565
|
+
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
|
|
566
|
+
|
|
567
|
+
# **updateProducts**
|
|
568
|
+
> ProductsResponse updateProducts(updateProductsRequest)
|
|
569
|
+
|
|
570
|
+
Updates catalog products for the given project.
|
|
571
|
+
|
|
572
|
+
### Example
|
|
573
|
+
|
|
574
|
+
```typescript
|
|
575
|
+
import {
|
|
576
|
+
ProductsApi,
|
|
577
|
+
Configuration,
|
|
578
|
+
UpdateProductsRequest
|
|
579
|
+
} from '@teemill/product-catalog';
|
|
580
|
+
|
|
581
|
+
const configuration = new Configuration();
|
|
582
|
+
const apiInstance = new ProductsApi(configuration);
|
|
583
|
+
|
|
584
|
+
let project: string; //What project it is (default to undefined)
|
|
585
|
+
let updateProductsRequest: UpdateProductsRequest; //Update products in bulk.
|
|
586
|
+
|
|
587
|
+
const { status, data } = await apiInstance.updateProducts(
|
|
588
|
+
project,
|
|
589
|
+
updateProductsRequest
|
|
590
|
+
);
|
|
591
|
+
```
|
|
592
|
+
|
|
593
|
+
### Parameters
|
|
594
|
+
|
|
595
|
+
|Name | Type | Description | Notes|
|
|
596
|
+
|------------- | ------------- | ------------- | -------------|
|
|
597
|
+
| **updateProductsRequest** | **UpdateProductsRequest**| Update products in bulk. | |
|
|
598
|
+
| **project** | [**string**] | What project it is | defaults to undefined|
|
|
599
|
+
|
|
600
|
+
|
|
601
|
+
### Return type
|
|
602
|
+
|
|
603
|
+
**ProductsResponse**
|
|
604
|
+
|
|
605
|
+
### Authorization
|
|
606
|
+
|
|
607
|
+
[session-oauth](../README.md#session-oauth), [api-key](../README.md#api-key)
|
|
608
|
+
|
|
609
|
+
### HTTP request headers
|
|
610
|
+
|
|
611
|
+
- **Content-Type**: application/json
|
|
612
|
+
- **Accept**: application/json
|
|
613
|
+
|
|
614
|
+
|
|
615
|
+
### HTTP response details
|
|
616
|
+
| Status code | Description | Response headers |
|
|
617
|
+
|-------------|-------------|------------------|
|
|
618
|
+
|**200** | Successfully retrieved all products. | - |
|
|
619
|
+
|**400** | Failed validation. | - |
|
|
620
|
+
|**401** | Not authorised to access this resource. | - |
|
|
621
|
+
|**403** | Refuse to authorize. | - |
|
|
622
|
+
|**404** | Resource not found. | - |
|
|
623
|
+
|**500** | Unknown server error. | - |
|
|
624
|
+
|
|
625
|
+
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
|
|
626
|
+
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# ProductsResponse
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
## Properties
|
|
5
|
+
|
|
6
|
+
Name | Type | Description | Notes
|
|
7
|
+
------------ | ------------- | ------------- | -------------
|
|
8
|
+
**products** | [**Array<Product>**](Product.md) | | [optional] [default to undefined]
|
|
9
|
+
**nextPageToken** | **number** | The token referencing the next page number | [optional] [default to undefined]
|
|
10
|
+
|
|
11
|
+
## Example
|
|
12
|
+
|
|
13
|
+
```typescript
|
|
14
|
+
import { ProductsResponse } from '@teemill/product-catalog';
|
|
15
|
+
|
|
16
|
+
const instance: ProductsResponse = {
|
|
17
|
+
products,
|
|
18
|
+
nextPageToken,
|
|
19
|
+
};
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# SEOMetadata
|
|
2
|
+
|
|
3
|
+
SEO metadata for the product
|
|
4
|
+
|
|
5
|
+
## Properties
|
|
6
|
+
|
|
7
|
+
Name | Type | Description | Notes
|
|
8
|
+
------------ | ------------- | ------------- | -------------
|
|
9
|
+
**title** | **string** | Meta title for the product. This appears in search engine results and social shares. If not provided, the product title will be used. | [optional] [default to undefined]
|
|
10
|
+
**description** | **string** | Meta description for the product. This appears in search engine results and social shares. If not provided, the product description will be used. | [optional] [default to undefined]
|
|
11
|
+
|
|
12
|
+
## Example
|
|
13
|
+
|
|
14
|
+
```typescript
|
|
15
|
+
import { SEOMetadata } from '@teemill/product-catalog';
|
|
16
|
+
|
|
17
|
+
const instance: SEOMetadata = {
|
|
18
|
+
title,
|
|
19
|
+
description,
|
|
20
|
+
};
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# SeoOptimiseProducts202Response
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
## Properties
|
|
5
|
+
|
|
6
|
+
Name | Type | Description | Notes
|
|
7
|
+
------------ | ------------- | ------------- | -------------
|
|
8
|
+
**message** | **string** | A message describing the optimisation status | [optional] [default to undefined]
|
|
9
|
+
|
|
10
|
+
## Example
|
|
11
|
+
|
|
12
|
+
```typescript
|
|
13
|
+
import { SeoOptimiseProducts202Response } from '@teemill/product-catalog';
|
|
14
|
+
|
|
15
|
+
const instance: SeoOptimiseProducts202Response = {
|
|
16
|
+
message,
|
|
17
|
+
};
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
|