@cloudcart/dev-mcp 0.2.9 → 0.2.11

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/data/admin.json CHANGED
@@ -16683,7 +16683,7 @@
16683
16683
  },
16684
16684
  {
16685
16685
  "name": "ordersBulkChangeStatus",
16686
- "description": "Bulk change status for multiple orders.",
16686
+ "description": "Bulk change order status on N orders at once — set them to pending, paid, shipped, fulfilled, etc. Async / queue-backed: returns BulkOperationJob immediately and runs through Order::changeStatus() per order on the tmp queue (which fires customer notifications, history entries, fulfillment events as it goes). Poll bulkOperationStatus(jobId) for progress. Common phrasings: bulk change order status, mass update orders status, mark many orders as paid / shipped / fulfilled, change status of many orders.",
16687
16687
  "args": [
16688
16688
  {
16689
16689
  "name": "input",
@@ -16704,17 +16704,9 @@
16704
16704
  "kind": "NON_NULL",
16705
16705
  "name": null,
16706
16706
  "ofType": {
16707
- "kind": "LIST",
16708
- "name": null,
16709
- "ofType": {
16710
- "kind": "NON_NULL",
16711
- "name": null,
16712
- "ofType": {
16713
- "kind": "OBJECT",
16714
- "name": "Order",
16715
- "ofType": null
16716
- }
16717
- }
16707
+ "kind": "OBJECT",
16708
+ "name": "BulkOperationJob",
16709
+ "ofType": null
16718
16710
  }
16719
16711
  },
16720
16712
  "isDeprecated": false,
@@ -16722,7 +16714,7 @@
16722
16714
  },
16723
16715
  {
16724
16716
  "name": "ordersBulkArchive",
16725
- "description": "Bulk archive or unarchive multiple orders.",
16717
+ "description": "Bulk archive or unarchive N orders at once — sets the archived flag in either direction. Async / queue-backed: returns BulkOperationJob immediately and runs through Order::archive() / Order::unArchive() per order on the tmp queue. Poll bulkOperationStatus(jobId) for progress. Common phrasings: bulk archive orders, mass unarchive orders, archive many orders, soft-archive orders, restore orders from archive.",
16726
16718
  "args": [
16727
16719
  {
16728
16720
  "name": "input",
@@ -16743,17 +16735,9 @@
16743
16735
  "kind": "NON_NULL",
16744
16736
  "name": null,
16745
16737
  "ofType": {
16746
- "kind": "LIST",
16747
- "name": null,
16748
- "ofType": {
16749
- "kind": "NON_NULL",
16750
- "name": null,
16751
- "ofType": {
16752
- "kind": "OBJECT",
16753
- "name": "Order",
16754
- "ofType": null
16755
- }
16756
- }
16738
+ "kind": "OBJECT",
16739
+ "name": "BulkOperationJob",
16740
+ "ofType": null
16757
16741
  }
16758
16742
  },
16759
16743
  "isDeprecated": false,
@@ -18420,7 +18404,7 @@
18420
18404
  "name": null,
18421
18405
  "ofType": {
18422
18406
  "kind": "OBJECT",
18423
- "name": "BulkOperationResult",
18407
+ "name": "BulkOperationJob",
18424
18408
  "ofType": null
18425
18409
  }
18426
18410
  },
@@ -18510,7 +18494,7 @@
18510
18494
  "name": null,
18511
18495
  "ofType": {
18512
18496
  "kind": "OBJECT",
18513
- "name": "BulkOperationResult",
18497
+ "name": "BulkOperationJob",
18514
18498
  "ofType": null
18515
18499
  }
18516
18500
  },
@@ -18652,7 +18636,7 @@
18652
18636
  "name": null,
18653
18637
  "ofType": {
18654
18638
  "kind": "OBJECT",
18655
- "name": "BulkOperationResult",
18639
+ "name": "BulkOperationJob",
18656
18640
  "ofType": null
18657
18641
  }
18658
18642
  },
@@ -19000,7 +18984,7 @@
19000
18984
  "name": null,
19001
18985
  "ofType": {
19002
18986
  "kind": "OBJECT",
19003
- "name": "BulkParameterResult",
18987
+ "name": "BulkOperationJob",
19004
18988
  "ofType": null
19005
18989
  }
19006
18990
  },
@@ -19039,7 +19023,7 @@
19039
19023
  "name": null,
19040
19024
  "ofType": {
19041
19025
  "kind": "OBJECT",
19042
- "name": "BulkParameterResult",
19026
+ "name": "BulkOperationJob",
19043
19027
  "ofType": null
19044
19028
  }
19045
19029
  },
@@ -19170,7 +19154,7 @@
19170
19154
  "name": null,
19171
19155
  "ofType": {
19172
19156
  "kind": "OBJECT",
19173
- "name": "BulkParameterResult",
19157
+ "name": "BulkOperationJob",
19174
19158
  "ofType": null
19175
19159
  }
19176
19160
  },
@@ -19223,7 +19207,7 @@
19223
19207
  "name": null,
19224
19208
  "ofType": {
19225
19209
  "kind": "OBJECT",
19226
- "name": "BulkParameterResult",
19210
+ "name": "BulkOperationJob",
19227
19211
  "ofType": null
19228
19212
  }
19229
19213
  },
@@ -19275,17 +19259,9 @@
19275
19259
  "kind": "NON_NULL",
19276
19260
  "name": null,
19277
19261
  "ofType": {
19278
- "kind": "LIST",
19279
- "name": null,
19280
- "ofType": {
19281
- "kind": "NON_NULL",
19282
- "name": null,
19283
- "ofType": {
19284
- "kind": "OBJECT",
19285
- "name": "ParameterOption",
19286
- "ofType": null
19287
- }
19288
- }
19262
+ "kind": "OBJECT",
19263
+ "name": "BulkOperationJob",
19264
+ "ofType": null
19289
19265
  }
19290
19266
  },
19291
19267
  "isDeprecated": false,
@@ -20051,9 +20027,13 @@
20051
20027
  }
20052
20028
  ],
20053
20029
  "type": {
20054
- "kind": "OBJECT",
20055
- "name": "DeleteSmartCollectionsResult",
20056
- "ofType": null
20030
+ "kind": "NON_NULL",
20031
+ "name": null,
20032
+ "ofType": {
20033
+ "kind": "OBJECT",
20034
+ "name": "BulkOperationJob",
20035
+ "ofType": null
20036
+ }
20057
20037
  },
20058
20038
  "isDeprecated": false,
20059
20039
  "deprecationReason": null
@@ -20087,7 +20067,7 @@
20087
20067
  },
20088
20068
  {
20089
20069
  "name": "productVariantsBulkUpdateQuantity",
20090
- "description": "Bulk update variant quantities (add or set).",
20070
+ "description": "Bulk update variant quantities set or add. Async / queue-backed: returns BulkOperationJob immediately and runs through Variant::updateColumns() per variant on the tmp queue. After the per-variant loop the worker fires one batched ES re-index for every touched parent product. Poll bulkOperationStatus(jobId) for progress. Common phrasings: bulk update variant quantity, mass set inventory, increment stock, restock variants, set quantity on N variants.",
20091
20071
  "args": [
20092
20072
  {
20093
20073
  "name": "input",
@@ -20109,7 +20089,7 @@
20109
20089
  "name": null,
20110
20090
  "ofType": {
20111
20091
  "kind": "OBJECT",
20112
- "name": "BulkInventoryResult",
20092
+ "name": "BulkOperationJob",
20113
20093
  "ofType": null
20114
20094
  }
20115
20095
  },
@@ -20118,7 +20098,7 @@
20118
20098
  },
20119
20099
  {
20120
20100
  "name": "productVariantsBulkUpdatePrice",
20121
- "description": "Bulk update variant prices.",
20101
+ "description": "Bulk set a fixed price on N variants — every variant in `input.ids` gets the same `input.price` (use `productsBulkAdjustPrice` if you instead want a percentage adjustment or a per-product change). Async / queue-backed: returns BulkOperationJob, processes through Variant::updateColumns + Variant::updateProductsDefaultVariant. Common phrasings: bulk set variant price, mass update prices on variants, set price on N variants, fixed price across variants.",
20122
20102
  "args": [
20123
20103
  {
20124
20104
  "name": "input",
@@ -20140,7 +20120,7 @@
20140
20120
  "name": null,
20141
20121
  "ofType": {
20142
20122
  "kind": "OBJECT",
20143
- "name": "BulkInventoryResult",
20123
+ "name": "BulkOperationJob",
20144
20124
  "ofType": null
20145
20125
  }
20146
20126
  },
@@ -20149,7 +20129,7 @@
20149
20129
  },
20150
20130
  {
20151
20131
  "name": "productVariantsBulkUpdateSellingStatus",
20152
- "description": "Bulk update product continue-selling status.",
20132
+ "description": "Bulk toggle the `continue_selling` flag on the parent products of N variants. The flag lives on the product row (not variant) — the worker dedupes by parent product. Async / queue-backed: returns BulkOperationJob immediately. Common phrasings: bulk allow continue selling, mass enable backorder, toggle continue selling on variants, allow oversell on N products.",
20153
20133
  "args": [
20154
20134
  {
20155
20135
  "name": "input",
@@ -20171,7 +20151,7 @@
20171
20151
  "name": null,
20172
20152
  "ofType": {
20173
20153
  "kind": "OBJECT",
20174
- "name": "BulkInventoryResult",
20154
+ "name": "BulkOperationJob",
20175
20155
  "ofType": null
20176
20156
  }
20177
20157
  },
@@ -20224,7 +20204,7 @@
20224
20204
  "name": null,
20225
20205
  "ofType": {
20226
20206
  "kind": "OBJECT",
20227
- "name": "ProductVariantsBulkUpdatePayload",
20207
+ "name": "BulkOperationJob",
20228
20208
  "ofType": null
20229
20209
  }
20230
20210
  },
@@ -20277,7 +20257,7 @@
20277
20257
  "name": null,
20278
20258
  "ofType": {
20279
20259
  "kind": "OBJECT",
20280
- "name": "ProductVariantsBulkDeletePayload",
20260
+ "name": "BulkOperationJob",
20281
20261
  "ofType": null
20282
20262
  }
20283
20263
  },
@@ -20874,7 +20854,7 @@
20874
20854
  "name": null,
20875
20855
  "ofType": {
20876
20856
  "kind": "OBJECT",
20877
- "name": "BulkOperationResult",
20857
+ "name": "BulkOperationJob",
20878
20858
  "ofType": null
20879
20859
  }
20880
20860
  },
@@ -20927,7 +20907,7 @@
20927
20907
  "name": null,
20928
20908
  "ofType": {
20929
20909
  "kind": "OBJECT",
20930
- "name": "BulkOperationResult",
20910
+ "name": "BulkOperationJob",
20931
20911
  "ofType": null
20932
20912
  }
20933
20913
  },
@@ -20966,7 +20946,7 @@
20966
20946
  "name": null,
20967
20947
  "ofType": {
20968
20948
  "kind": "OBJECT",
20969
- "name": "BulkOperationResult",
20949
+ "name": "BulkOperationJob",
20970
20950
  "ofType": null
20971
20951
  }
20972
20952
  },
@@ -21064,7 +21044,7 @@
21064
21044
  "name": null,
