@minipim/sdk 0.3.0 → 0.3.1

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.
@@ -29,6 +29,7 @@ interface paths {
29
29
  "application/json": {
30
30
  status: string;
31
31
  service: string;
32
+ version: string;
32
33
  };
33
34
  };
34
35
  };
@@ -80,6 +81,57 @@ interface paths {
80
81
  patch?: never;
81
82
  trace?: never;
82
83
  };
84
+ "/v1/changelog": {
85
+ parameters: {
86
+ query?: never;
87
+ header?: never;
88
+ path?: never;
89
+ cookie?: never;
90
+ };
91
+ /**
92
+ * Release changelog
93
+ * @description Structured release notes, newest first. The `version` of the first entry is the deployed version (also reported by /healthz).
94
+ */
95
+ get: {
96
+ parameters: {
97
+ query?: never;
98
+ header?: never;
99
+ path?: never;
100
+ cookie?: never;
101
+ };
102
+ requestBody?: never;
103
+ responses: {
104
+ /** @description Default Response */
105
+ 200: {
106
+ headers: {
107
+ [name: string]: unknown;
108
+ };
109
+ content: {
110
+ "application/json": {
111
+ version: string;
112
+ entries: {
113
+ version: string;
114
+ date: string;
115
+ title: string;
116
+ highlights: {
117
+ /** @enum {string} */
118
+ type: "feature" | "fix" | "perf" | "docs";
119
+ text: string;
120
+ }[];
121
+ }[];
122
+ };
123
+ };
124
+ };
125
+ };
126
+ };
127
+ put?: never;
128
+ post?: never;
129
+ delete?: never;
130
+ options?: never;
131
+ head?: never;
132
+ patch?: never;
133
+ trace?: never;
134
+ };
83
135
  "/v1/organizations": {
84
136
  parameters: {
85
137
  query?: never;
@@ -1174,6 +1226,7 @@ interface paths {
1174
1226
  familyId?: string;
1175
1227
  categoryId?: string;
1176
1228
  brand?: string;
1229
+ tag?: string | string[];
1177
1230
  connectorId?: string;
1178
1231
  updatedSince?: string;
1179
1232
  sortBy?: "name" | "slug" | "status" | "updatedAt" | "createdAt" | "relevance";
@@ -1215,6 +1268,7 @@ interface paths {
1215
1268
  attributes: (string | number | boolean | ("null" | null)) | unknown[] | {
1216
1269
  [key: string]: unknown;
1217
1270
  };
1271
+ tags: string[];
1218
1272
  /** Format: uuid */
1219
1273
  createdBy: string | null;
1220
1274
  /** Format: uuid */
@@ -1263,6 +1317,8 @@ interface paths {
1263
1317
  value?: unknown;
1264
1318
  }[];
1265
1319
  };
1320
+ /** @default [] */
1321
+ tags?: string[];
1266
1322
  };
1267
1323
  };
1268
1324
  };
