{ "openapi": "3.0.1", "info": { "title": "Infrahub-API", "version": "1.0" }, "servers": [ { "url": "https://infrahub-api.nexgencloud.com/v1" } ], "tags": [ { "name": "auth", "description": "Authentication APIs using authentik" }, { "name": "organization", "description": "Organizations API" }, { "name": "api key", "description": "API Key" }, { "name": "invite", "description": "Invite APIs" }, { "name": "permission", "description": "Permission APIs" }, { "name": "user permission", "description": "User Permission APIs" }, { "name": "internal", "description": "Callback Test" }, { "name": "policy", "description": "Policy APIs" }, { "name": "rbac role", "description": "RBAC Role APIs" }, { "name": "assigning member role", "description": "Assigning Member Role APIs" }, { "name": "admin", "description": null }, { "name": "dashboard", "description": "Dashboard APIs" }, { "name": "stock", "description": "Stock APIs" }, { "name": "environment", "description": "Environment APIs" }, { "name": "virtual machine events", "description": "Virtual Machine Event APIs" }, { "name": "virtual machine", "description": "Virtual Machine APIs" }, { "name": "flavor", "description": "Flavor APIs" }, { "name": "image", "description": "Image APIs" }, { "name": "keypair", "description": "Keypair APIs" }, { "name": "vnc url", "description": "VNC Console Link APIs" }, { "name": "volume", "description": "Volume APIs" }, { "name": "volume attachment", "description": "Volume Attachment APIs" }, { "name": "gpu", "description": "GPU APIs" }, { "name": "callbacks", "description": "Callback APIs" }, { "name": "floating ip", "description": "Floating IP APIs" }, { "name": "region", "description": "Region APIs" }, { "name": "template", "description": "Templates APIs" }, { "name": "deployment", "description": "Deployment APIs" }, { "name": "security-rules", "description": "Security Rule APIs" }, { "name": "profile", "description": "Profile APIs" }, { "name": "compliance", "description": "Compliance APIs" }, { "name": "Pricebook", "description": "Pricebook APIs" }, { "name": "Discount", "description": "Discount APIs" }, { "name": "Calculate", "description": "Calculate APIs" }, { "name": "alive", "description": null }, { "name": "billing", "description": null }, { "name": "credit", "description": null }, { "name": "payment", "description": null } ], "paths": { "/api-key": { "get": { "tags": [ "api key" ], "summary": "Get API Key", "operationId": "Get API Key", "responses": { "200": { "description": "Getting API Key success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/APIKey" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/api-key/generate": { "post": { "tags": [ "api key" ], "summary": "Generate API Key", "operationId": "Generate API Key", "responses": { "200": { "description": "API Key generated successfully", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/APIKeygeneration" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] } ] } }, "/api-key/verify": {}, "/auth/admin/credit-warning-mail/{org_id}": {}, "/auth/admin/data-usages-warning-mail/{org_id}": {}, "/auth/admin/organizations": {}, "/auth/admin/organizations/{id}": {}, "/auth/admin/termination-warning-mail/{org_id}": {}, "/auth/invites": { "get": { "tags": [ "invite" ], "summary": "List Invites", "operationId": "List Invites", "responses": { "200": { "description": "Getting invites successful", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Invites" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] }, "post": { "tags": [ "invite" ], "summary": "Invite an user to organization", "operationId": "Invite an user to organization", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InviteUser" } } }, "required": true }, "responses": { "201": { "description": "Inviting user successful", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Invite" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "409": { "description": "Conflict", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ], "x-codegen-request-body-name": "payload" } }, "/auth/invites/{id}": { "delete": { "tags": [ "invite" ], "summary": "Delete Invite", "operationId": "Delete Invite", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "description": "Invite deleted successfully", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseModel" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/auth/logout": {}, "/auth/me": { "get": { "tags": [ "auth" ], "summary": "Get me information", "operationId": "Auth user information", "responses": { "200": { "description": "User Information", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserInfoResponse" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/auth/organizations": { "get": { "tags": [ "organization" ], "summary": "Organization Info", "operationId": "Get organization info", "responses": { "200": { "description": "Successfully retrieved organizations info", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OrganizationModel" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/auth/organizations/remove-member": { "post": { "tags": [ "organization" ], "summary": "Remove a member from organization", "operationId": "Remove a member from organization", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Removemember" } } }, "required": true }, "responses": { "200": { "description": "The member was removed from your organization", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RemoveMemberResponse" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ], "x-codegen-request-body-name": "payload" } }, "/auth/permissions": { "get": { "tags": [ "permission" ], "summary": "List Permissions", "operationId": "List Permissions", "responses": { "200": { "description": "Getting permissions success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Permissions" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/auth/permissions/{id}": {}, "/auth/policies": { "get": { "tags": [ "policy" ], "summary": "List Policies", "operationId": "List Policies", "responses": { "200": { "description": "Getting policies success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Policies" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/auth/policies/{id}": {}, "/auth/refresh": {}, "/auth/request-login": {}, "/auth/roles": { "get": { "tags": [ "rbac role" ], "summary": "List RBAC Roles", "operationId": "List RBAC Roles", "responses": { "200": { "description": "Getting RBAC roles success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RBACRoles" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] }, "post": { "tags": [ "rbac role" ], "summary": "Create RBAC Role", "operationId": "Create RBAC Role", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RBACRolePayload" } } }, "required": true }, "responses": { "201": { "description": "Creating RBAC role success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RBACRole" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "409": { "description": "Conflict", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ], "x-codegen-request-body-name": "payload" } }, "/auth/roles/{id}": { "get": { "tags": [ "rbac role" ], "summary": "Get a RBAC Role Detail", "operationId": "Get a RBAC Role Detail", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "description": "Getting RBAC role detail success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RBACRole" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] }, "put": { "tags": [ "rbac role" ], "summary": "Update a RBAC Role", "operationId": "Update a RBAC Role", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RBACRolePayload" } } }, "required": true }, "responses": { "200": { "description": "RBAC Role updated successfully", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RBACRole" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ], "x-codegen-request-body-name": "payload" }, "delete": { "tags": [ "rbac role" ], "summary": "Delete a RBAC Role", "operationId": "Delete a RBAC Role", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "description": "RBAC Role deleted successfully", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseModel" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/auth/sendgrid-webhook": {}, "/auth/token": {}, "/auth/users/me/permissions": { "get": { "tags": [ "user permission" ], "summary": "List Current User Permissions", "operationId": "List Current User Permissions", "responses": { "200": { "description": "Getting my permissions successfully", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PermissionsforUserPermission" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/auth/users/{id}/permissions": { "get": { "tags": [ "user permission" ], "summary": "List User Permissions", "operationId": "List User Permissions", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "description": "Getting user permissions successfully", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PermissionsforUserPermission" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "405": { "description": "Method Not Allowed", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/auth/users/{user_id}/assign-roles": { "put": { "tags": [ "assigning member role" ], "summary": "Assign RBAC Roles", "operationId": "Assign RBAC Roles", "parameters": [ { "name": "user_id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AssignRBACRolePayload" } } }, "required": true }, "responses": { "200": { "description": "Assigning RBAC Role success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RBACRole" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ], "x-codegen-request-body-name": "payload" } }, "/auth/users/{user_id}/roles": { "delete": { "tags": [ "assigning member role" ], "summary": "Remove role from a user", "operationId": "Remove role from a user", "parameters": [ { "name": "user_id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "description": "RBAC member role deleted successfully", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseModel" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/internal/users/{id}/permissions": {}, "/core/admin/keypairs": {}, "/core/admin/organizations/{id}/hibernate": {}, "/core/admin/resources": {}, "/core/admin/resources/{id}": {}, "/core/admin/virtual-machines": {}, "/core/admin/virtual-machines/{id}": {}, "/core/admin/virtual-machines/{id}/stop": {}, "/core/admin/virtual-machines/{virtual_machine_id}/events": {}, "/core/admin/virtual-machines/{virtual_machine_id}/hibernate": {}, "/core/admin/virtual-machines/{virtual_machine_id}/hibernate-restore": {}, "/core/compliance": { "get": { "tags": [ "compliance" ], "summary": "Get Compliance List", "operationId": "Get Compliance List", "parameters": [ { "name": "gpu", "in": "query", "description": "This is for gpu model", "schema": {} } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ComplianceResponse" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "406": { "description": "Not Acceptable", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] }, "put": { "tags": [ "compliance" ], "summary": "Update a compliance", "operationId": "Update a compliance", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CompliancePayload" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateUpdateComplianceResponse" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "405": { "description": "Method Not Allowed", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ], "x-codegen-request-body-name": "payload" }, "post": { "tags": [ "compliance" ], "summary": "Create Compliance", "operationId": "Create Compliance", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CompliancePayload" } } }, "required": true }, "responses": { "201": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateUpdateComplianceResponse" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "405": { "description": "Method Not Allowed", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "409": { "description": "Conflict", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ], "x-codegen-request-body-name": "payload" } }, "/core/compliance/{gpu_model}": { "delete": { "tags": [ "compliance" ], "summary": "Delete a compliance", "operationId": "Delete a compliance", "parameters": [ { "name": "gpu_model", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseModel" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/core/dashboard": { "get": { "tags": [ "dashboard" ], "summary": "Get Instances, Containers and Volumes Overview", "operationId": "Get Instances, Containers and Volumes Overview", "responses": { "200": { "description": "Getting dashboard info success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DashboardInfoResponse" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/core/environments": { "get": { "tags": [ "environment" ], "summary": "List Environments", "operationId": "List Environments", "responses": { "200": { "description": "Getting environments successful", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Environments" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] }, "post": { "tags": [ "environment" ], "summary": "Create Environment", "operationId": "Create Environment", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateEnvironment" } } }, "required": true }, "responses": { "200": { "description": "Environment is created successfully", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Environment" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "409": { "description": "Conflict", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ], "x-codegen-request-body-name": "payload" } }, "/core/environments/{id}": { "get": { "tags": [ "environment" ], "summary": "Get an environment detail", "operationId": "Get an environment details", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "description": "Getting detail successful", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Environment" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] }, "put": { "tags": [ "environment" ], "summary": "Update Environment", "operationId": "Update an environment", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateEnvironment" } } }, "required": true }, "responses": { "200": { "description": "Update an environment success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Environment" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ], "x-codegen-request-body-name": "payload" }, "delete": { "tags": [ "environment" ], "summary": "Delete an environment", "operationId": "Delete an environment", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseModel" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/core/flavors": { "get": { "tags": [ "flavor" ], "summary": "Retrieve Flavors", "operationId": "Retrieve Flavors", "parameters": [ { "name": "region", "in": "query", "description": "Region Name", "schema": {} } ], "responses": { "200": { "description": "Getting flavors successful", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/FlavorListResponse" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/core/gpus": { "get": { "tags": [ "gpu" ], "summary": "Get GPU List", "operationId": "Get GPU List", "responses": { "200": { "description": "Getting GPU list successful", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GPUList" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/core/gpus/{id}": {}, "/core/image-logos": {}, "/core/images": { "get": { "tags": [ "image" ], "summary": "Retrieve Images", "operationId": "Retrieve Images", "parameters": [ { "name": "region", "in": "query", "description": "Region Name", "schema": {} } ], "responses": { "200": { "description": "Getting images successful", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Images" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "406": { "description": "Not Acceptable", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/core/internal/callbacks/test": {}, "/core/internal/virtual-machines": {}, "/core/internal/volumes": {}, "/core/keypair/{id}": { "put": { "tags": [ "keypair" ], "summary": "Update Keypair name", "operationId": "Update Keypair name", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateKeypairName" } } }, "required": true }, "responses": { "200": { "description": "Keypair name updated successfully", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateKeypairnameresponse" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ], "x-codegen-request-body-name": "payload" }, "delete": { "tags": [ "keypair" ], "summary": "Delete Keypair", "operationId": "Delete Keypair", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseModel" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/core/keypairs": { "get": { "tags": [ "keypair" ], "summary": "Retrieve Keypairs", "operationId": "Retrieve User Keypairs", "responses": { "200": { "description": "Getting user keypairs successful", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Keypairs" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] }, "post": { "tags": [ "keypair" ], "summary": "Import Keypair", "operationId": "Import Keypair", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ImportKeypairPayload" } } }, "required": true }, "responses": { "200": { "description": "Keypair is imported successfully", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ImportKeypairResponse" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "409": { "description": "Conflict", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ], "x-codegen-request-body-name": "payload" } }, "/core/marketplace/deployments": { "get": { "tags": [ "deployment" ], "summary": "List Deployments", "operationId": "List Deployments", "responses": { "200": { "description": "Getting deployments success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Deployments" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] }, "post": { "tags": [ "deployment" ], "summary": "Start Deployment", "operationId": "Start Deployment", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StartDeploymentPayload" } } }, "required": true }, "responses": { "200": { "description": "Deployment created successfully", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StartDeployment" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "409": { "description": "Conflict", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ], "x-codegen-request-body-name": "payload" } }, "/core/marketplace/deployments/{id}": { "get": { "tags": [ "deployment" ], "summary": "Details of Deployment by ID", "operationId": "Details of Deployment by ID", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "description": "Getting deployment detail success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StartDeployment" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] }, "delete": { "tags": [ "deployment" ], "summary": "Delete Deployment", "operationId": "Delete Deployment", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "responses": { "202": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseModel" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/core/marketplace/templates": { "get": { "tags": [ "template" ], "summary": "List Templates", "operationId": "List Templates", "parameters": [ { "name": "visibility", "in": "query", "description": "visibility: public/private", "schema": {} } ], "responses": { "200": { "description": "Getting templates success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Templates" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "406": { "description": "Not Acceptable", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] }, "post": { "tags": [ "template" ], "summary": "Create Template", "operationId": "Create Template", "requestBody": { "content": { "multipart/form-data": { "schema": { "required": [ "content", "description", "is_public", "name" ], "properties": { "name": { "type": "string", "description": "name is required" }, "description": { "type": "string", "description": "description is required" }, "is_public": { "type": "string", "description": "is_public is required" }, "content": { "type": "string", "description": "YAML file is required", "format": "binary" } } } } }, "required": true }, "responses": { "201": { "description": "Template added successfully", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Template" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/core/marketplace/templates/{id}": { "get": { "tags": [ "template" ], "summary": "Details of a Template by ID", "operationId": "Details of a Template by ID", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "description": "Getting template detail success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Template" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] }, "put": { "tags": [ "template" ], "summary": "Update Template", "operationId": "Update Template", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateTemplate" } } }, "required": true }, "responses": { "200": { "description": "Template updated successfully", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Template" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ], "x-codegen-request-body-name": "payload" }, "delete": { "tags": [ "template" ], "summary": "Delete a Template", "operationId": "Delete a Template", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseModel" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/core/profiles": { "get": { "tags": [ "profile" ], "summary": "Get Profile List", "operationId": "Get Profile List", "responses": { "200": { "description": "Getting profiles success.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ProfileListResponse" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] }, "post": { "tags": [ "profile" ], "summary": "Create a profile", "operationId": "Create Profile", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateProfilePayload" } } }, "required": true }, "responses": { "201": { "description": "Profile created successfully", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateProfileResponse" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "409": { "description": "Conflict", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ], "x-codegen-request-body-name": "payload" } }, "/core/profiles/{id}": { "get": { "tags": [ "profile" ], "summary": "Get a Profile Detail", "operationId": "Get a Profile Detail", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "description": "Getting profile detail success.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateProfileResponse" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] }, "delete": { "tags": [ "profile" ], "summary": "Delete Profile", "operationId": "Delete Profile", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseModel" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/core/regions": { "get": { "tags": [ "region" ], "summary": "Getting regions", "operationId": "Getting regions", "responses": { "200": { "description": "Getting regions successful.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Regions" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/core/regions/{id}": {}, "/core/sg-rules-protocols": { "get": { "tags": [ "security-rules" ], "summary": "Retrieve Security Rule Protocols", "operationId": "Retrieve Security Rule Protocols", "responses": { "200": { "description": "Getting security rule protocols successful", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SecurityRulesProtocolFields" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/core/stocks": { "get": { "tags": [ "stock" ], "operationId": "Retrieve Stocks", "responses": { "200": { "description": "Stocks Retrived Successfully.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/NewStockRetriveResponse" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Stocks Not Found", "content": {} }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/core/stocks/details": {}, "/core/stocks/upcoming": {}, "/core/stocks/upcoming/{id}": {}, "/core/stocks/upcoming/{node_id}/stock": {}, "/core/stocks/upcoming/{node_id}/stock/{stock_id}": {}, "/core/stocks/visibility": {}, "/core/stocks/visibility/add-users": {}, "/core/stocks/visibility/remove-users": {}, "/core/virtual-machines": { "get": { "tags": [ "virtual machine" ], "summary": "List Instances", "operationId": "List Instances", "responses": { "200": { "description": "Getting instances successful", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Instances" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] }, "post": { "tags": [ "virtual machine" ], "summary": "Create Instances", "operationId": "Create Instances", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateInstancesPayload" } } }, "required": true }, "responses": { "200": { "description": "Instances are created successfully", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Instances" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "405": { "description": "Method Not Allowed", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "409": { "description": "Conflict", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ], "x-codegen-request-body-name": "payload" } }, "/core/virtual-machines/{id}": { "get": { "tags": [ "virtual machine" ], "summary": "Get an instance details", "operationId": "Get an instance details", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "description": "Getting instance detail successful", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Instance" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] }, "delete": { "tags": [ "virtual machine" ], "summary": "Delete an instance", "operationId": "Delete an instance", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseModel" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/core/virtual-machines/{id}/attach-callback": { "post": { "tags": [ "callbacks" ], "summary": "Attach a callback to an instance", "operationId": "Attach a callback to an instance", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AttachCallbackPayload" } } }, "required": true }, "responses": { "200": { "description": "Callback URL successfully attached to your instance. Any action events on your instance will be posted to the provided URL", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AttachCallbackResponse" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ], "x-codegen-request-body-name": "payload" } }, "/core/virtual-machines/{id}/attach-floatingip": { "post": { "tags": [ "floating ip" ], "summary": "Attach Floating IP to Instance", "operationId": "Attach Floating IP to Instance", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseModel" } } } }, "400": { "description": "Insufficient balance to create the resource", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/core/virtual-machines/{id}/delete-callback": { "delete": { "tags": [ "callbacks" ], "summary": "Delete a callback URL for an instance", "operationId": "Delete a callback URL for an instance", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseModel" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/core/virtual-machines/{id}/detach-floatingip": { "post": { "tags": [ "floating ip" ], "summary": "Detach Floating IP to Instance", "operationId": "Detach Floating IP to Instance", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseModel" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/core/virtual-machines/{id}/hard-reboot": { "get": { "tags": [ "virtual machine" ], "summary": "Hard Reboot Instance", "operationId": "Hard Reboot Instance", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseModel" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/core/virtual-machines/{id}/request-console": { "get": { "tags": [ "vnc url" ], "summary": "Request Instance Console", "operationId": "Request Console", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "description": "Please wait a few seconds and visit the below link to access your VNC console URL", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RequestConsole" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/core/virtual-machines/{id}/sg-rules": { "post": { "tags": [ "virtual machine" ], "summary": "Add Security Rule", "operationId": "Add Security Rule", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateSecurityRulePayload" } } }, "required": true }, "responses": { "200": { "description": "Security Rule created successfully", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SecurityGroupRule" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "409": { "description": "Conflict", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ], "x-codegen-request-body-name": "payload" } }, "/core/virtual-machines/{id}/start": { "get": { "tags": [ "virtual machine" ], "summary": "Start Instance", "operationId": "Start Instance", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseModel" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/core/virtual-machines/{id}/stop": { "get": { "tags": [ "virtual machine" ], "summary": "Stop Instance", "operationId": "Stop Instance", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseModel" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/core/virtual-machines/{id}/update-callback": { "put": { "tags": [ "callbacks" ], "summary": "Update a callback URL", "operationId": "Update a callback URL", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AttachCallbackPayload" } } }, "required": true }, "responses": { "200": { "description": "Callback URL successfully updated.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AttachCallbackResponse" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ], "x-codegen-request-body-name": "payload" } }, "/core/virtual-machines/{virtual_machine_id}/attach-volumes": { "post": { "tags": [ "volume attachment" ], "summary": "Attach Volumes", "operationId": "Attach Volumes", "parameters": [ { "name": "virtual_machine_id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AttachVolumesPayload" } } }, "required": true }, "responses": { "200": { "description": "Volumes attaching now.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AttachVolumes" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "405": { "description": "Method Not Allowed", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ], "x-codegen-request-body-name": "payload" } }, "/core/virtual-machines/{virtual_machine_id}/console/{job_id}": { "get": { "tags": [ "vnc url" ], "summary": "Get VNC Console Link", "operationId": "Get VNC Console Link", "parameters": [ { "name": "virtual_machine_id", "in": "path", "required": true, "schema": { "type": "integer" } }, { "name": "job_id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "description": "Get VNC Console Link Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VNCURL" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/core/virtual-machines/{virtual_machine_id}/detach-volumes": { "post": { "tags": [ "volume attachment" ], "summary": "Detach Volumes", "operationId": "Detach Volumes", "parameters": [ { "name": "virtual_machine_id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DetachVolumesPayload" } } }, "required": true }, "responses": { "200": { "description": "Volumes detaching now.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DetachVolumes" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "405": { "description": "Method Not Allowed", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ], "x-codegen-request-body-name": "payload" } }, "/core/virtual-machines/{virtual_machine_id}/events": { "get": { "tags": [ "virtual machine events" ], "summary": "Fetch all of the instance events", "operationId": "Fetch all of the instance events", "parameters": [ { "name": "virtual_machine_id", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Getting instance events success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InstanceEvents" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/core/virtual-machines/{virtual_machine_id}/hibernate": { "get": { "tags": [ "virtual machine" ], "summary": "Hibernate Instance", "operationId": "Hibernate Instance", "parameters": [ { "name": "virtual_machine_id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseModel" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/core/virtual-machines/{virtual_machine_id}/hibernate-restore": { "get": { "tags": [ "virtual machine" ], "summary": "Restore Instance from Hibernation", "operationId": "Restore Instance from Hibernation", "parameters": [ { "name": "virtual_machine_id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseModel" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/core/virtual-machines/{virtual_machine_id}/metrics": { "get": { "tags": [ "virtual machine" ], "summary": "Get instance metrics", "operationId": "Retrieved metrics successfully", "parameters": [ { "name": "virtual_machine_id", "in": "path", "required": true, "schema": { "type": "integer" } }, { "name": "duration", "in": "query", "schema": { "type": "string", "enum": [ "1h", "2h", "4h", "6h", "12h", "1d", "3d", "7d", "15d", "30d" ] } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseModel" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "406": { "description": "Not Acceptable", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/core/virtual-machines/{virtual_machine_id}/resize": { "post": { "tags": [ "virtual machine" ], "summary": "Resize Virtual Machine", "operationId": "Resize Virtual Machine", "parameters": [ { "name": "virtual_machine_id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InstanceResizePayload" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseModel" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "405": { "description": "Method Not Allowed", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ], "x-codegen-request-body-name": "payload" } }, "/core/virtual-machines/{virtual_machine_id}/sg-rules/{sg_rule_id}": { "delete": { "tags": [ "virtual machine" ], "summary": "Delete a security group rule", "operationId": "Delete a Security Rule", "parameters": [ { "name": "virtual_machine_id", "in": "path", "required": true, "schema": { "type": "integer" } }, { "name": "sg_rule_id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseModel" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/core/volume-types": { "get": { "tags": [ "volume" ], "summary": "GET Volume Types", "operationId": "Get Volume Types", "responses": { "200": { "description": "Retrieved Volume Types.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VolumeTypes" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/core/volumes": { "get": { "tags": [ "volume" ], "summary": "List Volumes", "operationId": "List Volumes", "responses": { "200": { "description": "Getting volumes successful", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Volumes" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] }, "post": { "tags": [ "volume" ], "summary": "Create Volume", "operationId": "Create Volume", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateVolumePayload" } } }, "required": true }, "responses": { "200": { "description": "Volume created successfully", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Volume" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "405": { "description": "Method Not Allowed", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "409": { "description": "Conflict", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ], "x-codegen-request-body-name": "payload" } }, "/core/volumes/{id}": { "delete": { "tags": [ "volume" ], "summary": "Delete Volume", "operationId": "Delete Volume", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseModel" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/core/volumes/{id}/attach-callback": { "post": { "tags": [ "callbacks" ], "summary": "Attach a callback to a volume", "operationId": "Attach a callback to a volume", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AttachCallbackPayload" } } }, "required": true }, "responses": { "200": { "description": "Callback URL successfully attached to your volume. Any action events on your volume will be posted to the provided URL", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AttachCallbackResponse" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ], "x-codegen-request-body-name": "payload" } }, "/core/volumes/{id}/delete-callback": { "delete": { "tags": [ "callbacks" ], "summary": "Delete callback URL for a volume", "operationId": "Delete callback URL for a volume", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResponseModel" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/core/volumes/{id}/update-callback": { "put": { "tags": [ "callbacks" ], "summary": "Update callback URL for volume", "operationId": "Update callback URL for volume", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AttachCallbackPayload" } } }, "required": true }, "responses": { "200": { "description": "Callback URL successfully updated.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AttachCallbackResponse" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ], "x-codegen-request-body-name": "payload" } }, "/pricebook": { "get": { "tags": [ "Pricebook" ], "operationId": "Retrive Pricebook", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/PricebookModel" } } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "405": { "description": "Method Not Allowed", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/pricebook/calculate": {}, "/pricebook/calculate/{id}": {}, "/pricebook/discounts/flat-per-resource": {}, "/pricebook/discounts/flat-per-resource/{org_id}": {}, "/pricebook/discounts/flat-per-resource/{org_id}/update-status": {}, "/billing/admin/add_organization": {}, "/billing/admin/credit/{organization_id}": {}, "/billing/admin/recharge_history/{organization_id}": {}, "/billing/admin/threshold/{organization_id}": {}, "/billing/admin/usage/{organization_id}": {}, "/billing/alive": { "get": { "tags": [ "alive" ], "summary": "GET: Alive", "operationId": "get_alive", "responses": { "200": { "description": "Success", "content": {} } } } }, "/billing/billing/last-day-cost": { "get": { "tags": [ "billing" ], "summary": "GET: Last Day Cost", "operationId": "get_last_day_cost", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Lastdaycostresponse" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "403": { "description": "Forbidden", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/billing/billing/usage": { "get": { "tags": [ "billing" ], "summary": "GET: Billing usage", "operationId": "get_usage", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Billingmetricesresponse" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "403": { "description": "Forbidden", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/billing/payment/payment-details": { "get": { "tags": [ "payment" ], "summary": "GET: View payment details", "operationId": "get_details", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PaymentDetailsResponse" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "403": { "description": "Forbidden", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } }, "/billing/payment/payment-initiate": { "post": { "tags": [ "payment" ], "summary": "POST: Initiate payment", "operationId": "post_payment", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PaymentInitiatePayload" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PaymentInitiateResponse" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "403": { "description": "Forbidden", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ], "x-codegen-request-body-name": "payload" } }, "/billing/user-credit/credit": { "get": { "tags": [ "credit" ], "summary": "GET: View credit and threshold", "operationId": "Check balance as an organization", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Getcreditandthresholdinfoinresponse" } } } }, "400": { "description": "Bad Request", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "401": { "description": "Unauthorized", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "403": { "description": "Forbidden", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponseModel" } } } }, "500": { "description": "Internal Server Error", "content": {} } }, "security": [ { "accessToken": [] }, { "apiKey": [] } ] } } }, "components": { "schemas": { "RequestLoginResponse": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "data": { "$ref": "#/components/schemas/RequestLoginDataResponse" } } }, "RequestLoginDataResponse": { "type": "object", "properties": { "authorization_url": { "type": "string" }, "session_id": { "type": "string" } } }, "ErrorResponseModel": { "type": "object", "properties": { "status": { "type": "boolean", "default": false }, "message": { "type": "string" }, "error_reason": { "type": "string" } } }, "GetToken": { "required": [ "callback_code", "session_id" ], "type": "object", "properties": { "session_id": { "type": "string" }, "callback_code": { "type": "string" } } }, "GetTokenResponse": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "token": { "$ref": "#/components/schemas/TokenFields" } } }, "TokenFields": { "type": "object", "properties": { "access_token": { "type": "string" }, "id_token": { "type": "string" }, "refresh_token": { "type": "string" } } }, "RefreshToken": { "required": [ "id_token", "refresh_token" ], "type": "object", "properties": { "id_token": { "type": "string" }, "refresh_token": { "type": "string" } } }, "Logout": { "required": [ "refresh_token" ], "type": "object", "properties": { "refresh_token": { "type": "string" } } }, "UserInfoResponse": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "user": { "$ref": "#/components/schemas/UserFields" } } }, "UserFields": { "type": "object", "properties": { "email": { "type": "string" }, "name": { "type": "string" }, "username": { "type": "string" }, "created_at": { "type": "string", "format": "date-time" } } }, "OrganizationModel": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "organization": { "$ref": "#/components/schemas/OrganizationInfoModel" } } }, "OrganizationInfoModel": { "required": [ "id", "name" ], "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" }, "users": { "type": "array", "items": { "$ref": "#/components/schemas/OrganizationUserModel" } }, "created_at": { "type": "string", "format": "date-time" } } }, "OrganizationUserModel": { "type": "object", "properties": { "id": { "type": "integer" }, "sub": { "type": "string" }, "email": { "type": "string" }, "username": { "type": "string" }, "name": { "type": "string" }, "role": { "type": "string" }, "rbac_roles": { "type": "array", "items": { "$ref": "#/components/schemas/RBACRoleFieldforOrganization" } }, "joined_at": { "type": "string", "format": "date-time" } } }, "RBACRoleFieldforOrganization": { "type": "object", "properties": { "name": { "type": "string" } } }, "Removemember": { "required": [ "email" ], "type": "object", "properties": { "email": { "type": "string" } } }, "RemoveMemberResponse": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" } } }, "APIKey": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "api_key": { "$ref": "#/components/schemas/APIKeyFields" } } }, "APIKeyFields": { "type": "object", "properties": { "key": { "type": "string" } } }, "APIKeygeneration": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "api_key": { "type": "string" } } }, "APIKeyPayload": { "type": "object", "properties": { "api_key": { "type": "string" } } }, "ApiKeyVerifyResponse": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "api_key": { "$ref": "#/components/schemas/ApiKeyVerifyFields" } } }, "ApiKeyVerifyFields": { "type": "object", "properties": { "user_id": { "type": "integer" }, "org_id": { "type": "integer" }, "user_role": { "type": "string" }, "sub": { "type": "string" } } }, "InviteUser": { "required": [ "email" ], "type": "object", "properties": { "email": { "type": "string" } } }, "Invites": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "invites": { "type": "array", "items": { "$ref": "#/components/schemas/InviteFields" } } } }, "InviteFields": { "type": "object", "properties": { "id": { "type": "integer" }, "email": { "type": "string" }, "status": { "type": "string" }, "created_at": { "type": "string", "format": "date-time" } } }, "Invite": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "invite": { "$ref": "#/components/schemas/InviteFields" } } }, "ResponseModel": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" } } }, "PermissionPayload": { "required": [ "endpoint", "method", "permission", "resource" ], "type": "object", "properties": { "resource": { "type": "string" }, "permission": { "type": "string" }, "method": { "type": "string" }, "endpoint": { "type": "string" } } }, "Permissions": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "permissions": { "type": "array", "items": { "$ref": "#/components/schemas/PermissionFields" } } } }, "PermissionFields": { "type": "object", "properties": { "id": { "type": "integer" }, "resource": { "type": "string" }, "permission": { "type": "string" }, "method": { "type": "string" }, "endpoint": { "type": "string" }, "created_at": { "type": "string", "format": "date-time" } } }, "PermissionResponse": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "permission": { "$ref": "#/components/schemas/PermissionFields" } } }, "PermissionsforUserPermission": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "permissions": { "type": "array", "items": { "$ref": "#/components/schemas/PermissionFieldsforUserPermission" } } } }, "PermissionFieldsforUserPermission": { "type": "object", "properties": { "id": { "type": "integer" }, "resource": { "type": "string" }, "permission": { "type": "string" } } }, "PolicyPayload": { "required": [ "description", "is_public", "name", "permissions" ], "type": "object", "properties": { "name": { "type": "string" }, "description": { "type": "string" }, "is_public": { "type": "boolean" }, "permissions": { "type": "array", "items": { "type": "integer" } } } }, "Policies": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "policies": { "type": "array", "items": { "$ref": "#/components/schemas/PolicyFields" } } } }, "PolicyFields": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" }, "description": { "type": "string" }, "permissions": { "type": "array", "items": { "$ref": "#/components/schemas/PolicyPermissionFields" } }, "created_at": { "type": "string", "format": "date-time" } } }, "PolicyPermissionFields": { "type": "object", "properties": { "id": { "type": "integer" }, "resource": { "type": "string" }, "permission": { "type": "string" } } }, "PolicyResponse": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "policy": { "$ref": "#/components/schemas/PolicyFields" } } }, "RBACRolePayload": { "required": [ "description", "name" ], "type": "object", "properties": { "name": { "type": "string" }, "description": { "type": "string" }, "policies": { "type": "array", "items": { "type": "integer" } }, "permissions": { "type": "array", "items": { "type": "integer" } } } }, "RBACRoles": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "roles": { "type": "array", "items": { "$ref": "#/components/schemas/RBACRoleFields" } } } }, "RBACRoleFields": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" }, "description": { "type": "string" }, "policies": { "type": "array", "items": { "$ref": "#/components/schemas/RolePolicyFields" } }, "permissions": { "type": "array", "items": { "$ref": "#/components/schemas/RolePermissionFields" } }, "created_at": { "type": "string", "format": "date-time" } } }, "RolePolicyFields": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" }, "description": { "type": "string" } } }, "RolePermissionFields": { "type": "object", "properties": { "id": { "type": "integer" }, "resource": { "type": "string" }, "permission": { "type": "string" } } }, "RBACRole": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "role": { "$ref": "#/components/schemas/RBACRoleFields" } } }, "AssignRBACRolePayload": { "required": [ "role_id" ], "type": "object", "properties": { "role_id": { "type": "integer" } } }, "OrganizationsResponseModel": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "organizations": { "type": "array", "items": { "$ref": "#/components/schemas/OrganizationInfoModel" } } } }, "OrganizationResponseModel": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "organizations": { "$ref": "#/components/schemas/OrganizationInfoModel" } } }, "DashboardInfoResponse": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "overview": { "$ref": "#/components/schemas/OverviewInfo" } } }, "OverviewInfo": { "type": "object", "properties": { "instance": { "$ref": "#/components/schemas/InstanceOverviewFields" }, "container": { "$ref": "#/components/schemas/ContainerOverviewFields" }, "volume": { "$ref": "#/components/schemas/VolumeOverviewFields" } } }, "InstanceOverviewFields": { "type": "object", "properties": { "count": { "type": "integer" }, "vcpus": { "type": "integer" }, "gpus": { "type": "integer" }, "ram": { "type": "integer" }, "cost_per_hour": { "type": "number" } } }, "ContainerOverviewFields": { "type": "object", "properties": { "count": { "type": "integer" }, "vcpus": { "type": "integer" }, "gpus": { "type": "integer" }, "ram": { "type": "integer" }, "cost_per_hour": { "type": "number" } } }, "VolumeOverviewFields": { "type": "object", "properties": { "count": { "type": "integer" }, "using": { "type": "integer" }, "cost_per_hour": { "type": "number" } } }, "NewStockRetriveResponse": { "type": "object", "properties": { "stocks": { "type": "array", "items": { "$ref": "#/components/schemas/NewStockResponse" } } } }, "NewStockResponse": { "type": "object", "properties": { "region": { "type": "string" }, "stock-type": { "type": "string" }, "models": { "type": "array", "items": { "$ref": "#/components/schemas/NewModelResponse" } } } }, "NewModelResponse": { "type": "object", "properties": { "model": { "type": "string" }, "available": { "type": "string" }, "planned_7_days": { "type": "string" }, "planned_30_days": { "type": "string" }, "planned_100_days": { "type": "string" }, "configurations": { "$ref": "#/components/schemas/NewConfigurationsResponse" } } }, "NewConfigurationsResponse": { "type": "object", "properties": { "1x": { "type": "integer" }, "2x": { "type": "integer" }, "4x": { "type": "integer" }, "8x": { "type": "integer" }, "10x": { "type": "integer" } } }, "StockVisibilityUserListResponse": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "users": { "type": "array", "items": { "$ref": "#/components/schemas/SingleVisibilityUserResponse" } } } }, "SingleVisibilityUserResponse": { "required": [ "id", "stock_visible", "user_id" ], "type": "object", "properties": { "id": { "type": "integer" }, "user_id": { "type": "integer" }, "stock_visible": { "type": "boolean" } } }, "StockVisibilityUserPayload": { "type": "object", "properties": { "user_ids": { "type": "array", "items": { "type": "integer" } } } }, "NodeStockPayloadModel": { "type": "object", "properties": { "stocks": { "type": "array", "items": { "$ref": "#/components/schemas/NodePayloadModel" } } } }, "NodePayloadModel": { "type": "object", "properties": { "region": { "type": "string" }, "nodes": { "type": "array", "items": { "$ref": "#/components/schemas/NodePowerUsageModel" } } } }, "NodePowerUsageModel": { "required": [ "openstack_id" ], "type": "object", "properties": { "openstack_id": { "type": "string" }, "openstack_name": { "type": "string" }, "nexgen_name": { "type": "string" }, "status": { "type": "string" }, "provision_date": { "type": "string", "format": "date-time" }, "sunset_date": { "type": "string", "format": "date-time" }, "stocks": { "type": "array", "items": { "$ref": "#/components/schemas/NodeStocksPayload" } }, "power_usages": { "$ref": "#/components/schemas/PowerUsageModel" } } }, "NodeStocksPayload": { "required": [ "in_use", "total", "type" ], "type": "object", "properties": { "name": { "type": "string" }, "type": { "type": "string" }, "total": { "type": "integer" }, "in_use": { "type": "integer" } } }, "PowerUsageModel": { "required": [ "unit", "value" ], "type": "object", "properties": { "value": { "type": "number" }, "unit": { "type": "string" } } }, "NodeStockResponseModel": { "type": "object", "properties": { "stocks": { "type": "array", "items": { "$ref": "#/components/schemas/NodeResponseModel" } } } }, "NodeResponseModel": { "type": "object", "properties": { "region": { "type": "string" }, "nodes": { "type": "array", "items": { "$ref": "#/components/schemas/NodeModel" } } } }, "NodeModel": { "required": [ "openstack_id" ], "type": "object", "properties": { "openstack_id": { "type": "string" }, "openstack_name": { "type": "string" }, "nexgen_name": { "type": "string" }, "status": { "type": "string" }, "provision_date": { "type": "string", "format": "date-time" }, "sunset_date": { "type": "string", "format": "date-time" }, "stocks": { "type": "array", "items": { "$ref": "#/components/schemas/NodeStocksPayload" } } } }, "FutureNodesStockModel": { "type": "object", "properties": { "future_stocks": { "type": "array", "items": { "$ref": "#/components/schemas/FutureNodeResponseModel" } } } }, "FutureNodeResponseModel": { "type": "object", "properties": { "region": { "type": "string" }, "nodes": { "type": "array", "items": { "$ref": "#/components/schemas/FutureNodeModel" } } } }, "FutureNodeModel": { "required": [ "expected_provision_date" ], "type": "object", "properties": { "id": { "type": "integer", "readOnly": true }, "openstack_name": { "type": "string" }, "nexgen_name": { "type": "string" }, "expected_provision_date": { "type": "string", "format": "date-time" }, "stocks": { "type": "array", "items": { "$ref": "#/components/schemas/FutureNodeStockModel" } } } }, "FutureNodeStockModel": { "required": [ "expected_amount" ], "type": "object", "properties": { "id": { "type": "integer", "readOnly": true }, "name": { "type": "string" }, "expected_amount": { "type": "integer" } } }, "NewStockUpdateResponseModel": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" } } }, "FutureNodeUpdateModel": { "required": [ "expected_provision_date", "nexgen_name", "openstack_name" ], "type": "object", "properties": { "id": { "type": "integer", "readOnly": true }, "region_id": { "type": "integer" }, "openstack_name": { "type": "string" }, "nexgen_name": { "type": "string" }, "expected_provision_date": { "type": "string", "format": "date-time" } } }, "CreateEnvironment": { "required": [ "name", "region" ], "type": "object", "properties": { "name": { "type": "string" }, "region": { "type": "string" } } }, "Environments": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "environments": { "type": "array", "items": { "$ref": "#/components/schemas/EnvironmentFields" } } } }, "EnvironmentFields": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" }, "region": { "type": "string" }, "created_at": { "type": "string", "format": "date-time" } } }, "Environment": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "environment": { "$ref": "#/components/schemas/EnvironmentFields" } } }, "UpdateEnvironment": { "required": [ "name" ], "type": "object", "properties": { "name": { "type": "string" } } }, "InstanceEvents": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "instance_events": { "type": "array", "items": { "$ref": "#/components/schemas/InstanceEventsFields" } } } }, "InstanceEventsFields": { "type": "object", "properties": { "instance_id": { "type": "integer" }, "user_id": { "type": "integer" }, "org_id": { "type": "integer" }, "time": { "type": "string", "format": "date-time" }, "type": { "type": "string" }, "reason": { "type": "string" }, "object": { "type": "string" }, "message": { "type": "string" } } }, "CreateInstancesPayload": { "required": [ "count", "environment_name", "key_name", "name" ], "type": "object", "properties": { "name": { "type": "string" }, "environment_name": { "type": "string" }, "image_name": { "type": "string" }, "volume_name": { "type": "string" }, "create_bootable_volume": { "type": "boolean" }, "flavor_name": { "type": "string" }, "flavor": { "$ref": "#/components/schemas/FlavorObjectFields" }, "key_name": { "type": "string" }, "user_data": { "type": "string" }, "callback_url": { "type": "string" }, "assign_floating_ip": { "type": "boolean" }, "profile": { "$ref": "#/components/schemas/ProfileObjectFields" }, "count": { "type": "integer" } } }, "FlavorObjectFields": { "type": "object", "properties": { "cpu": { "type": "integer" }, "ram": { "type": "number" }, "disk": { "type": "integer" }, "gpu": { "type": "string" }, "gpu_count": { "type": "integer" } } }, "ProfileObjectFields": { "required": [ "name" ], "type": "object", "properties": { "name": { "type": "string" }, "description": { "type": "string" } } }, "Instances": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "instances": { "type": "array", "items": { "$ref": "#/components/schemas/InstanceAdminFields" } }, "instance_count": { "type": "integer" } } }, "InstanceAdminFields": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" }, "status": { "type": "string" }, "environment": { "$ref": "#/components/schemas/InstanceEnvironmentFields" }, "image": { "$ref": "#/components/schemas/InstanceImageFields" }, "flavor": { "$ref": "#/components/schemas/InstanceFlavorFields" }, "keypair": { "$ref": "#/components/schemas/InstanceKeypairFields" }, "volume_attachments": { "type": "array", "items": { "$ref": "#/components/schemas/VolumeAttachmentFields" } }, "security_rules": { "type": "array", "items": { "$ref": "#/components/schemas/SecurityRulesFieldsforInstance" } }, "power_state": { "type": "string" }, "vm_state": { "type": "string" }, "fixed_ip": { "type": "string" }, "floating_ip": { "type": "string" }, "floating_ip_status": { "type": "string" }, "created_at": { "type": "string", "format": "date-time" }, "openstack_id": { "type": "string" } } }, "InstanceEnvironmentFields": { "type": "object", "properties": { "name": { "type": "string" }, "org_id": { "type": "integer" }, "region": { "type": "string" } } }, "InstanceImageFields": { "type": "object", "properties": { "name": { "type": "string" } } }, "InstanceFlavorFields": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" }, "cpu": { "type": "integer" }, "ram": { "type": "number" }, "disk": { "type": "integer" }, "gpu": { "type": "string" }, "gpu_count": { "type": "integer" } } }, "InstanceKeypairFields": { "type": "object", "properties": { "name": { "type": "string" } } }, "VolumeAttachmentFields": { "type": "object", "properties": { "volume": { "$ref": "#/components/schemas/VolumeFieldsforInstance" }, "status": { "type": "string" }, "device": { "type": "string" }, "created_at": { "type": "string", "format": "date-time" } } }, "VolumeFieldsforInstance": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" }, "description": { "type": "string" }, "volume_type": { "type": "string" }, "size": { "type": "integer" } } }, "SecurityRulesFieldsforInstance": { "type": "object", "properties": { "id": { "type": "integer" }, "direction": { "type": "string" }, "protocol": { "type": "string" }, "port_range_min": { "type": "integer" }, "port_range_max": { "type": "integer" }, "ethertype": { "type": "string" }, "remote_ip_prefix": { "type": "string" }, "status": { "type": "string" }, "created_at": { "type": "string", "format": "date-time" } } }, "Instance": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "instance": { "$ref": "#/components/schemas/InstanceAdminFields" } } }, "CreateSecurityRulePayload": { "required": [ "direction", "ethertype", "protocol", "remote_ip_prefix" ], "type": "object", "properties": { "direction": { "type": "string" }, "protocol": { "type": "string" }, "ethertype": { "type": "string" }, "remote_ip_prefix": { "type": "string" } } }, "SecurityGroupRule": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "security_rule": { "$ref": "#/components/schemas/SecurityGroupRuleFields" } } }, "SecurityGroupRuleFields": { "type": "object", "properties": { "id": { "type": "integer" }, "direction": { "type": "string" }, "protocol": { "type": "string" }, "port_range_min": { "type": "integer" }, "port_range_max": { "type": "integer" }, "ethertype": { "type": "string" }, "remote_ip_prefix": { "type": "string" }, "status": { "type": "string" }, "created_at": { "type": "string", "format": "date-time" } } }, "InstanceResizePayload": { "type": "object", "properties": { "flavor_name": { "type": "string" }, "flavor": { "$ref": "#/components/schemas/FlavorObjectFields" } } }, "FlavorPayload": { "required": [ "cpu", "disk", "gpu", "gpu_count", "is_public", "name", "ram", "region_name" ], "type": "object", "properties": { "name": { "type": "string" }, "region_name": { "type": "string" }, "cpu": { "type": "integer" }, "ram": { "type": "number" }, "disk": { "type": "integer" }, "gpu": { "type": "string" }, "gpu_count": { "type": "integer" }, "is_public": { "type": "boolean" } } }, "FlavorListResponse": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "data": { "type": "array", "items": { "$ref": "#/components/schemas/FlavorItemGetResponse" } } } }, "FlavorItemGetResponse": { "type": "object", "properties": { "gpu": { "type": "string" }, "region_name": { "type": "string" }, "flavors": { "type": "array", "items": { "$ref": "#/components/schemas/FlavorFields" } } } }, "FlavorFields": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" }, "region_name": { "type": "string" }, "cpu": { "type": "integer" }, "ram": { "type": "number" }, "disk": { "type": "integer" }, "gpu": { "type": "string" }, "gpu_count": { "type": "integer" }, "stock_available": { "type": "boolean" }, "created_at": { "type": "string", "format": "date-time" } } }, "FlavorResponse": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "flavor": { "$ref": "#/components/schemas/FlavorFields" } } }, "Images": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "images": { "type": "array", "items": { "$ref": "#/components/schemas/ImageGetResponse" } } } }, "ImageGetResponse": { "type": "object", "properties": { "region_name": { "type": "string" }, "type": { "type": "string" }, "logo": { "type": "string" }, "images": { "type": "array", "items": { "$ref": "#/components/schemas/ImageFields" } } } }, "ImageFields": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" }, "region_name": { "type": "string" }, "type": { "type": "string" }, "version": { "type": "string" }, "size": { "type": "integer" }, "display_size": { "type": "string" } } }, "ImageLogos": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "logos": { "type": "array", "items": { "$ref": "#/components/schemas/LogoGetResponse" } } } }, "LogoGetResponse": { "type": "object", "properties": { "id": { "type": "integer" }, "type": { "type": "string" }, "url": { "type": "string" } } }, "ImportKeypairPayload": { "required": [ "environment_name", "name", "public_key" ], "type": "object", "properties": { "name": { "type": "string" }, "environment_name": { "type": "string" }, "public_key": { "type": "string" } } }, "Keypairs": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "Keypairs": { "type": "array", "items": { "$ref": "#/components/schemas/KeypairFields" } } } }, "KeypairFields": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" }, "environment": { "type": "string" }, "public_key": { "type": "string" }, "fingerprint": { "type": "string" }, "created_at": { "type": "string", "format": "date-time" } } }, "ImportKeypairResponse": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "keypair": { "$ref": "#/components/schemas/KeypairFields" } } }, "UpdateKeypairName": { "required": [ "name" ], "type": "object", "properties": { "name": { "type": "string" } } }, "UpdateKeypairnameresponse": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "keypair": { "$ref": "#/components/schemas/KeypairFields" } } }, "RequestConsole": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "url": { "type": "string" } } }, "VNCURL": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "vnc_url": { "$ref": "#/components/schemas/VNCURLFields" } } }, "VNCURLFields": { "type": "object", "properties": { "id": { "type": "integer" }, "vnc_url": { "type": "string" } } }, "CreateVolumePayload": { "type": "object", "properties": { "name": { "type": "string" }, "environment_name": { "type": "string" }, "description": { "type": "string" }, "volume_type": { "type": "string" }, "size": { "type": "integer" }, "image_id": { "type": "integer" }, "callback_url": { "type": "string" } } }, "Volumes": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "volumes": { "type": "array", "items": { "$ref": "#/components/schemas/VolumeFields" } } } }, "VolumeFields": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" }, "environment": { "$ref": "#/components/schemas/EnvironmentFieldsforVolume" }, "description": { "type": "string" }, "volume_type": { "type": "string" }, "size": { "type": "integer" }, "status": { "type": "string" }, "bootable": { "type": "boolean" }, "image_id": { "type": "integer" }, "callback_url": { "type": "string" }, "created_at": { "type": "string", "format": "date-time" }, "updated_at": { "type": "string", "format": "date-time" } } }, "EnvironmentFieldsforVolume": { "type": "object", "properties": { "name": { "type": "string" } } }, "Volume": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "volume": { "$ref": "#/components/schemas/VolumeFields" } } }, "VolumeTypes": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "volume_types": { "type": "array", "items": { "type": "string" } } } }, "AttachVolumesPayload": { "type": "object", "properties": { "volume_ids": { "type": "array", "items": { "type": "integer" } } } }, "AttachVolumes": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "volume_attachments": { "type": "array", "items": { "$ref": "#/components/schemas/AttachVolumeFields" } } } }, "AttachVolumeFields": { "type": "object", "properties": { "id": { "type": "integer" }, "instance_id": { "type": "integer" }, "volume_id": { "type": "integer" }, "status": { "type": "string" }, "created_at": { "type": "string", "format": "date-time" } } }, "DetachVolumesPayload": { "type": "object", "properties": { "volume_ids": { "type": "array", "items": { "type": "integer" } } } }, "DetachVolumes": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "volume_attachments": { "type": "array", "items": { "$ref": "#/components/schemas/AttachVolumeFields" } } } }, "CreateGPU": { "required": [ "name" ], "type": "object", "properties": { "name": { "type": "string" }, "regions": { "type": "array", "items": { "type": "string" } }, "example_metadata": { "type": "string" } } }, "GPUList": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "gpu_list": { "type": "array", "items": { "$ref": "#/components/schemas/GPUFields" } } } }, "GPUFields": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" }, "regions": { "type": "array", "items": { "$ref": "#/components/schemas/GPURegionFields" } }, "example_metadata": { "type": "string" }, "created_at": { "type": "string", "format": "date-time" }, "updated_at": { "type": "string", "format": "date-time" } } }, "GPURegionFields": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" } } }, "GPU": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "gpu": { "$ref": "#/components/schemas/GPUFields" } } }, "UpdateGPU": { "type": "object", "properties": { "name": { "type": "string" }, "regions": { "type": "array", "items": { "type": "string" } }, "example_metadata": { "type": "string" } } }, "AttachCallbackPayload": { "required": [ "url" ], "type": "object", "properties": { "url": { "type": "string" } } }, "AttachCallbackResponse": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "url": { "type": "string" } } }, "InternalInstancesResponse": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "instances": { "type": "array", "items": { "$ref": "#/components/schemas/InternalInstanceFields" } } } }, "InternalInstanceFields": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" }, "openstack_id": { "type": "string" }, "status": { "type": "string" }, "environment": { "$ref": "#/components/schemas/InternalEnvironmentFields" }, "image": { "$ref": "#/components/schemas/InternalInstanceImageFields" }, "flavor": { "$ref": "#/components/schemas/InternalInstanceFlavorFields" }, "keypair": { "$ref": "#/components/schemas/InternalInstanceKeypairFields" }, "volume_attachments": { "type": "array", "items": { "$ref": "#/components/schemas/InternalVolumeAttachmentFields" } }, "boot_source": { "type": "string" }, "power_state": { "type": "string" }, "vm_state": { "type": "string" }, "fixed_ip": { "type": "string" }, "floating_ip": { "type": "string" }, "floating_ip_status": { "type": "string" }, "user_data": { "type": "string" }, "security_rules": { "type": "array", "items": { "$ref": "#/components/schemas/InternalSecurityRulesFieldsForInstance" } }, "callback_url": { "type": "string" }, "created_at": { "type": "string", "format": "date-time" } } }, "InternalEnvironmentFields": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" }, "region": { "type": "string" }, "created_at": { "type": "string", "format": "date-time" } } }, "InternalInstanceImageFields": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" }, "region_name": { "type": "string" }, "type": { "type": "string" }, "version": { "type": "string" } } }, "InternalInstanceFlavorFields": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" }, "region_name": { "type": "string" }, "cpu": { "type": "integer" }, "ram": { "type": "integer" }, "disk": { "type": "integer" }, "gpu": { "type": "string" }, "gpu_count": { "type": "integer" }, "created_at": { "type": "string", "format": "date-time" } } }, "InternalInstanceKeypairFields": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" }, "environment": { "type": "string" }, "public_key": { "type": "string" }, "fingerprint": { "type": "string" }, "created_at": { "type": "string", "format": "date-time" } } }, "InternalVolumeAttachmentFields": { "type": "object", "properties": { "volume": { "$ref": "#/components/schemas/InternalVolumeFields" }, "status": { "type": "string" }, "device": { "type": "string" }, "created_at": { "type": "string", "format": "date-time" } } }, "InternalVolumeFields": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" }, "description": { "type": "string" }, "volume_type": { "type": "string" }, "size": { "type": "string" } } }, "InternalSecurityRulesFieldsForInstance": { "type": "object", "properties": { "id": { "type": "integer" }, "direction": { "type": "string" }, "protocol": { "type": "string" }, "port_range_min": { "type": "integer" }, "port_range_max": { "type": "integer" }, "ethertype": { "type": "string" }, "remote_ip_prefix": { "type": "string" }, "status": { "type": "string" }, "created_at": { "type": "string", "format": "date-time" } } }, "InternalVolumesResponse": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "volumes": { "type": "array", "items": { "$ref": "#/components/schemas/InternalVolumeFields" } } } }, "RegionPayload": { "required": [ "name" ], "type": "object", "properties": { "name": { "type": "string" }, "description": { "type": "string" } } }, "Regions": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "regions": { "type": "array", "items": { "$ref": "#/components/schemas/RegionFields" } } } }, "RegionFields": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" }, "description": { "type": "string" } } }, "RegionResponse": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "region": { "$ref": "#/components/schemas/RegionFields" } } }, "Templates": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "templates": { "type": "array", "items": { "$ref": "#/components/schemas/TemplateFields" } } } }, "TemplateFields": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" }, "description": { "type": "string" }, "content": { "type": "string" }, "is_public": { "type": "boolean" }, "created_at": { "type": "string", "format": "date-time" } } }, "Template": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "template": { "$ref": "#/components/schemas/TemplateFields" } } }, "UpdateTemplate": { "type": "object", "properties": { "name": { "type": "string" }, "description": { "type": "string" }, "is_public": { "type": "boolean" } } }, "StartDeploymentPayload": { "required": [ "description", "name", "template_id" ], "type": "object", "properties": { "name": { "type": "string" }, "description": { "type": "string" }, "template_id": { "type": "integer" }, "variables": { "type": "object", "additionalProperties": { "type": "string" } } } }, "Deployments": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "deployments": { "type": "array", "items": { "$ref": "#/components/schemas/DeploymentFields" } } } }, "DeploymentFields": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" }, "description": { "type": "string" }, "template": { "type": "string" }, "status": { "type": "string" }, "created_at": { "type": "string", "format": "date-time" } } }, "StartDeployment": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "deployment": { "$ref": "#/components/schemas/DeploymentFieldsforstartdeployments" } } }, "DeploymentFieldsforstartdeployments": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" }, "description": { "type": "string" }, "template": { "type": "string" }, "status": { "type": "string" }, "variables": { "type": "string" }, "created_at": { "type": "string", "format": "date-time" } } }, "SecurityRulesProtocolFields": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "protocols": { "type": "array", "items": { "type": "string" } } } }, "CreateProfilePayload": { "required": [ "data", "name" ], "type": "object", "properties": { "name": { "type": "string" }, "description": { "type": "string" }, "data": { "type": "object", "additionalProperties": { "type": "string" } } } }, "ProfileListResponse": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "profiles": { "type": "array", "items": { "$ref": "#/components/schemas/ProfileFields" } } } }, "ProfileFields": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" }, "description": { "type": "string" }, "data": { "type": "string" }, "created_at": { "type": "string", "format": "date-time" } } }, "CreateProfileResponse": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "profile": { "$ref": "#/components/schemas/ProfileFields" } } }, "OrganizationResourceList": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "organizations": { "type": "array", "items": { "$ref": "#/components/schemas/OrganizationResources" } } } }, "OrganizationResources": { "type": "object", "properties": { "organization_id": { "type": "integer" }, "environments": { "type": "array", "items": { "$ref": "#/components/schemas/EnvrionmentResources" } } } }, "EnvrionmentResources": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" }, "region": { "type": "string" }, "instances": { "type": "array", "items": { "$ref": "#/components/schemas/InstanceResources" } }, "volumes": { "type": "array", "items": { "$ref": "#/components/schemas/VolumeResource" } }, "containers": { "type": "array", "items": { "$ref": "#/components/schemas/ContainerResource" } }, "clusters": { "type": "array", "items": { "$ref": "#/components/schemas/ClusterResource" } }, "created_at": { "type": "string", "format": "date-time" } } }, "InstanceResources": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" }, "host": { "type": "string" }, "status": { "type": "string" }, "flavor": { "$ref": "#/components/schemas/FlavorResource" }, "image_id": { "type": "integer" }, "volume_id": { "type": "integer" }, "keypair_name": { "type": "string" }, "fixed_ip": { "type": "string" }, "floating_ip": { "type": "string" }, "floating_ip_status": { "type": "string" }, "created_at": { "type": "string", "format": "date-time" } } }, "FlavorResource": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" }, "cpu": { "type": "integer" }, "ram": { "type": "number" }, "disk": { "type": "integer" }, "gpu": { "type": "string" }, "gpu_count": { "type": "integer" } } }, "VolumeResource": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" }, "type": { "type": "string" }, "size": { "type": "integer" }, "status": { "type": "string" }, "bootable": { "type": "boolean" }, "created_at": { "type": "string", "format": "date-time" } } }, "ContainerResource": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" }, "flavor": { "$ref": "#/components/schemas/FlavorResource" }, "status": { "type": "string" }, "image": { "type": "string" }, "fixed_ip": { "type": "string" }, "floating_ip": { "type": "string" }, "created_at": { "type": "string", "format": "date-time" } } }, "ClusterResource": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" }, "kubernetes_version": { "type": "string" }, "status": { "type": "string" }, "master_count": { "type": "integer" }, "node_count": { "type": "integer" }, "node_flavor": { "$ref": "#/components/schemas/FlavorResource" }, "enable_public_ip": { "type": "boolean" }, "created_at": { "type": "string", "format": "date-time" } } }, "OrganizationResourceResponse": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "organization": { "$ref": "#/components/schemas/OrganizationResources" } } }, "CompliancePayload": { "required": [ "base_value", "gpu_model", "resource_type", "variation_max", "variation_min", "variation_unit" ], "type": "object", "properties": { "gpu_model": { "type": "string" }, "resource_type": { "type": "string" }, "base_value": { "type": "integer" }, "variation_min": { "type": "integer" }, "variation_max": { "type": "integer" }, "variation_unit": { "type": "integer" } } }, "ComplianceResponse": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "compliance": { "$ref": "#/components/schemas/ComplianceFields" } } }, "ComplianceFields": { "type": "object", "properties": { "gpu_model": { "type": "string" }, "cpu": { "type": "array", "items": { "type": "integer" } }, "ram": { "type": "array", "items": { "type": "integer" } }, "hdd": { "type": "array", "items": { "type": "integer" } } } }, "CreateUpdateComplianceResponse": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "compliance": { "$ref": "#/components/schemas/ComplianceModelFields" } } }, "ComplianceModelFields": { "type": "object", "properties": { "id": { "type": "integer" }, "gpu_model": { "type": "string" }, "resource_type": { "type": "string" }, "base_value": { "type": "integer" }, "variation_min": { "type": "integer" }, "variation_max": { "type": "integer" }, "variation_unit": { "type": "integer" } } }, "PricebookModel": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string" }, "value": { "type": "number" }, "original_value": { "type": "number" }, "discount_applied": { "type": "boolean" }, "start_time": { "type": "string", "format": "date-time" }, "end_time": { "type": "string", "format": "date-time" } } }, "CreateDiscountsPayload": { "required": [ "discount_resources", "discount_status", "org_id" ], "type": "object", "properties": { "org_id": { "type": "integer" }, "discount_resources": { "type": "array", "items": { "$ref": "#/components/schemas/ResourcePayload" } }, "start_date": { "type": "string", "format": "date-time" }, "end_date": { "type": "string", "format": "date-time" }, "discount_status": { "type": "string" } } }, "ResourcePayload": { "required": [ "discount_percent", "resource_id" ], "type": "object", "properties": { "resource_id": { "type": "integer" }, "discount_percent": { "type": "number" } } }, "CreateDiscountResponse": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "discount_plan": { "$ref": "#/components/schemas/InsertDiscountPlanFields" } } }, "InsertDiscountPlanFields": { "type": "object", "properties": { "org_id": { "type": "integer" }, "org_name": { "type": "string" }, "discount_resources": { "type": "array", "items": { "$ref": "#/components/schemas/DiscountResourceFields" } }, "start_date": { "type": "string", "format": "date-time" }, "end_date": { "type": "string", "format": "date-time" }, "discount_status": { "type": "string" } } }, "DiscountResourceFields": { "type": "object", "properties": { "resource_id": { "type": "integer" }, "discount_percent": { "type": "number" } } }, "GetAllDiscountForAllOrganizationResponse": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "discount_plans": { "type": "array", "items": { "$ref": "#/components/schemas/InsertDiscountPlanFields" } } } }, "UpdateDiscountsPayload": { "required": [ "discount_resources", "discount_status" ], "type": "object", "properties": { "discount_resources": { "type": "array", "items": { "$ref": "#/components/schemas/ResourcePayload" } }, "start_date": { "type": "string", "format": "date-time" }, "end_date": { "type": "string", "format": "date-time" }, "discount_status": { "type": "string" } } }, "SuccessResponseModel": { "type": "object", "properties": { "status": { "type": "boolean", "default": false }, "message": { "type": "string" } } }, "DiscountDetailResponse": { "type": "object", "properties": { "status": { "type": "boolean" }, "message": { "type": "string" }, "discount_plan": { "type": "array", "items": { "$ref": "#/components/schemas/InsertDiscountPlanFields" } } } }, "UpdateDiscountsStatusPayload": { "required": [ "discount_status" ], "type": "object", "properties": { "discount_status": { "type": "string" } } }, "BillingResponse": { "type": "object", "properties": { "type": { "type": "string" }, "calculated_bills": { "type": "array", "items": { "$ref": "#/components/schemas/OrganizationObjectResponse" } } } }, "OrganizationObjectResponse": { "type": "object", "properties": { "org_id": { "type": "integer" }, "resources": { "type": "array", "items": { "$ref": "#/components/schemas/InfrahubResourceObjectResponse" } } } }, "InfrahubResourceObjectResponse": { "type": "object", "properties": { "type": { "type": "string" }, "name": { "type": "string" }, "infrahub_id": { "type": "integer" }, "status": { "type": "string" }, "host": { "type": "string" }, "resources": { "type": "array", "items": { "$ref": "#/components/schemas/PricebookResourceObjectResponse" } }, "price": { "type": "number" }, "actual_price": { "type": "number" }, "host_price": { "type": "number" }, "actual_host_price": { "type": "number" }, "nexgen_price": { "type": "number" }, "nexgen_actual_price": { "type": "number" } } }, "PricebookResourceObjectResponse": { "type": "object", "properties": { "type": { "type": "string" }, "name": { "type": "string" }, "amount": { "type": "integer" }, "rate": { "type": "number" }, "discounted_rate": { "type": "number" }, "price": { "type": "number" }, "actual_price": { "type": "number" }, "host_price": { "type": "number" }, "host_original_price": { "type": "number" }, "nexgen_price": { "type": "number" }, "nexgen_original_price": { "type": "number" } } }, "Adminaddorganizationpayload": { "required": [ "organization_id" ], "type": "object", "properties": { "organization_id": { "type": "integer" } } }, "Admincreditpostpayload": { "type": "object", "properties": { "credit": { "type": "number" } } }, "Getcreditandthresholdinfoinresponse": { "type": "object", "properties": { "message": { "type": "string" }, "status": { "type": "boolean" }, "data": { "$ref": "#/components/schemas/Getcreditandthresholdinfo" } } }, "Getcreditandthresholdinfo": { "type": "object", "properties": { "credit": { "type": "number" }, "threshold": { "type": "number" }, "can_create_instance": { "type": "boolean" } } }, "Adminthresholdpostpayload": { "type": "object", "properties": { "threshold": { "type": "number" } } }, "Adminrechargehistoryresponse": { "type": "object", "properties": { "message": { "type": "string" }, "status": { "type": "boolean" }, "data": { "type": "array", "items": { "$ref": "#/components/schemas/Adminrechargehistoryfields" } } } }, "Adminrechargehistoryfields": { "type": "object", "properties": { "credit": { "type": "number" }, "threshold": { "type": "number" }, "prev_balance": { "type": "number" }, "curr_balance": { "type": "number" }, "medium": { "type": "string" }, "created_at": { "type": "string", "format": "date-time" } } }, "Billingmetricesresponse": { "type": "object", "properties": { "message": { "type": "string" }, "status": { "type": "boolean" }, "data": { "type": "array", "items": { "$ref": "#/components/schemas/Billingmetricesfields" } } } }, "Billingmetricesfields": { "type": "object", "properties": { "resource_id": { "type": "integer" }, "resource_type": { "type": "string" }, "name": { "type": "string" }, "organization_id": { "type": "integer" }, "bill_per_minute": { "type": "number" }, "create_time": { "type": "string", "format": "date-time" }, "terminate_time": { "type": "string", "format": "date-time" }, "total_up_time": { "type": "number" }, "total_bill": { "type": "number" }, "active": { "type": "boolean" } } }, "Lastdaycostresponse": { "type": "object", "properties": { "message": { "type": "string" }, "status": { "type": "boolean" }, "data": { "$ref": "#/components/schemas/Lastdaycostfields" } } }, "Lastdaycostfields": { "type": "object", "properties": { "instances_cost": { "type": "number" }, "volumes_cost": { "type": "number" }, "clusters_cost": { "type": "number" }, "total_cost": { "type": "number" } } }, "PaymentInitiatePayload": { "type": "object", "properties": { "amount": { "type": "number" } } }, "PaymentInitiateResponse": { "type": "object", "properties": { "message": { "type": "string" }, "status": { "type": "boolean" }, "data": { "$ref": "#/components/schemas/PaymentInitiateFields" } } }, "PaymentInitiateFields": { "type": "object", "properties": { "payment_id": { "type": "string" } } }, "PaymentDetailsResponse": { "type": "object", "properties": { "message": { "type": "string" }, "status": { "type": "boolean" }, "data": { "$ref": "#/components/schemas/PaymentDetailsFields" } } }, "PaymentDetailsFields": { "type": "object", "properties": { "amount": { "type": "number" }, "currency": { "type": "string" }, "paid_from": { "type": "string" }, "status": { "type": "string" }, "gateway_response": { "type": "string" }, "description": { "type": "string" }, "transaction_id": { "type": "string" }, "payment_id": { "type": "string" }, "updated_at": { "type": "string" } } } }, "responses": { "MaskError": { "description": "When any error occurs on mask", "content": {} }, "ParseError": { "description": "When a mask can't be parsed", "content": {} } }, "securitySchemes": { "accessToken": { "type": "apiKey", "description": "Bearer Token", "name": "Authorization", "in": "header" }, "apiKey": { "type": "apiKey", "description": "Send it as api_key in header", "name": "api_key", "in": "header" } } } }