{
  "name": "biznetgio",
  "displayName": "Pulumi BiznetGIO Provider",
  "description": "Unofficial Pulumi provider for Biznet GIO cloud by Shirasaka Ren - NEO Metal, NEO Lite/Lite Pro, NEO GPU, and Object Storage.",
  "keywords": [
    "biznetgio",
    "cloud",
    "indonesia",
    "neo"
  ],
  "homepage": "https://biznetgio.creations.ren",
  "license": "Apache-2.0",
  "repository": "github.com/shirasakaren/pulumi-biznetgio",
  "logoUrl": "https://raw.githubusercontent.com/shirasakaren/pulumi-biznetgio/main/assets/logo.png",
  "pluginDownloadURL": "github://api.github.com/shirasakaren/pulumi-biznetgio",
  "publisher": "shirasakaren",
  "namespace": "biznetgio",
  "language": {
    "dotnet": {
      "packageName": "Shirasakaren.Biznetgio"
    },
    "go": {
      "importBasePath": "github.com/shirasakaren/pulumi-biznetgio/sdk/go/pulumi-biznetgio"
    },
    "java": {
      "basePackage": "ren.shirasaka"
    },
    "nodejs": {
      "packageName": "@shirasakaren/biznetgio"
    },
    "python": {
      "packageName": "pulumi_biznetgio"
    }
  },
  "config": {
    "variables": {
      "apiToken": {
        "type": "string",
        "description": "BiznetGIO API token (x-token header). Falls back to BIZNETGIO_API_KEY.",
        "defaultInfo": {
          "environment": [
            "BIZNETGIO_API_KEY"
          ]
        },
        "secret": true
      },
      "baseUrl": {
        "type": "string",
        "description": "BiznetGIO API base URL. Falls back to BIZNETGIO_BASE_URL.",
        "default": "https://api.portal.biznetgio.com/v1",
        "defaultInfo": {
          "environment": [
            "BIZNETGIO_BASE_URL"
          ]
        }
      }
    }
  },
  "types": {
    "biznetgio:index:BaremetalProduct": {
      "properties": {
        "description": {
          "type": "string",
          "description": "Product description, when present."
        },
        "name": {
          "type": "string",
          "description": "Product name (alias of name/product_name/label)."
        },
        "productId": {
          "type": "integer",
          "description": "Product id, for the `productId` input of Baremetal."
        },
        "raw": {
          "type": "string",
          "description": "Raw JSON of the product item, for anything not modeled yet.",
          "secret": true
        }
      },
      "type": "object",
      "required": [
        "productId",
        "name",
        "description",
        "raw"
      ]
    },
    "biznetgio:index:GpuFlavor": {
      "properties": {
        "flavorId": {
          "type": "integer",
          "description": "Flavor id."
        },
        "name": {
          "type": "string",
          "description": "Flavor name."
        },
        "raw": {
          "type": "string",
          "description": "Raw JSON of the flavor response.",
          "secret": true
        }
      },
      "type": "object",
      "required": [
        "flavorId",
        "name",
        "raw"
      ]
    },
    "biznetgio:index:GpuOnDemandArgs": {
      "properties": {
        "additionalHours": {
          "type": "integer",
          "description": "Additional hours to reserve. Defaults to 0."
        }
      },
      "type": "object"
    },
    "biznetgio:index:GpuProduct": {
      "properties": {
        "categoryName": {
          "type": "string",
          "description": "Category of the product."
        },
        "description": {
          "type": "string",
          "description": "Product description."
        },
        "flavors": {
          "type": "array",
          "items": {
            "$ref": "#/types/biznetgio:index:GpuFlavor"
          },
          "description": "Available flavors for this product."
        },
        "name": {
          "type": "string",
          "description": "Product name."
        },
        "productId": {
          "type": "integer",
          "description": "Product id, use it as GpuInstance productId."
        },
        "raw": {
          "type": "string",
          "description": "Raw JSON of the product response.",
          "secret": true
        }
      },
      "type": "object",
      "required": [
        "productId",
        "name",
        "description",
        "categoryName",
        "flavors",
        "raw"
      ]
    },
    "biznetgio:index:GpuSubscriptionArgs": {
      "properties": {
        "cycle": {
          "type": "string",
          "description": "Billing cycle, e.g. `m` for monthly or `a` for annual."
        }
      },
      "type": "object",
      "required": [
        "cycle"
      ]
    },
    "biznetgio:index:NeoliteLastInvoice": {
      "properties": {
        "date": {
          "type": "string"
        },
        "datepaid": {
          "type": "string"
        },
        "duedate": {
          "type": "string"
        },
        "id": {
          "type": "integer"
        },
        "invoiceType": {
          "type": "string"
        },
        "paidId": {
          "type": "integer"
        },
        "paybefore": {
          "type": "string"
        },
        "status": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "id",
        "paidId",
        "status",
        "date",
        "duedate",
        "paybefore",
        "datepaid",
        "invoiceType"
      ]
    },
    "biznetgio:index:NeoliteOsItem": {
      "properties": {
        "maxcpu": {
          "type": "integer"
        },
        "maxmem": {
          "type": "integer"
        },
        "name": {
          "type": "string"
        },
        "node": {
          "type": "string"
        },
        "vmid": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "vmid",
        "node",
        "name",
        "maxmem",
        "maxcpu"
      ]
    },
    "biznetgio:index:NeolitePlanBilling": {
      "properties": {
        "components": {
          "type": "array",
          "items": {
            "$ref": "#/types/biznetgio:index:NeolitePlanComponent"
          }
        },
        "cycle": {
          "type": "string"
        },
        "label": {
          "type": "string"
        },
        "price": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "label",
        "cycle",
        "price",
        "components"
      ]
    },
    "biznetgio:index:NeolitePlanComponent": {
      "properties": {
        "field": {
          "type": "string"
        },
        "label": {
          "type": "string"
        },
        "prices": {
          "type": "array",
          "items": {
            "$ref": "#/types/biznetgio:index:NeolitePlanPrice"
          }
        }
      },
      "type": "object",
      "required": [
        "label",
        "field",
        "prices"
      ]
    },
    "biznetgio:index:NeolitePlanItem": {
      "properties": {
        "billing": {
          "type": "array",
          "items": {
            "$ref": "#/types/biznetgio:index:NeolitePlanBilling"
          }
        },
        "categoryId": {
          "type": "integer"
        },
        "categoryName": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "options": {
          "$ref": "#/types/biznetgio:index:NeolitePlanOptions"
        },
        "productId": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "productId",
        "name",
        "description",
        "categoryId",
        "categoryName",
        "options",
        "billing"
      ]
    },
    "biznetgio:index:NeolitePlanOptions": {
      "properties": {
        "allowDowngrade": {
          "type": "integer"
        },
        "cores": {
          "type": "integer"
        },
        "memory": {
          "type": "integer"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "type",
        "cores",
        "memory",
        "allowDowngrade"
      ]
    },
    "biznetgio:index:NeolitePlanPrice": {
      "properties": {
        "price": {
          "type": "integer"
        },
        "qtyMax": {
          "type": "integer"
        },
        "qtyMin": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "qtyMin",
        "qtyMax",
        "price"
      ]
    },
    "biznetgio:index:ObjectStorageBucketsBucket": {
      "properties": {
        "acl": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "raw": {
          "type": "string",
          "secret": true
        }
      },
      "type": "object",
      "required": [
        "name",
        "acl",
        "raw"
      ]
    },
    "biznetgio:index:ObjectStorageCredentialsCredential": {
      "properties": {
        "accessKey": {
          "type": "string",
          "secret": true
        },
        "active": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "accessKey",
        "active"
      ]
    },
    "biznetgio:index:ObjectStorageInstancesInstance": {
      "properties": {
        "id": {
          "type": "string"
        },
        "label": {
          "type": "string"
        },
        "productId": {
          "type": "integer"
        },
        "quota": {
          "type": "integer"
        },
        "raw": {
          "type": "string",
          "secret": true
        },
        "status": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "id",
        "label",
        "status",
        "productId",
        "quota",
        "raw"
      ]
    }
  },
  "provider": {
    "properties": {
      "apiToken": {
        "type": "string",
        "description": "BiznetGIO API token (x-token header). Falls back to BIZNETGIO_API_KEY.",
        "defaultInfo": {
          "environment": [
            "BIZNETGIO_API_KEY"
          ]
        },
        "secret": true
      },
      "baseUrl": {
        "type": "string",
        "description": "BiznetGIO API base URL. Falls back to BIZNETGIO_BASE_URL.",
        "default": "https://api.portal.biznetgio.com/v1",
        "defaultInfo": {
          "environment": [
            "BIZNETGIO_BASE_URL"
          ]
        }
      }
    },
    "inputProperties": {
      "apiToken": {
        "type": "string",
        "description": "BiznetGIO API token (x-token header). Falls back to BIZNETGIO_API_KEY.",
        "defaultInfo": {
          "environment": [
            "BIZNETGIO_API_KEY"
          ]
        },
        "secret": true
      },
      "baseUrl": {
        "type": "string",
        "description": "BiznetGIO API base URL. Falls back to BIZNETGIO_BASE_URL.",
        "default": "https://api.portal.biznetgio.com/v1",
        "defaultInfo": {
          "environment": [
            "BIZNETGIO_BASE_URL"
          ]
        }
      }
    }
  },
  "resources": {
    "biznetgio:index:Baremetal": {
      "properties": {
        "createdAt": {
          "type": "string",
          "description": "Creation timestamp (alias of created_at/date_created)."
        },
        "cycle": {
          "type": "string",
          "description": "Billing cycle, e.g. `m` for monthly or `a` for annual.",
          "replaceOnChanges": true
        },
        "ipAddress": {
          "type": "string",
          "description": "Public IP address of the server, when present."
        },
        "keypairId": {
          "type": "integer",
          "description": "Baremetal keypair id, from BaremetalKeypair. The baremetal keypair pool is separate from neolite/gpu.",
          "replaceOnChanges": true
        },
        "label": {
          "type": "string",
          "description": "Display name of the server. The only field updatable in place."
        },
        "orderId": {
          "type": "string",
          "description": "Order id from the creation response."
        },
        "payWithCreditCard": {
          "type": "boolean",
          "description": "Pay the invoice with the registered credit card. Defaults to true. Set false to leave the invoice unpaid in the portal; the resource stays Pending until paid.",
          "default": true,
          "replaceOnChanges": true
        },
        "powerState": {
          "type": "string",
          "description": "Power state of the server: `on` or `off`. Only fires an API call when the value changes."
        },
        "productId": {
          "type": "integer",
          "description": "Product id from the baremetal products function.",
          "replaceOnChanges": true
        },
        "promocode": {
          "type": "string",
          "description": "Promo code to apply at creation.",
          "replaceOnChanges": true
        },
        "publicIp": {
          "type": "integer",
          "description": "Number of public IPs to request (1 = with public IP). Defaults to 1. Create-only, changing it replaces the instance.",
          "default": 1,
          "replaceOnChanges": true
        },
        "raw": {
          "type": "string",
          "description": "Raw JSON of the last read response, for anything not modeled yet.",
          "secret": true
        },
        "rebuildOs": {
          "type": "string",
          "description": "Change this value to rebuild the instance (destructive, wipes the OS) via `PUT /baremetals/{account_id}/rebuild`. Valid OS list comes from the rebuildOsList function."
        },
        "resetTrigger": {
          "type": "string",
          "description": "Change this value to trigger a one-shot reset/reboot. The reset is an action, not a stable state."
        },
        "selectOs": {
          "type": "string",
          "description": "OS to install at creation, from `GET /baremetals/products/{product_id}/oss`. Defaults to `ubuntu-22`. Create-only, changing it replaces the instance.",
          "default": "ubuntu-22",
          "replaceOnChanges": true
        },
        "status": {
          "type": "string",
          "description": "Current status of the server."
        }
      },
      "required": [
        "productId",
        "cycle",
        "keypairId",
        "label",
        "status",
        "orderId",
        "ipAddress",
        "createdAt",
        "raw"
      ],
      "inputProperties": {
        "cycle": {
          "type": "string",
          "description": "Billing cycle, e.g. `m` for monthly or `a` for annual.",
          "replaceOnChanges": true
        },
        "keypairId": {
          "type": "integer",
          "description": "Baremetal keypair id, from BaremetalKeypair. The baremetal keypair pool is separate from neolite/gpu.",
          "replaceOnChanges": true
        },
        "label": {
          "type": "string",
          "description": "Display name of the server. The only field updatable in place."
        },
        "payWithCreditCard": {
          "type": "boolean",
          "description": "Pay the invoice with the registered credit card. Defaults to true. Set false to leave the invoice unpaid in the portal; the resource stays Pending until paid.",
          "default": true,
          "replaceOnChanges": true
        },
        "powerState": {
          "type": "string",
          "description": "Power state of the server: `on` or `off`. Only fires an API call when the value changes."
        },
        "productId": {
          "type": "integer",
          "description": "Product id from the baremetal products function.",
          "replaceOnChanges": true
        },
        "promocode": {
          "type": "string",
          "description": "Promo code to apply at creation.",
          "replaceOnChanges": true
        },
        "publicIp": {
          "type": "integer",
          "description": "Number of public IPs to request (1 = with public IP). Defaults to 1. Create-only, changing it replaces the instance.",
          "default": 1,
          "replaceOnChanges": true
        },
        "rebuildOs": {
          "type": "string",
          "description": "Change this value to rebuild the instance (destructive, wipes the OS) via `PUT /baremetals/{account_id}/rebuild`. Valid OS list comes from the rebuildOsList function."
        },
        "resetTrigger": {
          "type": "string",
          "description": "Change this value to trigger a one-shot reset/reboot. The reset is an action, not a stable state."
        },
        "selectOs": {
          "type": "string",
          "description": "OS to install at creation, from `GET /baremetals/products/{product_id}/oss`. Defaults to `ubuntu-22`. Create-only, changing it replaces the instance.",
          "default": "ubuntu-22",
          "replaceOnChanges": true
        }
      },
      "requiredInputs": [
        "productId",
        "cycle",
        "keypairId",
        "label"
      ]
    },
    "biznetgio:index:BaremetalAdditionalIp": {
      "properties": {
        "createdAt": {
          "type": "string",
          "description": "Creation timestamp (alias of created_at/date_created)."
        },
        "cycle": {
          "type": "string",
          "description": "Billing cycle, e.g. `m` for monthly or `a` for annual."
        },
        "ipAddress": {
          "type": "string",
          "description": "Assigned IP address, when present in the response."
        },
        "payWithCreditCard": {
          "type": "boolean",
          "description": "Pay the invoice with the registered credit card. Defaults to true. Set false to leave the invoice unpaid in the portal; the resource stays Pending until paid.",
          "default": true
        },
        "productId": {
          "type": "integer",
          "description": "Product id from `GET /baremetal-additional-ips/products`."
        },
        "promocode": {
          "type": "string",
          "description": "Promo code to apply at creation."
        },
        "raw": {
          "type": "string",
          "description": "Raw JSON of the last read response, for anything not modeled yet.",
          "secret": true
        },
        "region": {
          "type": "string",
          "description": "Datacenter region; valid list from `GET /baremetal-additional-ips/regions`. Defaults to `wjv-1`. Create-only, changing it replaces the IP.",
          "default": "wjv-1"
        },
        "status": {
          "type": "string",
          "description": "Current status of the IP (e.g. Active, Pending, Suspended, Terminated)."
        }
      },
      "required": [
        "productId",
        "cycle",
        "status",
        "ipAddress",
        "createdAt",
        "raw"
      ],
      "inputProperties": {
        "cycle": {
          "type": "string",
          "description": "Billing cycle, e.g. `m` for monthly or `a` for annual."
        },
        "payWithCreditCard": {
          "type": "boolean",
          "description": "Pay the invoice with the registered credit card. Defaults to true. Set false to leave the invoice unpaid in the portal; the resource stays Pending until paid.",
          "default": true
        },
        "productId": {
          "type": "integer",
          "description": "Product id from `GET /baremetal-additional-ips/products`."
        },
        "promocode": {
          "type": "string",
          "description": "Promo code to apply at creation."
        },
        "region": {
          "type": "string",
          "description": "Datacenter region; valid list from `GET /baremetal-additional-ips/regions`. Defaults to `wjv-1`. Create-only, changing it replaces the IP.",
          "default": "wjv-1"
        }
      },
      "requiredInputs": [
        "productId",
        "cycle"
      ]
    },
    "biznetgio:index:BaremetalAdditionalIpAssignment": {
      "properties": {
        "additionalIpId": {
          "type": "integer",
          "description": "Account id of the additional IP to attach, from BaremetalAdditionalIp."
        },
        "metalAccountId": {
          "type": "integer",
          "description": "Account id of the baremetal to attach to. Changing the target replaces the assignment."
        },
        "raw": {
          "type": "string",
          "description": "Raw JSON of the last read response, for anything not modeled yet.",
          "secret": true
        },
        "status": {
          "type": "string",
          "description": "Assignment status, when present in the response."
        }
      },
      "required": [
        "additionalIpId",
        "metalAccountId",
        "status",
        "raw"
      ],
      "inputProperties": {
        "additionalIpId": {
          "type": "integer",
          "description": "Account id of the additional IP to attach, from BaremetalAdditionalIp."
        },
        "metalAccountId": {
          "type": "integer",
          "description": "Account id of the baremetal to attach to. Changing the target replaces the assignment."
        }
      },
      "requiredInputs": [
        "additionalIpId",
        "metalAccountId"
      ]
    },
    "biznetgio:index:BaremetalElasticStorage": {
      "properties": {
        "createdAt": {
          "type": "string",
          "description": "Creation timestamp (alias of created_at/date_created)."
        },
        "cycle": {
          "type": "string",
          "description": "Billing cycle, e.g. `m` for monthly or `a` for annual. Create-only, changing it replaces the storage."
        },
        "metalAccountId": {
          "type": "integer",
          "description": "Account id of the target baremetal. Can only be set at creation (no re-attach endpoint)."
        },
        "payWithCreditCard": {
          "type": "boolean",
          "description": "Pay the invoice with the registered credit card. Defaults to true. Set false to leave the invoice unpaid in the portal; the resource stays Pending until paid.",
          "default": true
        },
        "productId": {
          "type": "integer",
          "description": "Product id from `GET /baremetal-neo-elastic-storages/products`. Changing it triggers change-package (`POST .../{account_id}`)."
        },
        "promocode": {
          "type": "string",
          "description": "Promo code to apply at creation."
        },
        "raw": {
          "type": "string",
          "description": "Raw JSON of the last read response, for anything not modeled yet.",
          "secret": true
        },
        "size": {
          "type": "integer",
          "description": "Storage size in GB. Defaults to 100. Changing it triggers upgrade (`PUT .../{account_id}`) - grow-only, shrinking is rejected by the API.",
          "default": 100
        },
        "status": {
          "type": "string",
          "description": "Current status of the storage (e.g. Active, Pending, Suspended, Terminated)."
        },
        "storageName": {
          "type": "string",
          "description": "Name of the storage. Create-only, changing it replaces the storage."
        }
      },
      "required": [
        "productId",
        "cycle",
        "storageName",
        "metalAccountId",
        "status",
        "createdAt",
        "raw"
      ],
      "inputProperties": {
        "cycle": {
          "type": "string",
          "description": "Billing cycle, e.g. `m` for monthly or `a` for annual. Create-only, changing it replaces the storage."
        },
        "metalAccountId": {
          "type": "integer",
          "description": "Account id of the target baremetal. Can only be set at creation (no re-attach endpoint)."
        },
        "payWithCreditCard": {
          "type": "boolean",
          "description": "Pay the invoice with the registered credit card. Defaults to true. Set false to leave the invoice unpaid in the portal; the resource stays Pending until paid.",
          "default": true
        },
        "productId": {
          "type": "integer",
          "description": "Product id from `GET /baremetal-neo-elastic-storages/products`. Changing it triggers change-package (`POST .../{account_id}`)."
        },
        "promocode": {
          "type": "string",
          "description": "Promo code to apply at creation."
        },
        "size": {
          "type": "integer",
          "description": "Storage size in GB. Defaults to 100. Changing it triggers upgrade (`PUT .../{account_id}`) - grow-only, shrinking is rejected by the API.",
          "default": 100
        },
        "storageName": {
          "type": "string",
          "description": "Name of the storage. Create-only, changing it replaces the storage."
        }
      },
      "requiredInputs": [
        "productId",
        "cycle",
        "storageName",
        "metalAccountId"
      ]
    },
    "biznetgio:index:BaremetalKeypair": {
      "properties": {
        "keypairId": {
          "type": "integer",
          "description": "Keypair id in BiznetGIO."
        },
        "name": {
          "type": "string",
          "description": "Name of the keypair."
        },
        "privateKey": {
          "type": "string",
          "description": "Private key from the creation response, when the API returns one. Only appears once; preserved across refreshes.",
          "secret": true
        },
        "publicKey": {
          "type": "string",
          "description": "When set, the keypair is imported via `POST /baremetals/keypairs/import`. When empty, the keypair is generated server-side. Create-only, changing it replaces the keypair."
        },
        "raw": {
          "type": "string",
          "description": "Raw JSON of the keypair item from the list API.",
          "secret": true
        }
      },
      "required": [
        "name",
        "keypairId",
        "privateKey",
        "raw"
      ],
      "inputProperties": {
        "name": {
          "type": "string",
          "description": "Name of the keypair."
        },
        "publicKey": {
          "type": "string",
          "description": "When set, the keypair is imported via `POST /baremetals/keypairs/import`. When empty, the keypair is generated server-side. Create-only, changing it replaces the keypair."
        }
      },
      "requiredInputs": [
        "name"
      ]
    },
    "biznetgio:index:GpuInstance": {
      "properties": {
        "consolePassword": {
          "type": "string",
          "description": "Console password. Create-only, changing it replaces the instance.",
          "secret": true,
          "replaceOnChanges": true
        },
        "keypairId": {
          "type": "integer",
          "description": "GPU keypair id, from GpuKeypair.",
          "replaceOnChanges": true
        },
        "onDemand": {
          "$ref": "#/types/biznetgio:index:GpuOnDemandArgs",
          "description": "On-demand billing mode (hourly). Exactly one of `subscription` or `onDemand` must be set.",
          "replaceOnChanges": true
        },
        "orderId": {
          "type": "string",
          "description": "Order id from the creation response."
        },
        "payWithCreditCard": {
          "type": "boolean",
          "description": "Pay the invoice with the registered credit card. Defaults to true. Set false to leave the invoice unpaid in the portal; the resource stays Pending until paid.",
          "default": true,
          "replaceOnChanges": true
        },
        "productId": {
          "type": "integer",
          "description": "GPU product id from the gpu products function.",
          "replaceOnChanges": true
        },
        "promocode": {
          "type": "string",
          "description": "Promo code to apply at creation.",
          "replaceOnChanges": true
        },
        "raw": {
          "type": "string",
          "description": "Raw JSON of the last read response, for anything not modeled yet.",
          "secret": true
        },
        "rebuildTrigger": {
          "type": "string",
          "description": "Change this value to rebuild the instance (destructive, reinstalls the OS)."
        },
        "reserveAdditionalHoursTrigger": {
          "type": "string",
          "description": "Change this value to reserve 1 additional hour on an on-demand instance."
        },
        "selectOs": {
          "type": "string",
          "description": "OS to install, from the product's select-os catalog.",
          "replaceOnChanges": true
        },
        "serviceName": {
          "type": "string",
          "description": "Display name of the instance. Create-only, changing it replaces the instance.",
          "replaceOnChanges": true
        },
        "sshAndConsoleUser": {
          "type": "string",
          "description": "SSH and console user for the instance.",
          "replaceOnChanges": true
        },
        "status": {
          "type": "string",
          "description": "Current status of the instance."
        },
        "subscription": {
          "$ref": "#/types/biznetgio:index:GpuSubscriptionArgs",
          "description": "Subscription billing mode (cycle-based). Exactly one of `subscription` or `onDemand` must be set.",
          "replaceOnChanges": true
        }
      },
      "required": [
        "productId",
        "selectOs",
        "keypairId",
        "sshAndConsoleUser",
        "consolePassword",
        "status",
        "orderId",
        "raw"
      ],
      "inputProperties": {
        "consolePassword": {
          "type": "string",
          "description": "Console password. Create-only, changing it replaces the instance.",
          "secret": true,
          "replaceOnChanges": true
        },
        "keypairId": {
          "type": "integer",
          "description": "GPU keypair id, from GpuKeypair.",
          "replaceOnChanges": true
        },
        "onDemand": {
          "$ref": "#/types/biznetgio:index:GpuOnDemandArgs",
          "description": "On-demand billing mode (hourly). Exactly one of `subscription` or `onDemand` must be set.",
          "replaceOnChanges": true
        },
        "payWithCreditCard": {
          "type": "boolean",
          "description": "Pay the invoice with the registered credit card. Defaults to true. Set false to leave the invoice unpaid in the portal; the resource stays Pending until paid.",
          "default": true,
          "replaceOnChanges": true
        },
        "productId": {
          "type": "integer",
          "description": "GPU product id from the gpu products function.",
          "replaceOnChanges": true
        },
        "promocode": {
          "type": "string",
          "description": "Promo code to apply at creation.",
          "replaceOnChanges": true
        },
        "rebuildTrigger": {
          "type": "string",
          "description": "Change this value to rebuild the instance (destructive, reinstalls the OS)."
        },
        "reserveAdditionalHoursTrigger": {
          "type": "string",
          "description": "Change this value to reserve 1 additional hour on an on-demand instance."
        },
        "selectOs": {
          "type": "string",
          "description": "OS to install, from the product's select-os catalog.",
          "replaceOnChanges": true
        },
        "serviceName": {
          "type": "string",
          "description": "Display name of the instance. Create-only, changing it replaces the instance.",
          "replaceOnChanges": true
        },
        "sshAndConsoleUser": {
          "type": "string",
          "description": "SSH and console user for the instance.",
          "replaceOnChanges": true
        },
        "subscription": {
          "$ref": "#/types/biznetgio:index:GpuSubscriptionArgs",
          "description": "Subscription billing mode (cycle-based). Exactly one of `subscription` or `onDemand` must be set.",
          "replaceOnChanges": true
        }
      },
      "requiredInputs": [
        "productId",
        "selectOs",
        "keypairId",
        "sshAndConsoleUser",
        "consolePassword"
      ]
    },
    "biznetgio:index:GpuKeypair": {
      "properties": {
        "name": {
          "type": "string",
          "description": "Name of the keypair. Create-only, changing it replaces the keypair."
        },
        "privateKey": {
          "type": "string",
          "description": "Generated private key. Only returned at creation.",
          "secret": true
        },
        "publicKey": {
          "type": "string",
          "description": "Generated public key."
        },
        "raw": {
          "type": "string",
          "description": "Raw JSON of the keypair item from the list API.",
          "secret": true
        }
      },
      "required": [
        "name",
        "publicKey",
        "privateKey",
        "raw"
      ],
      "inputProperties": {
        "name": {
          "type": "string",
          "description": "Name of the keypair. Create-only, changing it replaces the keypair."
        }
      },
      "requiredInputs": [
        "name"
      ]
    },
    "biznetgio:index:NeoliteDisk": {
      "properties": {
        "cycle": {
          "type": "string",
          "description": "Billing cycle: m monthly, a annual, q quarterly, s semiannual, b biennial, t triennial, p4, p5."
        },
        "neoliteAccountId": {
          "type": "integer",
          "description": "Account id of the NEO Lite VM the disk is attached to."
        },
        "orderId": {
          "type": "string",
          "description": "Order id from the creation response."
        },
        "payWithCreditCard": {
          "type": "boolean",
          "description": "Pay the invoice with the registered credit card at order time. Defaults to true (auto-charge); set false to leave it unpaid in the portal until settled.",
          "default": true
        },
        "productId": {
          "type": "integer",
          "description": "Disk product id from the `/neolites/disks/products` endpoint."
        },
        "promocode": {
          "type": "string",
          "description": "Promo code to apply at order.",
          "default": ""
        },
        "raw": {
          "type": "string",
          "description": "Raw JSON of the last-read disk response, for accessing fields not yet modeled.",
          "secret": true
        },
        "serviceName": {
          "type": "string",
          "description": "Disk service name. Defaults to `service-name`.",
          "default": "service-name"
        },
        "size": {
          "type": "integer",
          "description": "Disk size (GB). Defaults to 60. Can only go up, never down.",
          "default": 60
        },
        "status": {
          "type": "string",
          "description": "Disk status (Active, Pending, Suspended, Terminated)."
        }
      },
      "required": [
        "productId",
        "cycle",
        "neoliteAccountId",
        "orderId",
        "status",
        "raw"
      ],
      "inputProperties": {
        "cycle": {
          "type": "string",
          "description": "Billing cycle: m monthly, a annual, q quarterly, s semiannual, b biennial, t triennial, p4, p5."
        },
        "neoliteAccountId": {
          "type": "integer",
          "description": "Account id of the NEO Lite VM the disk is attached to."
        },
        "payWithCreditCard": {
          "type": "boolean",
          "description": "Pay the invoice with the registered credit card at order time. Defaults to true (auto-charge); set false to leave it unpaid in the portal until settled.",
          "default": true
        },
        "productId": {
          "type": "integer",
          "description": "Disk product id from the `/neolites/disks/products` endpoint."
        },
        "promocode": {
          "type": "string",
          "description": "Promo code to apply at order.",
          "default": ""
        },
        "serviceName": {
          "type": "string",
          "description": "Disk service name. Defaults to `service-name`.",
          "default": "service-name"
        },
        "size": {
          "type": "integer",
          "description": "Disk size (GB). Defaults to 60. Can only go up, never down.",
          "default": 60
        }
      },
      "requiredInputs": [
        "productId",
        "cycle",
        "neoliteAccountId"
      ]
    },
    "biznetgio:index:NeoliteKeypair": {
      "properties": {
        "keypairId": {
          "type": "integer",
          "description": "Keypair id in BiznetGIO."
        },
        "name": {
          "type": "string",
          "description": "Keypair name."
        },
        "privateKey": {
          "type": "string",
          "description": "Private key (sensitive). Write-only: only present in the create response, can't be re-fetched.",
          "secret": true
        },
        "publicKey": {
          "type": "string",
          "description": "Generated public key."
        }
      },
      "required": [
        "name",
        "keypairId",
        "publicKey",
        "privateKey"
      ],
      "inputProperties": {
        "name": {
          "type": "string",
          "description": "Keypair name."
        }
      },
      "requiredInputs": [
        "name"
      ]
    },
    "biznetgio:index:NeoliteProDisk": {
      "properties": {
        "cycle": {
          "type": "string",
          "description": "Billing cycle: m monthly, a annual, q quarterly, s semiannual, b biennial, t triennial, p4, p5."
        },
        "neoliteAccountId": {
          "type": "integer",
          "description": "Account id of the NEO Lite Pro VM the disk is attached to."
        },
        "orderId": {
          "type": "string",
          "description": "Order id from the creation response."
        },
        "payWithCreditCard": {
          "type": "boolean",
          "description": "Pay the invoice with the registered credit card at order time. Defaults to true (auto-charge); set false to leave it unpaid in the portal until settled.",
          "default": true
        },
        "productId": {
          "type": "integer",
          "description": "Disk product id from the `/neolite-pros/disks/products` endpoint."
        },
        "promocode": {
          "type": "string",
          "description": "Promo code to apply at order.",
          "default": ""
        },
        "raw": {
          "type": "string",
          "description": "Raw JSON of the last-read disk response, for accessing fields not yet modeled.",
          "secret": true
        },
        "serviceName": {
          "type": "string",
          "description": "Disk service name. Defaults to `service-name`.",
          "default": "service-name"
        },
        "size": {
          "type": "integer",
          "description": "Disk size (GB). Defaults to 30 (minimum disk-pro product). Can only go up, never down.",
          "default": 30
        },
        "status": {
          "type": "string",
          "description": "Disk status (Active, Pending, Suspended, Terminated)."
        }
      },
      "required": [
        "productId",
        "cycle",
        "neoliteAccountId",
        "orderId",
        "status",
        "raw"
      ],
      "inputProperties": {
        "cycle": {
          "type": "string",
          "description": "Billing cycle: m monthly, a annual, q quarterly, s semiannual, b biennial, t triennial, p4, p5."
        },
        "neoliteAccountId": {
          "type": "integer",
          "description": "Account id of the NEO Lite Pro VM the disk is attached to."
        },
        "payWithCreditCard": {
          "type": "boolean",
          "description": "Pay the invoice with the registered credit card at order time. Defaults to true (auto-charge); set false to leave it unpaid in the portal until settled.",
          "default": true
        },
        "productId": {
          "type": "integer",
          "description": "Disk product id from the `/neolite-pros/disks/products` endpoint."
        },
        "promocode": {
          "type": "string",
          "description": "Promo code to apply at order.",
          "default": ""
        },
        "serviceName": {
          "type": "string",
          "description": "Disk service name. Defaults to `service-name`.",
          "default": "service-name"
        },
        "size": {
          "type": "integer",
          "description": "Disk size (GB). Defaults to 30 (minimum disk-pro product). Can only go up, never down.",
          "default": 30
        }
      },
      "requiredInputs": [
        "productId",
        "cycle",
        "neoliteAccountId"
      ]
    },
    "biznetgio:index:NeoliteProKeypair": {
      "properties": {
        "keypairId": {
          "type": "integer",
          "description": "Keypair id in BiznetGIO."
        },
        "name": {
          "type": "string",
          "description": "Keypair name."
        },
        "privateKey": {
          "type": "string",
          "description": "Private key (sensitive). Write-only: only present in the create response, can't be re-fetched.",
          "secret": true
        },
        "publicKey": {
          "type": "string",
          "description": "Generated public key."
        }
      },
      "required": [
        "name",
        "keypairId",
        "publicKey",
        "privateKey"
      ],
      "inputProperties": {
        "name": {
          "type": "string",
          "description": "Keypair name."
        }
      },
      "requiredInputs": [
        "name"
      ]
    },
    "biznetgio:index:NeoliteProSnapshot": {
      "properties": {
        "cycle": {
          "type": "string",
          "description": "Billing cycle: m monthly, a annual, q quarterly, s semiannual, b biennial, t triennial, p4, p5."
        },
        "description": {
          "type": "string",
          "description": "Snapshot description.",
          "default": ""
        },
        "name": {
          "type": "string",
          "description": "Snapshot name. Defaults to `snapshot-name`.",
          "default": "snapshot-name"
        },
        "neoliteAccountId": {
          "type": "integer",
          "description": "Account id of the NEO Lite Pro VM being snapshotted."
        },
        "orderId": {
          "type": "string",
          "description": "Order id from the creation response."
        },
        "payWithCreditCard": {
          "type": "boolean",
          "description": "Pay the invoice with the registered credit card at order time. Defaults to true (auto-charge); set false to leave it unpaid in the portal until settled.",
          "default": true
        },
        "promocode": {
          "type": "string",
          "description": "Promo code to apply at order.",
          "default": ""
        },
        "status": {
          "type": "string",
          "description": "Snapshot status (Active, Pending, Suspended, Terminated)."
        }
      },
      "required": [
        "neoliteAccountId",
        "cycle",
        "orderId",
        "status"
      ],
      "inputProperties": {
        "cycle": {
          "type": "string",
          "description": "Billing cycle: m monthly, a annual, q quarterly, s semiannual, b biennial, t triennial, p4, p5."
        },
        "description": {
          "type": "string",
          "description": "Snapshot description.",
          "default": ""
        },
        "name": {
          "type": "string",
          "description": "Snapshot name. Defaults to `snapshot-name`.",
          "default": "snapshot-name"
        },
        "neoliteAccountId": {
          "type": "integer",
          "description": "Account id of the NEO Lite Pro VM being snapshotted."
        },
        "payWithCreditCard": {
          "type": "boolean",
          "description": "Pay the invoice with the registered credit card at order time. Defaults to true (auto-charge); set false to leave it unpaid in the portal until settled.",
          "default": true
        },
        "promocode": {
          "type": "string",
          "description": "Promo code to apply at order.",
          "default": ""
        }
      },
      "requiredInputs": [
        "neoliteAccountId",
        "cycle"
      ]
    },
    "biznetgio:index:NeoliteProVm": {
      "properties": {
        "billingcycle": {
          "type": "string",
          "description": "Active billing cycle."
        },
        "ciPassword": {
          "type": "string",
          "description": "VM cloud-init password (sensitive).",
          "secret": true
        },
        "ciUser": {
          "type": "string",
          "description": "VM cloud-init user."
        },
        "consolePassword": {
          "type": "string",
          "description": "Console password at creation. Write-only: never re-fetched from the API.",
          "secret": true
        },
        "cpus": {
          "type": "integer",
          "description": "Number of VM CPUs."
        },
        "cycle": {
          "type": "string",
          "description": "Billing cycle: m monthly, a annual, q quarterly, s semiannual, b biennial, t triennial, p4, p5."
        },
        "description": {
          "type": "string",
          "description": "VM description.",
          "default": ""
        },
        "diskSize": {
          "type": "integer",
          "description": "Target disk size (GB, absolute - not an increment). Can only go up, never down."
        },
        "keypairId": {
          "type": "integer",
          "description": "Keypair id from `NeoliteProKeypair`. Can be changed via change-keypair."
        },
        "lastInvoice": {
          "$ref": "#/types/biznetgio:index:NeoliteLastInvoice",
          "description": "VM's last invoice."
        },
        "maxDisk": {
          "type": "integer",
          "description": "Maximum VM disk size (GB)."
        },
        "maxMem": {
          "type": "integer",
          "description": "Maximum VM memory (MB)."
        },
        "mem": {
          "type": "integer",
          "description": "Memory used by the VM (MB)."
        },
        "nextDue": {
          "type": "string",
          "description": "Next billing due date."
        },
        "orderId": {
          "type": "string",
          "description": "Order id from the creation response."
        },
        "osName": {
          "type": "string",
          "description": "Name of the OS running on the VM."
        },
        "payWithCreditCard": {
          "type": "boolean",
          "description": "Pay the invoice with the registered credit card at order time. Defaults to true (auto-charge); set false to leave it unpaid in the portal until settled.",
          "default": true
        },
        "powerState": {
          "type": "string",
          "description": "VM power state: start, stop, suspend, resume, or shutdown. Update only sends an action when the value changes."
        },
        "productId": {
          "type": "integer",
          "description": "Product id from the `getProducts` function or the portal."
        },
        "productName": {
          "type": "string",
          "description": "Active product name."
        },
        "promocode": {
          "type": "string",
          "description": "Promo code to apply at order.",
          "default": ""
        },
        "raw": {
          "type": "string",
          "description": "Raw JSON response of the last-read account, for accessing fields not yet modeled (cipassword masked).",
          "secret": true
        },
        "rebuildOs": {
          "type": "string",
          "description": "When changed, the VM is rebuilt (wipes the OS) with the new OS via the rebuild endpoint. Valid OS values are listed by the `getOsList` function."
        },
        "recurringAmount": {
          "type": "integer",
          "description": "Recurring amount per cycle."
        },
        "region": {
          "type": "string",
          "description": "VM region."
        },
        "regionLabel": {
          "type": "string",
          "description": "VM region label."
        },
        "selectOs": {
          "type": "string",
          "description": "OS installed at creation, from the `getOsList` function. To change OS, use `rebuildOs`."
        },
        "sshAndConsoleUser": {
          "type": "string",
          "description": "SSH and console user set at creation."
        },
        "status": {
          "type": "string",
          "description": "Last known account status from the API (Active, Pending, Suspended, Terminated)."
        },
        "uptime": {
          "type": "integer",
          "description": "VM uptime in seconds."
        },
        "vmName": {
          "type": "string",
          "description": "VM name. Defaults to `server-name`. Can be changed via change-vm-name.",
          "default": "server-name"
        }
      },
      "required": [
        "sshAndConsoleUser",
        "consolePassword",
        "productId",
        "selectOs",
        "keypairId",
        "cycle",
        "orderId",
        "status",
        "uptime",
        "maxDisk",
        "maxMem",
        "mem",
        "cpus",
        "ciUser",
        "ciPassword",
        "osName",
        "region",
        "regionLabel",
        "nextDue",
        "recurringAmount",
        "billingcycle",
        "productName",
        "lastInvoice",
        "raw"
      ],
      "inputProperties": {
        "consolePassword": {
          "type": "string",
          "description": "Console password at creation. Write-only: never re-fetched from the API.",
          "secret": true
        },
        "cycle": {
          "type": "string",
          "description": "Billing cycle: m monthly, a annual, q quarterly, s semiannual, b biennial, t triennial, p4, p5."
        },
        "description": {
          "type": "string",
          "description": "VM description.",
          "default": ""
        },
        "diskSize": {
          "type": "integer",
          "description": "Target disk size (GB, absolute - not an increment). Can only go up, never down."
        },
        "keypairId": {
          "type": "integer",
          "description": "Keypair id from `NeoliteProKeypair`. Can be changed via change-keypair."
        },
        "payWithCreditCard": {
          "type": "boolean",
          "description": "Pay the invoice with the registered credit card at order time. Defaults to true (auto-charge); set false to leave it unpaid in the portal until settled.",
          "default": true
        },
        "powerState": {
          "type": "string",
          "description": "VM power state: start, stop, suspend, resume, or shutdown. Update only sends an action when the value changes."
        },
        "productId": {
          "type": "integer",
          "description": "Product id from the `getProducts` function or the portal."
        },
        "promocode": {
          "type": "string",
          "description": "Promo code to apply at order.",
          "default": ""
        },
        "rebuildOs": {
          "type": "string",
          "description": "When changed, the VM is rebuilt (wipes the OS) with the new OS via the rebuild endpoint. Valid OS values are listed by the `getOsList` function."
        },
        "selectOs": {
          "type": "string",
          "description": "OS installed at creation, from the `getOsList` function. To change OS, use `rebuildOs`."
        },
        "sshAndConsoleUser": {
          "type": "string",
          "description": "SSH and console user set at creation."
        },
        "vmName": {
          "type": "string",
          "description": "VM name. Defaults to `server-name`. Can be changed via change-vm-name.",
          "default": "server-name"
        }
      },
      "requiredInputs": [
        "sshAndConsoleUser",
        "consolePassword",
        "productId",
        "selectOs",
        "keypairId",
        "cycle"
      ]
    },
    "biznetgio:index:NeoliteSnapshot": {
      "properties": {
        "cycle": {
          "type": "string",
          "description": "Billing cycle: m monthly, a annual, q quarterly, s semiannual, b biennial, t triennial, p4, p5."
        },
        "description": {
          "type": "string",
          "description": "Snapshot description.",
          "default": ""
        },
        "name": {
          "type": "string",
          "description": "Snapshot name. Defaults to `snapshot-name`.",
          "default": "snapshot-name"
        },
        "neoliteAccountId": {
          "type": "integer",
          "description": "Account id of the NEO Lite VM being snapshotted."
        },
        "orderId": {
          "type": "string",
          "description": "Order id from the creation response."
        },
        "payWithCreditCard": {
          "type": "boolean",
          "description": "Pay the invoice with the registered credit card at order time. Defaults to true (auto-charge); set false to leave it unpaid in the portal until settled.",
          "default": true
        },
        "promocode": {
          "type": "string",
          "description": "Promo code to apply at order.",
          "default": ""
        },
        "status": {
          "type": "string",
          "description": "Snapshot status (Active, Pending, Suspended, Terminated)."
        }
      },
      "required": [
        "neoliteAccountId",
        "cycle",
        "orderId",
        "status"
      ],
      "inputProperties": {
        "cycle": {
          "type": "string",
          "description": "Billing cycle: m monthly, a annual, q quarterly, s semiannual, b biennial, t triennial, p4, p5."
        },
        "description": {
          "type": "string",
          "description": "Snapshot description.",
          "default": ""
        },
        "name": {
          "type": "string",
          "description": "Snapshot name. Defaults to `snapshot-name`.",
          "default": "snapshot-name"
        },
        "neoliteAccountId": {
          "type": "integer",
          "description": "Account id of the NEO Lite VM being snapshotted."
        },
        "payWithCreditCard": {
          "type": "boolean",
          "description": "Pay the invoice with the registered credit card at order time. Defaults to true (auto-charge); set false to leave it unpaid in the portal until settled.",
          "default": true
        },
        "promocode": {
          "type": "string",
          "description": "Promo code to apply at order.",
          "default": ""
        }
      },
      "requiredInputs": [
        "neoliteAccountId",
        "cycle"
      ]
    },
    "biznetgio:index:NeoliteVm": {
      "properties": {
        "billingcycle": {
          "type": "string",
          "description": "Active billing cycle."
        },
        "ciPassword": {
          "type": "string",
          "description": "VM cloud-init password (sensitive).",
          "secret": true
        },
        "ciUser": {
          "type": "string",
          "description": "VM cloud-init user."
        },
        "consolePassword": {
          "type": "string",
          "description": "Console password at creation. Write-only: never re-fetched from the API.",
          "secret": true
        },
        "cpus": {
          "type": "integer",
          "description": "Number of VM CPUs."
        },
        "cycle": {
          "type": "string",
          "description": "Billing cycle: m monthly, a annual, q quarterly, s semiannual, b biennial, t triennial, p4, p5."
        },
        "description": {
          "type": "string",
          "description": "VM description.",
          "default": ""
        },
        "diskSize": {
          "type": "integer",
          "description": "Target disk size (GB, absolute - not an increment). Can only go up, never down."
        },
        "keypairId": {
          "type": "integer",
          "description": "Keypair id from `NeoliteKeypair`. Can be changed via change-keypair."
        },
        "lastInvoice": {
          "$ref": "#/types/biznetgio:index:NeoliteLastInvoice",
          "description": "VM's last invoice."
        },
        "maxDisk": {
          "type": "integer",
          "description": "Maximum VM disk size (GB)."
        },
        "maxMem": {
          "type": "integer",
          "description": "Maximum VM memory (MB)."
        },
        "mem": {
          "type": "integer",
          "description": "Memory used by the VM (MB)."
        },
        "migrateToPro": {
          "type": "string",
          "description": "Trigger a one-shot migration to NEO Lite Pro: set the neolitepro_product_id target. Change the value again to re-trigger."
        },
        "nextDue": {
          "type": "string",
          "description": "Next billing due date."
        },
        "orderId": {
          "type": "string",
          "description": "Order id from the creation response."
        },
        "osName": {
          "type": "string",
          "description": "Name of the OS running on the VM."
        },
        "payWithCreditCard": {
          "type": "boolean",
          "description": "Pay the invoice with the registered credit card at order time. Defaults to true (auto-charge); set false to leave it unpaid in the portal until settled.",
          "default": true
        },
        "powerState": {
          "type": "string",
          "description": "VM power state: start, stop, suspend, resume, or shutdown. Update only sends an action when the value changes."
        },
        "productId": {
          "type": "integer",
          "description": "Product id from the `getProducts` function or the portal."
        },
        "productName": {
          "type": "string",
          "description": "Active product name."
        },
        "promocode": {
          "type": "string",
          "description": "Promo code to apply at order.",
          "default": ""
        },
        "raw": {
          "type": "string",
          "description": "Raw JSON response of the last-read account, for accessing fields not yet modeled (cipassword masked).",
          "secret": true
        },
        "rebuildOs": {
          "type": "string",
          "description": "When changed, the VM is rebuilt (wipes the OS) with the new OS via the rebuild endpoint. Valid OS values are listed by the `getOsList` function."
        },
        "recurringAmount": {
          "type": "integer",
          "description": "Recurring amount per cycle."
        },
        "region": {
          "type": "string",
          "description": "VM region."
        },
        "regionLabel": {
          "type": "string",
          "description": "VM region label."
        },
        "selectOs": {
          "type": "string",
          "description": "OS installed at creation, from the `getOsList` function. To change OS, use `rebuildOs`."
        },
        "sshAndConsoleUser": {
          "type": "string",
          "description": "SSH and console user set at creation."
        },
        "status": {
          "type": "string",
          "description": "Last known account status from the API (Active, Pending, Suspended, Terminated)."
        },
        "uptime": {
          "type": "integer",
          "description": "VM uptime in seconds."
        },
        "vmName": {
          "type": "string",
          "description": "VM name. Defaults to `server-name`. Can be changed via change-vm-name.",
          "default": "server-name"
        }
      },
      "required": [
        "sshAndConsoleUser",
        "consolePassword",
        "productId",
        "selectOs",
        "keypairId",
        "cycle",
        "orderId",
        "status",
        "uptime",
        "maxDisk",
        "maxMem",
        "mem",
        "cpus",
        "ciUser",
        "ciPassword",
        "osName",
        "region",
        "regionLabel",
        "nextDue",
        "recurringAmount",
        "billingcycle",
        "productName",
        "lastInvoice",
        "raw"
      ],
      "inputProperties": {
        "consolePassword": {
          "type": "string",
          "description": "Console password at creation. Write-only: never re-fetched from the API.",
          "secret": true
        },
        "cycle": {
          "type": "string",
          "description": "Billing cycle: m monthly, a annual, q quarterly, s semiannual, b biennial, t triennial, p4, p5."
        },
        "description": {
          "type": "string",
          "description": "VM description.",
          "default": ""
        },
        "diskSize": {
          "type": "integer",
          "description": "Target disk size (GB, absolute - not an increment). Can only go up, never down."
        },
        "keypairId": {
          "type": "integer",
          "description": "Keypair id from `NeoliteKeypair`. Can be changed via change-keypair."
        },
        "migrateToPro": {
          "type": "string",
          "description": "Trigger a one-shot migration to NEO Lite Pro: set the neolitepro_product_id target. Change the value again to re-trigger."
        },
        "payWithCreditCard": {
          "type": "boolean",
          "description": "Pay the invoice with the registered credit card at order time. Defaults to true (auto-charge); set false to leave it unpaid in the portal until settled.",
          "default": true
        },
        "powerState": {
          "type": "string",
          "description": "VM power state: start, stop, suspend, resume, or shutdown. Update only sends an action when the value changes."
        },
        "productId": {
          "type": "integer",
          "description": "Product id from the `getProducts` function or the portal."
        },
        "promocode": {
          "type": "string",
          "description": "Promo code to apply at order.",
          "default": ""
        },
        "rebuildOs": {
          "type": "string",
          "description": "When changed, the VM is rebuilt (wipes the OS) with the new OS via the rebuild endpoint. Valid OS values are listed by the `getOsList` function."
        },
        "selectOs": {
          "type": "string",
          "description": "OS installed at creation, from the `getOsList` function. To change OS, use `rebuildOs`."
        },
        "sshAndConsoleUser": {
          "type": "string",
          "description": "SSH and console user set at creation."
        },
        "vmName": {
          "type": "string",
          "description": "VM name. Defaults to `server-name`. Can be changed via change-vm-name.",
          "default": "server-name"
        }
      },
      "requiredInputs": [
        "sshAndConsoleUser",
        "consolePassword",
        "productId",
        "selectOs",
        "keypairId",
        "cycle"
      ]
    },
    "biznetgio:index:NeoliteVmFromSnapshot": {
      "properties": {
        "consolePassword": {
          "type": "string",
          "description": "Console password at creation. Write-only: never re-fetched from the API.",
          "secret": true
        },
        "cycle": {
          "type": "string",
          "description": "Billing cycle: m monthly, a annual, q quarterly, s semiannual, b biennial, t triennial, p4, p5."
        },
        "description": {
          "type": "string",
          "description": "VM description.",
          "default": ""
        },
        "keypairId": {
          "type": "integer",
          "description": "Keypair id from `NeoliteKeypair`."
        },
        "name": {
          "type": "string",
          "description": "Name of the restored VM."
        },
        "orderId": {
          "type": "string",
          "description": "Order id from the creation response."
        },
        "payWithCreditCard": {
          "type": "boolean",
          "description": "Pay the invoice with the registered credit card at order time. Defaults to true (auto-charge); set false to leave it unpaid in the portal until settled.",
          "default": true
        },
        "productId": {
          "type": "integer",
          "description": "Product id from the `getProducts` function or the portal."
        },
        "promocode": {
          "type": "string",
          "description": "Promo code to apply at order.",
          "default": ""
        },
        "snapshotId": {
          "type": "integer",
          "description": "Account id of the source snapshot, from `NeoliteSnapshot`."
        },
        "sshAndConsoleUser": {
          "type": "string",
          "description": "SSH and console user set at creation."
        },
        "status": {
          "type": "string",
          "description": "VM status (Active, Pending, Suspended, Terminated)."
        }
      },
      "required": [
        "snapshotId",
        "productId",
        "cycle",
        "keypairId",
        "name",
        "sshAndConsoleUser",
        "consolePassword",
        "orderId",
        "status"
      ],
      "inputProperties": {
        "consolePassword": {
          "type": "string",
          "description": "Console password at creation. Write-only: never re-fetched from the API.",
          "secret": true
        },
        "cycle": {
          "type": "string",
          "description": "Billing cycle: m monthly, a annual, q quarterly, s semiannual, b biennial, t triennial, p4, p5."
        },
        "description": {
          "type": "string",
          "description": "VM description.",
          "default": ""
        },
        "keypairId": {
          "type": "integer",
          "description": "Keypair id from `NeoliteKeypair`."
        },
        "name": {
          "type": "string",
          "description": "Name of the restored VM."
        },
        "payWithCreditCard": {
          "type": "boolean",
          "description": "Pay the invoice with the registered credit card at order time. Defaults to true (auto-charge); set false to leave it unpaid in the portal until settled.",
          "default": true
        },
        "productId": {
          "type": "integer",
          "description": "Product id from the `getProducts` function or the portal."
        },
        "promocode": {
          "type": "string",
          "description": "Promo code to apply at order.",
          "default": ""
        },
        "snapshotId": {
          "type": "integer",
          "description": "Account id of the source snapshot, from `NeoliteSnapshot`."
        },
        "sshAndConsoleUser": {
          "type": "string",
          "description": "SSH and console user set at creation."
        }
      },
      "requiredInputs": [
        "snapshotId",
        "productId",
        "cycle",
        "keypairId",
        "name",
        "sshAndConsoleUser",
        "consolePassword"
      ]
    },
    "biznetgio:index:ObjectStorage": {
      "properties": {
        "cycle": {
          "type": "string",
          "description": "Billing cycle, e.g. `m` for monthly or `a` for annual."
        },
        "label": {
          "type": "string",
          "description": "Instance label, 6-16 chars, `[a-zA-Z0-9-_]`. Create-only, changing it replaces the instance.",
          "replaceOnChanges": true
        },
        "orderId": {
          "type": "string",
          "description": "Order id from the creation response."
        },
        "payWithCreditCard": {
          "type": "boolean",
          "description": "Pay the invoice with the registered credit card. Defaults to true.",
          "default": true
        },
        "productId": {
          "type": "integer",
          "description": "Object storage product/plan id."
        },
        "promocode": {
          "type": "string",
          "description": "Promo code to apply at creation. Create-only.",
          "replaceOnChanges": true
        },
        "quota": {
          "type": "integer",
          "description": "Quota in GB. Defaults to 10. Can only be increased (counted as an add-on to the previous quota).",
          "default": 10
        },
        "raw": {
          "type": "string",
          "description": "Raw JSON of the last read response, for anything not modeled yet.",
          "secret": true
        },
        "status": {
          "type": "string",
          "description": "Current status of the instance: Active, Pending, Suspended, or Terminated."
        }
      },
      "required": [
        "productId",
        "cycle",
        "label",
        "orderId",
        "status",
        "raw"
      ],
      "inputProperties": {
        "cycle": {
          "type": "string",
          "description": "Billing cycle, e.g. `m` for monthly or `a` for annual."
        },
        "label": {
          "type": "string",
          "description": "Instance label, 6-16 chars, `[a-zA-Z0-9-_]`. Create-only, changing it replaces the instance.",
          "replaceOnChanges": true
        },
        "payWithCreditCard": {
          "type": "boolean",
          "description": "Pay the invoice with the registered credit card. Defaults to true.",
          "default": true
        },
        "productId": {
          "type": "integer",
          "description": "Object storage product/plan id."
        },
        "promocode": {
          "type": "string",
          "description": "Promo code to apply at creation. Create-only.",
          "replaceOnChanges": true
        },
        "quota": {
          "type": "integer",
          "description": "Quota in GB. Defaults to 10. Can only be increased (counted as an add-on to the previous quota).",
          "default": 10
        }
      },
      "requiredInputs": [
        "productId",
        "cycle",
        "label"
      ]
    },
    "biznetgio:index:ObjectStorageBucket": {
      "properties": {
        "accountId": {
          "type": "string",
          "description": "Object storage instance account id. Create-only.",
          "replaceOnChanges": true
        },
        "acl": {
          "type": "string",
          "description": "S3-style canned ACL: empty (default private), private, public-read, public-read-write, authenticated-read, log-delivery-write. Defaults to empty.",
          "default": ""
        },
        "name": {
          "type": "string",
          "description": "Bucket name, minimum 3 chars, `[a-zA-Z0-9-_]`. Immutable, changing it replaces the bucket.",
          "replaceOnChanges": true
        },
        "raw": {
          "type": "string",
          "description": "Raw JSON of the last read response, for anything not modeled yet.",
          "secret": true
        }
      },
      "required": [
        "accountId",
        "name",
        "raw"
      ],
      "inputProperties": {
        "accountId": {
          "type": "string",
          "description": "Object storage instance account id. Create-only.",
          "replaceOnChanges": true
        },
        "acl": {
          "type": "string",
          "description": "S3-style canned ACL: empty (default private), private, public-read, public-read-write, authenticated-read, log-delivery-write. Defaults to empty.",
          "default": ""
        },
        "name": {
          "type": "string",
          "description": "Bucket name, minimum 3 chars, `[a-zA-Z0-9-_]`. Immutable, changing it replaces the bucket.",
          "replaceOnChanges": true
        }
      },
      "requiredInputs": [
        "accountId",
        "name"
      ]
    },
    "biznetgio:index:ObjectStorageCredential": {
      "properties": {
        "accessKey": {
          "type": "string",
          "description": "Credential access key, returned once at create.",
          "secret": true
        },
        "accountId": {
          "type": "string",
          "description": "Object storage instance account id. Create-only.",
          "replaceOnChanges": true
        },
        "active": {
          "type": "boolean",
          "description": "Whether the credential is enabled. Set false to disable without deleting. Defaults to true.",
          "default": true
        },
        "raw": {
          "type": "string",
          "description": "Raw JSON of the last read response, for anything not modeled yet.",
          "secret": true
        },
        "secretKey": {
          "type": "string",
          "description": "Credential secret key, shown only once at create; keeps its last state value on refresh.",
          "secret": true
        }
      },
      "required": [
        "accountId",
        "accessKey",
        "secretKey",
        "raw"
      ],
      "inputProperties": {
        "accountId": {
          "type": "string",
          "description": "Object storage instance account id. Create-only.",
          "replaceOnChanges": true
        },
        "active": {
          "type": "boolean",
          "description": "Whether the credential is enabled. Set false to disable without deleting. Defaults to true.",
          "default": true
        }
      },
      "requiredInputs": [
        "accountId"
      ]
    },
    "biznetgio:index:ObjectStorageObject": {
      "properties": {
        "accountId": {
          "type": "string",
          "description": "Object storage instance account id. Create-only.",
          "replaceOnChanges": true
        },
        "acl": {
          "type": "string",
          "description": "S3-style canned ACL applied to the object. Defaults to empty.",
          "default": ""
        },
        "bucket": {
          "type": "string",
          "description": "Bucket name. Create-only.",
          "replaceOnChanges": true
        },
        "content": {
          "type": "string",
          "description": "Inline content to upload. Exactly one of `source`/`content` required.",
          "secret": true,
          "replaceOnChanges": true
        },
        "key": {
          "type": "string",
          "description": "Object key inside the bucket. Create-only.",
          "replaceOnChanges": true
        },
        "raw": {
          "type": "string",
          "description": "Raw JSON of the last read response, for anything not modeled yet.",
          "secret": true
        },
        "source": {
          "type": "string",
          "description": "Path to the local file to upload. Exactly one of `source`/`content` required.",
          "replaceOnChanges": true
        }
      },
      "required": [
        "accountId",
        "bucket",
        "key",
        "raw"
      ],
      "inputProperties": {
        "accountId": {
          "type": "string",
          "description": "Object storage instance account id. Create-only.",
          "replaceOnChanges": true
        },
        "acl": {
          "type": "string",
          "description": "S3-style canned ACL applied to the object. Defaults to empty.",
          "default": ""
        },
        "bucket": {
          "type": "string",
          "description": "Bucket name. Create-only.",
          "replaceOnChanges": true
        },
        "content": {
          "type": "string",
          "description": "Inline content to upload. Exactly one of `source`/`content` required.",
          "secret": true,
          "replaceOnChanges": true
        },
        "key": {
          "type": "string",
          "description": "Object key inside the bucket. Create-only.",
          "replaceOnChanges": true
        },
        "source": {
          "type": "string",
          "description": "Path to the local file to upload. Exactly one of `source`/`content` required.",
          "replaceOnChanges": true
        }
      },
      "requiredInputs": [
        "accountId",
        "bucket",
        "key"
      ]
    }
  },
  "functions": {
    "biznetgio:index:baremetalOpenvpn": {
      "inputs": {
        "type": "object"
      },
      "outputs": {
        "properties": {
          "config": {
            "description": "OpenVPN client config from `GET /baremetals/openvpn`.",
            "secret": true,
            "type": "string"
          },
          "raw": {
            "description": "Raw JSON of the full response.",
            "secret": true,
            "type": "string"
          }
        },
        "required": [
          "config",
          "raw"
        ],
        "type": "object"
      }
    },
    "biznetgio:index:baremetalProducts": {
      "inputs": {
        "type": "object"
      },
      "outputs": {
        "properties": {
          "products": {
            "description": "Available baremetal products from `GET /baremetals/products`.",
            "items": {
              "$ref": "#/types/biznetgio:index:BaremetalProduct"
            },
            "type": "array"
          },
          "raw": {
            "description": "Raw JSON of the full list response.",
            "secret": true,
            "type": "string"
          }
        },
        "required": [
          "products",
          "raw"
        ],
        "type": "object"
      }
    },
    "biznetgio:index:baremetalRebuildOsList": {
      "inputs": {
        "properties": {
          "accountId": {
            "type": "integer",
            "description": "Account id of the baremetal to list rebuild OS options for."
          }
        },
        "type": "object",
        "required": [
          "accountId"
        ]
      },
      "outputs": {
        "properties": {
          "oss": {
            "description": "Valid OS values for the `rebuildOs` input of Baremetal, from `GET /baremetals/{account_id}/rebuild/oss`.",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "raw": {
            "description": "Raw JSON of the full list response.",
            "secret": true,
            "type": "string"
          }
        },
        "required": [
          "oss",
          "raw"
        ],
        "type": "object"
      }
    },
    "biznetgio:index:gpuConsole": {
      "inputs": {
        "properties": {
          "accountId": {
            "type": "string",
            "description": "Account id of the GPU instance to get console access for."
          }
        },
        "type": "object",
        "required": [
          "accountId"
        ]
      },
      "outputs": {
        "properties": {
          "raw": {
            "description": "Raw JSON of the full response.",
            "secret": true,
            "type": "string"
          },
          "url": {
            "description": "Console access URL from `POST /neo-gpus/accounts/{account_id}/console-access`. Side-effecting: each call may mint a new one-time session, do not use inside plan diffing.",
            "secret": true,
            "type": "string"
          }
        },
        "required": [
          "url",
          "raw"
        ],
        "type": "object"
      }
    },
    "biznetgio:index:gpuGraph": {
      "inputs": {
        "properties": {
          "accountId": {
            "type": "string",
            "description": "Account id of the GPU instance to get the monitoring graph for."
          },
          "timeframe": {
            "type": "string",
            "description": "Timeframe of the graph: `hour`, `day`, `week`, `month`, or `year`. Defaults to `hour`."
          }
        },
        "type": "object",
        "required": [
          "accountId"
        ]
      },
      "outputs": {
        "properties": {
          "graph": {
            "description": "Monitoring graph payload from `GET /neo-gpus/accounts/{account_id}/graph-monitor`, falls back to the raw JSON when no graph field is present.",
            "type": "string"
          },
          "raw": {
            "description": "Raw JSON of the full response.",
            "secret": true,
            "type": "string"
          }
        },
        "required": [
          "graph",
          "raw"
        ],
        "type": "object"
      }
    },
    "biznetgio:index:gpuProducts": {
      "inputs": {
        "type": "object"
      },
      "outputs": {
        "properties": {
          "products": {
            "description": "List of GPU products available for order.",
            "items": {
              "$ref": "#/types/biznetgio:index:GpuProduct"
            },
            "type": "array"
          }
        },
        "required": [
          "products"
        ],
        "type": "object"
      }
    },
    "biznetgio:index:neoliteChangePackageOptions": {
      "inputs": {
        "properties": {
          "accountId": {
            "type": "integer",
            "description": "Account id of the NEO Lite VM."
          }
        },
        "type": "object",
        "required": [
          "accountId"
        ]
      },
      "outputs": {
        "properties": {
          "raw": {
            "secret": true,
            "type": "string"
          }
        },
        "required": [
          "raw"
        ],
        "type": "object"
      }
    },
    "biznetgio:index:neoliteIPAvailability": {
      "inputs": {
        "properties": {
          "productId": {
            "type": "integer",
            "description": "NEO Lite product id."
          }
        },
        "type": "object",
        "required": [
          "productId"
        ]
      },
      "outputs": {
        "properties": {
          "available": {
            "type": "boolean"
          }
        },
        "required": [
          "available"
        ],
        "type": "object"
      }
    },
    "biznetgio:index:neoliteOsList": {
      "inputs": {
        "properties": {
          "productId": {
            "type": "integer",
            "description": "NEO Lite product id."
          }
        },
        "type": "object",
        "required": [
          "productId"
        ]
      },
      "outputs": {
        "properties": {
          "oss": {
            "items": {
              "$ref": "#/types/biznetgio:index:NeoliteOsItem"
            },
            "type": "array"
          }
        },
        "required": [
          "oss"
        ],
        "type": "object"
      }
    },
    "biznetgio:index:neoliteProChangePackageOptions": {
      "inputs": {
        "properties": {
          "accountId": {
            "type": "integer",
            "description": "Account id of the NEO Lite Pro VM."
          }
        },
        "type": "object",
        "required": [
          "accountId"
        ]
      },
      "outputs": {
        "properties": {
          "raw": {
            "secret": true,
            "type": "string"
          }
        },
        "required": [
          "raw"
        ],
        "type": "object"
      }
    },
    "biznetgio:index:neoliteProIPAvailability": {
      "inputs": {
        "properties": {
          "productId": {
            "type": "integer",
            "description": "NEO Lite Pro product id."
          }
        },
        "type": "object",
        "required": [
          "productId"
        ]
      },
      "outputs": {
        "properties": {
          "available": {
            "type": "boolean"
          }
        },
        "required": [
          "available"
        ],
        "type": "object"
      }
    },
    "biznetgio:index:neoliteProOsList": {
      "inputs": {
        "properties": {
          "productId": {
            "type": "integer",
            "description": "NEO Lite Pro product id."
          }
        },
        "type": "object",
        "required": [
          "productId"
        ]
      },
      "outputs": {
        "properties": {
          "oss": {
            "items": {
              "$ref": "#/types/biznetgio:index:NeoliteOsItem"
            },
            "type": "array"
          }
        },
        "required": [
          "oss"
        ],
        "type": "object"
      }
    },
    "biznetgio:index:neoliteProProducts": {
      "inputs": {
        "type": "object"
      },
      "outputs": {
        "properties": {
          "products": {
            "items": {
              "$ref": "#/types/biznetgio:index:NeolitePlanItem"
            },
            "type": "array"
          }
        },
        "required": [
          "products"
        ],
        "type": "object"
      }
    },
    "biznetgio:index:neoliteProStorageUpgradeOptions": {
      "inputs": {
        "properties": {
          "accountId": {
            "type": "integer",
            "description": "Account id of the NEO Lite Pro VM."
          }
        },
        "type": "object",
        "required": [
          "accountId"
        ]
      },
      "outputs": {
        "properties": {
          "raw": {
            "secret": true,
            "type": "string"
          }
        },
        "required": [
          "raw"
        ],
        "type": "object"
      }
    },
    "biznetgio:index:neoliteProducts": {
      "inputs": {
        "type": "object"
      },
      "outputs": {
        "properties": {
          "products": {
            "items": {
              "$ref": "#/types/biznetgio:index:NeolitePlanItem"
            },
            "type": "array"
          }
        },
        "required": [
          "products"
        ],
        "type": "object"
      }
    },
    "biznetgio:index:neoliteStorageUpgradeOptions": {
      "inputs": {
        "properties": {
          "accountId": {
            "type": "integer",
            "description": "Account id of the NEO Lite VM."
          }
        },
        "type": "object",
        "required": [
          "accountId"
        ]
      },
      "outputs": {
        "properties": {
          "raw": {
            "secret": true,
            "type": "string"
          }
        },
        "required": [
          "raw"
        ],
        "type": "object"
      }
    },
    "biznetgio:index:objectStorageBuckets": {
      "inputs": {
        "properties": {
          "accountId": {
            "type": "string",
            "description": "Object storage instance account id."
          }
        },
        "type": "object",
        "required": [
          "accountId"
        ]
      },
      "outputs": {
        "properties": {
          "buckets": {
            "description": "List of buckets inside the instance.",
            "items": {
              "$ref": "#/types/biznetgio:index:ObjectStorageBucketsBucket"
            },
            "type": "array"
          }
        },
        "required": [
          "buckets"
        ],
        "type": "object"
      }
    },
    "biznetgio:index:objectStorageCredentials": {
      "inputs": {
        "properties": {
          "accountId": {
            "type": "string",
            "description": "Object storage instance account id."
          }
        },
        "type": "object",
        "required": [
          "accountId"
        ]
      },
      "outputs": {
        "properties": {
          "credentials": {
            "description": "List of credentials (access key + active state only; secret keys tidak pernah dikeluarkan).",
            "items": {
              "$ref": "#/types/biznetgio:index:ObjectStorageCredentialsCredential"
            },
            "type": "array"
          }
        },
        "required": [
          "credentials"
        ],
        "type": "object"
      }
    },
    "biznetgio:index:objectStorageInstances": {
      "inputs": {
        "properties": {
          "status": {
            "type": "string",
            "description": "Filter by status (Active, Pending, Suspended, Terminated)."
          }
        },
        "type": "object"
      },
      "outputs": {
        "properties": {
          "instances": {
            "description": "List of object storage instances.",
            "items": {
              "$ref": "#/types/biznetgio:index:ObjectStorageInstancesInstance"
            },
            "type": "array"
          }
        },
        "required": [
          "instances"
        ],
        "type": "object"
      }
    }
  }
}