21065
21045
  "ofType": {
21066
21046
  "kind": "OBJECT",
21067
- "name": "CategoryPropertyMutationResult",
21047
+ "name": "BulkOperationJob",
21068
21048
  "ofType": null
21069
21049
  }
21070
21050
  },
@@ -21370,7 +21350,7 @@
21370
21350
  "name": null,
21371
21351
  "ofType": {
21372
21352
  "kind": "OBJECT",
21373
- "name": "CategoryPropertyMutationResult",
21353
+ "name": "BulkOperationJob",
21374
21354
  "ofType": null
21375
21355
  }
21376
21356
  },
@@ -21589,6 +21569,45 @@
21589
21569
  "isDeprecated": false,
21590
21570
  "deprecationReason": null
21591
21571
  },
21572
+ {
21573
+ "name": "productsBulkCreate",
21574
+ "description": "Create up to ~10 000 products in a single GraphQL call. Async — returns a `BulkOperationJob` immediately\nwith the same shape as the other 23 `productsBulk*` mutations. Use `bulkOperationStatus(jobId)` to poll\nprogress and read final counts / errors.\n\nBacked by the existing JSON-import pipeline: payload is serialized to storage, a `JsonImport`\nrow is created, and the `JsonParser` job is dispatched on the `'import'` queue. Records are processed\nin chunks of 20 by the shared `Importer` worker — same code path that powers admin-panel JSON / CSV\nimports, so all features are supported: variants, images (via URL), category properties, tags, tabs,\nbrand-model linkage.\n\n**Replaces CSV / XML import for AI-agent use cases.** Instead of multi-step upload + column-mapping,\npass typed product objects directly.\n\n**Validation:** synchronous rules reject empty input and malformed fields. Per-product DB-level\nerrors (missing category id, duplicate sku, etc.) surface as `skippedIds` in the status payload.\n\n**Attribution:** the PAT-bound admin is captured at dispatch and re-bound inside the worker, so\n`Product.changeLog` entries are attributed to the caller — identical to the other `productsBulk*`\nmutations.\n\nExample:\n```graphql\nmutation {\n productsBulkCreate(products: [\n { name: \"Red T-Shirt\", price: 19.99, sku: \"TS-RED-001\",\n category_id: \"5\", images: [\"https://example.com/red.jpg\"],\n variants: [\n { v1: \"Red\", v2: \"M\", price: 19.99, quantity: 10 },\n { v1: \"Red\", v2: \"L\", price: 19.99, quantity: 5 }\n ],\n category_properties: [{ name: \"Material\", values: [\"Cotton\"] }],\n tags: [\"summer\", \"new\"] }\n ]) { jobId queuedCount message }\n}\n```",
21575
+ "args": [
21576
+ {
21577
+ "name": "products",
21578
+ "description": "Products to create. Hard cap at 10 000 per call — for larger imports, chunk client-side and dispatch multiple jobs.",
21579
+ "type": {
21580
+ "kind": "NON_NULL",
21581
+ "name": null,
21582
+ "ofType": {
21583
+ "kind": "LIST",
21584
+ "name": null,
21585
+ "ofType": {
21586
+ "kind": "NON_NULL",
21587
+ "name": null,
21588
+ "ofType": {
21589
+ "kind": "INPUT_OBJECT",
21590
+ "name": "JsonProductInput",
21591
+ "ofType": null
21592
+ }
21593
+ }
21594
+ }
21595
+ },
21596
+ "defaultValue": null
21597
+ }
21598
+ ],
21599
+ "type": {
21600
+ "kind": "NON_NULL",
21601
+ "name": null,
21602
+ "ofType": {
21603
+ "kind": "OBJECT",
21604
+ "name": "BulkOperationJob",
21605
+ "ofType": null
21606
+ }
21607
+ },
21608
+ "isDeprecated": false,
21609
+ "deprecationReason": null
21610
+ },
21592
21611
  {
21593
21612
  "name": "createCustomer",
21594
21613
  "description": "Create a new customer.",
@@ -22005,8 +22024,8 @@
22005
22024
  "deprecationReason": null
22006
22025
  },
