-
Notifications
You must be signed in to change notification settings - Fork 2
/
swagger.json
1 lines (1 loc) · 166 KB
/
swagger.json
1
{"swagger": "2.0", "basePath": "/api/v2", "host": "core.hivelocity.net", "schemes": ["https"], "paths": {"/account/controlled-client": {"post": {"responses": {"201": {"description": "Success", "schema": {"$ref": "#/definitions/ClientCreate-dump"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Create controlled client for enterprise owner", "operationId": "post_account_create", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/CreateEnterpriseControlledClient"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Account"]}, "get": {"responses": {"200": {"description": "Success", "schema": {"type": "array", "items": {"$ref": "#/definitions/ControlledClient-dump"}}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get all controlled clients for enterprise owner", "operationId": "get_account_create", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Account"]}, "put": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/ControlledClient-dump"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Deactivate client", "operationId": "put_account_create", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/DeactivateEnterpriseControlledClient"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Account"]}}, "/bandwidth/device/{deviceId}": {"parameters": [{"required": true, "in": "path", "description": "ID of Device to View", "name": "deviceId", "type": "integer"}, {"default": "day", "required": true, "type": "string", "enum": ["day", "week", "month", "custom"], "in": "query", "description": "Return data in the given period. Day, week, month will return the previous day, week, month from now.", "name": "period"}, {"default": "eth0", "required": true, "type": "string", "enum": ["eth0", "eth1", "public", "private", "all"], "in": "query", "description": "Network interface to get bandwidth usage from. eth0 and eth1 are your first and second nic respectively. If unsure use the public, private, and all values. Overages are billed on public traffic.", "name": "interface"}, {"type": "boolean", "default": false, "in": "query", "description": "If you are a reseller, this will include historical interface data for device regardless of the current device owner.", "name": "historical"}, {"default": 300, "type": "integer", "required": true, "in": "query", "description": "Interval of data in seconds. Historical data is condensed, if provided value is smaller than existing steps for the date range the endpoint will return data with the smallest available step.", "name": "step"}, {"type": "integer", "default": 0, "in": "query", "description": "Start time of custom time period. (Unix Epoch Time)", "name": "start"}, {"type": "integer", "default": 1692636149, "in": "query", "description": "End time of custom time period (Unix Epoch Time)", "name": "end"}], "post": {"responses": {"200": {"description": "Device Bandwidth Graph retrieved.", "schema": {"type": "array", "items": {"$ref": "#/definitions/Bandwidth"}}}, "400": {"description": "Unable to retrieve Bandwidth Graph for this Device."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get data by device", "operationId": "post_device_id_bandwidth_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Bandwidth"]}}, "/bandwidth/device/{deviceId}/image": {"parameters": [{"required": true, "in": "path", "description": "ID of Device to View", "name": "deviceId", "type": "integer"}, {"default": "day", "required": true, "type": "string", "enum": ["day", "week", "month", "custom"], "in": "query", "description": "Return data in the given period. Day, week, month will return the previous day, week, month from now.", "name": "period"}, {"default": "eth0", "required": true, "type": "string", "enum": ["eth0", "eth1", "public", "private", "all"], "in": "query", "description": "Network interface to get bandwidth usage from. eth0 and eth1 are your first and second nic respectively. If unsure use the public, private, and all values. Overages are billed on public traffic.", "name": "interface"}, {"type": "integer", "default": 0, "in": "query", "description": "Start Time of Custom Time Period. (Unix Epoch Time)", "name": "start"}, {"type": "integer", "default": 1692636149, "in": "query", "description": "End Time of Custom Time Period (Unix Epoch Time)", "name": "end"}], "post": {"responses": {"200": {"description": "Device Bandwidth Graph retrieved.", "schema": {"type": "array", "items": {"$ref": "#/definitions/BandwidthImage"}}}, "400": {"description": "Unable to retrieve Bandwidth Graph for this Device."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get PNG by device", "operationId": "post_device_id_bandwidth_image_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Bandwidth"]}}, "/bandwidth/service/{serviceId}": {"parameters": [{"required": true, "in": "path", "description": "ID of Service to View", "name": "serviceId", "type": "integer"}, {"default": "day", "required": true, "type": "string", "enum": ["day", "week", "month", "custom"], "in": "query", "description": "Return data in the given period. Day, week, month will return the previous day, week, month from now.", "name": "period"}, {"default": "eth0", "required": true, "type": "string", "enum": ["eth0", "eth1", "public", "private", "all"], "in": "query", "description": "Network interface to get bandwidth usage from. eth0 and eth1 are your first and second nic respectively. If unsure use the public, private, and all values. Overages are billed on public traffic.", "name": "interface"}, {"default": 300, "type": "integer", "required": true, "in": "query", "description": "Interval of data in seconds. Historical data is condensed, if provided value is smaller than existing steps for the date range the endpoint will return data with the smallest available step.", "name": "step"}, {"type": "integer", "default": 0, "in": "query", "description": "Start Time of Custom Time Period. (Unix Epoch Time)", "name": "start"}, {"type": "integer", "default": 1692636149, "in": "query", "description": "End Time of Custom Time Period (Unix Epoch Time)", "name": "end"}], "post": {"responses": {"200": {"description": "Service Bandwidth Graph retrieved.", "schema": {"type": "array", "items": {"$ref": "#/definitions/Bandwidth"}}}, "400": {"description": "Unable to retrieve Bandwidth Graph for this Service."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get data by service", "operationId": "post_service_id_bandwidth_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Bandwidth"]}}, "/bandwidth/service/{serviceId}/image": {"parameters": [{"required": true, "in": "path", "description": "ID of Service to View", "name": "serviceId", "type": "integer"}, {"default": "day", "required": true, "type": "string", "enum": ["day", "week", "month", "custom"], "in": "query", "description": "Return data in the given period. Day, week, month will return the previous day, week, month from now.", "name": "period"}, {"default": "eth0", "required": true, "type": "string", "enum": ["eth0", "eth1", "public", "private", "all"], "in": "query", "description": "Network interface to get bandwidth usage from. eth0 and eth1 are your first and second nic respectively. If unsure use the public, private, and all values. Overages are billed on public traffic.", "name": "interface"}, {"type": "integer", "default": 0, "in": "query", "description": "Start Time of Custom Time Period. (Unix Epoch Time)", "name": "start"}, {"type": "integer", "default": 1692636149, "in": "query", "description": "End Time of Custom Time Period (Unix Epoch Time)", "name": "end"}], "post": {"responses": {"200": {"description": "Service Bandwidth Graph retrieved.", "schema": {"type": "array", "items": {"$ref": "#/definitions/BandwidthImage"}}}, "400": {"description": "Unable to retrieve Bandwidth Graph for this Service."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get PNG by service", "operationId": "post_service_id_bandwidth_image_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Bandwidth"]}}, "/bare-metal-devices/": {"get": {"responses": {"200": {"description": "Devices found successfuly", "schema": {"type": "array", "items": {"$ref": "#/definitions/BareMetalDevice"}}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get all devices", "operationId": "get_bare_metal_device_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Bare Metal Devices"]}, "post": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/BareMetalDevice"}}, "201": {"description": "Device provisioning started"}, "400": {"description": "Invalid device parameters."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Provision an instant device", "operationId": "post_bare_metal_device_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/BareMetalDeviceCreate"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Bare Metal Devices"]}}, "/bare-metal-devices/batch": {"post": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/BareMetalDeviceBatch"}}, "201": {"description": "Device provisioning started"}, "400": {"description": "Invalid device parameters."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Batch provision instant devices", "operationId": "post_bare_metal_device_batch_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/BareMetalDeviceBatchCreate"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Bare Metal Devices"]}}, "/bare-metal-devices/{deviceId}": {"parameters": [{"in": "query", "description": "Id of the deployment to interact with", "name": "deploymentId", "type": "string"}, {"name": "deviceId", "in": "path", "required": true, "type": "integer"}], "delete": {"responses": {"201": {"description": "Cancellation Started."}, "204": {"description": "Device Deleted"}, "400": {"description": "Device Cancellation Failed."}, "401": {"description": "Not Allowed"}, "404": {"description": "Device Not Found"}, "409": {"description": "Device Already Being Cancelled."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Cancel/delete device", "operationId": "delete_bare_metal_device_id_resource", "tags": ["Bare Metal Devices"]}, "get": {"responses": {"200": {"description": "Deployment Found", "schema": {"$ref": "#/definitions/BareMetalDevice"}}, "401": {"description": "Access to Deployment not Allowed"}, "404": {"description": "Deployment Not Found"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get device", "operationId": "get_bare_metal_device_id_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Bare Metal Devices"]}, "put": {"responses": {"200": {"description": "Device updated.", "schema": {"$ref": "#/definitions/BareMetalDevice"}}, "400": {"description": "Invalid device parameters."}, "404": {"description": "Device Not Found"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Update/reload instant device", "operationId": "put_bare_metal_device_id_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/BareMetalDeviceUpdate"}}, {"name": "skipPowerCheck", "in": "query", "type": "boolean", "description": "If true, bypass the powered off check."}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Bare Metal Devices"]}}, "/billing-info/": {"post": {"responses": {"201": {"description": "Success", "schema": {"$ref": "#/definitions/BillingInfo"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Create verification for credit card with all Billing Info", "operationId": "post_billing_info_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/BillingInfoVerification"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["BillingInfo"]}, "get": {"responses": {"200": {"description": "Success", "schema": {"type": "array", "items": {"$ref": "#/definitions/BillingInfo"}}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Return a list with all Billing Info", "operationId": "get_billing_info_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["BillingInfo"]}, "put": {"responses": {"201": {"description": "Success", "schema": {"$ref": "#/definitions/Credit"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Verify credit card with all Billing Info", "operationId": "put_billing_info_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/BillingInfoVerification"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["BillingInfo"]}}, "/contact/": {"get": {"responses": {"200": {"description": "Success", "schema": {"type": "array", "items": {"$ref": "#/definitions/Contact-dump"}}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Return a list with all Contacts", "operationId": "get_contact_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Contact"]}, "post": {"responses": {"201": {"description": "Contact successfully created", "schema": {"$ref": "#/definitions/Contact-dump"}}, "400": {"description": "Unable to create Contact"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Create a new Contact", "operationId": "post_contact_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/ContactCreate"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Contact"]}}, "/contact/password": {"post": {"responses": {"200": {"description": "Success"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Receive a request to reset password, and send a link by email with token", "operationId": "post_password_reset", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/PasswordRequest"}}], "tags": ["Contact"]}, "put": {"responses": {"200": {"description": "Success"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Receive a token and password, verify the user and reset your password", "operationId": "put_password_reset", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/PasswordResponse"}}], "tags": ["Contact"]}}, "/contact/{contactId}": {"parameters": [{"in": "path", "description": "ID of Contact to View / Update", "name": "contactId", "required": true, "type": "integer"}], "delete": {"responses": {"404": {"description": "Contact not found."}, "204": {"description": "Contact successfully deleted."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Delete a Contact", "operationId": "delete_contact_id_resource", "tags": ["Contact"]}, "get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/Contact-dump"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Return details of a specific Contact", "operationId": "get_contact_id_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Contact"]}, "put": {"responses": {"200": {"description": "Contact successfully updated.", "schema": {"$ref": "#/definitions/Contact-dump"}}, "400": {"description": "Unable to update Contact Data."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Edit a Contact", "operationId": "put_contact_id_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/ContactUpdate"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Contact"]}}, "/contact/{contactId}/password": {"parameters": [{"in": "path", "description": "\"ID of Contact to change password\"", "name": "contactId", "required": true, "type": "integer"}], "put": {"responses": {"400": {"description": "Invalid password for authentication."}, "200": {"description": "Password was changed."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Change password for a Contact", "operationId": "put_password_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/Password"}}], "tags": ["Contact"]}}, "/deploy/": {"get": {"responses": {"200": {"description": "Deployments found successfully", "schema": {"type": "array", "items": {"$ref": "#/definitions/Deployment"}}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Return a list with all client deployments", "operationId": "get_deployment_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Deployment"]}, "post": {"responses": {"201": {"description": "Deployment Created", "schema": {"$ref": "#/definitions/Deployment"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Start a new deployment", "operationId": "post_deployment_resource", "parameters": [{"name": "deploymentName", "in": "query", "type": "string"}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Deployment"]}}, "/deploy/{deploymentId}": {"parameters": [{"in": "path", "description": "Id of the deployment to interact with", "name": "deploymentId", "required": true, "type": "integer"}], "post": {"responses": {"201": {"description": "Deployment Started"}, "401": {"description": "Access to Deployment not Allowed"}, "404": {"description": "Deployment Not Found"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Input a billing info id and script to process and finish a deployment", "operationId": "post_deployment_id_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/DeploymentStart"}}], "tags": ["Deployment"]}, "delete": {"responses": {"204": {"description": "Deployment Deleted"}, "401": {"description": "Access to this Deployment not Allowed"}, "404": {"description": "Deployment Not Found"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Delete the specified deployment", "operationId": "delete_deployment_id_resource", "tags": ["Deployment"]}, "get": {"responses": {"200": {"description": "Deployment Found", "schema": {"$ref": "#/definitions/Deployment"}}, "401": {"description": "Access to Deployment not Allowed"}, "404": {"description": "Deployment Not Found"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Return a dictionary with deployment information", "operationId": "get_deployment_id_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Deployment"]}, "put": {"responses": {"200": {"description": "Server configuration added to Deployment", "schema": {"$ref": "#/definitions/Deployment"}}, "400": {"description": "Your configuration have incompatible or unavailable options"}, "401": {"description": "Access to this Deployment not Allowed"}, "404": {"description": "Deployment Not Found"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Receive product, quantity and options to be added on the deployment", "operationId": "put_deployment_id_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/DeploymentCustomization"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Deployment"]}}, "/device/": {"get": {"responses": {"200": {"description": "Success", "schema": {"type": "array", "items": {"$ref": "#/definitions/Device-dump"}}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get all devices", "operationId": "get_device_resource", "parameters": [{"type": "integer", "default": 0, "required": false, "in": "query", "description": "Filter Devices only in this Rack ID", "name": "rack_id"}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Device"]}}, "/device/devicelist": {}, "/device/ipmi/thresholds": {"put": {"responses": {"200": {"description": "Devices IPMI Thresholds updated.", "schema": {"$ref": "#/definitions/DevicesIPMIThresholds"}}, "400": {"description": "Unable to update IPMI Thresholds for this Device list."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Bulk update IPMI thresholds", "operationId": "put_ipmi_devices_thresholds_id_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/UpdateDevicesIPMIThresholds"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Device"]}}, "/device/preview-ignition": {"post": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/PreviewEffectiveIgnitionResponse"}}, "422": {"description": "Error"}, "400": {"description": "Error"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Preview Ignition injections", "operationId": "post_preview_effective_ignition_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/PreviewEffectiveIgnition"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Device"]}}, "/device/tags": {"get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/DeviceTag"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get all tags", "operationId": "get_client_device_tag_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Device"]}}, "/device/tags-order": {"get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/DeviceTag"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get tag order", "operationId": "get_client_device_tag_order_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Device"]}, "put": {"responses": {"200": {"description": "Device tags order updated.", "schema": {"$ref": "#/definitions/DeviceTag"}}, "400": {"description": "Bad request."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Update tag order", "operationId": "put_client_device_tag_order_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/DeviceTag"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Device"]}}, "/device/tags-order/all": {"get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/DeviceTag"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get all tag orders", "operationId": "get_all_device_tag_order_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Device"]}}, "/device/{deviceId}": {"parameters": [{"in": "path", "description": "ID of Device to View / Update", "name": "deviceId", "required": true, "type": "integer"}], "get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/Device-dump"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get device", "operationId": "get_device_id_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Device"]}, "put": {"responses": {"200": {"description": "Device MetaData was updated.", "schema": {"$ref": "#/definitions/Device-dump"}}, "400": {"description": "Unable to update Device MetaData."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Update device", "operationId": "put_device_id_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/DeviceUpdate"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Device"]}}, "/device/{deviceId}/ignition": {"parameters": [{"name": "deviceId", "in": "path", "required": true, "type": "integer"}], "get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/EffectiveIgnitionResponse"}}, "404": {"description": "Not Found"}, "400": {"description": "Error"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get Ignition injections", "operationId": "get_effective_ignition_id_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Device"]}}, "/device/{deviceId}/initial-creds": {"parameters": [{"required": true, "in": "path", "description": "ID of Device to retrieve initial authentication credentials for", "name": "deviceId", "type": "integer"}], "get": {"responses": {"200": {"description": "Device initial credentials.", "schema": {"$ref": "#/definitions/DeviceInitialCreds"}}, "400": {"description": "Unable to get initial credentials for this Device."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get initial creds", "operationId": "get_initial_creds_id_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Device"]}}, "/device/{deviceId}/ipmi": {"parameters": [{"required": true, "in": "path", "description": "ID of Device to retrieve IPMI info.", "name": "deviceId", "type": "integer"}], "get": {"responses": {"200": {"description": "Device IPMI Thresholds retrieved", "schema": {"$ref": "#/definitions/DeviceIPMIInfo"}}, "400": {"description": "Unable to retrieve IPMI Thresholds for this Device."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get IPMI data", "operationId": "get_ipmi_info_id_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Device"]}}, "/device/{deviceId}/ipmi/login-data": {"parameters": [{"required": true, "in": "path", "description": "ID of Device to retrieve IPMI Login data.", "name": "deviceId", "type": "integer"}], "get": {"responses": {"200": {"description": "Device IPMI Login data retrieved", "schema": {"$ref": "#/definitions/IPMILoginData"}}, "400": {"description": "Unable to retrieve IPMI Login data for this Device."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get IPMI creds", "operationId": "get_ipmi_info_login_data_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Device"]}}, "/device/{deviceId}/ipmi/nat": {"parameters": [{"in": "path", "description": "ID of a client Device", "name": "deviceId", "required": true, "type": "integer"}], "get": {"responses": {"400": {"description": "The request has problems. Revise it and try again."}, "202": {"description": "The request was accepted."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Clear IPMI whitelist", "operationId": "get_device_ipminat_rule_resource", "tags": ["Device"]}}, "/device/{deviceId}/ipmi/thresholds": {"parameters": [{"required": true, "in": "path", "description": "ID of Device to View", "name": "deviceId", "type": "integer"}], "get": {"responses": {"200": {"description": "Device IPMI Thresholds retrieved.", "schema": {"$ref": "#/definitions/DeviceIPMIThresholds"}}, "400": {"description": "Unable to retrieve IPMI Thresholds for this Device."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get IPMI thresholds", "operationId": "get_ipmi_thresholds_id_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Device"]}, "put": {"responses": {"200": {"description": "Device IPMI Thresholds retrieved.", "schema": {"$ref": "#/definitions/DeviceIPMIThresholds"}}, "400": {"description": "Unable to update IPMI Thresholds for this Device."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Update IPMI thresholds", "operationId": "put_ipmi_thresholds_id_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/DeviceIPMIThresholds"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Device"]}}, "/device/{deviceId}/ipmi/valid-login": {"parameters": [{"required": true, "in": "path", "description": "ID of Device to check IPMI credentials", "name": "deviceId", "type": "integer"}], "get": {"responses": {"200": {"description": "IPMI credentials validated.", "schema": {"$ref": "#/definitions/IPMIValidLogin"}}, "400": {"description": "Unable to validate IPMI credentials this Device."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get IPMI access status", "operationId": "get_ipmi_valid_login_id_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Device"]}}, "/device/{deviceId}/ipmi/whitelist/": {"parameters": [{"in": "path", "description": "ID of the Device to put IP in Whitelist", "name": "deviceId", "required": true, "type": "integer"}], "post": {"responses": {"400": {"description": "The request has problems. Revise it and try again."}, "202": {"description": "The request was accepted."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Whitelist IP for IPMI", "operationId": "post_device_ipmi_whitelist_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/DeviceIPMIWhitelistIP"}}], "tags": ["Device"]}}, "/device/{deviceId}/ips": {"parameters": [{"name": "deviceId", "in": "path", "required": true, "type": "integer"}], "get": {"responses": {"200": {"description": "Device Ip Assignments retrieved", "schema": {"type": "array", "items": {"$ref": "#/definitions/IPAssignment"}}}, "400": {"description": "Unable to retrieve IP Assignments for this Device."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get IPs", "operationId": "get_device_ip_assignments_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Device"]}}, "/device/{deviceId}/port/{portId}/clear": {"parameters": [{"name": "deviceId", "in": "path", "required": true, "type": "integer"}, {"name": "portId", "in": "path", "required": true, "type": "integer"}], "post": {"responses": {"202": {"description": "Accepted", "schema": {"$ref": "#/definitions/NetworkTask-dump"}}, "429": {"description": "Request was Rate Limited"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Clear all Port configurations", "operationId": "post_device_port_id_clear_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Device"]}}, "/device/{deviceId}/ports": {"parameters": [{"name": "deviceId", "in": "path", "required": true, "type": "integer"}], "get": {"responses": {"200": {"description": "Success", "schema": {"type": "array", "items": {"$ref": "#/definitions/DevicePort"}}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get ports", "operationId": "get_device_port_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Device"]}, "put": {"responses": {"202": {"description": "Accepted", "schema": {"type": "array", "items": {"$ref": "#/definitions/NetworkTask-dump"}}}, "429": {"description": "Request was Rate Limited"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Update port network", "operationId": "put_device_port_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/DevicePortsUpdate"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Device"]}}, "/device/{deviceId}/ports/bond": {"parameters": [{"name": "deviceId", "in": "path", "required": true, "type": "integer"}], "delete": {"responses": {"202": {"description": "Accepted", "schema": {"$ref": "#/definitions/NetworkTask-dump"}}, "429": {"description": "Request was Rate Limited"}, "404": {"description": "Device not found"}, "401": {"description": "Access to this Device is not allowed"}, "400": {"description": "Invalid action"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Unbond ports", "operationId": "delete_device_bond_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Device"]}, "post": {"responses": {"202": {"description": "Accepted", "schema": {"$ref": "#/definitions/NetworkTask-dump"}}, "429": {"description": "Request was Rate Limited"}, "404": {"description": "Device not found"}, "401": {"description": "Access to this Device is not allowed"}, "400": {"description": "Invalid action"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Bond ports", "operationId": "post_device_bond_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Device"]}}, "/device/{deviceId}/power": {"parameters": [{"in": "path", "description": "ID of Device to View / Update", "name": "deviceId", "required": true, "type": "integer"}], "get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/DevicePower"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get power status", "operationId": "get_power_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Device"]}, "post": {"responses": {"202": {"description": "Success", "schema": {"$ref": "#/definitions/DevicePower"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Update power status", "operationId": "post_power_resource", "parameters": [{"name": "action", "in": "query", "type": "string", "required": true, "description": "power action to either boot, reboot, or shutdown"}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Device"]}}, "/device/{deviceId}/services": {"parameters": [{"default": "flat", "in": "query", "description": "Get results grouped by service type code 'type_code', or 'flat'", "name": "group_by", "type": "string"}, {"default": "all", "type": "string", "in": "query", "description": "Return service having the same service type code, the default value is all\n The list of service types can be accessed on https://core.hivelocity.net/api/v2/service/types", "name": "type_code"}, {"in": "path", "description": "ID of Device to get all services by type", "name": "deviceId", "required": true, "type": "integer"}], "get": {"responses": {"404": {"description": "Unable to find the device or the device does not have a service"}, "400": {"description": "Unable to retrieve services for this device"}, "200": {"description": "Device services retrieved", "schema": {"$ref": "#/definitions/Services"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get all device services", "operationId": "get_device_id_service_resource", "tags": ["Device"]}}, "/device/{deviceId}/tags": {"parameters": [{"in": "path", "description": "ID of Device to View / Update", "name": "deviceId", "required": true, "type": "integer"}], "get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/DeviceTag"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get device tags", "operationId": "get_device_tag_id_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Device"]}, "put": {"responses": {"200": {"description": "Device tags updated.", "schema": {"$ref": "#/definitions/DeviceTag"}}, "400": {"description": "Bad request."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Update device tags", "operationId": "put_device_tag_id_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/DeviceTag"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Device"]}}, "/domains/": {"get": {"responses": {"200": {"description": "Success.", "schema": {"type": "array", "items": {"$ref": "#/definitions/DomainReturn"}}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Return the domains of a client", "operationId": "get_domain_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Domains"]}, "post": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/DomainReturn"}}, "400": {"description": "Bad request."}, "201": {"description": "Created."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Create a new domain", "operationId": "post_domain_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/DomainCreate"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Domains"]}}, "/domains/ptr": {"get": {"responses": {"200": {"description": "Success.", "schema": {"type": "array", "items": {"$ref": "#/definitions/PTRRecordReturn"}}}, "400": {"description": "Error"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Return the PTR records of a client", "operationId": "get_ptr_record_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Domains"]}}, "/domains/ptr/{recordId}": {"parameters": [{"name": "recordId", "in": "path", "required": true, "type": "integer"}], "get": {"responses": {"200": {"description": "Success.", "schema": {"$ref": "#/definitions/PTRRecordReturn"}}, "400": {"description": "Error"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get PTR record by ID and name", "operationId": "get_ptr_record_id_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Domains"]}, "put": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/PTRRecordReturn"}}, "400": {"description": "Error"}, "202": {"description": "Success."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Update PTR record", "operationId": "put_ptr_record_id_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/PTRRecordUpdate"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Domains"]}}, "/domains/{domainID}/aaaa-record": {"parameters": [{"name": "domainID", "in": "path", "required": true, "type": "integer"}], "get": {"responses": {"200": {"description": "Success", "schema": {"type": "array", "items": {"$ref": "#/definitions/AAAARecordReturn"}}}, "404": {"description": "Not found"}, "400": {"description": "Error"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Return all AAAA Records found for given zone", "operationId": "get_aaaa_record_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Domains"]}, "post": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/AAAARecordReturn"}}, "404": {"description": "Not found"}, "400": {"description": "Error"}, "201": {"description": "Created"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Create a new AAAA Record for given zone", "operationId": "post_aaaa_record_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/AAAARecordCreate"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Domains"]}}, "/domains/{domainID}/aaaa-record/{recordId}": {"parameters": [{"name": "domainID", "in": "path", "required": true, "type": "integer"}, {"name": "recordId", "in": "path", "required": true, "type": "integer"}], "delete": {"responses": {"404": {"description": "Not found"}, "400": {"description": "Error"}, "204": {"description": "Deleted"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Delete an AAAA Record for given zone", "operationId": "delete_aaaa_record_id_resource", "tags": ["Domains"]}, "get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/AAAARecordReturn"}}, "404": {"description": "Not found"}, "400": {"description": "Error"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Return Single AAAA Records found for given id", "operationId": "get_aaaa_record_id_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Domains"]}, "put": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/AAAARecordReturn"}}, "404": {"description": "Not Found"}, "400": {"description": "Error"}, "202": {"description": "Updated"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Update an AAAA Record for given id", "operationId": "put_aaaa_record_id_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/AAAARecordUpdate"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Domains"]}}, "/domains/{domainID}/mx-record": {"parameters": [{"name": "domainID", "in": "path", "required": true, "type": "integer"}], "get": {"responses": {"200": {"description": "Success", "schema": {"type": "array", "items": {"$ref": "#/definitions/MXRecordReturn"}}}, "404": {"description": "Not found"}, "400": {"description": "Error"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Return all MX Records found for given zone", "operationId": "get_mx_record_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Domains"]}, "post": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/MXRecordReturn"}}, "404": {"description": "Not found"}, "400": {"description": "Error"}, "201": {"description": "Created"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Create a new MX Record for given zone", "operationId": "post_mx_record_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/MXRecordCreate"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Domains"]}}, "/domains/{domainID}/mx-record/{recordId}": {"parameters": [{"name": "domainID", "in": "path", "required": true, "type": "integer"}, {"name": "recordId", "in": "path", "required": true, "type": "integer"}], "delete": {"responses": {"404": {"description": "Not found"}, "400": {"description": "Error"}, "204": {"description": "Deleted"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Delete an MX Record for given zone", "operationId": "delete_mx_record_id_resource", "tags": ["Domains"]}, "get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/MXRecordReturn"}}, "404": {"description": "Not found"}, "400": {"description": "Error"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Return Single MX Records found for given id", "operationId": "get_mx_record_id_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Domains"]}, "put": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/MXRecordReturn"}}, "404": {"description": "Not found"}, "400": {"description": "Error"}, "202": {"description": "Updated"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Update an MX Record for given zone", "operationId": "put_mx_record_id_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/MXRecordUpdate"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Domains"]}}, "/domains/{domainId}": {"parameters": [{"name": "domainId", "in": "path", "required": true, "type": "integer"}], "delete": {"responses": {"500": {"description": "Error."}, "404": {"description": "Domain not found."}, "204": {"description": "Deleted."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Delete domain for given id", "operationId": "delete_domain_id_resource", "tags": ["Domains"]}, "get": {"responses": {"200": {"description": "Success.", "schema": {"$ref": "#/definitions/DomainReturn"}}, "404": {"description": "Domain not found."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Return a domain for given id", "operationId": "get_domain_id_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Domains"]}}, "/domains/{domain}/a-record": {"parameters": [{"name": "domain", "in": "path", "required": true, "type": "string"}], "get": {"responses": {"200": {"description": "Success", "schema": {"type": "array", "items": {"$ref": "#/definitions/ARecord"}}}, "404": {"description": "Not found"}, "400": {"description": "Error"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Return all A Records found for given zone name", "operationId": "get_a_record_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Domains"]}, "post": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/ARecord"}}, "409": {"description": "Record Already Exists"}, "404": {"description": "Not found"}, "400": {"description": "Error"}, "201": {"description": "Created"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Create a new A Record for given zone", "operationId": "post_a_record_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/ARecord"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Domains"]}}, "/domains/{domain}/a-record/{record}": {"parameters": [{"name": "domain", "in": "path", "required": true, "type": "string"}, {"name": "record", "in": "path", "required": true, "type": "string"}], "delete": {"responses": {"404": {"description": "Not found"}, "400": {"description": "Error"}, "204": {"description": "Deleted"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Delete a single A Record value for given zone", "operationId": "delete_a_record_id_resource", "tags": ["Domains"]}, "get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/ARecord"}}, "404": {"description": "Not found"}, "400": {"description": "Error"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Return Single A Records found for given domain name", "operationId": "get_a_record_id_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Domains"]}, "put": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/ARecord"}}, "404": {"description": "Not found"}, "400": {"description": "Error"}, "202": {"description": "Updated"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Update an A Record for given zone", "operationId": "put_a_record_id_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/ARecord"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Domains"]}}, "/ignition/": {"get": {"responses": {"200": {"description": "Successfully returned ignition configs", "schema": {"type": "array", "items": {"$ref": "#/definitions/IgnitionResponse"}}}, "400": {"description": "Unable to get ignition configs"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Return all Ignition configurations", "operationId": "get_ignition_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Ignition"]}, "post": {"responses": {"201": {"description": "Successfully created ignition configs", "schema": {"$ref": "#/definitions/IgnitionResponse"}}, "400": {"description": "Unable to create ignition config"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Creates a new Ignition configuration", "operationId": "post_ignition_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/CreateIgnition"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Ignition"]}}, "/ignition/{ignitionId}": {"parameters": [{"name": "ignitionId", "in": "path", "required": true, "type": "integer"}], "delete": {"responses": {"200": {"description": "Successfully returned ignition configs"}, "400": {"description": "Unable to delete ignition configs"}, "404": {"description": "Not found"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Delete an Ignition configuration by ID", "operationId": "delete_ignition_resource_id", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Ignition"]}, "get": {"responses": {"200": {"description": "Successfully returned ignition config", "schema": {"$ref": "#/definitions/IgnitionResponse"}}, "400": {"description": "Unable to get ignition config"}, "404": {"description": "Not found"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Return an Ignition configuration by ID", "operationId": "get_ignition_resource_id", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Ignition"]}, "put": {"responses": {"200": {"description": "Successfully updated ignition config", "schema": {"$ref": "#/definitions/IgnitionResponse"}}, "400": {"description": "Unable to get ignition config"}, "404": {"description": "Not found"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Update an Ignition configuration by ID", "operationId": "put_ignition_resource_id", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/UpdateIgnition"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Ignition"]}}, "/inventory/product": {"parameters": [{"default": "MAIN", "type": "string", "enum": ["MAIN", "MASSIVESTORAGE", "GPU", "OUTLET", "LANDING"], "in": "query", "description": "Retrieve products by their location in the Hivelocity store: \n\nMAIN: The main list of instant (and custom servers).\nMASSIVESTORAGE: Servers with up to 90 drives.\nGPU: Servers with GPUs.\nOUTLET: Discounted older hardware.\nLANDING: Periodic specials for events.", "name": "location"}, {"type": "boolean", "default": false, "in": "query", "description": "Include custom server products.", "name": "include_custom"}, {"default": null, "in": "query", "description": "Filter by bonding support. Values are true/false. None will return a mix of both.\n*DEPRECATED:* Soon, all servers sold will have bonding support and this will be removed.", "name": "bonding_support", "type": "string"}, {"default": "facility", "in": "query", "description": "Get results grouped by 'city', 'facility', or 'flat'", "name": "group_by", "type": "string"}], "get": {"responses": {"200": {"description": "Product data was found", "schema": {"$ref": "#/definitions/Inventory"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get all products", "operationId": "get_stock_resource", "tags": ["Inventory"]}}, "/inventory/product/{productId}": {"parameters": [{"in": "path", "description": "Product database ID", "name": "productId", "required": true, "type": "integer"}], "get": {"responses": {"200": {"description": "Product data was found", "schema": {"$ref": "#/definitions/Stock"}}, "404": {"description": "Product with given id not found"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get product", "operationId": "get_stock_by_product_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Inventory"]}}, "/ip/": {"get": {"responses": {"200": {"description": "Success", "schema": {"type": "array", "items": {"$ref": "#/definitions/IPAssignment"}}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get all assignments", "operationId": "get_ip_assignment_resource", "parameters": [{"name": "displayPrivateNetworks", "in": "query", "type": "boolean", "description": "Return Private (RFC 1918) Addresses in Results", "default": false}, {"name": "displayIPv6", "in": "query", "type": "boolean", "description": "Return IPv6 Addresses in Results", "default": true}, {"name": "clientId", "in": "query", "type": "integer", "minimum": 0, "exclusiveMinimum": true, "description": "Return IPs from this Client ID"}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["IPAssignment"]}, "post": {"responses": {"400": {"description": "Invalid action"}, "200": {"description": "Success"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Request new assignment", "description": "This endpoint is used to request a new IP Assignment from MyV and the API itself. \nIt will create a request on Zendesk for Networking support team.", "operationId": "post_ip_assignment_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/IpAssignmentRequest"}}], "tags": ["IPAssignment"]}}, "/ip/address/{ipAddress}": {"parameters": [{"name": "ipAddress", "in": "path", "required": true, "type": "string"}], "get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/IPAssignment"}}, "404": {"description": "IP assignment not found"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get assignment by IP", "operationId": "get_ip_assignment_subnet_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["IPAssignment"]}}, "/ip/combine": {"post": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/IPAssignment"}}, "404": {"description": "IP assignment not found"}, "401": {"description": "Access to this IP Assignment is not allowed"}, "400": {"description": "Invalid action"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Combine assignments", "operationId": "post_ip_assignment_combine_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/IpAssignmentCombine"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["IPAssignment"]}}, "/ip/{ipAssignmentId}": {"parameters": [{"name": "ipAssignmentId", "in": "path", "required": true, "type": "integer"}], "delete": {"responses": {"404": {"description": "IP assignment not found"}, "401": {"description": "Access to this IP Assignment is not allowed"}, "400": {"description": "Invalid action"}, "204": {"description": "Success"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Delete assignment", "operationId": "delete_ip_assignment_id_resource", "tags": ["IPAssignment"]}, "get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/IPAssignment"}}, "404": {"description": "IP Assignment Not Found"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get assignment", "operationId": "get_ip_assignment_id_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["IPAssignment"]}, "put": {"responses": {"202": {"description": "Accepted", "schema": {"$ref": "#/definitions/NetworkTask-dump"}}, "429": {"description": "Request was Rate Limited"}, "404": {"description": "IP assignment not found"}, "401": {"description": "Access to this IP Assignment is not allowed"}, "400": {"description": "Invalid action"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Route assignment to IP", "operationId": "put_ip_assignment_id_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/IpAssignmentPut"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["IPAssignment"]}}, "/ip/{ipAssignmentId}/clear": {"parameters": [{"name": "ipAssignmentId", "in": "path", "required": true, "type": "integer"}], "post": {"responses": {"202": {"description": "Accepted", "schema": {"$ref": "#/definitions/NetworkTask-dump"}}, "429": {"description": "Request was Rate Limited"}, "404": {"description": "IP assignment not found"}, "401": {"description": "Access to this IP Assignment is not allowed"}, "400": {"description": "Invalid action"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Clear all configuration on an IP Assignment", "operationId": "post_ip_assignment_id_clear_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["IPAssignment"]}}, "/ip/{ipAssignmentId}/split": {"parameters": [{"name": "ipAssignmentId", "in": "path", "required": true, "type": "integer"}], "post": {"responses": {"200": {"description": "Success", "schema": {"type": "array", "items": {"$ref": "#/definitions/IPAssignment"}}}, "404": {"description": "IP assignment not found"}, "401": {"description": "Access to this IP Assignment is not allowed"}, "400": {"description": "Invalid action"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Split assignment", "operationId": "post_ip_assignment_split_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["IPAssignment"]}}, "/network/status/": {"get": {"responses": {"200": {"description": "Success.", "schema": {"type": "array", "items": {"$ref": "#/definitions/NetworkTask-dump"}}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}, "400": {"description": "Bad Request."}}, "summary": "Get network task status", "operationId": "get_network_task_client_resource", "parameters": [{"name": "clientId", "in": "query", "type": "integer", "description": "Filter to retrieve tasks for a specific client."}, {"name": "createdInLast", "in": "query", "type": "integer", "description": "Filter to retrieve tasks created in the last timedelta hours."}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Network"]}}, "/network/status/{deviceId}": {"parameters": [{"name": "deviceId", "in": "path", "required": true, "type": "integer"}], "get": {"responses": {"200": {"description": "Success.", "schema": {"$ref": "#/definitions/NetworkTask-dump"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get network task status by device", "operationId": "get_network_task_device_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Network"]}}, "/network/status/{taskId}": {"parameters": [{"name": "taskId", "in": "path", "required": true, "type": "string"}], "get": {"responses": {"200": {"description": "Success.", "schema": {"$ref": "#/definitions/NetworkTask-dump"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get network task status by task id", "operationId": "get_network_task_id_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Network"]}}, "/order-groups/": {"get": {"responses": {"200": {"description": "Order groups found successfuly.", "schema": {"type": "array", "items": {"$ref": "#/definitions/OrderGroup"}}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Return a list with all Order Groups", "operationId": "get_order_group_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Order Groups"]}, "post": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/OrderGroup"}}, "201": {"description": "Order Group created."}, "400": {"description": "Invalid Order Group parameters."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Create a new Order Group", "operationId": "post_order_group_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/OrderGroupCreate"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Order Groups"]}}, "/order-groups/{orderGroupId}": {"parameters": [{"in": "path", "description": "Id of the order group to interact with", "name": "orderGroupId", "required": true, "type": "integer"}], "delete": {"responses": {"204": {"description": "Order Group Deleted"}, "401": {"description": "Access to Order Group not Allowed."}, "404": {"description": "Order Group Not Found"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Delete the specified Order Group", "operationId": "delete_order_group_id_resource", "tags": ["Order Groups"]}, "get": {"responses": {"200": {"description": "Order Group Found.", "schema": {"$ref": "#/definitions/OrderGroup"}}, "401": {"description": "Access to Order Group not Allowed."}, "404": {"description": "Order Group Not Found."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Return an Order Group", "operationId": "get_order_group_id_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Order Groups"]}, "put": {"responses": {"200": {"description": "Order Group updated.", "schema": {"$ref": "#/definitions/OrderGroup"}}, "400": {"description": "Invalid Order Group parameters."}, "404": {"description": "Order Group Not Found."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Update an Order Group", "operationId": "put_order_group_id_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/OrderGroupUpdate"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Order Groups"]}}, "/order/": {"get": {"responses": {"200": {"description": "A list of orders if the current user has them.", "schema": {"type": "array", "items": {"$ref": "#/definitions/Order-dump"}}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Return a list with all Orders", "operationId": "get_order_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Order"]}}, "/order/in-progress": {"get": {"responses": {"200": {"description": "A list of in-progress orders if the current user has them.", "schema": {"type": "array", "items": {"$ref": "#/definitions/Order-dump"}}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Return a list of all In-Progress orders", "operationId": "get_order_inprogress_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Order"]}}, "/order/{orderId}": {"parameters": [{"in": "path", "description": "\"ID of Order to View\"", "name": "orderId", "required": true, "type": "integer"}], "get": {"responses": {"200": {"description": "An specific order with its details.", "schema": {"$ref": "#/definitions/Order-dump"}}, "404": {"description": "Order ID not found."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Return details of a specific Order", "operationId": "get_order_id_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Order"]}}, "/permission/": {"get": {"responses": {"200": {"description": "Success"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Endpoint to get All Permissions", "operationId": "get_permission_all_resource", "tags": ["Permission"]}}, "/permission/contact": {"post": {"responses": {"200": {"description": "Success", "schema": {"type": "array", "items": {"$ref": "#/definitions/PermissionReturn"}}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Endpoint to assign a new Permission to a Contact", "operationId": "post_permission_assign_contact_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/Permission"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Permission"]}}, "/permission/contact/{contactId}": {"parameters": [{"name": "contactId", "in": "path", "required": true, "type": "integer"}], "get": {"responses": {"200": {"description": "Success"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Endpoint to get Contact Permissions", "operationId": "get_permission_contact_resource", "tags": ["Permission"]}}, "/permission/user": {"get": {"responses": {"200": {"description": "Success"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Endpoint to get User Permissions", "operationId": "get_permission_user_resource", "tags": ["Permission"]}}, "/product/options": {"get": {"responses": {"200": {"description": "Success", "schema": {"type": "array", "items": {"$ref": "#/definitions/ProductOption"}}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get all options", "operationId": "get_products_and_options_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Product"]}}, "/product/{productId}/operating-systems": {"parameters": [{"in": "path", "description": "ID of the Product", "name": "productId", "required": true, "type": "integer"}], "get": {"responses": {"200": {"description": "Success", "schema": {"type": "array", "items": {"$ref": "#/definitions/Option-dump"}}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get product operating systems", "operationId": "get_product_operating_systems_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Product"]}}, "/product/{productId}/options": {"parameters": [{"default": "upgrade", "in": "query", "description": "Get results grouped by 'upgrade' or without grouping.", "name": "groupBy", "type": "string"}, {"in": "path", "description": "ID of the Product", "name": "productId", "required": true, "type": "integer"}], "get": {"responses": {"200": {"description": "Product data was found", "schema": {"$ref": "#/definitions/Options"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get product options", "operationId": "get_product_option_resource", "tags": ["Product"]}}, "/service/": {"parameters": [{"default": null, "type": "string", "in": "query", "description": "Return service having the same service type code, the default value is all\n The list of service types can be accessed on https://core.hivelocity.net/api/v2/service/types", "name": "type_code"}, {"type": "integer", "default": 0, "in": "query", "description": "Order id of the service", "name": "orderId"}, {"default": "all", "required": true, "type": "string", "enum": ["all", "active", "deactivated", "pending", "suspended", "cancelled"], "in": "query", "description": "The current status of the service", "name": "status"}], "get": {"responses": {"200": {"description": "Success", "schema": {"type": "array", "items": {"$ref": "#/definitions/FastService-dump"}}}, "404": {"description": "You don't own any services"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Return a list of all account services", "operationId": "get_service_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Service"]}}, "/service/types": {"get": {"responses": {"200": {"description": "Service types retrieved", "schema": {"type": "array", "items": {"$ref": "#/definitions/ServiceType"}}}, "404": {"description": "Unable to retrieve service types"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Return all available service types", "operationId": "get_service_type_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Service"]}}, "/service/{serviceId}": {"parameters": [{"type": "boolean", "in": "query", "description": "Includes on the field serviceOptions the options having price equal to zero", "name": "includeZeroPriceOptions"}, {"name": "serviceId", "in": "path", "required": true, "type": "integer"}], "get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/Service"}}, "404": {"description": "Service not found"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Return a dictionary with data from a specific account service", "operationId": "get_service_id_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Service"]}}, "/ssh_key/": {"get": {"responses": {"200": {"description": "All Public ssh key successfully retrieved.", "schema": {"type": "array", "items": {"$ref": "#/definitions/SshKeyResponse"}}}, "400": {"description": "Unable to get all public ssh keys"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Gets all public ssh key", "operationId": "get_ssh_key_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["SshKey"]}, "post": {"responses": {"201": {"description": "Public ssh key successfully added ", "schema": {"$ref": "#/definitions/SshKeyResponse"}}, "400": {"description": "Unable to added public ssh key"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Adds public ssh key", "operationId": "post_ssh_key_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/SshKey"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["SshKey"]}}, "/ssh_key/{sshKeyId}": {"parameters": [{"name": "sshKeyId", "in": "path", "required": true, "type": "integer"}], "delete": {"responses": {"404": {"description": "Public ssh key not found."}, "200": {"description": "Public ssh key successfully removed."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Removes public ssh key", "operationId": "delete_ssh_key_id_resource", "tags": ["SshKey"]}, "get": {"responses": {"200": {"description": "Public ssh key successfully retrieved.", "schema": {"$ref": "#/definitions/SshKeyResponse"}}, "404": {"description": "Public ssh key not found."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get public ssh key", "operationId": "get_ssh_key_id_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["SshKey"]}, "put": {"responses": {"200": {"description": "Public ssh key successfully updated.", "schema": {"$ref": "#/definitions/SshKeyResponse"}}, "400": {"description": "Unable to update public ssh key."}, "404": {"description": "Public ssh key not found."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Updates public ssh key", "operationId": "put_ssh_key_id_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/SshKeyUpdate"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["SshKey"]}}, "/vlan/": {"get": {"responses": {"200": {"description": "VLANs retrieved successfuly", "schema": {"type": "array", "items": {"$ref": "#/definitions/Vlan"}}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get all VLANs", "operationId": "get_vlan_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["VLAN"]}, "post": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/Vlan"}}, "400": {"description": "Invalid VLAN creation parameter."}, "201": {"description": "VLAN created successfully."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Create VLAN", "operationId": "post_vlan_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/VlanCreate"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["VLAN"]}}, "/vlan/{vlanId}": {"parameters": [{"in": "path", "description": "Id of the VLAN to interact with", "name": "vlanId", "required": true, "type": "integer"}], "delete": {"responses": {"404": {"description": "VLAN Not Found"}, "401": {"description": "Access to VLAN not Allowed"}, "400": {"description": "Error."}, "204": {"description": "Success."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Delete VLAN", "operationId": "delete_vlan_id_resource", "tags": ["VLAN"]}, "get": {"responses": {"200": {"description": "VLAN Found", "schema": {"$ref": "#/definitions/Vlan"}}, "404": {"description": "VLAN Not Found"}, "401": {"description": "Access to VLAN not Allowed"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get VLAN", "operationId": "get_vlan_id_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["VLAN"]}, "put": {"responses": {"202": {"description": "Accepted.", "schema": {"$ref": "#/definitions/NetworkTask-dump"}}, "429": {"description": "Request was Rate Limited"}, "404": {"description": "VLAN Not Found"}, "401": {"description": "Access to VLAN not Allowed"}, "400": {"description": "Error."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Modify VLAN", "operationId": "put_vlan_id_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/VlanUpdate"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["VLAN"]}}, "/vlan/{vlanId}/clear": {"parameters": [{"in": "path", "description": "Id of the VLAN to interact with", "name": "vlanId", "required": true, "type": "integer"}], "post": {"responses": {"202": {"description": "Accepted.", "schema": {"$ref": "#/definitions/NetworkTask-dump"}}, "404": {"description": "VLAN Not Found"}, "401": {"description": "Access to VLAN not Allowed"}, "400": {"description": "Error."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Clear all configurations on this VLAN, including Ports, IPs and associated Static Routes", "operationId": "post_vlan_id_clear_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["VLAN"]}}, "/vps/iso": {"get": {"responses": {"200": {"description": "Success", "schema": {"type": "array", "items": {"$ref": "#/definitions/VPSISO"}}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get all VPS ISOs available", "operationId": "get_vpsiso_resource", "parameters": [{"name": "clientId", "in": "query", "type": "integer", "description": "The unique client account ID."}, {"name": "facilityCode", "in": "query", "type": "string", "description": "The facility code associated with the VPS instance. For example:TPA1."}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["VPS"]}, "post": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/VPSISO"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Create a new ISO", "operationId": "post_vpsiso_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/VPSISOCreate"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["VPS"]}}, "/vps/iso/{isoId}": {"parameters": [{"name": "isoId", "in": "path", "required": true, "type": "string"}], "delete": {"responses": {"201": {"description": "Success", "schema": {"$ref": "#/definitions/NetworkTask-dump"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Delete an ISO", "operationId": "delete_vpsiso_id_resource", "parameters": [{"name": "clientId", "in": "query", "type": "integer", "description": "The unique client account ID."}, {"name": "facilityCode", "in": "query", "type": "string", "description": "The facility code associated with the VPS instance. For example:TPA1."}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["VPS"]}, "get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/VPSISO"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get the details of the VPS ISO ID specified", "operationId": "get_vpsiso_id_resource", "parameters": [{"name": "clientId", "in": "query", "type": "integer", "description": "The unique client account ID."}, {"name": "facilityCode", "in": "query", "type": "string", "description": "The facility code associated with the VPS instance. For example:TPA1."}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["VPS"]}}, "/vps/snapshot": {"get": {"responses": {"200": {"description": "Success", "schema": {"type": "array", "items": {"$ref": "#/definitions/VPSSnapshot"}}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get all VPS Volume Snapshots available", "operationId": "get_vps_snapshot_resource", "parameters": [{"name": "clientId", "in": "query", "type": "integer", "description": "The unique client account ID."}, {"name": "facilityCode", "in": "query", "type": "string", "description": "The facility code associated with the VPS instance. For example:TPA1."}, {"name": "deviceId", "in": "query", "type": "integer", "description": "The unique device ID of the VPS instance."}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["VPS"]}, "post": {"responses": {"201": {"description": "Success", "schema": {"$ref": "#/definitions/NetworkTask-dump"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Create a VPS Volume Snapshot", "operationId": "post_vps_snapshot_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/VPSSnapshotCreate"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["VPS"]}}, "/vps/snapshot/{snapshotId}": {"parameters": [{"name": "snapshotId", "in": "path", "required": true, "type": "string"}], "delete": {"responses": {"201": {"description": "Success", "schema": {"$ref": "#/definitions/NetworkTask-dump"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Delete a VPS Volume Snapshot", "operationId": "delete_vps_snapshot_id_resource", "parameters": [{"name": "clientId", "in": "query", "type": "integer", "description": "The unique client account ID."}, {"name": "facilityCode", "in": "query", "type": "string", "description": "The facility code associated with the VPS instance. For example:TPA1."}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["VPS"]}, "get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/VPSSnapshot"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get a VPS Volume Snapshot by ID", "operationId": "get_vps_snapshot_id_resource", "parameters": [{"name": "clientId", "in": "query", "type": "integer", "description": "The unique client account ID."}, {"name": "facilityCode", "in": "query", "type": "string", "description": "The facility code associated with the VPS instance. For example:TPA1."}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["VPS"]}, "post": {"responses": {"201": {"description": "Success", "schema": {"$ref": "#/definitions/NetworkTask-dump"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Restore a VPS Volume Snapshot", "operationId": "post_vps_snapshot_id_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/VPSSnapshotRestore"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["VPS"]}}, "/vps/snapshotSchedule": {"get": {"responses": {"200": {"description": "Success", "schema": {"type": "array", "items": {"$ref": "#/definitions/VPSSnapshotSchedule"}}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get all VPS Snapshot Schedules for a Facility or VPS Instance", "operationId": "get_vps_snapshot_schedule_resource", "parameters": [{"name": "clientId", "in": "query", "type": "integer", "description": "The unique client account ID."}, {"name": "facilityCode", "in": "query", "type": "string", "description": "The facility code associated with the VPS instance. For example:TPA1."}, {"name": "deviceId", "in": "query", "type": "integer", "description": "The unique device ID of the VPS instance."}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["VPS"]}, "post": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/VPSSnapshotSchedule"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Create a VPS Snapshot Schedule", "operationId": "post_vps_snapshot_schedule_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/VPSSnapshotScheduleCreate"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["VPS"]}}, "/vps/snapshotSchedule/{snapshotScheduleId}": {"parameters": [{"name": "snapshotScheduleId", "in": "path", "required": true, "type": "string"}], "delete": {"responses": {"204": {"description": "Success"}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Delete a VPS Snapshot Schedule", "operationId": "delete_vps_snapshot_schedule_id_resource", "parameters": [{"name": "clientId", "in": "query", "type": "integer", "description": "The unique client account ID."}, {"name": "facilityCode", "in": "query", "type": "string", "description": "The facility code associated with the VPS instance. For example:TPA1."}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["VPS"]}, "get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/VPSSnapshotSchedule"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get a VPS Snapshot Schedules", "operationId": "get_vps_snapshot_schedule_id_resource", "parameters": [{"name": "clientId", "in": "query", "type": "integer", "description": "The unique client account ID."}, {"name": "facilityCode", "in": "query", "type": "string", "description": "The facility code associated with the VPS instance. For example:TPA1."}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["VPS"]}}, "/vps/volume": {"get": {"responses": {"200": {"description": "Success", "schema": {"type": "array", "items": {"$ref": "#/definitions/VPSVolume"}}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get all VPS Instance Volumes available", "operationId": "get_vps_volume_resource", "parameters": [{"name": "clientId", "in": "query", "type": "integer", "description": "The unique client account ID."}, {"name": "facilityCode", "in": "query", "type": "string", "description": "The facility code associated with the VPS instance. For example:TPA1."}, {"name": "deviceId", "in": "query", "type": "integer", "description": "The unique device ID of the VPS instance."}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["VPS"]}, "post": {"responses": {"201": {"description": "Success", "schema": {"$ref": "#/definitions/NetworkTask-dump"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Creates a new Volume", "operationId": "post_vps_volume_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/VPSVolumeCreate"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["VPS"]}}, "/vps/{deviceId}": {"parameters": [{"in": "path", "description": "Device ID of VPS instance to View / Update", "name": "deviceId", "required": true, "type": "integer"}], "delete": {"responses": {"201": {"description": "Success", "schema": {"$ref": "#/definitions/NetworkTask-dump"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Delete VPS instance", "operationId": "delete_vps_id_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["VPS"]}, "get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/VPS"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get VPS instance", "operationId": "get_vps_id_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["VPS"]}, "put": {"responses": {"201": {"description": "Success", "schema": {"$ref": "#/definitions/NetworkTask-dump"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Update VPS instance", "description": "This will incur additional charges if scaling up.", "operationId": "put_vps_id_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/VPSUpdate"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["VPS"]}}, "/vps/{deviceId}/attachiso": {"parameters": [{"in": "path", "description": "Device ID of VPS instance", "name": "deviceId", "required": true, "type": "integer"}], "post": {"responses": {"201": {"description": "Success", "schema": {"$ref": "#/definitions/NetworkTask-dump"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Attach ISO to VPS instance", "operationId": "post_vps_attach_iso_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/VPSISOAttach"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["VPS"]}}, "/vps/{deviceId}/console": {"parameters": [{"in": "path", "description": "Device ID of VPS instance", "name": "deviceId", "required": true, "type": "integer"}], "post": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/VPSConsoleAccess"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Create a one time use URL for console access to a VPS instance", "operationId": "post_vps_console_access_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["VPS"]}}, "/vps/{deviceId}/detachiso": {"parameters": [{"in": "path", "description": "Device ID of VPS instance", "name": "deviceId", "required": true, "type": "integer"}], "post": {"responses": {"201": {"description": "Success", "schema": {"$ref": "#/definitions/NetworkTask-dump"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Detach ISO from VPS instance", "operationId": "post_vps_detach_iso_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["VPS"]}}, "/vps/{deviceId}/events": {"parameters": [{"in": "path", "description": "Device ID of VPS instance", "name": "deviceId", "required": true, "type": "integer"}], "get": {"responses": {"200": {"description": "Success", "schema": {"type": "array", "items": {"$ref": "#/definitions/VPSEvent"}}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Get VPS Instance Events", "operationId": "get_vps_id_events_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["VPS"]}}, "/webhooks/": {"get": {"responses": {"200": {"description": "Success", "schema": {"type": "array", "items": {"$ref": "#/definitions/Webhook"}}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Returns your active Webhooks", "operationId": "get_webhook_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Webhook"]}, "post": {"responses": {"200": {"description": "Webhook was created.", "schema": {"$ref": "#/definitions/Webhook"}}, "400": {"description": "Unable to create Webhook."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Create a new Webhook for a Webhook Event", "operationId": "post_webhook_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/WebhookCreate"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Webhook"]}}, "/webhooks/events": {"get": {"responses": {"200": {"description": "Success", "schema": {"type": "array", "items": {"$ref": "#/definitions/WebhookEvent"}}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Returns all available Webhook Events", "operationId": "get_webhook_event_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Webhook"]}}, "/webhooks/trigger": {"parameters": [{"in": "query", "description": "The name of the webhook to trigger.", "name": "webhookName", "type": "string"}], "post": {"responses": {"202": {"description": "Accepted."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Queues a webhook for the event script action that was triggered", "operationId": "post_event_script_action_trigger_resource", "tags": ["Webhook"]}}, "/webhooks/{webhookId}": {"parameters": [{"in": "path", "description": "ID of Webhook to View / Update", "name": "webhookId", "required": true, "type": "integer"}], "delete": {"responses": {"204": {"description": "Webhook was deleted."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Deletes a single webhook", "operationId": "delete_webhook_id_resource", "tags": ["Webhook"]}, "get": {"responses": {"200": {"description": "Success", "schema": {"$ref": "#/definitions/Webhook"}}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Returns detailed information for a Single Webhook", "operationId": "get_webhook_id_resource", "parameters": [{"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Webhook"]}, "put": {"responses": {"200": {"description": "Webhook was updated.", "schema": {"$ref": "#/definitions/Webhook"}}, "400": {"description": "Unable to update Webhook."}, "403": {"description": "You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission."}}, "summary": "Updates a Single Webhook", "operationId": "put_webhook_id_resource", "parameters": [{"name": "payload", "required": true, "in": "body", "schema": {"$ref": "#/definitions/WebhookUpdate"}}, {"name": "X-Fields", "in": "header", "type": "string", "format": "mask", "description": "An optional fields mask"}], "tags": ["Webhook"]}}}, "info": {"title": "Hivelocity API for Partners", "version": "2.0", "description": "Interact with Hivelocity"}, "produces": ["application/json"], "consumes": ["application/json"], "securityDefinitions": {"apiKey": {"type": "apiKey", "in": "header", "name": "X-API-KEY"}}, "security": [{"apiKey": []}], "tags": [{"name": "Account", "description": "Endpoints to manage Account"}, {"name": "Bandwidth", "description": "Request Bandwidth Data."}, {"name": "Bare Metal Devices", "description": "Endpoints to handle bare metal devices."}, {"name": "BillingInfo", "description": "Endpoints to manage Billing Info"}, {"name": "Contact", "description": "Endpoints to manager Contacts"}, {"name": "Device", "description": "Access to your Bare-Metal or Virtual Devices"}, {"name": "Domains", "description": "Manage your DNS Domains"}, {"name": "Ignition", "description": "Endpoints to manage CoreOS ignition files."}, {"name": "Inventory", "description": "Products Inventory Data"}, {"name": "IPAssignment", "description": "Endpoints to manage IP Assignments"}, {"name": "Network", "description": "Endpoints to perform network related tasks"}, {"name": "Order", "description": "Get Order and its details"}, {"name": "Order Groups", "description": "Endpoints to manage Order Groups"}, {"name": "Permission", "description": "Endpoints to manage Permissions"}, {"name": "Product", "description": "Endpoints to manage Products"}, {"name": "Deployment", "description": "Endpoints to handle your servers provisioning"}, {"name": "Service", "description": "Service information"}, {"name": "SshKey", "description": "Endpoints to manage SSH key."}, {"name": "VLAN", "description": "Endpoints to manage VLANs"}, {"name": "VPS", "description": "Endpoints to manage Virtual Private Servers"}, {"name": "Webhook", "description": "Access and modify your Hivelocity webhooks."}], "definitions": {"CreateEnterpriseControlledClient": {"required": ["company", "email"], "properties": {"password": {"type": "string", "description": "The client account password to be used"}, "email": {"type": "string", "description": "The email to be associated with the client account"}, "company": {"type": "string", "description": "The company to be asociated with the client account"}}, "type": "object"}, "DeactivateEnterpriseControlledClient": {"required": ["clientId"], "properties": {"clientId": {"type": "integer", "description": "ID of the controlled client account"}}, "type": "object"}, "ClientCreate-dump": {"properties": {"id": {"type": "integer", "description": "The ID of the client/contact account"}, "city": {"type": "string", "description": "The city associated with the account"}, "email": {"type": "string", "description": "The email address associated with the account"}, "last": {"type": "string", "description": "The last name associated with the account"}, "zip": {"type": "string", "description": "The zip/postal code associated with the account"}, "country": {"type": "string", "description": "The country associated with the account"}, "address": {"type": "string", "description": "The street address associated with the account"}, "state": {"type": "string", "description": "The state associated with the account"}, "fax": {"type": "string", "description": "The fax number associated with the account"}, "created": {"type": "integer", "description": "The date/time the account was created"}, "phone": {"type": "string", "description": "The phone number associated with the account"}, "password": {"type": "string"}, "company": {"type": "string", "description": "The company name associated with the account"}, "active": {"type": "boolean"}, "first": {"type": "string", "description": "The first name associated with the account"}}, "type": "object"}, "ControlledClient-dump": {"properties": {"id": {"type": "integer", "description": "The ID of the client/contact account"}, "city": {"type": "string", "description": "The city associated with the account"}, "email": {"type": "string", "description": "The email address associated with the account"}, "last": {"type": "string", "description": "The last name associated with the account"}, "zip": {"type": "string", "description": "The zip/postal code associated with the account"}, "country": {"type": "string", "description": "The country associated with the account"}, "address": {"type": "string", "description": "The street address associated with the account"}, "state": {"type": "string", "description": "The state associated with the account"}, "fax": {"type": "string", "description": "The fax number associated with the account"}, "created": {"type": "integer", "description": "The date/time the account was created"}, "phone": {"type": "string", "description": "The phone number associated with the account"}, "company": {"type": "string", "description": "The company name associated with the account"}, "active": {"type": "boolean"}, "first": {"type": "string", "description": "The first name associated with the account"}}, "type": "object"}, "Bandwidth": {"properties": {"metadata": {"type": "object", "description": "Returns metadata about the query including the 95th percentile values of the returned data, legend for returned data arrays, and query args passed to the query."}, "bandwidthData": {"type": "array", "description": "Returns an array where each item contains a dictionary of data and an identifier for each requested interface. The data itself is an array of arrays where each item is the measurementat the requested `step` and the index of each integer value corresponds with the legend returned in the `metadata`.", "items": {"type": "array", "items": {"type": "number"}}}, "interface": {"type": "string", "description": "The interface(s) displayed in the image."}, "switchId": {"type": "string", "description": "The unique ID of the switch where bandwidth data is measured."}}, "type": "object"}, "BandwidthImage": {"properties": {"graphImage": {"type": "string", "description": "A PNG image of bandwidth usage."}, "interface": {"type": "string", "description": "The interface(s) displayed in the image."}, "switchId": {"type": "string", "description": "The unique ID of the switch where bandwidth data is measured."}}, "type": "object"}, "BareMetalDeviceCreate": {"required": ["hostname", "locationName", "osName", "productId"], "properties": {"customIPXEScriptURL": {"type": "string", "description": "URL to download custom iPXE script if not supplying script in entirety"}, "locationName": {"type": "string", "description": "A facility code. For example `NYC1`."}, "script": {"type": "string", "description": "A Cloud-Init script or a post-install script (Bash for Linux or Powershell for Windows)."}, "publicSshKeyId": {"type": "integer"}, "forceDeviceId": {"type": "integer", "description": "For users with reserved devices. The unique ID of the target device to provision."}, "hostname": {"type": "string", "description": "A FQDN for the device. For example: `example.hivelocity.net`"}, "customIPXEScriptContents": {"type": "string", "description": "Contents of iPXE script if not supplying URL"}, "ignitionId": {"type": "integer", "description": "The unique ID of an Ignition File for FlatcarOS provisions."}, "bondingSupport": {"type": "boolean", "description": "If true, ensures the provisioned device supports port bonding. If false, ensures no bonding support."}, "period": {"type": "string", "description": "hourly|monthly|quarterly|semi-annually|annually|biennial|triennial", "default": "hourly", "example": "hourly"}, "vlanId": {"type": "integer"}, "productId": {"type": "integer", "description": "The unique ID of the desired product to provision."}, "osName": {"type": "string", "description": "The name of the Operating System to provision on this device. Must match name of an operating system product option."}, "tags": {"type": "array", "description": "User specified values.", "default": [], "example": [], "items": {"type": "string"}}}, "type": "object"}, "BareMetalDevice": {"properties": {"customIPXEScriptURL": {"type": "string", "description": "URL of custom iPXE script used to provision device"}, "productName": {"type": "string", "description": "The name of the product associated with this device."}, "powerStatus": {"type": "string", "description": "ON|OFF"}, "primaryIp": {"type": "string", "description": "The first assigned public IP for accessing this device."}, "locationName": {"type": "string", "description": "A facility code. For example `NYC1`."}, "script": {"type": "string", "description": "The post-install/cloud-init script used during this device's last provisioning."}, "publicSshKeyId": {"type": "integer"}, "customIPXEScriptContents": {"type": "string", "description": "Contents of custom iPXE used to provision device"}, "hostname": {"type": "string", "description": "The user specified hostname for the device. Note: If the hostname is changed in the portal or on the device itself this value may not reflect the actual hostname on the device."}, "osName": {"type": "string", "description": "The name of the operating system currently installed on this device. Note: If you manually reload your own OS over IPMI this value may not reflect the OS currently on your device."}, "orderId": {"type": "integer", "description": "The unique ID of the order for this device."}, "vlanId": {"type": "integer"}, "serviceId": {"type": "integer", "description": "The unique ID of the service associated with this device."}, "period": {"type": "string", "description": "This device's service's billing period.", "example": "hourly"}, "productId": {"type": "integer", "description": "The unique ID of the product associated with this device."}, "deviceId": {"type": "integer", "description": "The unique ID of the device."}, "tags": {"type": "array", "description": "User specified values.", "items": {"type": "string"}}}, "type": "object"}, "BareMetalDeviceUpdate": {"required": ["hostname", "osName"], "properties": {"customIPXEScriptURL": {"type": "string", "description": "URL to download custom iPXE script if not specifying contents in entirety. If both script URL and contents are not specified, the last iPXE script contents are used if OS selection requires an iPXE script."}, "script": {"type": "string", "description": "A Cloud-Init script or a post-install script (Bash for Linux or Powershell for Windows)."}, "publicSshKeyId": {"type": "integer"}, "customIPXEScriptContents": {"type": "string", "description": "Contents of iPXE script if not specifying URL. If both script URL and contents are not specified, the last iPXE script contents are used if OS selection requires an iPXE script."}, "hostname": {"type": "string", "description": "A FQDN for the device. For example: `example.hivelocity.net`"}, "ignitionId": {"type": "integer", "description": "The unique ID of an Ignition File for FlatcarOS provisions."}, "forceReload": {"type": "boolean", "description": "Whether to force a reload even if fields have not changed", "default": false, "example": false}, "osName": {"type": "string", "description": "The name of the Operating System to provision on this device. Must match name of an operating system product option."}, "tags": {"type": "array", "items": {"type": "string"}}}, "type": "object"}, "BareMetalDeviceBatchCreate": {"properties": {"devices": {"type": "array", "description": "List of devices to provision.", "items": {"$ref": "#/definitions/BareMetalDeviceCreate"}}, "orderGroupId": {"type": "integer", "description": "Unique ID to identify the group order."}}, "type": "object"}, "BareMetalDeviceBatch": {"properties": {"devices": {"type": "array", "description": "List of provisioned devices.", "items": {"$ref": "#/definitions/BareMetalDevice"}}, "orderGroupId": {"type": "integer", "description": "Unique ID of the group order."}}, "type": "object"}, "BillingInfoVerification": {"required": ["id"], "properties": {"provisionOrderId": {"type": "integer", "description": "The order ID associated with this billing ID"}, "verificationAmount": {"type": "number", "description": "The verification amount posted to the financial institution associated with the billing ID"}, "id": {"type": "integer", "description": "The unique Billing ID used to associate Billing Info"}}, "type": "object"}, "BillingInfo": {"properties": {"achBank": {"type": "string", "description": "The name of the bank associated with the billing ID"}, "email": {"type": "string", "description": "The email address associated with the billing ID"}, "zip": {"type": "string", "description": "The zip/postal code associated with the billing ID"}, "country": {"type": "string", "description": "The country associated with the billing ID"}, "address": {"type": "string", "description": "The street address associated with the billing ID"}, "achType": {"type": "string", "description": "The bank account type (Checking or Savings)"}, "ccType": {"type": "string", "description": "The credit card network associated with the billing ID"}, "status": {"type": "integer", "description": "The active status associated with the billing ID (0/1)"}, "clientId": {"type": "integer", "description": "The identification number for the client associated with the Billing info ID"}, "pendingVerification": {"type": "boolean", "description": "Yes or No for the Pending Verification status"}, "id": {"type": "integer", "description": "The unique Billing ID used to associate Billing Info"}, "ccExpire": {"type": "string", "description": "The expiration date for the credit card"}, "city": {"type": "string", "description": "The city associated with the billing ID in question"}, "last": {"type": "string", "description": "The last name of the individual associated with the billing ID"}, "state": {"type": "string", "description": "The state associated with the billing ID"}, "paymentType": {"type": "string", "description": "The type of payment associated with the billing ID ie: CC, ACH etc"}, "phone": {"type": "string", "description": "The phone number associated with the billing ID"}, "achAba": {"type": "string", "description": "The bank routing number"}, "achAccount": {"type": "string", "description": "The bank account number"}, "company": {"type": "string", "description": "The company name associated with the billing ID"}, "isCCVerified": {"type": "boolean", "description": "The verification status of the Credit Card in question"}, "first": {"type": "string", "description": "The first name of the individual associated with the billing ID"}, "ccNum": {"type": "string", "description": "The credit card account number"}}, "type": "object"}, "Credit": {"properties": {"id": {"type": "integer", "description": "The ID corresponding to a particular credit"}, "amount": {"type": "number", "description": "The amount of credit associated with the credit ID"}, "balance": {"type": "number", "description": "The amount of credit available for use associated with the credit ID"}, "clientId": {"type": "integer", "description": "The client ID associated with the credit ID"}, "created": {"type": "integer", "description": "The created date/time of the credit"}, "orderId": {"type": "integer", "description": "The order ID associated with the credit ID"}, "reason": {"type": "string", "description": "The reason code for the creation of the credit"}, "status": {"type": "string", "description": "The status of the credit"}, "billingInfoId": {"type": "integer", "description": "The Billing Info ID used to purchase the credits on this account"}}, "type": "object"}, "ContactCreate": {"required": ["active", "email", "fullName"], "properties": {"password": {"type": "string", "default": "7e9fb033c25d84bc5eece605000e43d0"}, "description": {"type": "string"}, "fullName": {"type": "string"}, "email": {"type": "string"}, "active": {"type": "integer"}, "phone": {"type": "string"}}, "type": "object"}, "Contact-dump": {"required": ["active", "email", "fullName"], "properties": {"contactId": {"type": "integer"}, "description": {"type": "string"}, "fullName": {"type": "string"}, "isClient": {"type": "boolean"}, "email": {"type": "string"}, "referralCode": {"type": "string"}, "active": {"type": "integer"}, "clientId": {"type": "integer"}, "phone": {"type": "string"}}, "type": "object"}, "ContactUpdate": {"properties": {"description": {"type": "string"}, "fullName": {"type": "string"}, "email": {"type": "string"}, "active": {"type": "integer"}, "phone": {"type": "string"}}, "type": "object"}, "Password": {"required": ["newPassword", "password"], "properties": {"password": {"type": "string"}, "newPassword": {"type": "string"}}, "type": "object"}, "PasswordRequest": {"required": ["email"], "properties": {"email": {"type": "string"}}, "type": "object"}, "PasswordResponse": {"required": ["password", "token"], "properties": {"password": {"type": "string"}, "token": {"type": "string"}}, "type": "object"}, "Device-dump": {"required": ["name"], "properties": {"deviceId": {"type": "integer", "description": "The unique ID of the device."}, "name": {"type": "string", "description": "User given custom name."}, "status": {"type": "string", "description": "active|inactive"}, "deviceType": {"type": "string", "description": "Generic description of device. Usually type and rack unit size."}, "deviceTypeGroup": {"type": "string", "description": "Generic group"}, "powerStatus": {"type": "object", "description": "ON|OFF"}, "hasCancellation": {"type": "boolean", "description": "True if device has active cancellation request."}, "isManaged": {"type": "boolean", "description": "True if device enrolled in managed services."}, "isReload": {"type": "boolean", "description": "True if device currently reloading."}, "monitorsUp": {"type": "integer", "description": "# of passing device monitors"}, "monitorsTotal": {"type": "integer", "description": "Total # device monitors"}, "managedAlertsTotal": {"type": "integer", "description": "# of managed service alerts."}, "ports": {"type": "array", "description": "Device Ports (Network Interfaces).", "items": {"type": "object"}}, "hostname": {"type": "string", "description": "a fqdn for the device. for example: `example.hivelocity.net`."}, "ipmiEnabled": {"type": "boolean", "description": "True if device is accessible over IPMI by customer."}, "displayedTags": {"type": "array", "description": "List containing key/values of device info based on tag order.", "items": {"type": "object"}}, "tags": {"type": "array", "description": "List of all user set device tags.", "items": {"type": "string"}}, "location": {"type": "object", "description": "Detailed information on the device location."}, "networkAutomation": {"type": "object", "description": "Network Automation status for device."}, "primaryIp": {"type": "string", "description": "The first assigned public IP for accessing this device."}, "ipmiAddress": {"type": "object", "description": "IP address for IPMI connection. Requires you to whitelist your current IP or be on IPMI VPN."}, "serviceMonitors": {"type": "array", "items": {"type": "string"}}, "billingInfo": {"type": "object", "description": "If set, detailed info on this device's billing method. Otherwise null. When null the accounts default billing info is used for payments."}, "servicePlan": {"type": "integer", "description": "The unique ID of the associated service."}, "lastInvoiceId": {"type": "integer", "description": "The unique ID of the last invoice for this device."}, "selfProvisioning": {"type": "boolean", "description": "True if instant server."}, "metadata": {"type": "object", "description": "Additional metadata."}, "spsStatus": {"type": "string", "description": "BUILDING|IPMI_READY|PROVISIONABLE|RESERVED|WAIT_FOR_PXE|PROVISION_STARTED|PROVISION_WAIT_FOR_ADDONS|PROVISION_FINISHED|WAIT_TO_COMPLETE_ORDER|WAIT_TO_ASSIGN_SERVICE|WAIT_FOR_HARDWARE_SCAN|IN_USE|RELOADING|DEVICE_READY_TO_TEST|DEVICE_READY_TO_WIPE|DEVICE_READY_TO_UPGRADE_FIRMWARE|FAILED|CLEANUP_MOVE_TO_FAILED|IN_REVIEW"}}, "type": "object"}, "DeviceUpdate": {"properties": {"name": {"type": "string", "example": "User given custom name"}, "hostname": {"type": "string", "description": "A FQDN for the device. For example: `example.hivelocity.net`.", "example": "server1.mydomain.com"}}, "type": "object"}, "DevicePower": {"required": ["powerStatus"], "properties": {"powerStatus": {"type": "string", "description": "ON|OFF"}}, "type": "object"}, "DeviceTag": {"properties": {"tags": {"type": "array", "description": "List of user set device tags.", "items": {"type": "string"}}}, "type": "object"}, "DeviceIPMIThresholds": {"required": ["thresholds"], "properties": {"thresholds": {"type": "object", "description": "Alert thresholds for IPMI sensor values."}}, "type": "object"}, "UpdateDevicesIPMIThresholds": {"required": ["device_ids", "thresholds"], "properties": {"device_ids": {"type": "array", "description": "List of unique device IDs.", "items": {"type": "integer"}}, "thresholds": {"type": "object", "description": "Alert thresholds for IPMI sensor values."}}, "type": "object"}, "DevicesIPMIThresholds": {"required": ["devices"], "properties": {"devices": {"type": "object"}}, "type": "object"}, "DeviceIPMIInfo": {"properties": {"info": {"$ref": "#/definitions/IPMIInfo"}, "sensors": {"type": "array", "items": {"$ref": "#/definitions/IPMISensor"}}}, "type": "object"}, "IPMIInfo": {"properties": {"deviceRevision": {"type": "string"}, "manufacturerName": {"type": "string"}, "auxFirmwareRevInfo": {"type": "string"}, "bridge": {"type": "string"}, "deviceId": {"type": "string", "description": "The IPMI ID of the device."}, "ipmbEventReceiver": {"type": "string"}, "sensorDevice": {"type": "string"}, "ipmiVersion": {"type": "string"}, "selDevice": {"type": "string"}, "sdrRepositoryDevice": {"type": "string"}, "deviceSDRs": {"type": "string"}, "chassisDevice": {"type": "string"}, "firmwareRevision": {"type": "string"}, "manufacturerId": {"type": "string"}, "deviceAvailable": {"type": "string"}, "fruInventoryDevice": {"type": "string"}, "productId": {"type": "string"}, "ipmbEventGenerator": {"type": "string"}}, "type": "object"}, "IPMISensor": {"properties": {"units": {"type": "string"}, "name": {"type": "string"}, "reading": {"type": "number"}, "status": {"type": "boolean"}, "group": {"type": "string"}, "sensorId": {"type": "string"}}, "type": "object"}, "IPMILoginData": {"properties": {"password": {"type": "string", "description": "Password for IPMI console."}, "drivertype": {"type": "string"}, "username": {"type": "string", "description": "Username for IPMI console."}, "host": {"type": "string", "description": "IP for IPMI access. Requires your current IP to be whitelisted or the IPMI VPN."}}, "type": "object"}, "IPMIValidLogin": {"required": ["valid"], "properties": {"valid": {"type": "boolean"}}, "type": "object"}, "DeviceInitialCreds": {"properties": {"passwordReturnsUntil": {"type": "integer", "description": "Date password will expire from API."}, "user": {"type": "string", "description": "User for initial ssh access."}, "password": {"type": "string", "description": "Password for initial ssh access. Will expire from api 7 days after initial provision."}, "port": {"type": "integer", "description": "Port for initial ssh access."}, "lockerUrl": {"type": "string", "description": "Link to encrypted locker containing password for initial ssh access. Locker contents be expired from api 7 days after initial provision."}}, "type": "object"}, "DeviceIPMIWhitelistIP": {"required": ["custIp"], "properties": {"custIp": {"type": "string"}}, "type": "object"}, "IPAssignment": {"required": ["version"], "properties": {"version": {"type": "integer", "description": "IP version of this assignment (ipv4 or ipv6)"}, "assignmentId": {"type": "integer", "description": "Unique ID of this assignment"}, "clientId": {"type": "integer", "description": "Unique ID of the assignment owner", "example": 0}, "subnet": {"type": "string", "description": "CIDR representation of this assignment."}, "netmask": {"type": "string", "description": "Netmask for this assignment."}, "broadcastIp": {"type": "string", "description": "Broadcast address for this subnet."}, "gatewayIp": {"type": "string", "description": "Gateway address for this subnet."}, "dnsResolvers": {"type": "array", "description": "DNS resolvers for this subnet. Only applicable to VPS instances.", "example": [], "items": {"type": "string"}}, "firstUsableIp": {"type": "string", "description": "First address available for use by Devices on this subnet."}, "lastUsableIp": {"type": "string", "description": "Last address available for use by Devices on this subnet."}, "usableIps": {"type": "array", "description": "A list of usable IP addresses on assignment. It is only filled for IPv4 subnets.", "example": [], "items": {"type": "string"}}, "facilityCode": {"type": "string", "description": "Facility code of this assignment."}, "description": {"type": "string", "description": "Description for this assignment."}, "deviceId": {"type": "integer", "description": "The device receiving traffic from the assignment."}, "portId": {"type": "integer", "description": "The port receiving traffic from the assignment."}, "vlanId": {"type": "integer", "description": "The VLAN receiving traffic from the assignment."}, "nextHopIp": {"type": "string", "description": "Next Hop IP address, if this assignment is statically routed."}}, "type": "object"}, "DevicePortsUpdate": {"properties": {"ports": {"type": "array", "items": {"$ref": "#/definitions/DevicePortUpdate"}}}, "type": "object"}, "DevicePortUpdate": {"required": ["ipAssignments", "portId"], "properties": {"portId": {"type": "integer", "description": "The unique ID of the port."}, "enabled": {"type": "boolean", "default": true}, "ipAssignments": {"type": "array", "description": "IP Assignments IDs currently routed to this port.", "items": {"type": "integer"}}, "nativeVlanId": {"type": "integer", "description": "The unique ID of the port's native vlan, if applicable. Send value `0` to remove the native vlan from this port.", "default": 0}}, "type": "object"}, "DevicePort": {"required": ["private"], "properties": {"portId": {"type": "integer", "description": "The unique ID of the port."}, "mtu": {"type": "integer"}, "nativeVlanTag": {"type": "integer", "description": "The vlan tag of the port's native vlan, if applicable."}, "deviceId": {"type": "integer", "description": "The unique ID of the port's device."}, "name": {"type": "string"}, "status": {"type": "string", "description": "ENABLED|DISABLED|UNKOWN"}, "ips": {"type": "array", "description": "IPs applied to this port.", "items": {"$ref": "#/definitions/IPAssignment"}}, "type": {"type": "string", "description": "Indicates if is a bond interface. If not, indicates the Mbps rate of the port."}, "clientId": {"type": "integer", "description": "Your client account's unique ID.", "example": 0}, "private": {"type": "boolean"}, "nativeVlanId": {"type": "integer", "description": "The unique ID of the native VLAN, if applicable."}}, "type": "object"}, "NetworkTask-dump": {"properties": {"result": {"type": "string", "description": "Success|Pending|Failed. Null value also means Pending."}, "metaData": {"type": "string", "description": "Key value arguments used to trigger the task."}, "deviceId": {"type": "integer", "description": "Unique ID of the target device."}, "taskId": {"type": "string", "description": "Unique ID of the network task."}, "taskUpdated": {"type": "object", "description": "Timestamp of most recent activity taken on the network task. This will update multiple times for multi-step tasks."}, "clientId": {"type": "integer", "description": "Unique ID of the client triggering the task."}, "taskCreated": {"type": "object", "description": "Timestamp of task creation date."}}, "type": "object"}, "EffectiveIgnitionResponse": {"required": ["contents"], "properties": {"contents": {"type": "string"}}, "type": "object"}, "PreviewEffectiveIgnition": {"required": ["ignition"], "properties": {"bonded": {"type": "boolean", "default": false, "example": false}, "password": {"type": "string"}, "ignition": {"type": "object"}, "primaryInterface": {"$ref": "#/definitions/PrimaryInterface"}, "hostname": {"type": "string"}, "publicKeys": {"type": "array", "default": [], "example": [], "items": {"type": "string"}}}, "type": "object"}, "PrimaryInterface": {"properties": {"subnet": {"type": "string"}, "gateway": {"type": "string"}, "ip": {"type": "string"}, "dnsServers": {"type": "array", "example": [], "items": {"type": "string"}}}, "type": "object"}, "PreviewEffectiveIgnitionResponse": {"properties": {"result": {"type": "object"}, "modifications": {"type": "array", "items": {"$ref": "#/definitions/Modification"}}, "original": {"type": "object"}}, "type": "object"}, "Modification": {"properties": {"path": {"type": "string"}, "reason": {"type": "string"}, "contents": {"type": "object"}}, "type": "object"}, "Services": {"type": "object", "additionalProperties": {"type": "array", "items": {"$ref": "#/definitions/Service"}}}, "DomainCreate": {"required": ["name"], "properties": {"name": {"type": "string"}}, "type": "object"}, "DomainReturn": {"required": ["directsTo", "domainId", "name"], "properties": {"name": {"type": "string"}, "directsTo": {"type": "string"}, "summary": {"type": "object"}, "domainId": {"type": "integer"}}, "type": "object"}, "ARecord": {"required": ["name", "ttl"], "properties": {"name": {"type": "string"}, "ttl": {"type": "integer"}, "addresses": {"type": "array", "items": {"type": "string"}}}, "type": "object"}, "AAAARecordCreate": {"required": ["address", "name", "ttl"], "properties": {"name": {"type": "string"}, "ttl": {"type": "integer"}, "address": {"type": "string"}}, "type": "object"}, "AAAARecordReturn": {"required": ["domainId", "name", "ttl", "type"], "properties": {"ttl": {"type": "integer"}, "id": {"type": "integer"}, "name": {"type": "string"}, "domainId": {"type": "integer"}, "type": {"type": "string"}, "address": {"type": "string"}}, "type": "object"}, "AAAARecordUpdate": {"properties": {"name": {"type": "string"}, "ttl": {"type": "integer"}, "address": {"type": "string"}}, "type": "object"}, "MXRecordCreate": {"required": ["exchange", "name", "preference", "ttl"], "properties": {"name": {"type": "string"}, "preference": {"type": "integer"}, "ttl": {"type": "integer"}, "exchange": {"type": "string"}}, "type": "object"}, "MXRecordReturn": {"required": ["domainId", "exchange", "id", "name", "preference", "ttl", "type"], "properties": {"preference": {"type": "integer"}, "ttl": {"type": "integer"}, "id": {"type": "integer"}, "name": {"type": "string"}, "exchange": {"type": "string"}, "domainId": {"type": "integer"}, "type": {"type": "string"}}, "type": "object"}, "MXRecordUpdate": {"required": ["exchange", "preference"], "properties": {"name": {"type": "string"}, "preference": {"type": "integer"}, "ttl": {"type": "integer"}, "exchange": {"type": "string"}}, "type": "object"}, "PTRRecordReturn": {"properties": {"disabled": {"type": "boolean"}, "ttl": {"type": "integer"}, "id": {"type": "integer"}, "name": {"type": "string"}, "domainId": {"type": "integer"}, "type": {"type": "string"}, "address": {"type": "string"}}, "type": "object"}, "PTRRecordUpdate": {"required": ["name"], "properties": {"name": {"type": "string"}, "ttl": {"type": "integer"}}, "type": "object"}, "CreateIgnition": {"properties": {"name": {"type": "string"}, "contents": {"type": "string"}}, "type": "object"}, "IgnitionResponse": {"properties": {"name": {"type": "string"}, "contents": {"type": "string"}, "id": {"type": "integer"}}, "type": "object"}, "UpdateIgnition": {"required": ["contents"], "properties": {"contents": {"type": "string"}}, "type": "object"}, "Inventory": {"type": "object", "additionalProperties": {"type": "array", "items": {"$ref": "#/definitions/Stock"}}}, "Stock": {"properties": {"product_disabled_billing_periods": {"type": "array", "description": "Orders for the periods in the array will fail. Possible values: hourly|monthly|quarterly|semi-annually|biennial|triennial", "items": {"type": "string"}}, "product_original_price": {"type": "number", "description": "Retail price of product. Use with `product_on_sale`."}, "is_vps": {"type": "boolean", "description": "true|false. If SPS product is VPS type"}, "triennial_location_premium": {"type": "number", "description": "Additional triennial fee for this `product_id` in this `data_center`."}, "product_bandwidth": {"type": "string", "description": "Human readable networking specs in the format: Free Outbound Transfer / NIC Size"}, "product_display_price": {"type": "number", "description": "*DEPRECATED*."}, "product_on_sale": {"type": "boolean", "description": "true|false. Use with `product_original_price`."}, "stock": {"type": "string", "description": "available|limited|unavailable. Limited denotes minimal stock."}, "product_name": {"type": "string", "description": "The unique name of this product."}, "product_monthly_price": {"type": "number", "description": "Price per month."}, "location_option_id": {"type": "integer", "description": "Location option ID for datacenter"}, "edge": {"type": "boolean", "description": "true|false if edge site."}, "biennial_location_premium": {"type": "number", "description": "Additional biennial fee for this `product_id` in this `data_center`."}, "is_sps": {"type": "boolean", "description": "true|false. If product is SPS"}, "quarterly_location_premium": {"type": "number", "description": "Additional quarterly fee for this `product_id` in this `data_center`."}, "product_id": {"type": "integer", "description": "The unique ID of this product."}, "product_gpu": {"type": "string", "description": "Human readable GPU specs."}, "monthly_location_premium": {"type": "number", "description": "Additional monthly fee for this `product_id` in this `data_center`."}, "product_cpu": {"type": "string", "description": "Human readable CPU specs."}, "semi_annually_location_premium": {"type": "number", "description": "Additional semi-annual fee for this `product_id` in this `data_center`."}, "product_quarterly_price": {"type": "number", "description": "Price per quarter (3 months)."}, "product_drive": {"type": "string", "description": "Human readable drive specs. Can include multiple drives."}, "hourly_location_premium": {"type": "number", "description": "Additional hourly fee for this `product_id` in this `data_center`."}, "product_cpu_cores": {"type": "string", "description": "Human readable CPU core and thread info in HTML format."}, "product_biennial_price": {"type": "number", "description": "Price per 2 year period (24 months)."}, "core": {"type": "boolean", "description": "true|false if core site."}, "processor_info": {"type": "object", "description": "JSON CPU info for cores, threads, sockets, and vCPUs."}, "product_annually_price": {"type": "number", "description": "Price per year (12 months)."}, "product_memory": {"type": "string", "description": "Human readable memory specs."}, "product_semi_annually_price": {"type": "number", "description": "Price per half year (6 months)."}, "product_hourly_price": {"type": "number", "description": "Price per hour."}, "data_center": {"type": "string", "description": "A facility code. For example `NYC1`."}, "product_triennial_price": {"type": "number", "description": "Price per 3 year period (36 months)."}, "annually_location_premium": {"type": "number", "description": "Additional annual fee for this `product_id` in this `data_center`."}}, "type": "object"}, "IpAssignmentRequest": {"properties": {"prefixLength": {"type": "integer", "description": "For example: `/27`."}, "facilityCode": {"type": "string", "description": "For example: `NYC1`."}, "purpose": {"type": "string", "description": "List the intended use of each IP in the subnet. Required by ICANN."}}, "type": "object"}, "IpAssignmentCombine": {"properties": {"assignmentIds": {"type": "array", "description": "List of Unique assignment IDs.", "items": {"type": "integer"}}}, "type": "object"}, "IpAssignmentPut": {"properties": {"nextHopIp": {"type": "string", "description": "Route traffic from the IPs in the assignment to this IPv4 or IPv6 IP."}}, "type": "object"}, "Order-dump": {"properties": {"info": {"type": "object"}, "status": {"type": "string"}, "owner": {"type": "string"}, "orderId": {"type": "integer"}, "total": {"type": "number"}}, "type": "object"}, "OrderGroupCreate": {"required": ["name"], "properties": {"name": {"type": "string"}, "same_rack": {"type": "boolean", "default": false}}, "type": "object"}, "OrderGroup": {"properties": {"name": {"type": "string"}, "same_rack": {"type": "boolean"}, "device_ids": {"type": "array", "items": {"type": "integer"}}, "id": {"type": "integer"}}, "type": "object"}, "OrderGroupUpdate": {"required": ["name"], "properties": {"name": {"type": "string"}}, "type": "object"}, "Permission": {"required": ["permissions", "userId"], "properties": {"permissions": {"type": "array", "items": {"type": "string"}}, "userId": {"type": "integer"}}, "type": "object"}, "PermissionReturn": {"properties": {"name": {"type": "string"}}, "type": "object"}, "Options": {"type": "object", "additionalProperties": {"type": "array", "items": {"$ref": "#/definitions/Option-dump"}}}, "Option-dump": {"required": ["name"], "properties": {"id": {"type": "integer", "description": "Unique ID of the option. Stays the same across products."}, "name": {"type": "string", "description": "Unique option name."}, "operatingSystemFeatures": {"$ref": "#/definitions/OperatingSystem"}, "currency": {"type": "string", "description": "USD|other"}, "monthlyPrice": {"type": "number", "description": "Monthly price of the option."}, "expressions": {"type": "array", "description": "Used with `tags` to determine option compatibility. See product docs.", "items": {"type": "string"}}, "tags": {"type": "array", "description": "Used with `expressions` to determine option compatibility. See product docs.", "items": {"type": "string"}}}, "type": "object"}, "OperatingSystem": {"properties": {"postInstall": {"type": "boolean"}, "sshKey": {"type": "boolean"}, "cloudInit": {"type": "boolean"}}, "type": "object"}, "ProductOption": {"properties": {"productId": {"type": "integer", "description": "Unique product id."}, "options": {"type": "object", "description": "List of available options."}, "pricing": {"type": "object", "description": "*DEPRECATED*"}}, "type": "object"}, "Deployment": {"properties": {"orderNumber": {"type": "string", "example": ""}, "deploymentConfiguration": {"type": "array", "items": {"type": "object"}}, "price": {"type": "number"}, "startedProvisioning": {"type": "boolean"}, "empty": {"type": "boolean"}, "deploymentName": {"type": "string"}, "deploymentId": {"type": "integer"}}, "type": "object"}, "DeploymentStart": {"required": ["billingInfo"], "properties": {"billingInfo": {"type": "integer"}, "script": {"type": "string"}}, "type": "object"}, "DeploymentCustomization": {"required": ["hostnames", "operatingSystem", "productId"], "properties": {"locationCode": {"type": "string", "default": ""}, "quantity": {"type": "integer", "default": 1}, "additionalNotes": {"type": "array", "items": {"type": "string"}}, "operatingSystem": {"type": "string", "description": "Operating System's Name or ID"}, "customIPXEScriptContents": {"type": "string", "description": "Contents of iPXE script if not supplying URL"}, "hostnames": {"type": "array", "items": {"type": "string"}}, "publicSshKeyId": {"type": "integer", "description": "ID of SSH Key to use for deployment"}, "billingPeriod": {"type": "string", "description": "must be one of ['monthly', 'quarterly', 'semi-annually', 'annually', 'biennial', 'triennial', 'hourly']", "default": "monthly"}, "productId": {"type": "integer"}, "ignitionIds": {"type": "array", "description": "Specify Ignition file ID for CoreOS/Flatcar provisions", "default": [], "example": [], "items": {"type": "integer"}}, "options": {"type": "array", "default": [], "items": {"type": "integer"}}, "forceDeviceIds": {"type": "array", "description": "Either deploy these Device IDs or fail", "default": [], "example": [], "items": {"type": "integer"}}, "customIPXEScriptURL": {"type": "string", "description": "URL to download custom iPXE script if not supplying script in entirety"}}, "type": "object"}, "FastService-dump": {"properties": {"serviceId": {"type": "integer"}, "created": {"type": "integer"}, "billedPrice": {"type": "number"}, "billedPricePerPeriod": {"type": "number"}, "serviceCost": {"type": "number"}, "lastRenew": {"type": "integer"}, "renewDate": {"type": "integer"}, "quantity": {"type": "number"}, "orderId": {"type": "integer"}, "status": {"type": "string"}, "period": {"type": "string"}, "discount": {"type": "number"}, "discountType": {"type": "string"}, "discountedCost": {"type": "number"}, "serviceDiscount": {"type": "number"}, "serviceDiscountPerPeriod": {"type": "number"}, "ipAddress": {"type": "string"}, "cancelAfter": {"type": "integer"}, "startDate": {"type": "integer"}, "endDate": {"type": "integer"}, "serviceOptions": {"type": "array", "items": {"$ref": "#/definitions/ServiceOptionData"}}, "usage": {"type": "object"}, "serviceDevices": {"type": "array", "items": {"type": "object"}}, "childServices": {"type": "array", "items": {"type": "object"}}, "productId": {"type": "integer"}, "productName": {"type": "string"}, "reseller": {"type": "string"}, "serviceType": {"type": "string"}, "contractTerm": {"type": "integer"}, "billingInfoId": {"type": "integer"}, "autoBill": {"type": "boolean"}, "colocationCharge": {"type": "number"}, "resellerBmaasCharge": {"type": "number"}, "facilityName": {"type": "string"}, "typeCode": {"type": "string", "description": "The service type code. The list of service types can be accessed on https://core.hivelocity.net/api/v2/service/types ."}, "bandwidthBilling": {"$ref": "#/definitions/ServiceBandwidthBilling"}}, "type": "object"}, "ServiceOptionData": {"properties": {"serviceOptionId": {"type": "integer"}, "name": {"type": "string"}, "optionId": {"type": "integer"}, "upgradeName": {"type": "string"}, "groupName": {"type": "string"}, "invoiceHide": {"type": "string"}}, "type": "object"}, "ServiceBandwidthBilling": {"properties": {"billingMethod": {"type": "string"}, "includedTransferUnit": {"type": "string"}, "notification": {"type": "string"}, "overageUnit": {"type": "string"}}, "type": "object"}, "Service": {"properties": {"serviceId": {"type": "integer"}, "created": {"type": "integer"}, "billedPrice": {"type": "number"}, "billedPricePerPeriod": {"type": "number"}, "serviceCost": {"type": "number"}, "lastRenew": {"type": "integer"}, "renewDate": {"type": "integer"}, "quantity": {"type": "number"}, "orderId": {"type": "integer"}, "status": {"type": "string"}, "period": {"type": "string"}, "discount": {"type": "number"}, "discountType": {"type": "string"}, "discountedCost": {"type": "number"}, "serviceDiscount": {"type": "number"}, "serviceDiscountPerPeriod": {"type": "number"}, "ipAddress": {"type": "string"}, "cancelAfter": {"type": "integer"}, "startDate": {"type": "integer"}, "endDate": {"type": "integer"}, "serviceOptions": {"type": "array", "items": {"$ref": "#/definitions/ServiceOption"}}, "usage": {"type": "object"}, "serviceDevices": {"type": "array", "items": {"type": "object"}}, "childServices": {"type": "array", "items": {"type": "object"}}, "productId": {"type": "integer"}, "productName": {"type": "string"}, "reseller": {"type": "string"}, "serviceType": {"type": "string"}, "contractTerm": {"type": "integer"}, "billingInfoId": {"type": "integer"}, "autoBill": {"type": "boolean"}, "colocationCharge": {"type": "number"}, "resellerBmaasCharge": {"type": "number"}, "facilityName": {"type": "string"}, "typeCode": {"type": "string", "description": "The service type code. The list of service types can be accessed on https://core.hivelocity.net/api/v2/service/types ."}, "bandwidthBilling": {"$ref": "#/definitions/ServiceBandwidthBilling"}}, "type": "object"}, "ServiceOption": {"properties": {"optionId": {"type": "integer"}, "upgradeId": {"type": "integer", "description": "Upgrade ID of hardware option"}, "optionName": {"type": "string", "description": "Option name of hardware option"}, "upgradeName": {"type": "string", "description": "Upgrade name of hardware option"}}, "type": "object"}, "ServiceType": {"properties": {"name": {"type": "string", "description": "The name of the service type"}, "code": {"type": "string", "description": "The unique Code of the service type"}}, "type": "object"}, "SshKey": {"required": ["name", "publicKey"], "properties": {"name": {"type": "string"}, "publicKey": {"type": "string", "description": "Public key content (RSA or Ed25519 supported)"}}, "type": "object"}, "SshKeyResponse": {"properties": {"sshKeyId": {"type": "integer"}, "publicKey": {"type": "string"}, "name": {"type": "string"}}, "type": "object"}, "SshKeyUpdate": {"properties": {"name": {"type": "string"}, "publicKey": {"type": "string", "description": "Public key content (RSA or Ed25519 supported)"}}, "type": "object"}, "VlanCreate": {"required": ["facilityCode", "type"], "properties": {"facilityCode": {"type": "string", "description": "The Facility where the VLAN will be created, for example: `NYC1`. Only Devices from the same Facility are allowed in the VLANs."}, "type": {"type": "string", "description": "Choose `public` if you want to be able to assign IPs to the VLAN, making it reachable from the internet. Choose `private` if the VLAN should never be reachable from the internet. All VLANs are subject to traffic billing and overages, with the exception of private VLAN traffic on unbonded Devices.", "example": "private", "enum": ["public", "private"]}}, "type": "object"}, "Vlan": {"properties": {"facilityCode": {"type": "string", "description": "For example: `NYC1`."}, "automated": {"type": "boolean", "description": "If true, VLAN can be automated via API. If false, contact support to enable automation."}, "qInQ": {"type": "boolean", "description": "If true, VLAN is configured in Q-in-Q Mode. Automation is not currently supported on Q-in-Q VLANs."}, "ipIds": {"type": "array", "description": "Unique IDs of IP Assignments.", "items": {"type": "integer"}}, "portIds": {"type": "array", "description": "Unique IDs of ports or bonds.", "items": {"type": "integer"}}, "vlanId": {"type": "integer", "description": "Unique ID of the VLAN."}, "type": {"type": "string", "description": "If `public`, this VLAN can have IPs assigned to become reachable from the internet. If `private`, this VLAN can not have IPs assigned and will never be reachabled from the internet. All VLANs are subject to traffic billing and overages, with the exception of private VLAN traffic on unbonded Devices."}, "vlanTag": {"type": "integer", "description": "The VLAN Tag id from the switch. Use this value when configuring your OS interfaces to use the VLAN."}}, "type": "object"}, "VlanUpdate": {"required": ["portIds"], "properties": {"ipIds": {"type": "array", "description": "Unique IDs of IP Assignments.", "default": [], "items": {"type": "integer"}}, "portIds": {"type": "array", "description": "Unique IDs of ports or bonds.", "items": {"type": "integer"}}}, "type": "object"}, "VPSUpdate": {"properties": {"productId": {"type": "integer", "description": "ID of VPS product to scale to"}, "cloudInit": {"type": "string", "description": "Cloud-init script"}, "sshKeyIds": {"type": "array", "description": "List of SSH Key IDs", "default": [], "items": {"type": "integer"}}}, "type": "object"}, "VPS": {"properties": {"vcpu": {"type": "integer", "description": "Number of vCPUs"}, "facilityCode": {"type": "string", "description": "Facility Code. Example: `LAX3`"}, "templateId": {"type": "string", "description": "Template used for the install"}, "deviceId": {"type": "integer", "description": "Device ID"}, "status": {"type": "string", "description": "VPS Instance Status. Example: `Running`"}, "password": {"type": "string", "description": "VPS Instance root password"}, "memory": {"type": "integer", "description": "Memory in MB"}, "isoId": {"type": "string", "description": "The unique ID of the VPS ISO."}, "sshKeyIds": {"type": "array", "description": "List of SSH Key IDs", "items": {"type": "integer"}}, "nics": {"type": "array", "items": {"description": "Network Interfaces", "allOf": [{"$ref": "#/definitions/VPSNetworkInterface"}]}}}, "type": "object"}, "VPSNetworkInterface": {"properties": {"netmask": {"type": "string", "description": "The netmask assigned to the VPS instance NIC."}, "nicId": {"type": "string", "description": "The unique ID of the VPS instance NIC."}, "ipv6Cidr": {"type": "string", "description": "The IPv6 CIDR assigned to the VPS instance NIC."}, "ipv6Address": {"type": "string", "description": "The IPv6 address assigned to the VPS instance NIC."}, "gateway": {"type": "string", "description": "The gateway assigned to the VPS instance NIC."}, "ipAddress": {"type": "string", "description": "The IP address assigned to the VPS instance NIC."}, "ipv6Gateway": {"type": "string", "description": "The IPv6 gateway assigned to the VPS instance NIC."}}, "type": "object"}, "VPSConsoleAccess": {"properties": {"url": {"type": "string", "description": "URL for console access"}}, "type": "object"}, "VPSEvent": {"properties": {"createdAt": {"type": "string", "format": "date-time", "description": "The created date/time of the VPS instance event."}, "eventId": {"type": "string", "description": "The unique ID corresponding to the event recorded."}, "type": {"type": "string", "description": "The type of event being logged for the VPS instance."}, "state": {"type": "string", "description": "The state of the event at the time of recording ie. Scheduled, Started or Completed."}, "level": {"type": "string", "description": "The level of the event ie. INFO, ERROR or WARNING."}}, "type": "object"}, "VPSISOCreate": {"required": ["bootable", "description", "facilityCode", "name", "url"], "properties": {"facilityCode": {"type": "string", "description": "The facility code associated wth the VPS instance. For example:TPA1."}, "url": {"type": "string", "description": "The URL to be directed to when downloading the VPS instance ISO."}, "name": {"type": "string", "description": "The name of the VPS instance ISO."}, "description": {"type": "string", "description": "The description of the VPS instance ISO."}, "bootable": {"type": "boolean", "description": "Determines whether the VPS instance ISO is bootable or not."}, "clientId": {"type": "integer", "description": "The unique client account ID."}}, "type": "object"}, "VPSISO": {"properties": {"size": {"type": "integer", "description": "The size of the VPS instance ISO."}, "url": {"type": "string", "description": "The URL to be directed to when downloading the VPS instance ISO."}, "name": {"type": "string", "description": "The name of the VPS instance ISO."}, "description": {"type": "string", "description": "The description of the VPS instance ISO."}, "status": {"type": "string", "description": "The status of the VPS instance ISO."}, "bootable": {"type": "boolean", "description": "Determines whether the VPS instance ISO is bootable or not."}, "deviceIds": {"type": "array", "description": "These are the device IDs with the ISO attached.", "items": {"type": "integer"}}, "isoId": {"type": "string", "description": "The unique ID of the VPS instance ISO."}, "ready": {"type": "boolean", "description": "The ready state of the VPS instance ISO."}}, "type": "object"}, "VPSISOAttach": {"required": ["isoId"], "properties": {"isoId": {"type": "string", "description": "The unique ID of the VPS instance ISO."}}, "type": "object"}, "VPSVolumeCreate": {"required": ["deviceId", "size"], "properties": {"size": {"type": "integer", "description": "Disk size in GB"}, "deviceId": {"type": "integer", "description": "Device ID to attach the disk to"}}, "type": "object"}, "VPSVolume": {"properties": {"size": {"type": "integer", "description": "Disk size in bytes"}, "createdAt": {"type": "string", "format": "date-time", "description": "The created date/time of the VPS instance volume."}, "volumeId": {"type": "string", "description": "The unique VPS instance volume ID."}, "deviceId": {"type": "integer", "description": "Device ID the disk is attached to"}, "type": {"type": "string", "description": "Disk type. Options are `ROOT` for root volumes and `DATADISK` for additional disks."}}, "type": "object"}, "VPSSnapshotCreate": {"required": ["facilityCode", "name", "volumeId"], "properties": {"name": {"type": "string", "description": "The name of the VPS instance snapshot."}, "clientId": {"type": "integer", "description": "The unique client account ID."}, "facilityCode": {"type": "string", "description": "The facility code associated with the VPS instance. For example:TPA1."}, "volumeId": {"type": "string", "description": "The unique VPS instance volume ID the snapshot is taken of."}}, "type": "object"}, "VPSSnapshot": {"properties": {"size": {"type": "integer", "description": "Snapshot size in bytes"}, "createdAt": {"type": "string", "format": "date-time", "description": "The created date/tie of the VPS instance snapshot."}, "volumeId": {"type": "string", "description": "The unique VPS instance volume ID the snapshot is taken of."}, "name": {"type": "string", "description": "The name of the VPS instance snapshot."}, "snapshotType": {"type": "string", "description": "Snapshot interval options: HOURLY, DAILY, WEEKLY, MONTHLY."}, "state": {"type": "string", "description": "The state of the snapshot ie. Scheduled, Started or Completed."}, "snapshotId": {"type": "string", "description": "The unique ID associated with the snapshot."}}, "type": "object"}, "VPSSnapshotRestore": {"required": ["facilityCode"], "properties": {"clientId": {"type": "integer", "description": "The unique client acount ID."}, "facilityCode": {"type": "string", "description": "The facility code associated with the VPS instance. For example:TPA1."}}, "type": "object"}, "VPSSnapshotScheduleCreate": {"required": ["facilityCode", "hour", "intervalType", "maxSnapshots", "minute", "timezone", "volumeId"], "properties": {"facilityCode": {"type": "string", "description": "The facility code associated witht he VPS instance. For example:TPA1."}, "volumeId": {"type": "string", "description": "The unique ID of the VPS instance volume to take a snapshot of."}, "timezone": {"type": "string", "description": "Timezone in IANA format. Example: `America/New_York`"}, "minute": {"type": "integer", "description": "The minute of the hour to run the snapshot process (0-59)."}, "day": {"type": "integer", "description": "The day of the month to run th snapshot process (1-28). This is required for Monthly."}, "intervalType": {"type": "string", "description": "Options: `HOURLY`, `DAILY`, `WEEKLY`, `MONTHLY`"}, "hour": {"type": "integer", "description": "The hour of the day to run the snapshot process (0-23)."}, "weekday": {"type": "integer", "description": "The day of the week to run the snapshot process (1-7 with 1 being Monday). This is required for Weekly."}, "clientId": {"type": "integer", "description": "The unique client account ID."}, "maxSnapshots": {"type": "integer", "description": "The maximum number of snapshots to retain at a time for this schedule."}}, "type": "object"}, "VPSSnapshotSchedule": {"properties": {"snapshotScheduleId": {"type": "string", "description": "The unique ID associated with the snapshot schedule."}, "volumeId": {"type": "string", "description": "The unique ID of the VPS instance volume to take a snapshot of."}, "timezone": {"type": "string", "description": "The timezone to use for the snapshot schedule in IANA format. Example: America/New_York."}, "minute": {"type": "integer", "description": "The minute of the hour to run the snapshot process (0-59)."}, "day": {"type": "integer", "description": "The day of the month to run the snapshot process (1-28)."}, "intervalType": {"type": "string", "description": "Snapshot interval options: HOURLY, DAILY, WEEKLY, MONTHLY."}, "hour": {"type": "integer", "description": "The hour of the day to run the snapshot process (0-23)."}, "weekday": {"type": "integer", "description": "The day of the week to run the snapshot process (1-7 with 1 being Monday)."}, "maxSnapshots": {"type": "integer", "description": "The maximum number of snapshots to take within the interval period."}}, "type": "object"}, "WebhookEvent": {"required": ["desc", "name"], "properties": {"name": {"type": "string"}, "desc": {"type": "string"}}, "type": "object"}, "WebhookCreate": {"required": ["event", "url"], "properties": {"name": {"type": "string", "example": "My Webhook"}, "event": {"type": "string"}, "url": {"type": "string"}, "headers": {"type": "object", "example": {}}}, "type": "object"}, "Webhook": {"required": ["event", "name", "url", "webhookId"], "properties": {"webhookId": {"type": "integer"}, "name": {"type": "string"}, "event": {"type": "string"}, "url": {"type": "string"}, "headers": {"type": "object"}}, "type": "object"}, "WebhookUpdate": {"properties": {"name": {"type": "string", "example": "My Webhook"}, "event": {"type": "string"}, "url": {"type": "string"}, "headers": {"type": "object", "example": {}}}, "type": "object"}}, "responses": {"ParseError": {"description": "When a mask can't be parsed"}, "MaskError": {"description": "When any error occurs on mask"}}}