{
  "schemes": [
    "https"
  ],
  "swagger": "2.0",
  "info": {
    "description": "Category trees and product assignments.",
    "title": "Category API",
    "contact": {},
    "version": "1.0.0"
  },
  "host": "api.catazenta.com",
  "basePath": "/v1",
  "paths": {
    "/categories": {
      "get": {
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "description": "List all categories with pagination and filtering",
        "produces": [
          "application/json"
        ],
        "tags": [
          "Categories"
        ],
        "summary": "List categories",
        "parameters": [
          {
            "type": "integer",
            "default": 1,
            "description": "Page number",
            "name": "page",
            "in": "query"
          },
          {
            "type": "integer",
            "default": 20,
            "description": "Page size",
            "name": "page_size",
            "in": "query"
          },
          {
            "type": "string",
            "description": "Search term for code or name",
            "name": "search",
            "in": "query"
          },
          {
            "type": "string",
            "description": "Filter by category tree ID",
            "name": "category_tree_id",
            "in": "query"
          },
          {
            "type": "string",
            "description": "Filter by parent ID",
            "name": "parent_id",
            "in": "query"
          },
          {
            "type": "string",
            "description": "Filter by status (active, inactive)",
            "name": "status",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "List of categories",
            "schema": {
              "allOf": [
                {
                  "$ref": "#/definitions/response.PaginatedSuccessResponse"
                },
                {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/definitions/CategoryListResponse"
                    }
                  }
                }
              ]
            }
          },
          "400": {
            "description": "Bad Request",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "500": {
            "description": "Internal Server Error",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          }
        }
      },
      "post": {
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "description": "Create a new category within a category tree",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "tags": [
          "Categories"
        ],
        "summary": "Create a category",
        "parameters": [
          {
            "description": "Category creation request",
            "name": "request",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/CreateCategoryRequest"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "Created category",
            "schema": {
              "allOf": [
                {
                  "$ref": "#/definitions/response.SuccessResponse"
                },
                {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/definitions/CategoryResponse"
                    }
                  }
                }
              ]
            }
          },
          "400": {
            "description": "Bad Request",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "409": {
            "description": "Duplicate code",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "500": {
            "description": "Internal Server Error",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          }
        }
      }
    },
    "/categories/{id}": {
      "get": {
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "description": "Retrieve a category by its ID",
        "produces": [
          "application/json"
        ],
        "tags": [
          "Categories"
        ],
        "summary": "Get a category",
        "parameters": [
          {
            "type": "string",
            "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d1",
            "description": "Category ID",
            "name": "id",
            "in": "path",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "Category details",
            "schema": {
              "allOf": [
                {
                  "$ref": "#/definitions/response.SuccessResponse"
                },
                {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/definitions/CategoryResponse"
                    }
                  }
                }
              ]
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "500": {
            "description": "Internal Server Error",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          }
        }
      },
      "delete": {
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "description": "Soft-delete a category by its ID",
        "produces": [
          "application/json"
        ],
        "tags": [
          "Categories"
        ],
        "summary": "Delete a category",
        "parameters": [
          {
            "type": "string",
            "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d1",
            "description": "Category ID",
            "name": "id",
            "in": "path",
            "required": true
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "500": {
            "description": "Internal Server Error",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          }
        }
      },
      "patch": {
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "description": "Partially update a category by its ID",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "tags": [
          "Categories"
        ],
        "summary": "Update a category",
        "parameters": [
          {
            "type": "string",
            "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d1",
            "description": "Category ID",
            "name": "id",
            "in": "path",
            "required": true
          },
          {
            "description": "Category update request",
            "name": "request",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/UpdateCategoryRequest"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Updated category",
            "schema": {
              "allOf": [
                {
                  "$ref": "#/definitions/response.SuccessResponse"
                },
                {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/definitions/CategoryResponse"
                    }
                  }
                }
              ]
            }
          },
          "400": {
            "description": "Bad Request",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "500": {
            "description": "Internal Server Error",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          }
        }
      }
    },
    "/categories/{id}/status": {
      "patch": {
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "description": "Change a category's status (activate or deactivate)",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "tags": [
          "Categories"
        ],
        "summary": "Change category status",
        "parameters": [
          {
            "type": "string",
            "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d1",
            "description": "Category ID",
            "name": "id",
            "in": "path",
            "required": true
          },
          {
            "description": "Status change request",
            "name": "request",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ChangeStatusRequest"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Updated category",
            "schema": {
              "allOf": [
                {
                  "$ref": "#/definitions/response.SuccessResponse"
                },
                {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/definitions/CategoryResponse"
                    }
                  }
                }
              ]
            }
          },
          "400": {
            "description": "Bad Request",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "500": {
            "description": "Internal Server Error",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          }
        }
      }
    },
    "/categories/{id}/translations": {
      "get": {
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "description": "Retrieve all localized translations for a specific category",
        "produces": [
          "application/json"
        ],
        "tags": [
          "Category Translations"
        ],
        "summary": "Get all translations for a category",
        "parameters": [
          {
            "type": "string",
            "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d1",
            "description": "Category ID",
            "name": "id",
            "in": "path",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "List of category translations",
            "schema": {
              "allOf": [
                {
                  "$ref": "#/definitions/response.SuccessResponse"
                },
                {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/definitions/CategoryTranslationListResponse"
                    }
                  }
                }
              ]
            }
          },
          "400": {
            "description": "Bad Request",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "500": {
            "description": "Internal Server Error",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          }
        }
      },
      "patch": {
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "description": "PATCH: Update multiple translations for a category",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "tags": [
          "Category Translations"
        ],
        "summary": "Update category translations",
        "parameters": [
          {
            "type": "string",
            "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d1",
            "description": "Category ID",
            "name": "id",
            "in": "path",
            "required": true
          },
          {
            "description": "Translations data",
            "name": "request",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/UpdateCategoryTranslationsRequest"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Translations updated successfully",
            "schema": {
              "allOf": [
                {
                  "$ref": "#/definitions/response.SuccessResponse"
                },
                {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/definitions/CategoryTranslationListResponse"
                    }
                  }
                }
              ]
            }
          },
          "400": {
            "description": "Bad Request",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "500": {
            "description": "Internal Server Error",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          }
        }
      }
    },
    "/category-trees": {
      "get": {
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "description": "List all category trees with pagination and filtering",
        "produces": [
          "application/json"
        ],
        "tags": [
          "Category Trees"
        ],
        "summary": "List category trees",
        "parameters": [
          {
            "type": "integer",
            "default": 1,
            "description": "Page number",
            "name": "page",
            "in": "query"
          },
          {
            "type": "integer",
            "default": 20,
            "description": "Page size",
            "name": "page_size",
            "in": "query"
          },
          {
            "type": "string",
            "description": "Search term for code or name",
            "name": "search",
            "in": "query"
          },
          {
            "type": "string",
            "description": "Filter by status (active, inactive)",
            "name": "status",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "List of category trees",
            "schema": {
              "allOf": [
                {
                  "$ref": "#/definitions/response.PaginatedSuccessResponse"
                },
                {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/definitions/CategoryTreeListResponse"
                    }
                  }
                }
              ]
            }
          },
          "400": {
            "description": "Bad Request",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "500": {
            "description": "Internal Server Error",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          }
        }
      },
      "post": {
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "description": "Create a new category tree",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "tags": [
          "Category Trees"
        ],
        "summary": "Create a category tree",
        "parameters": [
          {
            "description": "Category tree creation request",
            "name": "request",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/CreateCategoryTreeRequest"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "Created category tree",
            "schema": {
              "allOf": [
                {
                  "$ref": "#/definitions/response.SuccessResponse"
                },
                {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/definitions/CategoryTreeResponse"
                    }
                  }
                }
              ]
            }
          },
          "400": {
            "description": "Bad Request",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "409": {
            "description": "Duplicate code",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "500": {
            "description": "Internal Server Error",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          }
        }
      }
    },
    "/category-trees/{id}": {
      "get": {
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "description": "Retrieve a category tree by its ID",
        "produces": [
          "application/json"
        ],
        "tags": [
          "Category Trees"
        ],
        "summary": "Get a category tree",
        "parameters": [
          {
            "type": "string",
            "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2",
            "description": "Category Tree ID",
            "name": "id",
            "in": "path",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "Category tree details",
            "schema": {
              "allOf": [
                {
                  "$ref": "#/definitions/response.SuccessResponse"
                },
                {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/definitions/CategoryTreeResponse"
                    }
                  }
                }
              ]
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "500": {
            "description": "Internal Server Error",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          }
        }
      },
      "delete": {
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "description": "Soft-delete a category tree by its ID",
        "produces": [
          "application/json"
        ],
        "tags": [
          "Category Trees"
        ],
        "summary": "Delete a category tree",
        "parameters": [
          {
            "type": "string",
            "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2",
            "description": "Category Tree ID",
            "name": "id",
            "in": "path",
            "required": true
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "500": {
            "description": "Internal Server Error",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          }
        }
      },
      "patch": {
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "description": "Partially update a category tree by its ID",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "tags": [
          "Category Trees"
        ],
        "summary": "Update a category tree",
        "parameters": [
          {
            "type": "string",
            "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2",
            "description": "Category Tree ID",
            "name": "id",
            "in": "path",
            "required": true
          },
          {
            "description": "Category tree update request",
            "name": "request",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/UpdateCategoryTreeRequest"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Updated category tree",
            "schema": {
              "allOf": [
                {
                  "$ref": "#/definitions/response.SuccessResponse"
                },
                {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/definitions/CategoryTreeResponse"
                    }
                  }
                }
              ]
            }
          },
          "400": {
            "description": "Bad Request",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "500": {
            "description": "Internal Server Error",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          }
        }
      }
    },
    "/category-trees/{id}/status": {
      "patch": {
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "description": "Change a category tree's status (activate or deactivate)",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "tags": [
          "Category Trees"
        ],
        "summary": "Change category tree status",
        "parameters": [
          {
            "type": "string",
            "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2",
            "description": "Category Tree ID",
            "name": "id",
            "in": "path",
            "required": true
          },
          {
            "description": "Status change request",
            "name": "request",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ChangeStatusRequest2"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Updated category tree",
            "schema": {
              "allOf": [
                {
                  "$ref": "#/definitions/response.SuccessResponse"
                },
                {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/definitions/CategoryTreeResponse"
                    }
                  }
                }
              ]
            }
          },
          "400": {
            "description": "Bad Request",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "500": {
            "description": "Internal Server Error",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          }
        }
      }
    },
    "/category-trees/{id}/translations": {
      "get": {
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "description": "Retrieve all localized translations for a specific category tree",
        "produces": [
          "application/json"
        ],
        "tags": [
          "Category Tree Translations"
        ],
        "summary": "Get all translations for a category tree",
        "parameters": [
          {
            "type": "string",
            "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2",
            "description": "Category Tree ID",
            "name": "id",
            "in": "path",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "List of category tree translations",
            "schema": {
              "allOf": [
                {
                  "$ref": "#/definitions/response.SuccessResponse"
                },
                {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/definitions/CategoryTreeTranslationListResponse"
                    }
                  }
                }
              ]
            }
          },
          "400": {
            "description": "Bad Request",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "500": {
            "description": "Internal Server Error",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          }
        }
      },
      "patch": {
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "description": "PATCH: Update multiple translations for a category tree",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "tags": [
          "Category Tree Translations"
        ],
        "summary": "Update category tree translations",
        "parameters": [
          {
            "type": "string",
            "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2",
            "description": "Category Tree ID",
            "name": "id",
            "in": "path",
            "required": true
          },
          {
            "description": "Translations data",
            "name": "request",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/UpdateCategoryTreeTranslationsRequest"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Translations updated successfully",
            "schema": {
              "allOf": [
                {
                  "$ref": "#/definitions/response.SuccessResponse"
                },
                {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/definitions/CategoryTreeTranslationListResponse"
                    }
                  }
                }
              ]
            }
          },
          "400": {
            "description": "Bad Request",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "500": {
            "description": "Internal Server Error",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          }
        }
      }
    },
    "/channels": {
      "get": {
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "description": "List all channels with pagination and filtering",
        "produces": [
          "application/json"
        ],
        "tags": [
          "Channels"
        ],
        "summary": "List channels",
        "parameters": [
          {
            "type": "integer",
            "default": 1,
            "description": "Page number",
            "name": "page",
            "in": "query"
          },
          {
            "type": "integer",
            "default": 20,
            "description": "Page size",
            "name": "page_size",
            "in": "query"
          },
          {
            "type": "string",
            "description": "Search term for code or name",
            "name": "search",
            "in": "query"
          },
          {
            "type": "string",
            "description": "Filter by status (active, inactive)",
            "name": "status",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "List of channels",
            "schema": {
              "allOf": [
                {
                  "$ref": "#/definitions/response.PaginatedSuccessResponse"
                },
                {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/definitions/ChannelListResponse"
                    }
                  }
                }
              ]
            }
          },
          "400": {
            "description": "Bad Request",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "500": {
            "description": "Internal Server Error",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          }
        }
      },
      "post": {
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "description": "Create a new channel with optional locale assignments",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "tags": [
          "Channels"
        ],
        "summary": "Create a channel",
        "parameters": [
          {
            "description": "Channel creation request",
            "name": "request",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/CreateChannelRequest"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "Created channel",
            "schema": {
              "allOf": [
                {
                  "$ref": "#/definitions/response.SuccessResponse"
                },
                {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/definitions/ChannelResponse"
                    }
                  }
                }
              ]
            }
          },
          "400": {
            "description": "Bad Request",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "409": {
            "description": "Duplicate code or name",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "500": {
            "description": "Internal Server Error",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          }
        }
      }
    },
    "/channels/{id}": {
      "get": {
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "description": "Retrieve a channel by its ID",
        "produces": [
          "application/json"
        ],
        "tags": [
          "Channels"
        ],
        "summary": "Get a channel",
        "parameters": [
          {
            "type": "string",
            "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8c1",
            "description": "Channel ID",
            "name": "id",
            "in": "path",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "Channel details",
            "schema": {
              "allOf": [
                {
                  "$ref": "#/definitions/response.SuccessResponse"
                },
                {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/definitions/ChannelResponse"
                    }
                  }
                }
              ]
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "500": {
            "description": "Internal Server Error",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          }
        }
      },
      "delete": {
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "description": "Soft-delete a channel by its ID",
        "produces": [
          "application/json"
        ],
        "tags": [
          "Channels"
        ],
        "summary": "Delete a channel",
        "parameters": [
          {
            "type": "string",
            "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8c1",
            "description": "Channel ID",
            "name": "id",
            "in": "path",
            "required": true
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "500": {
            "description": "Internal Server Error",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          }
        }
      },
      "patch": {
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "description": "Partially update a channel by its ID",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "tags": [
          "Channels"
        ],
        "summary": "Update a channel",
        "parameters": [
          {
            "type": "string",
            "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8c1",
            "description": "Channel ID",
            "name": "id",
            "in": "path",
            "required": true
          },
          {
            "description": "Channel update request",
            "name": "request",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/UpdateChannelRequest"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Updated channel",
            "schema": {
              "allOf": [
                {
                  "$ref": "#/definitions/response.SuccessResponse"
                },
                {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/definitions/ChannelResponse"
                    }
                  }
                }
              ]
            }
          },
          "400": {
            "description": "Bad Request",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "500": {
            "description": "Internal Server Error",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          }
        }
      }
    },
    "/channels/{id}/status": {
      "patch": {
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "description": "Change a channel's status (activate or deactivate)",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "tags": [
          "Channels"
        ],
        "summary": "Change channel status",
        "parameters": [
          {
            "type": "string",
            "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8c1",
            "description": "Channel ID",
            "name": "id",
            "in": "path",
            "required": true
          },
          {
            "description": "Status change request",
            "name": "request",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ChangeStatusRequest3"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Updated channel",
            "schema": {
              "allOf": [
                {
                  "$ref": "#/definitions/response.SuccessResponse"
                },
                {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/definitions/ChannelResponse"
                    }
                  }
                }
              ]
            }
          },
          "400": {
            "description": "Bad Request",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "500": {
            "description": "Internal Server Error",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          }
        }
      }
    },
    "/channels/{id}/translations": {
      "get": {
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "description": "Retrieve all localized translations for a specific channel",
        "produces": [
          "application/json"
        ],
        "tags": [
          "Channel Translations"
        ],
        "summary": "Get all translations for a channel",
        "parameters": [
          {
            "type": "string",
            "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8c1",
            "description": "Channel ID",
            "name": "id",
            "in": "path",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "List of channel translations",
            "schema": {
              "allOf": [
                {
                  "$ref": "#/definitions/response.SuccessResponse"
                },
                {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/definitions/ChannelTranslationListResponse"
                    }
                  }
                }
              ]
            }
          },
          "400": {
            "description": "Bad Request",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "500": {
            "description": "Internal Server Error",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          }
        }
      },
      "patch": {
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "description": "PATCH: Update multiple translations for a channel",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "tags": [
          "Channel Translations"
        ],
        "summary": "Update channel translations",
        "parameters": [
          {
            "type": "string",
            "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8c1",
            "description": "Channel ID",
            "name": "id",
            "in": "path",
            "required": true
          },
          {
            "description": "Translations data",
            "name": "request",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/UpdateChannelTranslationsRequest"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Translations updated successfully",
            "schema": {
              "allOf": [
                {
                  "$ref": "#/definitions/response.SuccessResponse"
                },
                {
                  "type": "object",
                  "properties": {
                    "data": {
                      "$ref": "#/definitions/ChannelTranslationListResponse"
                    }
                  }
                }
              ]
            }
          },
          "400": {
            "description": "Bad Request",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          },
          "500": {
            "description": "Internal Server Error",
            "schema": {
              "$ref": "#/definitions/response.ErrorResponse"
            }
          }
        }
      }
    }
  },
  "definitions": {
    "response.Error": {
      "type": "object",
      "properties": {
        "code": {
          "type": "string"
        },
        "field": {
          "type": "string"
        },
        "message": {
          "type": "string"
        }
      }
    },
    "response.ErrorResponse": {
      "type": "object",
      "properties": {
        "errors": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/response.Error"
          }
        },
        "message": {
          "type": "string"
        },
        "success": {
          "type": "boolean"
        }
      }
    },
    "response.PaginatedSuccessResponse": {
      "type": "object",
      "properties": {
        "data": {},
        "pagination": {
          "$ref": "#/definitions/response.PaginationInfo"
        },
        "success": {
          "type": "boolean"
        }
      }
    },
    "response.PaginationInfo": {
      "type": "object",
      "properties": {
        "has_next": {
          "type": "boolean"
        },
        "page": {
          "type": "integer"
        },
        "page_size": {
          "type": "integer"
        },
        "total_items": {
          "type": "integer"
        },
        "total_pages": {
          "type": "integer"
        }
      }
    },
    "response.SuccessResponse": {
      "type": "object",
      "properties": {
        "data": {},
        "success": {
          "type": "boolean"
        }
      }
    },
    "ActorSummary": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "type": {
          "type": "string",
          "example": "user"
        }
      }
    },
    "CategoryListItemResponse": {
      "type": "object",
      "properties": {
        "category_tree_id": {
          "type": "string",
          "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2"
        },
        "code": {
          "type": "string",
          "example": "electronics"
        },
        "created_at": {
          "type": "string",
          "example": "2026-01-18T10:30:00Z"
        },
        "created_by": {
          "$ref": "#/definitions/ActorSummary"
        },
        "id": {
          "type": "string",
          "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d1"
        },
        "image_asset_id": {
          "type": "string",
          "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d4"
        },
        "modified_at": {
          "type": "string",
          "example": "2026-01-18T15:45:00Z"
        },
        "modified_by": {
          "$ref": "#/definitions/ActorSummary"
        },
        "name": {
          "type": "string",
          "example": "Electronics"
        },
        "parent_id": {
          "type": "string",
          "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d3"
        },
        "path": {
          "type": "string",
          "example": "/root/electronics"
        },
        "product_count": {
          "type": "integer",
          "example": 42
        },
        "status": {
          "type": "string",
          "example": "active"
        }
      }
    },
    "CategoryListResponse": {
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/CategoryListItemResponse"
          }
        },
        "pagination": {
          "$ref": "#/definitions/response.PaginationInfo"
        }
      }
    },
    "CategoryResponse": {
      "type": "object",
      "properties": {
        "category_tree_id": {
          "type": "string",
          "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2"
        },
        "code": {
          "type": "string",
          "example": "electronics"
        },
        "created_at": {
          "type": "string",
          "example": "2026-01-18T10:30:00Z"
        },
        "created_by": {
          "$ref": "#/definitions/ActorSummary"
        },
        "description": {
          "type": "string",
          "example": "All electronic products"
        },
        "id": {
          "type": "string",
          "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d1"
        },
        "image_asset_id": {
          "type": "string",
          "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d4"
        },
        "modified_at": {
          "type": "string",
          "example": "2026-01-18T15:45:00Z"
        },
        "modified_by": {
          "$ref": "#/definitions/ActorSummary"
        },
        "name": {
          "type": "string",
          "example": "Electronics"
        },
        "parent_id": {
          "type": "string",
          "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d3"
        },
        "path": {
          "type": "string",
          "example": "/root/electronics"
        },
        "product_count": {
          "type": "integer",
          "example": 42
        },
        "status": {
          "type": "string",
          "example": "active"
        }
      }
    },
    "CategoryTranslationInput": {
      "type": "object",
      "required": [
        "locale",
        "name"
      ],
      "properties": {
        "locale": {
          "type": "string",
          "maxLength": 10,
          "minLength": 2,
          "example": "en_US"
        },
        "name": {
          "type": "string",
          "maxLength": 255,
          "minLength": 1,
          "example": "Electronics"
        }
      }
    },
    "CategoryTranslationListResponse": {
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/CategoryTranslationResponse"
          }
        }
      }
    },
    "CategoryTranslationResponse": {
      "type": "object",
      "properties": {
        "created_at": {
          "type": "string",
          "example": "2026-01-18T10:30:00Z"
        },
        "locale": {
          "type": "string",
          "example": "en_US"
        },
        "modified_at": {
          "type": "string",
          "example": "2026-01-18T15:45:00Z"
        },
        "name": {
          "type": "string",
          "example": "Electronics"
        }
      }
    },
    "ChangeStatusRequest": {
      "type": "object",
      "required": [
        "status"
      ],
      "properties": {
        "status": {
          "type": "string",
          "enum": [
            "active",
            "inactive"
          ],
          "example": "active"
        }
      }
    },
    "CreateCategoryRequest": {
      "type": "object",
      "required": [
        "category_tree_id",
        "code",
        "name"
      ],
      "properties": {
        "category_tree_id": {
          "type": "string",
          "minLength": 1,
          "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2"
        },
        "code": {
          "type": "string",
          "example": "electronics"
        },
        "description": {
          "type": "string",
          "maxLength": 1000,
          "example": "All electronic products"
        },
        "image_asset_id": {
          "type": "string",
          "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d4"
        },
        "name": {
          "type": "string",
          "maxLength": 255,
          "example": "Electronics"
        },
        "parent_id": {
          "type": "string",
          "minLength": 1,
          "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d3"
        }
      }
    },
    "UpdateCategoryRequest": {
      "type": "object",
      "properties": {
        "category_tree_id": {
          "type": "string",
          "minLength": 1,
          "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2"
        },
        "description": {
          "type": "string",
          "maxLength": 1000,
          "example": "Updated description"
        },
        "image_asset_id": {
          "type": "string",
          "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d4"
        },
        "name": {
          "type": "string",
          "maxLength": 255,
          "example": "Electronics"
        },
        "parent_id": {
          "type": "string",
          "minLength": 1,
          "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d3"
        }
      }
    },
    "UpdateCategoryTranslationsRequest": {
      "type": "object",
      "required": [
        "translations"
      ],
      "properties": {
        "translations": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/CategoryTranslationInput"
          }
        }
      }
    },
    "ActorSummary2": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "type": {
          "type": "string",
          "example": "user"
        }
      }
    },
    "CategoryTreeListItemResponse": {
      "type": "object",
      "properties": {
        "code": {
          "type": "string",
          "example": "ecommerce"
        },
        "created_at": {
          "type": "string",
          "example": "2026-01-18T10:30:00Z"
        },
        "created_by": {
          "$ref": "#/definitions/ActorSummary2"
        },
        "id": {
          "type": "string",
          "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2"
        },
        "modified_at": {
          "type": "string",
          "example": "2026-01-18T15:45:00Z"
        },
        "modified_by": {
          "$ref": "#/definitions/ActorSummary2"
        },
        "name": {
          "type": "string",
          "example": "E-Commerce Category Tree"
        },
        "status": {
          "type": "string",
          "example": "active"
        }
      }
    },
    "CategoryTreeListResponse": {
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/CategoryTreeListItemResponse"
          }
        },
        "pagination": {
          "$ref": "#/definitions/response.PaginationInfo"
        }
      }
    },
    "CategoryTreeResponse": {
      "type": "object",
      "properties": {
        "code": {
          "type": "string",
          "example": "ecommerce"
        },
        "created_at": {
          "type": "string",
          "example": "2026-01-18T10:30:00Z"
        },
        "created_by": {
          "$ref": "#/definitions/ActorSummary2"
        },
        "description": {
          "type": "string",
          "example": "Category tree for online store"
        },
        "id": {
          "type": "string",
          "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2"
        },
        "modified_at": {
          "type": "string",
          "example": "2026-01-18T15:45:00Z"
        },
        "modified_by": {
          "$ref": "#/definitions/ActorSummary2"
        },
        "name": {
          "type": "string",
          "example": "E-Commerce Category Tree"
        },
        "status": {
          "type": "string",
          "example": "active"
        }
      }
    },
    "CategoryTreeTranslationInput": {
      "type": "object",
      "required": [
        "locale",
        "name"
      ],
      "properties": {
        "locale": {
          "type": "string",
          "maxLength": 10,
          "minLength": 2,
          "example": "en_US"
        },
        "name": {
          "type": "string",
          "maxLength": 255,
          "minLength": 1,
          "example": "E-Commerce Category Tree"
        }
      }
    },
    "CategoryTreeTranslationListResponse": {
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/CategoryTreeTranslationResponse"
          }
        }
      }
    },
    "CategoryTreeTranslationResponse": {
      "type": "object",
      "properties": {
        "created_at": {
          "type": "string",
          "example": "2026-01-18T10:30:00Z"
        },
        "locale": {
          "type": "string",
          "example": "en_US"
        },
        "modified_at": {
          "type": "string",
          "example": "2026-01-18T15:45:00Z"
        },
        "name": {
          "type": "string",
          "example": "E-Commerce Category Tree"
        }
      }
    },
    "ChangeStatusRequest2": {
      "type": "object",
      "required": [
        "status"
      ],
      "properties": {
        "status": {
          "type": "string",
          "enum": [
            "active",
            "inactive"
          ],
          "example": "active"
        }
      }
    },
    "CreateCategoryTreeRequest": {
      "type": "object",
      "required": [
        "code",
        "name"
      ],
      "properties": {
        "code": {
          "type": "string",
          "example": "ecommerce"
        },
        "description": {
          "type": "string",
          "maxLength": 1000,
          "example": "Category tree for online store"
        },
        "name": {
          "type": "string",
          "maxLength": 255,
          "example": "E-Commerce Category Tree"
        }
      }
    },
    "UpdateCategoryTreeRequest": {
      "type": "object",
      "properties": {
        "description": {
          "type": "string",
          "maxLength": 1000,
          "example": "Updated category tree description"
        },
        "name": {
          "type": "string",
          "maxLength": 255,
          "example": "E-Commerce Category Tree"
        }
      }
    },
    "UpdateCategoryTreeTranslationsRequest": {
      "type": "object",
      "required": [
        "translations"
      ],
      "properties": {
        "translations": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/CategoryTreeTranslationInput"
          }
        }
      }
    },
    "ActorSummary3": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "type": {
          "type": "string",
          "example": "user"
        }
      }
    },
    "CategoryTreeInfo": {
      "type": "object",
      "properties": {
        "code": {
          "type": "string",
          "example": "ecommerce"
        },
        "id": {
          "type": "string",
          "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2"
        },
        "name": {
          "type": "string",
          "example": "E-Commerce Category Tree"
        }
      }
    },
    "ChangeStatusRequest3": {
      "type": "object",
      "required": [
        "status"
      ],
      "properties": {
        "status": {
          "type": "string",
          "enum": [
            "active",
            "inactive"
          ],
          "example": "active"
        }
      }
    },
    "ChannelListItemResponse": {
      "type": "object",
      "properties": {
        "category_tree": {
          "$ref": "#/definitions/CategoryTreeInfo"
        },
        "code": {
          "type": "string",
          "example": "web-store"
        },
        "created_at": {
          "type": "string",
          "example": "2026-01-18T10:30:00Z"
        },
        "created_by": {
          "$ref": "#/definitions/ActorSummary3"
        },
        "id": {
          "type": "string",
          "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8c1"
        },
        "locales": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/ChannelLocaleResponse"
          }
        },
        "modified_at": {
          "type": "string",
          "example": "2026-01-18T15:45:00Z"
        },
        "modified_by": {
          "$ref": "#/definitions/ActorSummary3"
        },
        "name": {
          "type": "string",
          "example": "Web Store"
        },
        "status": {
          "type": "string",
          "example": "active"
        }
      }
    },
    "ChannelListResponse": {
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/ChannelListItemResponse"
          }
        },
        "pagination": {
          "$ref": "#/definitions/response.PaginationInfo"
        }
      }
    },
    "ChannelLocaleInput": {
      "type": "object",
      "required": [
        "locale_code"
      ],
      "properties": {
        "locale_code": {
          "type": "string",
          "maxLength": 10,
          "minLength": 2,
          "example": "en_US"
        }
      }
    },
    "ChannelLocaleResponse": {
      "type": "object",
      "properties": {
        "country_name": {
          "type": "string",
          "example": "United States"
        },
        "flag_url": {
          "type": "string",
          "example": "https://flagcdn.com/us.svg"
        },
        "id": {
          "type": "string",
          "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8e4"
        },
        "language_name": {
          "type": "string",
          "example": "English"
        },
        "locale_code": {
          "type": "string",
          "example": "en_US"
        }
      }
    },
    "ChannelResponse": {
      "type": "object",
      "properties": {
        "category_tree": {
          "$ref": "#/definitions/CategoryTreeInfo"
        },
        "code": {
          "type": "string",
          "example": "web-store"
        },
        "created_at": {
          "type": "string",
          "example": "2026-01-18T10:30:00Z"
        },
        "created_by": {
          "$ref": "#/definitions/ActorSummary3"
        },
        "description": {
          "type": "string",
          "example": "Online web store channel"
        },
        "id": {
          "type": "string",
          "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8c1"
        },
        "locales": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/ChannelLocaleResponse"
          }
        },
        "modified_at": {
          "type": "string",
          "example": "2026-01-18T15:45:00Z"
        },
        "modified_by": {
          "$ref": "#/definitions/ActorSummary3"
        },
        "name": {
          "type": "string",
          "example": "Web Store"
        },
        "status": {
          "type": "string",
          "example": "active"
        }
      }
    },
    "ChannelTranslationInput": {
      "type": "object",
      "required": [
        "locale",
        "name"
      ],
      "properties": {
        "locale": {
          "type": "string",
          "maxLength": 10,
          "minLength": 2,
          "example": "en_US"
        },
        "name": {
          "type": "string",
          "maxLength": 255,
          "minLength": 1,
          "example": "Web Store"
        }
      }
    },
    "ChannelTranslationListResponse": {
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/ChannelTranslationResponse"
          }
        }
      }
    },
    "ChannelTranslationResponse": {
      "type": "object",
      "properties": {
        "created_at": {
          "type": "string",
          "example": "2026-01-18T10:30:00Z"
        },
        "locale": {
          "type": "string",
          "example": "en_US"
        },
        "modified_at": {
          "type": "string",
          "example": "2026-01-18T15:45:00Z"
        },
        "name": {
          "type": "string",
          "example": "Web Store"
        }
      }
    },
    "CreateChannelRequest": {
      "type": "object",
      "required": [
        "category_tree_id",
        "code",
        "name"
      ],
      "properties": {
        "category_tree_id": {
          "type": "string",
          "minLength": 1,
          "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2"
        },
        "code": {
          "type": "string",
          "example": "web-store"
        },
        "description": {
          "type": "string",
          "maxLength": 1000,
          "example": "Online web store channel"
        },
        "locales": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/ChannelLocaleInput"
          }
        },
        "name": {
          "type": "string",
          "maxLength": 255,
          "example": "Web Store"
        }
      }
    },
    "UpdateChannelRequest": {
      "type": "object",
      "properties": {
        "category_tree_id": {
          "type": "string",
          "minLength": 1,
          "example": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2"
        },
        "description": {
          "type": "string",
          "maxLength": 1000,
          "example": "Updated channel description"
        },
        "locales": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/ChannelLocaleInput"
          }
        },
        "name": {
          "type": "string",
          "maxLength": 255,
          "example": "Web Store"
        }
      }
    },
    "UpdateChannelTranslationsRequest": {
      "type": "object",
      "required": [
        "translations"
      ],
      "properties": {
        "translations": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/ChannelTranslationInput"
          }
        }
      }
    }
  },
  "securityDefinitions": {
    "BearerAuth": {
      "type": "apiKey",
      "name": "Authorization",
      "in": "header"
    }
  }
}