{
  "openapi": "3.0.1",
  "info": {
    "title": "Venzigo B2C API",
    "description": "Mobil/SPA istemcileri için katalog, sepet, sipariş, ödeme, kargo ve öneri uçları.",
    "version": "v1"
  },
  "paths": {
    "/api/v1/addresses/list": {
      "post": {
        "tags": [
          "Addresses"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Venz.Application.Sales.Addresses.AddressDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/addresses/get": {
      "post": {
        "tags": [
          "Addresses"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.AddressIdRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.AddressIdRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.AddressIdRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Sales.Addresses.AddressDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/addresses/save": {
      "post": {
        "tags": [
          "Addresses"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Application.Sales.Addresses.AddressUpsertDto"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Application.Sales.Addresses.AddressUpsertDto"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Application.Sales.Addresses.AddressUpsertDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string",
                  "format": "uuid"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/addresses/delete": {
      "post": {
        "tags": [
          "Addresses"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.AddressIdRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.AddressIdRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.AddressIdRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/attribute-types/list": {
      "post": {
        "tags": [
          "AttributeTypes"
        ],
        "summary": "Özellik tipi listesi. Filtre gövdeden gelir.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.AttributeTypeListRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.AttributeTypeListRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.AttributeTypeListRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Common.Models.PagedResult`1[[Venz.Application.Catalog.Attributes.AttributeTypeDto, Venz.Application, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/attribute-types/catalog": {
      "post": {
        "tags": [
          "AttributeTypes"
        ],
        "summary": "Pazaryeri eşlemelerini özellik tipine göre listeler. Filtre gövdeden gelir.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.AttributeTypeCatalogRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.AttributeTypeCatalogRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.AttributeTypeCatalogRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Venz.Application.Catalog.Attributes.AttributeTypeCatalogDto"
                  }
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/attribute-types/get": {
      "post": {
        "tags": [
          "AttributeTypes"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.EntityIdRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.EntityIdRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.EntityIdRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Catalog.Attributes.AttributeTypeDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/attribute-types/marketplace-maps": {
      "post": {
        "tags": [
          "AttributeTypes"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.MarketplaceMapListRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.MarketplaceMapListRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.MarketplaceMapListRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Venz.Application.Catalog.Attributes.MarketplaceAttributeTypeMapDto"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/attribute-types/marketplace-maps/save": {
      "post": {
        "tags": [
          "AttributeTypes"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.MarketplaceAttributeTypeMapSaveRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.MarketplaceAttributeTypeMapSaveRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.MarketplaceAttributeTypeMapSaveRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Venz.Application.Catalog.Attributes.MarketplaceAttributeTypeMapDto"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/attribute-values/marketplace-maps": {
      "post": {
        "tags": [
          "AttributeValues"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.AttributeValueMapListRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.AttributeValueMapListRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.AttributeValueMapListRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Venz.Application.Catalog.Attributes.MarketplaceAttributeValueMapDto"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/attribute-values/marketplace-maps/save": {
      "post": {
        "tags": [
          "AttributeValues"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.MarketplaceAttributeValueMapSaveRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.MarketplaceAttributeValueMapSaveRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.MarketplaceAttributeValueMapSaveRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Venz.Application.Catalog.Attributes.MarketplaceAttributeValueMapDto"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/auth/register": {
      "post": {
        "tags": [
          "Auth"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.RegisterRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.RegisterRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.RegisterRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.AuthResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/auth/login": {
      "post": {
        "tags": [
          "Auth"
        ],
        "summary": "E-posta / şifre ile JWT üretir. Access token ~15 dakika.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.LoginRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.LoginRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.LoginRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.AuthResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/auth/refresh": {
      "post": {
        "tags": [
          "Auth"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.RefreshRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.RefreshRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.RefreshRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.AuthResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/auth/logout": {
      "post": {
        "tags": [
          "Auth"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.LogoutRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.LogoutRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.LogoutRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/auth/me": {
      "post": {
        "tags": [
          "Auth"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.UserProfileDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/cart/get": {
      "post": {
        "tags": [
          "Cart"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Sales.Carts.CartDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/cart/items": {
      "post": {
        "tags": [
          "Cart"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.AddCartItemRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.AddCartItemRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.AddCartItemRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Sales.Carts.CartDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/cart/items/update": {
      "post": {
        "tags": [
          "Cart"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.UpdateCartItemRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.UpdateCartItemRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.UpdateCartItemRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Sales.Carts.CartDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/cart/items/remove": {
      "post": {
        "tags": [
          "Cart"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.CartItemIdRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.CartItemIdRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.CartItemIdRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Sales.Carts.CartDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/cart/clear": {
      "post": {
        "tags": [
          "Cart"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Sales.Carts.CartDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/cart/coupon": {
      "post": {
        "tags": [
          "Cart"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.ApplyCouponRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.ApplyCouponRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.ApplyCouponRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Sales.Carts.CartDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/cart/coupon/remove": {
      "post": {
        "tags": [
          "Cart"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Sales.Carts.CartDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/catalog/languages": {
      "post": {
        "tags": [
          "Catalog"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v1/catalog/categories/tree": {
      "post": {
        "tags": [
          "Catalog"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Venz.Application.Catalog.Categories.CategoryTreeNode"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/catalog/categories/get": {
      "post": {
        "tags": [
          "Catalog"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.CatalogSlugRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.CatalogSlugRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.CatalogSlugRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Catalog.Categories.CategoryDetailDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/catalog/brands": {
      "post": {
        "tags": [
          "Catalog"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.CatalogBrandListRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.CatalogBrandListRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.CatalogBrandListRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Common.Models.PagedResult`1[[Venz.Application.Catalog.Brands.BrandDto, Venz.Application, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/catalog/products": {
      "post": {
        "tags": [
          "Catalog"
        ],
        "summary": "Vitrin ürün listesi (sayfalı kartlar).",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.CatalogProductListRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.CatalogProductListRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.CatalogProductListRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Common.Models.PagedResult`1[[Venz.Application.Catalog.Storefront.StorefrontProductCardDto, Venz.Application, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/catalog/products/by-sku": {
      "post": {
        "tags": [
          "Catalog"
        ],
        "summary": "Vitrin ürün detayı: varyant, özellik, fiyat ve stok. Dil `lang` veya Accept-Language.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.CatalogSkuRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.CatalogSkuRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.CatalogSkuRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Catalog.Storefront.StorefrontProductDetailDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/catalog/products/by-slug": {
      "post": {
        "tags": [
          "Catalog"
        ],
        "summary": "Vitrin ürün detayı: varyant, özellik, fiyat ve stok. Dil `lang` veya Accept-Language.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.CatalogSlugRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.CatalogSlugRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.CatalogSlugRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Catalog.Storefront.StorefrontProductDetailDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/colors/list": {
      "post": {
        "tags": [
          "Colors"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.ColorListRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.ColorListRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.ColorListRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Common.Models.PagedResult`1[[Venz.Application.Catalog.Colors.ColorDto, Venz.Application, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/config": {
      "post": {
        "tags": [
          "Config"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.PublicConfigDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/integrations/einvoice/ozon/process": {
      "post": {
        "tags": [
          "EInvoiceIntegrations"
        ],
        "summary": "Ozon siparişlerini çeker, e-arşiv numarası verir ve Sovos'a gönderir.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.EInvoiceIntegrationsController.OzonEInvoiceProcessRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.EInvoiceIntegrationsController.OzonEInvoiceProcessRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.EInvoiceIntegrationsController.OzonEInvoiceProcessRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.EInvoiceIntegrationsController.OzonEInvoiceProcessResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/orders/list": {
      "post": {
        "tags": [
          "Orders"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.OrderListRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.OrderListRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.OrderListRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Common.Models.PagedResult`1[[Venz.Application.Sales.Orders.OrderSummaryDto, Venz.Application, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/orders/get": {
      "post": {
        "tags": [
          "Orders"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.OrderIdRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.OrderIdRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.OrderIdRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Sales.Orders.OrderDetailDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/orders/place": {
      "post": {
        "tags": [
          "Orders"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.PlaceOrderRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.PlaceOrderRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.PlaceOrderRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Sales.Orders.PlaceOrderResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/payments/gateways": {
      "post": {
        "tags": [
          "Payments"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.PaymentGatewayInfo"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/payments/initiate": {
      "post": {
        "tags": [
          "Payments"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.InitiatePaymentRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.InitiatePaymentRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.InitiatePaymentRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Sales.Payments.InitiatePaymentResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/products/list": {
      "post": {
        "tags": [
          "Products"
        ],
        "summary": "Yönetim ürün listesi (sayfalı).",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.ProductListRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.ProductListRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.ProductListRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Common.Models.PagedResult`1[[Venz.Application.Catalog.Products.ProductListItemDto, Venz.Application, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/products/get": {
      "post": {
        "tags": [
          "Products"
        ],
        "summary": "Ürün detayı: çeviriler, varyant, stok, özellik, pazaryeri profilleri.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.ProductIdRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.ProductIdRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.ProductIdRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Catalog.Products.ProductDetailDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/products/create": {
      "post": {
        "tags": [
          "Products"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Application.Catalog.Products.ProductUpsertModel"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Application.Catalog.Products.ProductUpsertModel"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Application.Catalog.Products.ProductUpsertModel"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Catalog.Products.ProductDetailDto"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/products/update": {
      "post": {
        "tags": [
          "Products"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.ProductUpdateRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.ProductUpdateRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.ProductUpdateRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Catalog.Products.ProductDetailDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/products/delete": {
      "post": {
        "tags": [
          "Products"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.ProductIdRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.ProductIdRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.ProductIdRequest"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "No Content"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/products/attributes": {
      "post": {
        "tags": [
          "Products"
        ],
        "summary": "Ürün özellik değerlerini değiştirir (HesapOn stock-items attributes).",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.SetProductAttributesRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.SetProductAttributesRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.SetProductAttributesRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Catalog.Products.ProductDetailDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/products/price": {
      "post": {
        "tags": [
          "Products"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.SetProductPriceRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.SetProductPriceRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.SetProductPriceRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Catalog.Products.ProductDetailDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/products/stock": {
      "post": {
        "tags": [
          "Products"
        ],
        "summary": "Varyantsız ürün stoğu. Varyantlı üründe 409.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.SetStockRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.SetStockRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.SetStockRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Catalog.Products.ProductDetailDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/products/variants": {
      "post": {
        "tags": [
          "Products"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.ProductIdRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.ProductIdRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.ProductIdRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Venz.Application.Catalog.Products.ProductVariantDto"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/products/variants/create": {
      "post": {
        "tags": [
          "Products"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.VariantWriteRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.VariantWriteRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.VariantWriteRequest"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Catalog.Products.ProductDetailDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/products/variants/update": {
      "post": {
        "tags": [
          "Products"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.VariantWriteRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.VariantWriteRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.VariantWriteRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Catalog.Products.ProductDetailDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/products/variants/delete": {
      "post": {
        "tags": [
          "Products"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.VariantIdRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.VariantIdRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.VariantIdRequest"
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "No Content"
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/products/variants/price": {
      "post": {
        "tags": [
          "Products"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.SetVariantPriceRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.SetVariantPriceRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.SetVariantPriceRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Catalog.Products.ProductDetailDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/products/variants/stock": {
      "post": {
        "tags": [
          "Products"
        ],
        "summary": "Varyant stoğunu mutlak adet olarak yazar.",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.SetVariantStockRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.SetVariantStockRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.SetVariantStockRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Catalog.Products.ProductDetailDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/recommendations": {
      "post": {
        "tags": [
          "Recommendations"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.RecommendationsRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.RecommendationsRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.RecommendationsRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Venz.Application.Catalog.Storefront.StorefrontProductCardDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/shipping/providers": {
      "post": {
        "tags": [
          "Shipping"
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.ShippingProviderInfo"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/shipping/quote": {
      "post": {
        "tags": [
          "Shipping"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.ShippingQuoteRequestModel"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.ShippingQuoteRequestModel"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.ShippingQuoteRequestModel"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Venz.Application.Sales.Shipping.ShippingQuoteOption"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/shipping/track": {
      "post": {
        "tags": [
          "Shipping"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.ShippingTrackRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.ShippingTrackRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.ShippingTrackRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Sales.Shipping.Abstractions.ShippingTrackingResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/sizes/list": {
      "post": {
        "tags": [
          "Sizes"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.SizeListRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.SizeListRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.SizeListRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Venz.Application.Common.Models.PagedResult`1[[Venz.Application.Catalog.Sizes.SizeDto, Venz.Application, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]"
                }
              }
            }
          }
        }
      }
    },
    "/health": {
      "get": {
        "tags": [
          "Venz.Web.Api"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "Microsoft.AspNetCore.Mvc.ProblemDetails": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "nullable": true
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "detail": {
            "type": "string",
            "nullable": true
          },
          "instance": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": { }
      },
      "Venz.Application.Catalog.Attributes.AttributeTypeCatalogDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "marketplaceMaps": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Attributes.MarketplaceAttributeTypeMapDto"
            }
          },
          "values": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Attributes.AttributeTypeCatalogValueDto"
            }
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Attributes.AttributeTypeCatalogValueDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "marketplaceMaps": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Attributes.MarketplaceAttributeValueMapDto"
            }
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Attributes.AttributeTypeDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string"
          },
          "isFilterable": {
            "type": "boolean"
          },
          "isRequired": {
            "type": "boolean"
          },
          "sortOrder": {
            "type": "integer",
            "format": "int32"
          },
          "isActive": {
            "type": "boolean"
          },
          "translations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Common.TranslationDto"
            }
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Attributes.AttributeValueDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "attributeTypeId": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string"
          },
          "sortOrder": {
            "type": "integer",
            "format": "int32"
          },
          "isActive": {
            "type": "boolean"
          },
          "translations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Common.TranslationDto"
            }
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Attributes.MarketplaceAttributeTypeMapDto": {
        "type": "object",
        "properties": {
          "providerCode": {
            "type": "string"
          },
          "marketplaceAttributeCode": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Attributes.MarketplaceAttributeValueMapDto": {
        "type": "object",
        "properties": {
          "providerCode": {
            "type": "string"
          },
          "marketplaceAttributeValueCode": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Brands.BrandDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string"
          },
          "slug": {
            "type": "string",
            "nullable": true
          },
          "logoPath": {
            "type": "string",
            "nullable": true
          },
          "isActive": {
            "type": "boolean"
          },
          "sortOrder": {
            "type": "integer",
            "format": "int32"
          },
          "translations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Common.TranslationDto"
            }
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Categories.CategoryBreadcrumbItem": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          },
          "name": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Categories.CategoryDetailDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string"
          },
          "parentId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "level": {
            "type": "integer",
            "format": "int32"
          },
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "metaTitle": {
            "type": "string",
            "nullable": true
          },
          "metaDescription": {
            "type": "string",
            "nullable": true
          },
          "metaKeywords": {
            "type": "string",
            "nullable": true
          },
          "iconCss": {
            "type": "string",
            "nullable": true
          },
          "imagePath": {
            "type": "string",
            "nullable": true
          },
          "listingModeOverride": {
            "$ref": "#/components/schemas/Venz.Domain.Catalog.Enums.ListingMode"
          },
          "breadcrumb": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Categories.CategoryBreadcrumbItem"
            }
          },
          "children": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Categories.CategoryBreadcrumbItem"
            }
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Categories.CategoryMarketPlaceMapBadge": {
        "type": "object",
        "properties": {
          "providerCode": {
            "type": "string"
          },
          "providerDisplayName": {
            "type": "string"
          },
          "externalCategoryId": {
            "type": "string"
          },
          "externalCategoryPath": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Categories.CategoryTreeNode": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          },
          "displayName": {
            "type": "string"
          },
          "menuLabel": {
            "type": "string"
          },
          "parentId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "level": {
            "type": "integer",
            "format": "int32"
          },
          "sortOrder": {
            "type": "integer",
            "format": "int32"
          },
          "isActive": {
            "type": "boolean"
          },
          "showInMenu": {
            "type": "boolean"
          },
          "isMain": {
            "type": "boolean"
          },
          "marketPlaceMaps": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Categories.CategoryMarketPlaceMapBadge"
            }
          },
          "children": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Categories.CategoryTreeNode"
            }
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Colors.ColorDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string"
          },
          "erpCode": {
            "type": "string",
            "nullable": true
          },
          "hexCode": {
            "type": "string",
            "nullable": true
          },
          "swatchImagePath": {
            "type": "string",
            "nullable": true
          },
          "isActive": {
            "type": "boolean"
          },
          "sortOrder": {
            "type": "integer",
            "format": "int32"
          },
          "translations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Common.TranslationDto"
            }
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Common.TranslationDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "languageCode": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "nameOverridden": {
            "type": "boolean"
          },
          "description": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Products.ProductCategoryDto": {
        "type": "object",
        "properties": {
          "categoryId": {
            "type": "string",
            "format": "uuid"
          },
          "categoryCode": {
            "type": "string"
          },
          "isPrimary": {
            "type": "boolean"
          },
          "sortOrder": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Products.ProductCategoryInput": {
        "type": "object",
        "properties": {
          "categoryId": {
            "type": "string",
            "format": "uuid"
          },
          "isPrimary": {
            "type": "boolean"
          },
          "sortOrder": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Products.ProductConfiguratorRules.SelectionInput": {
        "type": "object",
        "properties": {
          "optionId": {
            "type": "string",
            "format": "uuid"
          },
          "choiceId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "textValue": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Products.ProductDetailDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "sku": {
            "type": "string"
          },
          "erpRef": {
            "type": "string",
            "nullable": true
          },
          "erpSource": {
            "type": "string",
            "nullable": true
          },
          "barcode": {
            "type": "string",
            "nullable": true
          },
          "gtipCode": {
            "type": "string",
            "nullable": true
          },
          "videoUrl": {
            "type": "string",
            "nullable": true
          },
          "isDigital": {
            "type": "boolean"
          },
          "digitalDownloadUrl": {
            "type": "string",
            "nullable": true
          },
          "allowsPersonalization": {
            "type": "boolean"
          },
          "personalizationLabel": {
            "type": "string",
            "nullable": true
          },
          "personalizationMaxLength": {
            "type": "integer",
            "format": "int32"
          },
          "personalizationRequired": {
            "type": "boolean"
          },
          "isBundle": {
            "type": "boolean"
          },
          "isAssortment": {
            "type": "boolean"
          },
          "isConfigurable": {
            "type": "boolean"
          },
          "isSubscription": {
            "type": "boolean"
          },
          "subscriptionInterval": {
            "$ref": "#/components/schemas/Venz.Domain.Catalog.Enums.SubscriptionInterval"
          },
          "brandId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "unitId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "variantType": {
            "$ref": "#/components/schemas/Venz.Domain.Catalog.Enums.VariantType"
          },
          "isActive": {
            "type": "boolean"
          },
          "isFeatured": {
            "type": "boolean"
          },
          "isNew": {
            "type": "boolean"
          },
          "isBestSeller": {
            "type": "boolean"
          },
          "publishedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "listPrice": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "salesPrice": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "currency": {
            "type": "string"
          },
          "vatRate": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "stockQuantity": {
            "type": "integer",
            "format": "int32"
          },
          "stockReserved": {
            "type": "integer",
            "format": "int32"
          },
          "weight": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "width": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "height": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "depth": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "sortOrder": {
            "type": "integer",
            "format": "int32"
          },
          "viewCount": {
            "type": "integer",
            "format": "int32"
          },
          "averageRating": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "ratingCount": {
            "type": "integer",
            "format": "int32"
          },
          "translations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Products.ProductTranslationDto"
            }
          },
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Products.ProductCategoryDto"
            }
          },
          "attributeValueIds": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            }
          },
          "attributeValues": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Attributes.AttributeValueDto"
            }
          },
          "variants": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Products.ProductVariantDto"
            }
          },
          "images": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Products.ProductImageDto"
            }
          },
          "marketPlaceProfiles": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Products.ProductMarketPlaceProfileDto"
            }
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Products.ProductImageDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "variantId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "colorId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "filePath": {
            "type": "string"
          },
          "altText": {
            "type": "string",
            "nullable": true
          },
          "sortOrder": {
            "type": "integer",
            "format": "int32"
          },
          "isDefault": {
            "type": "boolean"
          },
          "marketPlaceProviderCode": {
            "type": "string",
            "nullable": true
          },
          "width": {
            "type": "integer",
            "format": "int32"
          },
          "height": {
            "type": "integer",
            "format": "int32"
          },
          "fileSize": {
            "type": "integer",
            "format": "int64"
          },
          "contentType": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Products.ProductListItemDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "sku": {
            "type": "string"
          },
          "barcode": {
            "type": "string",
            "nullable": true
          },
          "brandId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "brandName": {
            "type": "string",
            "nullable": true
          },
          "variantType": {
            "$ref": "#/components/schemas/Venz.Domain.Catalog.Enums.VariantType"
          },
          "isActive": {
            "type": "boolean"
          },
          "isFeatured": {
            "type": "boolean"
          },
          "isNew": {
            "type": "boolean"
          },
          "isBestSeller": {
            "type": "boolean"
          },
          "listPrice": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "salesPrice": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "currency": {
            "type": "string"
          },
          "sortOrder": {
            "type": "integer",
            "format": "int32"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "slug": {
            "type": "string",
            "nullable": true
          },
          "primaryImagePath": {
            "type": "string",
            "nullable": true
          },
          "variantCount": {
            "type": "integer",
            "format": "int32"
          },
          "erpSource": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Products.ProductMarketPlaceProfileDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "providerCode": {
            "type": "string"
          },
          "providerDisplayName": {
            "type": "string"
          },
          "isEnabled": {
            "type": "boolean"
          },
          "sku": {
            "type": "string",
            "nullable": true
          },
          "barcode": {
            "type": "string",
            "nullable": true
          },
          "listPrice": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "salesPrice": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "variantId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Products.ProductMarketPlaceProfileInput": {
        "type": "object",
        "properties": {
          "providerCode": {
            "type": "string"
          },
          "isEnabled": {
            "type": "boolean"
          },
          "sku": {
            "type": "string",
            "nullable": true
          },
          "barcode": {
            "type": "string",
            "nullable": true
          },
          "listPrice": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "salesPrice": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "variantId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Products.ProductTranslationDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "languageCode": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "nameOverridden": {
            "type": "boolean"
          },
          "slug": {
            "type": "string"
          },
          "shortDescription": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "metaTitle": {
            "type": "string",
            "nullable": true
          },
          "metaDescription": {
            "type": "string",
            "nullable": true
          },
          "metaKeywords": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Products.ProductTranslationInput": {
        "type": "object",
        "properties": {
          "languageCode": {
            "type": "string"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "nameOverridden": {
            "type": "boolean",
            "nullable": true
          },
          "slug": {
            "type": "string",
            "nullable": true
          },
          "shortDescription": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "metaTitle": {
            "type": "string",
            "nullable": true
          },
          "metaDescription": {
            "type": "string",
            "nullable": true
          },
          "metaKeywords": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Products.ProductUpsertModel": {
        "type": "object",
        "properties": {
          "sku": {
            "type": "string"
          },
          "erpRef": {
            "type": "string",
            "nullable": true
          },
          "erpSource": {
            "type": "string",
            "nullable": true
          },
          "barcode": {
            "type": "string",
            "nullable": true
          },
          "gtipCode": {
            "type": "string",
            "nullable": true
          },
          "videoUrl": {
            "type": "string",
            "nullable": true
          },
          "isDigital": {
            "type": "boolean"
          },
          "digitalDownloadUrl": {
            "type": "string",
            "nullable": true
          },
          "allowsPersonalization": {
            "type": "boolean"
          },
          "personalizationLabel": {
            "type": "string",
            "nullable": true
          },
          "personalizationMaxLength": {
            "type": "integer",
            "format": "int32"
          },
          "personalizationRequired": {
            "type": "boolean"
          },
          "isBundle": {
            "type": "boolean"
          },
          "isAssortment": {
            "type": "boolean"
          },
          "isConfigurable": {
            "type": "boolean"
          },
          "isSubscription": {
            "type": "boolean"
          },
          "subscriptionInterval": {
            "$ref": "#/components/schemas/Venz.Domain.Catalog.Enums.SubscriptionInterval"
          },
          "brandId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "unitId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "variantType": {
            "$ref": "#/components/schemas/Venz.Domain.Catalog.Enums.VariantType"
          },
          "isActive": {
            "type": "boolean"
          },
          "isFeatured": {
            "type": "boolean"
          },
          "isNew": {
            "type": "boolean"
          },
          "isBestSeller": {
            "type": "boolean"
          },
          "publishedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "listPrice": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "salesPrice": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "currency": {
            "type": "string"
          },
          "vatRate": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "stockQuantity": {
            "type": "integer",
            "format": "int32"
          },
          "weight": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "width": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "height": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "depth": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "sortOrder": {
            "type": "integer",
            "format": "int32"
          },
          "translations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Products.ProductTranslationInput"
            }
          },
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Products.ProductCategoryInput"
            }
          },
          "attributeValueIds": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            }
          },
          "marketPlaceProfiles": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Products.ProductMarketPlaceProfileInput"
            }
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Products.ProductVariantDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "colorId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "size1Id": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "size2Id": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "sku": {
            "type": "string"
          },
          "barcode": {
            "type": "string",
            "nullable": true
          },
          "erpRef": {
            "type": "string",
            "nullable": true
          },
          "listPrice": {
            "type": "number",
            "format": "double"
          },
          "salesPrice": {
            "type": "number",
            "format": "double"
          },
          "currency": {
            "type": "string"
          },
          "weight": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "isActive": {
            "type": "boolean"
          },
          "sortOrder": {
            "type": "integer",
            "format": "int32"
          },
          "stockQuantity": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "stockReserved": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "stockAvailable": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Products.Variants.ProductVariantUpsertModel": {
        "type": "object",
        "properties": {
          "colorId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "size1Id": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "size2Id": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "sku": {
            "type": "string"
          },
          "barcode": {
            "type": "string",
            "nullable": true
          },
          "erpRef": {
            "type": "string",
            "nullable": true
          },
          "listPrice": {
            "type": "number",
            "format": "double"
          },
          "salesPrice": {
            "type": "number",
            "format": "double"
          },
          "currency": {
            "type": "string"
          },
          "weight": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "isActive": {
            "type": "boolean"
          },
          "sortOrder": {
            "type": "integer",
            "format": "int32"
          },
          "initialStock": {
            "type": "integer",
            "format": "int32"
          },
          "lowStockThreshold": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Sizes.SizeDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string"
          },
          "group": {
            "type": "string"
          },
          "isActive": {
            "type": "boolean"
          },
          "sortOrder": {
            "type": "integer",
            "format": "int32"
          },
          "translations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Common.TranslationDto"
            }
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Storefront.StorefrontAssortmentLineDto": {
        "type": "object",
        "properties": {
          "variantId": {
            "type": "string",
            "format": "uuid"
          },
          "label": {
            "type": "string"
          },
          "quantity": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Storefront.StorefrontBundleComponentDto": {
        "type": "object",
        "properties": {
          "productId": {
            "type": "string",
            "format": "uuid"
          },
          "sku": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "variantSku": {
            "type": "string",
            "nullable": true
          },
          "quantity": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Storefront.StorefrontCategoryRef": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "slug": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "isPrimary": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Storefront.StorefrontColorOption": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "slug": {
            "type": "string"
          },
          "hexCode": {
            "type": "string",
            "nullable": true
          },
          "imagePath": {
            "type": "string",
            "nullable": true
          },
          "hasStock": {
            "type": "boolean"
          },
          "outOfStockSince": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Storefront.StorefrontConfigChoiceDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "label": {
            "type": "string"
          },
          "priceDelta": {
            "type": "number",
            "format": "double"
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Storefront.StorefrontConfigOptionDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "label": {
            "type": "string"
          },
          "optionType": {
            "type": "string"
          },
          "isRequired": {
            "type": "boolean"
          },
          "maxLength": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "choices": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Storefront.StorefrontConfigChoiceDto"
            }
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Storefront.StorefrontProductAttribute": {
        "type": "object",
        "properties": {
          "typeCode": {
            "type": "string"
          },
          "typeName": {
            "type": "string"
          },
          "values": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Storefront.StorefrontProductCardDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "sku": {
            "type": "string"
          },
          "brandName": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          },
          "shortDescription": {
            "type": "string",
            "nullable": true
          },
          "listPrice": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "salesPrice": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "campaignPrice": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "campaignName": {
            "type": "string",
            "nullable": true
          },
          "currency": {
            "type": "string"
          },
          "isNew": {
            "type": "boolean"
          },
          "isFeatured": {
            "type": "boolean"
          },
          "isBestSeller": {
            "type": "boolean"
          },
          "isDigital": {
            "type": "boolean"
          },
          "isSubscription": {
            "type": "boolean"
          },
          "subscriptionLabel": {
            "type": "string",
            "nullable": true
          },
          "primaryImagePath": {
            "type": "string",
            "nullable": true
          },
          "hoverImagePath": {
            "type": "string",
            "nullable": true
          },
          "imagePaths": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "colors": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Storefront.StorefrontColorOption"
            }
          },
          "hasStock": {
            "type": "boolean"
          },
          "outOfStockSince": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "quickAddOptions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Storefront.StorefrontProductCardVariantOption"
            }
          },
          "defaultVariantId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Storefront.StorefrontProductCardVariantOption": {
        "type": "object",
        "properties": {
          "variantId": {
            "type": "string",
            "format": "uuid"
          },
          "label": {
            "type": "string"
          },
          "sortOrder": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Storefront.StorefrontProductColor": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "slug": {
            "type": "string"
          },
          "hexCode": {
            "type": "string",
            "nullable": true
          },
          "sortOrder": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Storefront.StorefrontProductDetailDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "sku": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          },
          "brandName": {
            "type": "string",
            "nullable": true
          },
          "brandId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "shortDescription": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "metaTitle": {
            "type": "string",
            "nullable": true
          },
          "metaDescription": {
            "type": "string",
            "nullable": true
          },
          "metaKeywords": {
            "type": "string",
            "nullable": true
          },
          "variantType": {
            "$ref": "#/components/schemas/Venz.Domain.Catalog.Enums.VariantType"
          },
          "listPrice": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "salesPrice": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "currency": {
            "type": "string"
          },
          "vatRate": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "averageRating": {
            "type": "number",
            "format": "double"
          },
          "ratingCount": {
            "type": "integer",
            "format": "int32"
          },
          "isNew": {
            "type": "boolean"
          },
          "isBestSeller": {
            "type": "boolean"
          },
          "isDigital": {
            "type": "boolean"
          },
          "isFeatured": {
            "type": "boolean"
          },
          "stock": {
            "type": "integer",
            "format": "int32"
          },
          "stockUnlimited": {
            "type": "boolean"
          },
          "allowsPersonalization": {
            "type": "boolean"
          },
          "personalizationLabel": {
            "type": "string",
            "nullable": true
          },
          "personalizationMaxLength": {
            "type": "integer",
            "format": "int32"
          },
          "personalizationRequired": {
            "type": "boolean"
          },
          "isBundle": {
            "type": "boolean"
          },
          "bundleComponents": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Storefront.StorefrontBundleComponentDto"
            }
          },
          "isAssortment": {
            "type": "boolean"
          },
          "assortmentLines": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Storefront.StorefrontAssortmentLineDto"
            }
          },
          "isConfigurable": {
            "type": "boolean"
          },
          "configOptions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Storefront.StorefrontConfigOptionDto"
            }
          },
          "isSubscription": {
            "type": "boolean"
          },
          "subscriptionLabel": {
            "type": "string",
            "nullable": true
          },
          "videoUrl": {
            "type": "string",
            "nullable": true
          },
          "videoEmbedUrl": {
            "type": "string",
            "nullable": true
          },
          "videoIsDirectMedia": {
            "type": "boolean"
          },
          "images": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Storefront.StorefrontProductImage"
            }
          },
          "variants": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Storefront.StorefrontProductVariant"
            }
          },
          "colors": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Storefront.StorefrontProductColor"
            }
          },
          "sizes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Storefront.StorefrontProductSize"
            }
          },
          "attributes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Storefront.StorefrontProductAttribute"
            }
          },
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Storefront.StorefrontCategoryRef"
            }
          },
          "selectedColorSlug": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Storefront.StorefrontProductImage": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "filePath": {
            "type": "string"
          },
          "colorId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "variantId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "altText": {
            "type": "string",
            "nullable": true
          },
          "sortOrder": {
            "type": "integer",
            "format": "int32"
          },
          "isDefault": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Storefront.StorefrontProductSize": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "group": {
            "type": "string"
          },
          "sortOrder": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Storefront.StorefrontProductVariant": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "colorId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "size1Id": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "size2Id": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "sku": {
            "type": "string",
            "nullable": true
          },
          "barcode": {
            "type": "string",
            "nullable": true
          },
          "listPrice": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "salesPrice": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "campaignPrice": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "campaignName": {
            "type": "string",
            "nullable": true
          },
          "currency": {
            "type": "string",
            "nullable": true
          },
          "stock": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Catalog.Storefront.StorefrontSortBy": {
        "enum": [
          0,
          1,
          2,
          3,
          4,
          5
        ],
        "type": "integer",
        "format": "int32"
      },
      "Venz.Application.Common.Models.PagedResult`1[[Venz.Application.Catalog.Attributes.AttributeTypeDto, Venz.Application, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Attributes.AttributeTypeDto"
            }
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "page": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "hasPrevious": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNext": {
            "type": "boolean",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Common.Models.PagedResult`1[[Venz.Application.Catalog.Brands.BrandDto, Venz.Application, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Brands.BrandDto"
            }
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "page": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "hasPrevious": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNext": {
            "type": "boolean",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Common.Models.PagedResult`1[[Venz.Application.Catalog.Colors.ColorDto, Venz.Application, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Colors.ColorDto"
            }
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "page": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "hasPrevious": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNext": {
            "type": "boolean",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Common.Models.PagedResult`1[[Venz.Application.Catalog.Products.ProductListItemDto, Venz.Application, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Products.ProductListItemDto"
            }
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "page": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "hasPrevious": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNext": {
            "type": "boolean",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Common.Models.PagedResult`1[[Venz.Application.Catalog.Sizes.SizeDto, Venz.Application, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Sizes.SizeDto"
            }
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "page": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "hasPrevious": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNext": {
            "type": "boolean",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Common.Models.PagedResult`1[[Venz.Application.Catalog.Storefront.StorefrontProductCardDto, Venz.Application, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Storefront.StorefrontProductCardDto"
            }
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "page": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "hasPrevious": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNext": {
            "type": "boolean",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Common.Models.PagedResult`1[[Venz.Application.Sales.Orders.OrderSummaryDto, Venz.Application, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Sales.Orders.OrderSummaryDto"
            }
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "page": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "hasPrevious": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNext": {
            "type": "boolean",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Sales.Addresses.AddressDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "userId": {
            "type": "string",
            "format": "uuid"
          },
          "title": {
            "type": "string"
          },
          "type": {
            "$ref": "#/components/schemas/Venz.Domain.Sales.Enums.AddressType"
          },
          "kind": {
            "$ref": "#/components/schemas/Venz.Domain.Sales.Enums.AddressKind"
          },
          "firstName": {
            "type": "string"
          },
          "lastName": {
            "type": "string"
          },
          "phone": {
            "type": "string"
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "country": {
            "type": "string"
          },
          "city": {
            "type": "string"
          },
          "district": {
            "type": "string"
          },
          "neighborhood": {
            "type": "string",
            "nullable": true
          },
          "postalCode": {
            "type": "string",
            "nullable": true
          },
          "line1": {
            "type": "string"
          },
          "line2": {
            "type": "string",
            "nullable": true
          },
          "identityNumber": {
            "type": "string",
            "nullable": true
          },
          "companyName": {
            "type": "string",
            "nullable": true
          },
          "taxOffice": {
            "type": "string",
            "nullable": true
          },
          "taxNumber": {
            "type": "string",
            "nullable": true
          },
          "isDefaultShipping": {
            "type": "boolean"
          },
          "isDefaultBilling": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Sales.Addresses.AddressUpsertDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "title": {
            "type": "string"
          },
          "type": {
            "$ref": "#/components/schemas/Venz.Domain.Sales.Enums.AddressType"
          },
          "kind": {
            "$ref": "#/components/schemas/Venz.Domain.Sales.Enums.AddressKind"
          },
          "firstName": {
            "type": "string"
          },
          "lastName": {
            "type": "string"
          },
          "phone": {
            "type": "string"
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "country": {
            "type": "string"
          },
          "city": {
            "type": "string"
          },
          "district": {
            "type": "string"
          },
          "neighborhood": {
            "type": "string",
            "nullable": true
          },
          "postalCode": {
            "type": "string",
            "nullable": true
          },
          "line1": {
            "type": "string"
          },
          "line2": {
            "type": "string",
            "nullable": true
          },
          "identityNumber": {
            "type": "string",
            "nullable": true
          },
          "companyName": {
            "type": "string",
            "nullable": true
          },
          "taxOffice": {
            "type": "string",
            "nullable": true
          },
          "taxNumber": {
            "type": "string",
            "nullable": true
          },
          "isDefaultShipping": {
            "type": "boolean"
          },
          "isDefaultBilling": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Sales.Carts.CartAppliedCampaignDto": {
        "type": "object",
        "properties": {
          "campaignId": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "type": {
            "type": "string"
          },
          "couponCode": {
            "type": "string",
            "nullable": true
          },
          "amount": {
            "type": "number",
            "format": "double"
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Sales.Carts.CartDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "currency": {
            "type": "string"
          },
          "couponCode": {
            "type": "string",
            "nullable": true
          },
          "subTotal": {
            "type": "number",
            "format": "double"
          },
          "discountAmount": {
            "type": "number",
            "format": "double"
          },
          "total": {
            "type": "number",
            "format": "double"
          },
          "itemCount": {
            "type": "integer",
            "format": "int32"
          },
          "requiresShipping": {
            "type": "boolean"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Sales.Carts.CartItemDto"
            }
          },
          "appliedCampaigns": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Sales.Carts.CartAppliedCampaignDto"
            }
          },
          "rejectedCoupons": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Sales.Carts.CartItemDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "productId": {
            "type": "string",
            "format": "uuid"
          },
          "productSlug": {
            "type": "string",
            "nullable": true
          },
          "variantId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "productName": {
            "type": "string"
          },
          "variantText": {
            "type": "string",
            "nullable": true
          },
          "imagePath": {
            "type": "string",
            "nullable": true
          },
          "quantity": {
            "type": "integer",
            "format": "int32"
          },
          "unitPrice": {
            "type": "number",
            "format": "double"
          },
          "unitListPrice": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "lineTotal": {
            "type": "number",
            "format": "double",
            "readOnly": true
          },
          "currency": {
            "type": "string"
          },
          "isDigital": {
            "type": "boolean"
          },
          "personalizationText": {
            "type": "string",
            "nullable": true
          },
          "bundleContents": {
            "type": "string",
            "nullable": true
          },
          "configurationSummary": {
            "type": "string",
            "nullable": true
          },
          "subscriptionLabel": {
            "type": "string",
            "nullable": true
          },
          "lineDiscountAmount": {
            "type": "number",
            "format": "double"
          },
          "campaignName": {
            "type": "string",
            "nullable": true
          },
          "hasCampaignDiscount": {
            "type": "boolean",
            "readOnly": true
          },
          "lineTotalAfterDiscount": {
            "type": "number",
            "format": "double",
            "readOnly": true
          },
          "unitCampaignPrice": {
            "type": "number",
            "format": "double",
            "readOnly": true
          },
          "stockOnHand": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Sales.Orders.OrderAddressDto": {
        "type": "object",
        "properties": {
          "kind": {
            "$ref": "#/components/schemas/Venz.Domain.Sales.Enums.AddressKind"
          },
          "firstName": {
            "type": "string"
          },
          "lastName": {
            "type": "string"
          },
          "phone": {
            "type": "string"
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "country": {
            "type": "string"
          },
          "city": {
            "type": "string"
          },
          "district": {
            "type": "string"
          },
          "neighborhood": {
            "type": "string",
            "nullable": true
          },
          "postalCode": {
            "type": "string",
            "nullable": true
          },
          "line1": {
            "type": "string"
          },
          "line2": {
            "type": "string",
            "nullable": true
          },
          "companyName": {
            "type": "string",
            "nullable": true
          },
          "taxOffice": {
            "type": "string",
            "nullable": true
          },
          "taxNumber": {
            "type": "string",
            "nullable": true
          },
          "identityNumber": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Sales.Orders.OrderAddressInput": {
        "type": "object",
        "properties": {
          "kind": {
            "$ref": "#/components/schemas/Venz.Domain.Sales.Enums.AddressKind"
          },
          "firstName": {
            "type": "string"
          },
          "lastName": {
            "type": "string"
          },
          "phone": {
            "type": "string"
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "country": {
            "type": "string"
          },
          "city": {
            "type": "string"
          },
          "district": {
            "type": "string"
          },
          "neighborhood": {
            "type": "string",
            "nullable": true
          },
          "postalCode": {
            "type": "string",
            "nullable": true
          },
          "line1": {
            "type": "string"
          },
          "line2": {
            "type": "string",
            "nullable": true
          },
          "identityNumber": {
            "type": "string",
            "nullable": true
          },
          "companyName": {
            "type": "string",
            "nullable": true
          },
          "taxOffice": {
            "type": "string",
            "nullable": true
          },
          "taxNumber": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Sales.Orders.OrderDetailDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "orderNumber": {
            "type": "string"
          },
          "userId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "isGuest": {
            "type": "boolean"
          },
          "customerEmail": {
            "type": "string"
          },
          "customerPhone": {
            "type": "string"
          },
          "status": {
            "$ref": "#/components/schemas/Venz.Domain.Sales.Enums.OrderStatus"
          },
          "placedAt": {
            "type": "string",
            "format": "date-time"
          },
          "currency": {
            "type": "string"
          },
          "subTotal": {
            "type": "number",
            "format": "double"
          },
          "discountAmount": {
            "type": "number",
            "format": "double"
          },
          "shippingFee": {
            "type": "number",
            "format": "double"
          },
          "taxAmount": {
            "type": "number",
            "format": "double"
          },
          "grandTotal": {
            "type": "number",
            "format": "double"
          },
          "couponCode": {
            "type": "string",
            "nullable": true
          },
          "shippingProviderCode": {
            "type": "string",
            "nullable": true
          },
          "shippingMethodName": {
            "type": "string",
            "nullable": true
          },
          "customerNote": {
            "type": "string",
            "nullable": true
          },
          "adminNote": {
            "type": "string",
            "nullable": true
          },
          "eArchiveInvoiceNumber": {
            "type": "string",
            "nullable": true
          },
          "eArchiveInvoiceDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "eArchiveSentDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "eInvoiceSent": {
            "type": "boolean"
          },
          "eArchiveUuid": {
            "type": "string",
            "nullable": true
          },
          "eArchiveCancelledAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "cargoSentDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "cargoSent": {
            "type": "boolean"
          },
          "aseCargoShipmentCode": {
            "type": "string",
            "nullable": true
          },
          "cancelledAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "cancellationReason": {
            "type": "string",
            "nullable": true
          },
          "channel": {
            "$ref": "#/components/schemas/Venz.Domain.Sales.Enums.OrderChannel"
          },
          "marketPlaceProviderCode": {
            "type": "string",
            "nullable": true
          },
          "canEdit": {
            "type": "boolean"
          },
          "editLockReason": {
            "type": "string",
            "nullable": true
          },
          "shippingAddress": {
            "$ref": "#/components/schemas/Venz.Application.Sales.Orders.OrderAddressDto"
          },
          "billingAddress": {
            "$ref": "#/components/schemas/Venz.Application.Sales.Orders.OrderAddressDto"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Sales.Orders.OrderItemDto"
            }
          },
          "payments": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Sales.Orders.OrderPaymentDto"
            }
          },
          "shipments": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Sales.Orders.OrderShipmentDto"
            }
          },
          "statusHistory": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Sales.Orders.OrderStatusHistoryDto"
            }
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Sales.Orders.OrderItemDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "productId": {
            "type": "string",
            "format": "uuid"
          },
          "variantId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "sku": {
            "type": "string"
          },
          "variantSku": {
            "type": "string",
            "nullable": true
          },
          "marketPlaceSku": {
            "type": "string",
            "nullable": true
          },
          "productName": {
            "type": "string"
          },
          "variantText": {
            "type": "string",
            "nullable": true
          },
          "personalizationText": {
            "type": "string",
            "nullable": true
          },
          "bundleContents": {
            "type": "string",
            "nullable": true
          },
          "configurationSummary": {
            "type": "string",
            "nullable": true
          },
          "subscriptionLabel": {
            "type": "string",
            "nullable": true
          },
          "imagePath": {
            "type": "string",
            "nullable": true
          },
          "quantity": {
            "type": "integer",
            "format": "int32"
          },
          "unitPrice": {
            "type": "number",
            "format": "double"
          },
          "unitListPrice": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "lineTotal": {
            "type": "number",
            "format": "double"
          },
          "currency": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Sales.Orders.OrderPaymentDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "gatewayCode": {
            "type": "string"
          },
          "status": {
            "$ref": "#/components/schemas/Venz.Domain.Sales.Enums.PaymentStatus"
          },
          "amount": {
            "type": "number",
            "format": "double"
          },
          "currency": {
            "type": "string"
          },
          "installment": {
            "type": "integer",
            "format": "int32"
          },
          "gatewayReference": {
            "type": "string",
            "nullable": true
          },
          "authorizedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "capturedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "failureMessage": {
            "type": "string",
            "nullable": true
          },
          "redirectUrl": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Sales.Orders.OrderShipmentDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "providerCode": {
            "type": "string"
          },
          "status": {
            "$ref": "#/components/schemas/Venz.Domain.Sales.Enums.ShipmentStatus"
          },
          "trackingNumber": {
            "type": "string",
            "nullable": true
          },
          "trackingUrl": {
            "type": "string",
            "nullable": true
          },
          "shippedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "deliveredAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Sales.Orders.OrderStatusHistoryDto": {
        "type": "object",
        "properties": {
          "fromStatus": {
            "$ref": "#/components/schemas/Venz.Domain.Sales.Enums.OrderStatus"
          },
          "toStatus": {
            "$ref": "#/components/schemas/Venz.Domain.Sales.Enums.OrderStatus"
          },
          "changedAt": {
            "type": "string",
            "format": "date-time"
          },
          "changedBy": {
            "type": "string",
            "nullable": true
          },
          "note": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Sales.Orders.OrderSummaryDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "orderNumber": {
            "type": "string"
          },
          "placedAt": {
            "type": "string",
            "format": "date-time"
          },
          "status": {
            "$ref": "#/components/schemas/Venz.Domain.Sales.Enums.OrderStatus"
          },
          "customerEmail": {
            "type": "string"
          },
          "currency": {
            "type": "string"
          },
          "grandTotal": {
            "type": "number",
            "format": "double"
          },
          "itemCount": {
            "type": "integer",
            "format": "int32"
          },
          "paymentStatusLabel": {
            "type": "string",
            "nullable": true
          },
          "shipmentStatusLabel": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Sales.Orders.PlaceOrderResult": {
        "type": "object",
        "properties": {
          "orderId": {
            "type": "string",
            "format": "uuid"
          },
          "orderNumber": {
            "type": "string"
          },
          "grandTotal": {
            "type": "number",
            "format": "double"
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Sales.Payments.InitiatePaymentResult": {
        "type": "object",
        "properties": {
          "paymentId": {
            "type": "string",
            "format": "uuid"
          },
          "merchantReference": {
            "type": "string"
          },
          "gatewayCode": {
            "type": "string"
          },
          "redirectUrl": {
            "type": "string",
            "nullable": true
          },
          "iframeUrl": {
            "type": "string",
            "nullable": true
          },
          "iframeToken": {
            "type": "string",
            "nullable": true
          },
          "html": {
            "type": "string",
            "nullable": true
          },
          "success": {
            "type": "boolean"
          },
          "errorCode": {
            "type": "string",
            "nullable": true
          },
          "errorMessage": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Sales.Shipping.Abstractions.ShippingTrackingEvent": {
        "type": "object",
        "properties": {
          "occurredAt": {
            "type": "string",
            "format": "date-time"
          },
          "status": {
            "$ref": "#/components/schemas/Venz.Domain.Sales.Enums.ShipmentStatus"
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "location": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Sales.Shipping.Abstractions.ShippingTrackingResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "status": {
            "$ref": "#/components/schemas/Venz.Domain.Sales.Enums.ShipmentStatus"
          },
          "events": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Sales.Shipping.Abstractions.ShippingTrackingEvent"
            }
          },
          "errorMessage": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Application.Sales.Shipping.ShippingQuoteOption": {
        "type": "object",
        "properties": {
          "providerCode": {
            "type": "string"
          },
          "displayName": {
            "type": "string"
          },
          "available": {
            "type": "boolean"
          },
          "amount": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "currency": {
            "type": "string",
            "nullable": true
          },
          "serviceCode": {
            "type": "string",
            "nullable": true
          },
          "serviceName": {
            "type": "string",
            "nullable": true
          },
          "estimatedDays": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "isFree": {
            "type": "boolean"
          },
          "reason": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Domain.Catalog.Enums.ListingMode": {
        "enum": [
          0,
          1
        ],
        "type": "integer",
        "format": "int32"
      },
      "Venz.Domain.Catalog.Enums.SubscriptionInterval": {
        "enum": [
          1,
          2,
          3
        ],
        "type": "integer",
        "format": "int32"
      },
      "Venz.Domain.Catalog.Enums.VariantType": {
        "enum": [
          0,
          1,
          2,
          3,
          4
        ],
        "type": "integer",
        "format": "int32"
      },
      "Venz.Domain.Recommendations.RecommendationScenario": {
        "enum": [
          0,
          1,
          2,
          4,
          8,
          16,
          31
        ],
        "type": "integer",
        "format": "int32"
      },
      "Venz.Domain.Sales.Enums.AddressKind": {
        "enum": [
          0,
          1
        ],
        "type": "integer",
        "format": "int32"
      },
      "Venz.Domain.Sales.Enums.AddressType": {
        "enum": [
          0,
          1,
          2
        ],
        "type": "integer",
        "format": "int32"
      },
      "Venz.Domain.Sales.Enums.OrderChannel": {
        "enum": [
          0,
          1,
          2,
          3,
          4,
          5,
          6
        ],
        "type": "integer",
        "format": "int32"
      },
      "Venz.Domain.Sales.Enums.OrderStatus": {
        "enum": [
          0,
          1,
          2,
          3,
          4,
          5,
          6,
          7,
          8,
          9
        ],
        "type": "integer",
        "format": "int32"
      },
      "Venz.Domain.Sales.Enums.PaymentStatus": {
        "enum": [
          0,
          1,
          2,
          3,
          4,
          5,
          6,
          7
        ],
        "type": "integer",
        "format": "int32"
      },
      "Venz.Domain.Sales.Enums.ShipmentStatus": {
        "enum": [
          0,
          1,
          2,
          3,
          4,
          5,
          6,
          7,
          8
        ],
        "type": "integer",
        "format": "int32"
      },
      "Venz.Web.Api.Controllers.V1.AddCartItemRequest": {
        "type": "object",
        "properties": {
          "productId": {
            "type": "string",
            "format": "uuid"
          },
          "variantId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "quantity": {
            "type": "integer",
            "format": "int32"
          },
          "personalizationText": {
            "type": "string",
            "nullable": true
          },
          "configuration": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Venz.Application.Catalog.Products.ProductConfiguratorRules.SelectionInput"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.AddressIdRequest": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.ApplyCouponRequest": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.AttributeTypeCatalogRequest": {
        "type": "object",
        "properties": {
          "attributeTypeId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "providerCode": {
            "type": "string",
            "nullable": true
          },
          "q": {
            "type": "string",
            "nullable": true
          },
          "languageCode": {
            "type": "string",
            "nullable": true
          },
          "isActive": {
            "type": "boolean",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.AttributeTypeListRequest": {
        "type": "object",
        "properties": {
          "q": {
            "type": "string",
            "nullable": true
          },
          "isActive": {
            "type": "boolean",
            "nullable": true
          },
          "page": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.AttributeValueMapListRequest": {
        "type": "object",
        "properties": {
          "attributeValueId": {
            "type": "string",
            "format": "uuid"
          },
          "providerCode": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.AuthResponse": {
        "type": "object",
        "properties": {
          "accessToken": {
            "type": "string"
          },
          "accessTokenExpiresAt": {
            "type": "string",
            "format": "date-time"
          },
          "refreshToken": {
            "type": "string"
          },
          "refreshTokenExpiresAt": {
            "type": "string",
            "format": "date-time"
          },
          "user": {
            "$ref": "#/components/schemas/Venz.Web.Api.Controllers.V1.UserProfileDto"
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.CartItemIdRequest": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.CatalogBrandListRequest": {
        "type": "object",
        "properties": {
          "search": {
            "type": "string",
            "nullable": true
          },
          "page": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.CatalogProductListRequest": {
        "type": "object",
        "properties": {
          "categoryIds": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          },
          "brandIds": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          },
          "colorIds": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          },
          "sizeIds": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          },
          "attributeValueIds": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          },
          "minPrice": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "maxPrice": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "isNew": {
            "type": "boolean",
            "nullable": true
          },
          "isFeatured": {
            "type": "boolean",
            "nullable": true
          },
          "isBestSeller": {
            "type": "boolean",
            "nullable": true
          },
          "search": {
            "type": "string",
            "nullable": true
          },
          "sort": {
            "$ref": "#/components/schemas/Venz.Application.Catalog.Storefront.StorefrontSortBy"
          },
          "mode": {
            "$ref": "#/components/schemas/Venz.Domain.Catalog.Enums.ListingMode"
          },
          "page": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.CatalogSkuRequest": {
        "type": "object",
        "properties": {
          "sku": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.CatalogSlugRequest": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.ColorListRequest": {
        "type": "object",
        "properties": {
          "q": {
            "type": "string",
            "nullable": true
          },
          "isActive": {
            "type": "boolean",
            "nullable": true
          },
          "page": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.EInvoiceIntegrationsController.OzonEInvoiceProcessRequest": {
        "type": "object",
        "properties": {
          "batchSize": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.EInvoiceIntegrationsController.OzonEInvoiceProcessResponse": {
        "type": "object",
        "properties": {
          "ok": {
            "type": "boolean"
          },
          "message": {
            "type": "string"
          },
          "batchSize": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.EntityIdRequest": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.InitiatePaymentRequest": {
        "type": "object",
        "properties": {
          "orderId": {
            "type": "string",
            "format": "uuid"
          },
          "gatewayCode": {
            "type": "string"
          },
          "installment": {
            "type": "integer",
            "format": "int32"
          },
          "callbackUrl": {
            "type": "string"
          },
          "successUrl": {
            "type": "string"
          },
          "failureUrl": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.LoginRequest": {
        "required": [
          "email",
          "password"
        ],
        "type": "object",
        "properties": {
          "email": {
            "minLength": 1,
            "type": "string",
            "format": "email"
          },
          "password": {
            "minLength": 1,
            "type": "string"
          },
          "anonymousCartKey": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.LogoutRequest": {
        "type": "object",
        "properties": {
          "refreshToken": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.MarketplaceAttributeTypeMapSaveRequest": {
        "type": "object",
        "properties": {
          "attributeTypeId": {
            "type": "string",
            "format": "uuid"
          },
          "providerCode": {
            "type": "string"
          },
          "marketplaceAttributeCode": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.MarketplaceAttributeValueMapSaveRequest": {
        "type": "object",
        "properties": {
          "attributeValueId": {
            "type": "string",
            "format": "uuid"
          },
          "providerCode": {
            "type": "string"
          },
          "marketplaceAttributeValueCode": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.MarketplaceMapListRequest": {
        "type": "object",
        "properties": {
          "attributeTypeId": {
            "type": "string",
            "format": "uuid"
          },
          "providerCode": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.OrderIdRequest": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.OrderListRequest": {
        "type": "object",
        "properties": {
          "page": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.PaymentGatewayInfo": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string"
          },
          "displayName": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.PlaceOrderRequest": {
        "type": "object",
        "properties": {
          "shippingAddressId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "billingAddressId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "shippingAddress": {
            "$ref": "#/components/schemas/Venz.Application.Sales.Orders.OrderAddressInput"
          },
          "billingAddress": {
            "$ref": "#/components/schemas/Venz.Application.Sales.Orders.OrderAddressInput"
          },
          "customerEmail": {
            "type": "string"
          },
          "customerPhone": {
            "type": "string"
          },
          "customerNote": {
            "type": "string",
            "nullable": true
          },
          "shippingProviderCode": {
            "type": "string"
          },
          "shippingMethodName": {
            "type": "string",
            "nullable": true
          },
          "shippingFee": {
            "type": "number",
            "format": "double"
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.ProductIdRequest": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.ProductListRequest": {
        "type": "object",
        "properties": {
          "q": {
            "type": "string",
            "nullable": true
          },
          "brandId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "categoryId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "isActive": {
            "type": "boolean",
            "nullable": true
          },
          "page": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.ProductUpdateRequest": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "data": {
            "$ref": "#/components/schemas/Venz.Application.Catalog.Products.ProductUpsertModel"
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.PublicConfigDto": {
        "type": "object",
        "properties": {
          "currentLanguage": {
            "type": "string"
          },
          "availableLanguages": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "currency": {
            "type": "string"
          },
          "defaultListingMode": {
            "type": "string"
          },
          "defaultTheme": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.RecommendationsRequest": {
        "type": "object",
        "properties": {
          "scenario": {
            "$ref": "#/components/schemas/Venz.Domain.Recommendations.RecommendationScenario"
          },
          "productId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "cartProductIds": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          },
          "recentlyViewedIds": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          },
          "categoryIds": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          },
          "excludeProductIds": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          },
          "take": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.RefreshRequest": {
        "required": [
          "refreshToken"
        ],
        "type": "object",
        "properties": {
          "refreshToken": {
            "minLength": 1,
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.RegisterRequest": {
        "required": [
          "email",
          "firstName",
          "lastName",
          "password"
        ],
        "type": "object",
        "properties": {
          "email": {
            "minLength": 1,
            "type": "string",
            "format": "email"
          },
          "password": {
            "minLength": 8,
            "type": "string"
          },
          "firstName": {
            "maxLength": 80,
            "minLength": 1,
            "type": "string"
          },
          "lastName": {
            "maxLength": 80,
            "minLength": 1,
            "type": "string"
          },
          "anonymousCartKey": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.SetProductAttributesRequest": {
        "type": "object",
        "properties": {
          "productId": {
            "type": "string",
            "format": "uuid"
          },
          "attributeValueIds": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.SetProductPriceRequest": {
        "type": "object",
        "properties": {
          "productId": {
            "type": "string",
            "format": "uuid"
          },
          "listPrice": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "salesPrice": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "currency": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.SetStockRequest": {
        "type": "object",
        "properties": {
          "productId": {
            "type": "string",
            "format": "uuid"
          },
          "quantity": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.SetVariantPriceRequest": {
        "type": "object",
        "properties": {
          "productId": {
            "type": "string",
            "format": "uuid"
          },
          "variantId": {
            "type": "string",
            "format": "uuid"
          },
          "listPrice": {
            "type": "number",
            "format": "double"
          },
          "salesPrice": {
            "type": "number",
            "format": "double"
          },
          "currency": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.SetVariantStockRequest": {
        "type": "object",
        "properties": {
          "productId": {
            "type": "string",
            "format": "uuid"
          },
          "variantId": {
            "type": "string",
            "format": "uuid"
          },
          "quantity": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.ShippingProviderInfo": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string"
          },
          "displayName": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.ShippingQuoteRequestModel": {
        "type": "object",
        "properties": {
          "destinationCountry": {
            "type": "string"
          },
          "destinationCity": {
            "type": "string"
          },
          "destinationDistrict": {
            "type": "string"
          },
          "destinationPostalCode": {
            "type": "string",
            "nullable": true
          },
          "weight": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "cartTotal": {
            "type": "number",
            "format": "double"
          },
          "currency": {
            "type": "string",
            "nullable": true
          },
          "itemCount": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.ShippingTrackRequest": {
        "type": "object",
        "properties": {
          "providerCode": {
            "type": "string"
          },
          "trackingNumber": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.SizeListRequest": {
        "type": "object",
        "properties": {
          "q": {
            "type": "string",
            "nullable": true
          },
          "group": {
            "type": "string",
            "nullable": true
          },
          "isActive": {
            "type": "boolean",
            "nullable": true
          },
          "page": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.UpdateCartItemRequest": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "quantity": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.UserProfileDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "email": {
            "type": "string"
          },
          "userName": {
            "type": "string"
          },
          "firstName": {
            "type": "string",
            "nullable": true
          },
          "lastName": {
            "type": "string",
            "nullable": true
          },
          "preferredLanguageCode": {
            "type": "string",
            "nullable": true
          },
          "roles": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.VariantIdRequest": {
        "type": "object",
        "properties": {
          "productId": {
            "type": "string",
            "format": "uuid"
          },
          "variantId": {
            "type": "string",
            "format": "uuid"
          }
        },
        "additionalProperties": false
      },
      "Venz.Web.Api.Controllers.V1.VariantWriteRequest": {
        "type": "object",
        "properties": {
          "productId": {
            "type": "string",
            "format": "uuid"
          },
          "variantId": {
            "type": "string",
            "format": "uuid"
          },
          "data": {
            "$ref": "#/components/schemas/Venz.Application.Catalog.Products.Variants.ProductVariantUpsertModel"
          }
        },
        "additionalProperties": false
      }
    },
    "securitySchemes": {
      "Bearer": {
        "type": "http",
        "description": "JWT Bearer token (`Authorization: Bearer <token>`).",
        "scheme": "bearer",
        "bearerFormat": "JWT"
      }
    }
  },
  "security": [
    {
      "Bearer": [ ]
    }
  ],
  "tags": [
    {
      "name": "EInvoiceIntegrations",
      "description": "Admin entegrasyon işlemleri (e-fatura otomasyon vb.)."
    }
  ]
}