{
  "openapi": "3.0.1",
  "info": {
    "title": "WebApi",
    "version": "1.0"
  },
  "paths": {
    "/api/v1/activity/create": {
      "post": {
        "tags": [
          "Activity"
        ],
        "summary": "Thêm hoạt động",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateActivityRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateActivityRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateActivityRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/activity/update": {
      "put": {
        "tags": [
          "Activity"
        ],
        "summary": "Cập nhật hoạt động",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateActivityRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateActivityRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateActivityRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/activity/get/{id}": {
      "get": {
        "tags": [
          "Activity"
        ],
        "summary": "Lấy thông tin hoạt động",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateActivityRequestApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateActivityRequestApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateActivityRequestApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/activity/delete/{id}": {
      "delete": {
        "tags": [
          "Activity"
        ],
        "summary": "Xóa hoạt động",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/activity/search": {
      "post": {
        "tags": [
          "Activity"
        ],
        "summary": "Tìm kiếm hoạt động",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchActivityRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchActivityRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SearchActivityRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SearchActivityDtoPaginationResponseApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchActivityDtoPaginationResponseApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchActivityDtoPaginationResponseApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/activity/status/{id}/{status}": {
      "get": {
        "tags": [
          "Activity"
        ],
        "summary": "Cập nhật trạng thái hoạt động (1: Kế hoạch, 2: Đang thực hiện, 3: Hoàn thành, 4: Huỷ)",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "status",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/ActivityStatus"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/auth/get-token-for-develop": {
      "post": {
        "tags": [
          "Auth"
        ],
        "summary": "Lấy access token truy cập cho developers",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GetTokenForPublicApiRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/GetTokenForPublicApiRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/GetTokenForPublicApiRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/TokenForPublicApiDtoApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TokenForPublicApiDtoApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/TokenForPublicApiDtoApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/campaign/create": {
      "post": {
        "tags": [
          "Campaign"
        ],
        "summary": "Thêm mới chiến dịch",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCampaignRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCampaignRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCampaignRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/campaign/update": {
      "put": {
        "tags": [
          "Campaign"
        ],
        "summary": "Cập nhật chiến dịch",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCampaignRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCampaignRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCampaignRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/campaign/delete/{id}": {
      "delete": {
        "tags": [
          "Campaign"
        ],
        "summary": "Xóa chiến dịch",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/campaign/get/{id}": {
      "get": {
        "tags": [
          "Campaign"
        ],
        "summary": "Lấy thông tin chiến dịch",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateCampaignRequestApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateCampaignRequestApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateCampaignRequestApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/campaign/search": {
      "post": {
        "tags": [
          "Campaign"
        ],
        "summary": "Tìm kiếm chiến dịch",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchCampaignRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchCampaignRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SearchCampaignRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SearchCampaignDtoPaginationResponseApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchCampaignDtoPaginationResponseApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchCampaignDtoPaginationResponseApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/campaign/member/search": {
      "post": {
        "tags": [
          "Campaign"
        ],
        "summary": "Tìm kiếm thành viên trong chiến dịch",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchCampMemberRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchCampMemberRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SearchCampMemberRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SearchCampMemberDtoPaginationResponseApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchCampMemberDtoPaginationResponseApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchCampMemberDtoPaginationResponseApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/campaign/member/add": {
      "post": {
        "tags": [
          "Campaign"
        ],
        "summary": "Thêm thành viên trong chiến dịch",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SaveCampMemberRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SaveCampMemberRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SaveCampMemberRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/campaign/member/delete/{id}": {
      "delete": {
        "tags": [
          "Campaign"
        ],
        "summary": "Xóa thành viên trong chiến dịch",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/contact/create": {
      "post": {
        "tags": [
          "Contact"
        ],
        "summary": "Thêm mới liên hệ",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateContactRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateContactRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateContactRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/contact/update": {
      "put": {
        "tags": [
          "Contact"
        ],
        "summary": "Cập nhật liên hệ",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateContactRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateContactRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateContactRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/contact/get/{id}": {
      "get": {
        "tags": [
          "Contact"
        ],
        "summary": "Lấy thông tin liên hệ",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateContactRequestApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateContactRequestApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateContactRequestApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/contact/delete/{id}": {
      "delete": {
        "tags": [
          "Contact"
        ],
        "summary": "Xóa liên hệ",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/contact/search": {
      "post": {
        "tags": [
          "Contact"
        ],
        "summary": "Tìm kiếm liên hệ",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchContactRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchContactRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SearchContactRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SearchContactDtoPaginationResponseApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchContactDtoPaginationResponseApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchContactDtoPaginationResponseApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/customer/create": {
      "post": {
        "tags": [
          "Customer"
        ],
        "summary": "Thêm mới khách hàng",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCustomerRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCustomerRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCustomerRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/customer/update": {
      "put": {
        "tags": [
          "Customer"
        ],
        "summary": "Cập nhật khách hàng",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCustomerRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCustomerRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCustomerRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/customer/get/{id}": {
      "get": {
        "tags": [
          "Customer"
        ],
        "summary": "Lấy thông tin khách hàng",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GetCustomerDetailDtoApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetCustomerDetailDtoApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetCustomerDetailDtoApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/customer/delete/{id}": {
      "delete": {
        "tags": [
          "Customer"
        ],
        "summary": "Xóa khách hàng",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/customer/search": {
      "post": {
        "tags": [
          "Customer"
        ],
        "summary": "Tìm kiếm khách hàng",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchCustomerRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchCustomerRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SearchCustomerRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SearchCustomerDtoPaginationResponseApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchCustomerDtoPaginationResponseApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchCustomerDtoPaginationResponseApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/customer/group/search": {
      "post": {
        "tags": [
          "Customer"
        ],
        "summary": "Tìm kiếm nhóm khách hàng",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchCustomerGroupRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchCustomerGroupRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SearchCustomerGroupRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CustomerGroupDtoPaginationResponseApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomerGroupDtoPaginationResponseApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomerGroupDtoPaginationResponseApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/customer/group/create": {
      "post": {
        "tags": [
          "Customer"
        ],
        "summary": "Thêm nhóm khách hàng",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCustomerGroupRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCustomerGroupRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCustomerGroupRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/customer/group/update": {
      "put": {
        "tags": [
          "Customer"
        ],
        "summary": "Cập nhật nhóm khách hàng",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCustomerGroupRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCustomerGroupRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCustomerGroupRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/customer/group/delete/{id}": {
      "delete": {
        "tags": [
          "Customer"
        ],
        "summary": "Xóa nhóm khách hàng",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/customer-shipping-address/create": {
      "post": {
        "tags": [
          "CustomerShippingAddress"
        ],
        "summary": "Thêm mới địa chỉ giao hàng",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCustomerShippingAddressRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCustomerShippingAddressRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCustomerShippingAddressRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/customer-shipping-address/update": {
      "put": {
        "tags": [
          "CustomerShippingAddress"
        ],
        "summary": "Cập nhật địa chỉ giao hàng",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCustomerShippingAddressRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCustomerShippingAddressRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCustomerShippingAddressRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/customer-shipping-address/get/{id}": {
      "get": {
        "tags": [
          "CustomerShippingAddress"
        ],
        "summary": "Lấy thông tin địa chỉ giao hàng",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CustomerShippingAddressDtoApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomerShippingAddressDtoApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomerShippingAddressDtoApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/customer-shipping-address/search": {
      "post": {
        "tags": [
          "CustomerShippingAddress"
        ],
        "summary": "Tìm kiếm địa chỉ giao hàng",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchCustomerShippingAddressRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchCustomerShippingAddressRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SearchCustomerShippingAddressRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CustomerShippingAddressDtoPaginationResponseApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomerShippingAddressDtoPaginationResponseApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomerShippingAddressDtoPaginationResponseApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/customer-shipping-address/set-default/{id}": {
      "post": {
        "tags": [
          "CustomerShippingAddress"
        ],
        "summary": "Đặt mặc định địa chỉ giao hàng",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/customer-shipping-address/delete/{id}": {
      "delete": {
        "tags": [
          "CustomerShippingAddress"
        ],
        "summary": "Xóa địa chỉ giao hàng",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/customer-shipping-address/by-customer/{customerId}/default": {
      "get": {
        "tags": [
          "CustomerShippingAddress"
        ],
        "summary": "Lấy địa chỉ mặc định cho đơn hàng",
        "parameters": [
          {
            "name": "customerId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CustomerOrderShippingAddressDtoApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomerOrderShippingAddressDtoApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomerOrderShippingAddressDtoApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/customer-timeline/search": {
      "post": {
        "tags": [
          "CustomerTimeline"
        ],
        "summary": "Timeline 360 cua khach hang",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CustomerTimelineSearchRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CustomerTimelineSearchRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CustomerTimelineSearchRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CustomerTimelineItemDtoPaginationResponseApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomerTimelineItemDtoPaginationResponseApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomerTimelineItemDtoPaginationResponseApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/lead/create": {
      "post": {
        "tags": [
          "Lead"
        ],
        "summary": "Thêm mới khách hàng tiềm năng",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateLeadRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateLeadRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateLeadRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/lead/update": {
      "put": {
        "tags": [
          "Lead"
        ],
        "summary": "Cập nhật khách hàng tiềm năng",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateLeadRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateLeadRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateLeadRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/lead/get/{id}": {
      "get": {
        "tags": [
          "Lead"
        ],
        "summary": "Lấy thông tin khách hàng tiềm năng",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateLeadRequestApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateLeadRequestApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateLeadRequestApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/lead/convert-preview/{id}": {
      "get": {
        "tags": [
          "Lead"
        ],
        "summary": "Xem trước chuyển đổi khách hàng tiềm năng",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/LeadConvertPreviewDtoApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LeadConvertPreviewDtoApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/LeadConvertPreviewDtoApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/lead/convert": {
      "post": {
        "tags": [
          "Lead"
        ],
        "summary": "Thực thi chuyển đổi khách hàng tiềm năng",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ExecuteLeadConvertRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ExecuteLeadConvertRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ExecuteLeadConvertRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/LeadConvertResultDtoApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LeadConvertResultDtoApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/LeadConvertResultDtoApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/lead/convert/{id}": {
      "get": {
        "tags": [
          "Lead"
        ],
        "summary": "Chuyển đổi khách hàng tiềm năng (legacy)",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/lead/delete/{id}": {
      "delete": {
        "tags": [
          "Lead"
        ],
        "summary": "Xóa khách hàng tiềm năng",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/lead/search": {
      "post": {
        "tags": [
          "Lead"
        ],
        "summary": "Tìm kiếm khách hàng tiềm năng",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchLeadRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchLeadRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SearchLeadRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SearchLeadDtoPaginationResponseApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchLeadDtoPaginationResponseApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchLeadDtoPaginationResponseApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/maktemail/search": {
      "post": {
        "tags": [
          "MaktEmail"
        ],
        "summary": "Tìm kiếm email marketing",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchMaktEmailRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchMaktEmailRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SearchMaktEmailRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SearchMaktEmailDtoPaginationResponseApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchMaktEmailDtoPaginationResponseApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchMaktEmailDtoPaginationResponseApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/maktemail/create": {
      "post": {
        "tags": [
          "MaktEmail"
        ],
        "summary": "Thêm mới email marketing",
        "parameters": [
          {
            "name": "Code",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Name",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Description",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Subject",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Supplier",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/EmailSupplier"
            }
          },
          {
            "name": "From",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "DisplayName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "TemplateId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "TemplateName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "SendType",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/EmailSendType"
            }
          },
          {
            "name": "SegmentId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "SegmentName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "FilePath",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Status",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/MarketingStatus"
            }
          },
          {
            "name": "AppointmentDate",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "FormFile": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "FormFile": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/maktemail/update": {
      "put": {
        "tags": [
          "MaktEmail"
        ],
        "summary": "Cập nhật email marketing",
        "parameters": [
          {
            "name": "Id",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "Code",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Name",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Description",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Subject",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Supplier",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/EmailSupplier"
            }
          },
          {
            "name": "From",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "DisplayName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "TemplateId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "TemplateName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "SendType",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/EmailSendType"
            }
          },
          {
            "name": "SegmentId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "SegmentName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "FilePath",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Status",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/MarketingStatus"
            }
          },
          {
            "name": "AppointmentDate",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "FormFile": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "FormFile": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/maktemail/get/{id}": {
      "get": {
        "tags": [
          "MaktEmail"
        ],
        "summary": "Lấy thông tin email marketing",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateMaktEmailRequestApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateMaktEmailRequestApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateMaktEmailRequestApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/maktemail/delete/{id}": {
      "delete": {
        "tags": [
          "MaktEmail"
        ],
        "summary": "Xóa email marketing",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/maktzalo/search": {
      "post": {
        "tags": [
          "MaktZalo"
        ],
        "summary": "Tìm kiếm zalo marketing",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchMaktZaloRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchMaktZaloRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SearchMaktZaloRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SearchMaktZaloDtoPaginationResponseApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchMaktZaloDtoPaginationResponseApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchMaktZaloDtoPaginationResponseApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/maktzalo/create": {
      "post": {
        "tags": [
          "MaktZalo"
        ],
        "summary": "Thêm mới zalo marketing",
        "parameters": [
          {
            "name": "Code",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Name",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Description",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Channel",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/MaktZaloChannel"
            }
          },
          {
            "name": "SocialId",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "SocialName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ZnsTemplateId",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ZnsTemplateName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ZnsTemplateParam",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ZnsTemplatePreviewUrl",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ZnsTemplatePrice",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "SmsTemplateId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "SmsTemplateName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "SmsTemplateParam",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "SendType",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/EmailSendType"
            }
          },
          {
            "name": "SegmentId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "SegmentName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "FilePath",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ExcelHeader",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Status",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/MarketingStatus"
            }
          },
          {
            "name": "AppointmentDate",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "FormFile": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "FormFile": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/maktzalo/update": {
      "put": {
        "tags": [
          "MaktZalo"
        ],
        "summary": "Cập nhật zalo marketing",
        "parameters": [
          {
            "name": "Id",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "Code",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Name",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Description",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Channel",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/MaktZaloChannel"
            }
          },
          {
            "name": "SocialId",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "SocialName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ZnsTemplateId",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ZnsTemplateName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ZnsTemplateParam",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ZnsTemplatePreviewUrl",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ZnsTemplatePrice",
            "in": "query",
            "schema": {
              "type": "number",
              "format": "double"
            }
          },
          {
            "name": "SmsTemplateId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "SmsTemplateName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "SmsTemplateParam",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "SendType",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/EmailSendType"
            }
          },
          {
            "name": "SegmentId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "SegmentName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "FilePath",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ExcelHeader",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Status",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/MarketingStatus"
            }
          },
          {
            "name": "AppointmentDate",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "FormFile": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "FormFile": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/maktzalo/get/{id}": {
      "get": {
        "tags": [
          "MaktZalo"
        ],
        "summary": "Lấy thông tin zalo marketing",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateMaktZaloRequestApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateMaktZaloRequestApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateMaktZaloRequestApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/maktzalo/delete/{id}": {
      "delete": {
        "tags": [
          "MaktZalo"
        ],
        "summary": "Xóa zalo marketing",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/opportunity/create": {
      "post": {
        "tags": [
          "Opportunity"
        ],
        "summary": "Thêm mới cơ hội",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateOpportunityRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateOpportunityRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateOpportunityRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/opportunity/update": {
      "put": {
        "tags": [
          "Opportunity"
        ],
        "summary": "Cập nhật cơ hội",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateOpportunityRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateOpportunityRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateOpportunityRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/opportunity/get/{id}": {
      "get": {
        "tags": [
          "Opportunity"
        ],
        "summary": "Lấy thông tin cơ hội",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateOpportunityRequestApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateOpportunityRequestApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateOpportunityRequestApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/opportunity/delete/{id}": {
      "delete": {
        "tags": [
          "Opportunity"
        ],
        "summary": "Xóa cơ hội",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/opportunity/search": {
      "post": {
        "tags": [
          "Opportunity"
        ],
        "summary": "Tìm kiếm cơ hội",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchOpportunityRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchOpportunityRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SearchOpportunityRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SearchOpportunityDtoPaginationResponseApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchOpportunityDtoPaginationResponseApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchOpportunityDtoPaginationResponseApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/opportunity/stage/{id}/{stage}": {
      "get": {
        "tags": [
          "Opportunity"
        ],
        "summary": "Cập nhật giai đoạn cơ hội",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "stage",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/OpportunityStage"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/order/crm/create": {
      "post": {
        "tags": [
          "Order"
        ],
        "summary": "Thêm đơn hàng",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCrmOrderRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCrmOrderRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCrmOrderRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/order/crm/update": {
      "put": {
        "tags": [
          "Order"
        ],
        "summary": "Cập nhật đơn hàng",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCrmOrderRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCrmOrderRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCrmOrderRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/order/crm/get/{id}": {
      "get": {
        "tags": [
          "Order"
        ],
        "summary": "Lấy thông tin đơn hàng",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateCrmOrderRequestApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateCrmOrderRequestApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateCrmOrderRequestApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/order/crm/delete/{id}": {
      "delete": {
        "tags": [
          "Order"
        ],
        "summary": "Xoá đơn hàng",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/order/crm/search": {
      "post": {
        "tags": [
          "Order"
        ],
        "summary": "Tìm kiếm đơn hàng",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PagingOrderRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/PagingOrderRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/PagingOrderRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PagingOrderDtoPaginationResponseApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PagingOrderDtoPaginationResponseApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PagingOrderDtoPaginationResponseApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/order/crm/approve": {
      "post": {
        "tags": [
          "Order"
        ],
        "summary": "Xác thực đơn hàng",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ApproveOrderRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ApproveOrderRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ApproveOrderRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/order/crm/cancel": {
      "post": {
        "tags": [
          "Order"
        ],
        "summary": "Huỷ đơn hàng",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CancelOrderRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CancelOrderRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CancelOrderRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/order/crm/print-a4": {
      "post": {
        "tags": [
          "Order"
        ],
        "summary": "In A4 đơn hàng",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CrmPrintA4OrderRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CrmPrintA4OrderRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CrmPrintA4OrderRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/StringApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StringApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/StringApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/order/crm/print-8cm": {
      "post": {
        "tags": [
          "Order"
        ],
        "summary": "In 8cm đơn hàng",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CrmPrint8cmOrderRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CrmPrint8cmOrderRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CrmPrint8cmOrderRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/StringApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StringApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/StringApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/product/crm/create": {
      "post": {
        "tags": [
          "Product"
        ],
        "summary": "Thêm sản phẩm",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCrmProductRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCrmProductRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCrmProductRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/product/crm/update": {
      "put": {
        "tags": [
          "Product"
        ],
        "summary": "Cập nhật sản phẩm",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCrmProductRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCrmProductRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCrmProductRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/product/crm/get/{id}": {
      "get": {
        "tags": [
          "Product"
        ],
        "summary": "Lấy thông tin sản phẩm",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateCrmProductRequestApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateCrmProductRequestApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateCrmProductRequestApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/product/crm/delete/{id}": {
      "delete": {
        "tags": [
          "Product"
        ],
        "summary": "Xoá sản phẩm",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/product/crm/search": {
      "post": {
        "tags": [
          "Product"
        ],
        "summary": "Tìm kiếm sản phẩm",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PagingProductRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/PagingProductRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/PagingProductRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PagingProductDtoPaginationResponseApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PagingProductDtoPaginationResponseApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PagingProductDtoPaginationResponseApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/product/crm/unit/create": {
      "post": {
        "tags": [
          "Product"
        ],
        "summary": "Cập nhật đươn vị",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCrmUnitRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCrmUnitRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCrmUnitRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Int32ApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Int32ApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Int32ApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/product/crm/unit/update": {
      "put": {
        "tags": [
          "Product"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCrmUnitRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCrmUnitRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCrmUnitRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Int32ApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Int32ApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Int32ApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/product/crm/multi-unit/{productId}": {
      "get": {
        "tags": [
          "Product"
        ],
        "summary": "Danh sách đơn vị của sản phẩm",
        "parameters": [
          {
            "name": "productId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CrmProductMultiUnitDtoListApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CrmProductMultiUnitDtoListApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CrmProductMultiUnitDtoListApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/product/crm/multi-unit/save": {
      "post": {
        "tags": [
          "Product"
        ],
        "summary": "Cập nhật đơn vị của sản phẩm",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SaveProductMultiUnitRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SaveProductMultiUnitRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SaveProductMultiUnitRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/quote/create": {
      "post": {
        "tags": [
          "Quote"
        ],
        "summary": "Thêm báo giá",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateQuoteRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateQuoteRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateQuoteRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/quote/update": {
      "put": {
        "tags": [
          "Quote"
        ],
        "summary": "Cập nhật báo giá",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateQuoteRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateQuoteRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateQuoteRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/quote/get/{id}": {
      "get": {
        "tags": [
          "Quote"
        ],
        "summary": "Lấy thông tin báo giá",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateQuoteRequestApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateQuoteRequestApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateQuoteRequestApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/quote/delete/{id}": {
      "delete": {
        "tags": [
          "Quote"
        ],
        "summary": "Xóa báo giá",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/quote/search": {
      "post": {
        "tags": [
          "Quote"
        ],
        "summary": "Tìm kiếm báo giá",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PagingQuoteRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/PagingQuoteRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/PagingQuoteRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/PagingQuoteDtoPaginationResponseApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PagingQuoteDtoPaginationResponseApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/PagingQuoteDtoPaginationResponseApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/quote/submit-approval": {
      "post": {
        "tags": [
          "Quote"
        ],
        "summary": "Trình duyệt báo giá",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SubmitQuoteApprovalRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SubmitQuoteApprovalRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SubmitQuoteApprovalRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/quote/approve": {
      "post": {
        "tags": [
          "Quote"
        ],
        "summary": "Duyệt hoặc từ chối báo giá",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ApproveQuoteRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ApproveQuoteRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ApproveQuoteRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/quote/convert-to-order": {
      "post": {
        "tags": [
          "Quote"
        ],
        "summary": "Chuyển báo giá thành đơn hàng",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ConvertQuoteToOrderRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/ConvertQuoteToOrderRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/ConvertQuoteToOrderRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/quote/print-a4": {
      "post": {
        "tags": [
          "Quote"
        ],
        "summary": "In A4 báo giá",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PrintA4QuoteRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/PrintA4QuoteRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/PrintA4QuoteRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/StringApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StringApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/StringApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/segment/create": {
      "post": {
        "tags": [
          "Segment"
        ],
        "summary": "Thêm mới segment",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSegmentRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSegmentRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateSegmentRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/segment/update": {
      "put": {
        "tags": [
          "Segment"
        ],
        "summary": "Cập nhật segment",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSegmentRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSegmentRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateSegmentRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/segment/delete/{id}": {
      "delete": {
        "tags": [
          "Segment"
        ],
        "summary": "Xóa segment",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/segment/get/{id}": {
      "get": {
        "tags": [
          "Segment"
        ],
        "summary": "Lấy thông tin segment",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SearchSegmentDtoApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchSegmentDtoApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchSegmentDtoApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/segment/search": {
      "post": {
        "tags": [
          "Segment"
        ],
        "summary": "Tìm kiếm segment",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchSegmentRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchSegmentRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SearchSegmentRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SearchSegmentDtoPaginationResponseApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchSegmentDtoPaginationResponseApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchSegmentDtoPaginationResponseApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/segment/member/search": {
      "post": {
        "tags": [
          "Segment"
        ],
        "summary": "Tìm kiếm thành viên trong segment",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchSegMemberRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchSegMemberRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SearchSegMemberRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SearchSegMemberDtoPaginationResponseApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchSegMemberDtoPaginationResponseApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchSegMemberDtoPaginationResponseApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/segment/member/add": {
      "post": {
        "tags": [
          "Segment"
        ],
        "summary": "Thêm thành viên trong segment",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddSegMemberRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/AddSegMemberRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/AddSegMemberRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/segment/member/delete": {
      "post": {
        "tags": [
          "Segment"
        ],
        "summary": "Xóa thành viên trong segment",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DeleteSegMemberRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/DeleteSegMemberRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/DeleteSegMemberRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/template/create": {
      "post": {
        "tags": [
          "Template"
        ],
        "summary": "Thêm mới mẫu",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTemplateRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTemplateRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTemplateRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/template/update": {
      "put": {
        "tags": [
          "Template"
        ],
        "summary": "Cập nhật mẫu",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTemplateRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTemplateRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTemplateRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/template/get/{id}": {
      "get": {
        "tags": [
          "Template"
        ],
        "summary": "Lấy thông tin mẫu",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateTemplateRequestApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateTemplateRequestApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateTemplateRequestApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/template/delete/{id}": {
      "delete": {
        "tags": [
          "Template"
        ],
        "summary": "Xóa mẫu",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/template/search": {
      "post": {
        "tags": [
          "Template"
        ],
        "summary": "Tìm kiếm mẫu",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchTemplateRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchTemplateRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SearchTemplateRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SearchTemplateDtoPaginationResponseApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchTemplateDtoPaginationResponseApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchTemplateDtoPaginationResponseApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/ticket/search": {
      "post": {
        "tags": [
          "Ticket"
        ],
        "summary": "Tìm kiếm ticket",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchTicketRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchTicketRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SearchTicketRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SearchTicketDtoPaginationResponseApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchTicketDtoPaginationResponseApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchTicketDtoPaginationResponseApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/ticket/create": {
      "post": {
        "tags": [
          "Ticket"
        ],
        "summary": "Thêm mới ticket",
        "parameters": [
          {
            "name": "Code",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Subject",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Description",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "TypeId",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "TypeName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Priority",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/TicketPriority"
            }
          },
          {
            "name": "Status",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/TicketStatus"
            }
          },
          {
            "name": "Channel",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/TicketChannel"
            }
          },
          {
            "name": "CustomerId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "CustomerName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ContactId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "ContactName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ProductId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "ProductName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "OrderId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "OrderCode",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "OwnerId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "OwnerName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "OrgUnitId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "OrgUnitName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "CreatedOn",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "FormFiles": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "format": "binary"
                    }
                  }
                }
              },
              "encoding": {
                "FormFiles": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/ticket/update": {
      "put": {
        "tags": [
          "Ticket"
        ],
        "summary": "Cập nhật ticket",
        "parameters": [
          {
            "name": "Id",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "Code",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Subject",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Description",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "TypeId",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "TypeName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Priority",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/TicketPriority"
            }
          },
          {
            "name": "Status",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/TicketStatus"
            }
          },
          {
            "name": "Channel",
            "in": "query",
            "schema": {
              "$ref": "#/components/schemas/TicketChannel"
            }
          },
          {
            "name": "CustomerId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "CustomerName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ContactId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "ContactName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ProductId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "ProductName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "OrderId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "OrderCode",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "OwnerId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "OwnerName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "OrgUnitId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "OrgUnitName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "CreatedOn",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "FormFiles": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "format": "binary"
                    }
                  }
                }
              },
              "encoding": {
                "FormFiles": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/ticket/get/{id}": {
      "get": {
        "tags": [
          "Ticket"
        ],
        "summary": "Lấy thông tin ticket",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateTicketRequestApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateTicketRequestApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateTicketRequestApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/ticket/delete/{id}": {
      "delete": {
        "tags": [
          "Ticket"
        ],
        "summary": "Xóa ticket",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/ticket/change/status/{id}/{status}": {
      "get": {
        "tags": [
          "Ticket"
        ],
        "summary": "Cập nhật trạng thái ticket (1: Tiếp nhận, 2: Thực hiện, 3: Hoàn thành, 4: Huỷ)",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "status",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/TicketStatus"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/ticket/send/comment": {
      "post": {
        "tags": [
          "Ticket"
        ],
        "summary": "Gửi tin nhắn trong ticket",
        "parameters": [
          {
            "name": "TenantCode",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "TicketId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "UserId",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "UserName",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Message",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "FormFiles": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "format": "binary"
                    }
                  }
                }
              },
              "encoding": {
                "FormFiles": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GuidApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/ticket/comment/search": {
      "post": {
        "tags": [
          "Ticket"
        ],
        "summary": "Danh sách tin nhắn trong ticket",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchCommentRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchCommentRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SearchCommentRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/TicketCommentDtoPaginationResponseApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TicketCommentDtoPaginationResponseApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/TicketCommentDtoPaginationResponseApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/ticket/type/search": {
      "post": {
        "tags": [
          "Ticket"
        ],
        "summary": "Tìm kiếm loại ticket",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchTicketTypeRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchTicketTypeRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/SearchTicketTypeRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/SearchTicketTypeDtoPaginationResponseApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchTicketTypeDtoPaginationResponseApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchTicketTypeDtoPaginationResponseApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/ticket/type/create": {
      "post": {
        "tags": [
          "Ticket"
        ],
        "summary": "Thêm loại ticket",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTicketTypeRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTicketTypeRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTicketTypeRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Int32ApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Int32ApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Int32ApiResult"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/ticket/type/{id}": {
      "delete": {
        "tags": [
          "Ticket"
        ],
        "summary": "Xóa loại ticket",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/BooleanApiResult"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "ActivityPriority": {
        "enum": [
          1,
          2,
          3
        ],
        "type": "integer",
        "format": "int32"
      },
      "ActivityStatus": {
        "enum": [
          1,
          2,
          3,
          4
        ],
        "type": "integer",
        "format": "int32"
      },
      "ActivityType": {
        "enum": [
          1,
          2,
          3,
          4
        ],
        "type": "integer",
        "format": "int32"
      },
      "AddMemByEMaktReport": {
        "type": "object",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/SegmentType"
          },
          "id": {
            "type": "string",
            "format": "uuid"
          }
        },
        "additionalProperties": false
      },
      "AddSegMemberRequest": {
        "type": "object",
        "properties": {
          "segmentId": {
            "type": "string",
            "format": "uuid"
          },
          "type": {
            "$ref": "#/components/schemas/SegmentType"
          },
          "ids": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          },
          "maktReports": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AddMemByEMaktReport"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ApproveOrderRequest": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "approve": {
            "type": "boolean"
          },
          "note": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ApproveQuoteRequest": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "approve": {
            "type": "boolean"
          },
          "note": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "AttachmentDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "format": "int32"
          },
          "module": {
            "$ref": "#/components/schemas/ModuleEnum"
          },
          "masterId": {
            "type": "string",
            "format": "uuid"
          },
          "filePath": {
            "type": "string",
            "nullable": true
          },
          "fileName": {
            "type": "string",
            "nullable": true
          },
          "size": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "createdBy": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "createdByName": {
            "type": "string",
            "nullable": true
          },
          "createdOn": {
            "type": "string",
            "format": "date-time"
          },
          "lastModifiedBy": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "lastModifiedByName": {
            "type": "string",
            "nullable": true
          },
          "lastModifiedOn": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "BooleanApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "type": "boolean"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CampaignStatus": {
        "enum": [
          1,
          2,
          3,
          4,
          5
        ],
        "type": "integer",
        "format": "int32"
      },
      "CampaignType": {
        "enum": [
          1,
          2,
          3,
          4,
          5
        ],
        "type": "integer",
        "format": "int32"
      },
      "CancelOrderRequest": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "note": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ConsentStatus": {
        "enum": [
          0,
          1,
          2,
          3
        ],
        "type": "integer",
        "format": "int32"
      },
      "ContactChannels": {
        "enum": [
          1,
          2,
          3,
          4,
          5,
          99
        ],
        "type": "integer",
        "format": "int32"
      },
      "ConvertQuoteToOrderRequest": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          }
        },
        "additionalProperties": false
      },
      "CreateActivityRequest": {
        "type": "object",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/ActivityType"
          },
          "subject": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "$ref": "#/components/schemas/ActivityStatus"
          },
          "priority": {
            "$ref": "#/components/schemas/ActivityPriority"
          },
          "startTime": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "endTime": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "dueDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "isAllDay": {
            "type": "boolean",
            "nullable": true
          },
          "ownerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "ownerName": {
            "type": "string",
            "nullable": true
          },
          "orgUnitId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "orgUnitName": {
            "type": "string",
            "nullable": true
          },
          "extraData": {
            "type": "string",
            "nullable": true
          },
          "primaryType": {
            "$ref": "#/components/schemas/ModuleEnum"
          },
          "primaryId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "primaryName": {
            "type": "string",
            "nullable": true
          },
          "relatedType": {
            "$ref": "#/components/schemas/ModuleEnum"
          },
          "relatedId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "relatedName": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateCampaignRequest": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "objective": {
            "type": "string",
            "nullable": true
          },
          "type": {
            "$ref": "#/components/schemas/CampaignType"
          },
          "status": {
            "$ref": "#/components/schemas/CampaignStatus"
          },
          "startDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "endDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "expectedRevenue": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "actualRevenue": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "budgetedCost": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "actualCost": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "expectedResponseRate": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "actualResponseRate": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "expectedLeadCount": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "actualLeadCount": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "actualOpportunityCount": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "actualCustomerCount": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "contentSummary": {
            "type": "string",
            "nullable": true
          },
          "note": {
            "type": "string",
            "nullable": true
          },
          "ownerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "ownerName": {
            "type": "string",
            "nullable": true
          },
          "orgUnitId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "orgUnitName": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateContactRequest": {
        "type": "object",
        "properties": {
          "customerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "customerName": {
            "type": "string",
            "nullable": true
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "fullName": {
            "type": "string",
            "nullable": true
          },
          "position": {
            "type": "string",
            "nullable": true
          },
          "department": {
            "type": "string",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "nullable": true
          },
          "phone2": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "source": {
            "$ref": "#/components/schemas/LeadSources"
          },
          "preferredChannel": {
            "$ref": "#/components/schemas/ContactChannels"
          },
          "gender": {
            "$ref": "#/components/schemas/Gender"
          },
          "birthday": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "nationalId": {
            "type": "string",
            "nullable": true
          },
          "address": {
            "type": "string",
            "nullable": true
          },
          "country": {
            "type": "string",
            "nullable": true
          },
          "province": {
            "type": "string",
            "nullable": true
          },
          "ward": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "string",
            "nullable": true
          },
          "lastContactDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "nextFollowUp": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "consentStatus": {
            "$ref": "#/components/schemas/ConsentStatus"
          },
          "consentDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "isPrimary": {
            "type": "boolean"
          },
          "note": {
            "type": "string",
            "nullable": true
          },
          "ownerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "ownerName": {
            "type": "string",
            "nullable": true
          },
          "orgUnitId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "orgUnitName": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateCrmOrderRequest": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "nullable": true
          },
          "customerId": {
            "type": "string",
            "format": "uuid"
          },
          "customerName": {
            "type": "string",
            "nullable": true
          },
          "orderDate": {
            "type": "string",
            "format": "date-time"
          },
          "dueDate": {
            "type": "string",
            "format": "date-time"
          },
          "totalAmount": {
            "type": "number",
            "format": "double"
          },
          "taxAmount": {
            "type": "number",
            "format": "double"
          },
          "taxType": {
            "$ref": "#/components/schemas/TaxType"
          },
          "discountType": {
            "$ref": "#/components/schemas/DiscountType"
          },
          "discountAmount": {
            "type": "number",
            "format": "double"
          },
          "status": {
            "$ref": "#/components/schemas/CrmOrderStatus"
          },
          "approved": {
            "type": "boolean"
          },
          "note": {
            "type": "string",
            "nullable": true
          },
          "receiverName": {
            "type": "string",
            "nullable": true
          },
          "receiverPhone": {
            "type": "string",
            "nullable": true
          },
          "receiverEmail": {
            "type": "string",
            "nullable": true
          },
          "receiverAddress": {
            "type": "string",
            "nullable": true
          },
          "sourceQuoteId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "sourceQuoteCode": {
            "type": "string",
            "nullable": true
          },
          "products": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateCrmProductRequest": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "groupId": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "groupName": {
            "type": "string",
            "nullable": true
          },
          "unitId": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "unitName": {
            "type": "string",
            "nullable": true
          },
          "importPrice": {
            "type": "number",
            "format": "double"
          },
          "retailPrice": {
            "type": "number",
            "format": "double"
          },
          "wholesalePrice": {
            "type": "number",
            "format": "double"
          },
          "config": {
            "type": "string",
            "nullable": true
          },
          "note": {
            "type": "string",
            "nullable": true
          },
          "image": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateCrmUnitRequest": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "note": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateCustomerGroupRequest": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "note": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateCustomerRequest": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "type": {
            "$ref": "#/components/schemas/CustomerType"
          },
          "taxCode": {
            "type": "string",
            "nullable": true
          },
          "businessType": {
            "type": "string",
            "nullable": true
          },
          "groupId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "groupName": {
            "type": "string",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "nullable": true
          },
          "phone2": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "website": {
            "type": "string",
            "nullable": true
          },
          "zalo": {
            "type": "string",
            "nullable": true
          },
          "facebook": {
            "type": "string",
            "nullable": true
          },
          "country": {
            "type": "string",
            "nullable": true
          },
          "province": {
            "type": "string",
            "nullable": true
          },
          "ward": {
            "type": "string",
            "nullable": true
          },
          "postalCode": {
            "type": "string",
            "nullable": true
          },
          "address": {
            "type": "string",
            "nullable": true
          },
          "industry": {
            "$ref": "#/components/schemas/IndustryType"
          },
          "rating": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "status": {
            "type": "string",
            "nullable": true
          },
          "source": {
            "type": "string",
            "nullable": true
          },
          "establishedDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "numberOfEmployees": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "annualRevenue": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "creditLimit": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "debtDays": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "bankName": {
            "type": "string",
            "nullable": true
          },
          "bankAccount": {
            "type": "string",
            "nullable": true
          },
          "note": {
            "type": "string",
            "nullable": true
          },
          "ownerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "ownerName": {
            "type": "string",
            "nullable": true
          },
          "orgUnitId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "orgUnitName": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateCustomerShippingAddressRequest": {
        "type": "object",
        "properties": {
          "customerId": {
            "type": "string",
            "format": "uuid"
          },
          "receiverName": {
            "type": "string",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "address": {
            "type": "string",
            "nullable": true
          },
          "isDefault": {
            "type": "boolean"
          },
          "ownerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "ownerName": {
            "type": "string",
            "nullable": true
          },
          "orgUnitId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "orgUnitName": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateLeadRequest": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "nullable": true
          },
          "source": {
            "$ref": "#/components/schemas/LeadSources"
          },
          "sourceDetail": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "$ref": "#/components/schemas/LeadStatus"
          },
          "fullName": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "nullable": true
          },
          "company": {
            "type": "string",
            "nullable": true
          },
          "position": {
            "type": "string",
            "nullable": true
          },
          "campaignName": {
            "type": "string",
            "nullable": true
          },
          "productInterest": {
            "type": "string",
            "nullable": true
          },
          "need": {
            "type": "string",
            "nullable": true
          },
          "industry": {
            "$ref": "#/components/schemas/LeadIndustries"
          },
          "rating": {
            "$ref": "#/components/schemas/LeadRating"
          },
          "score": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "potentialValue": {
            "type": "number",
            "format": "double"
          },
          "probability": {
            "type": "integer",
            "format": "int32"
          },
          "lastContactDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "nextFollowUp": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "expectedCloseDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "lostReason": {
            "type": "string",
            "nullable": true
          },
          "preferredChannel": {
            "$ref": "#/components/schemas/ContactChannels"
          },
          "consentStatus": {
            "$ref": "#/components/schemas/ConsentStatus"
          },
          "consentDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "notes": {
            "type": "string",
            "nullable": true
          },
          "assignedTo": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "ownerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "ownerName": {
            "type": "string",
            "nullable": true
          },
          "orgUnitId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "orgUnitName": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateOpportunityRequest": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "customerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "customerName": {
            "type": "string",
            "nullable": true
          },
          "contactId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "contactName": {
            "type": "string",
            "nullable": true
          },
          "leadId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "leadName": {
            "type": "string",
            "nullable": true
          },
          "amount": {
            "type": "number",
            "format": "double"
          },
          "currency": {
            "type": "string",
            "nullable": true
          },
          "probability": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "stage": {
            "$ref": "#/components/schemas/OpportunityStage"
          },
          "priority": {
            "$ref": "#/components/schemas/OpportunityPriority"
          },
          "sourceType": {
            "$ref": "#/components/schemas/OpportunitySource"
          },
          "source": {
            "type": "string",
            "nullable": true
          },
          "sourceDetail": {
            "type": "string",
            "nullable": true
          },
          "campaignId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "campaignName": {
            "type": "string",
            "nullable": true
          },
          "expectedCloseDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "actualCloseDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "nextActionDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "tags": {
            "type": "string",
            "nullable": true
          },
          "nextStep": {
            "type": "string",
            "nullable": true
          },
          "productInterest": {
            "type": "string",
            "nullable": true
          },
          "competitors": {
            "type": "string",
            "nullable": true
          },
          "winReason": {
            "type": "string",
            "nullable": true
          },
          "lossReason": {
            "type": "string",
            "nullable": true
          },
          "ownerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "ownerName": {
            "type": "string",
            "nullable": true
          },
          "orgUnitId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "orgUnitName": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateQuoteRequest": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "nullable": true
          },
          "customerId": {
            "type": "string",
            "format": "uuid"
          },
          "customerName": {
            "type": "string",
            "nullable": true
          },
          "receiverName": {
            "type": "string",
            "nullable": true
          },
          "receiverPhone": {
            "type": "string",
            "nullable": true
          },
          "receiverEmail": {
            "type": "string",
            "nullable": true
          },
          "receiverAddress": {
            "type": "string",
            "nullable": true
          },
          "opportunityId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "opportunityName": {
            "type": "string",
            "nullable": true
          },
          "quoteDate": {
            "type": "string",
            "format": "date-time"
          },
          "expiryDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "status": {
            "$ref": "#/components/schemas/QuoteStatus"
          },
          "approvalStatus": {
            "$ref": "#/components/schemas/QuoteApprovalStatus"
          },
          "subtotalAmount": {
            "type": "number",
            "format": "double"
          },
          "discountType": {
            "$ref": "#/components/schemas/DiscountType"
          },
          "discountAmount": {
            "type": "number",
            "format": "double"
          },
          "taxType": {
            "$ref": "#/components/schemas/TaxType"
          },
          "taxAmount": {
            "type": "number",
            "format": "double"
          },
          "totalAmount": {
            "type": "number",
            "format": "double"
          },
          "termsAndConditions": {
            "type": "string",
            "nullable": true
          },
          "note": {
            "type": "string",
            "nullable": true
          },
          "ownerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "ownerName": {
            "type": "string",
            "nullable": true
          },
          "orgUnitId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "orgUnitName": {
            "type": "string",
            "nullable": true
          },
          "products": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateSegmentRequest": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateTemplateRequest": {
        "type": "object",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/TemplateType"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "content": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateTicketTypeRequest": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "note": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CrmOrderStatus": {
        "enum": [
          1,
          2,
          3
        ],
        "type": "integer",
        "format": "int32"
      },
      "CrmPrint8cmOrderRequest": {
        "type": "object",
        "properties": {
          "ids": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CrmPrintA4OrderRequest": {
        "type": "object",
        "properties": {
          "ids": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CrmProductMultiUnitDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "productId": {
            "type": "string",
            "format": "uuid"
          },
          "unitId": {
            "type": "integer",
            "format": "int32"
          },
          "unitName": {
            "type": "string",
            "nullable": true
          },
          "unitRate": {
            "type": "number",
            "format": "double"
          },
          "importPrice": {
            "type": "number",
            "format": "double"
          },
          "retailPrice": {
            "type": "number",
            "format": "double"
          },
          "wholesalePrice": {
            "type": "number",
            "format": "double"
          },
          "note": {
            "type": "string",
            "nullable": true
          },
          "entityState": {
            "$ref": "#/components/schemas/EntityState"
          }
        },
        "additionalProperties": false
      },
      "CrmProductMultiUnitDtoListApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CrmProductMultiUnitDto"
            },
            "nullable": true
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CustomerGroupDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "note": {
            "type": "string",
            "nullable": true
          },
          "createdOn": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false
      },
      "CustomerGroupDtoPaginationResponse": {
        "type": "object",
        "properties": {
          "currentPage": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32"
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "hasPreviousPage": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNextPage": {
            "type": "boolean",
            "readOnly": true
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomerGroupDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CustomerGroupDtoPaginationResponseApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/CustomerGroupDtoPaginationResponse"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CustomerOrderShippingAddressDto": {
        "type": "object",
        "properties": {
          "shippingAddressId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "customerId": {
            "type": "string",
            "format": "uuid"
          },
          "receiverName": {
            "type": "string",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "address": {
            "type": "string",
            "nullable": true
          },
          "isFromCustomerMaster": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "CustomerOrderShippingAddressDtoApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/CustomerOrderShippingAddressDto"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CustomerShippingAddressDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "customerId": {
            "type": "string",
            "format": "uuid"
          },
          "receiverName": {
            "type": "string",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "address": {
            "type": "string",
            "nullable": true
          },
          "isDefault": {
            "type": "boolean"
          },
          "ownerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "ownerName": {
            "type": "string",
            "nullable": true
          },
          "orgUnitId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "orgUnitName": {
            "type": "string",
            "nullable": true
          },
          "createdOn": {
            "type": "string",
            "format": "date-time"
          },
          "lastModifiedOn": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CustomerShippingAddressDtoApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/CustomerShippingAddressDto"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CustomerShippingAddressDtoPaginationResponse": {
        "type": "object",
        "properties": {
          "currentPage": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32"
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "hasPreviousPage": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNextPage": {
            "type": "boolean",
            "readOnly": true
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomerShippingAddressDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CustomerShippingAddressDtoPaginationResponseApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/CustomerShippingAddressDtoPaginationResponse"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CustomerTimelineEventType": {
        "enum": [
          1,
          2,
          3,
          4,
          5,
          6,
          7,
          8,
          9,
          10,
          11,
          12,
          13,
          14,
          15,
          16
        ],
        "type": "integer",
        "format": "int32"
      },
      "CustomerTimelineItemDto": {
        "type": "object",
        "properties": {
          "eventId": {
            "type": "string",
            "nullable": true
          },
          "eventType": {
            "$ref": "#/components/schemas/CustomerTimelineEventType"
          },
          "occurredOn": {
            "type": "string",
            "format": "date-time"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "summary": {
            "type": "string",
            "nullable": true
          },
          "sourceModule": {
            "type": "integer",
            "format": "int32"
          },
          "referenceId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "referenceCode": {
            "type": "string",
            "nullable": true
          },
          "referenceUrl": {
            "type": "string",
            "nullable": true
          },
          "actorName": {
            "type": "string",
            "nullable": true
          },
          "badge": {
            "type": "string",
            "nullable": true
          },
          "metadataJson": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CustomerTimelineItemDtoPaginationResponse": {
        "type": "object",
        "properties": {
          "currentPage": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32"
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "hasPreviousPage": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNextPage": {
            "type": "boolean",
            "readOnly": true
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomerTimelineItemDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CustomerTimelineItemDtoPaginationResponseApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/CustomerTimelineItemDtoPaginationResponse"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CustomerTimelineSearchRequest": {
        "type": "object",
        "properties": {
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "search": {
            "type": "string",
            "nullable": true
          },
          "customerId": {
            "type": "string",
            "format": "uuid"
          },
          "eventTypes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomerTimelineEventType"
            },
            "nullable": true
          },
          "from": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "to": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CustomerType": {
        "enum": [
          1,
          2,
          3
        ],
        "type": "integer",
        "format": "int32"
      },
      "DeleteSegMemberRequest": {
        "type": "object",
        "properties": {
          "segmentId": {
            "type": "string",
            "format": "uuid"
          },
          "ids": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int32"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DiscountType": {
        "enum": [
          0,
          1,
          2
        ],
        "type": "integer",
        "format": "int32"
      },
      "EmailSendType": {
        "enum": [
          1,
          2
        ],
        "type": "integer",
        "format": "int32"
      },
      "EmailSupplier": {
        "enum": [
          1,
          2
        ],
        "type": "integer",
        "format": "int32"
      },
      "EntityState": {
        "enum": [
          0,
          1,
          2,
          3
        ],
        "type": "integer",
        "format": "int32"
      },
      "ExecuteLeadConvertRequest": {
        "type": "object",
        "properties": {
          "leadId": {
            "type": "string",
            "format": "uuid"
          },
          "mode": {
            "$ref": "#/components/schemas/LeadConversionMode"
          },
          "customerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "customerName": {
            "type": "string",
            "nullable": true
          },
          "contactId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "contactName": {
            "type": "string",
            "nullable": true
          },
          "createOpportunity": {
            "type": "boolean"
          },
          "opportunityName": {
            "type": "string",
            "nullable": true
          },
          "opportunityAmount": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "expectedCloseDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "opportunityStage": {
            "$ref": "#/components/schemas/OpportunityStage"
          },
          "opportunityPriority": {
            "$ref": "#/components/schemas/OpportunityPriority"
          },
          "conversionNote": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Gender": {
        "enum": [
          1,
          2,
          3
        ],
        "type": "integer",
        "format": "int32"
      },
      "GetCustomerDetailDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "type": {
            "$ref": "#/components/schemas/CustomerType"
          },
          "taxCode": {
            "type": "string",
            "nullable": true
          },
          "businessType": {
            "type": "string",
            "nullable": true
          },
          "groupId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "groupName": {
            "type": "string",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "nullable": true
          },
          "phone2": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "website": {
            "type": "string",
            "nullable": true
          },
          "zalo": {
            "type": "string",
            "nullable": true
          },
          "facebook": {
            "type": "string",
            "nullable": true
          },
          "country": {
            "type": "string",
            "nullable": true
          },
          "province": {
            "type": "string",
            "nullable": true
          },
          "ward": {
            "type": "string",
            "nullable": true
          },
          "postalCode": {
            "type": "string",
            "nullable": true
          },
          "address": {
            "type": "string",
            "nullable": true
          },
          "industry": {
            "$ref": "#/components/schemas/IndustryType"
          },
          "rating": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "status": {
            "type": "string",
            "nullable": true
          },
          "source": {
            "type": "string",
            "nullable": true
          },
          "establishedDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "numberOfEmployees": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "annualRevenue": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "creditLimit": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "debtDays": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "bankName": {
            "type": "string",
            "nullable": true
          },
          "bankAccount": {
            "type": "string",
            "nullable": true
          },
          "note": {
            "type": "string",
            "nullable": true
          },
          "ownerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "ownerName": {
            "type": "string",
            "nullable": true
          },
          "orgUnitId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "orgUnitName": {
            "type": "string",
            "nullable": true
          },
          "shareWithUsers": {
            "type": "string",
            "nullable": true
          },
          "shareWithOrgUnits": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GetCustomerDetailDtoApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/GetCustomerDetailDto"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GetTokenForPublicApiRequest": {
        "type": "object",
        "properties": {
          "clientId": {
            "type": "string",
            "nullable": true
          },
          "clientSecret": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GuidApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "type": "string",
            "format": "uuid"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "IndustryType": {
        "enum": [
          1,
          2,
          3,
          4,
          5,
          6,
          7,
          8,
          9,
          10,
          11,
          12,
          13,
          99
        ],
        "type": "integer",
        "format": "int32"
      },
      "Int32ApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "type": "integer",
            "format": "int32"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "LeadConversionMode": {
        "enum": [
          1,
          2,
          3
        ],
        "type": "integer",
        "format": "int32"
      },
      "LeadConvertDuplicateContactDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "customerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "customerName": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "nullable": true
          },
          "matchBy": {
            "type": "string",
            "nullable": true
          },
          "isExact": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "LeadConvertDuplicateCustomerDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "nullable": true
          },
          "matchBy": {
            "type": "string",
            "nullable": true
          },
          "isExact": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "LeadConvertPreviewDto": {
        "type": "object",
        "properties": {
          "leadId": {
            "type": "string",
            "format": "uuid"
          },
          "leadName": {
            "type": "string",
            "nullable": true
          },
          "company": {
            "type": "string",
            "nullable": true
          },
          "potentialValue": {
            "type": "number",
            "format": "double"
          },
          "probability": {
            "type": "integer",
            "format": "int32"
          },
          "expectedCloseDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "status": {
            "$ref": "#/components/schemas/LeadStatus"
          },
          "canConvert": {
            "type": "boolean"
          },
          "validationMessage": {
            "type": "string",
            "nullable": true
          },
          "suggestedMode": {
            "$ref": "#/components/schemas/LeadConversionMode"
          },
          "suggestedCustomerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "suggestedCustomerName": {
            "type": "string",
            "nullable": true
          },
          "customerDuplicates": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LeadConvertDuplicateCustomerDto"
            },
            "nullable": true
          },
          "contactDuplicates": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LeadConvertDuplicateContactDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "LeadConvertPreviewDtoApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/LeadConvertPreviewDto"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "LeadConvertResultDto": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "leadId": {
            "type": "string",
            "format": "uuid"
          },
          "customerId": {
            "type": "string",
            "format": "uuid"
          },
          "customerName": {
            "type": "string",
            "nullable": true
          },
          "contactId": {
            "type": "string",
            "format": "uuid"
          },
          "contactName": {
            "type": "string",
            "nullable": true
          },
          "opportunityId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "createdNewCustomer": {
            "type": "boolean"
          },
          "createdNewContact": {
            "type": "boolean"
          },
          "createdOpportunity": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "LeadConvertResultDtoApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/LeadConvertResultDto"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "LeadIndustries": {
        "enum": [
          1,
          2,
          3,
          4,
          5,
          6,
          7,
          8
        ],
        "type": "integer",
        "format": "int32"
      },
      "LeadRating": {
        "enum": [
          1,
          2,
          3
        ],
        "type": "integer",
        "format": "int32"
      },
      "LeadSources": {
        "enum": [
          1,
          2,
          3,
          4,
          5,
          6,
          7,
          8
        ],
        "type": "integer",
        "format": "int32"
      },
      "LeadStatus": {
        "enum": [
          1,
          2,
          3,
          4,
          5
        ],
        "type": "integer",
        "format": "int32"
      },
      "MaktZaloChannel": {
        "enum": [
          1,
          2,
          3
        ],
        "type": "integer",
        "format": "int32"
      },
      "MarketingStatus": {
        "enum": [
          1,
          2,
          3,
          4,
          5
        ],
        "type": "integer",
        "format": "int32"
      },
      "ModuleEnum": {
        "enum": [
          1,
          2,
          3,
          4,
          5,
          6,
          7,
          8,
          9,
          10,
          11,
          12,
          13,
          14,
          15,
          16,
          17,
          18,
          19,
          20,
          21
        ],
        "type": "integer",
        "format": "int32"
      },
      "OpportunityPriority": {
        "enum": [
          1,
          2,
          3,
          4
        ],
        "type": "integer",
        "format": "int32"
      },
      "OpportunitySource": {
        "enum": [
          1,
          2,
          3,
          4,
          5,
          6,
          7,
          8,
          9,
          10
        ],
        "type": "integer",
        "format": "int32"
      },
      "OpportunityStage": {
        "enum": [
          1,
          2,
          3,
          4,
          5,
          6
        ],
        "type": "integer",
        "format": "int32"
      },
      "PagingOrderDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "customerId": {
            "type": "string",
            "format": "uuid"
          },
          "customerName": {
            "type": "string",
            "nullable": true
          },
          "orderDate": {
            "type": "string",
            "format": "date-time"
          },
          "dueDate": {
            "type": "string",
            "format": "date-time"
          },
          "totalAmount": {
            "type": "number",
            "format": "double"
          },
          "approved": {
            "type": "boolean"
          },
          "approvedDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "status": {
            "$ref": "#/components/schemas/CrmOrderStatus"
          }
        },
        "additionalProperties": false
      },
      "PagingOrderDtoPaginationResponse": {
        "type": "object",
        "properties": {
          "currentPage": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32"
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "hasPreviousPage": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNextPage": {
            "type": "boolean",
            "readOnly": true
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PagingOrderDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PagingOrderDtoPaginationResponseApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/PagingOrderDtoPaginationResponse"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PagingOrderRequest": {
        "type": "object",
        "properties": {
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "search": {
            "type": "string",
            "nullable": true
          },
          "approved": {
            "type": "boolean",
            "nullable": true
          },
          "status": {
            "$ref": "#/components/schemas/CrmOrderStatus"
          },
          "customerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "fieldDate": {
            "type": "string",
            "nullable": true
          },
          "from": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "to": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PagingProductDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "groupId": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "groupName": {
            "type": "string",
            "nullable": true
          },
          "unitId": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "unitName": {
            "type": "string",
            "nullable": true
          },
          "retailPrice": {
            "type": "number",
            "format": "double"
          },
          "image": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PagingProductDtoPaginationResponse": {
        "type": "object",
        "properties": {
          "currentPage": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32"
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "hasPreviousPage": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNextPage": {
            "type": "boolean",
            "readOnly": true
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PagingProductDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PagingProductDtoPaginationResponseApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/PagingProductDtoPaginationResponse"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PagingProductRequest": {
        "type": "object",
        "properties": {
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "search": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PagingQuoteDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "customerId": {
            "type": "string",
            "format": "uuid"
          },
          "customerName": {
            "type": "string",
            "nullable": true
          },
          "receiverName": {
            "type": "string",
            "nullable": true
          },
          "receiverPhone": {
            "type": "string",
            "nullable": true
          },
          "receiverEmail": {
            "type": "string",
            "nullable": true
          },
          "receiverAddress": {
            "type": "string",
            "nullable": true
          },
          "opportunityId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "opportunityName": {
            "type": "string",
            "nullable": true
          },
          "quoteDate": {
            "type": "string",
            "format": "date-time"
          },
          "expiryDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "totalAmount": {
            "type": "number",
            "format": "double"
          },
          "status": {
            "$ref": "#/components/schemas/QuoteStatus"
          },
          "approvalStatus": {
            "$ref": "#/components/schemas/QuoteApprovalStatus"
          },
          "convertedOrderId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "convertedOrderCode": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PagingQuoteDtoPaginationResponse": {
        "type": "object",
        "properties": {
          "currentPage": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32"
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "hasPreviousPage": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNextPage": {
            "type": "boolean",
            "readOnly": true
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PagingQuoteDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PagingQuoteDtoPaginationResponseApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/PagingQuoteDtoPaginationResponse"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PagingQuoteRequest": {
        "type": "object",
        "properties": {
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "search": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "$ref": "#/components/schemas/QuoteStatus"
          },
          "approvalStatus": {
            "$ref": "#/components/schemas/QuoteApprovalStatus"
          },
          "customerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "opportunityId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "fieldDate": {
            "type": "string",
            "nullable": true
          },
          "from": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "to": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "onlyCompletedAndNotConverted": {
            "type": "boolean",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PrintA4QuoteRequest": {
        "type": "object",
        "properties": {
          "ids": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "QuoteApprovalStatus": {
        "enum": [
          1,
          2,
          3,
          4
        ],
        "type": "integer",
        "format": "int32"
      },
      "QuoteStatus": {
        "enum": [
          1,
          2,
          3,
          4,
          5,
          6,
          7
        ],
        "type": "integer",
        "format": "int32"
      },
      "SaveCampMemberRequest": {
        "type": "object",
        "properties": {
          "campaignId": {
            "type": "string",
            "format": "uuid"
          },
          "type": {
            "$ref": "#/components/schemas/SegmentType"
          },
          "ids": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SaveProductMultiUnitRequest": {
        "type": "object",
        "properties": {
          "units": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CrmProductMultiUnitDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchActivityDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "type": {
            "$ref": "#/components/schemas/ActivityType"
          },
          "subject": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "$ref": "#/components/schemas/ActivityStatus"
          },
          "priority": {
            "$ref": "#/components/schemas/ActivityPriority"
          },
          "startTime": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "endTime": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "dueDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "isAllDay": {
            "type": "boolean"
          },
          "ownerId": {
            "type": "string",
            "format": "uuid"
          },
          "ownerName": {
            "type": "string",
            "nullable": true
          },
          "createdBy": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "createdByName": {
            "type": "string",
            "nullable": true
          },
          "createdOn": {
            "type": "string",
            "format": "date-time"
          },
          "lastModifiedBy": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "lastModifiedByName": {
            "type": "string",
            "nullable": true
          },
          "lastModifiedOn": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "primaryType": {
            "$ref": "#/components/schemas/ModuleEnum"
          },
          "primaryId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "primaryName": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchActivityDtoPaginationResponse": {
        "type": "object",
        "properties": {
          "currentPage": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32"
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "hasPreviousPage": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNextPage": {
            "type": "boolean",
            "readOnly": true
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SearchActivityDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchActivityDtoPaginationResponseApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/SearchActivityDtoPaginationResponse"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchActivityRequest": {
        "type": "object",
        "properties": {
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "search": {
            "type": "string",
            "nullable": true
          },
          "type": {
            "$ref": "#/components/schemas/ActivityType"
          },
          "status": {
            "$ref": "#/components/schemas/ActivityStatus"
          },
          "priority": {
            "$ref": "#/components/schemas/ActivityPriority"
          },
          "ownerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "primaryType": {
            "$ref": "#/components/schemas/ModuleEnum"
          },
          "primaryId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "primaryName": {
            "type": "string",
            "nullable": true
          },
          "subject": {
            "type": "string",
            "nullable": true
          },
          "fieldDate": {
            "type": "string",
            "nullable": true
          },
          "from": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "to": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchCampMemberDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "format": "int32"
          },
          "campaignId": {
            "type": "string",
            "format": "uuid"
          },
          "type": {
            "$ref": "#/components/schemas/SegmentType"
          },
          "masterId": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchCampMemberDtoPaginationResponse": {
        "type": "object",
        "properties": {
          "currentPage": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32"
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "hasPreviousPage": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNextPage": {
            "type": "boolean",
            "readOnly": true
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SearchCampMemberDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchCampMemberDtoPaginationResponseApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/SearchCampMemberDtoPaginationResponse"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchCampMemberRequest": {
        "type": "object",
        "properties": {
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "search": {
            "type": "string",
            "nullable": true
          },
          "campaignId": {
            "type": "string",
            "format": "uuid"
          },
          "type": {
            "$ref": "#/components/schemas/SegmentType"
          }
        },
        "additionalProperties": false
      },
      "SearchCampaignDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "objective": {
            "type": "string",
            "nullable": true
          },
          "type": {
            "$ref": "#/components/schemas/CampaignType"
          },
          "status": {
            "$ref": "#/components/schemas/CampaignStatus"
          },
          "startDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "endDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "expectedRevenue": {
            "type": "number",
            "format": "double"
          },
          "actualRevenue": {
            "type": "number",
            "format": "double"
          },
          "budgetedCost": {
            "type": "number",
            "format": "double"
          },
          "actualCost": {
            "type": "number",
            "format": "double"
          },
          "expectedResponseRate": {
            "type": "number",
            "format": "double"
          },
          "actualResponseRate": {
            "type": "number",
            "format": "double"
          },
          "expectedLeadCount": {
            "type": "integer",
            "format": "int32"
          },
          "actualLeadCount": {
            "type": "integer",
            "format": "int32"
          },
          "actualOpportunityCount": {
            "type": "integer",
            "format": "int32"
          },
          "actualCustomerCount": {
            "type": "integer",
            "format": "int32"
          },
          "totalMember": {
            "type": "integer",
            "format": "int32"
          },
          "contentSummary": {
            "type": "string",
            "nullable": true
          },
          "note": {
            "type": "string",
            "nullable": true
          },
          "ownerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "ownerName": {
            "type": "string",
            "nullable": true
          },
          "orgUnitId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "orgUnitName": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchCampaignDtoPaginationResponse": {
        "type": "object",
        "properties": {
          "currentPage": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32"
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "hasPreviousPage": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNextPage": {
            "type": "boolean",
            "readOnly": true
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SearchCampaignDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchCampaignDtoPaginationResponseApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/SearchCampaignDtoPaginationResponse"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchCampaignRequest": {
        "type": "object",
        "properties": {
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "search": {
            "type": "string",
            "nullable": true
          },
          "type": {
            "$ref": "#/components/schemas/CampaignType"
          },
          "status": {
            "$ref": "#/components/schemas/CampaignStatus"
          },
          "ownerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "ownerName": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchCommentRequest": {
        "type": "object",
        "properties": {
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "search": {
            "type": "string",
            "nullable": true
          },
          "ticketId": {
            "type": "string",
            "format": "uuid"
          },
          "tenantCode": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchContactDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "customerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "customerName": {
            "type": "string",
            "nullable": true
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "firstName": {
            "type": "string",
            "nullable": true
          },
          "lastName": {
            "type": "string",
            "nullable": true
          },
          "fullName": {
            "type": "string",
            "nullable": true
          },
          "position": {
            "type": "string",
            "nullable": true
          },
          "department": {
            "type": "string",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "nullable": true
          },
          "phone2": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "source": {
            "$ref": "#/components/schemas/LeadSources"
          },
          "preferredChannel": {
            "$ref": "#/components/schemas/ContactChannels"
          },
          "gender": {
            "$ref": "#/components/schemas/Gender"
          },
          "birthday": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "nationalId": {
            "type": "string",
            "nullable": true
          },
          "address": {
            "type": "string",
            "nullable": true
          },
          "country": {
            "type": "string",
            "nullable": true
          },
          "province": {
            "type": "string",
            "nullable": true
          },
          "ward": {
            "type": "string",
            "nullable": true
          },
          "ownerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "ownerName": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "string",
            "nullable": true
          },
          "lastContactDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "nextFollowUp": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "consentStatus": {
            "$ref": "#/components/schemas/ConsentStatus"
          },
          "consentDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "isPrimary": {
            "type": "boolean"
          },
          "note": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchContactDtoPaginationResponse": {
        "type": "object",
        "properties": {
          "currentPage": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32"
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "hasPreviousPage": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNextPage": {
            "type": "boolean",
            "readOnly": true
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SearchContactDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchContactDtoPaginationResponseApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/SearchContactDtoPaginationResponse"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchContactRequest": {
        "type": "object",
        "properties": {
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "search": {
            "type": "string",
            "nullable": true
          },
          "customerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "fullName": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "string",
            "nullable": true
          },
          "source": {
            "$ref": "#/components/schemas/LeadSources"
          },
          "preferredChannel": {
            "$ref": "#/components/schemas/ContactChannels"
          },
          "consentStatus": {
            "$ref": "#/components/schemas/ConsentStatus"
          }
        },
        "additionalProperties": false
      },
      "SearchCustomerDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "type": {
            "$ref": "#/components/schemas/CustomerType"
          },
          "taxCode": {
            "type": "string",
            "nullable": true
          },
          "businessType": {
            "type": "string",
            "nullable": true
          },
          "groupId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "groupName": {
            "type": "string",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "nullable": true
          },
          "phone2": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "website": {
            "type": "string",
            "nullable": true
          },
          "zalo": {
            "type": "string",
            "nullable": true
          },
          "address": {
            "type": "string",
            "nullable": true
          },
          "province": {
            "type": "string",
            "nullable": true
          },
          "industry": {
            "$ref": "#/components/schemas/IndustryType"
          },
          "status": {
            "type": "string",
            "nullable": true
          },
          "ownerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "ownerName": {
            "type": "string",
            "nullable": true
          },
          "note": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchCustomerDtoPaginationResponse": {
        "type": "object",
        "properties": {
          "currentPage": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32"
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "hasPreviousPage": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNextPage": {
            "type": "boolean",
            "readOnly": true
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SearchCustomerDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchCustomerDtoPaginationResponseApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/SearchCustomerDtoPaginationResponse"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchCustomerGroupRequest": {
        "type": "object",
        "properties": {
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "search": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchCustomerRequest": {
        "type": "object",
        "properties": {
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "search": {
            "type": "string",
            "nullable": true
          },
          "groupId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "nullable": true
          },
          "industry": {
            "$ref": "#/components/schemas/IndustryType"
          },
          "status": {
            "type": "string",
            "nullable": true
          },
          "province": {
            "type": "string",
            "nullable": true
          },
          "type": {
            "$ref": "#/components/schemas/CustomerType"
          }
        },
        "additionalProperties": false
      },
      "SearchCustomerShippingAddressRequest": {
        "type": "object",
        "properties": {
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "search": {
            "type": "string",
            "nullable": true
          },
          "customerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchLeadDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "source": {
            "$ref": "#/components/schemas/LeadSources"
          },
          "sourceDetail": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "$ref": "#/components/schemas/LeadStatus"
          },
          "fullName": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "nullable": true
          },
          "company": {
            "type": "string",
            "nullable": true
          },
          "position": {
            "type": "string",
            "nullable": true
          },
          "campaignName": {
            "type": "string",
            "nullable": true
          },
          "productInterest": {
            "type": "string",
            "nullable": true
          },
          "need": {
            "type": "string",
            "nullable": true
          },
          "industry": {
            "$ref": "#/components/schemas/LeadIndustries"
          },
          "rating": {
            "$ref": "#/components/schemas/LeadRating"
          },
          "score": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "potentialValue": {
            "type": "number",
            "format": "double"
          },
          "lastContactDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "nextFollowUp": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "expectedCloseDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "lostReason": {
            "type": "string",
            "nullable": true
          },
          "preferredChannel": {
            "$ref": "#/components/schemas/ContactChannels"
          },
          "consentStatus": {
            "$ref": "#/components/schemas/ConsentStatus"
          },
          "consentDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "convertedCustomerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "convertedContactId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "convertedOpportunityId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "convertedOn": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "assignedTo": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchLeadDtoPaginationResponse": {
        "type": "object",
        "properties": {
          "currentPage": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32"
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "hasPreviousPage": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNextPage": {
            "type": "boolean",
            "readOnly": true
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SearchLeadDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchLeadDtoPaginationResponseApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/SearchLeadDtoPaginationResponse"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchLeadRequest": {
        "type": "object",
        "properties": {
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "search": {
            "type": "string",
            "nullable": true
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "fullName": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "nullable": true
          },
          "source": {
            "$ref": "#/components/schemas/LeadSources"
          },
          "status": {
            "$ref": "#/components/schemas/LeadStatus"
          },
          "preferredChannel": {
            "$ref": "#/components/schemas/ContactChannels"
          },
          "consentStatus": {
            "$ref": "#/components/schemas/ConsentStatus"
          }
        },
        "additionalProperties": false
      },
      "SearchMaktEmailDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "$ref": "#/components/schemas/MarketingStatus"
          },
          "subject": {
            "type": "string",
            "nullable": true
          },
          "supplier": {
            "$ref": "#/components/schemas/EmailSupplier"
          },
          "createdByName": {
            "type": "string",
            "nullable": true
          },
          "createdOn": {
            "type": "string",
            "format": "date-time",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "SearchMaktEmailDtoPaginationResponse": {
        "type": "object",
        "properties": {
          "currentPage": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32"
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "hasPreviousPage": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNextPage": {
            "type": "boolean",
            "readOnly": true
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SearchMaktEmailDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchMaktEmailDtoPaginationResponseApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/SearchMaktEmailDtoPaginationResponse"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchMaktEmailRequest": {
        "type": "object",
        "properties": {
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "search": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "$ref": "#/components/schemas/MarketingStatus"
          },
          "supplier": {
            "$ref": "#/components/schemas/EmailSupplier"
          }
        },
        "additionalProperties": false
      },
      "SearchMaktZaloDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "$ref": "#/components/schemas/MarketingStatus"
          },
          "socialName": {
            "type": "string",
            "nullable": true
          },
          "znsTemplateName": {
            "type": "string",
            "nullable": true
          },
          "createdByName": {
            "type": "string",
            "nullable": true
          },
          "createdOn": {
            "type": "string",
            "format": "date-time",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "SearchMaktZaloDtoPaginationResponse": {
        "type": "object",
        "properties": {
          "currentPage": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32"
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "hasPreviousPage": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNextPage": {
            "type": "boolean",
            "readOnly": true
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SearchMaktZaloDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchMaktZaloDtoPaginationResponseApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/SearchMaktZaloDtoPaginationResponse"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchMaktZaloRequest": {
        "type": "object",
        "properties": {
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "search": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "$ref": "#/components/schemas/MarketingStatus"
          }
        },
        "additionalProperties": false
      },
      "SearchOpportunityDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "customerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "customerName": {
            "type": "string",
            "nullable": true
          },
          "contactId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "contactName": {
            "type": "string",
            "nullable": true
          },
          "leadId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "leadName": {
            "type": "string",
            "nullable": true
          },
          "amount": {
            "type": "number",
            "format": "double"
          },
          "currency": {
            "type": "string",
            "nullable": true
          },
          "probability": {
            "type": "number",
            "format": "double"
          },
          "stage": {
            "$ref": "#/components/schemas/OpportunityStage"
          },
          "priority": {
            "$ref": "#/components/schemas/OpportunityPriority"
          },
          "sourceType": {
            "$ref": "#/components/schemas/OpportunitySource"
          },
          "source": {
            "type": "string",
            "nullable": true
          },
          "sourceDetail": {
            "type": "string",
            "nullable": true
          },
          "campaignId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "campaignName": {
            "type": "string",
            "nullable": true
          },
          "expectedCloseDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "actualCloseDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "nextActionDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "tags": {
            "type": "string",
            "nullable": true
          },
          "nextStep": {
            "type": "string",
            "nullable": true
          },
          "productInterest": {
            "type": "string",
            "nullable": true
          },
          "competitors": {
            "type": "string",
            "nullable": true
          },
          "winReason": {
            "type": "string",
            "nullable": true
          },
          "lossReason": {
            "type": "string",
            "nullable": true
          },
          "ownerId": {
            "type": "string",
            "format": "uuid"
          },
          "ownerName": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchOpportunityDtoPaginationResponse": {
        "type": "object",
        "properties": {
          "currentPage": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32"
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "hasPreviousPage": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNextPage": {
            "type": "boolean",
            "readOnly": true
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SearchOpportunityDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchOpportunityDtoPaginationResponseApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/SearchOpportunityDtoPaginationResponse"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchOpportunityRequest": {
        "type": "object",
        "properties": {
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "search": {
            "type": "string",
            "nullable": true
          },
          "customerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "customerName": {
            "type": "string",
            "nullable": true
          },
          "contactId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "contactName": {
            "type": "string",
            "nullable": true
          },
          "leadId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "leadName": {
            "type": "string",
            "nullable": true
          },
          "campaignId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "campaignName": {
            "type": "string",
            "nullable": true
          },
          "stage": {
            "$ref": "#/components/schemas/OpportunityStage"
          },
          "priority": {
            "$ref": "#/components/schemas/OpportunityPriority"
          },
          "sourceType": {
            "$ref": "#/components/schemas/OpportunitySource"
          },
          "ownerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "ownerName": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchSegMemberDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "format": "int32"
          },
          "segmentId": {
            "type": "string",
            "format": "uuid"
          },
          "type": {
            "$ref": "#/components/schemas/SegmentType"
          },
          "masterId": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchSegMemberDtoPaginationResponse": {
        "type": "object",
        "properties": {
          "currentPage": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32"
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "hasPreviousPage": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNextPage": {
            "type": "boolean",
            "readOnly": true
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SearchSegMemberDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchSegMemberDtoPaginationResponseApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/SearchSegMemberDtoPaginationResponse"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchSegMemberRequest": {
        "type": "object",
        "properties": {
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "search": {
            "type": "string",
            "nullable": true
          },
          "segmentId": {
            "type": "string",
            "format": "uuid"
          },
          "type": {
            "$ref": "#/components/schemas/SegmentType"
          }
        },
        "additionalProperties": false
      },
      "SearchSegmentDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "totalMember": {
            "type": "integer",
            "format": "int32"
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "createdBy": {
            "type": "string",
            "format": "uuid"
          },
          "createdByName": {
            "type": "string",
            "nullable": true
          },
          "createdOn": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false
      },
      "SearchSegmentDtoApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/SearchSegmentDto"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchSegmentDtoPaginationResponse": {
        "type": "object",
        "properties": {
          "currentPage": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32"
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "hasPreviousPage": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNextPage": {
            "type": "boolean",
            "readOnly": true
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SearchSegmentDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchSegmentDtoPaginationResponseApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/SearchSegmentDtoPaginationResponse"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchSegmentRequest": {
        "type": "object",
        "properties": {
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "search": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchTemplateDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "type": {
            "$ref": "#/components/schemas/TemplateType"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "content": {
            "type": "string",
            "nullable": true
          },
          "createdBy": {
            "type": "string",
            "format": "uuid"
          },
          "createdByName": {
            "type": "string",
            "nullable": true
          },
          "createdOn": {
            "type": "string",
            "format": "date-time",
            "readOnly": true
          },
          "lastModifiedBy": {
            "type": "string",
            "format": "uuid"
          },
          "lastModifiedByName": {
            "type": "string",
            "nullable": true
          },
          "lastModifiedOn": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchTemplateDtoPaginationResponse": {
        "type": "object",
        "properties": {
          "currentPage": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32"
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "hasPreviousPage": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNextPage": {
            "type": "boolean",
            "readOnly": true
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SearchTemplateDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchTemplateDtoPaginationResponseApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/SearchTemplateDtoPaginationResponse"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchTemplateRequest": {
        "type": "object",
        "properties": {
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "search": {
            "type": "string",
            "nullable": true
          },
          "type": {
            "$ref": "#/components/schemas/TemplateType"
          }
        },
        "additionalProperties": false
      },
      "SearchTicketDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "subject": {
            "type": "string",
            "nullable": true
          },
          "typeId": {
            "type": "integer",
            "format": "int32"
          },
          "typeName": {
            "type": "string",
            "nullable": true
          },
          "priority": {
            "$ref": "#/components/schemas/TicketPriority"
          },
          "status": {
            "$ref": "#/components/schemas/TicketStatus"
          },
          "channel": {
            "$ref": "#/components/schemas/TicketChannel"
          },
          "closedDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "customerId": {
            "type": "string",
            "format": "uuid"
          },
          "customerName": {
            "type": "string",
            "nullable": true
          },
          "contactId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "contactName": {
            "type": "string",
            "nullable": true
          },
          "productId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "productName": {
            "type": "string",
            "nullable": true
          },
          "orderId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "orderCode": {
            "type": "string",
            "nullable": true
          },
          "ownerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "ownerName": {
            "type": "string",
            "nullable": true
          },
          "orgUnitId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "orgUnitName": {
            "type": "string",
            "nullable": true
          },
          "createdOn": {
            "type": "string",
            "format": "date-time"
          },
          "createdByName": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchTicketDtoPaginationResponse": {
        "type": "object",
        "properties": {
          "currentPage": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32"
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "hasPreviousPage": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNextPage": {
            "type": "boolean",
            "readOnly": true
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SearchTicketDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchTicketDtoPaginationResponseApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/SearchTicketDtoPaginationResponse"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchTicketRequest": {
        "type": "object",
        "properties": {
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "search": {
            "type": "string",
            "nullable": true
          },
          "typeId": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "priority": {
            "$ref": "#/components/schemas/TicketPriority"
          },
          "status": {
            "$ref": "#/components/schemas/TicketStatus"
          },
          "channel": {
            "$ref": "#/components/schemas/TicketChannel"
          },
          "customerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "contactId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "productId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "orderId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "fieldDate": {
            "type": "string",
            "nullable": true
          },
          "from": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "to": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "ownerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "orgUnitId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchTicketTypeDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "format": "int32"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "note": {
            "type": "string",
            "nullable": true
          },
          "createdOn": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false
      },
      "SearchTicketTypeDtoPaginationResponse": {
        "type": "object",
        "properties": {
          "currentPage": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32"
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "hasPreviousPage": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNextPage": {
            "type": "boolean",
            "readOnly": true
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SearchTicketTypeDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchTicketTypeDtoPaginationResponseApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/SearchTicketTypeDtoPaginationResponse"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchTicketTypeRequest": {
        "type": "object",
        "properties": {
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "search": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SegmentType": {
        "enum": [
          1,
          2,
          3,
          4
        ],
        "type": "integer",
        "format": "int32"
      },
      "StringApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "type": "string",
            "nullable": true
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SubmitQuoteApprovalRequest": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "note": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TaxType": {
        "enum": [
          1,
          2
        ],
        "type": "integer",
        "format": "int32"
      },
      "TemplateType": {
        "enum": [
          1,
          2
        ],
        "type": "integer",
        "format": "int32"
      },
      "TicketChannel": {
        "enum": [
          1,
          2,
          3,
          4,
          5,
          6,
          7
        ],
        "type": "integer",
        "format": "int32"
      },
      "TicketCommentDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "ticketId": {
            "type": "string",
            "format": "uuid"
          },
          "userId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "userName": {
            "type": "string",
            "nullable": true
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "isInternal": {
            "type": "boolean"
          },
          "createdOn": {
            "type": "string",
            "format": "date-time"
          },
          "sentTimeAgo": {
            "type": "string",
            "nullable": true
          },
          "attachments": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AttachmentDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TicketCommentDtoPaginationResponse": {
        "type": "object",
        "properties": {
          "currentPage": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32"
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "hasPreviousPage": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNextPage": {
            "type": "boolean",
            "readOnly": true
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TicketCommentDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TicketCommentDtoPaginationResponseApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/TicketCommentDtoPaginationResponse"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TicketPriority": {
        "enum": [
          1,
          2,
          3,
          4
        ],
        "type": "integer",
        "format": "int32"
      },
      "TicketStatus": {
        "enum": [
          1,
          2,
          3,
          4
        ],
        "type": "integer",
        "format": "int32"
      },
      "TokenForPublicApiDto": {
        "type": "object",
        "properties": {
          "accessToken": {
            "type": "string",
            "nullable": true
          },
          "refreshToken": {
            "type": "string",
            "nullable": true
          },
          "expiration": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "TokenForPublicApiDtoApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/TokenForPublicApiDto"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateActivityRequest": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "type": {
            "$ref": "#/components/schemas/ActivityType"
          },
          "subject": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "$ref": "#/components/schemas/ActivityStatus"
          },
          "priority": {
            "$ref": "#/components/schemas/ActivityPriority"
          },
          "startTime": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "endTime": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "dueDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "isAllDay": {
            "type": "boolean",
            "nullable": true
          },
          "ownerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "ownerName": {
            "type": "string",
            "nullable": true
          },
          "orgUnitId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "orgUnitName": {
            "type": "string",
            "nullable": true
          },
          "extraData": {
            "type": "string",
            "nullable": true
          },
          "primaryType": {
            "$ref": "#/components/schemas/ModuleEnum"
          },
          "primaryId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "primaryName": {
            "type": "string",
            "nullable": true
          },
          "relatedType": {
            "$ref": "#/components/schemas/ModuleEnum"
          },
          "relatedId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "relatedName": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateActivityRequestApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/UpdateActivityRequest"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateCampaignRequest": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "objective": {
            "type": "string",
            "nullable": true
          },
          "type": {
            "$ref": "#/components/schemas/CampaignType"
          },
          "status": {
            "$ref": "#/components/schemas/CampaignStatus"
          },
          "startDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "endDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "expectedRevenue": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "actualRevenue": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "budgetedCost": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "actualCost": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "expectedResponseRate": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "actualResponseRate": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "expectedLeadCount": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "actualLeadCount": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "actualOpportunityCount": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "actualCustomerCount": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "contentSummary": {
            "type": "string",
            "nullable": true
          },
          "note": {
            "type": "string",
            "nullable": true
          },
          "ownerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "ownerName": {
            "type": "string",
            "nullable": true
          },
          "orgUnitId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "orgUnitName": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateCampaignRequestApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/UpdateCampaignRequest"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateContactRequest": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "customerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "customerName": {
            "type": "string",
            "nullable": true
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "fullName": {
            "type": "string",
            "nullable": true
          },
          "position": {
            "type": "string",
            "nullable": true
          },
          "department": {
            "type": "string",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "nullable": true
          },
          "phone2": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "source": {
            "$ref": "#/components/schemas/LeadSources"
          },
          "preferredChannel": {
            "$ref": "#/components/schemas/ContactChannels"
          },
          "gender": {
            "$ref": "#/components/schemas/Gender"
          },
          "birthday": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "nationalId": {
            "type": "string",
            "nullable": true
          },
          "address": {
            "type": "string",
            "nullable": true
          },
          "country": {
            "type": "string",
            "nullable": true
          },
          "province": {
            "type": "string",
            "nullable": true
          },
          "ward": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "string",
            "nullable": true
          },
          "lastContactDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "nextFollowUp": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "consentStatus": {
            "$ref": "#/components/schemas/ConsentStatus"
          },
          "consentDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "isPrimary": {
            "type": "boolean"
          },
          "note": {
            "type": "string",
            "nullable": true
          },
          "ownerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "ownerName": {
            "type": "string",
            "nullable": true
          },
          "orgUnitId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "orgUnitName": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateContactRequestApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/UpdateContactRequest"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateCrmOrderRequest": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "customerId": {
            "type": "string",
            "format": "uuid"
          },
          "customerName": {
            "type": "string",
            "nullable": true
          },
          "orderDate": {
            "type": "string",
            "format": "date-time"
          },
          "dueDate": {
            "type": "string",
            "format": "date-time"
          },
          "totalAmount": {
            "type": "number",
            "format": "double"
          },
          "taxAmount": {
            "type": "number",
            "format": "double"
          },
          "taxType": {
            "$ref": "#/components/schemas/TaxType"
          },
          "discountType": {
            "$ref": "#/components/schemas/DiscountType"
          },
          "discountAmount": {
            "type": "number",
            "format": "double"
          },
          "status": {
            "$ref": "#/components/schemas/CrmOrderStatus"
          },
          "approved": {
            "type": "boolean"
          },
          "note": {
            "type": "string",
            "nullable": true
          },
          "receiverName": {
            "type": "string",
            "nullable": true
          },
          "receiverPhone": {
            "type": "string",
            "nullable": true
          },
          "receiverEmail": {
            "type": "string",
            "nullable": true
          },
          "receiverAddress": {
            "type": "string",
            "nullable": true
          },
          "sourceQuoteId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "sourceQuoteCode": {
            "type": "string",
            "nullable": true
          },
          "products": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateCrmOrderRequestApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/UpdateCrmOrderRequest"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateCrmProductRequest": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "groupId": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "groupName": {
            "type": "string",
            "nullable": true
          },
          "unitId": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "unitName": {
            "type": "string",
            "nullable": true
          },
          "importPrice": {
            "type": "number",
            "format": "double"
          },
          "retailPrice": {
            "type": "number",
            "format": "double"
          },
          "wholesalePrice": {
            "type": "number",
            "format": "double"
          },
          "config": {
            "type": "string",
            "nullable": true
          },
          "note": {
            "type": "string",
            "nullable": true
          },
          "image": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateCrmProductRequestApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/UpdateCrmProductRequest"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateCrmUnitRequest": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "format": "int32"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "note": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateCustomerGroupRequest": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "note": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateCustomerRequest": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "type": {
            "$ref": "#/components/schemas/CustomerType"
          },
          "taxCode": {
            "type": "string",
            "nullable": true
          },
          "businessType": {
            "type": "string",
            "nullable": true
          },
          "groupId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "groupName": {
            "type": "string",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "nullable": true
          },
          "phone2": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "website": {
            "type": "string",
            "nullable": true
          },
          "zalo": {
            "type": "string",
            "nullable": true
          },
          "facebook": {
            "type": "string",
            "nullable": true
          },
          "country": {
            "type": "string",
            "nullable": true
          },
          "province": {
            "type": "string",
            "nullable": true
          },
          "ward": {
            "type": "string",
            "nullable": true
          },
          "postalCode": {
            "type": "string",
            "nullable": true
          },
          "address": {
            "type": "string",
            "nullable": true
          },
          "industry": {
            "$ref": "#/components/schemas/IndustryType"
          },
          "rating": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "status": {
            "type": "string",
            "nullable": true
          },
          "source": {
            "type": "string",
            "nullable": true
          },
          "establishedDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "numberOfEmployees": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "annualRevenue": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "creditLimit": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "debtDays": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "bankName": {
            "type": "string",
            "nullable": true
          },
          "bankAccount": {
            "type": "string",
            "nullable": true
          },
          "note": {
            "type": "string",
            "nullable": true
          },
          "ownerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "ownerName": {
            "type": "string",
            "nullable": true
          },
          "orgUnitId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "orgUnitName": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateCustomerShippingAddressRequest": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "customerId": {
            "type": "string",
            "format": "uuid"
          },
          "receiverName": {
            "type": "string",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "address": {
            "type": "string",
            "nullable": true
          },
          "isDefault": {
            "type": "boolean"
          },
          "ownerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "ownerName": {
            "type": "string",
            "nullable": true
          },
          "orgUnitId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "orgUnitName": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateLeadRequest": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "source": {
            "$ref": "#/components/schemas/LeadSources"
          },
          "sourceDetail": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "$ref": "#/components/schemas/LeadStatus"
          },
          "fullName": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "phone": {
            "type": "string",
            "nullable": true
          },
          "company": {
            "type": "string",
            "nullable": true
          },
          "position": {
            "type": "string",
            "nullable": true
          },
          "campaignName": {
            "type": "string",
            "nullable": true
          },
          "productInterest": {
            "type": "string",
            "nullable": true
          },
          "need": {
            "type": "string",
            "nullable": true
          },
          "industry": {
            "$ref": "#/components/schemas/LeadIndustries"
          },
          "rating": {
            "$ref": "#/components/schemas/LeadRating"
          },
          "score": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "potentialValue": {
            "type": "number",
            "format": "double"
          },
          "probability": {
            "type": "integer",
            "format": "int32"
          },
          "lastContactDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "nextFollowUp": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "expectedCloseDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "lostReason": {
            "type": "string",
            "nullable": true
          },
          "preferredChannel": {
            "$ref": "#/components/schemas/ContactChannels"
          },
          "consentStatus": {
            "$ref": "#/components/schemas/ConsentStatus"
          },
          "consentDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "convertedCustomerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "convertedContactId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "convertedOpportunityId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "convertedOn": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "notes": {
            "type": "string",
            "nullable": true
          },
          "assignedTo": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "ownerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "ownerName": {
            "type": "string",
            "nullable": true
          },
          "orgUnitId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "orgUnitName": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateLeadRequestApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/UpdateLeadRequest"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateMaktEmailRequest": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "subject": {
            "type": "string",
            "nullable": true
          },
          "supplier": {
            "$ref": "#/components/schemas/EmailSupplier"
          },
          "from": {
            "type": "string",
            "nullable": true
          },
          "displayName": {
            "type": "string",
            "nullable": true
          },
          "templateId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "templateName": {
            "type": "string",
            "nullable": true
          },
          "sendType": {
            "$ref": "#/components/schemas/EmailSendType"
          },
          "segmentId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "segmentName": {
            "type": "string",
            "nullable": true
          },
          "filePath": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "$ref": "#/components/schemas/MarketingStatus"
          },
          "appointmentDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "formFile": {
            "type": "string",
            "format": "binary",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateMaktEmailRequestApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/UpdateMaktEmailRequest"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateMaktZaloRequest": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "channel": {
            "$ref": "#/components/schemas/MaktZaloChannel"
          },
          "socialId": {
            "type": "string",
            "nullable": true
          },
          "socialName": {
            "type": "string",
            "nullable": true
          },
          "znsTemplateId": {
            "type": "string",
            "nullable": true
          },
          "znsTemplateName": {
            "type": "string",
            "nullable": true
          },
          "znsTemplateParam": {
            "type": "string",
            "nullable": true
          },
          "znsTemplatePreviewUrl": {
            "type": "string",
            "nullable": true
          },
          "znsTemplatePrice": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "smsTemplateId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "smsTemplateName": {
            "type": "string",
            "nullable": true
          },
          "smsTemplateParam": {
            "type": "string",
            "nullable": true
          },
          "sendType": {
            "$ref": "#/components/schemas/EmailSendType"
          },
          "segmentId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "segmentName": {
            "type": "string",
            "nullable": true
          },
          "formFile": {
            "type": "string",
            "format": "binary",
            "nullable": true
          },
          "filePath": {
            "type": "string",
            "nullable": true
          },
          "excelHeader": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "$ref": "#/components/schemas/MarketingStatus"
          },
          "appointmentDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateMaktZaloRequestApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/UpdateMaktZaloRequest"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateOpportunityRequest": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "customerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "customerName": {
            "type": "string",
            "nullable": true
          },
          "contactId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "contactName": {
            "type": "string",
            "nullable": true
          },
          "leadId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "leadName": {
            "type": "string",
            "nullable": true
          },
          "amount": {
            "type": "number",
            "format": "double"
          },
          "currency": {
            "type": "string",
            "nullable": true
          },
          "probability": {
            "type": "number",
            "format": "double"
          },
          "stage": {
            "$ref": "#/components/schemas/OpportunityStage"
          },
          "priority": {
            "$ref": "#/components/schemas/OpportunityPriority"
          },
          "sourceType": {
            "$ref": "#/components/schemas/OpportunitySource"
          },
          "source": {
            "type": "string",
            "nullable": true
          },
          "sourceDetail": {
            "type": "string",
            "nullable": true
          },
          "campaignId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "campaignName": {
            "type": "string",
            "nullable": true
          },
          "expectedCloseDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "actualCloseDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "nextActionDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "tags": {
            "type": "string",
            "nullable": true
          },
          "nextStep": {
            "type": "string",
            "nullable": true
          },
          "productInterest": {
            "type": "string",
            "nullable": true
          },
          "competitors": {
            "type": "string",
            "nullable": true
          },
          "winReason": {
            "type": "string",
            "nullable": true
          },
          "lossReason": {
            "type": "string",
            "nullable": true
          },
          "ownerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "ownerName": {
            "type": "string",
            "nullable": true
          },
          "orgUnitId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "orgUnitName": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateOpportunityRequestApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/UpdateOpportunityRequest"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateQuoteRequest": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "customerId": {
            "type": "string",
            "format": "uuid"
          },
          "customerName": {
            "type": "string",
            "nullable": true
          },
          "receiverName": {
            "type": "string",
            "nullable": true
          },
          "receiverPhone": {
            "type": "string",
            "nullable": true
          },
          "receiverEmail": {
            "type": "string",
            "nullable": true
          },
          "receiverAddress": {
            "type": "string",
            "nullable": true
          },
          "opportunityId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "opportunityName": {
            "type": "string",
            "nullable": true
          },
          "quoteDate": {
            "type": "string",
            "format": "date-time"
          },
          "expiryDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "status": {
            "$ref": "#/components/schemas/QuoteStatus"
          },
          "approvalStatus": {
            "$ref": "#/components/schemas/QuoteApprovalStatus"
          },
          "subtotalAmount": {
            "type": "number",
            "format": "double"
          },
          "discountType": {
            "$ref": "#/components/schemas/DiscountType"
          },
          "discountAmount": {
            "type": "number",
            "format": "double"
          },
          "taxType": {
            "$ref": "#/components/schemas/TaxType"
          },
          "taxAmount": {
            "type": "number",
            "format": "double"
          },
          "totalAmount": {
            "type": "number",
            "format": "double"
          },
          "termsAndConditions": {
            "type": "string",
            "nullable": true
          },
          "note": {
            "type": "string",
            "nullable": true
          },
          "ownerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "ownerName": {
            "type": "string",
            "nullable": true
          },
          "orgUnitId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "orgUnitName": {
            "type": "string",
            "nullable": true
          },
          "products": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateQuoteRequestApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/UpdateQuoteRequest"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateSegmentRequest": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateTemplateRequest": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "type": {
            "$ref": "#/components/schemas/TemplateType"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "content": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateTemplateRequestApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/UpdateTemplateRequest"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateTicketRequest": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "subject": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "typeId": {
            "type": "integer",
            "format": "int32"
          },
          "typeName": {
            "type": "string",
            "nullable": true
          },
          "priority": {
            "$ref": "#/components/schemas/TicketPriority"
          },
          "status": {
            "$ref": "#/components/schemas/TicketStatus"
          },
          "channel": {
            "$ref": "#/components/schemas/TicketChannel"
          },
          "customerId": {
            "type": "string",
            "format": "uuid"
          },
          "customerName": {
            "type": "string",
            "nullable": true
          },
          "contactId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "contactName": {
            "type": "string",
            "nullable": true
          },
          "productId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "productName": {
            "type": "string",
            "nullable": true
          },
          "orderId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "orderCode": {
            "type": "string",
            "nullable": true
          },
          "ownerId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "ownerName": {
            "type": "string",
            "nullable": true
          },
          "orgUnitId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "orgUnitName": {
            "type": "string",
            "nullable": true
          },
          "createdOn": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "formFiles": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "binary"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateTicketRequestApiResult": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          },
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "$ref": "#/components/schemas/UpdateTicketRequest"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "meta": {
            "nullable": true
          }
        },
        "additionalProperties": false
      }
    },
    "securitySchemes": {
      "Bearer": {
        "type": "http",
        "description": "JWT Authorization header using the Bearer scheme.",
        "scheme": "Bearer",
        "bearerFormat": "JWT"
      }
    }
  },
  "security": [
    {
      "Bearer": [ ]
    }
  ]
}