22007
22026
  {
22008
- "name": "customersBulkAction",
22009
- "description": "Toggle marketing or active status for multiple customers at once.",
22027
+ "name": "customersBulkSetMarketing",
22028
+ "description": "Bulk-toggle the marketing opt-in flag on N customers. Async / queue-backed: returns BulkOperationJob immediately and runs through Customer::update(['marketing' => 'yes'|'no']) per record on the tmp queue. Poll bulkOperationStatus(jobId) for progress. Common phrasings: bulk allow marketing, mass opt-in customers, opt customers out of marketing, set newsletter consent on N customers.",
22010
22029
  "args": [
22011
22030
  {
22012
22031
  "name": "ids",
@@ -22031,59 +22050,14 @@
22031
22050
  "defaultValue": null
22032
22051
  },
22033
22052
  {
22034
- "name": "action",
22035
- "description": "Action to perform: marketing or active.",
22036
- "type": {
22037
- "kind": "NON_NULL",
22038
- "name": null,
22039
- "ofType": {
22040
- "kind": "SCALAR",
22041
- "name": "String",
22042
- "ofType": null
22043
- }
22044
- },
22045
- "defaultValue": null
22046
- },
22047
- {
22048
- "name": "value",
22049
- "description": "Value to set (0 or 1).",
22053
+ "name": "allow",
22054
+ "description": "True = customer accepts marketing; false = opted out.",
22050
22055
  "type": {
22051
22056
  "kind": "NON_NULL",
22052
22057
  "name": null,
22053
22058
  "ofType": {
22054
22059
  "kind": "SCALAR",
22055
- "name": "Int",
22056
- "ofType": null
22057
- }
22058
- },
22059
- "defaultValue": null
22060
- }
22061
- ],
22062
- "type": {
22063
- "kind": "NON_NULL",
22064
- "name": null,
22065
- "ofType": {
22066
- "kind": "SCALAR",
22067
- "name": "Boolean",
22068
- "ofType": null
22069
- }
22070
- },
22071
- "isDeprecated": false,
22072
- "deprecationReason": null
22073
- },
22074
- {
22075
- "name": "createCustomerGroup",
22076
- "description": "Create a customer group.",
22077
- "args": [
22078
- {
22079
- "name": "input",
22080
- "description": "Group creation input.",
22081
- "type": {
22082
- "kind": "NON_NULL",
22083
- "name": null,
22084
- "ofType": {
22085
- "kind": "INPUT_OBJECT",
22086
- "name": "CreateCustomerGroupInput",
22060
+ "name": "Boolean",
22087
22061
  "ofType": null
22088
22062
  }
22089
22063
  },
@@ -22095,7 +22069,7 @@
22095
22069
  "name": null,
22096
22070
  "ofType": {
22097
22071
  "kind": "OBJECT",
22098
- "name": "CustomerGroup",
22072
+ "name": "BulkOperationJob",
22099
22073
  "ofType": null
22100
22074
  }
22101
22075
  },
@@ -22103,63 +22077,40 @@
22103
22077
  "deprecationReason": null
22104
22078
  },
22105
22079
  {
22106
- "name": "updateCustomerGroup",
22107
- "description": "Update a customer group.",
22080
+ "name": "customersBulkSetActive",
22081
+ "description": "Bulk-toggle the `active` flag on N customers. When activating a previously-unactivated customer the worker sends the welcome email (and confirmation email if the site requires it). Async / queue-backed: returns BulkOperationJob immediately. Common phrasings: bulk activate customers, mass deactivate accounts, enable / disable customer accounts in batch.",
22108
22082
  "args": [
22109
22083
  {
22110
- "name": "id",
22111
- "description": "Group ID.",
22084
+ "name": "ids",
22085
+ "description": "Customer IDs.",
22112
22086
  "type": {
22113
22087
  "kind": "NON_NULL",
22114
22088
  "name": null,
22115
22089
  "ofType": {
22116
- "kind": "SCALAR",
22117
- "name": "ID",
22118
- "ofType": null
22090
+ "kind": "LIST",
22091
+ "name": null,
22092
+ "ofType": {
22093
+ "kind": "NON_NULL",
22094
+ "name": null,
22095
+ "ofType": {
22096
+ "kind": "SCALAR",
22097
+ "name": "ID",
22098
+ "ofType": null
22099
+ }
22100
+ }
22119
22101
  }
22120
22102
  },
22121
22103
  "defaultValue": null
22122
22104
  },
22123
22105
  {
22124
- "name": "input",
22125
- "description": "Group update input.",
22126
- "type": {
22127
- "kind": "NON_NULL",
22128
- "name": null,
22129
- "ofType": {
22130
- "kind": "INPUT_OBJECT",
22131
- "name": "UpdateCustomerGroupInput",
22132
- "ofType": null
22133
- }
22134
- },
22135
- "defaultValue": null
22136
- }
22137
- ],
22138
- "type": {
22139
- "kind": "NON_NULL",
22140
- "name": null,
22141
- "ofType": {
22142
- "kind": "OBJECT",
22143
- "name": "CustomerGroup",
22144
- "ofType": null
22145
- }
22146
- },
22147
- "isDeprecated": false,
22148
- "deprecationReason": null
22149
- },
22150
- {
22151
- "name": "deleteCustomerGroup",
22152
- "description": "Delete a customer group.",
22153
- "args": [
22154
- {
22155
- "name": "id",
22156
- "description": "Group ID.",
22106
+ "name": "active",
22107
+ "description": "True = active, false = inactive.",
22157
22108
  "type": {
22158
22109
  "kind": "NON_NULL",
22159
22110
  "name": null,
22160
22111
  "ofType": {
22161
22112
  "kind": "SCALAR",
22162
- "name": "ID",
22113
+ "name": "Boolean",
22163
22114
  "ofType": null
22164
22115
  }
22165
22116
  },
@@ -22170,8 +22121,8 @@
22170
22121
  "kind": "NON_NULL",
22171
22122
  "name": null,
22172
22123
  "ofType": {
22173
- "kind": "SCALAR",
22174
- "name": "Boolean",
22124
+ "kind": "OBJECT",
22125
+ "name": "BulkOperationJob",
22175
22126
  "ofType": null
22176
22127
  }
22177
22128
  },
@@ -22179,18 +22130,18 @@
22179
22130
  "deprecationReason": null
22180
22131
  },
22181
22132
  {
22182
- "name": "createCustomerShippingAddress",
22183
- "description": "Create a customer shipping address.",
22133
+ "name": "createCustomerGroup",
22134
+ "description": "Create a customer group.",
22184
22135
  "args": [
22185
22136
  {
22186
22137
  "name": "input",
22187
- "description": "Address creation input.",
22138
+ "description": "Group creation input.",
22188
22139
  "type": {
22189
22140
  "kind": "NON_NULL",
22190
22141
  "name": null,
22191
22142
  "ofType": {
22192
22143
  "kind": "INPUT_OBJECT",
22193
- "name": "CreateCustomerShippingAddressInput",
22144
+ "name": "CreateCustomerGroupInput",
22194
22145
  "ofType": null
22195
22146
  }
22196
22147
  },
@@ -22202,7 +22153,7 @@
22202
22153
  "name": null,
22203
22154
  "ofType": {
22204
22155
  "kind": "OBJECT",
22205
- "name": "CustomerShippingAddress",
22156
+ "name": "CustomerGroup",
22206
22157
  "ofType": null
22207
22158
  }
22208
22159
  },
@@ -22210,12 +22161,12 @@
22210
22161
  "deprecationReason": null
22211
22162
  },
22212
22163
  {
22213
- "name": "updateCustomerShippingAddress",
22214
- "description": "Update a customer shipping address.",
22164
+ "name": "updateCustomerGroup",
22165
+ "description": "Update a customer group.",
22215
22166
  "args": [
22216
22167
  {
22217
22168
  "name": "id",
22218
- "description": "Address ID.",
22169
+ "description": "Group ID.",
22219
22170
  "type": {
22220
22171
  "kind": "NON_NULL",
22221
22172
  "name": null,
@@ -22229,13 +22180,13 @@
22229
22180
  },
22230
22181
  {
22231
22182
  "name": "input",
22232
- "description": "Address update input.",
22183
+ "description": "Group update input.",
22233
22184
  "type": {
22234
22185
  "kind": "NON_NULL",
22235
22186
  "name": null,
22236
22187
  "ofType": {
22237
22188
  "kind": "INPUT_OBJECT",
22238
- "name": "UpdateCustomerShippingAddressInput",
22189
+ "name": "UpdateCustomerGroupInput",
22239
22190
  "ofType": null
22240
22191
  }
22241
22192
  },
@@ -22247,7 +22198,7 @@
22247
22198
  "name": null,
22248
22199
  "ofType": {
22249
22200
  "kind": "OBJECT",
22250
- "name": "CustomerShippingAddress",
22201
+ "name": "CustomerGroup",
22251
22202
  "ofType": null
22252
22203
  }
22253
22204
  },
@@ -22255,12 +22206,12 @@
22255
22206
  "deprecationReason": null
22256
22207
  },
22257
22208
  {
22258
- "name": "deleteCustomerShippingAddress",
22259
- "description": "Delete a customer shipping address.",
22209
+ "name": "deleteCustomerGroup",
22210
+ "description": "Delete a customer group.",
22260
22211
  "args": [
22261
22212
  {
22262
22213
  "name": "id",
22263
- "description": "Address ID.",
22214
+ "description": "Group ID.",
22264
22215
  "type": {
22265
22216
  "kind": "NON_NULL",
22266
22217
  "name": null,
@@ -22286,53 +22237,8 @@
22286
22237
  "deprecationReason": null
22287
22238
  },
22288
22239
  {
22289
- "name": "setDefaultShippingAddress",
22290
- "description": "Set the default shipping address for a customer.",
22291
- "args": [
22292
- {
22293
- "name": "customerId",
22294
- "description": "Customer ID.",
22295
- "type": {
22296
- "kind": "NON_NULL",
22297
- "name": null,
22298
- "ofType": {
22299
- "kind": "SCALAR",
22300
- "name": "ID",
22301
- "ofType": null
22302
- }
22303
- },
22304
- "defaultValue": null
22305
- },
22306
- {
22307
- "name": "addressId",
22308
- "description": "Shipping address ID.",
22309
- "type": {
22310
- "kind": "NON_NULL",
22311
- "name": null,
22312
- "ofType": {
22313
- "kind": "SCALAR",
22314
- "name": "ID",
22315
- "ofType": null
22316
- }
22317
- },
22318
- "defaultValue": null
22319
- }
22320
- ],
22321
- "type": {
22322
- "kind": "NON_NULL",
22323
- "name": null,
22324
- "ofType": {
22325
- "kind": "OBJECT",
22326
- "name": "Customer",
22327
- "ofType": null
22328
- }
22329
- },
22330
- "isDeprecated": false,
22331
- "deprecationReason": null
22332
- },
22333
- {
22334
- "name": "createCustomerBillingAddress",
22335
- "description": "Create a customer billing address.",
22240
+ "name": "createCustomerShippingAddress",
22241
+ "description": "Create a customer shipping address.",
22336
22242
  "args": [
22337
22243
  {
22338
22244
  "name": "input",
@@ -22342,7 +22248,7 @@
22342
22248
  "name": null,
22343
22249
  "ofType": {
22344
22250
  "kind": "INPUT_OBJECT",
22345
- "name": "CreateCustomerBillingAddressInput",
22251
+ "name": "CreateCustomerShippingAddressInput",
22346
22252
  "ofType": null
22347
22253
  }
22348
22254
  },
@@ -22354,7 +22260,7 @@
22354
22260
  "name": null,
22355
22261
  "ofType": {
22356
22262
  "kind": "OBJECT",
22357
- "name": "CustomerBillingAddress",
22263
+ "name": "CustomerShippingAddress",
22358
22264
  "ofType": null
22359
22265
  }
22360
22266
  },
@@ -22362,8 +22268,8 @@
22362
22268
  "deprecationReason": null
22363
22269
  },
22364
22270
  {
22365
- "name": "updateCustomerBillingAddress",
22366
- "description": "Update a customer billing address.",
22271
+ "name": "updateCustomerShippingAddress",
22272
+ "description": "Update a customer shipping address.",
22367
22273
  "args": [
22368
22274
  {
22369
22275
  "name": "id",
@@ -22387,7 +22293,7 @@
22387
22293
  "name": null,
22388
22294
  "ofType": {
22389
22295
  "kind": "INPUT_OBJECT",
22390
- "name": "UpdateCustomerBillingAddressInput",
22296
+ "name": "UpdateCustomerShippingAddressInput",
22391
22297
  "ofType": null
22392
22298
  }
22393
22299
  },
@@ -22399,7 +22305,7 @@
22399
22305
  "name": null,
22400
22306
  "ofType": {
22401
22307
  "kind": "OBJECT",
22402
- "name": "CustomerBillingAddress",
22308
+ "name": "CustomerShippingAddress",
22403
22309
  "ofType": null
22404
22310
  }
22405
22311
  },
@@ -22407,8 +22313,8 @@
22407
22313
  "deprecationReason": null
22408
22314
  },
22409
22315
  {
22410
- "name": "deleteCustomerBillingAddress",
22411
- "description": "Delete a customer billing address.",
22316
+ "name": "deleteCustomerShippingAddress",
22317
+ "description": "Delete a customer shipping address.",
22412
22318
  "args": [
22413
22319
  {
22414
22320
  "name": "id",
@@ -22438,8 +22344,8 @@
22438
22344
  "deprecationReason": null
22439
22345
  },
22440
22346
  {
22441
- "name": "setDefaultBillingAddress",
22442
- "description": "Set the default billing address for a customer.",
22347
+ "name": "setDefaultShippingAddress",
22348
+ "description": "Set the default shipping address for a customer.",
22443
22349
  "args": [
22444
22350
  {
22445
22351
  "name": "customerId",
@@ -22457,7 +22363,7 @@
22457
22363
  },
22458
22364
  {
22459
22365
  "name": "addressId",
22460
- "description": "Billing address ID.",
22366
+ "description": "Shipping address ID.",
22461
22367
  "type": {
22462
22368
  "kind": "NON_NULL",
22463
22369
  "name": null,
@@ -22483,18 +22389,18 @@
22483
22389
  "deprecationReason": null
22484
22390
  },
22485
22391
  {
22486
- "name": "createCustomerField",
22487
- "description": "Create a customer custom field definition.",
22392
+ "name": "createCustomerBillingAddress",
22393
+ "description": "Create a customer billing address.",
22488
22394
  "args": [
22489
22395
  {
22490
22396
  "name": "input",
22491
- "description": "Field creation input.",
22397
+ "description": "Address creation input.",
22492
22398
  "type": {
22493
22399
  "kind": "NON_NULL",
22494
22400
  "name": null,
22495
22401
  "ofType": {
22496
22402
  "kind": "INPUT_OBJECT",
22497
- "name": "CreateCustomerFieldInput",
22403
+ "name": "CreateCustomerBillingAddressInput",
22498
22404
  "ofType": null
22499
22405
  }
22500
22406
  },
@@ -22506,7 +22412,7 @@
22506
22412
  "name": null,
22507
22413
  "ofType": {
22508
22414
  "kind": "OBJECT",
22509
- "name": "CustomerFieldDefinition",
22415
+ "name": "CustomerBillingAddress",
22510
22416
  "ofType": null
22511
22417
  }
22512
22418
  },
@@ -22514,12 +22420,12 @@
22514
22420
  "deprecationReason": null
22515
22421
  },
22516
22422
  {
22517
- "name": "updateCustomerField",
22518
- "description": "Update a customer custom field definition.",
22423
+ "name": "updateCustomerBillingAddress",
22424
+ "description": "Update a customer billing address.",
22519
22425
  "args": [
22520
22426
  {
22521
22427
  "name": "id",
22522
- "description": "Field definition ID.",
22428
+ "description": "Address ID.",
22523
22429
  "type": {
22524
22430
  "kind": "NON_NULL",
22525
22431
  "name": null,
@@ -22533,13 +22439,13 @@
22533
22439
  },
22534
22440
  {
22535
22441
  "name": "input",
22536
- "description": "Field update input.",
22442
+ "description": "Address update input.",
22537
22443
  "type": {
22538
22444
  "kind": "NON_NULL",
22539
22445
  "name": null,
22540
22446
  "ofType": {
22541
22447
  "kind": "INPUT_OBJECT",
22542
- "name": "UpdateCustomerFieldInput",
22448
+ "name": "UpdateCustomerBillingAddressInput",
22543
22449
  "ofType": null
22544
22450
  }
22545
22451
  },
@@ -22551,7 +22457,7 @@
22551
22457
  "name": null,
22552
22458
  "ofType": {
22553
22459
  "kind": "OBJECT",
22554
- "name": "CustomerFieldDefinition",
22460
+ "name": "CustomerBillingAddress",
22555
22461
  "ofType": null
22556
22462
  }
22557
22463
  },
@@ -22559,12 +22465,12 @@
22559
22465
  "deprecationReason": null
22560
22466
  },
22561
22467
  {
22562
- "name": "deleteCustomerField",
22563
- "description": "Delete a customer custom field definition.",
22468
+ "name": "deleteCustomerBillingAddress",
22469
+ "description": "Delete a customer billing address.",
22564
22470
  "args": [
22565
22471
  {
22566
22472
  "name": "id",
22567
- "description": "Field definition ID.",
22473
+ "description": "Address ID.",
22568
22474
  "type": {
22569
22475
  "kind": "NON_NULL",
22570
22476
  "name": null,
@@ -22590,12 +22496,12 @@
22590
22496
  "deprecationReason": null
22591
22497
  },
22592
22498
  {
22593
- "name": "toggleCustomerFieldStatus",
22594
- "description": "Toggle a customer custom field definition active status.",
22499
+ "name": "setDefaultBillingAddress",
22500
+ "description": "Set the default billing address for a customer.",
22595
22501
  "args": [
22596
22502
  {
22597
- "name": "id",
22598
- "description": "Field definition ID.",
22503
+ "name": "customerId",
22504
+ "description": "Customer ID.",
22599
22505
  "type": {
22600
22506
  "kind": "NON_NULL",
22601
22507
  "name": null,
@@ -22608,14 +22514,14 @@
22608
22514
  "defaultValue": null
22609
22515
  },
22610
22516
  {
22611
- "name": "active",
22612
- "description": "Active status.",
22517
+ "name": "addressId",
22518
+ "description": "Billing address ID.",
22613
22519
  "type": {
22614
22520
  "kind": "NON_NULL",
22615
22521
  "name": null,
22616
22522
  "ofType": {
22617
22523
  "kind": "SCALAR",
22618
- "name": "Boolean",
22524
+ "name": "ID",
22619
22525
  "ofType": null
22620
22526
  }
22621
22527
  },
@@ -22627,7 +22533,7 @@
22627
22533
  "name": null,
22628
22534
  "ofType": {
22629
22535
  "kind": "OBJECT",
22630
- "name": "CustomerFieldDefinition",
22536
+ "name": "Customer",
22631
22537
  "ofType": null
22632
22538
  }
22633
22539
  },
@@ -22635,18 +22541,18 @@
22635
22541
  "deprecationReason": null
22636
22542
  },
22637
22543
  {
22638
- "name": "sendCustomerEmail",
22639
- "description": "Send a free-text email (HTML + plain text, no template) from the store to one or many customers. Always asynchronous — dispatches a Bus::batch of per-recipient jobs and returns a CustomerEmailJob to poll via customerEmailJob(id). For MARKETING sends, recipients without marketing opt-in are silently filtered out; the skipped count is returned in the payload.",
22544
+ "name": "createCustomerField",
22545
+ "description": "Create a customer custom field definition.",
22640
22546
  "args": [
22641
22547
  {
22642
22548
  "name": "input",
22643
- "description": "Targeting + content.",
22549
+ "description": "Field creation input.",
22644
22550
  "type": {
22645
22551
  "kind": "NON_NULL",
22646
22552
  "name": null,
22647
22553
  "ofType": {
22648
22554
  "kind": "INPUT_OBJECT",
22649
- "name": "SendCustomerEmailInput",
22555
+ "name": "CreateCustomerFieldInput",
22650
22556
  "ofType": null
22651
22557
  }
22652
22558
  },
@@ -22658,7 +22564,7 @@
22658
22564
  "name": null,
22659
22565
  "ofType": {
22660
22566
  "kind": "OBJECT",
22661
- "name": "SendCustomerEmailPayload",
22567
+ "name": "CustomerFieldDefinition",
22662
22568
  "ofType": null
22663
22569
  }
22664
22570
  },
@@ -22666,18 +22572,32 @@
22666
22572
  "deprecationReason": null
22667
22573
  },
22668
22574
  {
22669
- "name": "sendCustomerViber",
22670
- "description": "Send a free-text Viber message (with optional image and CTA button) from the store to one or many customers. Async via Bus::batch on the campaigns-messages6 queue; returns a CustomerViberJob to poll via customerViberJob(id). The Viber channel must be installed + configured in the campaigns marketplace; otherwise a VIBER_NOT_CONFIGURED error is returned before any dispatch.",
22575
+ "name": "updateCustomerField",
22576
+ "description": "Update a customer custom field definition.",
22671
22577
  "args": [
22578
+ {
22579
+ "name": "id",
22580
+ "description": "Field definition ID.",
22581
+ "type": {
22582
+ "kind": "NON_NULL",
22583
+ "name": null,
22584
+ "ofType": {
22585
+ "kind": "SCALAR",
22586
+ "name": "ID",
22587
+ "ofType": null
22588
+ }
22589
+ },
22590
+ "defaultValue": null
22591
+ },
22672
22592
  {
22673
22593
  "name": "input",
22674
- "description": "Targeting + content.",
22594
+ "description": "Field update input.",
22675
22595
  "type": {
22676
22596
  "kind": "NON_NULL",
22677
22597
  "name": null,
22678
22598
  "ofType": {
22679
22599
  "kind": "INPUT_OBJECT",
22680
- "name": "SendCustomerViberInput",
22600
+ "name": "UpdateCustomerFieldInput",
22681
22601
  "ofType": null
22682
22602
  }
22683
22603
  },
@@ -22689,7 +22609,7 @@
22689
22609
  "name": null,
22690
22610
  "ofType": {
22691
22611
  "kind": "OBJECT",
22692
- "name": "SendCustomerViberPayload",
22612
+ "name": "CustomerFieldDefinition",
22693
22613
  "ofType": null
22694
22614
  }
22695
22615
  },
@@ -22697,18 +22617,18 @@
22697
22617
  "deprecationReason": null
22698
22618
  },
22699
22619
  {
22700
- "name": "updateAnalyticsSettings",
22701
- "description": "Update analytics dashboard settings (statuses, device visibility, box layout, industry).",
22620
+ "name": "deleteCustomerField",
22621
+ "description": "Delete a customer custom field definition.",
22702
22622
  "args": [
22703
22623
  {
22704
- "name": "input",
22705
- "description": "Settings input — all fields are optional; only provided fields are updated.",
22624
+ "name": "id",
22625
+ "description": "Field definition ID.",
22706
22626
  "type": {
22707
22627
  "kind": "NON_NULL",
22708
22628
  "name": null,
22709
22629
  "ofType": {
22710
- "kind": "INPUT_OBJECT",
22711
- "name": "UpdateAnalyticsSettingsInput",
22630
+ "kind": "SCALAR",
22631
+ "name": "ID",
22712
22632
  "ofType": null
22713
22633
  }
22714
22634
  },
@@ -22719,24 +22639,8 @@
22719
22639
  "kind": "NON_NULL",
22720
22640
  "name": null,
22721
22641
  "ofType": {
22722
- "kind": "OBJECT",
22723
- "name": "AnalyticsSettings",
22724
- "ofType": null
22725
- }
22726
- },
22727
- "isDeprecated": false,
22728
- "deprecationReason": null
22729
- },
22730
- {
22731
- "name": "resetAnalyticsSettings",
22732
- "description": "Reset analytics settings to defaults (removes all custom configuration).",
22733
- "args": [],
22734
- "type": {
22735
- "kind": "NON_NULL",
22736
- "name": null,
22737
- "ofType": {
22738
- "kind": "OBJECT",
22739
- "name": "AnalyticsSettings",
22642
+ "kind": "SCALAR",
22643
+ "name": "Boolean",
22740
22644
  "ofType": null
22741
22645
  }
22742
22646
  },
@@ -22744,32 +22648,32 @@
22744
22648
  "deprecationReason": null
22745
22649
  },
22746
22650
  {
22747
- "name": "createDiscount",
22748
- "description": "Create a new discount.\nFor code-pro type: only name, date_start, active are used initially.\nFor all other types: creates the discount then processes targets, volume/quantity/countdown data.",
22651
+ "name": "toggleCustomerFieldStatus",
22652
+ "description": "Toggle a customer custom field definition active status.",
22749
22653
  "args": [
22750
22654
  {
22751
- "name": "type",
22752
- "description": "Discount type.",
22655
+ "name": "id",
22656
+ "description": "Field definition ID.",
22753
22657
  "type": {
22754
22658
  "kind": "NON_NULL",
22755
22659
  "name": null,
22756
22660
  "ofType": {
22757
22661
  "kind": "SCALAR",
22758
- "name": "String",
22662
+ "name": "ID",
22759
22663
  "ofType": null
22760
22664
  }
22761
22665
  },
22762
22666
  "defaultValue": null
22763
22667
  },
22764
22668
  {
22765
- "name": "input",
22766
- "description": "Discount data.",
22669
+ "name": "active",
22670
+ "description": "Active status.",
22767
22671
  "type": {
22768
22672
  "kind": "NON_NULL",
22769
22673
  "name": null,
22770
22674
  "ofType": {
22771
- "kind": "INPUT_OBJECT",
22772
- "name": "CreateDiscountInput",
22675
+ "kind": "SCALAR",
22676
+ "name": "Boolean",
22773
22677
  "ofType": null
22774
22678
  }
22775
22679
  },
@@ -22781,7 +22685,7 @@
22781
22685
  "name": null,
22782
22686
  "ofType": {
22783
22687
  "kind": "OBJECT",
22784
- "name": "Discount",
22688
+ "name": "CustomerFieldDefinition",
22785
22689
  "ofType": null
22786
22690
  }
22787
22691
  },
@@ -22789,32 +22693,18 @@
22789
22693
  "deprecationReason": null
22790
22694
  },
22791
22695
  {
22792
- "name": "updateDiscount",
22793
- "description": "Update an existing discount.\nUpdates core fields and type-specific data (targets, volume, quantity, countdown).",
22696
+ "name": "sendCustomerEmail",
22697
+ "description": "Send a free-text email (HTML + plain text, no template) from the store to one or many customers. Always asynchronous — dispatches a Bus::batch of per-recipient jobs and returns a CustomerEmailJob to poll via customerEmailJob(id). For MARKETING sends, recipients without marketing opt-in are silently filtered out; the skipped count is returned in the payload.",
22794
22698
  "args": [
22795
- {
22796
- "name": "id",
22797
- "description": "Discount ID.",
22798
- "type": {
22799
- "kind": "NON_NULL",
22800
- "name": null,
22801
- "ofType": {
22802
- "kind": "SCALAR",
22803
- "name": "ID",
22804
- "ofType": null
22805
- }
22806
- },
22807
- "defaultValue": null
22808
- },
22809
22699
  {
22810
22700
  "name": "input",
22811
- "description": "Discount data.",
22701
+ "description": "Targeting + content.",
22812
22702
  "type": {
22813
22703
  "kind": "NON_NULL",
22814
22704
  "name": null,
22815
22705
  "ofType": {
22816
22706
  "kind": "INPUT_OBJECT",
22817
- "name": "UpdateDiscountInput",
22707
+ "name": "SendCustomerEmailInput",
22818
22708
  "ofType": null
22819
22709
  }
22820
22710
  },
@@ -22826,7 +22716,7 @@
22826
22716
  "name": null,
22827
22717
  "ofType": {
22828
22718
  "kind": "OBJECT",
22829
- "name": "Discount",
22719
+ "name": "SendCustomerEmailPayload",
22830
22720
  "ofType": null
22831
22721
  }
22832
22722
  },
@@ -22834,27 +22724,19 @@
22834
22724
  "deprecationReason": null
22835
22725
  },
22836
22726
  {
22837
- "name": "discountsBulkDelete",
22838
- "description": "Delete one or more discounts.",
22727
+ "name": "sendCustomerViber",
22728
+ "description": "Send a free-text Viber message (with optional image and CTA button) from the store to one or many customers. Async via Bus::batch on the campaigns-messages6 queue; returns a CustomerViberJob to poll via customerViberJob(id). The Viber channel must be installed + configured in the campaigns marketplace; otherwise a VIBER_NOT_CONFIGURED error is returned before any dispatch.",
22839
22729
  "args": [
22840
22730
  {
22841
- "name": "ids",
22842
- "description": "Discount IDs to delete.",
22731
+ "name": "input",
22732
+ "description": "Targeting + content.",
22843
22733
  "type": {
22844
22734
  "kind": "NON_NULL",
22845
22735
  "name": null,
22846
22736
  "ofType": {
22847
- "kind": "LIST",
22848
- "name": null,
22849
- "ofType": {
22850
- "kind": "NON_NULL",
22851
- "name": null,
22852
- "ofType": {
22853
- "kind": "SCALAR",
22854
- "name": "ID",
22855
- "ofType": null
22856
- }
22857
- }
22737
+ "kind": "INPUT_OBJECT",
22738
+ "name": "SendCustomerViberInput",
22739
+ "ofType": null
22858
22740
  }
22859
22741
  },
22860
22742
  "defaultValue": null
@@ -22864,8 +22746,8 @@
22864
22746
  "kind": "NON_NULL",
22865
22747
  "name": null,
22866
22748
  "ofType": {
22867
- "kind": "SCALAR",
22868
- "name": "Boolean",
22749
+ "kind": "OBJECT",
22750
+ "name": "SendCustomerViberPayload",
22869
22751
  "ofType": null
22870
22752
  }
22871
22753
  },
@@ -22873,40 +22755,18 @@
22873
22755
  "deprecationReason": null
22874
22756
  },
22875
22757
  {
22876
- "name": "changeDiscountsStatus",
22877
- "description": "Bulk activate or deactivate discounts.",
22758
+ "name": "updateAnalyticsSettings",
22759
+ "description": "Update analytics dashboard settings (statuses, device visibility, box layout, industry).",
22878
22760
  "args": [
22879
22761
  {
22880
- "name": "ids",
22881
- "description": "Discount IDs.",
22882
- "type": {
22883
- "kind": "NON_NULL",
22884
- "name": null,
22885
- "ofType": {
22886
- "kind": "LIST",
22887
- "name": null,
22888
- "ofType": {
22889
- "kind": "NON_NULL",
22890
- "name": null,
22891
- "ofType": {
22892
- "kind": "SCALAR",
22893
- "name": "ID",
22894
- "ofType": null
22895
- }
22896
- }
22897
- }
22898
- },
22899
- "defaultValue": null
22900
- },
22901
- {
22902
- "name": "status",
22903
- "description": "New status.",
22762
+ "name": "input",
22763
+ "description": "Settings input — all fields are optional; only provided fields are updated.",
22904
22764
  "type": {
22905
22765
  "kind": "NON_NULL",
22906
22766
  "name": null,
22907
22767
  "ofType": {
22908
- "kind": "ENUM",
22909
- "name": "YesNo",
22768
+ "kind": "INPUT_OBJECT",
22769
+ "name": "UpdateAnalyticsSettingsInput",
22910
22770
  "ofType": null
22911
22771
  }
22912
22772
  },
@@ -22917,8 +22777,8 @@
22917
22777
  "kind": "NON_NULL",
22918
22778
  "name": null,
22919
22779
  "ofType": {
22920
- "kind": "SCALAR",
22921
- "name": "Boolean",
22780
+ "kind": "OBJECT",
22781
+ "name": "AnalyticsSettings",
22922
22782
  "ofType": null
22923
22783
  }
22924
22784
  },
@@ -22926,18 +22786,34 @@
22926
22786
  "deprecationReason": null
22927
22787
  },
22928
22788
  {
22929
- "name": "createCodeProCode",
22930
- "description": "Create a new code-pro code for a code-pro discount.",
22789
+ "name": "resetAnalyticsSettings",
22790
+ "description": "Reset analytics settings to defaults (removes all custom configuration).",
22791
+ "args": [],
22792
+ "type": {
22793
+ "kind": "NON_NULL",
22794
+ "name": null,
22795
+ "ofType": {
22796
+ "kind": "OBJECT",
22797
+ "name": "AnalyticsSettings",
22798
+ "ofType": null
22799
+ }
22800
+ },
22801
+ "isDeprecated": false,
22802
+ "deprecationReason": null
22803
+ },
22804
+ {
22805
+ "name": "createDiscount",
22806
+ "description": "Create a new discount.\nFor code-pro type: only name, date_start, active are used initially.\nFor all other types: creates the discount then processes targets, volume/quantity/countdown data.",
22931
22807
  "args": [
22932
22808
  {
22933
- "name": "discountId",
22934
- "description": "Parent discount ID (must be code-pro type).",
22809
+ "name": "type",
22810
+ "description": "Discount type.",
22935
22811
  "type": {
22936
22812
  "kind": "NON_NULL",
22937
22813
  "name": null,
22938
22814
  "ofType": {
22939
22815
  "kind": "SCALAR",
22940
- "name": "ID",
22816
+ "name": "String",
22941
22817
  "ofType": null
22942
22818
  }
22943
22819
  },
@@ -22945,13 +22821,13 @@
22945
22821
  },
22946
22822
  {
22947
22823
  "name": "input",
22948
- "description": "Code data.",
22824
+ "description": "Discount data.",
22949
22825
  "type": {
22950
22826
  "kind": "NON_NULL",
22951
22827
  "name": null,
22952
22828
  "ofType": {
22953
22829
  "kind": "INPUT_OBJECT",
22954
- "name": "CodeProInput",
22830
+ "name": "CreateDiscountInput",
22955
22831
  "ofType": null
22956
22832
  }
22957
22833
  },
@@ -22963,7 +22839,7 @@
22963
22839
  "name": null,
22964
22840
  "ofType": {
22965
22841
  "kind": "OBJECT",
22966
- "name": "DiscountCodePro",
22842
+ "name": "Discount",
22967
22843
  "ofType": null
22968
22844
  }
22969
22845
  },
@@ -22971,26 +22847,12 @@
22971
22847
  "deprecationReason": null
22972
22848
  },
22973
22849
  {
22974
- "name": "updateCodeProCode",
22975
- "description": "Update an existing code-pro code.",
22850
+ "name": "updateDiscount",
22851
+ "description": "Update an existing discount.\nUpdates core fields and type-specific data (targets, volume, quantity, countdown).",
22976
22852
  "args": [
22977
22853
  {
22978
- "name": "discountId",
22979
- "description": "Parent discount ID.",
22980
- "type": {
22981
- "kind": "NON_NULL",
22982
- "name": null,
22983
- "ofType": {
22984
- "kind": "SCALAR",
22985
- "name": "ID",
22986
- "ofType": null
22987
- }
22988
- },
22989
- "defaultValue": null
22990
- },
22991
- {
22992
- "name": "codeId",
22993
- "description": "Code ID.",
22854
+ "name": "id",
22855
+ "description": "Discount ID.",
22994
22856
  "type": {
22995
22857
  "kind": "NON_NULL",
22996
22858
  "name": null,
@@ -23004,13 +22866,13 @@
23004
22866
  },
23005
22867
  {
23006
22868
  "name": "input",
23007
- "description": "Code data.",
22869
+ "description": "Discount data.",
23008
22870
  "type": {
23009
22871
  "kind": "NON_NULL",
23010
22872
  "name": null,
23011
22873
  "ofType": {
23012
22874
  "kind": "INPUT_OBJECT",
23013
- "name": "CodeProInput",
22875
+ "name": "UpdateDiscountInput",
23014
22876
  "ofType": null
23015
22877
  }
23016
22878
  },
@@ -23022,7 +22884,7 @@
23022
22884
  "name": null,
23023
22885
  "ofType": {
23024
22886
  "kind": "OBJECT",
23025
- "name": "DiscountCodePro",
22887
+ "name": "Discount",
23026
22888
  "ofType": null
23027
22889
  }
23028
22890
  },
@@ -23030,26 +22892,222 @@
23030
22892
  "deprecationReason": null
23031
22893
  },
23032
22894
  {
23033
- "name": "deleteCodeProCodes",
23034
- "description": "Delete one or more code-pro codes.",
22895
+ "name": "discountsBulkDelete",
22896
+ "description": "Delete one or more discounts.",
23035
22897
  "args": [
23036
- {
23037
- "name": "discountId",
23038
- "description": "Parent discount ID.",
23039
- "type": {
23040
- "kind": "NON_NULL",
23041
- "name": null,
23042
- "ofType": {
23043
- "kind": "SCALAR",
23044
- "name": "ID",
23045
- "ofType": null
23046
- }
23047
- },
23048
- "defaultValue": null
23049
- },
23050
22898
  {
23051
22899
  "name": "ids",
23052
- "description": "Code IDs to delete.",
22900
+ "description": "Discount IDs to delete.",
22901
+ "type": {
22902
+ "kind": "NON_NULL",
22903
+ "name": null,
22904
+ "ofType": {
22905
+ "kind": "LIST",
22906
+ "name": null,
22907
+ "ofType": {
22908
+ "kind": "NON_NULL",
22909
+ "name": null,
22910
+ "ofType": {
22911
+ "kind": "SCALAR",
22912
+ "name": "ID",
22913
+ "ofType": null
22914
+ }
22915
+ }
22916
+ }
22917
+ },
22918
+ "defaultValue": null
22919
+ }
22920
+ ],
22921
+ "type": {
22922
+ "kind": "NON_NULL",
22923
+ "name": null,
22924
+ "ofType": {
22925
+ "kind": "OBJECT",
22926
+ "name": "BulkOperationJob",
22927
+ "ofType": null
22928
+ }
22929
+ },
22930
+ "isDeprecated": false,
22931
+ "deprecationReason": null
22932
+ },
22933
+ {
22934
+ "name": "changeDiscountsStatus",
22935
+ "description": "Bulk activate or deactivate discounts.",
22936
+ "args": [
22937
+ {
22938
+ "name": "ids",
22939
+ "description": "Discount IDs.",
22940
+ "type": {
22941
+ "kind": "NON_NULL",
22942
+ "name": null,
22943
+ "ofType": {
22944
+ "kind": "LIST",
22945
+ "name": null,
22946
+ "ofType": {
22947
+ "kind": "NON_NULL",
22948
+ "name": null,
22949
+ "ofType": {
22950
+ "kind": "SCALAR",
22951
+ "name": "ID",
22952
+ "ofType": null
22953
+ }
22954
+ }
22955
+ }
22956
+ },
22957
+ "defaultValue": null
22958
+ },
22959
+ {
22960
+ "name": "status",
22961
+ "description": "New status.",
22962
+ "type": {
22963
+ "kind": "NON_NULL",
22964
+ "name": null,
22965
+ "ofType": {
22966
+ "kind": "ENUM",
22967
+ "name": "YesNo",
22968
+ "ofType": null
22969
+ }
22970
+ },
22971
+ "defaultValue": null
22972
+ }
22973
+ ],
22974
+ "type": {
22975
+ "kind": "NON_NULL",
22976
+ "name": null,
22977
+ "ofType": {
22978
+ "kind": "SCALAR",
22979
+ "name": "Boolean",
22980
+ "ofType": null
22981
+ }
22982
+ },
22983
+ "isDeprecated": false,
22984
+ "deprecationReason": null
22985
+ },
22986
+ {
22987
+ "name": "createCodeProCode",
22988
+ "description": "Create a new code-pro code for a code-pro discount.",
22989
+ "args": [
22990
+ {
22991
+ "name": "discountId",
22992
+ "description": "Parent discount ID (must be code-pro type).",
22993
+ "type": {
22994
+ "kind": "NON_NULL",
22995
+ "name": null,
22996
+ "ofType": {
22997
+ "kind": "SCALAR",
22998
+ "name": "ID",
22999
+ "ofType": null
23000
+ }
23001
+ },
23002
+ "defaultValue": null
23003
+ },
23004
+ {
23005
+ "name": "input",
23006
+ "description": "Code data.",
23007
+ "type": {
23008
+ "kind": "NON_NULL",
23009
+ "name": null,
23010
+ "ofType": {
23011
+ "kind": "INPUT_OBJECT",
23012
+ "name": "CodeProInput",
23013
+ "ofType": null
23014
+ }
23015
+ },
23016
+ "defaultValue": null
23017
+ }
23018
+ ],
23019
+ "type": {
23020
+ "kind": "NON_NULL",
23021
+ "name": null,
23022
+ "ofType": {
23023
+ "kind": "OBJECT",
23024
+ "name": "DiscountCodePro",
23025
+ "ofType": null
23026
+ }
23027
+ },
23028
+ "isDeprecated": false,
23029
+ "deprecationReason": null
23030
+ },
23031
+ {
23032
+ "name": "updateCodeProCode",
23033
+ "description": "Update an existing code-pro code.",
23034
+ "args": [
23035
+ {
23036
+ "name": "discountId",
23037
+ "description": "Parent discount ID.",
23038
+ "type": {
23039
+ "kind": "NON_NULL",
23040
+ "name": null,
23041
+ "ofType": {
23042
+ "kind": "SCALAR",
23043
+ "name": "ID",
23044
+ "ofType": null
23045
+ }
23046
+ },
23047
+ "defaultValue": null
23048
+ },
23049
+ {
23050
+ "name": "codeId",
23051
+ "description": "Code ID.",
23052
+ "type": {
23053
+ "kind": "NON_NULL",
23054
+ "name": null,
23055
+ "ofType": {
23056
+ "kind": "SCALAR",
23057
+ "name": "ID",
23058
+ "ofType": null
23059
+ }
23060
+ },
23061
+ "defaultValue": null
23062
+ },
23063
+ {
23064
+ "name": "input",
23065
+ "description": "Code data.",
23066
+ "type": {
23067
+ "kind": "NON_NULL",
23068
+ "name": null,
23069
+ "ofType": {
23070
+ "kind": "INPUT_OBJECT",
23071
+ "name": "CodeProInput",
23072
+ "ofType": null
23073
+ }
23074
+ },
23075
+ "defaultValue": null
23076
+ }
23077
+ ],
23078
+ "type": {
23079
+ "kind": "NON_NULL",
23080
+ "name": null,
23081
+ "ofType": {
23082
+ "kind": "OBJECT",
23083
+ "name": "DiscountCodePro",
23084
+ "ofType": null
23085
+ }
23086
+ },
23087
+ "isDeprecated": false,
23088
+ "deprecationReason": null
23089
+ },
23090
+ {
23091
+ "name": "deleteCodeProCodes",
23092
+ "description": "Delete one or more code-pro codes.",
23093
+ "args": [
23094
+ {
23095
+ "name": "discountId",
23096
+ "description": "Parent discount ID.",
23097
+ "type": {
23098
+ "kind": "NON_NULL",
23099
+ "name": null,
23100
+ "ofType": {
23101
+ "kind": "SCALAR",
23102
+ "name": "ID",
23103
+ "ofType": null
23104
+ }
23105
+ },
23106
+ "defaultValue": null
23107
+ },
23108
+ {
23109
+ "name": "ids",
23110
+ "description": "Code IDs to delete.",
23053
23111
  "type": {
23054
23112
  "kind": "NON_NULL",
23055
23113
  "name": null,
@@ -24675,8 +24733,8 @@
24675
24733
  "kind": "NON_NULL",
24676
24734
  "name": null,
24677
24735
  "ofType": {
24678
- "kind": "SCALAR",
24679
- "name": "Boolean",
24736
+ "kind": "OBJECT",
24737
+ "name": "BulkOperationJob",
24680
24738
  "ofType": null
24681
24739
  }
24682
24740
  },
@@ -24745,8 +24803,8 @@
24745
24803
  "kind": "NON_NULL",
24746
24804
  "name": null,
24747
24805
  "ofType": {
24748
- "kind": "SCALAR",
24749
- "name": "Boolean",
24806
+ "kind": "OBJECT",
24807
+ "name": "BulkOperationJob",
24750
24808
  "ofType": null
24751
24809
  }
24752
24810
  },
@@ -30469,7 +30527,7 @@
30469
30527
  "name": null,
30470
30528
  "ofType": {
30471
30529
  "kind": "OBJECT",
30472
- "name": "BulkOperationResult",
30530
+ "name": "BulkOperationJob",
30473
30531
  "ofType": null
30474
30532
  }
30475
30533
  },
@@ -30508,7 +30566,7 @@
30508
30566
  "name": null,
30509
30567
  "ofType": {
30510
30568
  "kind": "OBJECT",
30511
- "name": "BulkOperationResult",
30569
+ "name": "BulkOperationJob",
30512
30570
  "ofType": null
30513
30571
  }
30514
30572
  },
@@ -30623,7 +30681,7 @@
30623
30681
  "name": null,
30624
30682
  "ofType": {
30625
30683
  "kind": "OBJECT",
30626
- "name": "AdminAppMutationResult",
30684
+ "name": "BulkOperationJob",
30627
30685
  "ofType": null
30628
30686
  }
30629
30687
  },
@@ -30749,7 +30807,7 @@
30749
30807
  "name": null,
30750
30808
  "ofType": {
30751
30809
  "kind": "OBJECT",
30752
- "name": "BulkOperationResult",
30810
+ "name": "BulkOperationJob",
30753
30811
  "ofType": null
30754
30812
  }
30755
30813
  },
@@ -30922,7 +30980,7 @@
30922
30980
  "name": null,
30923
30981
  "ofType": {
30924
30982
  "kind": "OBJECT",
30925
- "name": "AdminAppMutationResult",
30983
+ "name": "BulkOperationJob",
30926
30984
  "ofType": null
30927
30985
  }
30928
30986
  },
@@ -31838,46 +31896,46 @@
31838
31896
  "name": null,
31839
31897
  "ofType": {
31840
31898
  "kind": "OBJECT",
31841
- "name": "AdminAppMutationResult",
31842
- "ofType": null
31843
- }
31844
- },
31845
- "isDeprecated": false,
31846
- "deprecationReason": null
31847
- },
31848
- {
31849
- "name": "multylangProductsBulkDelete",
31850
- "description": "Bulk delete products from multi-language sites.",
31851
- "args": [
31852
- {
31853
- "name": "productIds",
31854
- "description": "Product IDs.",
31855
- "type": {
31856
- "kind": "NON_NULL",
31857
- "name": null,
31858
- "ofType": {
31859
- "kind": "LIST",
31860
- "name": null,
31861
- "ofType": {
31862
- "kind": "NON_NULL",
31863
- "name": null,
31864
- "ofType": {
31865
- "kind": "SCALAR",
31866
- "name": "ID",
31867
- "ofType": null
31868
- }
31869
- }
31870
- }
31871
- },
31872
- "defaultValue": null
31873
- }
31874
- ],
31875
- "type": {
31876
- "kind": "NON_NULL",
31877
- "name": null,
31878
- "ofType": {
31879
- "kind": "OBJECT",
31880
- "name": "AdminAppMutationResult",
31899
+ "name": "BulkOperationJob",
31900
+ "ofType": null
31901
+ }
31902
+ },
31903
+ "isDeprecated": false,
31904
+ "deprecationReason": null
31905
+ },
31906
+ {
31907
+ "name": "multylangProductsBulkDelete",
31908
+ "description": "Bulk delete products from multi-language sites.",
31909
+ "args": [
31910
+ {
31911
+ "name": "productIds",
31912
+ "description": "Product IDs.",
31913
+ "type": {
31914
+ "kind": "NON_NULL",
31915
+ "name": null,
31916
+ "ofType": {
31917
+ "kind": "LIST",
31918
+ "name": null,
31919
+ "ofType": {
31920
+ "kind": "NON_NULL",
31921
+ "name": null,
31922
+ "ofType": {
31923
+ "kind": "SCALAR",
31924
+ "name": "ID",
31925
+ "ofType": null
31926
+ }
31927
+ }
31928
+ }
31929
+ },
31930
+ "defaultValue": null
31931
+ }
31932
+ ],
31933
+ "type": {
31934
+ "kind": "NON_NULL",
31935
+ "name": null,
31936
+ "ofType": {
31937
+ "kind": "OBJECT",
31938
+ "name": "BulkOperationJob",
31881
31939
  "ofType": null
31882
31940
  }
31883
31941
  },
@@ -33902,7 +33960,7 @@
33902
33960
  "name": null,
33903
33961
  "ofType": {
33904
33962
  "kind": "OBJECT",
33905
- "name": "MarketingAppsMutationResult",
33963
+ "name": "BulkOperationJob",
33906
33964
  "ofType": null
33907
33965
  }
33908
33966
  },
@@ -36745,7 +36803,7 @@
36745
36803
  "name": null,
36746
36804
  "ofType": {
36747
36805
  "kind": "OBJECT",
36748
- "name": "ExportsMutationResult",
36806
+ "name": "BulkOperationJob",
36749
36807
  "ofType": null
36750
36808
  }
36751
36809
  },
@@ -36868,7 +36926,7 @@
36868
36926
  "name": null,
36869
36927
  "ofType": {
36870
36928
  "kind": "OBJECT",
36871
- "name": "StoreMutationResult",
36929
+ "name": "BulkOperationJob",
36872
36930
  "ofType": null
36873
36931
  }
36874
36932
  },
@@ -36913,7 +36971,7 @@
36913
36971
  "name": null,
36914
36972
  "ofType": {
36915
36973
  "kind": "OBJECT",
36916
- "name": "StoreMutationResult",
36974
+ "name": "BulkOperationJob",
36917
36975
  "ofType": null
36918
36976
  }
36919
36977
  },
@@ -36944,7 +37002,7 @@
36944
37002
  "name": null,
36945
37003
  "ofType": {
36946
37004
  "kind": "OBJECT",
36947
- "name": "StoreMutationResult",
37005
+ "name": "BulkOperationJob",
36948
37006
  "ofType": null
36949
37007
  }
36950
37008
  },
@@ -36989,7 +37047,7 @@
36989
37047
  "name": null,
36990
37048
  "ofType": {
36991
37049
  "kind": "OBJECT",
36992
- "name": "StoreMutationResult",
37050
+ "name": "BulkOperationJob",
36993
37051
  "ofType": null
36994
37052
  }
36995
37053
  },
@@ -37028,7 +37086,7 @@
37028
37086
  "name": null,
37029
37087
  "ofType": {
37030
37088
  "kind": "OBJECT",
37031
- "name": "StoreMutationResult",
37089
+ "name": "BulkOperationJob",
37032
37090
  "ofType": null
37033
37091
  }
37034
37092
  },
@@ -37109,7 +37167,7 @@
37109
37167
  "name": null,
37110
37168
  "ofType": {
37111
37169
  "kind": "OBJECT",
37112
- "name": "StoreMutationResult",
37170
+ "name": "BulkOperationJob",
37113
37171
  "ofType": null
37114
37172
  }
37115
37173
  },
@@ -37154,7 +37212,7 @@
37154
37212
  "name": null,
37155
37213
  "ofType": {
37156
37214
  "kind": "OBJECT",
37157
- "name": "StoreMutationResult",
37215
+ "name": "BulkOperationJob",
37158
37216
  "ofType": null
37159
37217
  }
37160
37218
  },
@@ -37207,7 +37265,7 @@
37207
37265
  "name": null,
37208
37266
  "ofType": {
37209
37267
  "kind": "OBJECT",
37210
- "name": "StoreMutationResult",
37268
+ "name": "BulkOperationJob",
37211
37269
  "ofType": null
37212
37270
  }
37213
37271
  },
@@ -37238,7 +37296,7 @@
37238
37296
  "name": null,
37239
37297
  "ofType": {
37240
37298
  "kind": "OBJECT",
37241
- "name": "StoreMutationResult",
37299
+ "name": "BulkOperationJob",
37242
37300
  "ofType": null
37243
37301
  }
37244
37302
  },
@@ -56750,6 +56808,686 @@
56750
56808
  "enumValues": null,
56751
56809
  "possibleTypes": null
56752
56810
  },
56811
+ {
56812
+ "kind": "INPUT_OBJECT",
56813
+ "name": "JsonProductInput",
56814
+ "description": "One product to create via productsBulkCreate. Field semantics match the existing JSON import format (Modules\\Importer\\DataFormat\\Product) — all fields except name are optional.",
56815
+ "fields": null,
56816
+ "inputFields": [
56817
+ {
56818
+ "name": "name",
56819
+ "description": "Product name (required, max 191 chars).",
56820
+ "type": {
56821
+ "kind": "NON_NULL",
56822
+ "name": null,
56823
+ "ofType": {
56824
+ "kind": "SCALAR",
56825
+ "name": "String",
56826
+ "ofType": null
56827
+ }
56828
+ },
56829
+ "defaultValue": null
56830
+ },
56831
+ {
56832
+ "name": "url_handle",
56833
+ "description": "URL-friendly handle. Auto-generated from name when omitted.",
56834
+ "type": {
56835
+ "kind": "SCALAR",
56836
+ "name": "String",
56837
+ "ofType": null
56838
+ },
56839
+ "defaultValue": null
56840
+ },
56841
+ {
56842
+ "name": "sku",
56843
+ "description": "Stock Keeping Unit. Stored on a synthesized default variant when variants[] is omitted; read it back via variants[0].sku (CloudCart puts sku on variants, not products).",
56844
+ "type": {
56845
+ "kind": "SCALAR",
56846
+ "name": "String",
56847
+ "ofType": null
56848
+ },
56849
+ "defaultValue": null
56850
+ },
56851
+ {
56852
+ "name": "barcode",
56853
+ "description": "Product barcode. Stored on a synthesized default variant when variants[] is omitted; read it back via variants[0].barcode.",
56854
+ "type": {
56855
+ "kind": "SCALAR",
56856
+ "name": "String",
56857
+ "ofType": null
56858
+ },
56859
+ "defaultValue": null
56860
+ },
56861
+ {
56862
+ "name": "price",
56863
+ "description": "Price. Stored on a synthesized default variant when variants[] is omitted; read it back via variants[0].price or price_from/price_to on the product (CloudCart prices live on variants).",
56864
+ "type": {
56865
+ "kind": "SCALAR",
56866
+ "name": "Float",
56867
+ "ofType": null
56868
+ },
56869
+ "defaultValue": null
56870
+ },
56871
+ {
56872
+ "name": "quantity",
56873
+ "description": "Initial stock quantity. Stored on a synthesized default variant when variants[] is omitted; read it back via variants[0].quantity.",
56874
+ "type": {
56875
+ "kind": "SCALAR",
56876
+ "name": "Int",
56877
+ "ofType": null
56878
+ },
56879
+ "defaultValue": null
56880
+ },
56881
+ {
56882
+ "name": "short_description",
56883
+ "description": "Short description (rich text, max 65000 chars).",
56884
+ "type": {
56885
+ "kind": "SCALAR",
56886
+ "name": "String",
56887
+ "ofType": null
56888
+ },
56889
+ "defaultValue": null
56890
+ },
56891
+ {
56892
+ "name": "description",
56893
+ "description": "Long description (rich text, max 250000 chars).",
56894
+ "type": {
56895
+ "kind": "SCALAR",
56896
+ "name": "String",
56897
+ "ofType": null
56898
+ },
56899
+ "defaultValue": null
56900
+ },
56901
+ {
56902
+ "name": "description_title",
56903
+ "description": "Description title (heading rendered above description).",
56904
+ "type": {
56905
+ "kind": "SCALAR",
56906
+ "name": "String",
56907
+ "ofType": null
56908
+ },
56909
+ "defaultValue": null
56910
+ },
56911
+ {
56912
+ "name": "seo_title",
56913
+ "description": "SEO meta title.",
56914
+ "type": {
56915
+ "kind": "SCALAR",
56916
+ "name": "String",
56917
+ "ofType": null
56918
+ },
56919
+ "defaultValue": null
56920
+ },
56921
+ {
56922
+ "name": "seo_description",
56923
+ "description": "SEO meta description.",
56924
+ "type": {
56925
+ "kind": "SCALAR",
56926
+ "name": "String",
56927
+ "ofType": null
56928
+ },
56929
+ "defaultValue": null
56930
+ },
56931
+ {
56932
+ "name": "active",
56933
+ "description": "Active flag — `yes` (default) or `no`.",
56934
+ "type": {
56935
+ "kind": "ENUM",
56936
+ "name": "YesNo",
56937
+ "ofType": null
56938
+ },
56939
+ "defaultValue": null
56940
+ },
56941
+ {
56942
+ "name": "digital",
56943
+ "description": "Digital product flag — `yes` or `no` (default).",
56944
+ "type": {
56945
+ "kind": "ENUM",
56946
+ "name": "YesNo",
56947
+ "ofType": null
56948
+ },
56949
+ "defaultValue": null
56950
+ },
56951
+ {
56952
+ "name": "shipping",
56953
+ "description": "Requires shipping — `yes` (default) or `no`.",
56954
+ "type": {
56955
+ "kind": "ENUM",
56956
+ "name": "YesNo",
56957
+ "ofType": null
56958
+ },
56959
+ "defaultValue": null
56960
+ },
56961
+ {
56962
+ "name": "tracking",
56963
+ "description": "Stock tracking flag.",
56964
+ "type": {
56965
+ "kind": "SCALAR",
56966
+ "name": "String",
56967
+ "ofType": null
56968
+ },
56969
+ "defaultValue": null
56970
+ },
56971
+ {
56972
+ "name": "draft",
56973
+ "description": "Draft mode — `yes` or `no` (default).",
56974
+ "type": {
56975
+ "kind": "ENUM",
56976
+ "name": "YesNo",
56977
+ "ofType": null
56978
+ },
56979
+ "defaultValue": null
56980
+ },
56981
+ {
56982
+ "name": "is_hidden",
56983
+ "description": "Hide from storefront listings.",
56984
+ "type": {
56985
+ "kind": "SCALAR",
56986
+ "name": "Boolean",
56987
+ "ofType": null
56988
+ },
56989
+ "defaultValue": null
56990
+ },
56991
+ {
56992
+ "name": "sale",
56993
+ "description": "On-sale badge — `yes` or `no` (default).",
56994
+ "type": {
56995
+ "kind": "ENUM",
56996
+ "name": "YesNo",
56997
+ "ofType": null
56998
+ },
56999
+ "defaultValue": null
57000
+ },
57001
+ {
57002
+ "name": "new",
57003
+ "description": "New badge — `yes` or `no` (default).",
57004
+ "type": {
57005
+ "kind": "ENUM",
57006
+ "name": "YesNo",
57007
+ "ofType": null
57008
+ },
57009
+ "defaultValue": null
57010
+ },
57011
+ {
57012
+ "name": "featured",
57013
+ "description": "Featured badge.",
57014
+ "type": {
57015
+ "kind": "SCALAR",
57016
+ "name": "Boolean",
57017
+ "ofType": null
57018
+ },
57019
+ "defaultValue": null
57020
+ },
57021
+ {
57022
+ "name": "continue_selling",
57023
+ "description": "Continue selling when out of stock — `yes` or `no` (default).",
57024
+ "type": {
57025
+ "kind": "ENUM",
57026
+ "name": "YesNo",
57027
+ "ofType": null
57028
+ },
57029
+ "defaultValue": null
57030
+ },
57031
+ {
57032
+ "name": "threshold",
57033
+ "description": "Low stock threshold.",
57034
+ "type": {
57035
+ "kind": "SCALAR",
57036
+ "name": "Int",
57037
+ "ofType": null
57038
+ },
57039
+ "defaultValue": null
57040
+ },
57041
+ {
57042
+ "name": "minimum",
57043
+ "description": "Minimum order quantity.",
57044
+ "type": {
57045
+ "kind": "SCALAR",
57046
+ "name": "Float",
57047
+ "ofType": null
57048
+ },
57049
+ "defaultValue": null
57050
+ },
57051
+ {
57052
+ "name": "category_id",
57053
+ "description": "Primary category id.",
57054
+ "type": {
57055
+ "kind": "SCALAR",
57056
+ "name": "ID",
57057
+ "ofType": null
57058
+ },
57059
+ "defaultValue": null
57060
+ },
57061
+ {
57062
+ "name": "categories_ids",
57063
+ "description": "All category ids to assign (primary + additional).",
57064
+ "type": {
57065
+ "kind": "LIST",
57066
+ "name": null,
57067
+ "ofType": {
57068
+ "kind": "NON_NULL",
57069
+ "name": null,
57070
+ "ofType": {
57071
+ "kind": "SCALAR",
57072
+ "name": "ID",
57073
+ "ofType": null
57074
+ }
57075
+ }
57076
+ },
57077
+ "defaultValue": null
57078
+ },
57079
+ {
57080
+ "name": "vendor_id",
57081
+ "description": "Vendor id.",
57082
+ "type": {
57083
+ "kind": "SCALAR",
57084
+ "name": "ID",
57085
+ "ofType": null
57086
+ },
57087
+ "defaultValue": null
57088
+ },
57089
+ {
57090
+ "name": "status_id",
57091
+ "description": "In-stock status id (overrides default).",
57092
+ "type": {
57093
+ "kind": "SCALAR",
57094
+ "name": "ID",
57095
+ "ofType": null
57096
+ },
57097
+ "defaultValue": null
57098
+ },
57099
+ {
57100
+ "name": "out_of_stock_id",
57101
+ "description": "Out-of-stock status id (overrides default).",
57102
+ "type": {
57103
+ "kind": "SCALAR",
57104
+ "name": "ID",
57105
+ "ofType": null
57106
+ },
57107
+ "defaultValue": null
57108
+ },
57109
+ {
57110
+ "name": "p1",
57111
+ "description": "Parameter axis name #1 (when using variants — e.g. 'Color').",
57112
+ "type": {
57113
+ "kind": "SCALAR",
57114
+ "name": "String",
57115
+ "ofType": null
57116
+ },
57117
+ "defaultValue": null
57118
+ },
57119
+ {
57120
+ "name": "p2",
57121
+ "description": "Parameter axis name #2 (e.g. 'Size').",
57122
+ "type": {
57123
+ "kind": "SCALAR",
57124
+ "name": "String",
57125
+ "ofType": null
57126
+ },
57127
+ "defaultValue": null
57128
+ },
57129
+ {
57130
+ "name": "p3",
57131
+ "description": "Parameter axis name #3.",
57132
+ "type": {
57133
+ "kind": "SCALAR",
57134
+ "name": "String",
57135
+ "ofType": null
57136
+ },
57137
+ "defaultValue": null
57138
+ },
57139
+ {
57140
+ "name": "tags",
57141
+ "description": "Tag names. New tags are created on the fly.",
57142
+ "type": {
57143
+ "kind": "LIST",
57144
+ "name": null,
57145
+ "ofType": {
57146
+ "kind": "NON_NULL",
57147
+ "name": null,
57148
+ "ofType": {
57149
+ "kind": "SCALAR",
57150
+ "name": "String",
57151
+ "ofType": null
57152
+ }
57153
+ }
57154
+ },
57155
+ "defaultValue": null
57156
+ },
57157
+ {
57158
+ "name": "images",
57159
+ "description": "Image URLs to download and attach. First URL becomes primary. Order preserved.",
57160
+ "type": {
57161
+ "kind": "LIST",
57162
+ "name": null,
57163
+ "ofType": {
57164
+ "kind": "NON_NULL",
57165
+ "name": null,
57166
+ "ofType": {
57167
+ "kind": "SCALAR",
57168
+ "name": "String",
57169
+ "ofType": null
57170
+ }
57171
+ }
57172
+ },
57173
+ "defaultValue": null
57174
+ },
57175
+ {
57176
+ "name": "variants",
57177
+ "description": "Variants. When provided, default-variant fields (price/sku/quantity) are ignored.",
57178
+ "type": {
57179
+ "kind": "LIST",
57180
+ "name": null,
57181
+ "ofType": {
57182
+ "kind": "NON_NULL",
57183
+ "name": null,
57184
+ "ofType": {
57185
+ "kind": "INPUT_OBJECT",
57186
+ "name": "JsonProductVariantInput",
57187
+ "ofType": null
57188
+ }
57189
+ }
57190
+ },
57191
+ "defaultValue": null
57192
+ },
57193
+ {
57194
+ "name": "category_properties",
57195
+ "description": "Category-property assignments (e.g. 'Material' → ['Cotton']).",
57196
+ "type": {
57197
+ "kind": "LIST",
57198
+ "name": null,
57199
+ "ofType": {
57200
+ "kind": "NON_NULL",
57201
+ "name": null,
57202
+ "ofType": {
57203
+ "kind": "INPUT_OBJECT",
57204
+ "name": "JsonProductPropertyInput",
57205
+ "ofType": null
57206
+ }
57207
+ }
57208
+ },
57209
+ "defaultValue": null
57210
+ },
57211
+ {
57212
+ "name": "tabs",
57213
+ "description": "Product tabs.",
57214
+ "type": {
57215
+ "kind": "LIST",
57216
+ "name": null,
57217
+ "ofType": {
57218
+ "kind": "NON_NULL",
57219
+ "name": null,
57220
+ "ofType": {
57221
+ "kind": "INPUT_OBJECT",
57222
+ "name": "CreateProductTabInput",
57223
+ "ofType": null
57224
+ }
57225
+ }
57226
+ },
57227
+ "defaultValue": null
57228
+ },
57229
+ {
57230
+ "name": "brand_model",
57231
+ "description": "Brand model assignment.",
57232
+ "type": {
57233
+ "kind": "INPUT_OBJECT",
57234
+ "name": "JsonProductBrandModelInput",
57235
+ "ofType": null
57236
+ },
57237
+ "defaultValue": null
57238
+ },
57239
+ {
57240
+ "name": "sort_order",
57241
+ "description": "Manual sort order in listings.",
57242
+ "type": {
57243
+ "kind": "SCALAR",
57244
+ "name": "Int",
57245
+ "ofType": null
57246
+ },
57247
+ "defaultValue": null
57248
+ },
57249
+ {
57250
+ "name": "publish_date",
57251
+ "description": "Publish date — product becomes visible at this time.",
57252
+ "type": {
57253
+ "kind": "SCALAR",
57254
+ "name": "DateTime",
57255
+ "ofType": null
57256
+ },
57257
+ "defaultValue": null
57258
+ },
57259
+ {
57260
+ "name": "active_to",
57261
+ "description": "Deactivation date — product becomes inactive at this time.",
57262
+ "type": {
57263
+ "kind": "SCALAR",
57264
+ "name": "DateTime",
57265
+ "ofType": null
57266
+ },
57267
+ "defaultValue": null
57268
+ },
57269
+ {
57270
+ "name": "unit_id",
57271
+ "description": "Unit id (for grocery / measured products).",
57272
+ "type": {
57273
+ "kind": "SCALAR",
57274
+ "name": "ID",
57275
+ "ofType": null
57276
+ },
57277
+ "defaultValue": null
57278
+ },
57279
+ {
57280
+ "name": "type_digital",
57281
+ "description": "Digital product type (page or file) — only relevant when `digital: yes`.",
57282
+ "type": {
57283
+ "kind": "ENUM",
57284
+ "name": "DigitalType",
57285
+ "ofType": null
57286
+ },
57287
+ "defaultValue": null
57288
+ }
57289
+ ],
57290
+ "interfaces": null,
57291
+ "enumValues": null,
57292
+ "possibleTypes": null
57293
+ },
57294
+ {
57295
+ "kind": "INPUT_OBJECT",
57296
+ "name": "JsonProductVariantInput",
57297
+ "description": "Variant for a product created via productsBulkCreate. `v1`/`v2`/`v3` are the values along the corresponding `p1`/`p2`/`p3` parameter axes.",
57298
+ "fields": null,
57299
+ "inputFields": [
57300
+ {
57301
+ "name": "v1",
57302
+ "description": "Value along the p1 axis (e.g. 'Red').",
57303
+ "type": {
57304
+ "kind": "SCALAR",
57305
+ "name": "String",
57306
+ "ofType": null
57307
+ },
57308
+ "defaultValue": null
57309
+ },
57310
+ {
57311
+ "name": "v2",
57312
+ "description": "Value along the p2 axis (e.g. 'Large').",
57313
+ "type": {
57314
+ "kind": "SCALAR",
57315
+ "name": "String",
57316
+ "ofType": null
57317
+ },
57318
+ "defaultValue": null
57319
+ },
57320
+ {
57321
+ "name": "v3",
57322
+ "description": "Value along the p3 axis.",
57323
+ "type": {
57324
+ "kind": "SCALAR",
57325
+ "name": "String",
57326
+ "ofType": null
57327
+ },
57328
+ "defaultValue": null
57329
+ },
57330
+ {
57331
+ "name": "sku",
57332
+ "description": "Variant SKU.",
57333
+ "type": {
57334
+ "kind": "SCALAR",
57335
+ "name": "String",
57336
+ "ofType": null
57337
+ },
57338
+ "defaultValue": null
57339
+ },
57340
+ {
57341
+ "name": "barcode",
57342
+ "description": "Variant barcode.",
57343
+ "type": {
57344
+ "kind": "SCALAR",
57345
+ "name": "String",
57346
+ "ofType": null
57347
+ },
57348
+ "defaultValue": null
57349
+ },
57350
+ {
57351
+ "name": "price",
57352
+ "description": "Variant price.",
57353
+ "type": {
57354
+ "kind": "SCALAR",
57355
+ "name": "Float",
57356
+ "ofType": null
57357
+ },
57358
+ "defaultValue": null
57359
+ },
57360
+ {
57361
+ "name": "quantity",
57362
+ "description": "Variant initial quantity.",
57363
+ "type": {
57364
+ "kind": "SCALAR",
57365
+ "name": "Int",
57366
+ "ofType": null
57367
+ },
57368
+ "defaultValue": null
57369
+ },
57370
+ {
57371
+ "name": "weight",
57372
+ "description": "Variant weight (for shipping calculation).",
57373
+ "type": {
57374
+ "kind": "SCALAR",
57375
+ "name": "Float",
57376
+ "ofType": null
57377
+ },
57378
+ "defaultValue": null
57379
+ },
57380
+ {
57381
+ "name": "minimum",
57382
+ "description": "Variant minimum order quantity.",
57383
+ "type": {
57384
+ "kind": "SCALAR",
57385
+ "name": "Float",
57386
+ "ofType": null
57387
+ },
57388
+ "defaultValue": null
57389
+ },
57390
+ {
57391
+ "name": "image_urls",
57392
+ "description": "Variant-specific image URLs.",
57393
+ "type": {
57394
+ "kind": "LIST",
57395
+ "name": null,
57396
+ "ofType": {
57397
+ "kind": "NON_NULL",
57398
+ "name": null,
57399
+ "ofType": {
57400
+ "kind": "SCALAR",
57401
+ "name": "String",
57402
+ "ofType": null
57403
+ }
57404
+ }
57405
+ },
57406
+ "defaultValue": null
57407
+ }
57408
+ ],
57409
+ "interfaces": null,
57410
+ "enumValues": null,
57411
+ "possibleTypes": null
57412
+ },
57413
+ {
57414
+ "kind": "INPUT_OBJECT",
57415
+ "name": "JsonProductPropertyInput",
57416
+ "description": "Category-property assignment for a product. Property must exist on one of the product's categories — otherwise it is skipped.",
57417
+ "fields": null,
57418
+ "inputFields": [
57419
+ {
57420
+ "name": "name",
57421
+ "description": "Property name (must match an existing categoryProperty.name on the product's category tree).",
57422
+ "type": {
57423
+ "kind": "NON_NULL",
57424
+ "name": null,
57425
+ "ofType": {
57426
+ "kind": "SCALAR",
57427
+ "name": "String",
57428
+ "ofType": null
57429
+ }
57430
+ },
57431
+ "defaultValue": null
57432
+ },
57433
+ {
57434
+ "name": "values",
57435
+ "description": "One or more values. Multi-value properties accept arrays; single-value properties take the first element.",
57436
+ "type": {
57437
+ "kind": "NON_NULL",
57438
+ "name": null,
57439
+ "ofType": {
57440
+ "kind": "LIST",
57441
+ "name": null,
57442
+ "ofType": {
57443
+ "kind": "NON_NULL",
57444
+ "name": null,
57445
+ "ofType": {
57446
+ "kind": "SCALAR",
57447
+ "name": "String",
57448
+ "ofType": null
57449
+ }
57450
+ }
57451
+ }
57452
+ },
57453
+ "defaultValue": null
57454
+ }
57455
+ ],
57456
+ "interfaces": null,
57457
+ "enumValues": null,
57458
+ "possibleTypes": null
57459
+ },
57460
+ {
57461
+ "kind": "INPUT_OBJECT",
57462
+ "name": "JsonProductBrandModelInput",
57463
+ "description": "Brand model assignment — pins the product to a specific (brand, model) pair.",
57464
+ "fields": null,
57465
+ "inputFields": [
57466
+ {
57467
+ "name": "brand_id",
57468
+ "description": "Brand id.",
57469
+ "type": {
57470
+ "kind": "SCALAR",
57471
+ "name": "ID",
57472
+ "ofType": null
57473
+ },
57474
+ "defaultValue": null
57475
+ },
57476
+ {
57477
+ "name": "model_id",
57478
+ "description": "Model id.",
57479
+ "type": {
57480
+ "kind": "SCALAR",
57481
+ "name": "ID",
57482
+ "ofType": null
57483
+ },
57484
+ "defaultValue": null
57485
+ }
57486
+ ],
57487
+ "interfaces": null,
57488
+ "enumValues": null,
57489
+ "possibleTypes": null
57490
+ },
56753
57491
  {
56754
57492
  "kind": "OBJECT",
56755
57493
  "name": "UserError",