@@ -1291,6 +1347,7 @@ interface paths {
1291
1347
  attributes: (string | number | boolean | ("null" | null)) | unknown[] | {
1292
1348
  [key: string]: unknown;
1293
1349
  };
1350
+ tags: string[];
1294
1351
  /** Format: uuid */
1295
1352
  createdBy: string | null;
1296
1353
  /** Format: uuid */
@@ -1340,6 +1397,7 @@ interface paths {
1340
1397
  familyId?: string;
1341
1398
  categoryId?: string;
1342
1399
  brand?: string;
1400
+ tag?: string | string[];
1343
1401
  connectorId?: string;
1344
1402
  updatedSince?: string;
1345
1403
  sortBy?: "name" | "slug" | "status" | "updatedAt" | "createdAt" | "relevance";
@@ -1383,6 +1441,10 @@ interface paths {
1383
1441
  value: string;
1384
1442
  count: number;
1385
1443
  }[];
1444
+ tags: {
1445
+ value: string;
1446
+ count: number;
1447
+ }[];
1386
1448
  connectors: {
1387
1449
  /** Format: uuid */
1388
1450
  connectorId: string;
@@ -1403,6 +1465,48 @@ interface paths {
1403
1465
  patch?: never;
1404
1466
  trace?: never;
1405
1467
  };
1468
+ "/v1/products/tags": {
1469
+ parameters: {
1470
+ query?: never;
1471
+ header?: never;
1472
+ path?: never;
1473
+ cookie?: never;
1474
+ };
1475
+ /**
1476
+ * List all product tags in use, with counts
1477
+ * @description Every distinct tag currently on at least one product, ordered by usage. Tags are free-form, normalized to lowercase slugs on write (`Featured` → `featured`). Filter products by tag with `GET /v1/products?tag=<tag>` (repeatable; multiple tags AND together).
1478
+ */
1479
+ get: {
1480
+ parameters: {
1481
+ query?: never;
1482
+ header?: never;
1483
+ path?: never;
1484
+ cookie?: never;
1485
+ };
1486
+ requestBody?: never;
1487
+ responses: {
1488
+ /** @description Default Response */
1489
+ 200: {
1490
+ headers: {
1491
+ [name: string]: unknown;
1492
+ };
1493
+ content: {
1494
+ "application/json": {
1495
+ value: string;
1496
+ count: number;
1497
+ }[];
1498
+ };
1499
+ };
1500
+ };
1501
+ };
1502
+ put?: never;
1503
+ post?: never;
1504
+ delete?: never;
1505
+ options?: never;
1506
+ head?: never;
1507
+ patch?: never;
1508
+ trace?: never;
1509
+ };
1406
1510
  "/v1/products/{id}": {
1407
1511
  parameters: {
1408
1512
  query?: never;
@@ -1499,6 +1603,7 @@ interface paths {
1499
1603
  attributes: (string | number | boolean | ("null" | null)) | unknown[] | {
1500
1604
  [key: string]: unknown;
1501
1605
  };
1606
+ tags: string[];
1502
1607
  /** Format: uuid */
1503
1608
  createdBy: string | null;
1504
1609
  /** Format: uuid */
@@ -1619,6 +1724,7 @@ interface paths {
1619
1724
  value?: unknown;
1620
1725
  }[];
1621
1726
  };
1727
+ tags?: string[];
1622
1728
  };
1623
1729
  };
1624
1730
  };
@@ -1647,6 +1753,7 @@ interface paths {
1647
1753
  attributes: (string | number | boolean | ("null" | null)) | unknown[] | {
1648
1754
  [key: string]: unknown;
1649
1755
  };
1756
+ tags: string[];
1650
1757
  /** Format: uuid */
1651
1758
  createdBy: string | null;
1652
1759
  /** Format: uuid */
@@ -2092,6 +2199,61 @@ interface paths {
2092
2199
  patch?: never;
2093
2200
  trace?: never;
2094
2201
  };
2202
+ "/v1/products/bulk-set-tags": {
2203
+ parameters: {
2204
+ query?: never;
2205
+ header?: never;
2206
+ path?: never;
2207
+ cookie?: never;
2208
+ };
2209
+ get?: never;
2210
+ put?: never;
2211
+ /**
2212
+ * Bulk-modify tags across products
2213
+ * @description `mode=add` unions the listed tags into each product, `mode=remove` strips them, `mode=replace` overwrites the full list. Tags are normalized (slugified + deduped) exactly like single-product writes.
2214
+ */
2215
+ post: {
2216
+ parameters: {
2217
+ query?: never;
2218
+ header?: never;
2219
+ path?: never;
2220
+ cookie?: never;
2221
+ };
2222
+ requestBody: {
2223
+ content: {
2224
+ "application/json": {
2225
+ productIds: string[];
2226
+ /** @enum {string} */
2227
+ mode: "add" | "remove" | "replace";
2228
+ tags: string[];
2229
+ };
2230
+ };
2231
+ };
2232
+ responses: {
2233
+ /** @description Default Response */
2234
+ 200: {
2235
+ headers: {
2236
+ [name: string]: unknown;
2237
+ };
2238
+ content: {
2239
+ "application/json": {
2240
+ results: {
2241
+ /** Format: uuid */
2242
+ productId: string;
2243
+ ok: boolean;
2244
+ error?: string;
2245
+ }[];
2246
+ };
2247
+ };
2248
+ };
2249
+ };
2250
+ };
2251
+ delete?: never;
2252
+ options?: never;
2253
+ head?: never;
2254
+ patch?: never;
2255
+ trace?: never;
2256
+ };
2095
2257
  "/v1/products/{id}/variants": {
2096
2258
  parameters: {
2097
2259
  query?: never;
package/dist/openapi.d.ts CHANGED
@@ -29,6 +29,7 @@ interface paths {
29
29
  "application/json": {
30
30
  status: string;
31
31
  service: string;
32
+ version: string;
32
33
  };
33
34
  };
34
35
  };
@@ -80,6 +81,57 @@ interface paths {
80
81
  patch?: never;
81
82
  trace?: never;
82
83
  };
84
+ "/v1/changelog": {
85
+ parameters: {
86
+ query?: never;
87
+ header?: never;
88
+ path?: never;
89
+ cookie?: never;
90
+ };
91
+ /**
92
+ * Release changelog
93
+ * @description Structured release notes, newest first. The `version` of the first entry is the deployed version (also reported by /healthz).
94
+ */
95
+ get: {
96
+ parameters: {
97
+ query?: never;
98
+ header?: never;
99
+ path?: never;
100
+ cookie?: never;
101
+ };
102
+ requestBody?: never;
103
+ responses: {
104
+ /** @description Default Response */
105
+ 200: {
106
+ headers: {
107
+ [name: string]: unknown;
108
+ };
109
+ content: {
110
+ "application/json": {
111
+ version: string;
112
+ entries: {
113
+ version: string;
114
+ date: string;
115
+ title: string;
116
+ highlights: {
117
+ /** @enum {string} */
118
+ type: "feature" | "fix" | "perf" | "docs";
119
+ text: string;
120
+ }[];
121
+ }[];
122
+ };
123
+ };
124
+ };
125
+ };
126
+ };
127
+ put?: never;
128
+ post?: never;
129
+ delete?: never;
130
+ options?: never;
131
+ head?: never;
132
+ patch?: never;
133
+ trace?: never;
134
+ };
83
135
  "/v1/organizations": {
84
136
  parameters: {
85
137
  query?: never;
@@ -1174,6 +1226,7 @@ interface paths {
1174
1226
  familyId?: string;
1175
1227
  categoryId?: string;
1176
1228
  brand?: string;
1229
+ tag?: string | string[];
1177
1230
  connectorId?: string;
1178
1231
  updatedSince?: string;
1179
1232
  sortBy?: "name" | "slug" | "status" | "updatedAt" | "createdAt" | "relevance";
@@ -1215,6 +1268,7 @@ interface paths {
1215
1268
  attributes: (string | number | boolean | ("null" | null)) | unknown[] | {
1216
1269
  [key: string]: unknown;
1217
1270
  };
1271
+ tags: string[];
1218
1272
  /** Format: uuid */
1219
1273
  createdBy: string | null;
1220
1274
  /** Format: uuid */
@@ -1263,6 +1317,8 @@ interface paths {
1263
1317
  value?: unknown;
1264
1318
  }[];
1265
1319
  };
1320
+ /** @default [] */
1321
+ tags?: string[];
1266
1322
  };
1267
1323
  };
1268
1324
  };
@@ -1291,6 +1347,7 @@ interface paths {
1291
1347
  attributes: (string | number | boolean | ("null" | null)) | unknown[] | {
1292
1348
  [key: string]: unknown;
1293
1349
  };
1350
+ tags: string[];
1294
1351
  /** Format: uuid */
1295
1352
  createdBy: string | null;
1296
1353
  /** Format: uuid */
@@ -1340,6 +1397,7 @@ interface paths {
1340
1397
  familyId?: string;
1341
1398
  categoryId?: string;
1342
1399
  brand?: string;
1400
+ tag?: string | string[];
1343
1401
  connectorId?: string;
1344
1402
  updatedSince?: string;
1345
1403
  sortBy?: "name" | "slug" | "status" | "updatedAt" | "createdAt" | "relevance";
@@ -1383,6 +1441,10 @@ interface paths {
1383
1441
  value: string;
1384
1442
  count: number;
1385
1443
  }[];
1444
+ tags: {
1445
+ value: string;
1446
+ count: number;
1447
+ }[];
1386
1448
  connectors: {
1387
1449
  /** Format: uuid */
1388
1450
  connectorId: string;
@@ -1403,6 +1465,48 @@ interface paths {
1403
1465
  patch?: never;
1404
1466
  trace?: never;
1405
1467
  };
1468
+ "/v1/products/tags": {
1469
+ parameters: {
1470
+ query?: never;
1471
+ header?: never;
1472
+ path?: never;
1473
+ cookie?: never;
1474
+ };
1475
+ /**
1476
+ * List all product tags in use, with counts
1477
+ * @description Every distinct tag currently on at least one product, ordered by usage. Tags are free-form, normalized to lowercase slugs on write (`Featured` → `featured`). Filter products by tag with `GET /v1/products?tag=<tag>` (repeatable; multiple tags AND together).
1478
+ */
1479
+ get: {
1480
+ parameters: {
1481
+ query?: never;
1482
+ header?: never;
1483
+ path?: never;
1484
+ cookie?: never;
1485
+ };
1486
+ requestBody?: never;
1487
+ responses: {
1488
+ /** @description Default Response */
1489
+ 200: {
1490
+ headers: {
1491
+ [name: string]: unknown;
1492
+ };
1493
+ content: {
1494
+ "application/json": {
1495
+ value: string;
1496
+ count: number;
1497
+ }[];
1498
+ };
1499
+ };
1500
+ };
1501
+ };
1502
+ put?: never;
1503
+ post?: never;
1504
+ delete?: never;
1505
+ options?: never;
1506
+ head?: never;
1507
+ patch?: never;
1508
+ trace?: never;
1509
+ };
1406
1510
  "/v1/products/{id}": {
1407
1511
  parameters: {
1408
1512
  query?: never;
@@ -1499,6 +1603,7 @@ interface paths {
1499
1603
  attributes: (string | number | boolean | ("null" | null)) | unknown[] | {
1500
1604
  [key: string]: unknown;
1501
1605
  };
1606
+ tags: string[];
1502
1607
  /** Format: uuid */
1503
1608
  createdBy: string | null;
1504
1609
  /** Format: uuid */
@@ -1619,6 +1724,7 @@ interface paths {
1619
1724
  value?: unknown;
1620
1725
  }[];
1621
1726
  };
1727
+ tags?: string[];
1622
1728
  };
1623
1729
  };
1624
1730
  };
@@ -1647,6 +1753,7 @@ interface paths {
1647
1753
  attributes: (string | number | boolean | ("null" | null)) | unknown[] | {
1648
1754
  [key: string]: unknown;
1649
1755
  };
1756
+ tags: string[];
1650
1757
  /** Format: uuid */
1651
1758
  createdBy: string | null;
1652
1759
  /** Format: uuid */
@@ -2092,6 +2199,61 @@ interface paths {
2092
2199
  patch?: never;
2093
2200
  trace?: never;
2094
2201
  };
2202
+ "/v1/products/bulk-set-tags": {
2203
+ parameters: {
2204
+ query?: never;
2205
+ header?: never;
2206
+ path?: never;
2207
+ cookie?: never;
2208
+ };
2209
+ get?: never;
2210
+ put?: never;
2211
+ /**
2212
+ * Bulk-modify tags across products
2213
+ * @description `mode=add` unions the listed tags into each product, `mode=remove` strips them, `mode=replace` overwrites the full list. Tags are normalized (slugified + deduped) exactly like single-product writes.
2214
+ */
2215
+ post: {
2216
+ parameters: {
2217
+ query?: never;
2218
+ header?: never;
2219
+ path?: never;
2220
+ cookie?: never;
2221
+ };
2222
+ requestBody: {
2223
+ content: {
2224
+ "application/json": {
2225
+ productIds: string[];
2226
+ /** @enum {string} */
2227
+ mode: "add" | "remove" | "replace";
2228
+ tags: string[];
2229
+ };
2230
+ };
2231
+ };
2232
+ responses: {
2233
+ /** @description Default Response */
2234
+ 200: {
2235
+ headers: {
2236
+ [name: string]: unknown;
2237
+ };
2238
+ content: {
2239
+ "application/json": {
2240
+ results: {
2241
+ /** Format: uuid */
2242
+ productId: string;
2243
+ ok: boolean;
2244
+ error?: string;
2245
+ }[];
2246
+ };
2247
+ };
2248
+ };
2249
+ };
2250
+ };
2251
+ delete?: never;
2252
+ options?: never;
2253
+ head?: never;
2254
+ patch?: never;
2255
+ trace?: never;
2256
+ };
2095
2257
  "/v1/products/{id}/variants": {
2096
2258
  parameters: {
2097
2259
  query?: never;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@minipim/sdk",
3
- "version": "0.3.0",
3
+ "version": "0.3.1",
4
4
  "description": "Typed TypeScript client for the MiniPim API.",
5
5
  "license": "Apache-2.0",
6
6
  "homepage": "https://github.com/Epic-Design-Labs/minipim",