definitions: branch.BranchStatus: enum: - Active - Inactive type: string x-enum-varnames: - Active - Inactive entity.UploadFileResponse: properties: file_path: type: string file_url: type: string type: object order.ItemType: enum: - PRODUCT - STUDIO type: string x-enum-varnames: - Product - Studio order.OrderStatus: enum: - NEW - PAID - CANCEL type: string x-enum-varnames: - New - Paid - Cancel product.ProductStatus: enum: - Active - Inactive type: string x-enum-varnames: - Active - Inactive product.ProductType: enum: - FOOD - BEVERAGE type: string x-enum-varnames: - Food - Beverage request.Branch: properties: location: type: string name: type: string status: $ref: '#/definitions/branch.BranchStatus' required: - location - name type: object request.LoginRequest: properties: email: type: string password: type: string type: object request.Order: properties: amount: type: number branch_id: type: integer customer_name: type: string customer_phone: type: string order_items: items: $ref: '#/definitions/request.OrderItem' type: array pax: type: integer payment_method: $ref: '#/definitions/transaction.PaymentMethod' required: - amount - branch_id - customer_name - customer_phone - order_items - pax - payment_method type: object request.OrderItem: properties: item_id: type: integer item_type: $ref: '#/definitions/order.ItemType' price: type: number qty: type: integer required: - item_id - item_type - price - qty type: object request.Product: properties: branch_id: type: integer description: type: string name: type: string price: type: number status: $ref: '#/definitions/product.ProductStatus' stock_qty: type: integer type: $ref: '#/definitions/product.ProductType' required: - branch_id - name - price - status - type type: object request.Studio: properties: branch_id: type: integer metadata: additionalProperties: true type: object name: type: string price: type: number status: $ref: '#/definitions/studio.StudioStatus' required: - branch_id - name - price type: object request.UpdateStatus: properties: status: allOf: - $ref: '#/definitions/order.OrderStatus' example: NEW,PAID,CANCEL type: object request.User: properties: branch_id: type: integer email: type: string name: type: string password: type: string role_id: type: integer required: - email - name - password - role_id type: object response.BaseResponse: properties: data: {} error_detail: {} error_message: type: string message: type: string meta: $ref: '#/definitions/response.PagingMeta' response_code: type: string success: type: boolean type: object response.Branch: properties: created_at: type: string id: type: integer location: type: string name: type: string status: type: string updated_at: type: string type: object response.BranchList: properties: branches: items: $ref: '#/definitions/response.Branch' type: array limit: type: integer offset: type: integer total: type: integer type: object response.LoginResponse: properties: branch: $ref: '#/definitions/response.Branch' name: type: string role: $ref: '#/definitions/response.Role' token: type: string type: object response.Order: properties: amount: type: number branch_id: type: integer branch_name: type: string created_at: type: string customer_name: type: string customer_phone: type: string id: type: integer order_items: items: $ref: '#/definitions/response.OrderItem' type: array pax: type: integer payment_method: $ref: '#/definitions/transaction.PaymentMethod' status: $ref: '#/definitions/order.OrderStatus' updated_at: type: string type: object response.OrderBranchRevenue: properties: branch_id: type: string location: type: string name: type: string total_amount: type: number total_trans: type: integer type: object response.OrderItem: properties: created_at: type: string item_id: type: integer item_name: type: string item_type: $ref: '#/definitions/order.ItemType' order_item_id: type: integer price: type: number qty: type: integer updated_at: type: string type: object response.OrderList: properties: limit: type: integer offset: type: integer orders: items: $ref: '#/definitions/response.Order' type: array total: type: integer type: object response.OrderMonthlyRevenue: properties: total_revenue: type: number total_transaction: type: integer type: object response.PagingMeta: properties: limit: type: integer page: type: integer total_data: type: integer type: object response.Product: properties: branch_id: type: integer created_at: type: string description: type: string id: type: integer name: type: string price: type: number status: $ref: '#/definitions/product.ProductStatus' stock_qty: type: integer type: $ref: '#/definitions/product.ProductType' updated_at: type: string type: object response.ProductList: properties: limit: type: integer offset: type: integer products: items: $ref: '#/definitions/response.Product' type: array total: type: integer type: object response.Role: properties: id: type: integer role_name: type: string type: object response.Studio: properties: branch_id: type: integer created_at: type: string id: type: integer metadata: additionalProperties: true type: object name: type: string price: type: number status: type: string updated_at: type: string type: object response.StudioList: properties: limit: type: integer offset: type: integer studios: items: $ref: '#/definitions/response.Studio' type: array total: type: integer type: object response.User: properties: branch_id: type: integer branch_name: type: string created_at: type: string email: type: string id: type: integer name: type: string role_id: type: integer role_name: type: string status: type: string updated_at: type: string type: object response.UserList: properties: limit: type: integer offset: type: integer total: type: integer users: items: $ref: '#/definitions/response.User' type: array type: object studio.StudioStatus: enum: - Active - Inactive type: string x-enum-varnames: - Active - Inactive transaction.PaymentMethod: enum: - CASH - DEBIT - TRANSFER - QRIS type: string x-enum-varnames: - Cash - Debit - Transfer - QRIS info: contact: {} paths: /api/v1/auth/login: post: consumes: - application/json description: Authenticates a user based on the provided credentials and returns a JWT token. parameters: - description: User login credentials in: body name: bodyParam required: true schema: $ref: '#/definitions/request.LoginRequest' produces: - application/json responses: "200": description: Login successful schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: $ref: '#/definitions/response.LoginResponse' type: object "400": description: Bad request schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "401": description: Unauthorized schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object summary: User login tags: - Auth Login API's /api/v1/branch: post: consumes: - application/json description: Create a new branch based on the provided data. parameters: - description: JWT token in: header name: Authorization required: true type: string - description: New branch details in: body name: req required: true schema: $ref: '#/definitions/request.Branch' produces: - application/json responses: "200": description: Branch created successfully schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: $ref: '#/definitions/response.Branch' type: object "400": description: Bad request schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "401": description: Unauthorized schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object summary: Create a new branch tags: - Branch APIs /api/v1/branch/{id}: delete: consumes: - application/json description: Delete a branch based on the provided ID. parameters: - description: JWT token in: header name: Authorization required: true type: string - description: Branch ID to delete in: path name: id required: true type: integer produces: - application/json responses: "200": description: Branch deleted successfully schema: $ref: '#/definitions/response.BaseResponse' "400": description: Bad request schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "401": description: Unauthorized schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object summary: Delete a branch by ID tags: - Branch APIs get: consumes: - application/json description: Get details of a branch based on the provided ID. parameters: - description: JWT token in: header name: Authorization required: true type: string - description: Branch ID to retrieve in: path name: id required: true type: integer produces: - application/json responses: "200": description: Branch details schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: $ref: '#/definitions/response.Branch' type: object "400": description: Bad request schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "401": description: Unauthorized schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object summary: Get details of a branch by ID tags: - Branch APIs put: consumes: - application/json description: Update the details of an existing branch based on the provided ID. parameters: - description: JWT token in: header name: Authorization required: true type: string - description: Branch ID to update in: path name: id required: true type: integer - description: Updated branch details in: body name: req required: true schema: $ref: '#/definitions/request.Branch' produces: - application/json responses: "200": description: Branch updated successfully schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: $ref: '#/definitions/response.Branch' type: object "400": description: Bad request schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "401": description: Unauthorized schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object summary: Update an existing branch tags: - Branch APIs /api/v1/branch/list: get: consumes: - application/json description: Get a paginated list of branches based on query parameters. parameters: - description: JWT token in: header name: Authorization required: true type: string - description: Number of items to retrieve (default 10) in: query name: Limit type: integer - description: Offset for pagination (default 0) in: query name: Offset type: integer produces: - application/json responses: "200": description: List of branches schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: $ref: '#/definitions/response.BranchList' type: object "400": description: Bad request schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "401": description: Unauthorized schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object summary: Get a list of branches tags: - Branch APIs /api/v1/file/upload: post: consumes: - multipart/form-data description: Upload a file to Alibaba Cloud OSS with the provided details. parameters: - description: JWT token in: header name: Authorization required: true type: string - description: 'File to upload (max size: 2MB)' in: formData name: file required: true type: file produces: - application/json responses: "200": description: File uploaded successfully schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: $ref: '#/definitions/entity.UploadFileResponse' type: object "400": description: Bad request schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "401": description: Unauthorized schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object summary: Upload a file to OSS tags: - File Upload API /api/v1/order: post: consumes: - application/json description: Create a new order with the provided details. parameters: - description: JWT token in: header name: Authorization required: true type: string - description: Order details in: body name: order required: true schema: $ref: '#/definitions/request.Order' produces: - application/json responses: "200": description: Order created successfully schema: $ref: '#/definitions/response.BaseResponse' "400": description: Bad request schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "401": description: Unauthorized schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object summary: Create a new order /api/v1/order/{id}: get: consumes: - application/json description: Retrieve the details of the specified order by ID. parameters: - description: JWT token in: header name: Authorization required: true type: string - description: Order ID in: path name: id required: true type: string produces: - application/json responses: "200": description: Order details retrieved successfully schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: $ref: '#/definitions/response.Order' type: object "400": description: Bad request schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "401": description: Unauthorized schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "500": description: Internal server error schema: $ref: '#/definitions/response.BaseResponse' summary: Get details of an order by ID /api/v1/order/branch-revenue: get: consumes: - application/json description: Retrieve the branch-wise revenue for orders based on the specified parameters. parameters: - description: JWT token in: header name: Authorization required: true type: string - description: Branch ID for filtering in: query name: branch_id type: integer - description: 'Start date for filtering (format: ''YYYY-MM-DD'')' in: query name: start_date type: string - description: 'End date for filtering (format: ''YYYY-MM-DD'')' in: query name: end_date type: string produces: - application/json responses: "200": description: Branch-wise revenue retrieved successfully schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: items: $ref: '#/definitions/response.OrderBranchRevenue' type: array type: object "400": description: Bad request schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "401": description: Unauthorized schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "500": description: Internal server error schema: $ref: '#/definitions/response.BaseResponse' summary: Get branch-wise revenue for orders /api/v1/order/list: get: consumes: - application/json description: Retrieve a list of orders based on the specified parameters. parameters: - description: JWT token in: header name: Authorization required: true type: string - description: 'Number of items to retrieve (default: 10)' in: query name: limit type: integer - description: 'Number of items to skip (default: 0)' in: query name: offset type: integer produces: - application/json responses: "200": description: List of orders retrieved successfully schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: $ref: '#/definitions/response.OrderList' type: object "400": description: Bad request schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "401": description: Unauthorized schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "500": description: Internal server error schema: $ref: '#/definitions/response.BaseResponse' summary: Get a list of orders /api/v1/order/total-revenue: get: consumes: - application/json description: Retrieve the total revenue and number of transactions for orders based on the specified parameters. parameters: - description: JWT token in: header name: Authorization required: true type: string - description: 'Start date for filtering (format: ''YYYY-MM-DD'')' in: query name: start_date type: string - description: 'End date for filtering (format: ''YYYY-MM-DD'')' in: query name: end_date type: string produces: - application/json responses: "200": description: Total revenue and transactions retrieved successfully schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: $ref: '#/definitions/response.OrderMonthlyRevenue' type: object "400": description: Bad request schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "401": description: Unauthorized schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "500": description: Internal server error schema: $ref: '#/definitions/response.BaseResponse' summary: Get total revenue and number of transactions for orders /api/v1/order/update-status/{id}: put: consumes: - application/json description: Update the status of the specified order with the provided details. parameters: - description: JWT token in: header name: Authorization required: true type: string - description: Order ID in: path name: id required: true type: string - description: Status details in: body name: status required: true schema: $ref: '#/definitions/request.UpdateStatus' produces: - application/json responses: "200": description: Order status updated successfully schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: $ref: '#/definitions/response.Order' type: object "400": description: Bad request schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "401": description: Unauthorized schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "500": description: Internal server error schema: $ref: '#/definitions/response.BaseResponse' summary: Update the status of an order /api/v1/order/yearly-revenue/{year}: get: consumes: - application/json description: Retrieve the yearly revenue for orders based on the specified year. parameters: - description: JWT token in: header name: Authorization required: true type: string - description: Year for filtering in: path name: year required: true type: integer produces: - application/json responses: "200": description: Yearly revenue retrieved successfully schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: additionalProperties: additionalProperties: type: number type: object type: object type: object "400": description: Bad request schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "401": description: Unauthorized schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "500": description: Internal server error schema: $ref: '#/definitions/response.BaseResponse' summary: Get yearly revenue for orders /api/v1/product/: post: consumes: - application/json description: Create a new product with the provided details. parameters: - description: JWT token in: header name: Authorization required: true type: string - description: Product details to create in: body name: req required: true schema: $ref: '#/definitions/request.Product' produces: - application/json responses: "200": description: Product created successfully schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: $ref: '#/definitions/response.Product' type: object "400": description: Bad request schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "401": description: Unauthorized schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object summary: Create a new product tags: - Product APIs /api/v1/product/{id}: delete: consumes: - application/json description: Delete a product based on the provided ID. parameters: - description: JWT token in: header name: Authorization required: true type: string - description: Product ID to delete in: path name: id required: true type: integer produces: - application/json responses: "200": description: Product deleted successfully schema: $ref: '#/definitions/response.BaseResponse' "400": description: Bad request schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "401": description: Unauthorized schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object summary: Delete a product by ID tags: - Product APIs get: consumes: - application/json description: Get details of a product based on the provided ID. parameters: - description: JWT token in: header name: Authorization required: true type: string - description: Product ID to retrieve in: path name: id required: true type: integer produces: - application/json responses: "200": description: Product details schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: $ref: '#/definitions/response.Product' type: object "400": description: Bad request schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "401": description: Unauthorized schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object summary: Get details of a product by ID tags: - Product APIs put: consumes: - application/json description: Update the details of an existing product based on the provided ID. parameters: - description: JWT token in: header name: Authorization required: true type: string - description: Product ID to update in: path name: id required: true type: integer - description: Updated product details in: body name: req required: true schema: $ref: '#/definitions/request.Product' produces: - application/json responses: "200": description: Product updated successfully schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: $ref: '#/definitions/response.Product' type: object "400": description: Bad request schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "401": description: Unauthorized schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object summary: Update an existing product tags: - Product APIs /api/v1/product/list: get: consumes: - application/json description: Get a paginated list of products based on query parameters. parameters: - description: JWT token in: header name: Authorization required: true type: string - description: Number of items to retrieve (default 10) in: query name: Limit type: integer - description: Offset for pagination (default 0) in: query name: Offset type: integer produces: - application/json responses: "200": description: List of products schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: $ref: '#/definitions/response.ProductList' type: object "400": description: Bad request schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "401": description: Unauthorized schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object summary: Get a list of products tags: - Product APIs /api/v1/studio: post: consumes: - application/json description: Create a new studio based on the provided details. parameters: - description: JWT token in: header name: Authorization required: true type: string - description: New studio details in: body name: req required: true schema: $ref: '#/definitions/request.Studio' produces: - application/json responses: "200": description: Studio created successfully schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: $ref: '#/definitions/response.Studio' type: object "400": description: Bad request schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "401": description: Unauthorized schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object summary: Create a new studio tags: - Studio APIs /api/v1/studio/{id}: get: consumes: - application/json description: Get details of a studio based on the provided ID. parameters: - description: JWT token in: header name: Authorization required: true type: string - description: Studio ID to retrieve in: path name: id required: true type: integer produces: - application/json responses: "200": description: Studio details schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: $ref: '#/definitions/response.Studio' type: object "400": description: Bad request schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "401": description: Unauthorized schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object summary: Get details of a studio by ID tags: - Studio APIs put: consumes: - application/json description: Update the details of an existing studio based on the provided ID. parameters: - description: JWT token in: header name: Authorization required: true type: string - description: Studio ID to update in: path name: id required: true type: integer - description: Updated studio details in: body name: req required: true schema: $ref: '#/definitions/request.Studio' produces: - application/json responses: "200": description: Studio updated successfully schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: $ref: '#/definitions/response.Studio' type: object "400": description: Bad request schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "401": description: Unauthorized schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object summary: Update an existing studio tags: - Studio APIs /api/v1/studio/search: get: consumes: - application/json description: Search for studios based on query parameters. parameters: - description: JWT token in: header name: Authorization required: true type: string - description: Studio name for search in: query name: Name type: string - description: Studio status for search in: query name: Status type: string - description: Number of items to retrieve (default 10) in: query name: Limit type: integer - description: Offset for pagination (default 0) in: query name: Offset type: integer produces: - application/json responses: "200": description: List of studios schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: $ref: '#/definitions/response.StudioList' type: object "400": description: Bad request schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "401": description: Unauthorized schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object summary: Search for studios tags: - Studio APIs /api/v1/user: post: consumes: - application/json description: Create a new user based on the provided data. parameters: - description: JWT token in: header name: Authorization required: true type: string - description: New user details in: body name: req required: true schema: $ref: '#/definitions/request.User' produces: - application/json responses: "200": description: User created successfully schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: $ref: '#/definitions/response.User' type: object "400": description: Bad request schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "401": description: Unauthorized schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object summary: Create a new user tags: - User APIs /api/v1/user/{id}: delete: consumes: - application/json description: Delete a user based on the provided ID. parameters: - description: JWT token in: header name: Authorization required: true type: string - description: User ID to delete in: path name: id required: true type: integer produces: - application/json responses: "200": description: User deleted successfully schema: $ref: '#/definitions/response.BaseResponse' "400": description: Bad request schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "401": description: Unauthorized schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object summary: Delete a user by ID tags: - User APIs get: consumes: - application/json description: Get details of a user based on the provided ID. parameters: - description: JWT token in: header name: Authorization required: true type: string - description: User ID to retrieve in: path name: id required: true type: integer produces: - application/json responses: "200": description: User details schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: $ref: '#/definitions/response.User' type: object "400": description: Bad request schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "401": description: Unauthorized schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object summary: Get details of a user by ID tags: - User APIs put: consumes: - application/json description: Update the details of an existing user based on the provided ID. parameters: - description: JWT token in: header name: Authorization required: true type: string - description: User ID to update in: path name: id required: true type: integer - description: Updated user details in: body name: req required: true schema: $ref: '#/definitions/request.User' produces: - application/json responses: "200": description: User updated successfully schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: $ref: '#/definitions/response.User' type: object "400": description: Bad request schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "401": description: Unauthorized schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object summary: Update an existing user tags: - User APIs /api/v1/user/list: get: consumes: - application/json description: Get a paginated list of users based on query parameters. parameters: - description: JWT token in: header name: Authorization required: true type: string - description: Number of items to retrieve (default 10) in: query name: Limit type: integer - description: Offset for pagination (default 0) in: query name: Offset type: integer produces: - application/json responses: "200": description: List of users schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: $ref: '#/definitions/response.UserList' type: object "400": description: Bad request schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object "401": description: Unauthorized schema: allOf: - $ref: '#/definitions/response.BaseResponse' - properties: data: {} type: object summary: Get a list of users tags: - User APIs swagger: "2.0"