{
  "openapi": "3.1.1",
  "info": {
    "title": "Ecomiq Storefront API",
    "version": "1.0.0",
    "description": "Public commerce API used by @ecomiq/storefront for catalog, customer accounts, carts, checkout, and orders."
  },
  "paths": {
    "/v1/customer": {
      "get": {
        "tags": [
          "Customers"
        ],
        "operationId": "GetCustomer",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomerDetailsDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-ecomiq-anonymous": false,
        "x-ecomiq-resource": "Customer",
        "summary": "Get customer",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      },
      "patch": {
        "tags": [
          "Customers"
        ],
        "operationId": "UpdateCustomer",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCustomerRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-ecomiq-anonymous": false,
        "x-ecomiq-resource": "Customer",
        "summary": "Update customer",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/customer/addresses": {
      "post": {
        "tags": [
          "Customers"
        ],
        "operationId": "CreateCustomerAddress",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CustomerAddressRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-ecomiq-anonymous": false,
        "x-ecomiq-resource": "Customer",
        "summary": "Create customer address",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      },
      "get": {
        "tags": [
          "Customers"
        ],
        "operationId": "ListCustomerAddresses",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/CustomerAddressDto"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-ecomiq-anonymous": false,
        "x-ecomiq-resource": "Customer",
        "summary": "List customer addresses",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/customer/addresses/{addressId}": {
      "delete": {
        "tags": [
          "Customers"
        ],
        "operationId": "DeleteCustomerAddress",
        "parameters": [
          {
            "name": "addressId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-ecomiq-anonymous": false,
        "x-ecomiq-resource": "Customer",
        "summary": "Delete customer address",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      },
      "put": {
        "tags": [
          "Customers"
        ],
        "operationId": "UpdateCustomerAddress",
        "parameters": [
          {
            "name": "addressId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CustomerAddressRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-ecomiq-anonymous": false,
        "x-ecomiq-resource": "Customer",
        "summary": "Update customer address",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/customer/addresses/{addressId}/default": {
      "post": {
        "tags": [
          "Customers"
        ],
        "summary": "Set default address",
        "description": "Marks one of the customer's saved addresses as the default. The previous default is cleared in the same operation.",
        "operationId": "SetCustomerDefaultAddress",
        "parameters": [
          {
            "name": "addressId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-ecomiq-anonymous": false,
        "x-ecomiq-resource": "Customer",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/customer/login": {
      "post": {
        "tags": [
          "Customers"
        ],
        "summary": "Log in a customer and return access tokens",
        "description": "Exchanges the customer's credentials for access tokens. The storefront normally keeps the session in an HttpOnly cookie rather than handing the token to page scripts.",
        "operationId": "LoginCustomer",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LoginCustomerRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomerLoginResponseDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Customer",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/customer/recovery-password": {
      "post": {
        "tags": [
          "Customers"
        ],
        "summary": "Request a password recovery email for a customer",
        "description": "Sends the customer a link to set a new password. Responds 200 whether or not the address belongs to an account, so the endpoint cannot be used to discover which emails are registered.",
        "operationId": "RecoveryCustomerPassword",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RecoveryCustomerPasswordRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Customer",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/customer/register": {
      "post": {
        "tags": [
          "Customers"
        ],
        "summary": "Register customer",
        "description": "Creates a shopper account for this store. Accounts are scoped to the store: the same person registering on two storefronts gets two independent accounts.",
        "operationId": "RegisterCustomer",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RegisterCustomerRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomerCreatedDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Customer",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/carts": {
      "post": {
        "tags": [
          "Orders & Checkout"
        ],
        "operationId": "CreateCart",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCartRequest"
              },
              "example": {
                "currencyCode": "PEN",
                "email": "andrea@example.com"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StorefrontCartDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Carts",
        "summary": "Create cart",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/carts/{cartToken}": {
      "get": {
        "tags": [
          "Orders & Checkout"
        ],
        "operationId": "GetStorefrontCart",
        "parameters": [
          {
            "name": "cartToken",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Opaque token identifying the cart."
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StorefrontCartDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Carts",
        "summary": "Get storefront cart",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/carts/{cartToken}/addresses": {
      "patch": {
        "tags": [
          "Orders & Checkout"
        ],
        "operationId": "UpdateCartAddresses",
        "parameters": [
          {
            "name": "cartToken",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Opaque token identifying the cart."
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCartAddressesRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StorefrontCartDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Carts",
        "summary": "Update cart addresses",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/carts/{cartToken}/buyer": {
      "patch": {
        "tags": [
          "Orders & Checkout"
        ],
        "operationId": "UpdateCartBuyer",
        "parameters": [
          {
            "name": "cartToken",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Opaque token identifying the cart."
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCartBuyerRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StorefrontCartDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Carts",
        "summary": "Update cart buyer",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/carts/{cartToken}/checkout": {
      "post": {
        "tags": [
          "Orders & Checkout"
        ],
        "summary": "Start checkout",
        "description": "Turns the cart into an order. The cart must already carry buyer, addresses and a shipping method; the response points to the resulting order.",
        "operationId": "CheckoutCart",
        "parameters": [
          {
            "name": "cartToken",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Opaque token identifying the cart."
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CheckoutCartRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StorefrontCheckoutResultDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Carts",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      },
      "get": {
        "tags": [
          "Orders & Checkout"
        ],
        "summary": "Get checkout",
        "description": "Returns the current state of the checkout: which steps are complete, the totals and the payment methods the merchant has enabled. Poll it when the payment settles outside the storefront.",
        "operationId": "GetStorefrontCartCheckout",
        "parameters": [
          {
            "name": "cartToken",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Opaque token identifying the cart."
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StorefrontCheckoutDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Carts",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/carts/{cartToken}/items": {
      "post": {
        "tags": [
          "Orders & Checkout"
        ],
        "operationId": "AddItemToCart",
        "parameters": [
          {
            "name": "cartToken",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Opaque token identifying the cart."
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddCartItemRequest"
              },
              "example": {
                "variantId": "7204558912004325377",
                "quantity": 2
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StorefrontCartDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Carts",
        "summary": "Add item to cart",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/carts/{cartToken}/items/{cartItemId}": {
      "delete": {
        "tags": [
          "Orders & Checkout"
        ],
        "operationId": "RemoveItemFromCart",
        "parameters": [
          {
            "name": "cartToken",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Opaque token identifying the cart."
          },
          {
            "name": "cartItemId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StorefrontCartDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Carts",
        "summary": "Remove item from cart",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      },
      "patch": {
        "tags": [
          "Orders & Checkout"
        ],
        "operationId": "UpdateCartItemQuantity",
        "parameters": [
          {
            "name": "cartToken",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Opaque token identifying the cart."
          },
          {
            "name": "cartItemId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCartItemQuantityRequest"
              },
              "example": {
                "quantity": 3
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StorefrontCartDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Carts",
        "summary": "Update cart item quantity",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/carts/{cartToken}/order": {
      "get": {
        "tags": [
          "Orders & Checkout"
        ],
        "summary": "Get cart order group",
        "description": "Returns the orders a completed cart produced. A cart with items from several sellers becomes several orders under one group.",
        "operationId": "GetStorefrontCartOrder",
        "parameters": [
          {
            "name": "cartToken",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Opaque token identifying the cart."
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CartOrderSummaryDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Carts",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/carts/{cartToken}/payment-receipt": {
      "post": {
        "tags": [
          "Orders & Checkout"
        ],
        "operationId": "UploadCartPaymentReceipt",
        "parameters": [
          {
            "name": "cartToken",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Opaque token identifying the cart."
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "required": [
                  "file"
                ],
                "type": "object",
                "properties": {
                  "file": {
                    "$ref": "#/components/schemas/IFormFile"
                  }
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CartPaymentReceiptDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Carts",
        "summary": "Upload cart payment receipt",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/carts/{cartToken}/promotion-codes": {
      "post": {
        "tags": [
          "Orders & Checkout"
        ],
        "operationId": "AddPromotionCode",
        "parameters": [
          {
            "name": "cartToken",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Opaque token identifying the cart."
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddPromotionCodeRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StorefrontCartDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Carts",
        "summary": "Add promotion code",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/carts/{cartToken}/promotion-codes/{code}": {
      "delete": {
        "tags": [
          "Orders & Checkout"
        ],
        "operationId": "RemovePromotionCode",
        "parameters": [
          {
            "name": "cartToken",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Opaque token identifying the cart."
          },
          {
            "name": "code",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StorefrontCartDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Carts",
        "summary": "Remove promotion code",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/carts/{cartToken}/shipping-method": {
      "delete": {
        "tags": [
          "Orders & Checkout"
        ],
        "operationId": "ClearCartShippingMethod",
        "parameters": [
          {
            "name": "cartToken",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Opaque token identifying the cart."
          },
          {
            "name": "sellerId",
            "in": "query",
            "schema": {
              "type": [
                "null",
                "string"
              ]
            }
          },
          {
            "name": "shippingProfileId",
            "in": "query",
            "schema": {
              "type": [
                "null",
                "string"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StorefrontCartDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Carts",
        "summary": "Clear cart shipping method",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      },
      "put": {
        "tags": [
          "Orders & Checkout"
        ],
        "operationId": "SetCartShippingMethod",
        "parameters": [
          {
            "name": "cartToken",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Opaque token identifying the cart."
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SetCartShippingMethodRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StorefrontCartDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Carts",
        "summary": "Set cart shipping method",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/carts/{cartToken}/shipping-options": {
      "get": {
        "tags": [
          "Orders & Checkout"
        ],
        "operationId": "ListCartShippingOptions",
        "parameters": [
          {
            "name": "cartToken",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Opaque token identifying the cart."
          },
          {
            "name": "postalCode",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "scheduledDate",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "scheduledTime",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "time"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CartShippingOptionsDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Carts",
        "summary": "List cart shipping options",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/carts/{cartToken}/shipping-options/{rateId}/slots": {
      "get": {
        "tags": [
          "Orders & Checkout"
        ],
        "operationId": "GetCartShippingOptionSlots",
        "parameters": [
          {
            "name": "cartToken",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Opaque token identifying the cart."
          },
          {
            "name": "rateId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "SellerId",
            "in": "query",
            "schema": {
              "type": [
                "null",
                "string"
              ]
            }
          },
          {
            "name": "ShippingProfileId",
            "in": "query",
            "schema": {
              "type": [
                "null",
                "string"
              ]
            }
          },
          {
            "name": "LocationId",
            "in": "query",
            "schema": {
              "type": [
                "null",
                "string"
              ]
            }
          },
          {
            "name": "PickupPointId",
            "in": "query",
            "schema": {
              "type": [
                "null",
                "string"
              ]
            }
          },
          {
            "name": "ServiceCode",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Date",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string",
              "format": "date"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ShippingMethodSlotsModel"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Carts",
        "summary": "Get cart shipping option slots",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/carts/shipping/slots": {
      "get": {
        "tags": [
          "Orders & Checkout"
        ],
        "summary": "Get shipping slots",
        "description": "Returns the delivery windows available for a shipping method. Only relevant when the merchant offers scheduled delivery.",
        "operationId": "GetShippingSlots",
        "parameters": [
          {
            "name": "ShippingMethodId",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "LocationId",
            "in": "query",
            "schema": {
              "type": [
                "null",
                "string"
              ]
            }
          },
          {
            "name": "PickupPointId",
            "in": "query",
            "schema": {
              "type": [
                "null",
                "string"
              ]
            }
          },
          {
            "name": "PostalCode",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Latitude",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "Longitude",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "Date",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string",
              "format": "date"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ShippingMethodSlotsModel"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Carts",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/customer/orders": {
      "get": {
        "tags": [
          "Orders & Checkout"
        ],
        "summary": "List customer orders",
        "description": "Customer order history with items, shipping address and payment totals",
        "operationId": "ListCustomerOrders",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/CustomerOrderGroupListDto"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-ecomiq-anonymous": false,
        "x-ecomiq-resource": "Customer",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/customer/orders/{orderId}": {
      "get": {
        "tags": [
          "Orders & Checkout"
        ],
        "summary": "Get customer order",
        "description": "Customer order detail with items, shipping, payments and status timeline",
        "operationId": "GetCustomerOrder",
        "parameters": [
          {
            "name": "orderId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomerOrderDetailsDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-ecomiq-anonymous": false,
        "x-ecomiq-resource": "Customer",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/customer/orders/{orderId}/status": {
      "get": {
        "tags": [
          "Orders & Checkout"
        ],
        "summary": "Get order status",
        "description": "Returns the current status of one of the customer's orders, for an order tracking page.",
        "operationId": "GetCustomerOrderStatus",
        "parameters": [
          {
            "name": "orderId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomerOrderStatusDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-ecomiq-anonymous": false,
        "x-ecomiq-resource": "Customer",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/customer/orders/group/{orderGroup}": {
      "get": {
        "tags": [
          "Orders & Checkout"
        ],
        "summary": "Get orders by group",
        "description": "Returns the orders of one group for the signed-in customer. A purchase split across sellers produces several orders under the same group.",
        "operationId": "GetCustomerOrderGroup",
        "parameters": [
          {
            "name": "orderGroup",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OrderGroupDetailsDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "x-ecomiq-anonymous": false,
        "x-ecomiq-resource": "Customer",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/order-drafts/share/{shareToken}": {
      "get": {
        "tags": [
          "Orders & Checkout"
        ],
        "operationId": "GetOrderDraftShare",
        "parameters": [
          {
            "name": "shareToken",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OrderDraftDetailsDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Order Drafts",
        "summary": "Get order draft share",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/geo/areas": {
      "get": {
        "tags": [
          "Fulfillment & Shipping"
        ],
        "summary": "List areas",
        "description": "Lists the delivery areas the store has defined. Areas group districts to price shipping without listing every district.",
        "parameters": [
          {
            "name": "countryCode",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "ISO 3166-1 alpha-2 country code, for example `PE`."
          },
          {
            "name": "type",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/QueryEnumOfAreaLevel"
            }
          },
          {
            "name": "parentId",
            "in": "query",
            "schema": {
              "type": [
                "null",
                "string"
              ]
            }
          },
          {
            "name": "parentCode",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "source",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "search",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "Free-text filter. Which fields it covers depends on the resource."
          },
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            },
            "description": "Maximum number of results to return."
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/GeoAreaModel"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Geo",
        "operationId": "getV1GeoAreas",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/geo/areas/{id}": {
      "get": {
        "tags": [
          "Fulfillment & Shipping"
        ],
        "summary": "Get area",
        "description": "Returns one delivery area with the districts it covers.",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier of the resource."
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GeoAreaModel"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Geo",
        "operationId": "getV1GeoAreasId",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/geo/countries": {
      "get": {
        "tags": [
          "Fulfillment & Shipping"
        ],
        "summary": "List countries",
        "description": "Lists the countries the store ships to. First step of an address form.",
        "parameters": [
          {
            "name": "search",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "Free-text filter. Which fields it covers depends on the resource."
          },
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            },
            "description": "Maximum number of results to return."
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/GeoCountryModel"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Geo",
        "operationId": "getV1GeoCountries",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/geo/departments": {
      "get": {
        "tags": [
          "Fulfillment & Shipping"
        ],
        "summary": "List departments",
        "description": "Lists the departments of a country. Second step of a Peruvian address form.",
        "parameters": [
          {
            "name": "countryCode",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "ISO 3166-1 alpha-2 country code, for example `PE`."
          },
          {
            "name": "source",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "search",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "Free-text filter. Which fields it covers depends on the resource."
          },
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            },
            "description": "Maximum number of results to return."
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/GeoAreaModel"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Geo",
        "operationId": "getV1GeoDepartments",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/geo/districts": {
      "get": {
        "tags": [
          "Fulfillment & Shipping"
        ],
        "summary": "List districts",
        "description": "Lists the districts of a province. Last step of a Peruvian address form, and the level shipping rates are calculated from.",
        "parameters": [
          {
            "name": "countryCode",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "ISO 3166-1 alpha-2 country code, for example `PE`."
          },
          {
            "name": "provinceId",
            "in": "query",
            "schema": {
              "type": [
                "null",
                "string"
              ]
            }
          },
          {
            "name": "provinceCode",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "source",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "search",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "Free-text filter. Which fields it covers depends on the resource."
          },
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            },
            "description": "Maximum number of results to return."
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/GeoAreaModel"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Geo",
        "operationId": "getV1GeoDistricts",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/geo/provinces": {
      "get": {
        "tags": [
          "Fulfillment & Shipping"
        ],
        "summary": "List provinces",
        "description": "Lists the provinces of a department. Third step of a Peruvian address form.",
        "parameters": [
          {
            "name": "countryCode",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "ISO 3166-1 alpha-2 country code, for example `PE`."
          },
          {
            "name": "departmentId",
            "in": "query",
            "schema": {
              "type": [
                "null",
                "string"
              ]
            }
          },
          {
            "name": "departmentCode",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "source",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "search",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "Free-text filter. Which fields it covers depends on the resource."
          },
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            },
            "description": "Maximum number of results to return."
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/GeoAreaModel"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Geo",
        "operationId": "getV1GeoProvinces",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/geo/resolve": {
      "get": {
        "tags": [
          "Fulfillment & Shipping"
        ],
        "summary": "Resolve area by source code",
        "description": "Finds which delivery area a location belongs to. Use it to resolve an area from a postal or district code before asking for shipping options.",
        "parameters": [
          {
            "name": "countryCode",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "ISO 3166-1 alpha-2 country code, for example `PE`."
          },
          {
            "name": "source",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "code",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GeoAreaModel"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Geo",
        "operationId": "getV1GeoResolve",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/access/unlock": {
      "post": {
        "tags": [
          "Content & Storefront"
        ],
        "summary": "Unlock private storefront",
        "description": "Grants access to a storefront that is not public yet. Used for stores behind a password while they are being prepared.",
        "operationId": "UnlockStoreAccess",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UnlockStoreAccessRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Access",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/brands": {
      "get": {
        "tags": [
          "Content & Storefront"
        ],
        "summary": "List storefront brands",
        "description": "Lists the brands present in the published catalog. Useful to build a brand filter outside the facets of a search.",
        "parameters": [
          {
            "name": "SellerId",
            "in": "query",
            "schema": {
              "type": [
                "null",
                "string"
              ]
            }
          },
          {
            "name": "Search",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Sort",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/BrandItem"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Brands",
        "operationId": "getV1Brands",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/categories": {
      "get": {
        "tags": [
          "Content & Storefront"
        ],
        "summary": "List storefront categories",
        "description": "Lists the categories of the published catalog, in the hierarchy the merchant defined.",
        "parameters": [
          {
            "name": "SellerId",
            "in": "query",
            "schema": {
              "type": [
                "null",
                "string"
              ]
            }
          },
          {
            "name": "Search",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Sort",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/CategoryItem"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Categories",
        "operationId": "getV1Categories",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/collections": {
      "get": {
        "tags": [
          "Content & Storefront"
        ],
        "summary": "List storefront collections",
        "description": "Lists the published collections. They drive the navigation menu and the landing pages of the store.",
        "parameters": [
          {
            "name": "SellerId",
            "in": "query",
            "schema": {
              "type": [
                "null",
                "string"
              ]
            }
          },
          {
            "name": "Search",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Sort",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/CollectionItem"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Collections",
        "operationId": "getV1Collections",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/collections/{slug}": {
      "get": {
        "tags": [
          "Content & Storefront"
        ],
        "summary": "Get storefront collection by slug",
        "description": "Returns one collection with its name, description and media. The products it contains are fetched from the catalog search using the collection filter.",
        "parameters": [
          {
            "name": "slug",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "URL-friendly identifier."
          },
          {
            "name": "sellerId",
            "in": "query",
            "schema": {
              "type": [
                "null",
                "string"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CollectionItem"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Collections",
        "operationId": "getV1CollectionsSlug",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/menus": {
      "get": {
        "tags": [
          "Content & Storefront"
        ],
        "summary": "List active menus",
        "description": "Lists the active menus. They also arrive inside the store settings snapshot.",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Item"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Menus",
        "operationId": "getV1Menus",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/menus/{key}": {
      "get": {
        "tags": [
          "Content & Storefront"
        ],
        "summary": "Get active menu by key",
        "description": "Returns one menu by its key, with its items in order.",
        "parameters": [
          {
            "name": "key",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Item"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Menus",
        "operationId": "getV1MenusKey",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/pages": {
      "get": {
        "tags": [
          "Content & Storefront"
        ],
        "summary": "List published pages",
        "description": "Lists the published CMS pages. They also arrive inside the store settings snapshot.",
        "parameters": [
          {
            "name": "Search",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Item"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Pages",
        "operationId": "getV1Pages",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/pages/{slug}": {
      "get": {
        "tags": [
          "Content & Storefront"
        ],
        "summary": "Get published page by slug",
        "description": "Returns a published page by its slug, with its sections and blocks.",
        "parameters": [
          {
            "name": "slug",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "URL-friendly identifier."
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CmsPageDetailsDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Pages",
        "operationId": "getV1PagesSlug",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/products": {
      "get": {
        "tags": [
          "Content & Storefront"
        ],
        "summary": "Search storefront products",
        "description": "Returns one page of the published catalog together with the facets that apply to it, so a filter panel needs no second call. Every filter is optional and they combine.",
        "parameters": [
          {
            "name": "SellerId",
            "in": "query",
            "schema": {
              "type": [
                "null",
                "string"
              ]
            }
          },
          {
            "name": "Search",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Category",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "categories",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "Brand",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "brands",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "Collection",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "collections",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "CollectionId",
            "in": "query",
            "schema": {
              "type": [
                "null",
                "string"
              ]
            }
          },
          {
            "name": "ProductType",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "productTypes",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "Tag",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tags",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "filters",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "LocationId",
            "in": "query",
            "schema": {
              "type": [
                "null",
                "string"
              ]
            }
          },
          {
            "name": "InStock",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "MinPrice",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "MaxPrice",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "Page",
            "in": "query",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "PageSize",
            "in": "query",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "Sort",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchResult"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Products",
        "operationId": "getV1Products",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/products/{productId}/related": {
      "get": {
        "tags": [
          "Content & Storefront"
        ],
        "summary": "List related products",
        "description": "Returns products related to the given one, for the recommendation block of a product page.",
        "parameters": [
          {
            "name": "productId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            },
            "description": "Maximum number of results to return."
          },
          {
            "name": "sellerId",
            "in": "query",
            "schema": {
              "type": [
                "null",
                "string"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ProductSummary"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Products",
        "operationId": "getV1ProductsProductidRelated",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/products/{productId}/reviews": {
      "post": {
        "tags": [
          "Content & Storefront"
        ],
        "summary": "Create storefront product review",
        "description": "Submits a review for a product. It is not published immediately: the merchant moderates it first.",
        "parameters": [
          {
            "name": "productId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/StorefrontReviewRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StorefrontReviewDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Products",
        "operationId": "postV1ProductsProductidReviews",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      },
      "get": {
        "tags": [
          "Content & Storefront"
        ],
        "summary": "List storefront product reviews",
        "description": "Returns the approved reviews of a product, paginated by cursor. Reviews awaiting moderation are not included.",
        "parameters": [
          {
            "name": "productId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            },
            "description": "Maximum number of results to return."
          },
          {
            "name": "cursor",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "Opaque cursor from the previous response. Omit it on the first page."
          },
          {
            "name": "search",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "Free-text filter. Which fields it covers depends on the resource."
          },
          {
            "name": "sortBy",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "Field to sort by. Accepted values depend on the resource."
          },
          {
            "name": "sortDirection",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/QueryEnumOfSortDirection"
            },
            "description": "Sort direction: `asc` or `desc`."
          },
          {
            "name": "rating",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CursorPaginatedItemsOfStorefrontReviewDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Products",
        "operationId": "getV1ProductsProductidReviews",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/products/{slug}": {
      "get": {
        "tags": [
          "Content & Storefront"
        ],
        "summary": "Get storefront product by slug",
        "description": "Returns the full product page data: variants, media, specifications and stock. The slug is the one used in the storefront URL.",
        "parameters": [
          {
            "name": "slug",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "URL-friendly identifier."
          },
          {
            "name": "sellerId",
            "in": "query",
            "schema": {
              "type": [
                "null",
                "string"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProductDetail"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Products",
        "operationId": "getV1ProductsSlug",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/search/autocomplete": {
      "get": {
        "tags": [
          "Content & Storefront"
        ],
        "summary": "Autocomplete storefront products",
        "description": "Returns suggestions while the shopper types. Built for a search box, not for a listing: use the product search endpoint for results pages.",
        "parameters": [
          {
            "name": "SellerId",
            "in": "query",
            "schema": {
              "type": [
                "null",
                "string"
              ]
            }
          },
          {
            "name": "Search",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Limit",
            "in": "query",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Suggestion"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Search",
        "operationId": "getV1SearchAutocomplete",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/settings": {
      "get": {
        "tags": [
          "Content & Storefront"
        ],
        "summary": "All Store settings",
        "description": "Returns everything the storefront needs to render in a single snapshot: store, checkout, theme, features, CMS settings, pages and menus. Fetch it once per request instead of calling the individual settings endpoints.",
        "operationId": "GetStoreSettings",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StoreSettingsSnapshotDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Settings",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/site-settings": {
      "get": {
        "tags": [
          "Content & Storefront"
        ],
        "summary": "Get active storefront CMS settings",
        "description": "Returns the CMS settings on their own. Prefer the full store settings snapshot unless you only need this slice.",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CmsSiteSettingsDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Site Settings",
        "operationId": "getV1SiteSettings",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/store-locations": {
      "get": {
        "tags": [
          "Content & Storefront"
        ],
        "summary": "List public store locations",
        "description": "Retrieve public physical store locations",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            },
            "description": "Maximum number of results to return."
          },
          {
            "name": "cursor",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "Opaque cursor from the previous response. Omit it on the first page."
          },
          {
            "name": "search",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "Free-text filter. Which fields it covers depends on the resource."
          },
          {
            "name": "sortBy",
            "in": "query",
            "schema": {
              "type": "string"
            },
            "description": "Field to sort by. Accepted values depend on the resource."
          },
          {
            "name": "sortDirection",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/QueryEnumOfSortDirection"
            },
            "description": "Sort direction: `asc` or `desc`."
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CursorPaginatedItemsOfLocationDetailsDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Store Locations",
        "operationId": "getV1StoreLocations",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/store-locations/{id}": {
      "get": {
        "tags": [
          "Content & Storefront"
        ],
        "summary": "Get public store location",
        "description": "Retrieve a public physical store location by ID",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Unique identifier of the resource."
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LocationDetailsDto"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Store Locations",
        "operationId": "getV1StoreLocationsId",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    },
    "/v1/analytics/events": {
      "post": {
        "tags": [
          "Analytics & Operations"
        ],
        "summary": "Track commerce analytics events",
        "description": "Records commerce events from the storefront — product views, add to cart, checkout steps — that feed the merchant's analytics.",
        "operationId": "TrackAnalyticsEvents",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AnalyticsTrackEventsRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Accepted",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AnalyticsTrackEventsResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        },
        "security": [],
        "x-ecomiq-anonymous": true,
        "x-ecomiq-resource": "Analytics",
        "x-ecomiq-surface": "storefront",
        "x-ecomiq-visibility": "public",
        "x-ecomiq-lifecycle": "stable"
      }
    }
  },
  "components": {
    "schemas": {
      "AddCartItemRequest": {
        "required": [
          "variantId",
          "quantity"
        ],
        "type": "object",
        "properties": {
          "variantId": {
            "type": "string"
          },
          "quantity": {
            "type": "integer",
            "format": "int32"
          },
          "modifiers": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "$ref": "#/components/schemas/CartItemModifierRequest"
            }
          }
        }
      },
      "AddPromotionCodeRequest": {
        "required": [
          "code"
        ],
        "type": "object",
        "properties": {
          "code": {
            "type": "string"
          }
        }
      },
      "Address": {
        "required": [
          "address1",
          "city",
          "countryCode"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": [
              "null",
              "string"
            ]
          },
          "company": {
            "type": [
              "null",
              "string"
            ]
          },
          "address1": {
            "type": "string"
          },
          "address2": {
            "type": [
              "null",
              "string"
            ]
          },
          "city": {
            "type": "string"
          },
          "countryCode": {
            "type": "string",
            "description": "ISO 3166-1 alpha-2 country code, for example `PE`."
          },
          "province": {
            "type": [
              "null",
              "string"
            ]
          },
          "postalCode": {
            "type": [
              "null",
              "string"
            ]
          },
          "district": {
            "type": [
              "null",
              "string"
            ]
          },
          "phone": {
            "type": [
              "null",
              "string"
            ]
          },
          "latitude": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "longitude": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "metadata": {
            "type": [
              "null",
              "object"
            ]
          }
        }
      },
      "AnalyticsTrackEventRequest": {
        "required": [
          "type"
        ],
        "type": "object",
        "properties": {
          "eventId": {
            "type": [
              "null",
              "string"
            ]
          },
          "type": {
            "type": "string"
          },
          "occurredAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "visitorId": {
            "type": [
              "null",
              "string"
            ]
          },
          "sessionId": {
            "type": [
              "null",
              "string"
            ]
          },
          "source": {
            "type": [
              "null",
              "string"
            ]
          },
          "sellerId": {
            "type": [
              "null",
              "string"
            ]
          },
          "productKey": {
            "type": [
              "null",
              "string"
            ]
          },
          "productId": {
            "type": [
              "null",
              "string"
            ]
          },
          "cartId": {
            "type": [
              "null",
              "string"
            ]
          },
          "checkoutId": {
            "type": [
              "null",
              "string"
            ]
          },
          "orderId": {
            "type": [
              "null",
              "string"
            ]
          },
          "path": {
            "type": [
              "null",
              "string"
            ]
          },
          "referrer": {
            "type": [
              "null",
              "string"
            ]
          },
          "properties": {
            "type": [
              "null",
              "object"
            ],
            "additionalProperties": {
              "type": "string"
            }
          }
        }
      },
      "AnalyticsTrackEventsRequest": {
        "type": "object",
        "properties": {
          "events": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AnalyticsTrackEventRequest"
            }
          }
        }
      },
      "AnalyticsTrackEventsResponse": {
        "required": [
          "accepted"
        ],
        "type": "object",
        "properties": {
          "accepted": {
            "type": "integer",
            "format": "int32"
          }
        }
      },
      "AreaLevel": {
        "enum": [
          "level1",
          "level2",
          "level3"
        ],
        "type": "string"
      },
      "BrandItem": {
        "required": [
          "id",
          "name",
          "slug",
          "imageUrl",
          "order",
          "productCount"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string",
            "description": "URL-friendly identifier."
          },
          "imageUrl": {
            "type": [
              "null",
              "string"
            ]
          },
          "order": {
            "type": "integer",
            "format": "int32"
          },
          "productCount": {
            "type": "integer",
            "format": "int32"
          }
        }
      },
      "BundleItem": {
        "required": [
          "productId",
          "variantId",
          "productName",
          "variantName",
          "sku",
          "brand",
          "imageUrl",
          "quantity",
          "available",
          "allowBackorders",
          "requiresShipping"
        ],
        "type": "object",
        "properties": {
          "productId": {
            "type": "string"
          },
          "variantId": {
            "type": "string"
          },
          "productName": {
            "type": "string"
          },
          "variantName": {
            "type": [
              "null",
              "string"
            ]
          },
          "sku": {
            "type": [
              "null",
              "string"
            ],
            "description": "Stock keeping unit (SKU)."
          },
          "brand": {
            "type": [
              "null",
              "string"
            ]
          },
          "imageUrl": {
            "type": [
              "null",
              "string"
            ]
          },
          "quantity": {
            "type": "integer",
            "format": "int32"
          },
          "available": {
            "type": "integer",
            "format": "int32"
          },
          "allowBackorders": {
            "type": "boolean"
          },
          "requiresShipping": {
            "type": "boolean"
          }
        }
      },
      "CartItemModifierRequest": {
        "required": [
          "modifierGroupId",
          "optionIds"
        ],
        "type": "object",
        "properties": {
          "modifierGroupId": {
            "type": "string"
          },
          "optionIds": {
            "type": [
              "null",
              "array"
            ]
          }
        }
      },
      "CartOrderSummaryDto": {
        "required": [
          "orderId",
          "orderNumber",
          "orderGroup",
          "orderIds",
          "status",
          "total",
          "currencyCode",
          "createdOn",
          "updatedOn"
        ],
        "type": "object",
        "properties": {
          "orderId": {
            "type": "string"
          },
          "orderNumber": {
            "type": "string"
          },
          "orderGroup": {
            "type": "string"
          },
          "orderIds": {
            "type": "array"
          },
          "status": {
            "type": "string"
          },
          "total": {
            "type": "number",
            "format": "double"
          },
          "currencyCode": {
            "type": "string",
            "description": "ISO 4217 currency code, for example `PEN`."
          },
          "createdOn": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp when the resource was created, in ISO 8601."
          },
          "updatedOn": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time",
            "description": "Timestamp when the resource was last modified, in ISO 8601."
          }
        }
      },
      "CartPaymentReceiptDto": {
        "required": [
          "id",
          "url"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "url": {
            "type": "string"
          }
        }
      },
      "CartShippingMethodType": {
        "enum": [
          "regular",
          "express",
          "sameDay",
          "pickup",
          "localDelivery"
        ],
        "type": "string"
      },
      "CartShippingOptionGroupDto": {
        "required": [
          "sellerId",
          "shippingProfileId",
          "orderAmount",
          "totalWeight",
          "itemIds",
          "rates"
        ],
        "type": "object",
        "properties": {
          "sellerId": {
            "type": [
              "null",
              "string"
            ]
          },
          "shippingProfileId": {
            "type": [
              "null",
              "string"
            ]
          },
          "orderAmount": {
            "type": "number",
            "format": "double"
          },
          "totalWeight": {
            "type": "number",
            "format": "double"
          },
          "itemIds": {
            "type": "array"
          },
          "rates": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CartShippingRateDto"
            }
          }
        }
      },
      "CartShippingOptionsDto": {
        "required": [
          "groups"
        ],
        "type": "object",
        "properties": {
          "groups": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CartShippingOptionGroupDto"
            }
          }
        }
      },
      "CartShippingRateDto": {
        "required": [
          "shippingMethodId",
          "name",
          "displayName",
          "type",
          "price",
          "currency",
          "sortOrder",
          "rateId",
          "description",
          "deliveryLocationId",
          "deliveryLocationName",
          "deliveryLeadTimeInMinutes",
          "deliveryMinHours",
          "deliveryMaxHours",
          "deliveryInstructions",
          "deliveryPostalCodes",
          "deliveryZoneName",
          "deliveryZonePostalCodes",
          "deliveryZoneRadiusKm",
          "estimatedDeliveryDays",
          "estimatedDeliveryHours",
          "estimatedDeliveryFromDate",
          "estimatedDeliveryToDate",
          "isLiveQuote",
          "serviceCode",
          "serviceName",
          "metadata"
        ],
        "type": "object",
        "properties": {
          "shippingMethodId": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "displayName": {
            "type": "string"
          },
          "type": {
            "$ref": "#/components/schemas/CartShippingMethodType"
          },
          "price": {
            "type": "number",
            "format": "double"
          },
          "currency": {
            "type": "string"
          },
          "sortOrder": {
            "type": "integer",
            "format": "int32"
          },
          "rateId": {
            "type": [
              "null",
              "string"
            ]
          },
          "description": {
            "type": [
              "null",
              "string"
            ]
          },
          "deliveryLocationId": {
            "type": [
              "null",
              "string"
            ]
          },
          "deliveryLocationName": {
            "type": [
              "null",
              "string"
            ]
          },
          "deliveryLeadTimeInMinutes": {
            "type": [
              "null",
              "integer"
            ],
            "format": "int32"
          },
          "deliveryMinHours": {
            "type": [
              "null",
              "integer"
            ],
            "format": "int32"
          },
          "deliveryMaxHours": {
            "type": [
              "null",
              "integer"
            ],
            "format": "int32"
          },
          "deliveryInstructions": {
            "type": [
              "null",
              "string"
            ]
          },
          "deliveryPostalCodes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "deliveryZoneName": {
            "type": [
              "null",
              "string"
            ]
          },
          "deliveryZonePostalCodes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "deliveryZoneRadiusKm": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "estimatedDeliveryDays": {
            "type": [
              "null",
              "integer"
            ],
            "format": "int32"
          },
          "estimatedDeliveryHours": {
            "type": [
              "null",
              "integer"
            ],
            "format": "int32"
          },
          "estimatedDeliveryFromDate": {
            "type": [
              "null",
              "string"
            ],
            "format": "date"
          },
          "estimatedDeliveryToDate": {
            "type": [
              "null",
              "string"
            ],
            "format": "date"
          },
          "isLiveQuote": {
            "type": "boolean"
          },
          "serviceCode": {
            "type": [
              "null",
              "string"
            ]
          },
          "serviceName": {
            "type": [
              "null",
              "string"
            ]
          },
          "metadata": {
            "type": "object"
          }
        }
      },
      "CartStatus": {
        "enum": [
          "inProgress",
          "pending",
          "completed",
          "abandoned",
          "cancelled",
          "expired",
          "failed"
        ],
        "type": "string"
      },
      "CategoryItem": {
        "required": [
          "id",
          "name",
          "slug",
          "imageUrl",
          "parentId",
          "path",
          "order",
          "productCount"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string",
            "description": "URL-friendly identifier."
          },
          "imageUrl": {
            "type": [
              "null",
              "string"
            ]
          },
          "parentId": {
            "type": [
              "null",
              "string"
            ]
          },
          "path": {
            "type": "string"
          },
          "order": {
            "type": "integer",
            "format": "int32"
          },
          "productCount": {
            "type": "integer",
            "format": "int32"
          }
        }
      },
      "CheckoutBuyerType": {
        "enum": [
          "any",
          "individual",
          "company"
        ],
        "type": "string"
      },
      "CheckoutCartRequest": {
        "type": "object",
        "properties": {
          "paymentMethodCode": {
            "type": "string"
          },
          "externalRef": {
            "type": [
              "null",
              "string"
            ]
          },
          "receiptUrl": {
            "type": [
              "null",
              "string"
            ]
          }
        }
      },
      "CmsBlockDto": {
        "required": [
          "id",
          "type",
          "order",
          "settings"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "type": {
            "type": "string"
          },
          "order": {
            "type": "integer",
            "format": "int32"
          },
          "settings": {
            "$ref": "#/components/schemas/JsonElement"
          }
        }
      },
      "CmsBrandingSettingsDto": {
        "required": [
          "logoUrl",
          "logoDarkUrl",
          "faviconUrl",
          "socialImageUrl"
        ],
        "type": "object",
        "properties": {
          "logoUrl": {
            "type": [
              "null",
              "string"
            ]
          },
          "logoDarkUrl": {
            "type": [
              "null",
              "string"
            ]
          },
          "faviconUrl": {
            "type": [
              "null",
              "string"
            ]
          },
          "socialImageUrl": {
            "type": [
              "null",
              "string"
            ]
          }
        }
      },
      "CmsContactSettingsDto": {
        "required": [
          "supportEmail",
          "phone",
          "whatsapp",
          "address",
          "socialLinks"
        ],
        "type": "object",
        "properties": {
          "supportEmail": {
            "type": [
              "null",
              "string"
            ]
          },
          "phone": {
            "type": [
              "null",
              "string"
            ]
          },
          "whatsapp": {
            "type": [
              "null",
              "string"
            ]
          },
          "address": {
            "type": [
              "null",
              "string"
            ]
          },
          "socialLinks": {
            "$ref": "#/components/schemas/CmsSocialLinksDto"
          }
        }
      },
      "CmsContentChannel": {
        "enum": [
          "storefront",
          "pos"
        ],
        "type": "string"
      },
      "CmsCustomScriptsDto": {
        "required": [
          "enabled",
          "head",
          "bodyEnd"
        ],
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean"
          },
          "head": {
            "type": [
              "null",
              "string"
            ]
          },
          "bodyEnd": {
            "type": [
              "null",
              "string"
            ]
          }
        }
      },
      "CmsMenuDto": {
        "required": [
          "key",
          "name",
          "items"
        ],
        "type": "object",
        "properties": {
          "key": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CmsMenuItem"
            }
          }
        }
      },
      "CmsMenuItem": {
        "type": "object",
        "properties": {
          "label": {
            "type": "string"
          },
          "url": {
            "type": "string"
          },
          "order": {
            "type": "integer",
            "format": "int32"
          },
          "target": {
            "type": [
              "null",
              "string"
            ]
          },
          "visible": {
            "type": [
              "null",
              "boolean"
            ]
          },
          "children": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "$ref": "#/components/schemas/CmsMenuItem"
            }
          }
        }
      },
      "CmsPageDetailsDto": {
        "required": [
          "id",
          "name",
          "slug",
          "channel",
          "layout",
          "version",
          "settings",
          "sections",
          "status",
          "hasPublishedVersion",
          "publishedOn",
          "publishedBy",
          "createdOn",
          "updatedOn",
          "createdBy",
          "updatedBy",
          "lastModifiedBy"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string",
            "description": "URL-friendly identifier."
          },
          "channel": {
            "$ref": "#/components/schemas/CmsContentChannel"
          },
          "layout": {
            "type": "string"
          },
          "version": {
            "type": [
              "null",
              "integer"
            ],
            "format": "int32"
          },
          "settings": {
            "$ref": "#/components/schemas/JsonElement"
          },
          "sections": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CmsSectionDto"
            }
          },
          "status": {
            "$ref": "#/components/schemas/CmsPageStatus"
          },
          "hasPublishedVersion": {
            "type": "boolean"
          },
          "publishedOn": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "publishedBy": {
            "type": [
              "null",
              "string"
            ],
            "format": "uuid"
          },
          "createdOn": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp when the resource was created, in ISO 8601."
          },
          "updatedOn": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time",
            "description": "Timestamp when the resource was last modified, in ISO 8601."
          },
          "createdBy": {
            "type": [
              "null",
              "string"
            ],
            "format": "uuid"
          },
          "updatedBy": {
            "type": [
              "null",
              "string"
            ],
            "format": "uuid"
          },
          "lastModifiedBy": {
            "type": [
              "null",
              "string"
            ]
          }
        }
      },
      "CmsPageStatus": {
        "enum": [
          "draft",
          "published",
          "archived"
        ],
        "type": "string"
      },
      "CmsSectionDto": {
        "required": [
          "id",
          "type",
          "order",
          "settings",
          "blocks"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "type": {
            "type": "string"
          },
          "order": {
            "type": "integer",
            "format": "int32"
          },
          "settings": {
            "$ref": "#/components/schemas/JsonElement"
          },
          "blocks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CmsBlockDto"
            }
          }
        }
      },
      "CmsSeoSettingsDto": {
        "required": [
          "siteName",
          "metaTitle",
          "metaDescription",
          "titleTemplate",
          "robotsIndex"
        ],
        "type": "object",
        "properties": {
          "siteName": {
            "type": [
              "null",
              "string"
            ]
          },
          "metaTitle": {
            "type": [
              "null",
              "string"
            ]
          },
          "metaDescription": {
            "type": [
              "null",
              "string"
            ]
          },
          "titleTemplate": {
            "type": [
              "null",
              "string"
            ]
          },
          "robotsIndex": {
            "type": "boolean"
          }
        }
      },
      "CmsSiteSettingsDto": {
        "required": [
          "themeKey",
          "branding",
          "seo",
          "contact",
          "tracking",
          "customScripts",
          "updatedOn"
        ],
        "type": "object",
        "properties": {
          "themeKey": {
            "type": "string"
          },
          "branding": {
            "$ref": "#/components/schemas/CmsBrandingSettingsDto"
          },
          "seo": {
            "$ref": "#/components/schemas/CmsSeoSettingsDto"
          },
          "contact": {
            "$ref": "#/components/schemas/CmsContactSettingsDto"
          },
          "tracking": {
            "$ref": "#/components/schemas/CmsTrackingSettingsDto"
          },
          "customScripts": {
            "$ref": "#/components/schemas/CmsCustomScriptsDto"
          },
          "updatedOn": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time",
            "description": "Timestamp when the resource was last modified, in ISO 8601."
          }
        }
      },
      "CmsSnapshotDto": {
        "required": [
          "settings",
          "pages",
          "menus"
        ],
        "type": "object",
        "properties": {
          "settings": {
            "$ref": "#/components/schemas/CmsSiteSettingsDto"
          },
          "pages": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CmsPageDetailsDto"
            }
          },
          "menus": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CmsMenuDto"
            }
          }
        }
      },
      "CmsSocialLinksDto": {
        "required": [
          "instagram",
          "facebook",
          "tiktok",
          "youtube",
          "x"
        ],
        "type": "object",
        "properties": {
          "instagram": {
            "type": [
              "null",
              "string"
            ]
          },
          "facebook": {
            "type": [
              "null",
              "string"
            ]
          },
          "tiktok": {
            "type": [
              "null",
              "string"
            ]
          },
          "youtube": {
            "type": [
              "null",
              "string"
            ]
          },
          "x": {
            "type": [
              "null",
              "string"
            ]
          }
        }
      },
      "CmsTrackingSettingsDto": {
        "required": [
          "googleAnalyticsMeasurementId",
          "metaPixelId",
          "googleTagManagerContainerId"
        ],
        "type": "object",
        "properties": {
          "googleAnalyticsMeasurementId": {
            "type": [
              "null",
              "string"
            ]
          },
          "metaPixelId": {
            "type": [
              "null",
              "string"
            ]
          },
          "googleTagManagerContainerId": {
            "type": [
              "null",
              "string"
            ]
          }
        }
      },
      "CollectionItem": {
        "required": [
          "id",
          "slug",
          "name",
          "description",
          "imageUrl",
          "type",
          "productCount"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "slug": {
            "type": "string",
            "description": "URL-friendly identifier."
          },
          "name": {
            "type": "string"
          },
          "description": {
            "type": [
              "null",
              "string"
            ]
          },
          "imageUrl": {
            "type": [
              "null",
              "string"
            ]
          },
          "type": {
            "type": "string"
          },
          "productCount": {
            "type": "integer",
            "format": "int32"
          }
        }
      },
      "CreateCartRequest": {
        "type": "object",
        "properties": {
          "currencyCode": {
            "type": [
              "null",
              "string"
            ],
            "description": "ISO 4217 currency code, for example `PEN`."
          },
          "salesChannelId": {
            "type": [
              "null",
              "string"
            ]
          },
          "email": {
            "type": [
              "null",
              "string"
            ]
          }
        }
      },
      "CursorPaginatedItemsOfLocationDetailsDto": {
        "required": [
          "data",
          "hasNextPage",
          "nextCursor",
          "totalCount"
        ],
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LocationDetailsDto"
            }
          },
          "hasNextPage": {
            "type": "boolean",
            "description": "Whether at least one more page remains."
          },
          "nextCursor": {
            "type": [
              "null",
              "string"
            ],
            "description": "Cursor to request the next page. `null` on the last page."
          },
          "totalCount": {
            "type": [
              "null",
              "integer"
            ],
            "format": "int64",
            "description": "Total number of matching items."
          }
        }
      },
      "CursorPaginatedItemsOfStorefrontReviewDto": {
        "required": [
          "data",
          "hasNextPage",
          "nextCursor",
          "totalCount"
        ],
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StorefrontReviewDto"
            }
          },
          "hasNextPage": {
            "type": "boolean",
            "description": "Whether at least one more page remains."
          },
          "nextCursor": {
            "type": [
              "null",
              "string"
            ],
            "description": "Cursor to request the next page. `null` on the last page."
          },
          "totalCount": {
            "type": [
              "null",
              "integer"
            ],
            "format": "int64",
            "description": "Total number of matching items."
          }
        }
      },
      "CustomerAddressDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "addressKey": {
            "type": "string"
          },
          "department": {
            "type": [
              "null",
              "string"
            ]
          },
          "addressNumber": {
            "type": [
              "null",
              "string"
            ]
          },
          "province": {
            "type": [
              "null",
              "string"
            ]
          },
          "district": {
            "type": [
              "null",
              "string"
            ]
          },
          "phone": {
            "type": [
              "null",
              "string"
            ]
          },
          "cellPhone": {
            "type": [
              "null",
              "string"
            ]
          },
          "addressLine": {
            "type": "string"
          },
          "reference": {
            "type": [
              "null",
              "string"
            ]
          },
          "countryIsoCode": {
            "type": "string"
          },
          "postalCode": {
            "type": [
              "null",
              "string"
            ]
          },
          "latitude": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "longitude": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "hasCoordinates": {
            "type": "boolean"
          },
          "isDefault": {
            "type": "boolean"
          }
        }
      },
      "CustomerAddressRequest": {
        "type": "object",
        "properties": {
          "addressKey": {
            "type": "string"
          },
          "countryIsoCode": {
            "type": "string"
          },
          "addressLine": {
            "type": "string"
          },
          "addressNumber": {
            "type": [
              "null",
              "string"
            ]
          },
          "department": {
            "type": [
              "null",
              "string"
            ]
          },
          "province": {
            "type": [
              "null",
              "string"
            ]
          },
          "district": {
            "type": [
              "null",
              "string"
            ]
          },
          "phone": {
            "type": [
              "null",
              "string"
            ]
          },
          "cellPhone": {
            "type": [
              "null",
              "string"
            ]
          },
          "postalCode": {
            "type": [
              "null",
              "string"
            ]
          },
          "reference": {
            "type": [
              "null",
              "string"
            ]
          },
          "latitude": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "longitude": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "isDefault": {
            "type": [
              "null",
              "boolean"
            ]
          }
        }
      },
      "CustomerCreatedDto": {
        "required": [
          "id",
          "status",
          "isVerified"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "status": {
            "$ref": "#/components/schemas/CustomerStatus"
          },
          "isVerified": {
            "type": "boolean"
          }
        }
      },
      "CustomerDetailsDto": {
        "required": [
          "id",
          "storeId",
          "email",
          "firstName",
          "lastName",
          "phone",
          "identificationNumber",
          "identificationType",
          "entityName",
          "dateOfBirth",
          "gender",
          "countryIsoCode",
          "role",
          "companyName",
          "consent",
          "userId",
          "customerType",
          "status",
          "isVerified",
          "entityIdentificationNumber",
          "defaultAddressId",
          "metadata",
          "totalOrders",
          "avgOrders",
          "lastOrderId",
          "lastOrderDate",
          "loyaltyPoints",
          "addresses",
          "createdOn",
          "updatedOn"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "storeId": {
            "type": "string"
          },
          "email": {
            "type": [
              "null",
              "string"
            ]
          },
          "firstName": {
            "type": [
              "null",
              "string"
            ]
          },
          "lastName": {
            "type": [
              "null",
              "string"
            ]
          },
          "phone": {
            "type": [
              "null",
              "string"
            ]
          },
          "identificationNumber": {
            "type": [
              "null",
              "string"
            ]
          },
          "identificationType": {
            "type": [
              "null",
              "string"
            ]
          },
          "entityName": {
            "type": [
              "null",
              "string"
            ]
          },
          "dateOfBirth": {
            "type": [
              "null",
              "string"
            ],
            "format": "date"
          },
          "gender": {
            "$ref": "#/components/schemas/GenderType"
          },
          "countryIsoCode": {
            "type": [
              "null",
              "string"
            ]
          },
          "role": {
            "type": [
              "null",
              "string"
            ]
          },
          "companyName": {
            "type": [
              "null",
              "string"
            ]
          },
          "consent": {
            "type": "boolean"
          },
          "userId": {
            "type": [
              "null",
              "string"
            ],
            "format": "uuid"
          },
          "customerType": {
            "$ref": "#/components/schemas/CustomerType"
          },
          "status": {
            "$ref": "#/components/schemas/CustomerStatus"
          },
          "isVerified": {
            "type": "boolean"
          },
          "entityIdentificationNumber": {
            "type": [
              "null",
              "string"
            ]
          },
          "defaultAddressId": {
            "type": [
              "null",
              "string"
            ]
          },
          "metadata": {
            "type": [
              "null",
              "string"
            ]
          },
          "totalOrders": {
            "type": "integer",
            "format": "int32"
          },
          "avgOrders": {
            "type": "number",
            "format": "double"
          },
          "lastOrderId": {
            "type": [
              "null",
              "string"
            ]
          },
          "lastOrderDate": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "loyaltyPoints": {
            "type": "integer",
            "format": "int32"
          },
          "addresses": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomerAddressDto"
            }
          },
          "createdOn": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp when the resource was created, in ISO 8601."
          },
          "updatedOn": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time",
            "description": "Timestamp when the resource was last modified, in ISO 8601."
          }
        }
      },
      "CustomerIdentityScope": {
        "enum": [
          "store",
          "tenant",
          "global"
        ],
        "type": "string"
      },
      "CustomerLoginResponseDto": {
        "required": [
          "accessToken",
          "refreshToken",
          "expiresIn",
          "tokenType",
          "customer"
        ],
        "type": "object",
        "properties": {
          "accessToken": {
            "type": "string"
          },
          "refreshToken": {
            "type": [
              "null",
              "string"
            ]
          },
          "expiresIn": {
            "type": "integer",
            "format": "int32"
          },
          "tokenType": {
            "type": "string"
          },
          "customer": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "$ref": "#/components/schemas/CustomerCreatedDto"
              }
            ]
          }
        }
      },
      "CustomerOrderDetailsDto": {
        "required": [
          "id",
          "orderNumber",
          "orderGroup",
          "status",
          "total",
          "totalPaid",
          "currencyCode",
          "orderDate",
          "createdOn",
          "updatedOn",
          "paymentAt",
          "subTotal",
          "discount",
          "shipping",
          "tax",
          "email",
          "phone",
          "firstName",
          "lastName",
          "shippingAddress",
          "shippingAddressSummary",
          "billingAddress",
          "items",
          "payments",
          "statusTimeline"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "orderNumber": {
            "type": "string"
          },
          "orderGroup": {
            "type": [
              "null",
              "string"
            ]
          },
          "status": {
            "type": "string"
          },
          "total": {
            "type": "number",
            "format": "double"
          },
          "totalPaid": {
            "type": "number",
            "format": "double"
          },
          "currencyCode": {
            "type": "string",
            "description": "ISO 4217 currency code, for example `PEN`."
          },
          "orderDate": {
            "type": "string",
            "format": "date-time"
          },
          "createdOn": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp when the resource was created, in ISO 8601."
          },
          "updatedOn": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time",
            "description": "Timestamp when the resource was last modified, in ISO 8601."
          },
          "paymentAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "subTotal": {
            "type": "number",
            "format": "double"
          },
          "discount": {
            "type": "number",
            "format": "double"
          },
          "shipping": {
            "type": "number",
            "format": "double"
          },
          "tax": {
            "type": "number",
            "format": "double"
          },
          "email": {
            "type": [
              "null",
              "string"
            ]
          },
          "phone": {
            "type": [
              "null",
              "string"
            ]
          },
          "firstName": {
            "type": [
              "null",
              "string"
            ]
          },
          "lastName": {
            "type": [
              "null",
              "string"
            ]
          },
          "shippingAddress": {
            "$ref": "#/components/schemas/Address"
          },
          "shippingAddressSummary": {
            "type": [
              "null",
              "string"
            ]
          },
          "billingAddress": {
            "$ref": "#/components/schemas/Address"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomerOrderLineItemDto"
            }
          },
          "payments": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomerOrderPaymentSummaryDto"
            }
          },
          "statusTimeline": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomerOrderStatusTimelineEntryDto"
            }
          }
        }
      },
      "CustomerOrderGroupListDto": {
        "required": [
          "orderId",
          "orderNumber",
          "orderGroup",
          "orderIds",
          "status",
          "total",
          "totalPaid",
          "currencyCode",
          "orderDate",
          "createdOn",
          "updatedOn",
          "paymentAt",
          "shippingAddress",
          "shippingAddressSummary",
          "items"
        ],
        "type": "object",
        "properties": {
          "orderId": {
            "type": "string"
          },
          "orderNumber": {
            "type": "string"
          },
          "orderGroup": {
            "type": "string"
          },
          "orderIds": {
            "type": "array"
          },
          "status": {
            "type": "string"
          },
          "total": {
            "type": "number",
            "format": "double"
          },
          "totalPaid": {
            "type": "number",
            "format": "double"
          },
          "currencyCode": {
            "type": "string",
            "description": "ISO 4217 currency code, for example `PEN`."
          },
          "orderDate": {
            "type": "string",
            "format": "date-time"
          },
          "createdOn": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp when the resource was created, in ISO 8601."
          },
          "updatedOn": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time",
            "description": "Timestamp when the resource was last modified, in ISO 8601."
          },
          "paymentAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "shippingAddress": {
            "$ref": "#/components/schemas/Address"
          },
          "shippingAddressSummary": {
            "type": [
              "null",
              "string"
            ]
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomerOrderLineItemDto"
            }
          }
        }
      },
      "CustomerOrderLineItemDto": {
        "required": [
          "id",
          "orderId",
          "productId",
          "variantId",
          "title",
          "subtitle",
          "thumbnail",
          "variantTitle",
          "productHandle",
          "quantity",
          "unitPrice",
          "total",
          "status"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "orderId": {
            "type": "string"
          },
          "productId": {
            "type": [
              "null",
              "string"
            ]
          },
          "variantId": {
            "type": [
              "null",
              "string"
            ]
          },
          "title": {
            "type": "string"
          },
          "subtitle": {
            "type": [
              "null",
              "string"
            ]
          },
          "thumbnail": {
            "type": [
              "null",
              "string"
            ]
          },
          "variantTitle": {
            "type": [
              "null",
              "string"
            ]
          },
          "productHandle": {
            "type": [
              "null",
              "string"
            ]
          },
          "quantity": {
            "type": "number",
            "format": "double"
          },
          "unitPrice": {
            "type": "number",
            "format": "double"
          },
          "total": {
            "type": "number",
            "format": "double"
          },
          "status": {
            "type": "string"
          }
        }
      },
      "CustomerOrderPaymentSummaryDto": {
        "required": [
          "id",
          "paymentMethod",
          "paymentCode",
          "amount",
          "paymentStatus",
          "receiptUrl",
          "createdOn"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "paymentMethod": {
            "type": "string"
          },
          "paymentCode": {
            "type": "string"
          },
          "amount": {
            "type": "number",
            "format": "double"
          },
          "paymentStatus": {
            "type": [
              "null",
              "string"
            ]
          },
          "receiptUrl": {
            "type": [
              "null",
              "string"
            ]
          },
          "createdOn": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp when the resource was created, in ISO 8601."
          }
        }
      },
      "CustomerOrderStatusDto": {
        "required": [
          "orderId",
          "orderNumber",
          "status",
          "createdOn",
          "updatedOn"
        ],
        "type": "object",
        "properties": {
          "orderId": {
            "type": "string"
          },
          "orderNumber": {
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "createdOn": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp when the resource was created, in ISO 8601."
          },
          "updatedOn": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time",
            "description": "Timestamp when the resource was last modified, in ISO 8601."
          }
        }
      },
      "CustomerOrderStatusTimelineEntryDto": {
        "required": [
          "key",
          "label",
          "occurredAt",
          "description",
          "status",
          "source"
        ],
        "type": "object",
        "properties": {
          "key": {
            "type": "string"
          },
          "label": {
            "type": "string"
          },
          "occurredAt": {
            "type": "string",
            "format": "date-time"
          },
          "description": {
            "type": [
              "null",
              "string"
            ]
          },
          "status": {
            "type": [
              "null",
              "string"
            ]
          },
          "source": {
            "type": "string"
          }
        }
      },
      "CustomerStatus": {
        "enum": [
          "active",
          "pendingVerification",
          "pendingApproval",
          "inactive",
          "blocked"
        ],
        "type": "string"
      },
      "CustomerType": {
        "enum": [
          "individual",
          "business"
        ],
        "type": "string"
      },
      "DayOfWeekType": {
        "enum": [
          "monday",
          "tuesday",
          "wednesday",
          "thursday",
          "friday",
          "saturday",
          "sunday"
        ],
        "type": "string"
      },
      "FacetItem": {
        "required": [
          "value",
          "count"
        ],
        "type": "object",
        "properties": {
          "value": {
            "type": "string"
          },
          "count": {
            "type": "integer",
            "format": "int32"
          },
          "label": {
            "type": [
              "null",
              "string"
            ]
          },
          "selected": {
            "type": "boolean",
            "default": false
          }
        }
      },
      "GenderType": {
        "enum": [
          "male",
          "female",
          "other"
        ],
        "type": "string"
      },
      "GeoAreaModel": {
        "required": [
          "id",
          "countryCode",
          "type",
          "code",
          "name",
          "parentId",
          "source"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "countryCode": {
            "type": "string",
            "description": "ISO 3166-1 alpha-2 country code, for example `PE`."
          },
          "type": {
            "$ref": "#/components/schemas/AreaLevel"
          },
          "code": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "parentId": {
            "type": [
              "null",
              "string"
            ]
          },
          "source": {
            "type": "string"
          }
        }
      },
      "GeoCountryModel": {
        "required": [
          "code",
          "name"
        ],
        "type": "object",
        "properties": {
          "code": {
            "type": "string"
          },
          "name": {
            "type": "string"
          }
        }
      },
      "IFormFile": {
        "type": "string",
        "format": "binary"
      },
      "ImageItem": {
        "required": [
          "url",
          "name",
          "order"
        ],
        "type": "object",
        "properties": {
          "url": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "order": {
            "type": "integer",
            "format": "int32"
          }
        }
      },
      "Item": {
        "required": [
          "key",
          "name",
          "items"
        ],
        "type": "object",
        "properties": {
          "key": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CmsMenuItem"
            }
          }
        }
      },
      "JsonElement": {},
      "LocalDeliveryZoneDto": {
        "required": [
          "name",
          "postalCodes"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "postalCodes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "radiusKm": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "fee": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "freeFromAmount": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "minHours": {
            "type": [
              "null",
              "integer"
            ],
            "format": "int32"
          },
          "maxHours": {
            "type": [
              "null",
              "integer"
            ],
            "format": "int32"
          }
        }
      },
      "LocationDetailsDto": {
        "required": [
          "id",
          "storeId",
          "name",
          "code",
          "type",
          "isActive",
          "isDefault",
          "useForFulfillment",
          "supportsShipping",
          "supportsLocalDelivery",
          "supportsPickup",
          "isPhysicalStore",
          "supportsPos",
          "priority",
          "localDeliveryPostalCodes",
          "localDeliveryZones",
          "schedules",
          "status",
          "createdOn"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "storeId": {
            "type": "string"
          },
          "sellerId": {
            "type": [
              "null",
              "string"
            ]
          },
          "name": {
            "type": "string"
          },
          "code": {
            "type": "string"
          },
          "type": {
            "$ref": "#/components/schemas/LocationType"
          },
          "address": {
            "type": [
              "null",
              "string"
            ]
          },
          "city": {
            "type": [
              "null",
              "string"
            ]
          },
          "state": {
            "type": [
              "null",
              "string"
            ]
          },
          "country": {
            "type": [
              "null",
              "string"
            ]
          },
          "postalCode": {
            "type": [
              "null",
              "string"
            ]
          },
          "latitude": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "longitude": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "phone": {
            "type": [
              "null",
              "string"
            ]
          },
          "email": {
            "type": [
              "null",
              "string"
            ]
          },
          "description": {
            "type": [
              "null",
              "string"
            ]
          },
          "isActive": {
            "type": "boolean"
          },
          "isDefault": {
            "type": "boolean"
          },
          "useForFulfillment": {
            "type": "boolean"
          },
          "supportsShipping": {
            "type": "boolean"
          },
          "supportsLocalDelivery": {
            "type": "boolean"
          },
          "supportsPickup": {
            "type": "boolean"
          },
          "isPhysicalStore": {
            "type": "boolean"
          },
          "supportsPos": {
            "type": "boolean"
          },
          "priority": {
            "type": "integer",
            "format": "int32"
          },
          "pickupInstructions": {
            "type": [
              "null",
              "string"
            ]
          },
          "pickupLeadTimeInMinutes": {
            "type": [
              "null",
              "integer"
            ],
            "format": "int32"
          },
          "pickupSlotInMinutes": {
            "type": [
              "null",
              "integer"
            ],
            "format": "int32"
          },
          "pickupDailyCapacity": {
            "type": [
              "null",
              "integer"
            ],
            "format": "int32"
          },
          "localDeliveryInstructions": {
            "type": [
              "null",
              "string"
            ]
          },
          "localDeliveryLeadTimeInMinutes": {
            "type": [
              "null",
              "integer"
            ],
            "format": "int32"
          },
          "localDeliverySlotInMinutes": {
            "type": [
              "null",
              "integer"
            ],
            "format": "int32"
          },
          "localDeliveryDailyCapacity": {
            "type": [
              "null",
              "integer"
            ],
            "format": "int32"
          },
          "localDeliveryFee": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "localDeliveryFreeFromAmount": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "localDeliveryMinHours": {
            "type": [
              "null",
              "integer"
            ],
            "format": "int32"
          },
          "localDeliveryMaxHours": {
            "type": [
              "null",
              "integer"
            ],
            "format": "int32"
          },
          "localDeliveryPostalCodes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "localDeliveryZones": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LocalDeliveryZoneDto"
            }
          },
          "schedules": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LocationScheduleDto"
            }
          },
          "status": {
            "$ref": "#/components/schemas/LocationStatus"
          },
          "createdOn": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp when the resource was created, in ISO 8601."
          },
          "updatedOn": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time",
            "description": "Timestamp when the resource was last modified, in ISO 8601."
          }
        }
      },
      "LocationScheduleDto": {
        "required": [
          "id",
          "openTime",
          "closeTime",
          "name",
          "dayOfWeek",
          "enabled",
          "isOpen",
          "type"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "openTime": {
            "type": "string",
            "format": "time"
          },
          "closeTime": {
            "type": "string",
            "format": "time"
          },
          "name": {
            "type": "string"
          },
          "dayOfWeek": {
            "$ref": "#/components/schemas/DayOfWeekType"
          },
          "enabled": {
            "type": "boolean"
          },
          "isOpen": {
            "type": "boolean"
          },
          "type": {
            "$ref": "#/components/schemas/LocationScheduleType"
          }
        }
      },
      "LocationScheduleType": {
        "enum": [
          "delivery",
          "pickUp",
          "logistic"
        ],
        "type": "string"
      },
      "LocationStatus": {
        "enum": [
          "active",
          "inactive"
        ],
        "type": "string"
      },
      "LocationType": {
        "enum": [
          "warehouse",
          "store",
          "seller"
        ],
        "type": "string"
      },
      "LoginCustomerRequest": {
        "required": [
          "email",
          "password"
        ],
        "type": "object",
        "properties": {
          "email": {
            "type": "string"
          },
          "password": {
            "type": "string"
          }
        }
      },
      "OrderAttribution": {
        "type": "object",
        "properties": {
          "campaignId": {
            "type": [
              "null",
              "string"
            ]
          },
          "utmSource": {
            "type": [
              "null",
              "string"
            ]
          },
          "utmMedium": {
            "type": [
              "null",
              "string"
            ]
          },
          "utmCampaign": {
            "type": [
              "null",
              "string"
            ]
          },
          "referralCode": {
            "type": [
              "null",
              "string"
            ]
          }
        }
      },
      "OrderDetailsDto": {
        "required": [
          "id",
          "storeId",
          "cartId",
          "customerId",
          "orderNumber",
          "orderShortId",
          "couponCode",
          "source",
          "sourceIdentifier",
          "orderGroup",
          "notes",
          "phone",
          "email",
          "firstName",
          "lastName",
          "identificationType",
          "identificationNumber",
          "entityTaxId",
          "entityName",
          "promotion",
          "shippingPromotion",
          "totalSkus",
          "shippingConnectionId",
          "orderDate",
          "preOrderDate",
          "confirmedAt",
          "inProgressAt",
          "paymentAt",
          "shippingAt",
          "closedAt",
          "cancelledAt",
          "completedAt",
          "conciliationAt",
          "invoicedAt",
          "inTransitAt",
          "pickupAt",
          "returnedAt",
          "invalidAt",
          "status",
          "state",
          "fulfillmentStatus",
          "returnStatus",
          "shippingType",
          "invoiceType",
          "sellerId",
          "tags",
          "integrationTags",
          "createdNotified",
          "confirmedNotified",
          "invoicedNotified",
          "readyToPickUpNotified",
          "inTransitNotified",
          "deliveredNotified",
          "cancelledNotified",
          "cancelReason",
          "cancelReasonType",
          "currencyCode",
          "subTotal",
          "discount",
          "shipping",
          "extraShippingCost",
          "tax",
          "warranty",
          "total",
          "userAssigned",
          "attachments",
          "invoiceNumber",
          "invoiceLink",
          "isSplitSellerItem",
          "hasRefund",
          "hasTrackingNumber",
          "billingAddress",
          "shippingAddress",
          "attribution",
          "instructions",
          "items",
          "shippingMethods",
          "payments",
          "trackings",
          "packageItems",
          "transactions",
          "createdOn",
          "updatedOn"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "storeId": {
            "type": "string"
          },
          "cartId": {
            "type": "string"
          },
          "customerId": {
            "type": [
              "null",
              "string"
            ]
          },
          "orderNumber": {
            "type": "string"
          },
          "orderShortId": {
            "type": [
              "null",
              "integer"
            ],
            "format": "int32"
          },
          "couponCode": {
            "type": [
              "null",
              "string"
            ]
          },
          "source": {
            "type": [
              "null",
              "string"
            ]
          },
          "sourceIdentifier": {
            "type": [
              "null",
              "string"
            ]
          },
          "orderGroup": {
            "type": [
              "null",
              "string"
            ]
          },
          "notes": {
            "type": [
              "null",
              "string"
            ]
          },
          "phone": {
            "type": [
              "null",
              "string"
            ]
          },
          "email": {
            "type": [
              "null",
              "string"
            ]
          },
          "firstName": {
            "type": [
              "null",
              "string"
            ]
          },
          "lastName": {
            "type": [
              "null",
              "string"
            ]
          },
          "identificationType": {
            "type": [
              "null",
              "string"
            ]
          },
          "identificationNumber": {
            "type": [
              "null",
              "string"
            ]
          },
          "entityTaxId": {
            "type": [
              "null",
              "string"
            ]
          },
          "entityName": {
            "type": [
              "null",
              "string"
            ]
          },
          "promotion": {
            "type": [
              "null",
              "string"
            ]
          },
          "shippingPromotion": {
            "type": [
              "null",
              "string"
            ]
          },
          "totalSkus": {
            "type": "integer",
            "format": "int32"
          },
          "shippingConnectionId": {
            "type": [
              "null",
              "string"
            ]
          },
          "orderDate": {
            "type": "string",
            "format": "date-time"
          },
          "preOrderDate": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "confirmedAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "inProgressAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "paymentAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "shippingAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "closedAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "cancelledAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "completedAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "conciliationAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "invoicedAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "inTransitAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "pickupAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "returnedAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "invalidAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "status": {
            "$ref": "#/components/schemas/OrderStatus"
          },
          "state": {
            "$ref": "#/components/schemas/OrderState"
          },
          "fulfillmentStatus": {
            "$ref": "#/components/schemas/OrderFulfillmentStatus"
          },
          "returnStatus": {
            "$ref": "#/components/schemas/OrderReturnStatus"
          },
          "shippingType": {
            "type": [
              "null",
              "string"
            ]
          },
          "invoiceType": {
            "$ref": "#/components/schemas/OrderInvoiceType"
          },
          "sellerId": {
            "type": [
              "null",
              "string"
            ]
          },
          "tags": {
            "type": [
              "null",
              "string"
            ]
          },
          "integrationTags": {
            "type": [
              "null",
              "string"
            ]
          },
          "createdNotified": {
            "type": "boolean"
          },
          "confirmedNotified": {
            "type": "boolean"
          },
          "invoicedNotified": {
            "type": "boolean"
          },
          "readyToPickUpNotified": {
            "type": "boolean"
          },
          "inTransitNotified": {
            "type": "boolean"
          },
          "deliveredNotified": {
            "type": "boolean"
          },
          "cancelledNotified": {
            "type": "boolean"
          },
          "cancelReason": {
            "type": [
              "null",
              "string"
            ]
          },
          "cancelReasonType": {
            "type": [
              "null",
              "string"
            ]
          },
          "currencyCode": {
            "type": "string",
            "description": "ISO 4217 currency code, for example `PEN`."
          },
          "subTotal": {
            "type": "number",
            "format": "double"
          },
          "discount": {
            "type": "number",
            "format": "double"
          },
          "shipping": {
            "type": "number",
            "format": "double"
          },
          "extraShippingCost": {
            "type": "number",
            "format": "double"
          },
          "tax": {
            "type": "number",
            "format": "double"
          },
          "warranty": {
            "type": "number",
            "format": "double"
          },
          "total": {
            "type": "number",
            "format": "double"
          },
          "userAssigned": {
            "type": [
              "null",
              "string"
            ]
          },
          "attachments": {
            "type": [
              "null",
              "string"
            ]
          },
          "invoiceNumber": {
            "type": [
              "null",
              "string"
            ]
          },
          "invoiceLink": {
            "type": [
              "null",
              "string"
            ]
          },
          "isSplitSellerItem": {
            "type": "boolean"
          },
          "hasRefund": {
            "type": "boolean"
          },
          "hasTrackingNumber": {
            "type": "boolean"
          },
          "billingAddress": {
            "$ref": "#/components/schemas/Address"
          },
          "shippingAddress": {
            "$ref": "#/components/schemas/Address"
          },
          "attribution": {
            "$ref": "#/components/schemas/OrderAttribution"
          },
          "instructions": {
            "$ref": "#/components/schemas/OrderInstructions"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OrderItemDetailsDto"
            }
          },
          "shippingMethods": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OrderShippingMethodDto"
            }
          },
          "payments": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OrderPaymentDto"
            }
          },
          "trackings": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OrderTrackingDto"
            }
          },
          "packageItems": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OrderPackageItemDto"
            }
          },
          "transactions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OrderTransactionDto"
            }
          },
          "createdOn": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp when the resource was created, in ISO 8601."
          },
          "updatedOn": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time",
            "description": "Timestamp when the resource was last modified, in ISO 8601."
          }
        }
      },
      "OrderDraftDetailsDto": {
        "required": [
          "id",
          "storeId",
          "customerId",
          "cartId",
          "draftNumber",
          "currencyCode",
          "source",
          "notes",
          "email",
          "phone",
          "firstName",
          "lastName",
          "identificationType",
          "identificationNumber",
          "entityTaxId",
          "entityName",
          "status",
          "draftDate",
          "sentAt",
          "viewedAt",
          "acceptedAt",
          "rejectedAt",
          "expiredAt",
          "cancelledAt",
          "convertedAt",
          "shareToken",
          "shareExpiresAt",
          "allowAnonymousShareAccess",
          "sharedAt",
          "billingAddress",
          "shippingAddress",
          "metadata",
          "subTotal",
          "discount",
          "shipping",
          "tax",
          "warranty",
          "total",
          "paymentMethod",
          "paymentCode",
          "items",
          "shippingMethods",
          "createdOn",
          "updatedOn"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "storeId": {
            "type": "string"
          },
          "customerId": {
            "type": [
              "null",
              "string"
            ]
          },
          "cartId": {
            "type": [
              "null",
              "string"
            ]
          },
          "draftNumber": {
            "type": "string"
          },
          "currencyCode": {
            "type": "string",
            "description": "ISO 4217 currency code, for example `PEN`."
          },
          "source": {
            "type": [
              "null",
              "string"
            ]
          },
          "notes": {
            "type": [
              "null",
              "string"
            ]
          },
          "email": {
            "type": [
              "null",
              "string"
            ]
          },
          "phone": {
            "type": [
              "null",
              "string"
            ]
          },
          "firstName": {
            "type": [
              "null",
              "string"
            ]
          },
          "lastName": {
            "type": [
              "null",
              "string"
            ]
          },
          "identificationType": {
            "type": [
              "null",
              "string"
            ]
          },
          "identificationNumber": {
            "type": [
              "null",
              "string"
            ]
          },
          "entityTaxId": {
            "type": [
              "null",
              "string"
            ]
          },
          "entityName": {
            "type": [
              "null",
              "string"
            ]
          },
          "status": {
            "$ref": "#/components/schemas/OrderDraftStatus"
          },
          "draftDate": {
            "type": "string",
            "format": "date-time"
          },
          "sentAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "viewedAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "acceptedAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "rejectedAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "expiredAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "cancelledAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "convertedAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "shareToken": {
            "type": [
              "null",
              "string"
            ]
          },
          "shareExpiresAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "allowAnonymousShareAccess": {
            "type": "boolean"
          },
          "sharedAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "billingAddress": {
            "$ref": "#/components/schemas/Address"
          },
          "shippingAddress": {
            "$ref": "#/components/schemas/Address"
          },
          "metadata": {
            "type": "object"
          },
          "subTotal": {
            "type": "number",
            "format": "double"
          },
          "discount": {
            "type": "number",
            "format": "double"
          },
          "shipping": {
            "type": "number",
            "format": "double"
          },
          "tax": {
            "type": "number",
            "format": "double"
          },
          "warranty": {
            "type": "number",
            "format": "double"
          },
          "total": {
            "type": "number",
            "format": "double"
          },
          "paymentMethod": {
            "type": "string"
          },
          "paymentCode": {
            "type": "string"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OrderDraftItemDto"
            }
          },
          "shippingMethods": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OrderDraftShippingMethodDto"
            }
          },
          "createdOn": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp when the resource was created, in ISO 8601."
          },
          "updatedOn": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time",
            "description": "Timestamp when the resource was last modified, in ISO 8601."
          }
        }
      },
      "OrderDraftItemDto": {
        "required": [
          "id",
          "productId",
          "sellerId",
          "shippingProfileId",
          "variantId",
          "title",
          "subtitle",
          "thumbnail",
          "quantity",
          "unitPrice",
          "subTotal",
          "discount",
          "shipping",
          "tax",
          "warranty",
          "total",
          "requiresShipping",
          "isTaxInclusive",
          "metadata"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "productId": {
            "type": [
              "null",
              "string"
            ]
          },
          "sellerId": {
            "type": [
              "null",
              "string"
            ]
          },
          "shippingProfileId": {
            "type": [
              "null",
              "string"
            ]
          },
          "variantId": {
            "type": [
              "null",
              "string"
            ]
          },
          "title": {
            "type": "string"
          },
          "subtitle": {
            "type": [
              "null",
              "string"
            ]
          },
          "thumbnail": {
            "type": [
              "null",
              "string"
            ]
          },
          "quantity": {
            "type": "integer",
            "format": "int32"
          },
          "unitPrice": {
            "type": "number",
            "format": "double"
          },
          "subTotal": {
            "type": "number",
            "format": "double"
          },
          "discount": {
            "type": "number",
            "format": "double"
          },
          "shipping": {
            "type": "number",
            "format": "double"
          },
          "tax": {
            "type": "number",
            "format": "double"
          },
          "warranty": {
            "type": "number",
            "format": "double"
          },
          "total": {
            "type": "number",
            "format": "double"
          },
          "requiresShipping": {
            "type": "boolean"
          },
          "isTaxInclusive": {
            "type": "boolean"
          },
          "metadata": {
            "type": "object"
          }
        }
      },
      "OrderDraftShippingMethodDto": {
        "required": [
          "id",
          "name",
          "description",
          "subtotal",
          "discountTotal",
          "taxTotal",
          "total",
          "isTaxInclusive",
          "sellerId",
          "shippingProfileId",
          "shippingMethodId",
          "connectionId",
          "providerName",
          "trackingCode",
          "estimatedDays",
          "zoneCode",
          "locationId",
          "pickupPointId",
          "scheduledDate",
          "scheduledTime",
          "data"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "name": {
            "type": "string"
          },
          "description": {
            "type": [
              "null",
              "string"
            ]
          },
          "subtotal": {
            "type": "number",
            "format": "double"
          },
          "discountTotal": {
            "type": "number",
            "format": "double"
          },
          "taxTotal": {
            "type": "number",
            "format": "double"
          },
          "total": {
            "type": "number",
            "format": "double"
          },
          "isTaxInclusive": {
            "type": "boolean"
          },
          "sellerId": {
            "type": [
              "null",
              "string"
            ]
          },
          "shippingProfileId": {
            "type": [
              "null",
              "string"
            ]
          },
          "shippingMethodId": {
            "type": [
              "null",
              "string"
            ]
          },
          "connectionId": {
            "type": [
              "null",
              "string"
            ]
          },
          "providerName": {
            "type": [
              "null",
              "string"
            ]
          },
          "trackingCode": {
            "type": [
              "null",
              "string"
            ]
          },
          "estimatedDays": {
            "type": [
              "null",
              "integer"
            ],
            "format": "int32"
          },
          "zoneCode": {
            "type": [
              "null",
              "string"
            ]
          },
          "locationId": {
            "type": [
              "null",
              "string"
            ]
          },
          "pickupPointId": {
            "type": [
              "null",
              "string"
            ]
          },
          "scheduledDate": {
            "type": [
              "null",
              "string"
            ],
            "format": "date"
          },
          "scheduledTime": {
            "type": [
              "null",
              "string"
            ],
            "format": "time"
          },
          "data": {
            "type": "object"
          }
        }
      },
      "OrderDraftStatus": {
        "enum": [
          "draft",
          "sent",
          "viewed",
          "accepted",
          "rejected",
          "expired",
          "converted",
          "cancelled"
        ],
        "type": "string"
      },
      "OrderFulfillmentStatus": {
        "enum": [
          "unfulfilled",
          "hold",
          "scheduled",
          "picking",
          "ready",
          "shipped",
          "delivered",
          "partial",
          "canceled"
        ],
        "type": "string"
      },
      "OrderGroupDetailsDto": {
        "required": [
          "orderId",
          "orderNumber",
          "orderGroup",
          "orderIds",
          "status",
          "total",
          "currencyCode",
          "createdOn",
          "updatedOn",
          "orders"
        ],
        "type": "object",
        "properties": {
          "orderId": {
            "type": "string"
          },
          "orderNumber": {
            "type": "string"
          },
          "orderGroup": {
            "type": "string"
          },
          "orderIds": {
            "type": "array"
          },
          "status": {
            "type": "string"
          },
          "total": {
            "type": "number",
            "format": "double"
          },
          "currencyCode": {
            "type": "string",
            "description": "ISO 4217 currency code, for example `PEN`."
          },
          "createdOn": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp when the resource was created, in ISO 8601."
          },
          "updatedOn": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time",
            "description": "Timestamp when the resource was last modified, in ISO 8601."
          },
          "orders": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OrderDetailsDto"
            }
          }
        }
      },
      "OrderInstructions": {
        "type": "object",
        "properties": {
          "giftMessage": {
            "type": [
              "null",
              "string"
            ]
          },
          "specialInstructions": {
            "type": [
              "null",
              "string"
            ]
          }
        }
      },
      "OrderInvoiceType": {
        "enum": [
          "ticket",
          "invoice"
        ],
        "type": "string"
      },
      "OrderItemCommissionSource": {
        "enum": [
          "seller",
          "category",
          "brand"
        ],
        "type": [
          "null",
          "string"
        ]
      },
      "OrderItemDetailsDto": {
        "required": [
          "id",
          "externalItemId",
          "productId",
          "categoryId",
          "brandId",
          "sellerId",
          "shippingProfileId",
          "variantId",
          "skuId",
          "sku",
          "locationId",
          "title",
          "subtitle",
          "thumbnail",
          "productTitle",
          "productDescription",
          "productType",
          "productTypeId",
          "productCollection",
          "productHandle",
          "variantSku",
          "variantBarcode",
          "variantTitle",
          "variantOptionValues",
          "brand",
          "category",
          "height",
          "length",
          "width",
          "weight",
          "qty",
          "qtyRemaining",
          "qtyToDispatch",
          "qtyDispatched",
          "qtyDelivered",
          "qtyRefunded",
          "qtyReturned",
          "unitPrice",
          "subTotal",
          "discount",
          "shipping",
          "tax",
          "warranty",
          "total",
          "sellerCommissionId",
          "commissionSource",
          "productCommissionPercent",
          "freightCommissionPercent",
          "fixedFee",
          "commissionBaseAmount",
          "productCommissionAmount",
          "freightCommissionBaseAmount",
          "freightCommissionAmount",
          "commissionAmount",
          "requiresShipping",
          "isDiscountable",
          "isGiftcard",
          "isTaxInclusive",
          "isCustomPrice",
          "shippingConnectionId",
          "shippingProviderName",
          "shippingCostId",
          "shippingCostName",
          "invoiceNumber",
          "invoiceLink",
          "trackingNumber",
          "trackingLink",
          "orderItemStatus",
          "inProgressAt",
          "paymentAt",
          "shippingAt",
          "closedAt",
          "cancelledAt",
          "completedAt",
          "conciliationAt",
          "invoicedAt",
          "inTransitAt",
          "pickupAt",
          "returnedAt",
          "deliveredAt",
          "modifiers",
          "metadata",
          "createdOn",
          "updatedOn"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "externalItemId": {
            "type": [
              "null",
              "string"
            ]
          },
          "productId": {
            "type": [
              "null",
              "string"
            ]
          },
          "categoryId": {
            "type": [
              "null",
              "string"
            ]
          },
          "brandId": {
            "type": [
              "null",
              "string"
            ]
          },
          "sellerId": {
            "type": [
              "null",
              "string"
            ]
          },
          "shippingProfileId": {
            "type": [
              "null",
              "string"
            ]
          },
          "variantId": {
            "type": [
              "null",
              "string"
            ]
          },
          "skuId": {
            "type": [
              "null",
              "string"
            ]
          },
          "sku": {
            "type": [
              "null",
              "string"
            ],
            "description": "Stock keeping unit (SKU)."
          },
          "locationId": {
            "type": [
              "null",
              "string"
            ]
          },
          "title": {
            "type": "string"
          },
          "subtitle": {
            "type": [
              "null",
              "string"
            ]
          },
          "thumbnail": {
            "type": [
              "null",
              "string"
            ]
          },
          "productTitle": {
            "type": [
              "null",
              "string"
            ]
          },
          "productDescription": {
            "type": [
              "null",
              "string"
            ]
          },
          "productType": {
            "type": [
              "null",
              "string"
            ]
          },
          "productTypeId": {
            "type": [
              "null",
              "string"
            ]
          },
          "productCollection": {
            "type": [
              "null",
              "string"
            ]
          },
          "productHandle": {
            "type": [
              "null",
              "string"
            ]
          },
          "variantSku": {
            "type": [
              "null",
              "string"
            ]
          },
          "variantBarcode": {
            "type": [
              "null",
              "string"
            ]
          },
          "variantTitle": {
            "type": [
              "null",
              "string"
            ]
          },
          "variantOptionValues": {
            "type": "object"
          },
          "brand": {
            "type": [
              "null",
              "string"
            ]
          },
          "category": {
            "type": [
              "null",
              "string"
            ]
          },
          "height": {
            "type": "number",
            "format": "double"
          },
          "length": {
            "type": "number",
            "format": "double"
          },
          "width": {
            "type": "number",
            "format": "double"
          },
          "weight": {
            "type": "number",
            "format": "double"
          },
          "qty": {
            "type": "number",
            "format": "double"
          },
          "qtyRemaining": {
            "type": "number",
            "format": "double"
          },
          "qtyToDispatch": {
            "type": "number",
            "format": "double"
          },
          "qtyDispatched": {
            "type": "number",
            "format": "double"
          },
          "qtyDelivered": {
            "type": "number",
            "format": "double"
          },
          "qtyRefunded": {
            "type": "number",
            "format": "double"
          },
          "qtyReturned": {
            "type": "number",
            "format": "double"
          },
          "unitPrice": {
            "type": "number",
            "format": "double"
          },
          "subTotal": {
            "type": "number",
            "format": "double"
          },
          "discount": {
            "type": "number",
            "format": "double"
          },
          "shipping": {
            "type": "number",
            "format": "double"
          },
          "tax": {
            "type": "number",
            "format": "double"
          },
          "warranty": {
            "type": "number",
            "format": "double"
          },
          "total": {
            "type": "number",
            "format": "double"
          },
          "sellerCommissionId": {
            "type": [
              "null",
              "string"
            ]
          },
          "commissionSource": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "$ref": "#/components/schemas/OrderItemCommissionSource"
              }
            ]
          },
          "productCommissionPercent": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "freightCommissionPercent": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "fixedFee": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "commissionBaseAmount": {
            "type": "number",
            "format": "double"
          },
          "productCommissionAmount": {
            "type": "number",
            "format": "double"
          },
          "freightCommissionBaseAmount": {
            "type": "number",
            "format": "double"
          },
          "freightCommissionAmount": {
            "type": "number",
            "format": "double"
          },
          "commissionAmount": {
            "type": "number",
            "format": "double"
          },
          "requiresShipping": {
            "type": "boolean"
          },
          "isDiscountable": {
            "type": "boolean"
          },
          "isGiftcard": {
            "type": "boolean"
          },
          "isTaxInclusive": {
            "type": "boolean"
          },
          "isCustomPrice": {
            "type": "boolean"
          },
          "shippingConnectionId": {
            "type": [
              "null",
              "string"
            ]
          },
          "shippingProviderName": {
            "type": [
              "null",
              "string"
            ]
          },
          "shippingCostId": {
            "type": [
              "null",
              "string"
            ]
          },
          "shippingCostName": {
            "type": [
              "null",
              "string"
            ]
          },
          "invoiceNumber": {
            "type": [
              "null",
              "string"
            ]
          },
          "invoiceLink": {
            "type": [
              "null",
              "string"
            ]
          },
          "trackingNumber": {
            "type": [
              "null",
              "string"
            ]
          },
          "trackingLink": {
            "type": [
              "null",
              "string"
            ]
          },
          "orderItemStatus": {
            "$ref": "#/components/schemas/OrderStatus"
          },
          "inProgressAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "paymentAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "shippingAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "closedAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "cancelledAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "completedAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "conciliationAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "invoicedAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "inTransitAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "pickupAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "returnedAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "deliveredAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "modifiers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/OrderItemModifierDto"
            }
          },
          "metadata": {
            "type": "object"
          },
          "createdOn": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp when the resource was created, in ISO 8601."
          },
          "updatedOn": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time",
            "description": "Timestamp when the resource was last modified, in ISO 8601."
          }
        }
      },
      "OrderItemModifierDto": {
        "required": [
          "id",
          "modifierGroupId",
          "modifierGroupName",
          "modifierOptionId",
          "modifierOptionName",
          "priceDelta"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "modifierGroupId": {
            "type": "string"
          },
          "modifierGroupName": {
            "type": "string"
          },
          "modifierOptionId": {
            "type": "string"
          },
          "modifierOptionName": {
            "type": "string"
          },
          "priceDelta": {
            "type": "number",
            "format": "double"
          }
        }
      },
      "OrderPackageItemDto": {
        "required": [
          "id",
          "carrierId",
          "carrierName",
          "trackingNumber",
          "trackingLink",
          "skuId",
          "packages",
          "weight",
          "qty",
          "serviceType",
          "serviceCost",
          "from",
          "to",
          "partialTracking",
          "invoiceNumber",
          "packageType",
          "packageStatus",
          "createdOn",
          "updatedOn"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "carrierId": {
            "type": [
              "null",
              "string"
            ]
          },
          "carrierName": {
            "type": [
              "null",
              "string"
            ]
          },
          "trackingNumber": {
            "type": [
              "null",
              "string"
            ]
          },
          "trackingLink": {
            "type": [
              "null",
              "string"
            ]
          },
          "skuId": {
            "type": "string"
          },
          "packages": {
            "type": "number",
            "format": "double"
          },
          "weight": {
            "type": "number",
            "format": "double"
          },
          "qty": {
            "type": "number",
            "format": "double"
          },
          "serviceType": {
            "type": [
              "null",
              "string"
            ]
          },
          "serviceCost": {
            "type": "number",
            "format": "double"
          },
          "from": {
            "type": [
              "null",
              "string"
            ]
          },
          "to": {
            "type": [
              "null",
              "string"
            ]
          },
          "partialTracking": {
            "type": "boolean"
          },
          "invoiceNumber": {
            "type": [
              "null",
              "string"
            ]
          },
          "packageType": {
            "$ref": "#/components/schemas/OrderPackageType"
          },
          "packageStatus": {
            "$ref": "#/components/schemas/OrderPackageStatus"
          },
          "createdOn": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp when the resource was created, in ISO 8601."
          },
          "updatedOn": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time",
            "description": "Timestamp when the resource was last modified, in ISO 8601."
          }
        }
      },
      "OrderPackageStatus": {
        "enum": [
          "readyToPickUp",
          "inTransit",
          "delivered",
          "returned"
        ],
        "type": "string"
      },
      "OrderPackageType": {
        "enum": [
          "delivery",
          "return"
        ],
        "type": "string"
      },
      "OrderPaymentDto": {
        "required": [
          "id",
          "paymentMethod",
          "paymentCode",
          "amount",
          "cardNumber",
          "cardType",
          "installments",
          "authorizationCode",
          "transactionReference",
          "providerId",
          "paymentTransactionId",
          "paymentStatus",
          "receiptUrl",
          "metadata"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "paymentMethod": {
            "type": "string"
          },
          "paymentCode": {
            "type": "string"
          },
          "amount": {
            "type": "number",
            "format": "double"
          },
          "cardNumber": {
            "type": [
              "null",
              "string"
            ]
          },
          "cardType": {
            "type": [
              "null",
              "string"
            ]
          },
          "installments": {
            "type": [
              "null",
              "integer"
            ],
            "format": "int32"
          },
          "authorizationCode": {
            "type": [
              "null",
              "string"
            ]
          },
          "transactionReference": {
            "type": [
              "null",
              "string"
            ]
          },
          "providerId": {
            "type": [
              "null",
              "string"
            ]
          },
          "paymentTransactionId": {
            "type": [
              "null",
              "string"
            ]
          },
          "paymentStatus": {
            "type": [
              "null",
              "string"
            ]
          },
          "receiptUrl": {
            "type": [
              "null",
              "string"
            ]
          },
          "metadata": {
            "type": "object"
          }
        }
      },
      "OrderReturnStatus": {
        "enum": [
          "none",
          "requested",
          "inProgress",
          "inspected",
          "returned",
          "rejected"
        ],
        "type": "string"
      },
      "OrderShippingMethodDto": {
        "required": [
          "id",
          "name",
          "description",
          "subtotal",
          "discountTotal",
          "taxTotal",
          "total",
          "isTaxInclusive",
          "sellerId",
          "shippingProfileId",
          "shippingMethodId",
          "connectionId",
          "providerName",
          "trackingCode",
          "estimatedDays",
          "zoneCode",
          "locationId",
          "pickupPointId",
          "scheduledDate",
          "scheduledTime",
          "data"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "name": {
            "type": "string"
          },
          "description": {
            "type": [
              "null",
              "string"
            ]
          },
          "subtotal": {
            "type": "number",
            "format": "double"
          },
          "discountTotal": {
            "type": "number",
            "format": "double"
          },
          "taxTotal": {
            "type": "number",
            "format": "double"
          },
          "total": {
            "type": "number",
            "format": "double"
          },
          "isTaxInclusive": {
            "type": "boolean"
          },
          "sellerId": {
            "type": [
              "null",
              "string"
            ]
          },
          "shippingProfileId": {
            "type": [
              "null",
              "string"
            ]
          },
          "shippingMethodId": {
            "type": [
              "null",
              "string"
            ]
          },
          "connectionId": {
            "type": [
              "null",
              "string"
            ]
          },
          "providerName": {
            "type": [
              "null",
              "string"
            ]
          },
          "trackingCode": {
            "type": [
              "null",
              "string"
            ]
          },
          "estimatedDays": {
            "type": [
              "null",
              "integer"
            ],
            "format": "int32"
          },
          "zoneCode": {
            "type": [
              "null",
              "string"
            ]
          },
          "locationId": {
            "type": [
              "null",
              "string"
            ]
          },
          "pickupPointId": {
            "type": [
              "null",
              "string"
            ]
          },
          "scheduledDate": {
            "type": [
              "null",
              "string"
            ],
            "format": "date"
          },
          "scheduledTime": {
            "type": [
              "null",
              "string"
            ],
            "format": "time"
          },
          "data": {
            "type": "object"
          }
        }
      },
      "OrderState": {
        "enum": [
          "open",
          "closed",
          "canceled",
          "invalid"
        ],
        "type": "string"
      },
      "OrderStatus": {
        "enum": [
          "new",
          "confirmed",
          "inProgress",
          "invoiced",
          "readyToPickUp",
          "inTransit",
          "delivered",
          "partialDelivered",
          "closed",
          "cancelled",
          "invalid",
          "pendingToConfirm",
          "pendingToDeliveredToClient",
          "returned",
          "partialReturned",
          "partialCancelled",
          "none"
        ],
        "type": "string"
      },
      "OrderTrackingDto": {
        "required": [
          "id",
          "orderItemId",
          "title",
          "content",
          "type",
          "userId",
          "email",
          "ip",
          "createdOn",
          "createdBy"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "orderItemId": {
            "type": [
              "null",
              "string"
            ]
          },
          "title": {
            "type": "string"
          },
          "content": {
            "type": "string"
          },
          "type": {
            "$ref": "#/components/schemas/OrderTrackingType"
          },
          "userId": {
            "type": [
              "null",
              "string"
            ],
            "format": "uuid"
          },
          "email": {
            "type": [
              "null",
              "string"
            ]
          },
          "ip": {
            "type": [
              "null",
              "string"
            ]
          },
          "createdOn": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp when the resource was created, in ISO 8601."
          },
          "createdBy": {
            "type": [
              "null",
              "string"
            ],
            "format": "uuid"
          }
        }
      },
      "OrderTrackingType": {
        "enum": [
          "note",
          "confirmed",
          "inTransit",
          "readyToPickUp",
          "cancelled",
          "delivered",
          "email",
          "sms",
          "orderInvalid",
          "new",
          "readyToShip",
          "closed",
          "inProgress",
          "pendingToDeliveredToClient",
          "return",
          "invoiced",
          "attachment",
          "customStatus"
        ],
        "type": "string"
      },
      "OrderTransactionDto": {
        "required": [
          "id",
          "type",
          "amount",
          "paymentMethod",
          "referenceId",
          "referenceType",
          "transactionReference",
          "transactionReferenceDocumentLink",
          "content",
          "createdOn",
          "createdBy"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "type": {
            "$ref": "#/components/schemas/OrderTransactionType"
          },
          "amount": {
            "type": "number",
            "format": "double"
          },
          "paymentMethod": {
            "type": "string"
          },
          "referenceId": {
            "type": [
              "null",
              "string"
            ]
          },
          "referenceType": {
            "type": [
              "null",
              "string"
            ]
          },
          "transactionReference": {
            "type": [
              "null",
              "string"
            ]
          },
          "transactionReferenceDocumentLink": {
            "type": [
              "null",
              "string"
            ]
          },
          "content": {
            "type": [
              "null",
              "string"
            ]
          },
          "createdOn": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp when the resource was created, in ISO 8601."
          },
          "createdBy": {
            "type": [
              "null",
              "string"
            ],
            "format": "uuid"
          }
        }
      },
      "OrderTransactionType": {
        "enum": [
          "in",
          "out"
        ],
        "type": "string"
      },
      "ProblemDetails": {
        "type": "object",
        "properties": {
          "type": {
            "type": [
              "null",
              "string"
            ]
          },
          "title": {
            "type": [
              "null",
              "string"
            ]
          },
          "status": {
            "type": [
              "null",
              "integer"
            ],
            "format": "int32"
          },
          "detail": {
            "type": [
              "null",
              "string"
            ]
          },
          "instance": {
            "type": [
              "null",
              "string"
            ]
          },
          "code": {
            "type": "string",
            "description": "Machine-readable error code returned by Ecomiq."
          }
        }
      },
      "ProductDetail": {
        "required": [
          "id",
          "name",
          "slug",
          "description",
          "productType",
          "status",
          "imageUrl",
          "price",
          "compareAtPrice",
          "isAvailable",
          "totalInventory",
          "brand",
          "category",
          "categoryId",
          "tags",
          "specifications",
          "variants",
          "images",
          "bundleItems",
          "sizeGuide",
          "priceTiers",
          "createdAt",
          "updatedAt"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string",
            "description": "URL-friendly identifier."
          },
          "description": {
            "type": "string"
          },
          "productType": {
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "imageUrl": {
            "type": "string"
          },
          "price": {
            "type": "number",
            "format": "double"
          },
          "compareAtPrice": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "isAvailable": {
            "type": "boolean"
          },
          "totalInventory": {
            "type": "integer",
            "format": "int32"
          },
          "brand": {
            "type": "string"
          },
          "category": {
            "type": "string"
          },
          "categoryId": {
            "type": [
              "null",
              "string"
            ]
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "specifications": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SpecItem"
            }
          },
          "variants": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/VariantItem"
            }
          },
          "images": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ImageItem"
            }
          },
          "bundleItems": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BundleItem"
            }
          },
          "sizeGuide": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "$ref": "#/components/schemas/SizeGuideInfo"
              }
            ]
          },
          "priceTiers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProductPriceTier"
            }
          },
          "createdAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "updatedAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          }
        }
      },
      "ProductPriceTier": {
        "required": [
          "variantId",
          "minQuantity",
          "maxQuantity",
          "unitPrice"
        ],
        "type": "object",
        "properties": {
          "variantId": {
            "type": "string"
          },
          "minQuantity": {
            "type": "integer",
            "format": "int32"
          },
          "maxQuantity": {
            "type": [
              "null",
              "integer"
            ],
            "format": "int32"
          },
          "unitPrice": {
            "type": "number",
            "format": "double"
          }
        }
      },
      "ProductSummary": {
        "required": [
          "id",
          "name",
          "slug",
          "productType",
          "imageUrl",
          "price",
          "compareAtPrice",
          "variantCount",
          "isAvailable",
          "totalInventory",
          "bundleItemsCount",
          "brand",
          "category",
          "status",
          "collections",
          "tags"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string",
            "description": "URL-friendly identifier."
          },
          "productType": {
            "type": "string"
          },
          "imageUrl": {
            "type": "string"
          },
          "price": {
            "type": "number",
            "format": "double"
          },
          "compareAtPrice": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "variantCount": {
            "type": "integer",
            "format": "int32"
          },
          "isAvailable": {
            "type": "boolean"
          },
          "totalInventory": {
            "type": "integer",
            "format": "int32"
          },
          "bundleItemsCount": {
            "type": "integer",
            "format": "int32"
          },
          "brand": {
            "type": "string"
          },
          "category": {
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "collections": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "QueryEnumOfAreaLevel": {
        "enum": [
          "level1",
          "level2",
          "level3"
        ],
        "type": "string"
      },
      "QueryEnumOfSortDirection": {
        "enum": [
          "asc",
          "desc"
        ],
        "type": "string"
      },
      "RecoveryCustomerPasswordRequest": {
        "required": [
          "email"
        ],
        "type": "object",
        "properties": {
          "email": {
            "type": "string"
          }
        }
      },
      "RegisterCustomerRequest": {
        "required": [
          "email",
          "firstName",
          "lastName",
          "countryIsoCode",
          "password"
        ],
        "type": "object",
        "properties": {
          "email": {
            "type": "string"
          },
          "firstName": {
            "type": "string"
          },
          "lastName": {
            "type": "string"
          },
          "countryIsoCode": {
            "type": "string"
          },
          "password": {
            "type": "string"
          },
          "phone": {
            "type": [
              "null",
              "string"
            ]
          }
        }
      },
      "SearchFilter": {
        "required": [
          "id",
          "label",
          "type",
          "values"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "label": {
            "type": "string"
          },
          "type": {
            "type": "string"
          },
          "values": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FacetItem"
            }
          },
          "min": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "max": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "selectedMin": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "selectedMax": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          }
        }
      },
      "SearchResult": {
        "required": [
          "pageIndex",
          "pageSize",
          "totalCount",
          "totalPages",
          "products",
          "filters"
        ],
        "type": "object",
        "properties": {
          "pageIndex": {
            "type": "integer",
            "format": "int32",
            "description": "One-based index of the returned page."
          },
          "pageSize": {
            "type": "integer",
            "format": "int32",
            "description": "Maximum number of products returned on this page."
          },
          "totalCount": {
            "type": "integer",
            "format": "int64",
            "description": "Total number of matching items."
          },
          "totalPages": {
            "type": "integer",
            "format": "int32",
            "description": "Number of pages available for the current filters."
          },
          "products": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProductSummary"
            }
          },
          "filters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SearchFilter"
            }
          }
        }
      },
      "SetCartShippingMethodRequest": {
        "type": "object",
        "properties": {
          "sellerId": {
            "type": [
              "null",
              "string"
            ]
          },
          "shippingProfileId": {
            "type": [
              "null",
              "string"
            ]
          },
          "shippingMethodId": {
            "type": [
              "null",
              "string"
            ]
          },
          "rateId": {
            "type": [
              "null",
              "string"
            ]
          },
          "locationId": {
            "type": [
              "null",
              "string"
            ]
          },
          "pickupPointId": {
            "type": [
              "null",
              "string"
            ]
          },
          "scheduledDate": {
            "type": [
              "null",
              "string"
            ],
            "format": "date"
          },
          "scheduledTime": {
            "type": [
              "null",
              "string"
            ],
            "format": "time"
          },
          "serviceCode": {
            "type": [
              "null",
              "string"
            ]
          }
        }
      },
      "ShippingMethodSlotsModel": {
        "required": [
          "shippingMethodId",
          "type",
          "locationId",
          "pickupPointId",
          "date",
          "capacity",
          "scheduledCount",
          "slots"
        ],
        "type": "object",
        "properties": {
          "shippingMethodId": {
            "type": "string"
          },
          "type": {
            "$ref": "#/components/schemas/ShippingMethodType"
          },
          "locationId": {
            "type": [
              "null",
              "string"
            ]
          },
          "pickupPointId": {
            "type": [
              "null",
              "string"
            ]
          },
          "date": {
            "type": "string",
            "format": "date"
          },
          "capacity": {
            "type": [
              "null",
              "integer"
            ],
            "format": "int32"
          },
          "scheduledCount": {
            "type": "integer",
            "format": "int32"
          },
          "slots": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "time"
            }
          }
        }
      },
      "ShippingMethodType": {
        "enum": [
          "regular",
          "express",
          "sameDay",
          "pickup",
          "localDelivery"
        ],
        "type": "string"
      },
      "SizeGuideInfo": {
        "required": [
          "id",
          "name",
          "slug",
          "description",
          "imageUrl",
          "gender",
          "measurementType",
          "unit",
          "notes",
          "rows"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string",
            "description": "URL-friendly identifier."
          },
          "description": {
            "type": [
              "null",
              "string"
            ]
          },
          "imageUrl": {
            "type": [
              "null",
              "string"
            ]
          },
          "gender": {
            "type": "string"
          },
          "measurementType": {
            "type": "string"
          },
          "unit": {
            "type": "string"
          },
          "notes": {
            "type": [
              "null",
              "string"
            ]
          },
          "rows": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SizeGuideRowInfo"
            }
          }
        }
      },
      "SizeGuideMeasurementInfo": {
        "required": [
          "key",
          "name",
          "min",
          "max",
          "value",
          "description"
        ],
        "type": "object",
        "properties": {
          "key": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "min": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "max": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "value": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "description": {
            "type": [
              "null",
              "string"
            ]
          }
        }
      },
      "SizeGuideRowInfo": {
        "required": [
          "label",
          "sizeKey",
          "order",
          "measurements"
        ],
        "type": "object",
        "properties": {
          "label": {
            "type": "string"
          },
          "sizeKey": {
            "type": "string"
          },
          "order": {
            "type": "integer",
            "format": "int32"
          },
          "measurements": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SizeGuideMeasurementInfo"
            }
          }
        }
      },
      "SpecItem": {
        "required": [
          "key",
          "name",
          "value"
        ],
        "type": "object",
        "properties": {
          "key": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "value": {
            "type": "string"
          }
        }
      },
      "StoreCheckoutCartPageSettings": {
        "type": "object",
        "properties": {
          "showShippingCostCalculation": {
            "type": "boolean"
          },
          "allowProductLinks": {
            "type": "boolean"
          },
          "redirectToCartPage": {
            "type": "boolean"
          }
        }
      },
      "StoreCheckoutGeneralSettings": {
        "type": "object",
        "properties": {
          "allowGuestCheckout": {
            "type": "boolean"
          },
          "identityScope": {
            "$ref": "#/components/schemas/CustomerIdentityScope"
          },
          "signInMethods": {
            "type": "array"
          },
          "useSequentialOrderNumbers": {
            "type": "boolean"
          },
          "automaticallySelectFirstAddress": {
            "type": "boolean"
          },
          "alwaysRequestCustomerAddress": {
            "type": "boolean"
          },
          "requestCustomerDateOfBirth": {
            "type": "boolean"
          },
          "automaticallySelectBestPromotion": {
            "type": "boolean"
          }
        }
      },
      "StoreCheckoutOrderBumpSettings": {
        "type": "object",
        "properties": {
          "mergeOrderBumpOrders": {
            "type": "boolean"
          },
          "allowOnlyOneAdditionalOffer": {
            "type": "boolean"
          },
          "maxVisibleOffers": {
            "type": "integer",
            "format": "int32"
          }
        }
      },
      "StoreCheckoutOrdersAndPaymentsSettings": {
        "type": "object",
        "properties": {
          "allowPurchasesFrom": {
            "$ref": "#/components/schemas/CheckoutBuyerType"
          },
          "creditCardDailyOrderLimitPerIp": {
            "type": [
              "null",
              "integer"
            ],
            "format": "int32"
          },
          "maximumItemsPerOrder": {
            "type": [
              "null",
              "integer"
            ],
            "format": "int32"
          },
          "deliveryNoteText": {
            "type": [
              "null",
              "string"
            ]
          },
          "boletoPaymentNoteText": {
            "type": [
              "null",
              "string"
            ]
          }
        }
      },
      "StoreCheckoutSettings": {
        "type": "object",
        "properties": {
          "general": {
            "$ref": "#/components/schemas/StoreCheckoutGeneralSettings"
          },
          "shipping": {
            "$ref": "#/components/schemas/StoreCheckoutShippingSettings"
          },
          "cartPage": {
            "$ref": "#/components/schemas/StoreCheckoutCartPageSettings"
          },
          "orderBumps": {
            "$ref": "#/components/schemas/StoreCheckoutOrderBumpSettings"
          },
          "ordersAndPayments": {
            "$ref": "#/components/schemas/StoreCheckoutOrdersAndPaymentsSettings"
          }
        }
      },
      "StoreCheckoutShippingSettings": {
        "type": "object",
        "properties": {
          "showDeliveryTime": {
            "type": "boolean"
          },
          "showDeliveryTimeInDays": {
            "type": "boolean"
          },
          "useBusinessDaysForDeliveryTime": {
            "type": "boolean"
          },
          "showEstimatedDeliveryDateInThankYouAndEmails": {
            "type": "boolean"
          },
          "showOriginalShippingPriceWhenFree": {
            "type": "boolean"
          }
        }
      },
      "StoreFeatureFlags": {
        "type": "object",
        "properties": {
          "flags": {
            "type": "object",
            "additionalProperties": {
              "type": "boolean"
            }
          }
        }
      },
      "StorefrontAddressDto": {
        "required": [
          "name",
          "address1",
          "city",
          "countryCode",
          "company",
          "address2",
          "province",
          "postalCode",
          "district",
          "phone",
          "latitude",
          "longitude"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": [
              "null",
              "string"
            ]
          },
          "address1": {
            "type": "string"
          },
          "city": {
            "type": "string"
          },
          "countryCode": {
            "type": "string",
            "description": "ISO 3166-1 alpha-2 country code, for example `PE`."
          },
          "company": {
            "type": [
              "null",
              "string"
            ]
          },
          "address2": {
            "type": [
              "null",
              "string"
            ]
          },
          "province": {
            "type": [
              "null",
              "string"
            ]
          },
          "postalCode": {
            "type": [
              "null",
              "string"
            ]
          },
          "district": {
            "type": [
              "null",
              "string"
            ]
          },
          "phone": {
            "type": [
              "null",
              "string"
            ]
          },
          "latitude": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "longitude": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          }
        }
      },
      "StorefrontCartBundleItemDto": {
        "required": [
          "productId",
          "variantId",
          "productName",
          "variantName",
          "sku",
          "brand",
          "imageUrl",
          "quantity"
        ],
        "type": "object",
        "properties": {
          "productId": {
            "type": "string"
          },
          "variantId": {
            "type": "string"
          },
          "productName": {
            "type": "string"
          },
          "variantName": {
            "type": [
              "null",
              "string"
            ]
          },
          "sku": {
            "type": [
              "null",
              "string"
            ],
            "description": "Stock keeping unit (SKU)."
          },
          "brand": {
            "type": [
              "null",
              "string"
            ]
          },
          "imageUrl": {
            "type": [
              "null",
              "string"
            ]
          },
          "quantity": {
            "type": "integer",
            "format": "int32"
          }
        }
      },
      "StorefrontCartDto": {
        "required": [
          "id",
          "token",
          "cartNumber",
          "email",
          "phone",
          "firstName",
          "lastName",
          "currencyCode",
          "status",
          "completedAt",
          "shippingAddress",
          "billingAddress",
          "promotionCodes",
          "items",
          "shippingMethods",
          "totals"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "token": {
            "type": "string"
          },
          "cartNumber": {
            "type": "string"
          },
          "email": {
            "type": [
              "null",
              "string"
            ]
          },
          "phone": {
            "type": [
              "null",
              "string"
            ]
          },
          "firstName": {
            "type": [
              "null",
              "string"
            ]
          },
          "lastName": {
            "type": [
              "null",
              "string"
            ]
          },
          "currencyCode": {
            "type": "string",
            "description": "ISO 4217 currency code, for example `PEN`."
          },
          "status": {
            "$ref": "#/components/schemas/CartStatus"
          },
          "completedAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          },
          "shippingAddress": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "$ref": "#/components/schemas/StorefrontAddressDto"
              }
            ]
          },
          "billingAddress": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "$ref": "#/components/schemas/StorefrontAddressDto"
              }
            ]
          },
          "promotionCodes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StorefrontCartItemDto"
            }
          },
          "shippingMethods": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StorefrontCartShippingMethodDto"
            }
          },
          "totals": {
            "$ref": "#/components/schemas/StorefrontCartTotalsDto"
          }
        }
      },
      "StorefrontCartItemDto": {
        "required": [
          "id",
          "productId",
          "title",
          "variantLabel",
          "productHandle",
          "thumbnail",
          "quantity",
          "variantId",
          "variantSku",
          "unitPrice",
          "compareAtUnitPrice",
          "bundleItems"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "productId": {
            "type": [
              "null",
              "string"
            ]
          },
          "title": {
            "type": "string"
          },
          "variantLabel": {
            "type": [
              "null",
              "string"
            ]
          },
          "productHandle": {
            "type": [
              "null",
              "string"
            ]
          },
          "thumbnail": {
            "type": [
              "null",
              "string"
            ]
          },
          "quantity": {
            "type": "integer",
            "format": "int32"
          },
          "variantId": {
            "type": [
              "null",
              "string"
            ]
          },
          "variantSku": {
            "type": [
              "null",
              "string"
            ]
          },
          "unitPrice": {
            "type": "number",
            "format": "double"
          },
          "compareAtUnitPrice": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "bundleItems": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StorefrontCartBundleItemDto"
            }
          },
          "requiresShipping": {
            "type": "boolean",
            "default": true
          }
        }
      },
      "StorefrontCartShippingMethodDto": {
        "required": [
          "id",
          "shippingMethodId",
          "rateId",
          "name",
          "description",
          "total",
          "locationId",
          "estimatedDays",
          "pickupPointId",
          "scheduledDate",
          "scheduledTime",
          "serviceCode"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "shippingMethodId": {
            "type": [
              "null",
              "string"
            ]
          },
          "rateId": {
            "type": [
              "null",
              "string"
            ]
          },
          "name": {
            "type": "string"
          },
          "description": {
            "type": [
              "null",
              "string"
            ]
          },
          "total": {
            "type": "number",
            "format": "double"
          },
          "locationId": {
            "type": [
              "null",
              "string"
            ]
          },
          "estimatedDays": {
            "type": [
              "null",
              "integer"
            ],
            "format": "int32"
          },
          "pickupPointId": {
            "type": [
              "null",
              "string"
            ]
          },
          "scheduledDate": {
            "type": [
              "null",
              "string"
            ],
            "format": "date"
          },
          "scheduledTime": {
            "type": [
              "null",
              "string"
            ],
            "format": "time"
          },
          "serviceCode": {
            "type": [
              "null",
              "string"
            ]
          },
          "sellerId": {
            "type": [
              "null",
              "string"
            ]
          },
          "shippingProfileId": {
            "type": [
              "null",
              "string"
            ]
          }
        }
      },
      "StorefrontCartTotalsDto": {
        "required": [
          "subtotal",
          "discountTotal",
          "shippingOriginalTotal",
          "shippingTotal",
          "taxTotal",
          "warrantyTotal",
          "total"
        ],
        "type": "object",
        "properties": {
          "subtotal": {
            "type": "number",
            "format": "double"
          },
          "discountTotal": {
            "type": "number",
            "format": "double"
          },
          "shippingOriginalTotal": {
            "type": "number",
            "format": "double"
          },
          "shippingTotal": {
            "type": "number",
            "format": "double"
          },
          "taxTotal": {
            "type": "number",
            "format": "double"
          },
          "warrantyTotal": {
            "type": "number",
            "format": "double"
          },
          "total": {
            "type": "number",
            "format": "double"
          }
        }
      },
      "StorefrontCheckoutDto": {
        "required": [
          "cart",
          "paymentMethods",
          "orderBumps"
        ],
        "type": "object",
        "properties": {
          "cart": {
            "$ref": "#/components/schemas/StorefrontCartDto"
          },
          "paymentMethods": {
            "$ref": "#/components/schemas/StorefrontCheckoutPaymentOptionsDto"
          },
          "orderBumps": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StorefrontOrderBumpDto"
            }
          }
        }
      },
      "StorefrontCheckoutPaymentActionDto": {
        "required": [
          "publicConfiguration",
          "url",
          "html",
          "clientSecret",
          "qrCode",
          "expiresAt"
        ],
        "type": "object",
        "properties": {
          "publicConfiguration": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "url": {
            "type": [
              "null",
              "string"
            ]
          },
          "html": {
            "type": [
              "null",
              "string"
            ]
          },
          "clientSecret": {
            "type": [
              "null",
              "string"
            ]
          },
          "qrCode": {
            "type": [
              "null",
              "string"
            ]
          },
          "expiresAt": {
            "type": [
              "null",
              "string"
            ],
            "format": "date-time"
          }
        }
      },
      "StorefrontCheckoutPaymentDto": {
        "required": [
          "transactionId",
          "paymentMethodCode",
          "providerId",
          "status",
          "amount",
          "reference",
          "actionType",
          "receiptUrl",
          "action"
        ],
        "type": "object",
        "properties": {
          "transactionId": {
            "type": "string"
          },
          "paymentMethodCode": {
            "type": "string"
          },
          "providerId": {
            "type": [
              "null",
              "string"
            ]
          },
          "status": {
            "$ref": "#/components/schemas/StorefrontCheckoutPaymentStatus"
          },
          "amount": {
            "type": "number",
            "format": "double"
          },
          "reference": {
            "type": "string"
          },
          "actionType": {
            "type": "string"
          },
          "receiptUrl": {
            "type": [
              "null",
              "string"
            ]
          },
          "action": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "$ref": "#/components/schemas/StorefrontCheckoutPaymentActionDto"
              }
            ]
          }
        }
      },
      "StorefrontCheckoutPaymentKind": {
        "enum": [
          "offline",
          "card",
          "wallet",
          "other"
        ],
        "type": "string"
      },
      "StorefrontCheckoutPaymentMethodDto": {
        "required": [
          "code",
          "name",
          "description",
          "kind",
          "isActive",
          "isDefault",
          "isManual",
          "sortOrder",
          "phoneNumber",
          "accountHolder",
          "qrImageUrl",
          "providerId"
        ],
        "type": "object",
        "properties": {
          "code": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "description": {
            "type": [
              "null",
              "string"
            ]
          },
          "kind": {
            "$ref": "#/components/schemas/StorefrontCheckoutPaymentKind"
          },
          "isActive": {
            "type": "boolean"
          },
          "isDefault": {
            "type": "boolean"
          },
          "isManual": {
            "type": "boolean"
          },
          "sortOrder": {
            "type": "integer",
            "format": "int32"
          },
          "phoneNumber": {
            "type": [
              "null",
              "string"
            ]
          },
          "accountHolder": {
            "type": [
              "null",
              "string"
            ]
          },
          "qrImageUrl": {
            "type": [
              "null",
              "string"
            ]
          },
          "providerId": {
            "type": [
              "null",
              "string"
            ]
          }
        }
      },
      "StorefrontCheckoutPaymentOptionsDto": {
        "required": [
          "methods"
        ],
        "type": "object",
        "properties": {
          "methods": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StorefrontCheckoutPaymentMethodDto"
            }
          }
        }
      },
      "StorefrontCheckoutPaymentStatus": {
        "enum": [
          "pending",
          "authorized",
          "captured",
          "failed",
          "cancelled",
          "refunded"
        ],
        "type": "string"
      },
      "StorefrontCheckoutResultDto": {
        "required": [
          "orderId",
          "orderNumber",
          "orderGroup",
          "orderIds",
          "payment",
          "cart"
        ],
        "type": "object",
        "properties": {
          "orderId": {
            "type": "string"
          },
          "orderNumber": {
            "type": "string"
          },
          "orderGroup": {
            "type": "string"
          },
          "orderIds": {
            "type": "array"
          },
          "payment": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "$ref": "#/components/schemas/StorefrontCheckoutPaymentDto"
              }
            ]
          },
          "cart": {
            "$ref": "#/components/schemas/StorefrontCartDto"
          }
        }
      },
      "StorefrontOrderBumpDto": {
        "required": [
          "id",
          "productId",
          "variantId",
          "productName",
          "variantName",
          "imageUrl",
          "currencyCode",
          "regularPrice",
          "offerPrice",
          "badgeLabel",
          "callToAction",
          "description"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "productId": {
            "type": "string"
          },
          "variantId": {
            "type": "string"
          },
          "productName": {
            "type": "string"
          },
          "variantName": {
            "type": [
              "null",
              "string"
            ]
          },
          "imageUrl": {
            "type": [
              "null",
              "string"
            ]
          },
          "currencyCode": {
            "type": "string",
            "description": "ISO 4217 currency code, for example `PEN`."
          },
          "regularPrice": {
            "type": "number",
            "format": "double"
          },
          "offerPrice": {
            "type": "number",
            "format": "double"
          },
          "badgeLabel": {
            "type": [
              "null",
              "string"
            ]
          },
          "callToAction": {
            "type": "string"
          },
          "description": {
            "type": [
              "null",
              "string"
            ]
          }
        }
      },
      "StorefrontReviewDto": {
        "required": [
          "id",
          "productId",
          "isVerifiedPurchase",
          "rating",
          "title",
          "content",
          "reviewerName",
          "createdOn"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "productId": {
            "type": "string"
          },
          "isVerifiedPurchase": {
            "type": "boolean"
          },
          "rating": {
            "type": "integer",
            "format": "int32"
          },
          "title": {
            "type": [
              "null",
              "string"
            ]
          },
          "content": {
            "type": "string"
          },
          "reviewerName": {
            "type": [
              "null",
              "string"
            ]
          },
          "createdOn": {
            "type": "string",
            "format": "date-time",
            "description": "Timestamp when the resource was created, in ISO 8601."
          }
        }
      },
      "StorefrontReviewRequest": {
        "required": [
          "rating",
          "content",
          "title",
          "reviewerName",
          "reviewerEmail",
          "orderId"
        ],
        "type": "object",
        "properties": {
          "rating": {
            "type": "integer",
            "format": "int32"
          },
          "content": {
            "type": "string"
          },
          "title": {
            "type": [
              "null",
              "string"
            ]
          },
          "reviewerName": {
            "type": "string"
          },
          "reviewerEmail": {
            "type": "string"
          },
          "orderId": {
            "type": [
              "null",
              "string"
            ]
          }
        }
      },
      "StorefrontStoreDto": {
        "required": [
          "id",
          "tenantId",
          "sellerId",
          "type",
          "isActive",
          "name",
          "description",
          "logo",
          "icon",
          "slug",
          "domain",
          "domains",
          "timeZone",
          "currency",
          "language",
          "visibility",
          "themeConfig",
          "featuresEnabled",
          "checkoutSettings"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "tenantId": {
            "type": "string"
          },
          "sellerId": {
            "type": [
              "null",
              "string"
            ]
          },
          "type": {
            "$ref": "#/components/schemas/StoreType"
          },
          "isActive": {
            "type": "boolean"
          },
          "name": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "logo": {
            "type": [
              "null",
              "string"
            ]
          },
          "icon": {
            "type": [
              "null",
              "string"
            ]
          },
          "slug": {
            "type": [
              "null",
              "string"
            ],
            "description": "URL-friendly identifier."
          },
          "domain": {
            "type": [
              "null",
              "string"
            ]
          },
          "domains": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "timeZone": {
            "type": "string",
            "description": "IANA time zone name, for example `America/Lima`."
          },
          "currency": {
            "type": "string"
          },
          "language": {
            "type": "string"
          },
          "visibility": {
            "$ref": "#/components/schemas/StoreVisibility"
          },
          "themeConfig": {
            "$ref": "#/components/schemas/StoreThemeSettings"
          },
          "featuresEnabled": {
            "$ref": "#/components/schemas/StoreFeatureFlags"
          },
          "checkoutSettings": {
            "$ref": "#/components/schemas/StoreCheckoutSettings"
          }
        }
      },
      "StoreSettingsSnapshotDto": {
        "required": [
          "schemaVersion",
          "generatedAt",
          "store",
          "cms"
        ],
        "type": "object",
        "properties": {
          "schemaVersion": {
            "type": "integer",
            "format": "int32"
          },
          "generatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "store": {
            "$ref": "#/components/schemas/StorefrontStoreDto"
          },
          "cms": {
            "$ref": "#/components/schemas/CmsSnapshotDto"
          }
        }
      },
      "StoreThemeSettings": {
        "type": "object",
        "properties": {
          "name": {
            "type": [
              "null",
              "string"
            ]
          },
          "mode": {
            "type": [
              "null",
              "string"
            ]
          },
          "colors": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "fonts": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "assets": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          }
        }
      },
      "StoreType": {
        "enum": [
          "b2C",
          "marketplace",
          "retail",
          "b2B",
          "social",
          "hub",
          "restaurant"
        ],
        "type": "string"
      },
      "StoreVisibility": {
        "enum": [
          "public",
          "private"
        ],
        "type": "string"
      },
      "Suggestion": {
        "required": [
          "id",
          "name",
          "slug",
          "imageUrl"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Unique identifier of the resource."
          },
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string",
            "description": "URL-friendly identifier."
          },
          "imageUrl": {
            "type": "string"
          }
        }
      },
      "UnlockStoreAccessRequest": {
        "required": [
          "accessKey"
        ],
        "type": "object",
        "properties": {
          "accessKey": {
            "type": "string"
          }
        }
      },
      "UpdateCartAddressesRequest": {
        "type": "object",
        "properties": {
          "shippingAddress": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "$ref": "#/components/schemas/StorefrontAddressDto"
              }
            ]
          },
          "billingAddress": {
            "oneOf": [
              {
                "type": "null"
              },
              {
                "$ref": "#/components/schemas/StorefrontAddressDto"
              }
            ]
          }
        }
      },
      "UpdateCartBuyerRequest": {
        "type": "object",
        "properties": {
          "email": {
            "type": [
              "null",
              "string"
            ]
          },
          "phone": {
            "type": [
              "null",
              "string"
            ]
          },
          "firstName": {
            "type": [
              "null",
              "string"
            ]
          },
          "lastName": {
            "type": [
              "null",
              "string"
            ]
          },
          "identificationType": {
            "type": [
              "null",
              "string"
            ]
          },
          "identificationNumber": {
            "type": [
              "null",
              "string"
            ]
          },
          "entityTaxId": {
            "type": [
              "null",
              "string"
            ]
          },
          "entityName": {
            "type": [
              "null",
              "string"
            ]
          }
        }
      },
      "UpdateCartItemQuantityRequest": {
        "required": [
          "quantity"
        ],
        "type": "object",
        "properties": {
          "quantity": {
            "type": "integer",
            "format": "int32"
          }
        }
      },
      "UpdateCustomerRequest": {
        "required": [
          "firstName",
          "lastName"
        ],
        "type": "object",
        "properties": {
          "firstName": {
            "type": "string"
          },
          "lastName": {
            "type": "string"
          },
          "phone": {
            "type": [
              "null",
              "string"
            ]
          },
          "identificationNumber": {
            "type": [
              "null",
              "string"
            ]
          },
          "identificationType": {
            "type": [
              "null",
              "string"
            ]
          },
          "entityName": {
            "type": [
              "null",
              "string"
            ]
          },
          "entityIdentificationNumber": {
            "type": [
              "null",
              "string"
            ]
          },
          "gender": {
            "enum": [
              "male",
              "female",
              "other"
            ],
            "type": [
              "null",
              "string"
            ]
          },
          "role": {
            "type": [
              "null",
              "string"
            ]
          },
          "companyName": {
            "type": [
              "null",
              "string"
            ]
          },
          "dateOfBirth": {
            "type": [
              "null",
              "string"
            ],
            "format": "date"
          },
          "consent": {
            "type": [
              "null",
              "boolean"
            ]
          },
          "countryIsoCode": {
            "type": [
              "null",
              "string"
            ]
          }
        }
      },
      "VariantItem": {
        "required": [
          "id",
          "sku",
          "status",
          "price",
          "compareAtPrice",
          "quantity",
          "isAvailable",
          "requiresShipping",
          "options",
          "images"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": [
              "null",
              "string"
            ],
            "description": "Unique identifier of the resource."
          },
          "sku": {
            "type": "string",
            "description": "Stock keeping unit (SKU)."
          },
          "status": {
            "type": "string"
          },
          "price": {
            "type": "number",
            "format": "double"
          },
          "compareAtPrice": {
            "type": [
              "null",
              "number"
            ],
            "format": "double"
          },
          "quantity": {
            "type": "integer",
            "format": "int32"
          },
          "isAvailable": {
            "type": [
              "null",
              "boolean"
            ]
          },
          "requiresShipping": {
            "type": "boolean"
          },
          "options": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SpecItem"
            }
          },
          "images": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ImageItem"
            }
          }
        }
      }
    },
    "securitySchemes": {
      "bearerAuth": {
        "type": "http",
        "scheme": "bearer",
        "bearerFormat": "JWT",
        "description": "OAuth2 access token issued by Ecomiq Auth."
      }
    }
  },
  "tags": [
    {
      "name": "Customers",
      "description": "Customer profile, addresses, login, registration, and password recovery.",
      "x-displayName": "Customers"
    },
    {
      "name": "Orders & Checkout",
      "description": "Carts, checkout, and customer order history.",
      "x-displayName": "Orders & Checkout"
    },
    {
      "name": "Fulfillment & Shipping",
      "description": "Countries, departments, provinces, districts, and other areas in the geographic catalog.",
      "x-displayName": "Fulfillment & Shipping"
    },
    {
      "name": "Content & Storefront",
      "description": "CMS, pages, storefront settings, store locations, and public storefront composition.",
      "x-displayName": "Content & Storefront"
    },
    {
      "name": "Analytics & Operations",
      "description": "Product views, cart actions, and checkout events recorded for merchant analytics.",
      "x-displayName": "Analytics & Operations"
    }
  ],
  "servers": [
    {
      "url": "https://storefront.ecomiq.pe/api",
      "description": "Production storefront gateway"
    }
  ]
}