openapi: 3.0.3 info: title: 'ManageIt API Documentation' description: '' version: 1.0.0 servers: - url: 'https://api.manageit.ir' paths: /api/user: get: summary: 'Get User details' operationId: getUserDetails description: '' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: data: id: 451 name: 'Dr. Jerod Schoen' email: fmertz@example.com mobile: null credit: 0 email_verified: true mobile_verified: false properties: data: type: object properties: id: type: integer example: 451 name: type: string example: 'Dr. Jerod Schoen' email: type: string example: fmertz@example.com mobile: type: string example: null credit: type: integer example: 0 email_verified: type: boolean example: true mobile_verified: type: boolean example: false tags: - 'User profile' /api/v1/projects: get: summary: 'Get list of all user projects' operationId: getListOfAllUserProjects description: '' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: data: id: zowp9R0JocebbKsB hash: zowp9R0JocebbKsB name: 'Dr. Jamaal Luettgen' created_at: '2024-01-14T00:55:30.000000Z' servers_count: 0 loadbalancers_count: 0 properties: data: type: object properties: id: type: string example: zowp9R0JocebbKsB hash: type: string example: zowp9R0JocebbKsB name: type: string example: 'Dr. Jamaal Luettgen' created_at: type: string example: '2024-01-14T00:55:30.000000Z' servers_count: type: integer example: 0 loadbalancers_count: type: integer example: 0 tags: - 'Project management' post: summary: 'Create a new project' operationId: createANewProject description: '' parameters: [] responses: 201: description: '' content: application/json: schema: type: object example: data: id: zmRSt28qZwh36Vx2 hash: zmRSt28qZwh36Vx2 name: 'Katrina Walter' created_at: '2024-01-14T00:55:30.000000Z' servers_count: 0 loadbalancers_count: 0 properties: data: type: object properties: id: type: string example: zmRSt28qZwh36Vx2 hash: type: string example: zmRSt28qZwh36Vx2 name: type: string example: 'Katrina Walter' created_at: type: string example: '2024-01-14T00:55:30.000000Z' servers_count: type: integer example: 0 loadbalancers_count: type: integer example: 0 tags: - 'Project management' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'value نباید بیشتر از 100 حرف باشد. value باید حداقل 3 حرف داشته باشد.' example: aojalvhpeqyglpmnxvfffrrmkaxodcxiqtpllkmvwk required: - name '/api/v1/projects/{hash}': get: summary: 'Show project details' operationId: showProjectDetails description: '' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: data: id: uQKM58hyZlwp5Ue3 hash: uQKM58hyZlwp5Ue3 name: 'Mr. Roman Kuhn' created_at: '2024-01-14T00:55:30.000000Z' servers_count: 0 loadbalancers_count: 0 properties: data: type: object properties: id: type: string example: uQKM58hyZlwp5Ue3 hash: type: string example: uQKM58hyZlwp5Ue3 name: type: string example: 'Mr. Roman Kuhn' created_at: type: string example: '2024-01-14T00:55:30.000000Z' servers_count: type: integer example: 0 loadbalancers_count: type: integer example: 0 tags: - 'Project management' put: summary: 'Update project details' operationId: updateProjectDetails description: '' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: data: id: AuEcRAssVuqfTihg hash: AuEcRAssVuqfTihg name: 'Markus Zieme' created_at: '2024-01-14T00:55:30.000000Z' servers_count: 0 loadbalancers_count: 0 properties: data: type: object properties: id: type: string example: AuEcRAssVuqfTihg hash: type: string example: AuEcRAssVuqfTihg name: type: string example: 'Markus Zieme' created_at: type: string example: '2024-01-14T00:55:30.000000Z' servers_count: type: integer example: 0 loadbalancers_count: type: integer example: 0 tags: - 'Project management' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'value نباید بیشتر از 100 حرف باشد.' example: tzjkkakmgzvszmfdq required: - name delete: summary: 'Delete a project' operationId: deleteAProject description: '' parameters: [] responses: 200: description: '' content: text/plain: schema: type: string example: '{success: true}' tags: - 'Project management' parameters: - in: path name: hash description: 'The ID of the project.' example: Ov1AZGW13h4MTW5f required: true schema: type: string /api/v1/servers/locations: get: summary: 'Get List of all available locations' operationId: getListOfAllAvailableLocations description: '' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: '1': id: 4 name: پارسیان icon: id: 203 name: Iran type: flags url: 'https://srv.manageit.ir/shared/icons/flags/iran.svg' is_default: false visible: true '2': id: 3 name: شتاب icon: id: 203 name: Iran type: flags url: 'https://srv.manageit.ir/shared/icons/flags/iran.svg' is_default: true visible: true '3': id: 2 name: امید icon: id: 203 name: Iran type: flags url: 'https://srv.manageit.ir/shared/icons/flags/iran.svg' is_default: false visible: true properties: 1: type: object properties: id: type: integer example: 4 name: type: string example: پارسیان icon: type: object properties: id: type: integer example: 203 name: type: string example: Iran type: type: string example: flags url: type: string example: 'https://srv.manageit.ir/shared/icons/flags/iran.svg' is_default: type: boolean example: false visible: type: boolean example: true 2: type: object properties: id: type: integer example: 3 name: type: string example: شتاب icon: type: object properties: id: type: integer example: 203 name: type: string example: Iran type: type: string example: flags url: type: string example: 'https://srv.manageit.ir/shared/icons/flags/iran.svg' is_default: type: boolean example: true visible: type: boolean example: true 3: type: object properties: id: type: integer example: 2 name: type: string example: امید icon: type: object properties: id: type: integer example: 203 name: type: string example: Iran type: type: string example: flags url: type: string example: 'https://srv.manageit.ir/shared/icons/flags/iran.svg' is_default: type: boolean example: false visible: type: boolean example: true tags: - 'Server management' /api/v1/servers/os_images: get: summary: 'Get List of all available OS' operationId: getListOfAllAvailableOS description: '' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: data: - id: 9 name: Mikrotik icon: id: 357 name: Mikrotik type: os url: 'https://svgur.com/i/108b.svg' versions: - id: 23 version: 7.11.2 position: 0.485 is_ssh_keys_supported: true is_visible: true - id: 24 version: 6.49.8 position: 0.97 is_ssh_keys_supported: true is_visible: true is_default: false is_visible: true position: 0.99 - id: 1 name: AlmaLinux icon: id: 90 name: AlmaLinux type: os url: 'https://srv.manageit.ir/shared/icons/almalinux.svg' versions: - id: 5 version: '9.2' position: 1 is_ssh_keys_supported: true is_visible: true - id: 4 version: '9.1' position: 2 is_ssh_keys_supported: true is_visible: true - id: 3 version: '9.0' position: 3 is_ssh_keys_supported: true is_visible: true - id: 2 version: '8.7' position: 4 is_ssh_keys_supported: true is_visible: true - id: 1 version: '8.4' position: 5 is_ssh_keys_supported: true is_visible: true is_default: false is_visible: true position: 1 - id: 2 name: AlpineLinux icon: id: 84 name: Alpine type: os url: 'https://srv.manageit.ir/shared/icons/alpine.svg' versions: - id: 6 version: '3.15' position: 1 is_ssh_keys_supported: true is_visible: true is_default: false is_visible: true position: 2 - id: 3 name: CentOS icon: id: 83 name: CentOS type: os url: 'https://srv.manageit.ir/shared/icons/centos.svg' versions: - id: 10 version: '9 Stream' position: 1 is_ssh_keys_supported: true is_visible: true - id: 9 version: '8 Stream' position: 2 is_ssh_keys_supported: true is_visible: true - id: 8 version: '8' position: 3 is_ssh_keys_supported: true is_visible: true - id: 7 version: '7' position: 4 is_ssh_keys_supported: true is_visible: true is_default: false is_visible: true position: 3 - id: 4 name: Debian icon: id: 77 name: Debian type: os url: 'https://srv.manageit.ir/shared/icons/debian.svg' versions: - id: 14 version: '12' position: 1 is_ssh_keys_supported: true is_visible: true - id: 13 version: '11' position: 2 is_ssh_keys_supported: true is_visible: true - id: 12 version: '10' position: 3 is_ssh_keys_supported: true is_visible: true - id: 11 version: '9' position: 4 is_ssh_keys_supported: true is_visible: true is_default: false is_visible: true position: 4 - id: 5 name: RockyLinux icon: id: 92 name: RockyLinux type: os url: 'https://srv.manageit.ir/shared/icons/rocky-linux.svg' versions: - id: 15 version: '8.4' position: 1 is_ssh_keys_supported: true is_visible: true - id: 25 version: '9' position: 16385 is_ssh_keys_supported: true is_visible: true is_default: false is_visible: true position: 5 - id: 6 name: Ubuntu icon: id: 81 name: Ubuntu type: os url: 'https://srv.manageit.ir/shared/icons/ubuntu.svg' versions: - id: 18 version: '22.04' position: 1 is_ssh_keys_supported: true is_visible: true - id: 17 version: '20.04' position: 2 is_ssh_keys_supported: true is_visible: true - id: 16 version: '18.04' position: 3 is_ssh_keys_supported: true is_visible: true is_default: true is_visible: true position: 6 - id: 7 name: windows icon: id: 69 name: Windows type: application url: 'https://srv.manageit.ir/shared/icons/windows.svg' versions: - id: 20 version: '2022 Evaluation' position: 1 is_ssh_keys_supported: false is_visible: true - id: 19 version: '2019' position: 2 is_ssh_keys_supported: false is_visible: true is_default: false is_visible: true position: 7 - id: 10 name: Fedora icon: id: 78 name: Fedora type: os url: 'https://srv.manageit.ir/shared/icons/fedora.svg' versions: - id: 26 version: Latest position: 1 is_ssh_keys_supported: true is_visible: true is_default: false is_visible: true position: 8 - id: 11 name: OpenSUSE icon: id: 89 name: Suse type: os url: 'https://srv.manageit.ir/shared/icons/suse.svg' versions: - id: 27 version: Latest position: 1 is_ssh_keys_supported: true is_visible: true is_default: false is_visible: true position: 9 links: first: 'https://srv.manageit.ir/api/v1/os_images?page=1' last: 'https://srv.manageit.ir/api/v1/os_images?page=1' prev: null next: null meta: current_page: 1 from: 1 last_page: 1 links: - url: null label: '« Previous' active: false - url: 'https://srv.manageit.ir/api/v1/os_images?page=1' label: '1' active: true - url: null label: 'Next »' active: false path: 'https://srv.manageit.ir/api/v1/os_images' per_page: 50 to: 10 total: 10 properties: data: type: array example: - id: 9 name: Mikrotik icon: id: 357 name: Mikrotik type: os url: 'https://svgur.com/i/108b.svg' versions: - id: 23 version: 7.11.2 position: 0.485 is_ssh_keys_supported: true is_visible: true - id: 24 version: 6.49.8 position: 0.97 is_ssh_keys_supported: true is_visible: true is_default: false is_visible: true position: 0.99 - id: 1 name: AlmaLinux icon: id: 90 name: AlmaLinux type: os url: 'https://srv.manageit.ir/shared/icons/almalinux.svg' versions: - id: 5 version: '9.2' position: 1 is_ssh_keys_supported: true is_visible: true - id: 4 version: '9.1' position: 2 is_ssh_keys_supported: true is_visible: true - id: 3 version: '9.0' position: 3 is_ssh_keys_supported: true is_visible: true - id: 2 version: '8.7' position: 4 is_ssh_keys_supported: true is_visible: true - id: 1 version: '8.4' position: 5 is_ssh_keys_supported: true is_visible: true is_default: false is_visible: true position: 1 - id: 2 name: AlpineLinux icon: id: 84 name: Alpine type: os url: 'https://srv.manageit.ir/shared/icons/alpine.svg' versions: - id: 6 version: '3.15' position: 1 is_ssh_keys_supported: true is_visible: true is_default: false is_visible: true position: 2 - id: 3 name: CentOS icon: id: 83 name: CentOS type: os url: 'https://srv.manageit.ir/shared/icons/centos.svg' versions: - id: 10 version: '9 Stream' position: 1 is_ssh_keys_supported: true is_visible: true - id: 9 version: '8 Stream' position: 2 is_ssh_keys_supported: true is_visible: true - id: 8 version: '8' position: 3 is_ssh_keys_supported: true is_visible: true - id: 7 version: '7' position: 4 is_ssh_keys_supported: true is_visible: true is_default: false is_visible: true position: 3 - id: 4 name: Debian icon: id: 77 name: Debian type: os url: 'https://srv.manageit.ir/shared/icons/debian.svg' versions: - id: 14 version: '12' position: 1 is_ssh_keys_supported: true is_visible: true - id: 13 version: '11' position: 2 is_ssh_keys_supported: true is_visible: true - id: 12 version: '10' position: 3 is_ssh_keys_supported: true is_visible: true - id: 11 version: '9' position: 4 is_ssh_keys_supported: true is_visible: true is_default: false is_visible: true position: 4 - id: 5 name: RockyLinux icon: id: 92 name: RockyLinux type: os url: 'https://srv.manageit.ir/shared/icons/rocky-linux.svg' versions: - id: 15 version: '8.4' position: 1 is_ssh_keys_supported: true is_visible: true - id: 25 version: '9' position: 16385 is_ssh_keys_supported: true is_visible: true is_default: false is_visible: true position: 5 - id: 6 name: Ubuntu icon: id: 81 name: Ubuntu type: os url: 'https://srv.manageit.ir/shared/icons/ubuntu.svg' versions: - id: 18 version: '22.04' position: 1 is_ssh_keys_supported: true is_visible: true - id: 17 version: '20.04' position: 2 is_ssh_keys_supported: true is_visible: true - id: 16 version: '18.04' position: 3 is_ssh_keys_supported: true is_visible: true is_default: true is_visible: true position: 6 - id: 7 name: windows icon: id: 69 name: Windows type: application url: 'https://srv.manageit.ir/shared/icons/windows.svg' versions: - id: 20 version: '2022 Evaluation' position: 1 is_ssh_keys_supported: false is_visible: true - id: 19 version: '2019' position: 2 is_ssh_keys_supported: false is_visible: true is_default: false is_visible: true position: 7 - id: 10 name: Fedora icon: id: 78 name: Fedora type: os url: 'https://srv.manageit.ir/shared/icons/fedora.svg' versions: - id: 26 version: Latest position: 1 is_ssh_keys_supported: true is_visible: true is_default: false is_visible: true position: 8 - id: 11 name: OpenSUSE icon: id: 89 name: Suse type: os url: 'https://srv.manageit.ir/shared/icons/suse.svg' versions: - id: 27 version: Latest position: 1 is_ssh_keys_supported: true is_visible: true is_default: false is_visible: true position: 9 items: type: object properties: id: type: integer example: 9 name: type: string example: Mikrotik icon: type: object properties: id: type: integer example: 357 name: type: string example: Mikrotik type: type: string example: os url: type: string example: 'https://svgur.com/i/108b.svg' versions: type: array example: - id: 23 version: 7.11.2 position: 0.485 is_ssh_keys_supported: true is_visible: true - id: 24 version: 6.49.8 position: 0.97 is_ssh_keys_supported: true is_visible: true items: type: object properties: id: type: integer example: 23 version: type: string example: 7.11.2 position: type: number example: 0.485 is_ssh_keys_supported: type: boolean example: true is_visible: type: boolean example: true is_default: type: boolean example: false is_visible: type: boolean example: true position: type: number example: 0.99 links: type: object properties: first: type: string example: 'https://srv.manageit.ir/api/v1/os_images?page=1' last: type: string example: 'https://srv.manageit.ir/api/v1/os_images?page=1' prev: type: string example: null next: type: string example: null meta: type: object properties: current_page: type: integer example: 1 from: type: integer example: 1 last_page: type: integer example: 1 links: type: array example: - url: null label: '« Previous' active: false - url: 'https://srv.manageit.ir/api/v1/os_images?page=1' label: '1' active: true - url: null label: 'Next »' active: false items: type: object properties: url: type: string example: null label: type: string example: '« Previous' active: type: boolean example: false path: type: string example: 'https://srv.manageit.ir/api/v1/os_images' per_page: type: integer example: 50 to: type: integer example: 10 total: type: integer example: 10 tags: - 'Server management' '/api/v1/servers/plans/{location_id}': get: summary: 'Get List of all available plans for selected location' operationId: getListOfAllAvailablePlansForSelectedLocation description: '' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: '2': id: 40 name: GH-1 params: vcpu: 1 ram: 1073741824 disk: 25 price_per_month: 219000 price_per_hour: 305 visible: true '3': id: 41 name: GH-2 params: vcpu: 1 ram: 2147483648 disk: 50 price_per_month: 370000 price_per_hour: 514 visible: true '4': id: 42 name: GH-3 params: vcpu: 2 ram: 2147483648 disk: 75 price_per_month: 540000 price_per_hour: 760 visible: true '5': id: 43 name: GH-4 params: vcpu: 2 ram: 4294967296 disk: 75 price_per_month: 650000 price_per_hour: 903 visible: true '6': id: 44 name: GH-5 params: vcpu: 4 ram: 4294967296 disk: 75 price_per_month: 780000 price_per_hour: 1084 visible: true '7': id: 45 name: GH-6 params: vcpu: 4 ram: 8589934592 disk: 75 price_per_month: 1000000 price_per_hour: 1389 visible: true '8': id: 46 name: GH-7 params: vcpu: 6 ram: 12884901888 disk: 150 price_per_month: 1500000 price_per_hour: 2084 visible: true properties: 2: type: object properties: id: type: integer example: 40 name: type: string example: GH-1 params: type: object properties: vcpu: type: integer example: 1 ram: type: integer example: 1073741824 disk: type: integer example: 25 price_per_month: type: integer example: 219000 price_per_hour: type: integer example: 305 visible: type: boolean example: true 3: type: object properties: id: type: integer example: 41 name: type: string example: GH-2 params: type: object properties: vcpu: type: integer example: 1 ram: type: integer example: 2147483648 disk: type: integer example: 50 price_per_month: type: integer example: 370000 price_per_hour: type: integer example: 514 visible: type: boolean example: true 4: type: object properties: id: type: integer example: 42 name: type: string example: GH-3 params: type: object properties: vcpu: type: integer example: 2 ram: type: integer example: 2147483648 disk: type: integer example: 75 price_per_month: type: integer example: 540000 price_per_hour: type: integer example: 760 visible: type: boolean example: true 5: type: object properties: id: type: integer example: 43 name: type: string example: GH-4 params: type: object properties: vcpu: type: integer example: 2 ram: type: integer example: 4294967296 disk: type: integer example: 75 price_per_month: type: integer example: 650000 price_per_hour: type: integer example: 903 visible: type: boolean example: true 6: type: object properties: id: type: integer example: 44 name: type: string example: GH-5 params: type: object properties: vcpu: type: integer example: 4 ram: type: integer example: 4294967296 disk: type: integer example: 75 price_per_month: type: integer example: 780000 price_per_hour: type: integer example: 1084 visible: type: boolean example: true 7: type: object properties: id: type: integer example: 45 name: type: string example: GH-6 params: type: object properties: vcpu: type: integer example: 4 ram: type: integer example: 8589934592 disk: type: integer example: 75 price_per_month: type: integer example: 1000000 price_per_hour: type: integer example: 1389 visible: type: boolean example: true 8: type: object properties: id: type: integer example: 46 name: type: string example: GH-7 params: type: object properties: vcpu: type: integer example: 6 ram: type: integer example: 12884901888 disk: type: integer example: 150 price_per_month: type: integer example: 1500000 price_per_hour: type: integer example: 2084 visible: type: boolean example: true tags: - 'Server management' parameters: - in: path name: location_id description: 'The ID of the location.' example: 4 required: true schema: type: integer '/api/v1/projects/{project_hash}/servers': get: summary: 'Get List of all servers' operationId: getListOfAllServers description: '' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: data: id: 2tB734Y7hqzJR6Lk hash: 2tB734Y7hqzJR6Lk uuid: null name: localhost username: root password: '123456' plan_name: test price: 720000 total_price_usage: 0 real_status: started status: active specifications: [] location: null settings: [] payment_type: hourly created_at: '1 ثانیه پیش' traffic: 0 ips: [] properties: data: type: object properties: id: type: string example: 2tB734Y7hqzJR6Lk hash: type: string example: 2tB734Y7hqzJR6Lk uuid: type: string example: null name: type: string example: localhost username: type: string example: root password: type: string example: '123456' plan_name: type: string example: test price: type: integer example: 720000 total_price_usage: type: integer example: 0 real_status: type: string example: started status: type: string example: active specifications: type: array example: [] location: type: string example: null settings: type: array example: [] payment_type: type: string example: hourly created_at: type: string example: '1 ثانیه پیش' traffic: type: integer example: 0 ips: type: array example: [] tags: - 'Server management' post: summary: 'Create new server' operationId: createNewServer description: '' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: data: id: WzHYRYRqGnwzTYri hash: WzHYRYRqGnwzTYri uuid: null name: localhost username: root password: '123456' plan_name: test price: 720000 total_price_usage: 0 real_status: started status: active specifications: [] location: null settings: [] payment_type: hourly created_at: '1 ثانیه پیش' traffic: 0 ips: [] properties: data: type: object properties: id: type: string example: WzHYRYRqGnwzTYri hash: type: string example: WzHYRYRqGnwzTYri uuid: type: string example: null name: type: string example: localhost username: type: string example: root password: type: string example: '123456' plan_name: type: string example: test price: type: integer example: 720000 total_price_usage: type: integer example: 0 real_status: type: string example: started status: type: string example: active specifications: type: array example: [] location: type: string example: null settings: type: array example: [] payment_type: type: string example: hourly created_at: type: string example: '1 ثانیه پیش' traffic: type: integer example: 0 ips: type: array example: [] tags: - 'Server management' requestBody: required: true content: application/json: schema: type: object properties: location: type: integer description: '' example: 12 plan: type: integer description: '' example: 7 os: type: integer description: '' example: 4 hostname: type: string description: 'Must match the regex /^[a-zA-Z0-9-.]+$/i. value باید حداقل 6 حرف داشته باشد. value نباید بیشتر از 100 حرف باشد.' example: uadgagzsbxbrxepwvishslax password: type: string description: 'This field is required when ssh_keys is not present. value باید حداقل 8 حرف داشته باشد. value نباید بیشتر از 100 حرف باشد.' example: '"targets is present.' example: aut services: type: array description: 'List target servers.' example: null items: type: object properties: source_port: type: integer description: 'This field is required when services is present. value باید بین 0 و 65535 باشد.' example: 1 destination_port: type: integer description: 'This field is required when services is present. value باید بین 0 و 65535 باشد.' example: 1 health_check: type: boolean description: 'This field is required when services is present.' example: false proxy: type: boolean description: 'This field is required when services is present.' example: false required: - name - plan - location - algorithm parameters: - in: path name: project_hash description: 'The ID of the project.' example: Ov1AZGW13h4MTW5f required: true schema: type: string '/api/v1/projects/{project_hash}/load_balancers/{hash}': get: summary: 'Get loadbalancer details' operationId: getLoadbalancerDetails description: '' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: data: id: ze5k1MQ2uHz9JMQf hash: ze5k1MQ2uHz9JMQf name: ideological-olive uuid: d637c6d0-c8c7-40a5-92a7-b339c001e0aa algorithm: roundrobin plan: 31 plan_name: LB01 price: 400000 network_incoming: 0 network_outgoing: 0 real_status: started status: active location: id: 3 icon: id: 203 url: 'https://srv.manageit.ir/shared/icons/flags/iran.svg' name: Iran type: flags name: شتاب position: 0.98 is_default: true is_visible: true description: 'دیتاسنتر شتاب' created_at: '15 ثانیه پیش' services: - protocol: tcp source_port: 443 destination_port: 443 health_check: true proxy: false use_ssl: false created_at: '2023-12-30T00:56:21.000000Z' updated_at: '2023-12-30T00:56:21.000000Z' targets: - name: p2bNqiIPLZ8uvVkr ip: manageit.ir created_at: '2023-12-30T00:56:21.000000Z' updated_at: '2023-12-30T00:56:21.000000Z' traffic: 0 total_price_usage: 0 payment_type: hourly ips: - ip: 2.189.255.210 range: null type: ipv4 is_primary: true gateway: 2.189.255.129 created_at: '2023-12-30T00:56:21.000000Z' - ip: '2a07:4282:11:377::16b' range: '2a07:4282:11:377::16b/128' type: ipv6 is_primary: true gateway: '2a07:4282:11:377::1' created_at: '2023-12-30T00:56:21.000000Z' domains: [] properties: data: type: object properties: id: type: string example: ze5k1MQ2uHz9JMQf hash: type: string example: ze5k1MQ2uHz9JMQf name: type: string example: ideological-olive uuid: type: string example: d637c6d0-c8c7-40a5-92a7-b339c001e0aa algorithm: type: string example: roundrobin plan: type: integer example: 31 plan_name: type: string example: LB01 price: type: integer example: 400000 network_incoming: type: integer example: 0 network_outgoing: type: integer example: 0 real_status: type: string example: started status: type: string example: active location: type: object properties: id: type: integer example: 3 icon: type: object properties: id: type: integer example: 203 url: type: string example: 'https://srv.manageit.ir/shared/icons/flags/iran.svg' name: type: string example: Iran type: type: string example: flags name: type: string example: شتاب position: type: number example: 0.98 is_default: type: boolean example: true is_visible: type: boolean example: true description: type: string example: 'دیتاسنتر شتاب' created_at: type: string example: '15 ثانیه پیش' services: type: array example: - protocol: tcp source_port: 443 destination_port: 443 health_check: true proxy: false use_ssl: false created_at: '2023-12-30T00:56:21.000000Z' updated_at: '2023-12-30T00:56:21.000000Z' items: type: object properties: protocol: type: string example: tcp source_port: type: integer example: 443 destination_port: type: integer example: 443 health_check: type: boolean example: true proxy: type: boolean example: false use_ssl: type: boolean example: false created_at: type: string example: '2023-12-30T00:56:21.000000Z' updated_at: type: string example: '2023-12-30T00:56:21.000000Z' targets: type: array example: - name: p2bNqiIPLZ8uvVkr ip: manageit.ir created_at: '2023-12-30T00:56:21.000000Z' updated_at: '2023-12-30T00:56:21.000000Z' items: type: object properties: name: type: string example: p2bNqiIPLZ8uvVkr ip: type: string example: manageit.ir created_at: type: string example: '2023-12-30T00:56:21.000000Z' updated_at: type: string example: '2023-12-30T00:56:21.000000Z' traffic: type: integer example: 0 total_price_usage: type: integer example: 0 payment_type: type: string example: hourly ips: type: array example: - ip: 2.189.255.210 range: null type: ipv4 is_primary: true gateway: 2.189.255.129 created_at: '2023-12-30T00:56:21.000000Z' - ip: '2a07:4282:11:377::16b' range: '2a07:4282:11:377::16b/128' type: ipv6 is_primary: true gateway: '2a07:4282:11:377::1' created_at: '2023-12-30T00:56:21.000000Z' items: type: object properties: ip: type: string example: 2.189.255.210 range: type: string example: null type: type: string example: ipv4 is_primary: type: boolean example: true gateway: type: string example: 2.189.255.129 created_at: type: string example: '2023-12-30T00:56:21.000000Z' domains: type: array example: [] tags: - 'LoadBalancer management' put: summary: 'Update loadbalancer' operationId: updateLoadbalancer description: '' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: data: id: ze5k1MQ2uHz9JMQf hash: ze5k1MQ2uHz9JMQf name: ideological-olive uuid: d637c6d0-c8c7-40a5-92a7-b339c001e0aa algorithm: roundrobin plan: 31 plan_name: LB01 price: 400000 network_incoming: 0 network_outgoing: 0 real_status: started status: active location: id: 3 icon: id: 203 url: 'https://srv.manageit.ir/shared/icons/flags/iran.svg' name: Iran type: flags name: شتاب position: 0.98 is_default: true is_visible: true description: 'دیتاسنتر شتاب' created_at: '15 ثانیه پیش' services: - protocol: tcp source_port: 443 destination_port: 443 health_check: true proxy: false use_ssl: false created_at: '2023-12-30T00:56:21.000000Z' updated_at: '2023-12-30T00:56:21.000000Z' targets: - name: p2bNqiIPLZ8uvVkr ip: manageit.ir created_at: '2023-12-30T00:56:21.000000Z' updated_at: '2023-12-30T00:56:21.000000Z' traffic: 0 total_price_usage: 0 payment_type: hourly ips: - ip: 2.189.255.210 range: null type: ipv4 is_primary: true gateway: 2.189.255.129 created_at: '2023-12-30T00:56:21.000000Z' - ip: '2a07:4282:11:377::16b' range: '2a07:4282:11:377::16b/128' type: ipv6 is_primary: true gateway: '2a07:4282:11:377::1' created_at: '2023-12-30T00:56:21.000000Z' domains: [] properties: data: type: object properties: id: type: string example: ze5k1MQ2uHz9JMQf hash: type: string example: ze5k1MQ2uHz9JMQf name: type: string example: ideological-olive uuid: type: string example: d637c6d0-c8c7-40a5-92a7-b339c001e0aa algorithm: type: string example: roundrobin plan: type: integer example: 31 plan_name: type: string example: LB01 price: type: integer example: 400000 network_incoming: type: integer example: 0 network_outgoing: type: integer example: 0 real_status: type: string example: started status: type: string example: active location: type: object properties: id: type: integer example: 3 icon: type: object properties: id: type: integer example: 203 url: type: string example: 'https://srv.manageit.ir/shared/icons/flags/iran.svg' name: type: string example: Iran type: type: string example: flags name: type: string example: شتاب position: type: number example: 0.98 is_default: type: boolean example: true is_visible: type: boolean example: true description: type: string example: 'دیتاسنتر شتاب' created_at: type: string example: '15 ثانیه پیش' services: type: array example: - protocol: tcp source_port: 443 destination_port: 443 health_check: true proxy: false use_ssl: false created_at: '2023-12-30T00:56:21.000000Z' updated_at: '2023-12-30T00:56:21.000000Z' items: type: object properties: protocol: type: string example: tcp source_port: type: integer example: 443 destination_port: type: integer example: 443 health_check: type: boolean example: true proxy: type: boolean example: false use_ssl: type: boolean example: false created_at: type: string example: '2023-12-30T00:56:21.000000Z' updated_at: type: string example: '2023-12-30T00:56:21.000000Z' targets: type: array example: - name: p2bNqiIPLZ8uvVkr ip: manageit.ir created_at: '2023-12-30T00:56:21.000000Z' updated_at: '2023-12-30T00:56:21.000000Z' items: type: object properties: name: type: string example: p2bNqiIPLZ8uvVkr ip: type: string example: manageit.ir created_at: type: string example: '2023-12-30T00:56:21.000000Z' updated_at: type: string example: '2023-12-30T00:56:21.000000Z' traffic: type: integer example: 0 total_price_usage: type: integer example: 0 payment_type: type: string example: hourly ips: type: array example: - ip: 2.189.255.210 range: null type: ipv4 is_primary: true gateway: 2.189.255.129 created_at: '2023-12-30T00:56:21.000000Z' - ip: '2a07:4282:11:377::16b' range: '2a07:4282:11:377::16b/128' type: ipv6 is_primary: true gateway: '2a07:4282:11:377::1' created_at: '2023-12-30T00:56:21.000000Z' items: type: object properties: ip: type: string example: 2.189.255.210 range: type: string example: null type: type: string example: ipv4 is_primary: type: boolean example: true gateway: type: string example: 2.189.255.129 created_at: type: string example: '2023-12-30T00:56:21.000000Z' domains: type: array example: [] tags: - 'LoadBalancer management' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'Must match the regex /^[a-zA-Z0-9-.]+$/i. value باید حداقل 6 حرف داشته باشد. value نباید بیشتر از 50 حرف باشد.' example: lkqelnvyediojkionli plan: type: string description: '' example: '18' enum: - '31' - '18' - '19' algorithm: type: string description: '' example: leastconn enum: - roundrobin - leastconn targets: type: array description: 'List target servers.' example: null items: type: object properties: ip: type: string description: 'This field is required when targets is present.' example: impedit services: type: array description: 'List target servers.' example: null items: type: object properties: source_port: type: integer description: 'This field is required when services is present. value باید بین 0 و 65535 باشد.' example: 1 destination_port: type: integer description: 'This field is required when services is present. value باید بین 0 و 65535 باشد.' example: 0 health_check: type: boolean description: 'This field is required when services is present.' example: false use_ssl: type: boolean description: 'This field is required when services is present.' example: true proxy: type: boolean description: 'This field is required when services is present.' example: true required: - name - plan - algorithm delete: summary: 'Delete loadbalancer' operationId: deleteLoadbalancer description: '' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: success: true properties: success: type: boolean example: true tags: - 'LoadBalancer management' parameters: - in: path name: project_hash description: 'The ID of the project.' example: Ov1AZGW13h4MTW5f required: true schema: type: string - in: path name: hash description: 'The ID of the loadbalancer.' example: Ov1AZGW13h4MTW5f required: true schema: type: string tags: - name: 'User profile' description: '' - name: 'Project management' description: "\nAPIs for managing user projects" - name: 'Server management' description: "\nAPIs for managing servers" - name: 'LoadBalancer management' description: "\nAPIs for managing LoadBalancers" components: securitySchemes: default: type: http scheme: bearer description: 'You can retrieve your token by visiting your dashboard and clicking Generate API token.' security: - default: []