11388 lines
410 KiB
JSON
11388 lines
410 KiB
JSON
{
|
|
"schema_version": "v1",
|
|
"tools": [
|
|
{
|
|
"name": "add_to_collection",
|
|
"description": "Add products to a collection.\n\nArgs:\n collection_id: The collection ID\n product_ids: Product IDs to add\n\nReturns:\n Updated collection with lists of added/already-present products",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"collection_id": {
|
|
"type": "string"
|
|
},
|
|
"product_ids": {
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"collection_id",
|
|
"product_ids"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "award_points",
|
|
"description": "Manually award loyalty points to a customer. Grows both spendable balance and lifetime points.\n\nArgs:\n customer_id: The customer's GID.\n points: Positive integer of points to award.\n reason: Optional reason for the award (e.g., 'Birthday bonus').",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"customer_id": {
|
|
"type": "string"
|
|
},
|
|
"points": {
|
|
"type": "integer"
|
|
},
|
|
"reason": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"customer_id",
|
|
"points"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "cancel_order",
|
|
"description": "Cancel an order. Sets financial status to REFUNDED and records cancellation time.\n\nArgs:\n order_id: The order ID to cancel\n reason: Reason for cancellation (appended to order note)\n\nReturns:\n Cancelled order details",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"order_id": {
|
|
"type": "string"
|
|
},
|
|
"reason": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"order_id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "configure_loyalty_program",
|
|
"description": "Configure the store's loyalty program.\n\nArgs:\n enabled: Whether the program is active.\n earn_rate: Points earned per $1 of order subtotal (e.g., 1 = 1 point per dollar).\n redemption_rate: Points needed to equal $1 when redeeming (e.g., 100 = 100pts per dollar off).\n max_redemption_percent: Cap on what percent of an order's subtotal can be paid with points (0-100).\n tiers: List of {name, min_lifetime_points, discount_percent}. Replaces existing tiers.\n\nReturns:\n The updated program configuration.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"enabled": {
|
|
"anyOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"earn_rate": {
|
|
"anyOf": [
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"redemption_rate": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"max_redemption_percent": {
|
|
"anyOf": [
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"tiers": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "create_collection",
|
|
"description": "Create a new product collection (e.g., 'Summer Sale', 'Best Sellers').\n\nArgs:\n title: Collection title (must be unique)\n description: Collection description\n product_ids: Product IDs to include initially (optional)\n sort_order: Sort order (MANUAL, BEST_SELLING, ALPHA_ASC, ALPHA_DESC, PRICE_ASC, PRICE_DESC, CREATED_DESC)\n\nReturns:\n The created collection",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"default": "",
|
|
"type": "string"
|
|
},
|
|
"product_ids": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"sort_order": {
|
|
"default": "MANUAL",
|
|
"type": "string"
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"title"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "create_customer",
|
|
"description": "Create a new customer account.\n\nArgs:\n email: Customer email address (must be unique)\n first_name: Customer first name\n last_name: Customer last name\n phone: Customer phone number\n address: Default address with fields like firstName, lastName, address1, city, zip, countryCode\n tags: Tags for categorizing the customer (e.g., 'vip', 'wholesale')\n note: Internal note about the customer\n accepts_marketing: Whether customer consents to marketing emails\n\nReturns:\n The created customer profile",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"email": {
|
|
"type": "string"
|
|
},
|
|
"first_name": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"last_name": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"phone": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"address": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"tags": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"note": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"accepts_marketing": {
|
|
"default": false,
|
|
"type": "boolean"
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"email"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "create_discount_code",
|
|
"description": "Create a new discount code for the store.\n\nArgs:\n code: The discount code string (e.g., 'SUMMER20', 'WELCOME10')\n value: Discount value (e.g., '20' for 20% off, '10.00' for $10 off)\n discount_type: Type of discount \u2014 PERCENTAGE, FIXED_AMOUNT, or FREE_SHIPPING\n minimum_purchase: Minimum purchase amount to qualify (optional)\n usage_limit: Maximum number of times the code can be used (optional, null = unlimited)\n product_ids: Product IDs this discount applies to (optional, null = all products)\n minimum_tier: Loyalty tier name required to use this code (optional, null = no tier gate)\n\nReturns:\n The created discount code",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"code": {
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"type": "string"
|
|
},
|
|
"discount_type": {
|
|
"default": "PERCENTAGE",
|
|
"type": "string"
|
|
},
|
|
"minimum_purchase": {
|
|
"anyOf": [
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"usage_limit": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"product_ids": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"minimum_tier": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"code",
|
|
"value"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "create_my_return",
|
|
"description": "Create a return request, only if the order belongs to the current customer.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"order_id": {
|
|
"type": "string"
|
|
},
|
|
"line_items": {
|
|
"items": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"reason": {
|
|
"default": "",
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"order_id",
|
|
"line_items"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "create_my_review",
|
|
"description": "Post a product review as the current customer. Author name and email are\nfilled in automatically from the customer's profile.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"product_id": {
|
|
"type": "string"
|
|
},
|
|
"rating": {
|
|
"maximum": 5,
|
|
"minimum": 1,
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"default": "",
|
|
"type": "string"
|
|
},
|
|
"body": {
|
|
"default": "",
|
|
"type": "string"
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"product_id",
|
|
"rating"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "create_order",
|
|
"description": "Place an order from an existing cart. Requires payment, addresses, and shipping method.\n\nArgs:\n cart_id: The cart ID to convert into an order\n payment_method: Payment info. For credit card: {type: \"credit_card\", card_number: \"4111111111111111\", cvv: \"123\", expiry: \"12/26\"}. For digital wallets: {type: \"google_pay\"|\"apple_pay\"|\"paypal\", email: \"user@example.com\"}\n shipping_address: Shipping address (required: address1, city, countryCode)\n billing_address: Billing address (same format as shipping)\n shipping_method_id: Shipping method ID (e.g., 'standard', 'express'). If omitted, checkout uses the cart's selected delivery option.\n discount_code: Discount code to apply (optional). PERCENTAGE/FIXED_AMOUNT discounts reduce the item subtotal. FREE_SHIPPING removes shipping cost. Product-scoped discounts only apply to matching items.\n email: Customer email (falls back to cart buyer identity email, then current customer email)\n phone: Customer phone (falls back to cart buyer identity phone)\n note: Order note or special instructions\n tags: Tags for categorizing the order\n redeem_points: Loyalty points to redeem on this order. Requires a matching customer email.\n apply_tier_discount: Whether to auto-apply the customer's loyalty tier discount.\n\nReturns:\n The created order with line items, totals, shipping, discount, payment info, and status",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"cart_id": {
|
|
"type": "string"
|
|
},
|
|
"payment_method": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
"shipping_address": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
"billing_address": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
"shipping_method_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"discount_code": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"email": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"phone": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"note": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"tags": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"redeem_points": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"apply_tier_discount": {
|
|
"default": true,
|
|
"type": "boolean"
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"cart_id",
|
|
"payment_method",
|
|
"shipping_address",
|
|
"billing_address"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "create_policy",
|
|
"description": "Create a new store policy.\n\nArgs:\n title: Policy title (e.g., 'Return Policy', 'Shipping Policy')\n body: Policy content (HTML)\n\nReturns:\n The created policy",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"body": {
|
|
"type": "string"
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"title",
|
|
"body"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "create_product",
|
|
"description": "Create a new product in the store.\n\nArgs:\n title: Product title\n description: Product description\n product_type: Product type (e.g., 'Electronics', 'Apparel')\n vendor: Brand/vendor name\n tags: Searchable tags (e.g., ['wireless', 'headphones'])\n variants: Product variants, each with title, price, sku, quantityAvailable\n\nReturns:\n The created product with its variants",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"default": "",
|
|
"type": "string"
|
|
},
|
|
"product_type": {
|
|
"default": "",
|
|
"type": "string"
|
|
},
|
|
"vendor": {
|
|
"default": "",
|
|
"type": "string"
|
|
},
|
|
"tags": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"variants": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"title"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "create_return",
|
|
"description": "Create a return request for an order. Validates line items against the order.\n\nArgs:\n order_id: The order ID to return against\n line_items: Items to return, each with orderLineItemId, quantity, and optional reason\n reason: Overall reason for the return\n note: Internal note about the return\n\nReturns:\n The created return with calculated refund amount",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"order_id": {
|
|
"type": "string"
|
|
},
|
|
"line_items": {
|
|
"items": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"reason": {
|
|
"default": "",
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"order_id",
|
|
"line_items"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "create_review",
|
|
"description": "Create a product review.\n\nArgs:\n product_id: The product ID to review\n rating: Rating from 1 to 5\n author: Author name\n title: Review title (optional)\n body: Review text (optional)\n email: Author email (optional)\n\nReturns:\n The created review",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"product_id": {
|
|
"type": "string"
|
|
},
|
|
"rating": {
|
|
"maximum": 5,
|
|
"minimum": 1,
|
|
"type": "integer"
|
|
},
|
|
"author": {
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"default": "",
|
|
"type": "string"
|
|
},
|
|
"body": {
|
|
"default": "",
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"product_id",
|
|
"rating",
|
|
"author"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "create_shipping_method",
|
|
"description": "Create a new shipping method for the store.\n\nArgs:\n title: Display name (e.g., 'Standard Shipping', 'Express')\n price: Shipping cost as string (e.g., '5.99', '0.00' for free)\n estimated_days: Estimated delivery time (e.g., '5-7 business days')\n\nReturns:\n The created shipping method",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"title": {
|
|
"type": "string"
|
|
},
|
|
"price": {
|
|
"type": "string"
|
|
},
|
|
"estimated_days": {
|
|
"default": "",
|
|
"type": "string"
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"title",
|
|
"price"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "delete_discount_code",
|
|
"description": "Delete a discount code from the store.\n\nArgs:\n code: The discount code to delete\n\nReturns:\n The deleted code",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"code": {
|
|
"type": "string"
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"code"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "delete_policy",
|
|
"description": "Delete a store policy.\n\nArgs:\n policy_id: The policy ID to delete\n\nReturns:\n The deleted policy ID",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"policy_id": {
|
|
"type": "string"
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"policy_id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "delete_product",
|
|
"description": "Delete a product from the store. Also removes it from any collections\nand deletes associated reviews.\n\nArgs:\n product_id: The product ID to delete\n\nReturns:\n The deleted product ID",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"product_id": {
|
|
"type": "string"
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"product_id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "delete_review",
|
|
"description": "Delete a product review.\n\nArgs:\n review_id: The review ID to delete\n\nReturns:\n The deleted review ID",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"review_id": {
|
|
"type": "string"
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"review_id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "delete_shipping_method",
|
|
"description": "Delete a shipping method from the store.\n\nArgs:\n shipping_method_id: The shipping method ID to delete\n\nReturns:\n The deleted method ID",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"shipping_method_id": {
|
|
"type": "string"
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"shipping_method_id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "export_state",
|
|
"description": "Export the full shopify state as JSON.\n\nSingle-store worlds emit the flat shape; multi-store worlds emit a\n``{\"stores\": {store_id: ...}}`` wrapper. Round-trips with import_state.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {},
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"description": "Full shopify state \u2014 round-trips with ShopifyState.to_dict().\n\nState entities are loaded into Pydantic models while exposing temporary\ndict-style access for legacy handlers. ``extra=\"allow\"`` preserves\nmock-specific metadata that tools may carry but the core Shopify-shaped\nmodels do not yet describe.",
|
|
"properties": {
|
|
"products": {
|
|
"additionalProperties": {
|
|
"additionalProperties": true,
|
|
"description": "Product relaxed for synthetic/legacy snapshot shapes.\n\nSeeded fixtures and synthetic data often include only the minimum product\nfields (id, title, variants), so we drop the strict ``handle`` /\n``priceRange`` requirements here and relax ``options`` to the fixture\nshape ({name, values}).",
|
|
"properties": {
|
|
"id": {
|
|
"description": "Globally-unique ID",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"description": "Product title",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"default": "",
|
|
"description": "Product description (plain text)",
|
|
"type": "string"
|
|
},
|
|
"descriptionHtml": {
|
|
"default": "",
|
|
"description": "Product description (HTML)",
|
|
"type": "string"
|
|
},
|
|
"handle": {
|
|
"anyOf": [
|
|
{
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"productType": {
|
|
"default": "",
|
|
"description": "Product type defined by merchant",
|
|
"type": "string"
|
|
},
|
|
"vendor": {
|
|
"default": "",
|
|
"description": "Product vendor name",
|
|
"type": "string"
|
|
},
|
|
"tags": {
|
|
"description": "Searchable tags",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"availableForSale": {
|
|
"anyOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"priceRange": {
|
|
"anyOf": [
|
|
{
|
|
"description": "The price range of a product (Shopify ProductPriceRange type).",
|
|
"properties": {
|
|
"minVariantPrice": {
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"maxVariantPrice": {
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"minVariantPrice",
|
|
"maxVariantPrice"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"compareAtPriceRange": {
|
|
"anyOf": [
|
|
{
|
|
"description": "The price range of a product (Shopify ProductPriceRange type).",
|
|
"properties": {
|
|
"minVariantPrice": {
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"maxVariantPrice": {
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"minVariantPrice",
|
|
"maxVariantPrice"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Compare-at price range"
|
|
},
|
|
"featuredImage": {
|
|
"anyOf": [
|
|
{
|
|
"description": "An image resource (Shopify Image type).",
|
|
"properties": {
|
|
"id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"url": {
|
|
"description": "The URL of the image",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"altText": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Alt text for the image"
|
|
},
|
|
"width": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Image width in pixels"
|
|
},
|
|
"height": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Image height in pixels"
|
|
}
|
|
},
|
|
"required": [
|
|
"url"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Featured product image"
|
|
},
|
|
"images": {
|
|
"description": "Product images",
|
|
"items": {
|
|
"description": "An image resource (Shopify Image type).",
|
|
"properties": {
|
|
"id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"url": {
|
|
"description": "The URL of the image",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"altText": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Alt text for the image"
|
|
},
|
|
"width": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Image width in pixels"
|
|
},
|
|
"height": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Image height in pixels"
|
|
}
|
|
},
|
|
"required": [
|
|
"url"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"options": {
|
|
"items": {
|
|
"additionalProperties": true,
|
|
"description": "ProductOption whose `id` is optional \u2014 fixture data often omits it.",
|
|
"properties": {
|
|
"id": {
|
|
"anyOf": [
|
|
{
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"name": {
|
|
"description": "The option name (e.g., 'Size', 'Color')",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"values": {
|
|
"description": "Available values for this option",
|
|
"items": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"required": [
|
|
"name"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"variants": {
|
|
"description": "Product variants",
|
|
"items": {
|
|
"description": "A product variant (Shopify ProductVariant type).",
|
|
"properties": {
|
|
"id": {
|
|
"description": "Globally-unique ID",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"description": "The variant's title",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"price": {
|
|
"description": "The variant's price",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"compareAtPrice": {
|
|
"anyOf": [
|
|
{
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Compare-at price for sale pricing"
|
|
},
|
|
"availableForSale": {
|
|
"default": true,
|
|
"description": "Whether the variant is available for sale",
|
|
"type": "boolean"
|
|
},
|
|
"sku": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "SKU (stock keeping unit)"
|
|
},
|
|
"barcode": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Barcode (ISBN, UPC, GTIN)"
|
|
},
|
|
"selectedOptions": {
|
|
"description": "Selected options for this variant",
|
|
"items": {
|
|
"description": "A selected product option (Shopify SelectedOption type).",
|
|
"properties": {
|
|
"name": {
|
|
"description": "The option name (e.g., 'Size')",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"description": "The option value (e.g., 'Large')",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"name",
|
|
"value"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"image": {
|
|
"anyOf": [
|
|
{
|
|
"description": "An image resource (Shopify Image type).",
|
|
"properties": {
|
|
"id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"url": {
|
|
"description": "The URL of the image",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"altText": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Alt text for the image"
|
|
},
|
|
"width": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Image width in pixels"
|
|
},
|
|
"height": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Image height in pixels"
|
|
}
|
|
},
|
|
"required": [
|
|
"url"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Image associated with the variant"
|
|
},
|
|
"weight": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Weight of the variant"
|
|
},
|
|
"weightUnit": {
|
|
"default": "KILOGRAMS",
|
|
"description": "Unit of weight measurement",
|
|
"enum": [
|
|
"GRAMS",
|
|
"KILOGRAMS",
|
|
"OUNCES",
|
|
"POUNDS"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"quantityAvailable": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Quantity available for sale"
|
|
},
|
|
"currentlyNotInStock": {
|
|
"default": false,
|
|
"description": "Whether out of stock but available for backorder",
|
|
"type": "boolean"
|
|
},
|
|
"requiresShipping": {
|
|
"default": true,
|
|
"description": "Whether shipping is required",
|
|
"type": "boolean"
|
|
},
|
|
"taxable": {
|
|
"default": true,
|
|
"description": "Whether tax is charged",
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"title",
|
|
"price"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"seo": {
|
|
"anyOf": [
|
|
{
|
|
"description": "SEO information (Shopify SEO type).",
|
|
"properties": {
|
|
"title": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"description": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "SEO title and description"
|
|
},
|
|
"onlineStoreUrl": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "URL on the online store"
|
|
},
|
|
"createdAt": {
|
|
"anyOf": [
|
|
{
|
|
"description": "RFC 3339 timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Creation timestamp"
|
|
},
|
|
"updatedAt": {
|
|
"anyOf": [
|
|
{
|
|
"description": "RFC 3339 timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Last update timestamp"
|
|
},
|
|
"publishedAt": {
|
|
"anyOf": [
|
|
{
|
|
"description": "RFC 3339 timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Publication timestamp"
|
|
},
|
|
"isGiftCard": {
|
|
"default": false,
|
|
"description": "Whether product is a gift card",
|
|
"type": "boolean"
|
|
},
|
|
"totalInventory": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Total inventory quantity"
|
|
},
|
|
"trackingParameters": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "URL tracking parameters"
|
|
},
|
|
"category": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"categoryId": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"productCategory": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"title"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"description": "Products keyed by product gid",
|
|
"type": "object"
|
|
},
|
|
"carts": {
|
|
"additionalProperties": {
|
|
"additionalProperties": true,
|
|
"description": "Cart state that accepts compact synthetic cart fixtures.",
|
|
"properties": {
|
|
"id": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"checkoutUrl": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"createdAt": {
|
|
"anyOf": [
|
|
{
|
|
"description": "RFC 3339 timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"updatedAt": {
|
|
"anyOf": [
|
|
{
|
|
"description": "RFC 3339 timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"lines": {
|
|
"items": {
|
|
"description": "A line item in the cart (Shopify CartLine type).",
|
|
"properties": {
|
|
"id": {
|
|
"description": "Globally-unique ID",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"quantity": {
|
|
"description": "Quantity of the item",
|
|
"minimum": 1,
|
|
"type": "integer"
|
|
},
|
|
"merchandise": {
|
|
"description": "The merchandise (variant)",
|
|
"properties": {
|
|
"id": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"product": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Parent product info"
|
|
},
|
|
"image": {
|
|
"anyOf": [
|
|
{
|
|
"description": "An image resource (Shopify Image type).",
|
|
"properties": {
|
|
"id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"url": {
|
|
"description": "The URL of the image",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"altText": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Alt text for the image"
|
|
},
|
|
"width": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Image width in pixels"
|
|
},
|
|
"height": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Image height in pixels"
|
|
}
|
|
},
|
|
"required": [
|
|
"url"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"selectedOptions": {
|
|
"items": {
|
|
"description": "A selected product option (Shopify SelectedOption type).",
|
|
"properties": {
|
|
"name": {
|
|
"description": "The option name (e.g., 'Size')",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"description": "The option value (e.g., 'Large')",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"name",
|
|
"value"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"price": {
|
|
"description": "Variant price",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"title",
|
|
"price"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"cost": {
|
|
"description": "Cost breakdown",
|
|
"properties": {
|
|
"amountPerQuantity": {
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"compareAtAmountPerQuantity": {
|
|
"anyOf": [
|
|
{
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"subtotalAmount": {
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"totalAmount": {
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"amountPerQuantity",
|
|
"subtotalAmount",
|
|
"totalAmount"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"attributes": {
|
|
"items": {
|
|
"description": "A key-value attribute (Shopify Attribute type).",
|
|
"properties": {
|
|
"key": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
}
|
|
},
|
|
"required": [
|
|
"key"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"discountAllocations": {
|
|
"items": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"quantity",
|
|
"merchandise",
|
|
"cost"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"cost": {
|
|
"anyOf": [
|
|
{
|
|
"description": "Cart cost breakdown (Shopify CartCost type).",
|
|
"properties": {
|
|
"subtotalAmount": {
|
|
"description": "Amount before taxes and discounts",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"subtotalAmountEstimated": {
|
|
"default": false,
|
|
"description": "Whether subtotal is estimated",
|
|
"type": "boolean"
|
|
},
|
|
"totalAmount": {
|
|
"description": "Total amount for customer to pay",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"totalAmountEstimated": {
|
|
"default": false,
|
|
"description": "Whether total is estimated",
|
|
"type": "boolean"
|
|
},
|
|
"totalTaxAmount": {
|
|
"anyOf": [
|
|
{
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Total tax amount"
|
|
},
|
|
"totalTaxAmountEstimated": {
|
|
"default": false,
|
|
"type": "boolean"
|
|
},
|
|
"checkoutChargeAmount": {
|
|
"description": "Amount to pay at checkout",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"subtotalAmount",
|
|
"totalAmount",
|
|
"checkoutChargeAmount"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"buyerIdentity": {
|
|
"description": "Information about the buyer (Shopify CartBuyerIdentity type).",
|
|
"properties": {
|
|
"email": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"phone": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"countryCode": {
|
|
"anyOf": [
|
|
{
|
|
"pattern": "^[A-Z]{2}$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "ISO country code for regional pricing"
|
|
},
|
|
"customer": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Associated customer"
|
|
},
|
|
"deliveryAddressPreferences": {
|
|
"items": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"attributes": {
|
|
"items": {
|
|
"description": "A key-value attribute (Shopify Attribute type).",
|
|
"properties": {
|
|
"key": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
}
|
|
},
|
|
"required": [
|
|
"key"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"discountCodes": {
|
|
"items": {
|
|
"description": "A discount code applied to the cart (Shopify CartDiscountCode type).",
|
|
"properties": {
|
|
"code": {
|
|
"description": "The discount code",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"applicable": {
|
|
"default": true,
|
|
"description": "Whether the code is applicable",
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
"required": [
|
|
"code"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"discountAllocations": {
|
|
"items": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"appliedGiftCards": {
|
|
"items": {
|
|
"description": "A gift card applied to the cart (Shopify AppliedGiftCard type).",
|
|
"properties": {
|
|
"id": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"code": {
|
|
"anyOf": [
|
|
{
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Gift card code used to look up the backing balance"
|
|
},
|
|
"lastCharacters": {
|
|
"description": "Last 4 characters of the gift card code",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"amountUsed": {
|
|
"description": "Amount used from the gift card",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"balance": {
|
|
"description": "Remaining balance",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"presentmentAmountUsed": {
|
|
"description": "Amount used in presentment currency",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"lastCharacters",
|
|
"amountUsed",
|
|
"balance",
|
|
"presentmentAmountUsed"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"deliveryGroups": {
|
|
"items": {
|
|
"description": "A delivery group (Shopify CartDeliveryGroup type).",
|
|
"properties": {
|
|
"id": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"deliveryOptions": {
|
|
"items": {
|
|
"description": "A delivery option (Shopify CartDeliveryOption type).",
|
|
"properties": {
|
|
"handle": {
|
|
"description": "Unique handle for the option",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"description": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"estimatedCost": {
|
|
"description": "Estimated delivery cost",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"code": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Delivery option code"
|
|
}
|
|
},
|
|
"required": [
|
|
"handle",
|
|
"estimatedCost"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"selectedDeliveryOption": {
|
|
"anyOf": [
|
|
{
|
|
"description": "A delivery option (Shopify CartDeliveryOption type).",
|
|
"properties": {
|
|
"handle": {
|
|
"description": "Unique handle for the option",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"description": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"estimatedCost": {
|
|
"description": "Estimated delivery cost",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"code": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Delivery option code"
|
|
}
|
|
},
|
|
"required": [
|
|
"handle",
|
|
"estimatedCost"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"cartLines": {
|
|
"description": "Lines in this group",
|
|
"items": {
|
|
"description": "A line item in the cart (Shopify CartLine type).",
|
|
"properties": {
|
|
"id": {
|
|
"description": "Globally-unique ID",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"quantity": {
|
|
"description": "Quantity of the item",
|
|
"minimum": 1,
|
|
"type": "integer"
|
|
},
|
|
"merchandise": {
|
|
"description": "The merchandise (variant)",
|
|
"properties": {
|
|
"id": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"product": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Parent product info"
|
|
},
|
|
"image": {
|
|
"anyOf": [
|
|
{
|
|
"description": "An image resource (Shopify Image type).",
|
|
"properties": {
|
|
"id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"url": {
|
|
"description": "The URL of the image",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"altText": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Alt text for the image"
|
|
},
|
|
"width": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Image width in pixels"
|
|
},
|
|
"height": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Image height in pixels"
|
|
}
|
|
},
|
|
"required": [
|
|
"url"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"selectedOptions": {
|
|
"items": {
|
|
"description": "A selected product option (Shopify SelectedOption type).",
|
|
"properties": {
|
|
"name": {
|
|
"description": "The option name (e.g., 'Size')",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"description": "The option value (e.g., 'Large')",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"name",
|
|
"value"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"price": {
|
|
"description": "Variant price",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"title",
|
|
"price"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"cost": {
|
|
"description": "Cost breakdown",
|
|
"properties": {
|
|
"amountPerQuantity": {
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"compareAtAmountPerQuantity": {
|
|
"anyOf": [
|
|
{
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"subtotalAmount": {
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"totalAmount": {
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"amountPerQuantity",
|
|
"subtotalAmount",
|
|
"totalAmount"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"attributes": {
|
|
"items": {
|
|
"description": "A key-value attribute (Shopify Attribute type).",
|
|
"properties": {
|
|
"key": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
}
|
|
},
|
|
"required": [
|
|
"key"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"discountAllocations": {
|
|
"items": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"quantity",
|
|
"merchandise",
|
|
"cost"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"required": [
|
|
"id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"totalQuantity": {
|
|
"default": 0,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"note": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
}
|
|
},
|
|
"required": [
|
|
"id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"description": "Carts keyed by cart gid",
|
|
"type": "object"
|
|
},
|
|
"orders": {
|
|
"additionalProperties": {
|
|
"additionalProperties": true,
|
|
"description": "Order state with mock-specific extensions preserved.",
|
|
"properties": {
|
|
"id": {
|
|
"description": "Globally-unique ID",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"description": "Display name, e.g. '#1001'",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Customer email"
|
|
},
|
|
"phone": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Customer phone"
|
|
},
|
|
"createdAt": {
|
|
"description": "Creation timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
"updatedAt": {
|
|
"description": "Last update timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
"cancelledAt": {
|
|
"anyOf": [
|
|
{
|
|
"description": "RFC 3339 timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Cancellation timestamp"
|
|
},
|
|
"financialStatus": {
|
|
"default": "PENDING",
|
|
"description": "Financial status",
|
|
"enum": [
|
|
"PENDING",
|
|
"PAID",
|
|
"VOIDED",
|
|
"REFUNDED",
|
|
"PARTIALLY_REFUNDED"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"fulfillmentStatus": {
|
|
"default": "UNFULFILLED",
|
|
"description": "Fulfillment status",
|
|
"enum": [
|
|
"UNFULFILLED",
|
|
"FULFILLED",
|
|
"PARTIALLY_FULFILLED"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"trackingNumber": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Tracking number assigned at fulfillment (null until fulfilled)"
|
|
},
|
|
"trackingUrl": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Tracking URL assigned at fulfillment"
|
|
},
|
|
"lineItems": {
|
|
"description": "Order line items",
|
|
"items": {
|
|
"description": "A line item in an order.",
|
|
"properties": {
|
|
"id": {
|
|
"description": "Globally-unique ID",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"description": "Product title",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"variantTitle": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Variant title"
|
|
},
|
|
"quantity": {
|
|
"description": "Quantity ordered",
|
|
"minimum": 1,
|
|
"type": "integer"
|
|
},
|
|
"sku": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "SKU"
|
|
},
|
|
"variantId": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Product variant ID"
|
|
},
|
|
"productId": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Product ID"
|
|
},
|
|
"price": {
|
|
"description": "Unit price",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"totalPrice": {
|
|
"description": "Total price (price * quantity)",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"image": {
|
|
"anyOf": [
|
|
{
|
|
"description": "An image resource (Shopify Image type).",
|
|
"properties": {
|
|
"id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"url": {
|
|
"description": "The URL of the image",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"altText": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Alt text for the image"
|
|
},
|
|
"width": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Image width in pixels"
|
|
},
|
|
"height": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Image height in pixels"
|
|
}
|
|
},
|
|
"required": [
|
|
"url"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Product image"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"title",
|
|
"quantity",
|
|
"price",
|
|
"totalPrice"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"subtotalPrice": {
|
|
"description": "Subtotal before tax/shipping",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"totalPrice": {
|
|
"description": "Total amount",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"totalTax": {
|
|
"anyOf": [
|
|
{
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Total tax"
|
|
},
|
|
"shippingAddress": {
|
|
"anyOf": [
|
|
{
|
|
"description": "A mailing/delivery address (Shopify MailingAddress type).",
|
|
"properties": {
|
|
"firstName": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"lastName": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"phone": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"address1": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"address2": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"city": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"provinceCode": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"zip": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"countryCode": {
|
|
"anyOf": [
|
|
{
|
|
"pattern": "^[A-Z]{2}$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "ISO country code"
|
|
},
|
|
"company": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"country": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"province": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"formatted": {
|
|
"description": "Formatted address lines",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Shipping address"
|
|
},
|
|
"billingAddress": {
|
|
"anyOf": [
|
|
{
|
|
"description": "A mailing/delivery address (Shopify MailingAddress type).",
|
|
"properties": {
|
|
"firstName": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"lastName": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"phone": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"address1": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"address2": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"city": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"provinceCode": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"zip": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"countryCode": {
|
|
"anyOf": [
|
|
{
|
|
"pattern": "^[A-Z]{2}$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "ISO country code"
|
|
},
|
|
"company": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"country": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"province": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"formatted": {
|
|
"description": "Formatted address lines",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Billing address"
|
|
},
|
|
"note": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Order note"
|
|
},
|
|
"tags": {
|
|
"description": "Order tags",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"cartId": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Source cart ID"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"name",
|
|
"createdAt",
|
|
"updatedAt",
|
|
"subtotalPrice",
|
|
"totalPrice"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"description": "Orders keyed by order gid",
|
|
"type": "object"
|
|
},
|
|
"customers": {
|
|
"additionalProperties": {
|
|
"additionalProperties": true,
|
|
"description": "Customer state with loyalty extensions/backfilled defaults preserved.",
|
|
"properties": {
|
|
"id": {
|
|
"description": "Globally-unique ID",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"firstName": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "First name"
|
|
},
|
|
"lastName": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Last name"
|
|
},
|
|
"email": {
|
|
"description": "Email address",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Phone number"
|
|
},
|
|
"createdAt": {
|
|
"description": "Creation timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
"updatedAt": {
|
|
"description": "Last update timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
"defaultAddress": {
|
|
"anyOf": [
|
|
{
|
|
"description": "A mailing/delivery address (Shopify MailingAddress type).",
|
|
"properties": {
|
|
"firstName": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"lastName": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"phone": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"address1": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"address2": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"city": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"provinceCode": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"zip": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"countryCode": {
|
|
"anyOf": [
|
|
{
|
|
"pattern": "^[A-Z]{2}$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "ISO country code"
|
|
},
|
|
"company": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"country": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"province": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"formatted": {
|
|
"description": "Formatted address lines",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Default address"
|
|
},
|
|
"addresses": {
|
|
"description": "All addresses",
|
|
"items": {
|
|
"description": "A mailing/delivery address (Shopify MailingAddress type).",
|
|
"properties": {
|
|
"firstName": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"lastName": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"phone": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"address1": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"address2": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"city": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"provinceCode": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"zip": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"countryCode": {
|
|
"anyOf": [
|
|
{
|
|
"pattern": "^[A-Z]{2}$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "ISO country code"
|
|
},
|
|
"company": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"country": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"province": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"formatted": {
|
|
"description": "Formatted address lines",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"ordersCount": {
|
|
"default": 0,
|
|
"description": "Number of orders placed",
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"totalSpent": {
|
|
"anyOf": [
|
|
{
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Total amount spent"
|
|
},
|
|
"tags": {
|
|
"description": "Customer tags",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"note": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Internal note about customer"
|
|
},
|
|
"acceptsMarketing": {
|
|
"default": false,
|
|
"description": "Whether customer accepts marketing",
|
|
"type": "boolean"
|
|
},
|
|
"state": {
|
|
"default": "ENABLED",
|
|
"description": "Account state",
|
|
"enum": [
|
|
"ENABLED",
|
|
"DISABLED",
|
|
"INVITED",
|
|
"DECLINED"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"pointsBalance": {
|
|
"default": 0,
|
|
"description": "Spendable loyalty points balance",
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"lifetimePoints": {
|
|
"default": 0,
|
|
"description": "Total loyalty points ever earned (drives tier)",
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"tier": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Current loyalty tier name, or null if program disabled"
|
|
},
|
|
"loyaltyJoinedAt": {
|
|
"anyOf": [
|
|
{
|
|
"description": "RFC 3339 timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "When customer joined loyalty program"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"email",
|
|
"createdAt",
|
|
"updatedAt"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"description": "Customers keyed by customer gid",
|
|
"type": "object"
|
|
},
|
|
"collections": {
|
|
"additionalProperties": {
|
|
"additionalProperties": true,
|
|
"description": "Collection state with synthetic metadata preserved.",
|
|
"properties": {
|
|
"id": {
|
|
"description": "Globally-unique ID",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"description": "Collection title",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"default": "",
|
|
"description": "Collection description",
|
|
"type": "string"
|
|
},
|
|
"handle": {
|
|
"anyOf": [
|
|
{
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"productIds": {
|
|
"description": "Product IDs in this collection",
|
|
"items": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"createdAt": {
|
|
"anyOf": [
|
|
{
|
|
"description": "RFC 3339 timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"updatedAt": {
|
|
"anyOf": [
|
|
{
|
|
"description": "RFC 3339 timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"sortOrder": {
|
|
"default": "MANUAL",
|
|
"description": "Sort order",
|
|
"enum": [
|
|
"MANUAL",
|
|
"BEST_SELLING",
|
|
"ALPHA_ASC",
|
|
"ALPHA_DESC",
|
|
"PRICE_ASC",
|
|
"PRICE_DESC",
|
|
"CREATED_DESC"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"image": {
|
|
"anyOf": [
|
|
{
|
|
"description": "An image resource (Shopify Image type).",
|
|
"properties": {
|
|
"id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"url": {
|
|
"description": "The URL of the image",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"altText": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Alt text for the image"
|
|
},
|
|
"width": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Image width in pixels"
|
|
},
|
|
"height": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Image height in pixels"
|
|
}
|
|
},
|
|
"required": [
|
|
"url"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Collection image"
|
|
},
|
|
"products": {
|
|
"description": "Legacy collection membership field accepted by older fixtures",
|
|
"items": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"title"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"description": "Collections keyed by gid",
|
|
"type": "object"
|
|
},
|
|
"reviews": {
|
|
"additionalProperties": {
|
|
"additionalProperties": true,
|
|
"description": "Review state with synthetic metadata preserved.",
|
|
"properties": {
|
|
"id": {
|
|
"description": "Globally-unique ID",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"productId": {
|
|
"description": "Product this review is for",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"rating": {
|
|
"description": "Rating from 1 to 5",
|
|
"maximum": 5,
|
|
"minimum": 1,
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"default": "",
|
|
"description": "Review title",
|
|
"type": "string"
|
|
},
|
|
"body": {
|
|
"default": "",
|
|
"description": "Review body text",
|
|
"type": "string"
|
|
},
|
|
"author": {
|
|
"description": "Author name",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Author email"
|
|
},
|
|
"status": {
|
|
"default": "PUBLISHED",
|
|
"description": "Review status",
|
|
"enum": [
|
|
"PENDING",
|
|
"PUBLISHED",
|
|
"HIDDEN"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"createdAt": {
|
|
"anyOf": [
|
|
{
|
|
"description": "RFC 3339 timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"updatedAt": {
|
|
"anyOf": [
|
|
{
|
|
"description": "RFC 3339 timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"productId",
|
|
"rating",
|
|
"author"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"description": "Reviews keyed by review id",
|
|
"type": "object"
|
|
},
|
|
"returns": {
|
|
"additionalProperties": {
|
|
"additionalProperties": true,
|
|
"description": "Return state with synthetic metadata preserved.",
|
|
"properties": {
|
|
"id": {
|
|
"description": "Globally-unique ID",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"orderId": {
|
|
"description": "Order this return is for",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"default": "REQUESTED",
|
|
"description": "Return status",
|
|
"enum": [
|
|
"REQUESTED",
|
|
"APPROVED",
|
|
"RECEIVED",
|
|
"REFUNDED",
|
|
"REJECTED"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"lineItems": {
|
|
"description": "Items being returned",
|
|
"items": {
|
|
"description": "A line item in a return request.",
|
|
"properties": {
|
|
"orderLineItemId": {
|
|
"description": "Reference to the order line item being returned",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"quantity": {
|
|
"description": "Quantity being returned",
|
|
"minimum": 1,
|
|
"type": "integer"
|
|
},
|
|
"reason": {
|
|
"default": "",
|
|
"description": "Reason for return (e.g., 'defective', 'wrong_item', 'not_as_described')",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"orderLineItemId",
|
|
"quantity"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"refundAmount": {
|
|
"anyOf": [
|
|
{
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Amount to refund"
|
|
},
|
|
"reason": {
|
|
"default": "",
|
|
"description": "Overall return reason",
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Internal note"
|
|
},
|
|
"createdAt": {
|
|
"description": "Creation timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
"updatedAt": {
|
|
"description": "Last update timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"orderId",
|
|
"createdAt",
|
|
"updatedAt"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"description": "Returns keyed by return id",
|
|
"type": "object"
|
|
},
|
|
"discount_codes": {
|
|
"additionalProperties": {
|
|
"additionalProperties": true,
|
|
"description": "Discount code state with product restrictions preserved.",
|
|
"properties": {
|
|
"id": {
|
|
"description": "Globally-unique ID",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"code": {
|
|
"description": "The discount code string (e.g., 'SUMMER20')",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"discountType": {
|
|
"default": "PERCENTAGE",
|
|
"description": "Discount type",
|
|
"enum": [
|
|
"PERCENTAGE",
|
|
"FIXED_AMOUNT",
|
|
"FREE_SHIPPING"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"description": "Discount value (e.g., '20' for 20% or '10.00' for $10 off)",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"minimumPurchase": {
|
|
"anyOf": [
|
|
{
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Minimum purchase amount required"
|
|
},
|
|
"minimumTier": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Minimum loyalty tier required to use this code (null = no tier restriction)"
|
|
},
|
|
"usageLimit": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Max total uses (null = unlimited)"
|
|
},
|
|
"usageCount": {
|
|
"default": 0,
|
|
"description": "Times used so far",
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"combinesWith": {
|
|
"description": "Controls whether this code can combine with other discount classes",
|
|
"properties": {
|
|
"orderDiscounts": {
|
|
"default": false,
|
|
"description": "Can combine with order-level discounts",
|
|
"type": "boolean"
|
|
},
|
|
"productDiscounts": {
|
|
"default": false,
|
|
"description": "Can combine with product-level discounts",
|
|
"type": "boolean"
|
|
},
|
|
"shippingDiscounts": {
|
|
"default": false,
|
|
"description": "Can combine with shipping discounts",
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"active": {
|
|
"default": true,
|
|
"description": "Whether the code is currently active",
|
|
"type": "boolean"
|
|
},
|
|
"createdAt": {
|
|
"description": "Creation timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
"updatedAt": {
|
|
"description": "Last update timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
"productIds": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"code",
|
|
"value",
|
|
"createdAt",
|
|
"updatedAt"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"description": "Discount codes keyed by code",
|
|
"type": "object"
|
|
},
|
|
"gift_cards": {
|
|
"additionalProperties": {
|
|
"additionalProperties": true,
|
|
"description": "Gift card state with mock-specific metadata preserved.",
|
|
"properties": {
|
|
"id": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"code": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"balance": {
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"initialValue": {
|
|
"anyOf": [
|
|
{
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"active": {
|
|
"default": true,
|
|
"type": "boolean"
|
|
},
|
|
"createdAt": {
|
|
"anyOf": [
|
|
{
|
|
"description": "RFC 3339 timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"updatedAt": {
|
|
"anyOf": [
|
|
{
|
|
"description": "RFC 3339 timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"code",
|
|
"balance"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"description": "Gift cards keyed by code or id",
|
|
"type": "object"
|
|
},
|
|
"shipping_methods": {
|
|
"additionalProperties": {
|
|
"additionalProperties": true,
|
|
"description": "Shipping method state with synthetic metadata preserved.",
|
|
"properties": {
|
|
"id": {
|
|
"description": "Unique ID (e.g., 'standard', 'express')",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"description": "Display name (e.g., 'Standard Shipping')",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"price": {
|
|
"description": "Shipping cost",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"estimatedDays": {
|
|
"default": "",
|
|
"description": "Estimated delivery time (e.g., '5-7 business days')",
|
|
"type": "string"
|
|
},
|
|
"active": {
|
|
"default": true,
|
|
"description": "Whether this method is currently available",
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"title",
|
|
"price"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"description": "Shipping methods keyed by method id",
|
|
"type": "object"
|
|
},
|
|
"loyalty_program": {
|
|
"additionalProperties": true,
|
|
"description": "Loyalty program configuration",
|
|
"properties": {
|
|
"enabled": {
|
|
"default": false,
|
|
"type": "boolean"
|
|
},
|
|
"earn_rate": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "number"
|
|
}
|
|
],
|
|
"default": 1,
|
|
"ge": 0
|
|
},
|
|
"redemption_rate": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "number"
|
|
}
|
|
],
|
|
"default": 100,
|
|
"gt": 0
|
|
},
|
|
"max_redemption_percent": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "number"
|
|
}
|
|
],
|
|
"default": 50,
|
|
"ge": 0,
|
|
"le": 100
|
|
},
|
|
"tiers": {
|
|
"items": {
|
|
"description": "A tier within the loyalty program.",
|
|
"properties": {
|
|
"name": {
|
|
"description": "Tier name, e.g. 'Bronze', 'Silver', 'Gold'",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"min_lifetime_points": {
|
|
"description": "Minimum lifetime points to reach this tier",
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"discount_percent": {
|
|
"default": 0,
|
|
"description": "Percent discount off subtotal for members of this tier",
|
|
"maximum": 100,
|
|
"minimum": 0,
|
|
"type": "number"
|
|
}
|
|
},
|
|
"required": [
|
|
"name",
|
|
"min_lifetime_points"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"current_customer_email": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Identifies which customer the agent is acting as in customer-mode worlds"
|
|
},
|
|
"policies": {
|
|
"description": "Shop policies and FAQs",
|
|
"items": {
|
|
"additionalProperties": true,
|
|
"description": "Shop policy as stored in fixtures: no guaranteed `id` or `url`.\n\nDistinct from ``ShopPolicy`` (the API-shaped model) because seeded policies\ncarry a category ``type`` (e.g. REFUND_POLICY) but rarely an id or url.",
|
|
"properties": {
|
|
"id": {
|
|
"anyOf": [
|
|
{
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"type": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Policy category (REFUND_POLICY, SHIPPING_POLICY, \u2026)"
|
|
},
|
|
"title": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"body": {
|
|
"type": "string"
|
|
},
|
|
"url": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
}
|
|
},
|
|
"required": [
|
|
"title",
|
|
"body"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"faqs": {
|
|
"description": "Store FAQ entries",
|
|
"items": {
|
|
"additionalProperties": true,
|
|
"description": "Searchable FAQ entry.",
|
|
"properties": {
|
|
"id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"question": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"answer": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"question",
|
|
"answer"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"counters": {
|
|
"additionalProperties": true,
|
|
"description": "Monotonic id counters used to generate Shopify entity IDs.\n\nLoose (`extra=\"allow\"`) so worlds that carry our extended counters\nround-trip cleanly, but every counter used by current tools is modeled.",
|
|
"properties": {
|
|
"cart_id": {
|
|
"default": 1000,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"line_id": {
|
|
"default": 1000,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"product_id": {
|
|
"default": 8000,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"variant_id": {
|
|
"default": 9000,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"order_id": {
|
|
"default": 2000,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"line_item_id": {
|
|
"default": 3000,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"customer_id": {
|
|
"default": 4000,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"collection_id": {
|
|
"default": 5000,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"review_id": {
|
|
"default": 6000,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"return_id": {
|
|
"default": 7000,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"discount_id": {
|
|
"default": 10000,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"policy_id": {
|
|
"default": 11000,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "get_cart",
|
|
"description": "Get the cart including items, shipping options, discount info, and checkout url.\n\nArgs:\n cart_id: Shopify cart id, formatted like: gid://shopify/Cart/c1-66330c6d752c2b242bb8487474949791?key=fa8913e951098d30d68033cf6b7b50f3\n\nReturns:\n Cart details including items, costs, delivery options, and checkout URL",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"cart_id": {
|
|
"type": "string"
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"cart_id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "get_collection",
|
|
"description": "Get a collection by ID, including its products.\n\nArgs:\n collection_id: The collection ID\n\nReturns:\n Collection details with resolved product list",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"collection_id": {
|
|
"type": "string"
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"collection_id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "get_customer",
|
|
"description": "Get a customer by their ID.\n\nArgs:\n customer_id: The customer ID, e.g. gid://shopify/Customer/4001\n\nReturns:\n Customer profile including addresses, order count, and total spent",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"customer_id": {
|
|
"type": "string"
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"customer_id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "get_discount_code",
|
|
"description": "Look up a discount code by its code string.\n\nArgs:\n code: The discount code to look up (case-insensitive)\n\nReturns:\n Discount code details including type, value, and usage stats",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"code": {
|
|
"type": "string"
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"code"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "get_inventory",
|
|
"description": "Get inventory levels for product variants.\n\nArgs:\n product_id: Filter to variants of a specific product (optional)\n low_stock_threshold: Only show variants at or below this quantity (optional)\n\nReturns:\n List of variants with quantity available, SKU, and stock status",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"product_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"low_stock_threshold": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "get_loyalty_balance",
|
|
"description": "Get a customer's loyalty balance, lifetime points, and current tier.\n\nArgs:\n customer_id: The customer's GID.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"customer_id": {
|
|
"type": "string"
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"customer_id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "get_loyalty_program",
|
|
"description": "Read the current loyalty program configuration.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "get_loyalty_tier",
|
|
"description": "Get the full tier object (name, threshold, discount percent) for a customer's current tier.\n\nArgs:\n customer_id: The customer's GID.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"customer_id": {
|
|
"type": "string"
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"customer_id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "get_my_customer",
|
|
"description": "Get the current customer's own profile.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "get_my_loyalty_balance",
|
|
"description": "Get the current customer's loyalty balance, lifetime points, and tier.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "get_my_loyalty_tier",
|
|
"description": "Get the full tier object for the current customer's tier.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "get_my_order",
|
|
"description": "Get a single order, only if it belongs to the current customer.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"order_id": {
|
|
"type": "string"
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"order_id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "get_order",
|
|
"description": "Get an order by its ID.\n\nArgs:\n order_id: The order ID, e.g. gid://shopify/Order/o2001\n\nReturns:\n Order details including line items, status, and totals",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"order_id": {
|
|
"type": "string"
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"order_id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "get_product_details",
|
|
"description": "Look up a product by ID and optionally specify variant options to select a specific variant.\n\nArgs:\n product_id: The product ID, e.g. gid://shopify/Product/123\n options: Optional variant options to select a specific variant, e.g. {\"Size\": \"10\", \"Color\": \"Black\"}\n country: ISO 3166-1 alpha-2 country code for localized results\n language: ISO 639-1 language code for localized results\n\nReturns:\n Product details including variants, images, and pricing",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"product_id": {
|
|
"type": "string"
|
|
},
|
|
"options": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"country": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"language": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"product_id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "get_product_reviews",
|
|
"description": "Get reviews for a product. Returns reviews with average rating.\n\nArgs:\n product_id: The product ID\n status: Filter by review status (PENDING, PUBLISHED, HIDDEN)\n limit: Maximum reviews to return (default 20)\n after: Pagination cursor from a previous call\n\nReturns:\n Reviews with average rating and pagination info",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"product_id": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"limit": {
|
|
"default": 20,
|
|
"type": "integer"
|
|
},
|
|
"after": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"product_id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "get_return",
|
|
"description": "Get a return by its ID.\n\nArgs:\n return_id: The return ID\n\nReturns:\n Return details including status, line items, and refund amount",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"return_id": {
|
|
"type": "string"
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"return_id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "import_state",
|
|
"description": "Replace the shopify state with the provided JSON.\n\nFor synthetic-data injection and test setup. Accepts either the flat\nsingle-store shape or the multi-store ``{\"stores\": {...}}`` wrapper.\nRound-trips with export_state.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"state": {
|
|
"additionalProperties": true,
|
|
"description": "Full shopify state \u2014 round-trips with ShopifyState.to_dict().\n\nState entities are loaded into Pydantic models while exposing temporary\ndict-style access for legacy handlers. ``extra=\"allow\"`` preserves\nmock-specific metadata that tools may carry but the core Shopify-shaped\nmodels do not yet describe.",
|
|
"properties": {
|
|
"products": {
|
|
"additionalProperties": {
|
|
"additionalProperties": true,
|
|
"description": "Product relaxed for synthetic/legacy snapshot shapes.\n\nSeeded fixtures and synthetic data often include only the minimum product\nfields (id, title, variants), so we drop the strict ``handle`` /\n``priceRange`` requirements here and relax ``options`` to the fixture\nshape ({name, values}).",
|
|
"properties": {
|
|
"id": {
|
|
"description": "Globally-unique ID",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"description": "Product title",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"default": "",
|
|
"description": "Product description (plain text)",
|
|
"type": "string"
|
|
},
|
|
"descriptionHtml": {
|
|
"default": "",
|
|
"description": "Product description (HTML)",
|
|
"type": "string"
|
|
},
|
|
"handle": {
|
|
"anyOf": [
|
|
{
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"productType": {
|
|
"default": "",
|
|
"description": "Product type defined by merchant",
|
|
"type": "string"
|
|
},
|
|
"vendor": {
|
|
"default": "",
|
|
"description": "Product vendor name",
|
|
"type": "string"
|
|
},
|
|
"tags": {
|
|
"description": "Searchable tags",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"availableForSale": {
|
|
"anyOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"priceRange": {
|
|
"anyOf": [
|
|
{
|
|
"description": "The price range of a product (Shopify ProductPriceRange type).",
|
|
"properties": {
|
|
"minVariantPrice": {
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"maxVariantPrice": {
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"minVariantPrice",
|
|
"maxVariantPrice"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"compareAtPriceRange": {
|
|
"anyOf": [
|
|
{
|
|
"description": "The price range of a product (Shopify ProductPriceRange type).",
|
|
"properties": {
|
|
"minVariantPrice": {
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"maxVariantPrice": {
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"minVariantPrice",
|
|
"maxVariantPrice"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Compare-at price range"
|
|
},
|
|
"featuredImage": {
|
|
"anyOf": [
|
|
{
|
|
"description": "An image resource (Shopify Image type).",
|
|
"properties": {
|
|
"id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"url": {
|
|
"description": "The URL of the image",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"altText": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Alt text for the image"
|
|
},
|
|
"width": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Image width in pixels"
|
|
},
|
|
"height": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Image height in pixels"
|
|
}
|
|
},
|
|
"required": [
|
|
"url"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Featured product image"
|
|
},
|
|
"images": {
|
|
"description": "Product images",
|
|
"items": {
|
|
"description": "An image resource (Shopify Image type).",
|
|
"properties": {
|
|
"id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"url": {
|
|
"description": "The URL of the image",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"altText": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Alt text for the image"
|
|
},
|
|
"width": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Image width in pixels"
|
|
},
|
|
"height": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Image height in pixels"
|
|
}
|
|
},
|
|
"required": [
|
|
"url"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"options": {
|
|
"items": {
|
|
"additionalProperties": true,
|
|
"description": "ProductOption whose `id` is optional \u2014 fixture data often omits it.",
|
|
"properties": {
|
|
"id": {
|
|
"anyOf": [
|
|
{
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"name": {
|
|
"description": "The option name (e.g., 'Size', 'Color')",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"values": {
|
|
"description": "Available values for this option",
|
|
"items": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"required": [
|
|
"name"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"variants": {
|
|
"description": "Product variants",
|
|
"items": {
|
|
"description": "A product variant (Shopify ProductVariant type).",
|
|
"properties": {
|
|
"id": {
|
|
"description": "Globally-unique ID",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"description": "The variant's title",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"price": {
|
|
"description": "The variant's price",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"compareAtPrice": {
|
|
"anyOf": [
|
|
{
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Compare-at price for sale pricing"
|
|
},
|
|
"availableForSale": {
|
|
"default": true,
|
|
"description": "Whether the variant is available for sale",
|
|
"type": "boolean"
|
|
},
|
|
"sku": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "SKU (stock keeping unit)"
|
|
},
|
|
"barcode": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Barcode (ISBN, UPC, GTIN)"
|
|
},
|
|
"selectedOptions": {
|
|
"description": "Selected options for this variant",
|
|
"items": {
|
|
"description": "A selected product option (Shopify SelectedOption type).",
|
|
"properties": {
|
|
"name": {
|
|
"description": "The option name (e.g., 'Size')",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"description": "The option value (e.g., 'Large')",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"name",
|
|
"value"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"image": {
|
|
"anyOf": [
|
|
{
|
|
"description": "An image resource (Shopify Image type).",
|
|
"properties": {
|
|
"id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"url": {
|
|
"description": "The URL of the image",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"altText": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Alt text for the image"
|
|
},
|
|
"width": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Image width in pixels"
|
|
},
|
|
"height": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Image height in pixels"
|
|
}
|
|
},
|
|
"required": [
|
|
"url"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Image associated with the variant"
|
|
},
|
|
"weight": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Weight of the variant"
|
|
},
|
|
"weightUnit": {
|
|
"default": "KILOGRAMS",
|
|
"description": "Unit of weight measurement",
|
|
"enum": [
|
|
"GRAMS",
|
|
"KILOGRAMS",
|
|
"OUNCES",
|
|
"POUNDS"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"quantityAvailable": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Quantity available for sale"
|
|
},
|
|
"currentlyNotInStock": {
|
|
"default": false,
|
|
"description": "Whether out of stock but available for backorder",
|
|
"type": "boolean"
|
|
},
|
|
"requiresShipping": {
|
|
"default": true,
|
|
"description": "Whether shipping is required",
|
|
"type": "boolean"
|
|
},
|
|
"taxable": {
|
|
"default": true,
|
|
"description": "Whether tax is charged",
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"title",
|
|
"price"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"seo": {
|
|
"anyOf": [
|
|
{
|
|
"description": "SEO information (Shopify SEO type).",
|
|
"properties": {
|
|
"title": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"description": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "SEO title and description"
|
|
},
|
|
"onlineStoreUrl": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "URL on the online store"
|
|
},
|
|
"createdAt": {
|
|
"anyOf": [
|
|
{
|
|
"description": "RFC 3339 timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Creation timestamp"
|
|
},
|
|
"updatedAt": {
|
|
"anyOf": [
|
|
{
|
|
"description": "RFC 3339 timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Last update timestamp"
|
|
},
|
|
"publishedAt": {
|
|
"anyOf": [
|
|
{
|
|
"description": "RFC 3339 timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Publication timestamp"
|
|
},
|
|
"isGiftCard": {
|
|
"default": false,
|
|
"description": "Whether product is a gift card",
|
|
"type": "boolean"
|
|
},
|
|
"totalInventory": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Total inventory quantity"
|
|
},
|
|
"trackingParameters": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "URL tracking parameters"
|
|
},
|
|
"category": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"categoryId": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"productCategory": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"title"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"description": "Products keyed by product gid",
|
|
"type": "object"
|
|
},
|
|
"carts": {
|
|
"additionalProperties": {
|
|
"additionalProperties": true,
|
|
"description": "Cart state that accepts compact synthetic cart fixtures.",
|
|
"properties": {
|
|
"id": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"checkoutUrl": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"createdAt": {
|
|
"anyOf": [
|
|
{
|
|
"description": "RFC 3339 timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"updatedAt": {
|
|
"anyOf": [
|
|
{
|
|
"description": "RFC 3339 timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"lines": {
|
|
"items": {
|
|
"description": "A line item in the cart (Shopify CartLine type).",
|
|
"properties": {
|
|
"id": {
|
|
"description": "Globally-unique ID",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"quantity": {
|
|
"description": "Quantity of the item",
|
|
"minimum": 1,
|
|
"type": "integer"
|
|
},
|
|
"merchandise": {
|
|
"description": "The merchandise (variant)",
|
|
"properties": {
|
|
"id": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"product": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Parent product info"
|
|
},
|
|
"image": {
|
|
"anyOf": [
|
|
{
|
|
"description": "An image resource (Shopify Image type).",
|
|
"properties": {
|
|
"id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"url": {
|
|
"description": "The URL of the image",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"altText": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Alt text for the image"
|
|
},
|
|
"width": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Image width in pixels"
|
|
},
|
|
"height": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Image height in pixels"
|
|
}
|
|
},
|
|
"required": [
|
|
"url"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"selectedOptions": {
|
|
"items": {
|
|
"description": "A selected product option (Shopify SelectedOption type).",
|
|
"properties": {
|
|
"name": {
|
|
"description": "The option name (e.g., 'Size')",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"description": "The option value (e.g., 'Large')",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"name",
|
|
"value"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"price": {
|
|
"description": "Variant price",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"title",
|
|
"price"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"cost": {
|
|
"description": "Cost breakdown",
|
|
"properties": {
|
|
"amountPerQuantity": {
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"compareAtAmountPerQuantity": {
|
|
"anyOf": [
|
|
{
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"subtotalAmount": {
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"totalAmount": {
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"amountPerQuantity",
|
|
"subtotalAmount",
|
|
"totalAmount"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"attributes": {
|
|
"items": {
|
|
"description": "A key-value attribute (Shopify Attribute type).",
|
|
"properties": {
|
|
"key": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
}
|
|
},
|
|
"required": [
|
|
"key"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"discountAllocations": {
|
|
"items": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"quantity",
|
|
"merchandise",
|
|
"cost"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"cost": {
|
|
"anyOf": [
|
|
{
|
|
"description": "Cart cost breakdown (Shopify CartCost type).",
|
|
"properties": {
|
|
"subtotalAmount": {
|
|
"description": "Amount before taxes and discounts",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"subtotalAmountEstimated": {
|
|
"default": false,
|
|
"description": "Whether subtotal is estimated",
|
|
"type": "boolean"
|
|
},
|
|
"totalAmount": {
|
|
"description": "Total amount for customer to pay",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"totalAmountEstimated": {
|
|
"default": false,
|
|
"description": "Whether total is estimated",
|
|
"type": "boolean"
|
|
},
|
|
"totalTaxAmount": {
|
|
"anyOf": [
|
|
{
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Total tax amount"
|
|
},
|
|
"totalTaxAmountEstimated": {
|
|
"default": false,
|
|
"type": "boolean"
|
|
},
|
|
"checkoutChargeAmount": {
|
|
"description": "Amount to pay at checkout",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"subtotalAmount",
|
|
"totalAmount",
|
|
"checkoutChargeAmount"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"buyerIdentity": {
|
|
"description": "Information about the buyer (Shopify CartBuyerIdentity type).",
|
|
"properties": {
|
|
"email": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"phone": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"countryCode": {
|
|
"anyOf": [
|
|
{
|
|
"pattern": "^[A-Z]{2}$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "ISO country code for regional pricing"
|
|
},
|
|
"customer": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Associated customer"
|
|
},
|
|
"deliveryAddressPreferences": {
|
|
"items": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"attributes": {
|
|
"items": {
|
|
"description": "A key-value attribute (Shopify Attribute type).",
|
|
"properties": {
|
|
"key": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
}
|
|
},
|
|
"required": [
|
|
"key"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"discountCodes": {
|
|
"items": {
|
|
"description": "A discount code applied to the cart (Shopify CartDiscountCode type).",
|
|
"properties": {
|
|
"code": {
|
|
"description": "The discount code",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"applicable": {
|
|
"default": true,
|
|
"description": "Whether the code is applicable",
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
"required": [
|
|
"code"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"discountAllocations": {
|
|
"items": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"appliedGiftCards": {
|
|
"items": {
|
|
"description": "A gift card applied to the cart (Shopify AppliedGiftCard type).",
|
|
"properties": {
|
|
"id": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"code": {
|
|
"anyOf": [
|
|
{
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Gift card code used to look up the backing balance"
|
|
},
|
|
"lastCharacters": {
|
|
"description": "Last 4 characters of the gift card code",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"amountUsed": {
|
|
"description": "Amount used from the gift card",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"balance": {
|
|
"description": "Remaining balance",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"presentmentAmountUsed": {
|
|
"description": "Amount used in presentment currency",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"lastCharacters",
|
|
"amountUsed",
|
|
"balance",
|
|
"presentmentAmountUsed"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"deliveryGroups": {
|
|
"items": {
|
|
"description": "A delivery group (Shopify CartDeliveryGroup type).",
|
|
"properties": {
|
|
"id": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"deliveryOptions": {
|
|
"items": {
|
|
"description": "A delivery option (Shopify CartDeliveryOption type).",
|
|
"properties": {
|
|
"handle": {
|
|
"description": "Unique handle for the option",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"description": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"estimatedCost": {
|
|
"description": "Estimated delivery cost",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"code": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Delivery option code"
|
|
}
|
|
},
|
|
"required": [
|
|
"handle",
|
|
"estimatedCost"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"selectedDeliveryOption": {
|
|
"anyOf": [
|
|
{
|
|
"description": "A delivery option (Shopify CartDeliveryOption type).",
|
|
"properties": {
|
|
"handle": {
|
|
"description": "Unique handle for the option",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"description": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"estimatedCost": {
|
|
"description": "Estimated delivery cost",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"code": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Delivery option code"
|
|
}
|
|
},
|
|
"required": [
|
|
"handle",
|
|
"estimatedCost"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"cartLines": {
|
|
"description": "Lines in this group",
|
|
"items": {
|
|
"description": "A line item in the cart (Shopify CartLine type).",
|
|
"properties": {
|
|
"id": {
|
|
"description": "Globally-unique ID",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"quantity": {
|
|
"description": "Quantity of the item",
|
|
"minimum": 1,
|
|
"type": "integer"
|
|
},
|
|
"merchandise": {
|
|
"description": "The merchandise (variant)",
|
|
"properties": {
|
|
"id": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"product": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Parent product info"
|
|
},
|
|
"image": {
|
|
"anyOf": [
|
|
{
|
|
"description": "An image resource (Shopify Image type).",
|
|
"properties": {
|
|
"id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"url": {
|
|
"description": "The URL of the image",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"altText": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Alt text for the image"
|
|
},
|
|
"width": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Image width in pixels"
|
|
},
|
|
"height": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Image height in pixels"
|
|
}
|
|
},
|
|
"required": [
|
|
"url"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"selectedOptions": {
|
|
"items": {
|
|
"description": "A selected product option (Shopify SelectedOption type).",
|
|
"properties": {
|
|
"name": {
|
|
"description": "The option name (e.g., 'Size')",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"description": "The option value (e.g., 'Large')",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"name",
|
|
"value"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"price": {
|
|
"description": "Variant price",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"title",
|
|
"price"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"cost": {
|
|
"description": "Cost breakdown",
|
|
"properties": {
|
|
"amountPerQuantity": {
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"compareAtAmountPerQuantity": {
|
|
"anyOf": [
|
|
{
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"subtotalAmount": {
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"totalAmount": {
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"amountPerQuantity",
|
|
"subtotalAmount",
|
|
"totalAmount"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"attributes": {
|
|
"items": {
|
|
"description": "A key-value attribute (Shopify Attribute type).",
|
|
"properties": {
|
|
"key": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
}
|
|
},
|
|
"required": [
|
|
"key"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"discountAllocations": {
|
|
"items": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"quantity",
|
|
"merchandise",
|
|
"cost"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"required": [
|
|
"id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"totalQuantity": {
|
|
"default": 0,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"note": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
}
|
|
},
|
|
"required": [
|
|
"id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"description": "Carts keyed by cart gid",
|
|
"type": "object"
|
|
},
|
|
"orders": {
|
|
"additionalProperties": {
|
|
"additionalProperties": true,
|
|
"description": "Order state with mock-specific extensions preserved.",
|
|
"properties": {
|
|
"id": {
|
|
"description": "Globally-unique ID",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"description": "Display name, e.g. '#1001'",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Customer email"
|
|
},
|
|
"phone": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Customer phone"
|
|
},
|
|
"createdAt": {
|
|
"description": "Creation timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
"updatedAt": {
|
|
"description": "Last update timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
"cancelledAt": {
|
|
"anyOf": [
|
|
{
|
|
"description": "RFC 3339 timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Cancellation timestamp"
|
|
},
|
|
"financialStatus": {
|
|
"default": "PENDING",
|
|
"description": "Financial status",
|
|
"enum": [
|
|
"PENDING",
|
|
"PAID",
|
|
"VOIDED",
|
|
"REFUNDED",
|
|
"PARTIALLY_REFUNDED"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"fulfillmentStatus": {
|
|
"default": "UNFULFILLED",
|
|
"description": "Fulfillment status",
|
|
"enum": [
|
|
"UNFULFILLED",
|
|
"FULFILLED",
|
|
"PARTIALLY_FULFILLED"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"trackingNumber": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Tracking number assigned at fulfillment (null until fulfilled)"
|
|
},
|
|
"trackingUrl": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Tracking URL assigned at fulfillment"
|
|
},
|
|
"lineItems": {
|
|
"description": "Order line items",
|
|
"items": {
|
|
"description": "A line item in an order.",
|
|
"properties": {
|
|
"id": {
|
|
"description": "Globally-unique ID",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"description": "Product title",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"variantTitle": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Variant title"
|
|
},
|
|
"quantity": {
|
|
"description": "Quantity ordered",
|
|
"minimum": 1,
|
|
"type": "integer"
|
|
},
|
|
"sku": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "SKU"
|
|
},
|
|
"variantId": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Product variant ID"
|
|
},
|
|
"productId": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Product ID"
|
|
},
|
|
"price": {
|
|
"description": "Unit price",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"totalPrice": {
|
|
"description": "Total price (price * quantity)",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"image": {
|
|
"anyOf": [
|
|
{
|
|
"description": "An image resource (Shopify Image type).",
|
|
"properties": {
|
|
"id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"url": {
|
|
"description": "The URL of the image",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"altText": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Alt text for the image"
|
|
},
|
|
"width": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Image width in pixels"
|
|
},
|
|
"height": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Image height in pixels"
|
|
}
|
|
},
|
|
"required": [
|
|
"url"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Product image"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"title",
|
|
"quantity",
|
|
"price",
|
|
"totalPrice"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"subtotalPrice": {
|
|
"description": "Subtotal before tax/shipping",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"totalPrice": {
|
|
"description": "Total amount",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"totalTax": {
|
|
"anyOf": [
|
|
{
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Total tax"
|
|
},
|
|
"shippingAddress": {
|
|
"anyOf": [
|
|
{
|
|
"description": "A mailing/delivery address (Shopify MailingAddress type).",
|
|
"properties": {
|
|
"firstName": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"lastName": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"phone": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"address1": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"address2": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"city": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"provinceCode": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"zip": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"countryCode": {
|
|
"anyOf": [
|
|
{
|
|
"pattern": "^[A-Z]{2}$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "ISO country code"
|
|
},
|
|
"company": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"country": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"province": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"formatted": {
|
|
"description": "Formatted address lines",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Shipping address"
|
|
},
|
|
"billingAddress": {
|
|
"anyOf": [
|
|
{
|
|
"description": "A mailing/delivery address (Shopify MailingAddress type).",
|
|
"properties": {
|
|
"firstName": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"lastName": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"phone": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"address1": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"address2": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"city": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"provinceCode": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"zip": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"countryCode": {
|
|
"anyOf": [
|
|
{
|
|
"pattern": "^[A-Z]{2}$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "ISO country code"
|
|
},
|
|
"company": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"country": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"province": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"formatted": {
|
|
"description": "Formatted address lines",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Billing address"
|
|
},
|
|
"note": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Order note"
|
|
},
|
|
"tags": {
|
|
"description": "Order tags",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"cartId": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Source cart ID"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"name",
|
|
"createdAt",
|
|
"updatedAt",
|
|
"subtotalPrice",
|
|
"totalPrice"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"description": "Orders keyed by order gid",
|
|
"type": "object"
|
|
},
|
|
"customers": {
|
|
"additionalProperties": {
|
|
"additionalProperties": true,
|
|
"description": "Customer state with loyalty extensions/backfilled defaults preserved.",
|
|
"properties": {
|
|
"id": {
|
|
"description": "Globally-unique ID",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"firstName": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "First name"
|
|
},
|
|
"lastName": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Last name"
|
|
},
|
|
"email": {
|
|
"description": "Email address",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"phone": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Phone number"
|
|
},
|
|
"createdAt": {
|
|
"description": "Creation timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
"updatedAt": {
|
|
"description": "Last update timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
"defaultAddress": {
|
|
"anyOf": [
|
|
{
|
|
"description": "A mailing/delivery address (Shopify MailingAddress type).",
|
|
"properties": {
|
|
"firstName": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"lastName": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"phone": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"address1": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"address2": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"city": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"provinceCode": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"zip": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"countryCode": {
|
|
"anyOf": [
|
|
{
|
|
"pattern": "^[A-Z]{2}$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "ISO country code"
|
|
},
|
|
"company": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"country": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"province": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"formatted": {
|
|
"description": "Formatted address lines",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Default address"
|
|
},
|
|
"addresses": {
|
|
"description": "All addresses",
|
|
"items": {
|
|
"description": "A mailing/delivery address (Shopify MailingAddress type).",
|
|
"properties": {
|
|
"firstName": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"lastName": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"phone": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"address1": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"address2": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"city": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"provinceCode": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"zip": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"countryCode": {
|
|
"anyOf": [
|
|
{
|
|
"pattern": "^[A-Z]{2}$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "ISO country code"
|
|
},
|
|
"company": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"country": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"province": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"formatted": {
|
|
"description": "Formatted address lines",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"ordersCount": {
|
|
"default": 0,
|
|
"description": "Number of orders placed",
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"totalSpent": {
|
|
"anyOf": [
|
|
{
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Total amount spent"
|
|
},
|
|
"tags": {
|
|
"description": "Customer tags",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"note": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Internal note about customer"
|
|
},
|
|
"acceptsMarketing": {
|
|
"default": false,
|
|
"description": "Whether customer accepts marketing",
|
|
"type": "boolean"
|
|
},
|
|
"state": {
|
|
"default": "ENABLED",
|
|
"description": "Account state",
|
|
"enum": [
|
|
"ENABLED",
|
|
"DISABLED",
|
|
"INVITED",
|
|
"DECLINED"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"pointsBalance": {
|
|
"default": 0,
|
|
"description": "Spendable loyalty points balance",
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"lifetimePoints": {
|
|
"default": 0,
|
|
"description": "Total loyalty points ever earned (drives tier)",
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"tier": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Current loyalty tier name, or null if program disabled"
|
|
},
|
|
"loyaltyJoinedAt": {
|
|
"anyOf": [
|
|
{
|
|
"description": "RFC 3339 timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "When customer joined loyalty program"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"email",
|
|
"createdAt",
|
|
"updatedAt"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"description": "Customers keyed by customer gid",
|
|
"type": "object"
|
|
},
|
|
"collections": {
|
|
"additionalProperties": {
|
|
"additionalProperties": true,
|
|
"description": "Collection state with synthetic metadata preserved.",
|
|
"properties": {
|
|
"id": {
|
|
"description": "Globally-unique ID",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"description": "Collection title",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"default": "",
|
|
"description": "Collection description",
|
|
"type": "string"
|
|
},
|
|
"handle": {
|
|
"anyOf": [
|
|
{
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"productIds": {
|
|
"description": "Product IDs in this collection",
|
|
"items": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"createdAt": {
|
|
"anyOf": [
|
|
{
|
|
"description": "RFC 3339 timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"updatedAt": {
|
|
"anyOf": [
|
|
{
|
|
"description": "RFC 3339 timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"sortOrder": {
|
|
"default": "MANUAL",
|
|
"description": "Sort order",
|
|
"enum": [
|
|
"MANUAL",
|
|
"BEST_SELLING",
|
|
"ALPHA_ASC",
|
|
"ALPHA_DESC",
|
|
"PRICE_ASC",
|
|
"PRICE_DESC",
|
|
"CREATED_DESC"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"image": {
|
|
"anyOf": [
|
|
{
|
|
"description": "An image resource (Shopify Image type).",
|
|
"properties": {
|
|
"id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"url": {
|
|
"description": "The URL of the image",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"altText": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Alt text for the image"
|
|
},
|
|
"width": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Image width in pixels"
|
|
},
|
|
"height": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Image height in pixels"
|
|
}
|
|
},
|
|
"required": [
|
|
"url"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Collection image"
|
|
},
|
|
"products": {
|
|
"description": "Legacy collection membership field accepted by older fixtures",
|
|
"items": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"title"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"description": "Collections keyed by gid",
|
|
"type": "object"
|
|
},
|
|
"reviews": {
|
|
"additionalProperties": {
|
|
"additionalProperties": true,
|
|
"description": "Review state with synthetic metadata preserved.",
|
|
"properties": {
|
|
"id": {
|
|
"description": "Globally-unique ID",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"productId": {
|
|
"description": "Product this review is for",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"rating": {
|
|
"description": "Rating from 1 to 5",
|
|
"maximum": 5,
|
|
"minimum": 1,
|
|
"type": "integer"
|
|
},
|
|
"title": {
|
|
"default": "",
|
|
"description": "Review title",
|
|
"type": "string"
|
|
},
|
|
"body": {
|
|
"default": "",
|
|
"description": "Review body text",
|
|
"type": "string"
|
|
},
|
|
"author": {
|
|
"description": "Author name",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Author email"
|
|
},
|
|
"status": {
|
|
"default": "PUBLISHED",
|
|
"description": "Review status",
|
|
"enum": [
|
|
"PENDING",
|
|
"PUBLISHED",
|
|
"HIDDEN"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"createdAt": {
|
|
"anyOf": [
|
|
{
|
|
"description": "RFC 3339 timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"updatedAt": {
|
|
"anyOf": [
|
|
{
|
|
"description": "RFC 3339 timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"productId",
|
|
"rating",
|
|
"author"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"description": "Reviews keyed by review id",
|
|
"type": "object"
|
|
},
|
|
"returns": {
|
|
"additionalProperties": {
|
|
"additionalProperties": true,
|
|
"description": "Return state with synthetic metadata preserved.",
|
|
"properties": {
|
|
"id": {
|
|
"description": "Globally-unique ID",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"orderId": {
|
|
"description": "Order this return is for",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"default": "REQUESTED",
|
|
"description": "Return status",
|
|
"enum": [
|
|
"REQUESTED",
|
|
"APPROVED",
|
|
"RECEIVED",
|
|
"REFUNDED",
|
|
"REJECTED"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"lineItems": {
|
|
"description": "Items being returned",
|
|
"items": {
|
|
"description": "A line item in a return request.",
|
|
"properties": {
|
|
"orderLineItemId": {
|
|
"description": "Reference to the order line item being returned",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"quantity": {
|
|
"description": "Quantity being returned",
|
|
"minimum": 1,
|
|
"type": "integer"
|
|
},
|
|
"reason": {
|
|
"default": "",
|
|
"description": "Reason for return (e.g., 'defective', 'wrong_item', 'not_as_described')",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"orderLineItemId",
|
|
"quantity"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"refundAmount": {
|
|
"anyOf": [
|
|
{
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Amount to refund"
|
|
},
|
|
"reason": {
|
|
"default": "",
|
|
"description": "Overall return reason",
|
|
"type": "string"
|
|
},
|
|
"note": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Internal note"
|
|
},
|
|
"createdAt": {
|
|
"description": "Creation timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
"updatedAt": {
|
|
"description": "Last update timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"orderId",
|
|
"createdAt",
|
|
"updatedAt"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"description": "Returns keyed by return id",
|
|
"type": "object"
|
|
},
|
|
"discount_codes": {
|
|
"additionalProperties": {
|
|
"additionalProperties": true,
|
|
"description": "Discount code state with product restrictions preserved.",
|
|
"properties": {
|
|
"id": {
|
|
"description": "Globally-unique ID",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"code": {
|
|
"description": "The discount code string (e.g., 'SUMMER20')",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"discountType": {
|
|
"default": "PERCENTAGE",
|
|
"description": "Discount type",
|
|
"enum": [
|
|
"PERCENTAGE",
|
|
"FIXED_AMOUNT",
|
|
"FREE_SHIPPING"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"value": {
|
|
"description": "Discount value (e.g., '20' for 20% or '10.00' for $10 off)",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"minimumPurchase": {
|
|
"anyOf": [
|
|
{
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Minimum purchase amount required"
|
|
},
|
|
"minimumTier": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Minimum loyalty tier required to use this code (null = no tier restriction)"
|
|
},
|
|
"usageLimit": {
|
|
"anyOf": [
|
|
{
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Max total uses (null = unlimited)"
|
|
},
|
|
"usageCount": {
|
|
"default": 0,
|
|
"description": "Times used so far",
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"combinesWith": {
|
|
"description": "Controls whether this code can combine with other discount classes",
|
|
"properties": {
|
|
"orderDiscounts": {
|
|
"default": false,
|
|
"description": "Can combine with order-level discounts",
|
|
"type": "boolean"
|
|
},
|
|
"productDiscounts": {
|
|
"default": false,
|
|
"description": "Can combine with product-level discounts",
|
|
"type": "boolean"
|
|
},
|
|
"shippingDiscounts": {
|
|
"default": false,
|
|
"description": "Can combine with shipping discounts",
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"active": {
|
|
"default": true,
|
|
"description": "Whether the code is currently active",
|
|
"type": "boolean"
|
|
},
|
|
"createdAt": {
|
|
"description": "Creation timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
"updatedAt": {
|
|
"description": "Last update timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
"productIds": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"code",
|
|
"value",
|
|
"createdAt",
|
|
"updatedAt"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"description": "Discount codes keyed by code",
|
|
"type": "object"
|
|
},
|
|
"gift_cards": {
|
|
"additionalProperties": {
|
|
"additionalProperties": true,
|
|
"description": "Gift card state with mock-specific metadata preserved.",
|
|
"properties": {
|
|
"id": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"code": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"balance": {
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"initialValue": {
|
|
"anyOf": [
|
|
{
|
|
"description": "A monetary value with currency (Shopify MoneyV2 type).",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"active": {
|
|
"default": true,
|
|
"type": "boolean"
|
|
},
|
|
"createdAt": {
|
|
"anyOf": [
|
|
{
|
|
"description": "RFC 3339 timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"updatedAt": {
|
|
"anyOf": [
|
|
{
|
|
"description": "RFC 3339 timestamp",
|
|
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"code",
|
|
"balance"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"description": "Gift cards keyed by code or id",
|
|
"type": "object"
|
|
},
|
|
"shipping_methods": {
|
|
"additionalProperties": {
|
|
"additionalProperties": true,
|
|
"description": "Shipping method state with synthetic metadata preserved.",
|
|
"properties": {
|
|
"id": {
|
|
"description": "Unique ID (e.g., 'standard', 'express')",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"description": "Display name (e.g., 'Standard Shipping')",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"price": {
|
|
"description": "Shipping cost",
|
|
"properties": {
|
|
"amount": {
|
|
"description": "Decimal money amount as string",
|
|
"pattern": "^\\d+(?:\\.\\d{1,2})?$",
|
|
"type": "string"
|
|
},
|
|
"currencyCode": {
|
|
"description": "ISO 4217 currency code",
|
|
"pattern": "^[A-Z]{3}$",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"amount",
|
|
"currencyCode"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"estimatedDays": {
|
|
"default": "",
|
|
"description": "Estimated delivery time (e.g., '5-7 business days')",
|
|
"type": "string"
|
|
},
|
|
"active": {
|
|
"default": true,
|
|
"description": "Whether this method is currently available",
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"title",
|
|
"price"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"description": "Shipping methods keyed by method id",
|
|
"type": "object"
|
|
},
|
|
"loyalty_program": {
|
|
"additionalProperties": true,
|
|
"description": "Loyalty program configuration",
|
|
"properties": {
|
|
"enabled": {
|
|
"default": false,
|
|
"type": "boolean"
|
|
},
|
|
"earn_rate": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "number"
|
|
}
|
|
],
|
|
"default": 1,
|
|
"ge": 0
|
|
},
|
|
"redemption_rate": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "number"
|
|
}
|
|
],
|
|
"default": 100,
|
|
"gt": 0
|
|
},
|
|
"max_redemption_percent": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "number"
|
|
}
|
|
],
|
|
"default": 50,
|
|
"ge": 0,
|
|
"le": 100
|
|
},
|
|
"tiers": {
|
|
"items": {
|
|
"description": "A tier within the loyalty program.",
|
|
"properties": {
|
|
"name": {
|
|
"description": "Tier name, e.g. 'Bronze', 'Silver', 'Gold'",
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"min_lifetime_points": {
|
|
"description": "Minimum lifetime points to reach this tier",
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"discount_percent": {
|
|
"default": 0,
|
|
"description": "Percent discount off subtotal for members of this tier",
|
|
"maximum": 100,
|
|
"minimum": 0,
|
|
"type": "number"
|
|
}
|
|
},
|
|
"required": [
|
|
"name",
|
|
"min_lifetime_points"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"current_customer_email": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Identifies which customer the agent is acting as in customer-mode worlds"
|
|
},
|
|
"policies": {
|
|
"description": "Shop policies and FAQs",
|
|
"items": {
|
|
"additionalProperties": true,
|
|
"description": "Shop policy as stored in fixtures: no guaranteed `id` or `url`.\n\nDistinct from ``ShopPolicy`` (the API-shaped model) because seeded policies\ncarry a category ``type`` (e.g. REFUND_POLICY) but rarely an id or url.",
|
|
"properties": {
|
|
"id": {
|
|
"anyOf": [
|
|
{
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"type": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Policy category (REFUND_POLICY, SHIPPING_POLICY, \u2026)"
|
|
},
|
|
"title": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"body": {
|
|
"type": "string"
|
|
},
|
|
"url": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
}
|
|
},
|
|
"required": [
|
|
"title",
|
|
"body"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"faqs": {
|
|
"description": "Store FAQ entries",
|
|
"items": {
|
|
"additionalProperties": true,
|
|
"description": "Searchable FAQ entry.",
|
|
"properties": {
|
|
"id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"question": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
"answer": {
|
|
"minLength": 1,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"question",
|
|
"answer"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"counters": {
|
|
"additionalProperties": true,
|
|
"description": "Monotonic id counters used to generate Shopify entity IDs.\n\nLoose (`extra=\"allow\"`) so worlds that carry our extended counters\nround-trip cleanly, but every counter used by current tools is modeled.",
|
|
"properties": {
|
|
"cart_id": {
|
|
"default": 1000,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"line_id": {
|
|
"default": 1000,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"product_id": {
|
|
"default": 8000,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"variant_id": {
|
|
"default": 9000,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"order_id": {
|
|
"default": 2000,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"line_item_id": {
|
|
"default": 3000,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"customer_id": {
|
|
"default": 4000,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"collection_id": {
|
|
"default": 5000,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"review_id": {
|
|
"default": 6000,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"return_id": {
|
|
"default": 7000,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"discount_id": {
|
|
"default": 10000,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"policy_id": {
|
|
"default": 11000,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"state"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "list_carts",
|
|
"description": "List all shopping carts.\n\nUse this tool to discover existing cart IDs before using get_cart or update_cart.\nReturns a list of all carts with their IDs, item counts, and totals.\n\nArgs:\n store_id: Which store to query in multi-store worlds. Defaults to \"default\".\n\nReturns:\n List of carts with summary information including cart IDs",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "list_collections",
|
|
"description": "List all product collections.\n\nArgs:\n limit: Maximum collections to return (default 20)\n after: Pagination cursor from a previous call\n\nReturns:\n List of collections with product counts",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"limit": {
|
|
"default": 20,
|
|
"type": "integer"
|
|
},
|
|
"after": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "list_customers",
|
|
"description": "List customers with optional filtering by name/email or tag.\n\nArgs:\n query: Search by name or email (case-insensitive substring match)\n tag: Filter by customer tag\n limit: Maximum number of customers to return (default 20)\n after: Pagination cursor from a previous call\n\nReturns:\n List of customers with pagination info",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"query": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"tag": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"limit": {
|
|
"default": 20,
|
|
"type": "integer"
|
|
},
|
|
"after": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "list_discount_codes",
|
|
"description": "List all discount codes in the store.\n\nArgs:\n active_only: If true, only return currently active codes\n\nReturns:\n List of discount codes sorted by code",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"active_only": {
|
|
"default": false,
|
|
"type": "boolean"
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "list_loyalty_tiers",
|
|
"description": "List all loyalty tiers sorted by threshold ascending.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "list_my_orders",
|
|
"description": "List orders belonging to the current customer, newest first.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"limit": {
|
|
"default": 20,
|
|
"type": "integer"
|
|
},
|
|
"after": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "list_orders",
|
|
"description": "List orders with optional filtering by status.\n\nArgs:\n status: Filter by financial status (PENDING, PAID, REFUNDED, PARTIALLY_REFUNDED) or fulfillment status (UNFULFILLED, FULFILLED, PARTIALLY_FULFILLED)\n limit: Maximum number of orders to return (default 20)\n after: Pagination cursor from a previous call\n\nReturns:\n List of orders with pagination info",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"status": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"limit": {
|
|
"default": 20,
|
|
"type": "integer"
|
|
},
|
|
"after": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "list_policies",
|
|
"description": "List all store policies.\n\nArgs:\n store_id: Which store to query in multi-store worlds. Defaults to \"default\".\n\nReturns:\n All policies with their titles and content",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "list_returns",
|
|
"description": "List returns with optional filtering by order or status.\n\nArgs:\n order_id: Filter to returns for a specific order\n status: Filter by return status (REQUESTED, APPROVED, RECEIVED, REFUNDED, REJECTED)\n limit: Maximum returns to show (default 20)\n after: Pagination cursor\n\nReturns:\n List of returns with pagination info",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"order_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"status": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"limit": {
|
|
"default": 20,
|
|
"type": "integer"
|
|
},
|
|
"after": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "list_shipping_methods",
|
|
"description": "List all available shipping methods, sorted by price.\n\nArgs:\n active_only: If true, only return active methods\n\nReturns:\n List of shipping methods with prices and estimated delivery times",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"active_only": {
|
|
"default": false,
|
|
"type": "boolean"
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "list_stores",
|
|
"description": "List all available stores.\n\nReturns:\n Store IDs with product counts and basic info.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {},
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "redeem_my_points",
|
|
"description": "Redeem loyalty points from the current customer's balance.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"points": {
|
|
"type": "integer"
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"points"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "redeem_points",
|
|
"description": "Redeem loyalty points for dollar value. Deducts from spendable balance; lifetime points unchanged.\nFor use with orders, pass `redeem_points` to `create_order` instead of calling this directly.\n\nArgs:\n customer_id: The customer's GID.\n points: Positive integer of points to redeem.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"customer_id": {
|
|
"type": "string"
|
|
},
|
|
"points": {
|
|
"type": "integer"
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"customer_id",
|
|
"points"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "remove_from_collection",
|
|
"description": "Remove products from a collection.\n\nArgs:\n collection_id: The collection ID\n product_ids: Product IDs to remove\n\nReturns:\n Updated collection with lists of removed products",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"collection_id": {
|
|
"type": "string"
|
|
},
|
|
"product_ids": {
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"collection_id",
|
|
"product_ids"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "search_customers",
|
|
"description": "Search customers by name, email, or phone number.\n\nArgs:\n query: Search string (case-insensitive, matches name, email, or phone)\n limit: Maximum number of results (default 20)\n\nReturns:\n Matching customers sorted by relevance",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"query": {
|
|
"type": "string"
|
|
},
|
|
"limit": {
|
|
"default": 20,
|
|
"type": "integer"
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"query"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "search_shop_catalog",
|
|
"description": "Search for products from the online store, hosted on Shopify.\n\nThis tool can be used to search for products using natural language queries,\nspecific filter criteria, or both.\n\nBest practices:\n- Searches return available_filters which can be used for refined follow-up searches\n- When filtering, use ONLY the filters from available_filters in follow-up searches\n- For specific filter searches, use simple terms without the filter name\n- Results are paginated, with initial results limited to improve experience\n- Use the after parameter with endCursor to fetch additional pages\n\nArgs:\n query: A natural language query\n context: Additional information about the request such as user demographics, mood, location\n filters: Filters to apply to the search from available_filters in previous response\n country: ISO 3166-1 alpha-2 country code for localized results (e.g., 'US', 'CA')\n language: ISO 639-1 language code for localized results (e.g., 'EN', 'FR')\n limit: Maximum number of products to return (default 10, max 250)\n after: Pagination cursor to fetch the next page of results\n\nReturns:\n Search results including products, available filters, and pagination info",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"query": {
|
|
"type": "string"
|
|
},
|
|
"context": {
|
|
"type": "string"
|
|
},
|
|
"filters": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"country": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"language": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"limit": {
|
|
"default": 10,
|
|
"minimum": 0,
|
|
"type": "integer"
|
|
},
|
|
"after": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"query",
|
|
"context"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "search_shop_policies_and_faqs",
|
|
"description": "Get facts about the store's policies, products, or services.\n\nExamples of questions you can ask:\n- What is your return policy?\n- What is your shipping policy?\n- What is your phone number?\n- What are your hours of operation?\n\nArgs:\n query: A natural language query\n context: Additional information about the request\n\nReturns:\n Matching policies and FAQ answers",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"query": {
|
|
"type": "string"
|
|
},
|
|
"context": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"query"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "update_cart",
|
|
"description": "Perform updates to a cart, including adding/removing/updating line items,\nbuyer information, shipping details, discount codes, gift cards and notes.\n\nShipping options become available after adding items and delivery address.\nWhen creating a new cart, only add_items is required.\n\nArgs:\n cart_id: Identifier for the cart. If not provided, a new cart will be created\n add_items: Items to add to the cart (list of {merchandiseId, quantity})\n update_items: Items to update (list of {id, quantity}). Use quantity 0 to remove\n remove_line_ids: List of line item IDs to remove explicitly\n buyer_identity: Buyer info including email, phone, countryCode\n delivery_addresses_to_add: Delivery addresses to add\n delivery_addresses_to_replace: Delivery addresses to replace all existing\n selected_delivery_options: Delivery options to select\n discount_codes: Discount or promo codes to apply\n gift_card_codes: Gift card codes to apply\n note: A note or special instructions for the cart\n\nReturns:\n Updated cart details",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"cart_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"add_items": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"update_items": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"remove_line_ids": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"buyer_identity": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"delivery_addresses_to_add": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"delivery_addresses_to_replace": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"selected_delivery_options": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"discount_codes": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"gift_card_codes": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"note": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "update_customer",
|
|
"description": "Update an existing customer's profile.\n\nArgs:\n customer_id: The customer ID to update\n first_name: New first name\n last_name: New last name\n email: New email address\n phone: New phone number\n address: New or updated address (sets as default and adds to address list)\n tags: Customer tags (replaces existing)\n note: Internal note\n accepts_marketing: Marketing consent\n\nReturns:\n Updated customer profile",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"customer_id": {
|
|
"type": "string"
|
|
},
|
|
"first_name": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"last_name": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"email": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"phone": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"address": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"tags": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"note": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"accepts_marketing": {
|
|
"anyOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"customer_id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "update_discount_code",
|
|
"description": "Update a discount code's settings.\n\nArgs:\n code: The discount code to update\n active: Enable or disable the code\n value: New discount value\n usage_limit: New usage limit\n minimum_purchase: New minimum purchase amount\n minimum_tier: New minimum tier name (empty string to clear the restriction)\n\nReturns:\n The updated discount code",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"code": {
|
|
"type": "string"
|
|
},
|
|
"active": {
|
|
"anyOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"value": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"usage_limit": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"minimum_purchase": {
|
|
"anyOf": [
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"minimum_tier": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"code"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "update_inventory",
|
|
"description": "Update the inventory quantity for a product variant.\n\nArgs:\n variant_id: The product variant ID to update\n quantity: New quantity available (0 marks as out of stock)\n\nReturns:\n Updated inventory item with previous and new quantity",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"variant_id": {
|
|
"type": "string"
|
|
},
|
|
"quantity": {
|
|
"type": "integer"
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"variant_id",
|
|
"quantity"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "update_my_customer",
|
|
"description": "Update the current customer's own profile. Only customer-editable fields\nare accepted \u2014 admin fields like tags, note, ordersCount, totalSpent, and\nloyalty balances cannot be changed here.",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"first_name": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"last_name": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"phone": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"address": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"accepts_marketing": {
|
|
"anyOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "update_order",
|
|
"description": "Update an existing order's fulfillment status, contact info, or metadata.\n\nArgs:\n order_id: The order ID to update\n financial_status: New financial status. Use cancel_order or the return workflow for VOIDED, REFUNDED, or PARTIALLY_REFUNDED.\n fulfillment_status: New fulfillment status (UNFULFILLED, FULFILLED, PARTIALLY_FULFILLED)\n note: Order note\n tags: Order tags\n email: Customer email. Existing order ownership cannot be reassigned.\n phone: Customer phone\n shipping_address: Updated shipping address\n\nReturns:\n Updated order details",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"order_id": {
|
|
"type": "string"
|
|
},
|
|
"financial_status": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"fulfillment_status": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"note": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"tags": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"email": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"phone": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"shipping_address": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"order_id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "update_policy",
|
|
"description": "Update a store policy's title or content.\n\nArgs:\n policy_id: The policy ID to update\n title: New title\n body: New content (HTML)\n\nReturns:\n The updated policy",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"policy_id": {
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"body": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"policy_id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "update_product",
|
|
"description": "Update an existing product's details.\n\nArgs:\n product_id: The product ID to update\n title: New title\n description: New description\n product_type: New product type\n vendor: New vendor name\n tags: New tags (replaces existing)\n\nReturns:\n The updated product",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"product_id": {
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"description": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"product_type": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"vendor": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"tags": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"product_id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "update_return",
|
|
"description": "Update a return's status or note. When status is set to REFUNDED, the\nlinked order's financial status is automatically updated to REFUNDED or\nPARTIALLY_REFUNDED based on the refund amount.\n\nArgs:\n return_id: The return ID to update\n status: New status (REQUESTED, APPROVED, RECEIVED, REFUNDED, REJECTED)\n note: Internal note\n\nReturns:\n Updated return details",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"return_id": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"note": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"return_id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "update_review",
|
|
"description": "Update or moderate a review. Use status to publish, hide, or mark as pending.\n\nArgs:\n review_id: The review ID to update\n status: New status (PENDING, PUBLISHED, HIDDEN)\n title: New review title\n body: New review text\n rating: New rating (1-5)\n\nReturns:\n Updated review",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"review_id": {
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"title": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"body": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"rating": {
|
|
"anyOf": [
|
|
{
|
|
"maximum": 5,
|
|
"minimum": 1,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"review_id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
{
|
|
"name": "update_shipping_method",
|
|
"description": "Update a shipping method's details.\n\nArgs:\n shipping_method_id: The shipping method ID to update\n title: New display name\n price: New price\n estimated_days: New estimated delivery time\n active: Enable or disable this method\n\nReturns:\n The updated shipping method",
|
|
"inputSchema": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"shipping_method_id": {
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"price": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"estimated_days": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"active": {
|
|
"anyOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null
|
|
},
|
|
"store_id": {
|
|
"default": "default",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"shipping_method_id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"outputSchema": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
}
|
|
],
|
|
"toolsets": {
|
|
"read": [
|
|
"get_cart",
|
|
"get_collection",
|
|
"get_customer",
|
|
"get_discount_code",
|
|
"get_inventory",
|
|
"get_loyalty_balance",
|
|
"get_loyalty_program",
|
|
"get_loyalty_tier",
|
|
"get_my_customer",
|
|
"get_my_loyalty_balance",
|
|
"get_my_loyalty_tier",
|
|
"get_my_order",
|
|
"get_order",
|
|
"get_product_details",
|
|
"get_product_reviews",
|
|
"get_return",
|
|
"list_carts",
|
|
"list_collections",
|
|
"list_customers",
|
|
"list_discount_codes",
|
|
"list_loyalty_tiers",
|
|
"list_my_orders",
|
|
"list_orders",
|
|
"list_policies",
|
|
"list_returns",
|
|
"list_shipping_methods",
|
|
"list_stores",
|
|
"search_customers",
|
|
"search_shop_catalog",
|
|
"search_shop_policies_and_faqs"
|
|
],
|
|
"write": [
|
|
"add_to_collection",
|
|
"award_points",
|
|
"cancel_order",
|
|
"configure_loyalty_program",
|
|
"create_collection",
|
|
"create_customer",
|
|
"create_discount_code",
|
|
"create_my_return",
|
|
"create_my_review",
|
|
"create_order",
|
|
"create_policy",
|
|
"create_product",
|
|
"create_return",
|
|
"create_review",
|
|
"create_shipping_method",
|
|
"delete_discount_code",
|
|
"delete_policy",
|
|
"delete_product",
|
|
"delete_review",
|
|
"delete_shipping_method",
|
|
"redeem_my_points",
|
|
"redeem_points",
|
|
"remove_from_collection",
|
|
"update_cart",
|
|
"update_customer",
|
|
"update_discount_code",
|
|
"update_inventory",
|
|
"update_my_customer",
|
|
"update_order",
|
|
"update_policy",
|
|
"update_product",
|
|
"update_return",
|
|
"update_review",
|
|
"update_shipping_method"
|
|
],
|
|
"catalog": [
|
|
"create_product",
|
|
"delete_product",
|
|
"get_product_details",
|
|
"search_shop_catalog",
|
|
"search_shop_policies_and_faqs",
|
|
"update_product"
|
|
],
|
|
"cart": [
|
|
"get_cart",
|
|
"list_carts",
|
|
"update_cart"
|
|
],
|
|
"orders": [
|
|
"cancel_order",
|
|
"create_order",
|
|
"get_order",
|
|
"list_orders",
|
|
"update_order"
|
|
],
|
|
"customers": [
|
|
"create_customer",
|
|
"get_customer",
|
|
"list_customers",
|
|
"search_customers",
|
|
"update_customer"
|
|
],
|
|
"inventory_collections": [
|
|
"add_to_collection",
|
|
"create_collection",
|
|
"get_collection",
|
|
"get_inventory",
|
|
"list_collections",
|
|
"remove_from_collection",
|
|
"update_inventory"
|
|
],
|
|
"reviews_returns": [
|
|
"create_return",
|
|
"create_review",
|
|
"delete_review",
|
|
"get_product_reviews",
|
|
"get_return",
|
|
"list_returns",
|
|
"update_return",
|
|
"update_review"
|
|
],
|
|
"discounts": [
|
|
"create_discount_code",
|
|
"delete_discount_code",
|
|
"get_discount_code",
|
|
"list_discount_codes",
|
|
"update_discount_code"
|
|
],
|
|
"policies": [
|
|
"create_policy",
|
|
"delete_policy",
|
|
"list_policies",
|
|
"search_shop_policies_and_faqs",
|
|
"update_policy"
|
|
],
|
|
"shipping": [
|
|
"create_shipping_method",
|
|
"delete_shipping_method",
|
|
"list_shipping_methods",
|
|
"update_shipping_method"
|
|
],
|
|
"loyalty": [
|
|
"award_points",
|
|
"configure_loyalty_program",
|
|
"get_loyalty_balance",
|
|
"get_loyalty_program",
|
|
"get_loyalty_tier",
|
|
"list_loyalty_tiers",
|
|
"redeem_points"
|
|
],
|
|
"self": [
|
|
"create_my_return",
|
|
"create_my_review",
|
|
"get_my_customer",
|
|
"get_my_loyalty_balance",
|
|
"get_my_loyalty_tier",
|
|
"get_my_order",
|
|
"list_my_orders",
|
|
"redeem_my_points",
|
|
"update_my_customer"
|
|
],
|
|
"customer": [
|
|
"create_my_return",
|
|
"create_my_review",
|
|
"create_order",
|
|
"get_cart",
|
|
"get_my_customer",
|
|
"get_my_loyalty_balance",
|
|
"get_my_loyalty_tier",
|
|
"get_my_order",
|
|
"get_product_details",
|
|
"list_loyalty_tiers",
|
|
"list_my_orders",
|
|
"list_shipping_methods",
|
|
"redeem_my_points",
|
|
"search_shop_catalog",
|
|
"search_shop_policies_and_faqs",
|
|
"update_cart",
|
|
"update_my_customer"
|
|
],
|
|
"business": [
|
|
"add_to_collection",
|
|
"award_points",
|
|
"cancel_order",
|
|
"configure_loyalty_program",
|
|
"create_collection",
|
|
"create_customer",
|
|
"create_discount_code",
|
|
"create_policy",
|
|
"create_product",
|
|
"create_shipping_method",
|
|
"delete_discount_code",
|
|
"delete_policy",
|
|
"delete_product",
|
|
"delete_review",
|
|
"delete_shipping_method",
|
|
"get_collection",
|
|
"get_customer",
|
|
"get_discount_code",
|
|
"get_inventory",
|
|
"get_loyalty_balance",
|
|
"get_loyalty_program",
|
|
"get_loyalty_tier",
|
|
"get_order",
|
|
"get_product_reviews",
|
|
"get_return",
|
|
"list_collections",
|
|
"list_customers",
|
|
"list_discount_codes",
|
|
"list_loyalty_tiers",
|
|
"list_orders",
|
|
"list_policies",
|
|
"list_returns",
|
|
"list_shipping_methods",
|
|
"list_stores",
|
|
"redeem_points",
|
|
"remove_from_collection",
|
|
"search_customers",
|
|
"search_shop_catalog",
|
|
"search_shop_policies_and_faqs",
|
|
"update_customer",
|
|
"update_discount_code",
|
|
"update_inventory",
|
|
"update_order",
|
|
"update_policy",
|
|
"update_product",
|
|
"update_return",
|
|
"update_review",
|
|
"update_shipping_method"
|
|
],
|
|
"core": [
|
|
"create_order",
|
|
"get_cart",
|
|
"get_order",
|
|
"get_product_details",
|
|
"list_carts",
|
|
"list_orders",
|
|
"list_shipping_methods",
|
|
"search_shop_catalog",
|
|
"update_cart",
|
|
"search_shop_policies_and_faqs"
|
|
],
|
|
"toolathlon_legacy": [
|
|
"get_cart",
|
|
"get_product_details",
|
|
"list_carts",
|
|
"search_shop_catalog",
|
|
"search_shop_policies_and_faqs",
|
|
"update_cart"
|
|
],
|
|
"state": [
|
|
"export_state",
|
|
"import_state"
|
|
]
|
|
}
|
|
}
|