openapi: 3.2.0 info: contact: email: support@linode.com name: Linode url: https://linode.com description: Add a Cloud Computing instance so you can build, release, and scale applications faster with virtual machines. license: name: Apache 2.0 url: https://www.apache.org/licenses/LICENSE-2.0.html title: 'Akamai: Linode Configuration profiles API' version: 4.215.0 servers: - url: https://api.linode.com tags: - description: A configuration profile establishes the disk layout, kernel installation, and other specifics for a Linode. This is the legacy method used to define a Linode's makeup, and it does not include networking interfaces. Use the Configuration profile interfaces operations to update an existing Linode to include interfaces options. Or, create a new Linode and use the Linode interfaces operations to include network interfaces. name: Configuration profiles paths: /{apiVersion}/linode/instances/{linodeId}/configs: parameters: - description: __Enum__ Call either the `v4` URL, or `v4beta` for operations still in Beta. example: '{{apiVersion}}' in: path name: apiVersion required: true schema: enum: - v4 - v4beta type: string x-akamai: file-path: parameters/api-version-path.yaml - description: ID of the Linode to look up Configuration profiles for. example: '{{linodeId}}' in: path name: linodeId required: true schema: example: 234 type: integer x-akamai: file-path: parameters/linode-id-path-1f0ac574.yaml x-akamai: file-path: paths/linode-configs.yaml path-info: /{apiVersion}/linode/instances/{linodeId}/configs x-linode-cli-command: linodes post: description: 'Adds a new configuration profile to a Linode. > 📘 > > This operation is for legacy configuration profiles only, and not Linode interfaces. > --- - __CLI__. ``` linode-cli linodes config-create 7590910 \ --label "My Config" \ --devices.sda.disk_id 123456 \ --devices.sdb.disk_id 123457 ``` Learn more... - __OAuth scopes__. ``` linodes:read_write ``` Learn more...' externalDocs: description: See documentation for this operation in Akamai's Linode API url: https://techdocs.akamai.com/linode-api/reference/post-add-linode-config operationId: post-add-linode-config requestBody: content: application/json: schema: allOf: - additionalProperties: false properties: comments: description: Optional field for arbitrary user comments on this configuration. example: This is my main Config type: - string - 'null' devices: additionalProperties: false description: 'A dictionary of device disks to use as a device map in a Linode''s configuration profile. - An empty device disk dictionary or a dictionary with empty values for device slots is allowed. - If no devices are specified, booting from this configuration will hold until a device exists that allows the boot process to start.' properties: sda: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdb: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdc: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdd: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sde: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdf: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdg: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdh: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml type: object x-akamai: file-path: schemas/devices.yaml helpers: additionalProperties: false description: Helpers enabled when booting to this Linode configuration. properties: devtmpfs_automount: default: false description: Populates the `/dev` directory early during boot without `udev`. Defaults to `false`. example: true type: boolean distro: description: Helps maintain correct `inittab` or `upstart` console device. example: true type: boolean modules_dep: description: Creates a modules dependency file for the kernel you run. example: true type: boolean network: description: Set to `true` to automatically configure static networking. The `network` option applies only to legacy configuration profile interfaces and does not apply to [Linode interfaces](https://techdocs.akamai.com/linode-api/reference/post-linode-interface). example: true type: - boolean - 'null' updatedb_disabled: description: Set to `true` to disable the `updatedb` cron job to avoid disk thrashing. example: true type: boolean type: object id: description: __Read-only__ The ID of this Config. example: 23456 readOnly: true type: integer x-linode-cli-display: 1 interfaces: description: '`interfaces` is applicable only to legacy configuration profiles and does not apply to [Linode interfaces](https://techdocs.akamai.com/linode-api/reference/post-linode-interface). From one to three network interfaces to add to this Linode''s configuration profile. The position in the array determines which of the Linode''s network interfaces is configured: - First [0]: `eth0` - Second [1]: `eth1` - Third [2]: `eth2` When updating a Linode''s legacy interfaces, _each interface must be redefined_. An empty `interfaces` array results in a default `public` type interface configuration only. If no public Interface is configured, public IP addresses are still assigned to the Linode but will not be usable without manual configuration. > 📘 > > Changes to Linode Interface configurations can be enabled by rebooting the Linode. `vpc` details See the [VPC documentation](https://www.linode.com/docs/products/networking/vpc/#technical-specifications) guide for its specifications and limitations. `vlan` details - Only Next Generation Network (NGN) data centers support VLANs. Run the [List regions](https://techdocs.akamai.com/linode-api/reference/get-regions) operation to view the capabilities of data center regions. If a VLAN is attached to your Linode and you attempt to migrate or clone it to a non-NGN data center, the migration or cloning will not initiate. If a Linode cannot be migrated or cloned because of an incompatibility, you will be prompted to select a different data center or contact support. - See the [VLANs Overview](https://www.linode.com/docs/products/networking/vlans/#technical-specifications) guide to view additional specifications and limitations.' example: - id: 101 ipam_address: null ipv4: null label: null primary: false purpose: public subnet_id: null vpc_id: null - id: 102 ipam_address: 10.0.0.1/24 ipv4: nat_1_1: null vpc: 10.0.0.2 label: vlan-1 primary: false purpose: vlan subnet_id: null vpc_id: null - id: 103 ipam_address: null ipv4: nat_1_1: 203.0.113.2 vpc: 10.0.1.2 label: null primary: true purpose: vpc subnet_id: 101 vpc_id: 111 items: additionalProperties: false description: The network interface to apply to this Linode's configuration profile. properties: active: description: __Read-only__ Returns `true` if the interface is in use, meaning that the Linode has been booted using the configuration profile to which the interface belongs. example: true readOnly: true type: boolean id: description: __Read-only__ The unique ID representing this interface. example: 101 readOnly: true type: integer x-linode-cli-display: 1 ip_ranges: description: 'IPv4 CIDR VPC subnet ranges that are routed to this interface. When included in a request: - A range can''t include any addresses that are assigned to an active Linode or another VPC subnet. - When updating, you need to include any existing ranges to maintain them. If a range is left out, it will be removed. - Submit this as an empty array removes all existing values. - Omit this object to leave existing values as is. <> > 📘 > > This is only supported for interfaces with a `purpose` of `vpc`.' example: - 10.0.0.64/26 - fd04:495a:691c:971c::1:0/112 items: format: ip type: string type: - array - 'null' ipam_address: description: 'This interface''s private IP address in classless inter-domain routing (CIDR) notation. For interfaces with a `purpose` of `public`: - If you include this in a request, set it to an empty string (`""`) or `null`. - Returned as `null` in a response. For interfaces with a `purpose` of `vlan`: - To avoid conflicting addresses, make sure this value is unique for each `vlan` interface. - This should be unique among devices attached to the VLAN to avoid conflict. - If Network Helper is enabled, the Linode''s interface will be automatically configured to use this address after the Linode is rebooted. If Network Helper is disabled, enable the address using [manual static IP configuration](https://www.linode.com/docs/guides/manual-network-configuration/). For interfaces with a `purpose` of `vpc`: - If you include this in a request, set it to an empty string (`""`) or `null`. - Returned as `null` in a response.' example: 10.0.0.1/24 format: ip/netmask type: - string - 'null' x-linode-cli-display: 4 ipv4: additionalProperties: false description: IPv4 addresses configured for this interface. This only applies to interfaces with a `purpose` of `vpc`. Returned as `null` if no `vpc` interface is assigned. properties: nat_1_1: anyOf: - format: ip minLength: 1 title: An available public IPv4 address type: string - enum: - any title: The assigned public IPv4 address type: string description: 'The 1:1 NAT IPv4 address, used to associate a public IPv4 address with the interface''s VPC subnet IPv4 address. - Only supported for interfaces with a `purpose` of `vpc`. - Returned as `null` if no 1:1 NAT is set for a `vpc` type interface. - Returned as an empty string (`""`) for non-`vpc` type interfaces. When included in a request: - You can set this to a specific, public IPv4 address that''s available on the Linode. You can also use the `any` keyword to enable the Linode''s assigned public IPv4 address. - A specified address can''t be shared with another Linode. - Omit this object or include it and set it to `null` or an empty string (`""`) to block creation of a 1:1 NAT. <> > 📘 > > You can''t set this to a specific IPv4 address when creating a new Linode. During the creation process, the network automatically establishes a public IPv4 address for the Linode. Since this address doesn''t exist yet, you can''t include a custom IPv4 address to change it. After your Linode is created, you can [update your configuration profile interface](https://www.linode.com/docs/api/linode-instances/#configuration-profile-interface-update) to change the `nat_1_1` address.' example: 203.0.113.2 type: - string - 'null' vpc: description: 'The VPC subnet IPv4 address for this interface. - This only applies to interfaces with a `purpose` of `vpc`. - Returned as an empty string (`""`) for non-`vpc` type interfaces. When included in a request: - The `vpc` can''t be assigned to an existing Linode as an address or in a range. - The target address can''t be the first two or last two addresses in the subnet IPv4 range. - If omitted, a valid address within the Subnet IPv4 range is automatically assigned.' example: 10.0.0.2 format: ip type: - string - 'null' type: object label: description: '__Filterable__ The name of this interface. For interfaces with a `purpose` of `vlan`: - Required. - This needs to be unique among a Linode''s interfaces. A Linode can''t be attached to the same VLAN multiple times. - This can only contain ASCII letters, numbers, and dashes (`-`). You can''t use two consecutive dashes (`--`). - If the VLAN label is new, a VLAN is created. Up to 10 VLANs can be created in each data center `region`. To view your active VLANs, run the [List VLANs](https://techdocs.akamai.com/linode-api/reference/get-vlans) operation. For interfaces with a `purpose` of `public`: - If you include this in a request, set it to an empty string (`""`) or `null`. - Returned as `null` in a response. For interfaces with a `purpose` of `vpc`: - If you include this in a request, set it to an empty string (`""`) or `null`. - Returned as `null` in a response.' example: example-interface maxLength: 64 minLength: 1 pattern: '[a-zA-Z0-9-]+' type: - string - 'null' x-akamai: labels: - Filterable x-linode-cli-display: 2 x-linode-filterable: true primary: description: 'The default route to the Linode. Each Linode can have one interface set as its `primary`. If you haven''t specifically set a `primary`, the first non-`vlan` type interface is automatically treated as the primary. > 📘 > > This needs to be set to `false` for any interface that uses `vlan` as its `purpose`.' example: true type: boolean purpose: description: 'The type of interface. This can be `public`, `vlan`, or `vpc`. For interfaces with a `purpose` of `public`: - You can only define one `public` interface per Linode. - The Linode''s default public IPv4 address is assigned to the `public` interface. - A Linode needs a `public` interface in the first or `eth0` position to be reachable via the public internet, after it boots. If no `public` interface is configured, you can only access the Linode through [LISH](https://www.linode.com/docs/products/compute/compute-instances/guides/lish/), or through another Linode that''s connected to the same VLAN or VPC. For interfaces with a `purpose` of `vlan`: - Configuring this `purpose` of interface attaches a Linode to the VLAN with the specified `label`. - If an `ipam_address` is configured, the Linode uses this address. For interfaces with a `purpose` of `vpc`: - Configuring this `purpose` of interface attaches a Linode to an existing VPC subnet with the specified `subnet_id`. - When the interface is activated, the Linode is configured to use an IP address from the range in the assigned VPC subnet. See `ipv4.vpc` for more information.' enum: - public - vlan - vpc example: vlan type: string x-linode-cli-display: 3 subnet_id: description: 'The `id` of the VPC subnet for this interface. Use this value in a request to assign a Linode to a VPC subnet. - Required for `vpc` type interfaces. - Returned as `null` for non-`vpc` type interfaces. - Once you''ve assigned a VPC subnet to an interface, you can''t update it. - You need to reboot a Linode using the interface''s configuration profile to assign the Linode to a VPC subnet.' example: 101 type: - integer - 'null' vpc_id: description: __Read-only__ The `id` of the VPC configured for this interface. Returned as `null` for non-`vpc` type interfaces. example: 111 readOnly: true type: - integer - 'null' required: - purpose type: object x-akamai: file-path: schemas/linode-config-interface.yaml maxItems: 3 minItems: 1 type: array uniqueItems: true x-akamai: file-path: schemas/linode-config-interfaces.yaml kernel: default: linode/latest-64bit description: 'The ID of the kernel used to boot a Linode. Run the [List kernels](https://techdocs.akamai.com/linode-api/reference/get-kernels) operation to see all available kernels. Here are some commonly used kernels: - `linode/latest-64bit`. This is the default, our latest kernel at the time of an instance boot or reboot. - `linode/grub2`. The upstream distribution-supplied kernel that''s installed on the primary disk, or a custom kernel if installed. - `linode/direct-disk`. The master boot record (MBR) of the primary disk or root device. Use this in place of a Linux kernel.' example: linode/latest-64bit type: string x-linode-cli-display: 3 label: description: __Filterable__ The name of the configuration for display in Akamai Cloud Manager. example: My Config maxLength: 48 minLength: 1 type: string x-akamai: labels: - Filterable x-linode-cli-display: 2 x-linode-filterable: true memory_limit: description: Defaults to the total RAM of the Linode. example: 2048 type: integer root_device: description: 'The root device to boot. > 📘 - If you leave this empty or set an invalid value, the root device defaults to `/dev/sda`. - If you specify a device at the root device location and it''s not mounted, the Linode won''t boot until a device is mounted.' example: /dev/sda pattern: a-z, A-Z, 0-9, /, _, - type: string run_level: description: Defines the state of your Linode after booting. Defaults to `default`. enum: - default - single - binbash example: default type: string virt_mode: description: 'Controls the virtualization mode. Defaults to `paravirt`. - `paravirt` is suitable for most cases. Linodes running in `paravirt` mode share some qualities with the host, ultimately making it run faster since there is less transition between it and the host. - `fullvirt` affords more customization, but is slower because 100% of the VM is virtualized.' enum: - paravirt - fullvirt example: paravirt type: string type: object x-akamai: file-path: schemas/linode-config.yaml required: - label - devices x-akamai: file-path: schemas/added-post-add-linode-config.yaml x-example: x-ref: ../examples/post-add-linode-config.json description: The parameters to set when creating the configuration profile. This determines things like the kernel, devices, and how much memory a Linode boots with. required: true responses: '200': content: application/json: schema: additionalProperties: false properties: comments: description: Optional field for arbitrary user comments on this configuration. example: This is my main Config type: - string - 'null' devices: additionalProperties: false description: 'A dictionary of device disks to use as a device map in a Linode''s configuration profile. - An empty device disk dictionary or a dictionary with empty values for device slots is allowed. - If no devices are specified, booting from this configuration will hold until a device exists that allows the boot process to start.' properties: sda: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdb: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdc: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdd: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sde: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdf: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdg: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdh: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml type: object x-akamai: file-path: schemas/devices.yaml helpers: additionalProperties: false description: Helpers enabled when booting to this Linode configuration. properties: devtmpfs_automount: default: false description: Populates the `/dev` directory early during boot without `udev`. Defaults to `false`. example: true type: boolean distro: description: Helps maintain correct `inittab` or `upstart` console device. example: true type: boolean modules_dep: description: Creates a modules dependency file for the kernel you run. example: true type: boolean network: description: Set to `true` to automatically configure static networking. The `network` option applies only to legacy configuration profile interfaces and does not apply to [Linode interfaces](https://techdocs.akamai.com/linode-api/reference/post-linode-interface). example: true type: - boolean - 'null' updatedb_disabled: description: Set to `true` to disable the `updatedb` cron job to avoid disk thrashing. example: true type: boolean type: object id: description: __Read-only__ The ID of this Config. example: 23456 readOnly: true type: integer x-linode-cli-display: 1 interfaces: description: '`interfaces` is applicable only to legacy configuration profiles and does not apply to [Linode interfaces](https://techdocs.akamai.com/linode-api/reference/post-linode-interface). From one to three network interfaces to add to this Linode''s configuration profile. The position in the array determines which of the Linode''s network interfaces is configured: - First [0]: `eth0` - Second [1]: `eth1` - Third [2]: `eth2` When updating a Linode''s legacy interfaces, _each interface must be redefined_. An empty `interfaces` array results in a default `public` type interface configuration only. If no public Interface is configured, public IP addresses are still assigned to the Linode but will not be usable without manual configuration. > 📘 > > Changes to Linode Interface configurations can be enabled by rebooting the Linode. `vpc` details See the [VPC documentation](https://www.linode.com/docs/products/networking/vpc/#technical-specifications) guide for its specifications and limitations. `vlan` details - Only Next Generation Network (NGN) data centers support VLANs. Run the [List regions](https://techdocs.akamai.com/linode-api/reference/get-regions) operation to view the capabilities of data center regions. If a VLAN is attached to your Linode and you attempt to migrate or clone it to a non-NGN data center, the migration or cloning will not initiate. If a Linode cannot be migrated or cloned because of an incompatibility, you will be prompted to select a different data center or contact support. - See the [VLANs Overview](https://www.linode.com/docs/products/networking/vlans/#technical-specifications) guide to view additional specifications and limitations.' example: - id: 101 ipam_address: null ipv4: null label: null primary: false purpose: public subnet_id: null vpc_id: null - id: 102 ipam_address: 10.0.0.1/24 ipv4: nat_1_1: null vpc: 10.0.0.2 label: vlan-1 primary: false purpose: vlan subnet_id: null vpc_id: null - id: 103 ipam_address: null ipv4: nat_1_1: 203.0.113.2 vpc: 10.0.1.2 label: null primary: true purpose: vpc subnet_id: 101 vpc_id: 111 items: additionalProperties: false description: The network interface to apply to this Linode's configuration profile. properties: active: description: __Read-only__ Returns `true` if the interface is in use, meaning that the Linode has been booted using the configuration profile to which the interface belongs. example: true readOnly: true type: boolean id: description: __Read-only__ The unique ID representing this interface. example: 101 readOnly: true type: integer x-linode-cli-display: 1 ip_ranges: description: 'IPv4 CIDR VPC subnet ranges that are routed to this interface. When included in a request: - A range can''t include any addresses that are assigned to an active Linode or another VPC subnet. - When updating, you need to include any existing ranges to maintain them. If a range is left out, it will be removed. - Submit this as an empty array removes all existing values. - Omit this object to leave existing values as is. <> > 📘 > > This is only supported for interfaces with a `purpose` of `vpc`.' example: - 10.0.0.64/26 - fd04:495a:691c:971c::1:0/112 items: format: ip type: string type: - array - 'null' ipam_address: description: 'This interface''s private IP address in classless inter-domain routing (CIDR) notation. For interfaces with a `purpose` of `public`: - If you include this in a request, set it to an empty string (`""`) or `null`. - Returned as `null` in a response. For interfaces with a `purpose` of `vlan`: - To avoid conflicting addresses, make sure this value is unique for each `vlan` interface. - This should be unique among devices attached to the VLAN to avoid conflict. - If Network Helper is enabled, the Linode''s interface will be automatically configured to use this address after the Linode is rebooted. If Network Helper is disabled, enable the address using [manual static IP configuration](https://www.linode.com/docs/guides/manual-network-configuration/). For interfaces with a `purpose` of `vpc`: - If you include this in a request, set it to an empty string (`""`) or `null`. - Returned as `null` in a response.' example: 10.0.0.1/24 format: ip/netmask type: - string - 'null' x-linode-cli-display: 4 ipv4: additionalProperties: false description: IPv4 addresses configured for this interface. This only applies to interfaces with a `purpose` of `vpc`. Returned as `null` if no `vpc` interface is assigned. properties: nat_1_1: anyOf: - format: ip minLength: 1 title: An available public IPv4 address type: string - enum: - any title: The assigned public IPv4 address type: string description: 'The 1:1 NAT IPv4 address, used to associate a public IPv4 address with the interface''s VPC subnet IPv4 address. - Only supported for interfaces with a `purpose` of `vpc`. - Returned as `null` if no 1:1 NAT is set for a `vpc` type interface. - Returned as an empty string (`""`) for non-`vpc` type interfaces. When included in a request: - You can set this to a specific, public IPv4 address that''s available on the Linode. You can also use the `any` keyword to enable the Linode''s assigned public IPv4 address. - A specified address can''t be shared with another Linode. - Omit this object or include it and set it to `null` or an empty string (`""`) to block creation of a 1:1 NAT. <> > 📘 > > You can''t set this to a specific IPv4 address when creating a new Linode. During the creation process, the network automatically establishes a public IPv4 address for the Linode. Since this address doesn''t exist yet, you can''t include a custom IPv4 address to change it. After your Linode is created, you can [update your configuration profile interface](https://www.linode.com/docs/api/linode-instances/#configuration-profile-interface-update) to change the `nat_1_1` address.' example: 203.0.113.2 type: - string - 'null' vpc: description: 'The VPC subnet IPv4 address for this interface. - This only applies to interfaces with a `purpose` of `vpc`. - Returned as an empty string (`""`) for non-`vpc` type interfaces. When included in a request: - The `vpc` can''t be assigned to an existing Linode as an address or in a range. - The target address can''t be the first two or last two addresses in the subnet IPv4 range. - If omitted, a valid address within the Subnet IPv4 range is automatically assigned.' example: 10.0.0.2 format: ip type: - string - 'null' type: object label: description: '__Filterable__ The name of this interface. For interfaces with a `purpose` of `vlan`: - Required. - This needs to be unique among a Linode''s interfaces. A Linode can''t be attached to the same VLAN multiple times. - This can only contain ASCII letters, numbers, and dashes (`-`). You can''t use two consecutive dashes (`--`). - If the VLAN label is new, a VLAN is created. Up to 10 VLANs can be created in each data center `region`. To view your active VLANs, run the [List VLANs](https://techdocs.akamai.com/linode-api/reference/get-vlans) operation. For interfaces with a `purpose` of `public`: - If you include this in a request, set it to an empty string (`""`) or `null`. - Returned as `null` in a response. For interfaces with a `purpose` of `vpc`: - If you include this in a request, set it to an empty string (`""`) or `null`. - Returned as `null` in a response.' example: example-interface maxLength: 64 minLength: 1 pattern: '[a-zA-Z0-9-]+' type: - string - 'null' x-akamai: labels: - Filterable x-linode-cli-display: 2 x-linode-filterable: true primary: description: 'The default route to the Linode. Each Linode can have one interface set as its `primary`. If you haven''t specifically set a `primary`, the first non-`vlan` type interface is automatically treated as the primary. > 📘 > > This needs to be set to `false` for any interface that uses `vlan` as its `purpose`.' example: true type: boolean purpose: description: 'The type of interface. This can be `public`, `vlan`, or `vpc`. For interfaces with a `purpose` of `public`: - You can only define one `public` interface per Linode. - The Linode''s default public IPv4 address is assigned to the `public` interface. - A Linode needs a `public` interface in the first or `eth0` position to be reachable via the public internet, after it boots. If no `public` interface is configured, you can only access the Linode through [LISH](https://www.linode.com/docs/products/compute/compute-instances/guides/lish/), or through another Linode that''s connected to the same VLAN or VPC. For interfaces with a `purpose` of `vlan`: - Configuring this `purpose` of interface attaches a Linode to the VLAN with the specified `label`. - If an `ipam_address` is configured, the Linode uses this address. For interfaces with a `purpose` of `vpc`: - Configuring this `purpose` of interface attaches a Linode to an existing VPC subnet with the specified `subnet_id`. - When the interface is activated, the Linode is configured to use an IP address from the range in the assigned VPC subnet. See `ipv4.vpc` for more information.' enum: - public - vlan - vpc example: vlan type: string x-linode-cli-display: 3 subnet_id: description: 'The `id` of the VPC subnet for this interface. Use this value in a request to assign a Linode to a VPC subnet. - Required for `vpc` type interfaces. - Returned as `null` for non-`vpc` type interfaces. - Once you''ve assigned a VPC subnet to an interface, you can''t update it. - You need to reboot a Linode using the interface''s configuration profile to assign the Linode to a VPC subnet.' example: 101 type: - integer - 'null' vpc_id: description: __Read-only__ The `id` of the VPC configured for this interface. Returned as `null` for non-`vpc` type interfaces. example: 111 readOnly: true type: - integer - 'null' required: - purpose type: object x-akamai: file-path: schemas/linode-config-interface.yaml maxItems: 3 minItems: 1 type: array uniqueItems: true x-akamai: file-path: schemas/linode-config-interfaces.yaml kernel: default: linode/latest-64bit description: 'The ID of the kernel used to boot a Linode. Run the [List kernels](https://techdocs.akamai.com/linode-api/reference/get-kernels) operation to see all available kernels. Here are some commonly used kernels: - `linode/latest-64bit`. This is the default, our latest kernel at the time of an instance boot or reboot. - `linode/grub2`. The upstream distribution-supplied kernel that''s installed on the primary disk, or a custom kernel if installed. - `linode/direct-disk`. The master boot record (MBR) of the primary disk or root device. Use this in place of a Linux kernel.' example: linode/latest-64bit type: string x-linode-cli-display: 3 label: description: __Filterable__ The name of the configuration for display in Akamai Cloud Manager. example: My Config maxLength: 48 minLength: 1 type: string x-akamai: labels: - Filterable x-linode-cli-display: 2 x-linode-filterable: true memory_limit: description: Defaults to the total RAM of the Linode. example: 2048 type: integer root_device: description: 'The root device to boot. > 📘 - If you leave this empty or set an invalid value, the root device defaults to `/dev/sda`. - If you specify a device at the root device location and it''s not mounted, the Linode won''t boot until a device is mounted.' example: /dev/sda pattern: a-z, A-Z, 0-9, /, _, - type: string run_level: description: Defines the state of your Linode after booting. Defaults to `default`. enum: - default - single - binbash example: default type: string virt_mode: description: 'Controls the virtualization mode. Defaults to `paravirt`. - `paravirt` is suitable for most cases. Linodes running in `paravirt` mode share some qualities with the host, ultimately making it run faster since there is less transition between it and the host. - `fullvirt` affords more customization, but is slower because 100% of the VM is virtualized.' enum: - paravirt - fullvirt example: paravirt type: string type: object x-akamai: file-path: schemas/linode-config.yaml x-example: x-ref: ../examples/post-add-linode-config-200.json description: A configuration profile was created. default: content: application/json: schema: additionalProperties: false properties: errors: items: additionalProperties: false description: An object for describing a single error that occurred during the processing of a request. properties: field: description: The field in the request that caused this error. This may be a path, separated by periods in the case of nested fields. In some cases this may come back as `null` if the error is not specific to any single element of the request. example: fieldname type: string reason: description: What happened to cause this error. In most cases, this can be fixed immediately by changing the data you sent in the request, but in some cases you will be instructed to [Open a support ticket](https://techdocs.akamai.com/linode-api/reference/post-ticket) or perform some other action before you can complete the request successfully. example: fieldname must be a valid value type: string type: object x-akamai: file-path: schemas/error-object.yaml type: array type: object description: See [Errors](https://techdocs.akamai.com/linode-api/reference/errors) for the range of possible error response codes. security: - personalAccessToken: [] - oauth: - linodes:read_write summary: Create a configuration profile tags: - Configuration profiles x-akamai: tabs: - syntax: "linode-cli linodes config-create 7590910 \\\n --label \"My Config\" \\\n --devices.sda.disk_id 123456 \\\n --devices.sdb.disk_id 123457" title: CLI url: https://techdocs.akamai.com/cloud-computing/docs/getting-started-with-the-linode-cli - syntax: linodes:read_write title: OAuth scopes url: https://techdocs.akamai.com/linode-api/reference/get-started#oauth x-linode-cli-action: config-create get: description: 'Lists configuration profiles associated with a Linode. > --- - __CLI__. ``` linode-cli linodes configs-list 123 ``` Learn more... - __OAuth scopes__. ``` linodes:read_only ``` Learn more...' externalDocs: description: See documentation for this operation in Akamai's Linode API url: https://techdocs.akamai.com/linode-api/reference/get-linode-configs operationId: get-linode-configs parameters: - description: The page of a collection to return. example: '{{page}}' in: query name: page required: false schema: default: 1 example: 6 minimum: 1 type: integer x-akamai: file-path: parameters/page-offset.yaml - description: The number of items to return per page. example: '{{page_size}}' in: query name: page_size schema: default: 100 example: 50 maximum: 500 minimum: 25 type: integer x-akamai: file-path: parameters/page-size.yaml responses: '200': content: application/json: schema: additionalProperties: false properties: data: items: additionalProperties: false properties: comments: description: Optional field for arbitrary user comments on this configuration. example: This is my main Config type: - string - 'null' devices: additionalProperties: false description: 'A dictionary of device disks to use as a device map in a Linode''s configuration profile. - An empty device disk dictionary or a dictionary with empty values for device slots is allowed. - If no devices are specified, booting from this configuration will hold until a device exists that allows the boot process to start.' properties: sda: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdb: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdc: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdd: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sde: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdf: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdg: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdh: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml type: object x-akamai: file-path: schemas/devices.yaml helpers: additionalProperties: false description: Helpers enabled when booting to this Linode configuration. properties: devtmpfs_automount: default: false description: Populates the `/dev` directory early during boot without `udev`. Defaults to `false`. example: true type: boolean distro: description: Helps maintain correct `inittab` or `upstart` console device. example: true type: boolean modules_dep: description: Creates a modules dependency file for the kernel you run. example: true type: boolean network: description: Set to `true` to automatically configure static networking. The `network` option applies only to legacy configuration profile interfaces and does not apply to [Linode interfaces](https://techdocs.akamai.com/linode-api/reference/post-linode-interface). example: true type: - boolean - 'null' updatedb_disabled: description: Set to `true` to disable the `updatedb` cron job to avoid disk thrashing. example: true type: boolean type: object id: description: __Read-only__ The ID of this Config. example: 23456 readOnly: true type: integer x-linode-cli-display: 1 interfaces: description: '`interfaces` is applicable only to legacy configuration profiles and does not apply to [Linode interfaces](https://techdocs.akamai.com/linode-api/reference/post-linode-interface). From one to three network interfaces to add to this Linode''s configuration profile. The position in the array determines which of the Linode''s network interfaces is configured: - First [0]: `eth0` - Second [1]: `eth1` - Third [2]: `eth2` When updating a Linode''s legacy interfaces, _each interface must be redefined_. An empty `interfaces` array results in a default `public` type interface configuration only. If no public Interface is configured, public IP addresses are still assigned to the Linode but will not be usable without manual configuration. > 📘 > > Changes to Linode Interface configurations can be enabled by rebooting the Linode. `vpc` details See the [VPC documentation](https://www.linode.com/docs/products/networking/vpc/#technical-specifications) guide for its specifications and limitations. `vlan` details - Only Next Generation Network (NGN) data centers support VLANs. Run the [List regions](https://techdocs.akamai.com/linode-api/reference/get-regions) operation to view the capabilities of data center regions. If a VLAN is attached to your Linode and you attempt to migrate or clone it to a non-NGN data center, the migration or cloning will not initiate. If a Linode cannot be migrated or cloned because of an incompatibility, you will be prompted to select a different data center or contact support. - See the [VLANs Overview](https://www.linode.com/docs/products/networking/vlans/#technical-specifications) guide to view additional specifications and limitations.' example: - id: 101 ipam_address: null ipv4: null label: null primary: false purpose: public subnet_id: null vpc_id: null - id: 102 ipam_address: 10.0.0.1/24 ipv4: nat_1_1: null vpc: 10.0.0.2 label: vlan-1 primary: false purpose: vlan subnet_id: null vpc_id: null - id: 103 ipam_address: null ipv4: nat_1_1: 203.0.113.2 vpc: 10.0.1.2 label: null primary: true purpose: vpc subnet_id: 101 vpc_id: 111 items: additionalProperties: false description: The network interface to apply to this Linode's configuration profile. properties: active: description: __Read-only__ Returns `true` if the interface is in use, meaning that the Linode has been booted using the configuration profile to which the interface belongs. example: true readOnly: true type: boolean id: description: __Read-only__ The unique ID representing this interface. example: 101 readOnly: true type: integer x-linode-cli-display: 1 ip_ranges: description: 'IPv4 CIDR VPC subnet ranges that are routed to this interface. When included in a request: - A range can''t include any addresses that are assigned to an active Linode or another VPC subnet. - When updating, you need to include any existing ranges to maintain them. If a range is left out, it will be removed. - Submit this as an empty array removes all existing values. - Omit this object to leave existing values as is. <> > 📘 > > This is only supported for interfaces with a `purpose` of `vpc`.' example: - 10.0.0.64/26 - fd04:495a:691c:971c::1:0/112 items: format: ip type: string type: - array - 'null' ipam_address: description: 'This interface''s private IP address in classless inter-domain routing (CIDR) notation. For interfaces with a `purpose` of `public`: - If you include this in a request, set it to an empty string (`""`) or `null`. - Returned as `null` in a response. For interfaces with a `purpose` of `vlan`: - To avoid conflicting addresses, make sure this value is unique for each `vlan` interface. - This should be unique among devices attached to the VLAN to avoid conflict. - If Network Helper is enabled, the Linode''s interface will be automatically configured to use this address after the Linode is rebooted. If Network Helper is disabled, enable the address using [manual static IP configuration](https://www.linode.com/docs/guides/manual-network-configuration/). For interfaces with a `purpose` of `vpc`: - If you include this in a request, set it to an empty string (`""`) or `null`. - Returned as `null` in a response.' example: 10.0.0.1/24 format: ip/netmask type: - string - 'null' x-linode-cli-display: 4 ipv4: additionalProperties: false description: IPv4 addresses configured for this interface. This only applies to interfaces with a `purpose` of `vpc`. Returned as `null` if no `vpc` interface is assigned. properties: nat_1_1: anyOf: - format: ip minLength: 1 title: An available public IPv4 address type: string - enum: - any title: The assigned public IPv4 address type: string description: 'The 1:1 NAT IPv4 address, used to associate a public IPv4 address with the interface''s VPC subnet IPv4 address. - Only supported for interfaces with a `purpose` of `vpc`. - Returned as `null` if no 1:1 NAT is set for a `vpc` type interface. - Returned as an empty string (`""`) for non-`vpc` type interfaces. When included in a request: - You can set this to a specific, public IPv4 address that''s available on the Linode. You can also use the `any` keyword to enable the Linode''s assigned public IPv4 address. - A specified address can''t be shared with another Linode. - Omit this object or include it and set it to `null` or an empty string (`""`) to block creation of a 1:1 NAT. <> > 📘 > > You can''t set this to a specific IPv4 address when creating a new Linode. During the creation process, the network automatically establishes a public IPv4 address for the Linode. Since this address doesn''t exist yet, you can''t include a custom IPv4 address to change it. After your Linode is created, you can [update your configuration profile interface](https://www.linode.com/docs/api/linode-instances/#configuration-profile-interface-update) to change the `nat_1_1` address.' example: 203.0.113.2 type: - string - 'null' vpc: description: 'The VPC subnet IPv4 address for this interface. - This only applies to interfaces with a `purpose` of `vpc`. - Returned as an empty string (`""`) for non-`vpc` type interfaces. When included in a request: - The `vpc` can''t be assigned to an existing Linode as an address or in a range. - The target address can''t be the first two or last two addresses in the subnet IPv4 range. - If omitted, a valid address within the Subnet IPv4 range is automatically assigned.' example: 10.0.0.2 format: ip type: - string - 'null' type: object label: description: '__Filterable__ The name of this interface. For interfaces with a `purpose` of `vlan`: - Required. - This needs to be unique among a Linode''s interfaces. A Linode can''t be attached to the same VLAN multiple times. - This can only contain ASCII letters, numbers, and dashes (`-`). You can''t use two consecutive dashes (`--`). - If the VLAN label is new, a VLAN is created. Up to 10 VLANs can be created in each data center `region`. To view your active VLANs, run the [List VLANs](https://techdocs.akamai.com/linode-api/reference/get-vlans) operation. For interfaces with a `purpose` of `public`: - If you include this in a request, set it to an empty string (`""`) or `null`. - Returned as `null` in a response. For interfaces with a `purpose` of `vpc`: - If you include this in a request, set it to an empty string (`""`) or `null`. - Returned as `null` in a response.' example: example-interface maxLength: 64 minLength: 1 pattern: '[a-zA-Z0-9-]+' type: - string - 'null' x-akamai: labels: - Filterable x-linode-cli-display: 2 x-linode-filterable: true primary: description: 'The default route to the Linode. Each Linode can have one interface set as its `primary`. If you haven''t specifically set a `primary`, the first non-`vlan` type interface is automatically treated as the primary. > 📘 > > This needs to be set to `false` for any interface that uses `vlan` as its `purpose`.' example: true type: boolean purpose: description: 'The type of interface. This can be `public`, `vlan`, or `vpc`. For interfaces with a `purpose` of `public`: - You can only define one `public` interface per Linode. - The Linode''s default public IPv4 address is assigned to the `public` interface. - A Linode needs a `public` interface in the first or `eth0` position to be reachable via the public internet, after it boots. If no `public` interface is configured, you can only access the Linode through [LISH](https://www.linode.com/docs/products/compute/compute-instances/guides/lish/), or through another Linode that''s connected to the same VLAN or VPC. For interfaces with a `purpose` of `vlan`: - Configuring this `purpose` of interface attaches a Linode to the VLAN with the specified `label`. - If an `ipam_address` is configured, the Linode uses this address. For interfaces with a `purpose` of `vpc`: - Configuring this `purpose` of interface attaches a Linode to an existing VPC subnet with the specified `subnet_id`. - When the interface is activated, the Linode is configured to use an IP address from the range in the assigned VPC subnet. See `ipv4.vpc` for more information.' enum: - public - vlan - vpc example: vlan type: string x-linode-cli-display: 3 subnet_id: description: 'The `id` of the VPC subnet for this interface. Use this value in a request to assign a Linode to a VPC subnet. - Required for `vpc` type interfaces. - Returned as `null` for non-`vpc` type interfaces. - Once you''ve assigned a VPC subnet to an interface, you can''t update it. - You need to reboot a Linode using the interface''s configuration profile to assign the Linode to a VPC subnet.' example: 101 type: - integer - 'null' vpc_id: description: __Read-only__ The `id` of the VPC configured for this interface. Returned as `null` for non-`vpc` type interfaces. example: 111 readOnly: true type: - integer - 'null' required: - purpose type: object x-akamai: file-path: schemas/linode-config-interface.yaml maxItems: 3 minItems: 1 type: array uniqueItems: true x-akamai: file-path: schemas/linode-config-interfaces.yaml kernel: default: linode/latest-64bit description: 'The ID of the kernel used to boot a Linode. Run the [List kernels](https://techdocs.akamai.com/linode-api/reference/get-kernels) operation to see all available kernels. Here are some commonly used kernels: - `linode/latest-64bit`. This is the default, our latest kernel at the time of an instance boot or reboot. - `linode/grub2`. The upstream distribution-supplied kernel that''s installed on the primary disk, or a custom kernel if installed. - `linode/direct-disk`. The master boot record (MBR) of the primary disk or root device. Use this in place of a Linux kernel.' example: linode/latest-64bit type: string x-linode-cli-display: 3 label: description: __Filterable__ The name of the configuration for display in Akamai Cloud Manager. example: My Config maxLength: 48 minLength: 1 type: string x-akamai: labels: - Filterable x-linode-cli-display: 2 x-linode-filterable: true memory_limit: description: Defaults to the total RAM of the Linode. example: 2048 type: integer root_device: description: 'The root device to boot. > 📘 - If you leave this empty or set an invalid value, the root device defaults to `/dev/sda`. - If you specify a device at the root device location and it''s not mounted, the Linode won''t boot until a device is mounted.' example: /dev/sda pattern: a-z, A-Z, 0-9, /, _, - type: string run_level: description: Defines the state of your Linode after booting. Defaults to `default`. enum: - default - single - binbash example: default type: string virt_mode: description: 'Controls the virtualization mode. Defaults to `paravirt`. - `paravirt` is suitable for most cases. Linodes running in `paravirt` mode share some qualities with the host, ultimately making it run faster since there is less transition between it and the host. - `fullvirt` affords more customization, but is slower because 100% of the VM is virtualized.' enum: - paravirt - fullvirt example: paravirt type: string type: object x-akamai: file-path: schemas/linode-config.yaml type: array page: description: __Read-only__ The current [page](https://techdocs.akamai.com/linode-api/reference/pagination). example: 1 readOnly: true type: integer pages: description: __Read-only__ The total number of [pages](https://techdocs.akamai.com/linode-api/reference/pagination). example: 1 readOnly: true type: integer results: description: __Read-only__ The total number of results. example: 1 readOnly: true type: integer type: object x-akamai: file-path: schemas/added-get-linode-configs-200.yaml x-example: x-ref: ../examples/get-linode-configs-200.json description: Returns the configuration profiles associated with this Linode. security: - personalAccessToken: [] - oauth: - linodes:read_only summary: List configuration profiles tags: - Configuration profiles x-akamai: tabs: - syntax: linode-cli linodes configs-list 123 title: CLI url: https://techdocs.akamai.com/cloud-computing/docs/getting-started-with-the-linode-cli - syntax: linodes:read_only title: OAuth scopes url: https://techdocs.akamai.com/linode-api/reference/get-started#oauth x-linode-cli-action: configs-list /{apiVersion}/linode/instances/{linodeId}/configs/{configId}: parameters: - description: __Enum__ Call either the `v4` URL, or `v4beta` for operations still in Beta. example: '{{apiVersion}}' in: path name: apiVersion required: true schema: enum: - v4 - v4beta type: string x-akamai: file-path: parameters/api-version-path.yaml - description: The `id` of the Linode. example: '{{linodeId}}' in: path name: linodeId required: true schema: example: 234 type: integer x-akamai: file-path: parameters/linode-id.yaml - description: The `id` of the Configuration Profile. example: '{{configId}}' in: path name: configId required: true schema: example: 521 type: integer x-akamai: file-path: parameters/config-id-profile.yaml x-akamai: file-path: paths/linode-config.yaml path-info: /{apiVersion}/linode/instances/{linodeId}/configs/{configId} x-linode-cli-command: linodes get: description: 'Returns information about a specific configuration profile. > --- - __CLI__. ``` linode-cli linodes config-view 123 23456 ``` Learn more... - __OAuth scopes__. ``` linodes:read_only ``` Learn more...' externalDocs: description: See documentation for this operation in Akamai's Linode API url: https://techdocs.akamai.com/linode-api/reference/get-linode-config operationId: get-linode-config responses: '200': content: application/json: schema: additionalProperties: false properties: comments: description: Optional field for arbitrary user comments on this configuration. example: This is my main Config type: - string - 'null' devices: additionalProperties: false description: 'A dictionary of device disks to use as a device map in a Linode''s configuration profile. - An empty device disk dictionary or a dictionary with empty values for device slots is allowed. - If no devices are specified, booting from this configuration will hold until a device exists that allows the boot process to start.' properties: sda: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdb: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdc: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdd: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sde: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdf: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdg: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdh: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml type: object x-akamai: file-path: schemas/devices.yaml helpers: additionalProperties: false description: Helpers enabled when booting to this Linode configuration. properties: devtmpfs_automount: default: false description: Populates the `/dev` directory early during boot without `udev`. Defaults to `false`. example: true type: boolean distro: description: Helps maintain correct `inittab` or `upstart` console device. example: true type: boolean modules_dep: description: Creates a modules dependency file for the kernel you run. example: true type: boolean network: description: Set to `true` to automatically configure static networking. The `network` option applies only to legacy configuration profile interfaces and does not apply to [Linode interfaces](https://techdocs.akamai.com/linode-api/reference/post-linode-interface). example: true type: - boolean - 'null' updatedb_disabled: description: Set to `true` to disable the `updatedb` cron job to avoid disk thrashing. example: true type: boolean type: object id: description: __Read-only__ The ID of this Config. example: 23456 readOnly: true type: integer x-linode-cli-display: 1 interfaces: description: '`interfaces` is applicable only to legacy configuration profiles and does not apply to [Linode interfaces](https://techdocs.akamai.com/linode-api/reference/post-linode-interface). From one to three network interfaces to add to this Linode''s configuration profile. The position in the array determines which of the Linode''s network interfaces is configured: - First [0]: `eth0` - Second [1]: `eth1` - Third [2]: `eth2` When updating a Linode''s legacy interfaces, _each interface must be redefined_. An empty `interfaces` array results in a default `public` type interface configuration only. If no public Interface is configured, public IP addresses are still assigned to the Linode but will not be usable without manual configuration. > 📘 > > Changes to Linode Interface configurations can be enabled by rebooting the Linode. `vpc` details See the [VPC documentation](https://www.linode.com/docs/products/networking/vpc/#technical-specifications) guide for its specifications and limitations. `vlan` details - Only Next Generation Network (NGN) data centers support VLANs. Run the [List regions](https://techdocs.akamai.com/linode-api/reference/get-regions) operation to view the capabilities of data center regions. If a VLAN is attached to your Linode and you attempt to migrate or clone it to a non-NGN data center, the migration or cloning will not initiate. If a Linode cannot be migrated or cloned because of an incompatibility, you will be prompted to select a different data center or contact support. - See the [VLANs Overview](https://www.linode.com/docs/products/networking/vlans/#technical-specifications) guide to view additional specifications and limitations.' example: - id: 101 ipam_address: null ipv4: null label: null primary: false purpose: public subnet_id: null vpc_id: null - id: 102 ipam_address: 10.0.0.1/24 ipv4: nat_1_1: null vpc: 10.0.0.2 label: vlan-1 primary: false purpose: vlan subnet_id: null vpc_id: null - id: 103 ipam_address: null ipv4: nat_1_1: 203.0.113.2 vpc: 10.0.1.2 label: null primary: true purpose: vpc subnet_id: 101 vpc_id: 111 items: additionalProperties: false description: The network interface to apply to this Linode's configuration profile. properties: active: description: __Read-only__ Returns `true` if the interface is in use, meaning that the Linode has been booted using the configuration profile to which the interface belongs. example: true readOnly: true type: boolean id: description: __Read-only__ The unique ID representing this interface. example: 101 readOnly: true type: integer x-linode-cli-display: 1 ip_ranges: description: 'IPv4 CIDR VPC subnet ranges that are routed to this interface. When included in a request: - A range can''t include any addresses that are assigned to an active Linode or another VPC subnet. - When updating, you need to include any existing ranges to maintain them. If a range is left out, it will be removed. - Submit this as an empty array removes all existing values. - Omit this object to leave existing values as is. <> > 📘 > > This is only supported for interfaces with a `purpose` of `vpc`.' example: - 10.0.0.64/26 - fd04:495a:691c:971c::1:0/112 items: format: ip type: string type: - array - 'null' ipam_address: description: 'This interface''s private IP address in classless inter-domain routing (CIDR) notation. For interfaces with a `purpose` of `public`: - If you include this in a request, set it to an empty string (`""`) or `null`. - Returned as `null` in a response. For interfaces with a `purpose` of `vlan`: - To avoid conflicting addresses, make sure this value is unique for each `vlan` interface. - This should be unique among devices attached to the VLAN to avoid conflict. - If Network Helper is enabled, the Linode''s interface will be automatically configured to use this address after the Linode is rebooted. If Network Helper is disabled, enable the address using [manual static IP configuration](https://www.linode.com/docs/guides/manual-network-configuration/). For interfaces with a `purpose` of `vpc`: - If you include this in a request, set it to an empty string (`""`) or `null`. - Returned as `null` in a response.' example: 10.0.0.1/24 format: ip/netmask type: - string - 'null' x-linode-cli-display: 4 ipv4: additionalProperties: false description: IPv4 addresses configured for this interface. This only applies to interfaces with a `purpose` of `vpc`. Returned as `null` if no `vpc` interface is assigned. properties: nat_1_1: anyOf: - format: ip minLength: 1 title: An available public IPv4 address type: string - enum: - any title: The assigned public IPv4 address type: string description: 'The 1:1 NAT IPv4 address, used to associate a public IPv4 address with the interface''s VPC subnet IPv4 address. - Only supported for interfaces with a `purpose` of `vpc`. - Returned as `null` if no 1:1 NAT is set for a `vpc` type interface. - Returned as an empty string (`""`) for non-`vpc` type interfaces. When included in a request: - You can set this to a specific, public IPv4 address that''s available on the Linode. You can also use the `any` keyword to enable the Linode''s assigned public IPv4 address. - A specified address can''t be shared with another Linode. - Omit this object or include it and set it to `null` or an empty string (`""`) to block creation of a 1:1 NAT. <> > 📘 > > You can''t set this to a specific IPv4 address when creating a new Linode. During the creation process, the network automatically establishes a public IPv4 address for the Linode. Since this address doesn''t exist yet, you can''t include a custom IPv4 address to change it. After your Linode is created, you can [update your configuration profile interface](https://www.linode.com/docs/api/linode-instances/#configuration-profile-interface-update) to change the `nat_1_1` address.' example: 203.0.113.2 type: - string - 'null' vpc: description: 'The VPC subnet IPv4 address for this interface. - This only applies to interfaces with a `purpose` of `vpc`. - Returned as an empty string (`""`) for non-`vpc` type interfaces. When included in a request: - The `vpc` can''t be assigned to an existing Linode as an address or in a range. - The target address can''t be the first two or last two addresses in the subnet IPv4 range. - If omitted, a valid address within the Subnet IPv4 range is automatically assigned.' example: 10.0.0.2 format: ip type: - string - 'null' type: object label: description: '__Filterable__ The name of this interface. For interfaces with a `purpose` of `vlan`: - Required. - This needs to be unique among a Linode''s interfaces. A Linode can''t be attached to the same VLAN multiple times. - This can only contain ASCII letters, numbers, and dashes (`-`). You can''t use two consecutive dashes (`--`). - If the VLAN label is new, a VLAN is created. Up to 10 VLANs can be created in each data center `region`. To view your active VLANs, run the [List VLANs](https://techdocs.akamai.com/linode-api/reference/get-vlans) operation. For interfaces with a `purpose` of `public`: - If you include this in a request, set it to an empty string (`""`) or `null`. - Returned as `null` in a response. For interfaces with a `purpose` of `vpc`: - If you include this in a request, set it to an empty string (`""`) or `null`. - Returned as `null` in a response.' example: example-interface maxLength: 64 minLength: 1 pattern: '[a-zA-Z0-9-]+' type: - string - 'null' x-akamai: labels: - Filterable x-linode-cli-display: 2 x-linode-filterable: true primary: description: 'The default route to the Linode. Each Linode can have one interface set as its `primary`. If you haven''t specifically set a `primary`, the first non-`vlan` type interface is automatically treated as the primary. > 📘 > > This needs to be set to `false` for any interface that uses `vlan` as its `purpose`.' example: true type: boolean purpose: description: 'The type of interface. This can be `public`, `vlan`, or `vpc`. For interfaces with a `purpose` of `public`: - You can only define one `public` interface per Linode. - The Linode''s default public IPv4 address is assigned to the `public` interface. - A Linode needs a `public` interface in the first or `eth0` position to be reachable via the public internet, after it boots. If no `public` interface is configured, you can only access the Linode through [LISH](https://www.linode.com/docs/products/compute/compute-instances/guides/lish/), or through another Linode that''s connected to the same VLAN or VPC. For interfaces with a `purpose` of `vlan`: - Configuring this `purpose` of interface attaches a Linode to the VLAN with the specified `label`. - If an `ipam_address` is configured, the Linode uses this address. For interfaces with a `purpose` of `vpc`: - Configuring this `purpose` of interface attaches a Linode to an existing VPC subnet with the specified `subnet_id`. - When the interface is activated, the Linode is configured to use an IP address from the range in the assigned VPC subnet. See `ipv4.vpc` for more information.' enum: - public - vlan - vpc example: vlan type: string x-linode-cli-display: 3 subnet_id: description: 'The `id` of the VPC subnet for this interface. Use this value in a request to assign a Linode to a VPC subnet. - Required for `vpc` type interfaces. - Returned as `null` for non-`vpc` type interfaces. - Once you''ve assigned a VPC subnet to an interface, you can''t update it. - You need to reboot a Linode using the interface''s configuration profile to assign the Linode to a VPC subnet.' example: 101 type: - integer - 'null' vpc_id: description: __Read-only__ The `id` of the VPC configured for this interface. Returned as `null` for non-`vpc` type interfaces. example: 111 readOnly: true type: - integer - 'null' required: - purpose type: object x-akamai: file-path: schemas/linode-config-interface.yaml maxItems: 3 minItems: 1 type: array uniqueItems: true x-akamai: file-path: schemas/linode-config-interfaces.yaml kernel: default: linode/latest-64bit description: 'The ID of the kernel used to boot a Linode. Run the [List kernels](https://techdocs.akamai.com/linode-api/reference/get-kernels) operation to see all available kernels. Here are some commonly used kernels: - `linode/latest-64bit`. This is the default, our latest kernel at the time of an instance boot or reboot. - `linode/grub2`. The upstream distribution-supplied kernel that''s installed on the primary disk, or a custom kernel if installed. - `linode/direct-disk`. The master boot record (MBR) of the primary disk or root device. Use this in place of a Linux kernel.' example: linode/latest-64bit type: string x-linode-cli-display: 3 label: description: __Filterable__ The name of the configuration for display in Akamai Cloud Manager. example: My Config maxLength: 48 minLength: 1 type: string x-akamai: labels: - Filterable x-linode-cli-display: 2 x-linode-filterable: true memory_limit: description: Defaults to the total RAM of the Linode. example: 2048 type: integer root_device: description: 'The root device to boot. > 📘 - If you leave this empty or set an invalid value, the root device defaults to `/dev/sda`. - If you specify a device at the root device location and it''s not mounted, the Linode won''t boot until a device is mounted.' example: /dev/sda pattern: a-z, A-Z, 0-9, /, _, - type: string run_level: description: Defines the state of your Linode after booting. Defaults to `default`. enum: - default - single - binbash example: default type: string virt_mode: description: 'Controls the virtualization mode. Defaults to `paravirt`. - `paravirt` is suitable for most cases. Linodes running in `paravirt` mode share some qualities with the host, ultimately making it run faster since there is less transition between it and the host. - `fullvirt` affords more customization, but is slower because 100% of the VM is virtualized.' enum: - paravirt - fullvirt example: paravirt type: string type: object x-akamai: file-path: schemas/linode-config.yaml x-example: x-ref: ../examples/get-linode-config-200.json description: A configuration profile object. default: content: application/json: schema: additionalProperties: false properties: errors: items: additionalProperties: false description: An object for describing a single error that occurred during the processing of a request. properties: field: description: The field in the request that caused this error. This may be a path, separated by periods in the case of nested fields. In some cases this may come back as `null` if the error is not specific to any single element of the request. example: fieldname type: string reason: description: What happened to cause this error. In most cases, this can be fixed immediately by changing the data you sent in the request, but in some cases you will be instructed to [Open a support ticket](https://techdocs.akamai.com/linode-api/reference/post-ticket) or perform some other action before you can complete the request successfully. example: fieldname must be a valid value type: string type: object x-akamai: file-path: schemas/error-object.yaml type: array type: object description: See [Errors](https://techdocs.akamai.com/linode-api/reference/errors) for the range of possible error response codes. security: - personalAccessToken: [] - oauth: - linodes:read_only summary: Get a configuration profile tags: - Configuration profiles x-akamai: tabs: - syntax: linode-cli linodes config-view 123 23456 title: CLI url: https://techdocs.akamai.com/cloud-computing/docs/getting-started-with-the-linode-cli - syntax: linodes:read_only title: OAuth scopes url: https://techdocs.akamai.com/linode-api/reference/get-started#oauth x-linode-cli-action: config-view x-linode-grant: read_only put: description: 'Updates a configuration profile. > --- - __CLI__. ``` linode-cli linodes config-update 123 23456 \ --kernel "linode/latest-64bit" \ --comments "This is my main Config" \ --memory_limit 2048 \ --run_level default \ --virt_mode paravirt \ --helpers.updatedb_disabled true \ --helpers.distro true \ --helpers.modules_dep true \ --helpers.network true \ --helpers.devtmpfs_automount false \ --label "My Config" \ --devices.sda.disk_id 123456 \ --devices.sdb.disk_id 123457 ``` Learn more... - __OAuth scopes__. ``` linodes:read_write ``` Learn more...' externalDocs: description: See documentation for this operation in Akamai's Linode API url: https://techdocs.akamai.com/linode-api/reference/put-linode-config operationId: put-linode-config requestBody: content: application/json: schema: additionalProperties: false properties: comments: description: Optional field for arbitrary user comments on this configuration. example: '{{comments}}' type: - string - 'null' devices: additionalProperties: false description: 'A dictionary of device disks to use as a device map in a Linode''s configuration profile. - An empty device disk dictionary or a dictionary with empty values for device slots is allowed. - If no devices are specified, booting from this configuration will hold until a device exists that allows the boot process to start.' properties: sda: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdb: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdc: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdd: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sde: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdf: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdg: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdh: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml type: object x-akamai: file-path: schemas/devices.yaml helpers: additionalProperties: false description: Helpers enabled when booting to this Linode configuration. properties: devtmpfs_automount: default: false description: Populates the `/dev` directory early during boot without `udev`. Defaults to `false`. example: true type: boolean distro: description: Helps maintain correct `inittab` or `upstart` console device. example: true type: boolean modules_dep: description: Creates a modules dependency file for the kernel you run. example: true type: boolean network: description: Set to `true` to automatically configure static networking. The `network` option applies only to legacy configuration profile interfaces and does not apply to [Linode interfaces](https://techdocs.akamai.com/linode-api/reference/post-linode-interface). example: true type: - boolean - 'null' updatedb_disabled: description: Set to `true` to disable the `updatedb` cron job to avoid disk thrashing. example: true type: boolean type: object id: description: __Read-only__ The ID of this Config. example: '{{id}}' readOnly: true type: integer x-linode-cli-display: 1 interfaces: description: '`interfaces` is applicable only to legacy configuration profiles and does not apply to [Linode interfaces](https://techdocs.akamai.com/linode-api/reference/post-linode-interface). From one to three network interfaces to add to this Linode''s configuration profile. The position in the array determines which of the Linode''s network interfaces is configured: - First [0]: `eth0` - Second [1]: `eth1` - Third [2]: `eth2` When updating a Linode''s legacy interfaces, _each interface must be redefined_. An empty `interfaces` array results in a default `public` type interface configuration only. If no public Interface is configured, public IP addresses are still assigned to the Linode but will not be usable without manual configuration. > 📘 > > Changes to Linode Interface configurations can be enabled by rebooting the Linode. `vpc` details See the [VPC documentation](https://www.linode.com/docs/products/networking/vpc/#technical-specifications) guide for its specifications and limitations. `vlan` details - Only Next Generation Network (NGN) data centers support VLANs. Run the [List regions](https://techdocs.akamai.com/linode-api/reference/get-regions) operation to view the capabilities of data center regions. If a VLAN is attached to your Linode and you attempt to migrate or clone it to a non-NGN data center, the migration or cloning will not initiate. If a Linode cannot be migrated or cloned because of an incompatibility, you will be prompted to select a different data center or contact support. - See the [VLANs Overview](https://www.linode.com/docs/products/networking/vlans/#technical-specifications) guide to view additional specifications and limitations.' example: - id: 101 ipam_address: null ipv4: null label: null primary: false purpose: public subnet_id: null vpc_id: null - id: 102 ipam_address: 10.0.0.1/24 ipv4: nat_1_1: null vpc: 10.0.0.2 label: vlan-1 primary: false purpose: vlan subnet_id: null vpc_id: null - id: 103 ipam_address: null ipv4: nat_1_1: 203.0.113.2 vpc: 10.0.1.2 label: null primary: true purpose: vpc subnet_id: 101 vpc_id: 111 items: additionalProperties: false description: The network interface to apply to this Linode's configuration profile. properties: active: description: __Read-only__ Returns `true` if the interface is in use, meaning that the Linode has been booted using the configuration profile to which the interface belongs. example: true readOnly: true type: boolean id: description: __Read-only__ The unique ID representing this interface. example: 101 readOnly: true type: integer x-linode-cli-display: 1 ip_ranges: description: 'IPv4 CIDR VPC subnet ranges that are routed to this interface. When included in a request: - A range can''t include any addresses that are assigned to an active Linode or another VPC subnet. - When updating, you need to include any existing ranges to maintain them. If a range is left out, it will be removed. - Submit this as an empty array removes all existing values. - Omit this object to leave existing values as is. <> > 📘 > > This is only supported for interfaces with a `purpose` of `vpc`.' example: - 10.0.0.64/26 - fd04:495a:691c:971c::1:0/112 items: format: ip type: string type: - array - 'null' ipam_address: description: 'This interface''s private IP address in classless inter-domain routing (CIDR) notation. For interfaces with a `purpose` of `public`: - If you include this in a request, set it to an empty string (`""`) or `null`. - Returned as `null` in a response. For interfaces with a `purpose` of `vlan`: - To avoid conflicting addresses, make sure this value is unique for each `vlan` interface. - This should be unique among devices attached to the VLAN to avoid conflict. - If Network Helper is enabled, the Linode''s interface will be automatically configured to use this address after the Linode is rebooted. If Network Helper is disabled, enable the address using [manual static IP configuration](https://www.linode.com/docs/guides/manual-network-configuration/). For interfaces with a `purpose` of `vpc`: - If you include this in a request, set it to an empty string (`""`) or `null`. - Returned as `null` in a response.' example: 10.0.0.1/24 format: ip/netmask type: - string - 'null' x-linode-cli-display: 4 ipv4: additionalProperties: false description: IPv4 addresses configured for this interface. This only applies to interfaces with a `purpose` of `vpc`. Returned as `null` if no `vpc` interface is assigned. properties: nat_1_1: anyOf: - format: ip minLength: 1 title: An available public IPv4 address type: string - enum: - any title: The assigned public IPv4 address type: string description: 'The 1:1 NAT IPv4 address, used to associate a public IPv4 address with the interface''s VPC subnet IPv4 address. - Only supported for interfaces with a `purpose` of `vpc`. - Returned as `null` if no 1:1 NAT is set for a `vpc` type interface. - Returned as an empty string (`""`) for non-`vpc` type interfaces. When included in a request: - You can set this to a specific, public IPv4 address that''s available on the Linode. You can also use the `any` keyword to enable the Linode''s assigned public IPv4 address. - A specified address can''t be shared with another Linode. - Omit this object or include it and set it to `null` or an empty string (`""`) to block creation of a 1:1 NAT. <> > 📘 > > You can''t set this to a specific IPv4 address when creating a new Linode. During the creation process, the network automatically establishes a public IPv4 address for the Linode. Since this address doesn''t exist yet, you can''t include a custom IPv4 address to change it. After your Linode is created, you can [update your configuration profile interface](https://www.linode.com/docs/api/linode-instances/#configuration-profile-interface-update) to change the `nat_1_1` address.' example: 203.0.113.2 type: - string - 'null' vpc: description: 'The VPC subnet IPv4 address for this interface. - This only applies to interfaces with a `purpose` of `vpc`. - Returned as an empty string (`""`) for non-`vpc` type interfaces. When included in a request: - The `vpc` can''t be assigned to an existing Linode as an address or in a range. - The target address can''t be the first two or last two addresses in the subnet IPv4 range. - If omitted, a valid address within the Subnet IPv4 range is automatically assigned.' example: 10.0.0.2 format: ip type: - string - 'null' type: object label: description: '__Filterable__ The name of this interface. For interfaces with a `purpose` of `vlan`: - Required. - This needs to be unique among a Linode''s interfaces. A Linode can''t be attached to the same VLAN multiple times. - This can only contain ASCII letters, numbers, and dashes (`-`). You can''t use two consecutive dashes (`--`). - If the VLAN label is new, a VLAN is created. Up to 10 VLANs can be created in each data center `region`. To view your active VLANs, run the [List VLANs](https://techdocs.akamai.com/linode-api/reference/get-vlans) operation. For interfaces with a `purpose` of `public`: - If you include this in a request, set it to an empty string (`""`) or `null`. - Returned as `null` in a response. For interfaces with a `purpose` of `vpc`: - If you include this in a request, set it to an empty string (`""`) or `null`. - Returned as `null` in a response.' example: example-interface maxLength: 64 minLength: 1 pattern: '[a-zA-Z0-9-]+' type: - string - 'null' x-akamai: labels: - Filterable x-linode-cli-display: 2 x-linode-filterable: true primary: description: 'The default route to the Linode. Each Linode can have one interface set as its `primary`. If you haven''t specifically set a `primary`, the first non-`vlan` type interface is automatically treated as the primary. > 📘 > > This needs to be set to `false` for any interface that uses `vlan` as its `purpose`.' example: true type: boolean purpose: description: 'The type of interface. This can be `public`, `vlan`, or `vpc`. For interfaces with a `purpose` of `public`: - You can only define one `public` interface per Linode. - The Linode''s default public IPv4 address is assigned to the `public` interface. - A Linode needs a `public` interface in the first or `eth0` position to be reachable via the public internet, after it boots. If no `public` interface is configured, you can only access the Linode through [LISH](https://www.linode.com/docs/products/compute/compute-instances/guides/lish/), or through another Linode that''s connected to the same VLAN or VPC. For interfaces with a `purpose` of `vlan`: - Configuring this `purpose` of interface attaches a Linode to the VLAN with the specified `label`. - If an `ipam_address` is configured, the Linode uses this address. For interfaces with a `purpose` of `vpc`: - Configuring this `purpose` of interface attaches a Linode to an existing VPC subnet with the specified `subnet_id`. - When the interface is activated, the Linode is configured to use an IP address from the range in the assigned VPC subnet. See `ipv4.vpc` for more information.' enum: - public - vlan - vpc example: vlan type: string x-linode-cli-display: 3 subnet_id: description: 'The `id` of the VPC subnet for this interface. Use this value in a request to assign a Linode to a VPC subnet. - Required for `vpc` type interfaces. - Returned as `null` for non-`vpc` type interfaces. - Once you''ve assigned a VPC subnet to an interface, you can''t update it. - You need to reboot a Linode using the interface''s configuration profile to assign the Linode to a VPC subnet.' example: 101 type: - integer - 'null' vpc_id: description: __Read-only__ The `id` of the VPC configured for this interface. Returned as `null` for non-`vpc` type interfaces. example: 111 readOnly: true type: - integer - 'null' required: - purpose type: object x-akamai: file-path: schemas/linode-config-interface.yaml maxItems: 3 minItems: 1 type: array uniqueItems: true x-akamai: file-path: schemas/linode-config-interfaces.yaml kernel: default: linode/latest-64bit description: 'The ID of the kernel used to boot a Linode. Run the [List kernels](https://techdocs.akamai.com/linode-api/reference/get-kernels) operation to see all available kernels. Here are some commonly used kernels: - `linode/latest-64bit`. This is the default, our latest kernel at the time of an instance boot or reboot. - `linode/grub2`. The upstream distribution-supplied kernel that''s installed on the primary disk, or a custom kernel if installed. - `linode/direct-disk`. The master boot record (MBR) of the primary disk or root device. Use this in place of a Linux kernel.' example: '{{kernel}}' type: string x-linode-cli-display: 3 label: description: __Filterable__ The name of the configuration for display in Akamai Cloud Manager. example: '{{label}}' maxLength: 48 minLength: 1 type: string x-akamai: labels: - Filterable x-linode-cli-display: 2 x-linode-filterable: true memory_limit: description: Defaults to the total RAM of the Linode. example: '{{memory_limit}}' type: integer root_device: description: 'The root device to boot. > 📘 - If you leave this empty or set an invalid value, the root device defaults to `/dev/sda`. - If you specify a device at the root device location and it''s not mounted, the Linode won''t boot until a device is mounted.' example: '{{root_device}}' pattern: a-z, A-Z, 0-9, /, _, - type: string run_level: description: Defines the state of your Linode after booting. Defaults to `default`. enum: - default - single - binbash example: '{{run_level}}' type: string virt_mode: description: 'Controls the virtualization mode. Defaults to `paravirt`. - `paravirt` is suitable for most cases. Linodes running in `paravirt` mode share some qualities with the host, ultimately making it run faster since there is less transition between it and the host. - `fullvirt` affords more customization, but is slower because 100% of the VM is virtualized.' enum: - paravirt - fullvirt example: '{{virt_mode}}' type: string type: object x-akamai: file-path: schemas/linode-config.yaml x-example: x-ref: ../examples/put-linode-config.json required: true responses: '200': content: application/json: schema: additionalProperties: false properties: comments: description: Optional field for arbitrary user comments on this configuration. example: This is my main Config type: - string - 'null' devices: additionalProperties: false description: 'A dictionary of device disks to use as a device map in a Linode''s configuration profile. - An empty device disk dictionary or a dictionary with empty values for device slots is allowed. - If no devices are specified, booting from this configuration will hold until a device exists that allows the boot process to start.' properties: sda: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdb: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdc: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdd: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sde: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdf: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdg: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml sdh: additionalProperties: false description: Device can be either a Disk or Volume identified by `disk_id` or `volume_id`. Only one type per slot allowed. Can be `null`. Devices mapped from _sde_ through _sdh_ are unavailable in `fullvirt` virt_mode. properties: disk_id: description: The Disk ID, or `null` if a Volume is assigned to this slot. example: 124458 type: integer volume_id: description: The Volume ID, or `null` if a Disk is assigned to this slot. example: null type: - integer - 'null' type: object x-akamai: file-path: schemas/device.yaml type: object x-akamai: file-path: schemas/devices.yaml helpers: additionalProperties: false description: Helpers enabled when booting to this Linode configuration. properties: devtmpfs_automount: default: false description: Populates the `/dev` directory early during boot without `udev`. Defaults to `false`. example: true type: boolean distro: description: Helps maintain correct `inittab` or `upstart` console device. example: true type: boolean modules_dep: description: Creates a modules dependency file for the kernel you run. example: true type: boolean network: description: Set to `true` to automatically configure static networking. The `network` option applies only to legacy configuration profile interfaces and does not apply to [Linode interfaces](https://techdocs.akamai.com/linode-api/reference/post-linode-interface). example: true type: - boolean - 'null' updatedb_disabled: description: Set to `true` to disable the `updatedb` cron job to avoid disk thrashing. example: true type: boolean type: object id: description: __Read-only__ The ID of this Config. example: 23456 readOnly: true type: integer x-linode-cli-display: 1 interfaces: description: '`interfaces` is applicable only to legacy configuration profiles and does not apply to [Linode interfaces](https://techdocs.akamai.com/linode-api/reference/post-linode-interface). From one to three network interfaces to add to this Linode''s configuration profile. The position in the array determines which of the Linode''s network interfaces is configured: - First [0]: `eth0` - Second [1]: `eth1` - Third [2]: `eth2` When updating a Linode''s legacy interfaces, _each interface must be redefined_. An empty `interfaces` array results in a default `public` type interface configuration only. If no public Interface is configured, public IP addresses are still assigned to the Linode but will not be usable without manual configuration. > 📘 > > Changes to Linode Interface configurations can be enabled by rebooting the Linode. `vpc` details See the [VPC documentation](https://www.linode.com/docs/products/networking/vpc/#technical-specifications) guide for its specifications and limitations. `vlan` details - Only Next Generation Network (NGN) data centers support VLANs. Run the [List regions](https://techdocs.akamai.com/linode-api/reference/get-regions) operation to view the capabilities of data center regions. If a VLAN is attached to your Linode and you attempt to migrate or clone it to a non-NGN data center, the migration or cloning will not initiate. If a Linode cannot be migrated or cloned because of an incompatibility, you will be prompted to select a different data center or contact support. - See the [VLANs Overview](https://www.linode.com/docs/products/networking/vlans/#technical-specifications) guide to view additional specifications and limitations.' example: - id: 101 ipam_address: null ipv4: null label: null primary: false purpose: public subnet_id: null vpc_id: null - id: 102 ipam_address: 10.0.0.1/24 ipv4: nat_1_1: null vpc: 10.0.0.2 label: vlan-1 primary: false purpose: vlan subnet_id: null vpc_id: null - id: 103 ipam_address: null ipv4: nat_1_1: 203.0.113.2 vpc: 10.0.1.2 label: null primary: true purpose: vpc subnet_id: 101 vpc_id: 111 items: additionalProperties: false description: The network interface to apply to this Linode's configuration profile. properties: active: description: __Read-only__ Returns `true` if the interface is in use, meaning that the Linode has been booted using the configuration profile to which the interface belongs. example: true readOnly: true type: boolean id: description: __Read-only__ The unique ID representing this interface. example: 101 readOnly: true type: integer x-linode-cli-display: 1 ip_ranges: description: 'IPv4 CIDR VPC subnet ranges that are routed to this interface. When included in a request: - A range can''t include any addresses that are assigned to an active Linode or another VPC subnet. - When updating, you need to include any existing ranges to maintain them. If a range is left out, it will be removed. - Submit this as an empty array removes all existing values. - Omit this object to leave existing values as is. <> > 📘 > > This is only supported for interfaces with a `purpose` of `vpc`.' example: - 10.0.0.64/26 - fd04:495a:691c:971c::1:0/112 items: format: ip type: string type: - array - 'null' ipam_address: description: 'This interface''s private IP address in classless inter-domain routing (CIDR) notation. For interfaces with a `purpose` of `public`: - If you include this in a request, set it to an empty string (`""`) or `null`. - Returned as `null` in a response. For interfaces with a `purpose` of `vlan`: - To avoid conflicting addresses, make sure this value is unique for each `vlan` interface. - This should be unique among devices attached to the VLAN to avoid conflict. - If Network Helper is enabled, the Linode''s interface will be automatically configured to use this address after the Linode is rebooted. If Network Helper is disabled, enable the address using [manual static IP configuration](https://www.linode.com/docs/guides/manual-network-configuration/). For interfaces with a `purpose` of `vpc`: - If you include this in a request, set it to an empty string (`""`) or `null`. - Returned as `null` in a response.' example: 10.0.0.1/24 format: ip/netmask type: - string - 'null' x-linode-cli-display: 4 ipv4: additionalProperties: false description: IPv4 addresses configured for this interface. This only applies to interfaces with a `purpose` of `vpc`. Returned as `null` if no `vpc` interface is assigned. properties: nat_1_1: anyOf: - format: ip minLength: 1 title: An available public IPv4 address type: string - enum: - any title: The assigned public IPv4 address type: string description: 'The 1:1 NAT IPv4 address, used to associate a public IPv4 address with the interface''s VPC subnet IPv4 address. - Only supported for interfaces with a `purpose` of `vpc`. - Returned as `null` if no 1:1 NAT is set for a `vpc` type interface. - Returned as an empty string (`""`) for non-`vpc` type interfaces. When included in a request: - You can set this to a specific, public IPv4 address that''s available on the Linode. You can also use the `any` keyword to enable the Linode''s assigned public IPv4 address. - A specified address can''t be shared with another Linode. - Omit this object or include it and set it to `null` or an empty string (`""`) to block creation of a 1:1 NAT. <> > 📘 > > You can''t set this to a specific IPv4 address when creating a new Linode. During the creation process, the network automatically establishes a public IPv4 address for the Linode. Since this address doesn''t exist yet, you can''t include a custom IPv4 address to change it. After your Linode is created, you can [update your configuration profile interface](https://www.linode.com/docs/api/linode-instances/#configuration-profile-interface-update) to change the `nat_1_1` address.' example: 203.0.113.2 type: - string - 'null' vpc: description: 'The VPC subnet IPv4 address for this interface. - This only applies to interfaces with a `purpose` of `vpc`. - Returned as an empty string (`""`) for non-`vpc` type interfaces. When included in a request: - The `vpc` can''t be assigned to an existing Linode as an address or in a range. - The target address can''t be the first two or last two addresses in the subnet IPv4 range. - If omitted, a valid address within the Subnet IPv4 range is automatically assigned.' example: 10.0.0.2 format: ip type: - string - 'null' type: object label: description: '__Filterable__ The name of this interface. For interfaces with a `purpose` of `vlan`: - Required. - This needs to be unique among a Linode''s interfaces. A Linode can''t be attached to the same VLAN multiple times. - This can only contain ASCII letters, numbers, and dashes (`-`). You can''t use two consecutive dashes (`--`). - If the VLAN label is new, a VLAN is created. Up to 10 VLANs can be created in each data center `region`. To view your active VLANs, run the [List VLANs](https://techdocs.akamai.com/linode-api/reference/get-vlans) operation. For interfaces with a `purpose` of `public`: - If you include this in a request, set it to an empty string (`""`) or `null`. - Returned as `null` in a response. For interfaces with a `purpose` of `vpc`: - If you include this in a request, set it to an empty string (`""`) or `null`. - Returned as `null` in a response.' example: example-interface maxLength: 64 minLength: 1 pattern: '[a-zA-Z0-9-]+' type: - string - 'null' x-akamai: labels: - Filterable x-linode-cli-display: 2 x-linode-filterable: true primary: description: 'The default route to the Linode. Each Linode can have one interface set as its `primary`. If you haven''t specifically set a `primary`, the first non-`vlan` type interface is automatically treated as the primary. > 📘 > > This needs to be set to `false` for any interface that uses `vlan` as its `purpose`.' example: true type: boolean purpose: description: 'The type of interface. This can be `public`, `vlan`, or `vpc`. For interfaces with a `purpose` of `public`: - You can only define one `public` interface per Linode. - The Linode''s default public IPv4 address is assigned to the `public` interface. - A Linode needs a `public` interface in the first or `eth0` position to be reachable via the public internet, after it boots. If no `public` interface is configured, you can only access the Linode through [LISH](https://www.linode.com/docs/products/compute/compute-instances/guides/lish/), or through another Linode that''s connected to the same VLAN or VPC. For interfaces with a `purpose` of `vlan`: - Configuring this `purpose` of interface attaches a Linode to the VLAN with the specified `label`. - If an `ipam_address` is configured, the Linode uses this address. For interfaces with a `purpose` of `vpc`: - Configuring this `purpose` of interface attaches a Linode to an existing VPC subnet with the specified `subnet_id`. - When the interface is activated, the Linode is configured to use an IP address from the range in the assigned VPC subnet. See `ipv4.vpc` for more information.' enum: - public - vlan - vpc example: vlan type: string x-linode-cli-display: 3 subnet_id: description: 'The `id` of the VPC subnet for this interface. Use this value in a request to assign a Linode to a VPC subnet. - Required for `vpc` type interfaces. - Returned as `null` for non-`vpc` type interfaces. - Once you''ve assigned a VPC subnet to an interface, you can''t update it. - You need to reboot a Linode using the interface''s configuration profile to assign the Linode to a VPC subnet.' example: 101 type: - integer - 'null' vpc_id: description: __Read-only__ The `id` of the VPC configured for this interface. Returned as `null` for non-`vpc` type interfaces. example: 111 readOnly: true type: - integer - 'null' required: - purpose type: object x-akamai: file-path: schemas/linode-config-interface.yaml maxItems: 3 minItems: 1 type: array uniqueItems: true x-akamai: file-path: schemas/linode-config-interfaces.yaml kernel: default: linode/latest-64bit description: 'The ID of the kernel used to boot a Linode. Run the [List kernels](https://techdocs.akamai.com/linode-api/reference/get-kernels) operation to see all available kernels. Here are some commonly used kernels: - `linode/latest-64bit`. This is the default, our latest kernel at the time of an instance boot or reboot. - `linode/grub2`. The upstream distribution-supplied kernel that''s installed on the primary disk, or a custom kernel if installed. - `linode/direct-disk`. The master boot record (MBR) of the primary disk or root device. Use this in place of a Linux kernel.' example: linode/latest-64bit type: string x-linode-cli-display: 3 label: description: __Filterable__ The name of the configuration for display in Akamai Cloud Manager. example: My Config maxLength: 48 minLength: 1 type: string x-akamai: labels: - Filterable x-linode-cli-display: 2 x-linode-filterable: true memory_limit: description: Defaults to the total RAM of the Linode. example: 2048 type: integer root_device: description: 'The root device to boot. > 📘 - If you leave this empty or set an invalid value, the root device defaults to `/dev/sda`. - If you specify a device at the root device location and it''s not mounted, the Linode won''t boot until a device is mounted.' example: /dev/sda pattern: a-z, A-Z, 0-9, /, _, - type: string run_level: description: Defines the state of your Linode after booting. Defaults to `default`. enum: - default - single - binbash example: default type: string virt_mode: description: 'Controls the virtualization mode. Defaults to `paravirt`. - `paravirt` is suitable for most cases. Linodes running in `paravirt` mode share some qualities with the host, ultimately making it run faster since there is less transition between it and the host. - `fullvirt` affords more customization, but is slower because 100% of the VM is virtualized.' enum: - paravirt - fullvirt example: paravirt type: string type: object x-akamai: file-path: schemas/linode-config.yaml x-example: x-ref: ../examples/get-linode-config-200.json description: Configuration profile successfully updated. default: content: application/json: schema: additionalProperties: false properties: errors: items: additionalProperties: false description: An object for describing a single error that occurred during the processing of a request. properties: field: description: The field in the request that caused this error. This may be a path, separated by periods in the case of nested fields. In some cases this may come back as `null` if the error is not specific to any single element of the request. example: fieldname type: string reason: description: What happened to cause this error. In most cases, this can be fixed immediately by changing the data you sent in the request, but in some cases you will be instructed to [Open a support ticket](https://techdocs.akamai.com/linode-api/reference/post-ticket) or perform some other action before you can complete the request successfully. example: fieldname must be a valid value type: string type: object x-akamai: file-path: schemas/error-object.yaml type: array type: object description: See [Errors](https://techdocs.akamai.com/linode-api/reference/errors) for the range of possible error response codes. security: - personalAccessToken: [] - oauth: - linodes:read_write summary: Update a configuration profile tags: - Configuration profiles x-akamai: tabs: - syntax: "linode-cli linodes config-update 123 23456 \\\n --kernel \"linode/latest-64bit\" \\\n --comments \"This is my main Config\" \\\n --memory_limit 2048 \\\n --run_level default \\\n --virt_mode paravirt \\\n --helpers.updatedb_disabled true \\\n --helpers.distro true \\\n --helpers.modules_dep true \\\n --helpers.network true \\\n --helpers.devtmpfs_automount false \\\n --label \"My Config\" \\\n --devices.sda.disk_id 123456 \\\n --devices.sdb.disk_id 123457" title: CLI url: https://techdocs.akamai.com/cloud-computing/docs/getting-started-with-the-linode-cli - syntax: linodes:read_write title: OAuth scopes url: https://techdocs.akamai.com/linode-api/reference/get-started#oauth x-linode-cli-action: config-update x-linode-grant: read_write delete: description: 'Deletes the specified configuration profile from the specified Linode. > --- - __CLI__. ``` linode-cli linodes config-delete 123 23456 ``` Learn more... - __OAuth scopes__. ``` linodes:read_write ``` Learn more...' externalDocs: description: See documentation for this operation in Akamai's Linode API url: https://techdocs.akamai.com/linode-api/reference/delete-linode-config operationId: delete-linode-config responses: '200': content: application/json: schema: description: The API responds with an empty object. maxProperties: 0 type: object x-akamai: file-path: schemas/added-empty-obj.yaml x-example: x-ref: ../examples/delete-linode-config-200.json description: Configuration profile successfully deleted. default: content: application/json: schema: additionalProperties: false properties: errors: items: additionalProperties: false description: An object for describing a single error that occurred during the processing of a request. properties: field: description: The field in the request that caused this error. This may be a path, separated by periods in the case of nested fields. In some cases this may come back as `null` if the error is not specific to any single element of the request. example: fieldname type: string reason: description: What happened to cause this error. In most cases, this can be fixed immediately by changing the data you sent in the request, but in some cases you will be instructed to [Open a support ticket](https://techdocs.akamai.com/linode-api/reference/post-ticket) or perform some other action before you can complete the request successfully. example: fieldname must be a valid value type: string type: object x-akamai: file-path: schemas/error-object.yaml type: array type: object description: See [Errors](https://techdocs.akamai.com/linode-api/reference/errors) for the range of possible error response codes. security: - personalAccessToken: [] - oauth: - linodes:read_write summary: Delete a configuration profile tags: - Configuration profiles x-akamai: tabs: - syntax: linode-cli linodes config-delete 123 23456 title: CLI url: https://techdocs.akamai.com/cloud-computing/docs/getting-started-with-the-linode-cli - syntax: linodes:read_write title: OAuth scopes url: https://techdocs.akamai.com/linode-api/reference/get-started#oauth x-linode-cli-action: config-delete x-linode-grant: read_write components: securitySchemes: oauth: flows: authorizationCode: authorizationUrl: https://login.linode.com/oauth/authorize scopes: account:read_only: Allows access to GET information about your account. account:read_write: Allows access to all endpoints related to your account. domains:read_only: Allows access to GET Domains on your account. domains:read_write: Allows access to all Domain endpoints. events:read_only: Allows access to GET your Events. events:read_write: Allows access to all endpoints related to your Events. firewall:read_only: Allows access to GET information about your Firewalls. firewall:read_write: Allows access to all Firewall endpoints. images:read_only: Allows access to GET your Images. images:read_write: Allows access to all endpoints related to your Images. ips:read_only: Allows access to GET your ips. ips:read_write: Allows access to all endpoints related to your ips. linodes:read_only: Allows access to GET Linodes on your account. linodes:read_write: Allow access to all endpoints related to your Linodes. lke:read_only: Allows access to GET LKE Clusters on your account. lke:read_write: Allows access to all endpoints related to LKE Clusters on your account. longview:read_only: Allows access to GET your Longview Clients. longview:read_write: Allows access to all endpoints related to your Longview Clients. monitor:read-write: Allows access to all Monitor (Akamai Cloud Pulse) endpoints. monitor:read_only: Allows access to Monitor (Akamai Cloud Pulse) data. nodebalancers:read_only: Allows access to GET NodeBalancers on your account. nodebalancers:read_write: Allows access to all NodeBalancer endpoints. object_storage:read_only: Allows access to GET information related to your Object Storage. object_storage:read_write: Allows access to all Object Storage endpoints. stackscripts:read_only: Allows access to GET your StackScripts. stackscripts:read_write: Allows access to all endpoints related to your StackScripts. volumes:read_only: Allows access to GET your Volumes. volumes:read_write: Allows access to all endpoints related to your Volumes. vpc:read_write: Allows access to all endpoints related to VPC and Subnet creation, updating, and deletion. tokenUrl: https://login.linode.com/oauth/token type: oauth2 personalAccessToken: scheme: bearer type: http externalDocs: description: See documentation for Akamai's Linode API url: https://techdocs.akamai.com/linode-api/reference x-readme: samples-languages: - curl - python - node