GET /api/operatingsystems
List all operating systems

GET /api/architectures/:architecture_id/operatingsystems
List all operating systems for nested architecture

GET /api/media/:medium_id/operatingsystems
List all operating systems for nested medium

GET /api/ptables/:ptable_id/operatingsystems
List all operating systems for nested partition table

GET /api/provisioning_templates/:provisioning_template_id/operatingsystems
List all operating systems for nested provisioning template

Examples

GET /api/operatingsystems
200
{
  "total": 8,
  "subtotal": 8,
  "page": 1,
  "per_page": 20,
  "search": null,
  "sort": {
    "by": null,
    "order": null
  },
  "results": [
    {
      "description": null,
      "major": "5",
      "minor": "3",
      "family": "Redhat",
      "release_name": null,
      "password_hash": "SHA256",
      "created_at": "2021-05-19 07:36:44 UTC",
      "updated_at": "2021-05-19 07:36:44 UTC",
      "id": 309172073,
      "name": "centos",
      "title": "centos 5.3"
    },
    {
      "description": null,
      "major": "5",
      "minor": "17",
      "family": "VRP",
      "release_name": null,
      "password_hash": "SHA256",
      "created_at": "2021-05-19 07:36:44 UTC",
      "updated_at": "2021-05-19 07:36:44 UTC",
      "id": 32055736,
      "name": "Huawei_VRP",
      "title": "Huawei VRP 5"
    },
    {
      "description": null,
      "major": "1",
      "minor": "1",
      "family": "Redhat",
      "release_name": null,
      "password_hash": "SHA256",
      "created_at": "2021-05-19 07:36:44 UTC",
      "updated_at": "2021-05-19 07:36:44 UTC",
      "id": 775246587,
      "name": "NoHosts",
      "title": "NoHosts 1.1"
    },
    {
      "description": null,
      "major": "12",
      "minor": "3",
      "family": "Suse",
      "release_name": null,
      "password_hash": "SHA256",
      "created_at": "2021-05-19 07:36:44 UTC",
      "updated_at": "2021-05-19 07:36:44 UTC",
      "id": 750842046,
      "name": "OpenSuse",
      "title": "OpenSuSE 12.3"
    },
    {
      "description": "RHEL 6.1",
      "major": "6",
      "minor": "1",
      "family": "Redhat",
      "release_name": null,
      "password_hash": "SHA256",
      "created_at": "2021-05-19 07:36:44 UTC",
      "updated_at": "2021-05-19 07:36:44 UTC",
      "id": 1073012828,
      "name": "Redhat",
      "title": "RHEL 6.1"
    },
    {
      "description": null,
      "major": "5",
      "minor": "10",
      "family": "Solaris",
      "release_name": "hw0910",
      "password_hash": "SHA256",
      "created_at": "2021-05-19 07:36:44 UTC",
      "updated_at": "2021-05-19 07:36:44 UTC",
      "id": 442321401,
      "name": "Solaris",
      "title": "Solaris 5.10"
    },
    {
      "description": null,
      "major": "10",
      "minor": "10",
      "family": "Debian",
      "release_name": "rn10",
      "password_hash": "SHA256",
      "created_at": "2021-05-19 07:36:44 UTC",
      "updated_at": "2021-05-19 07:36:44 UTC",
      "id": 331303656,
      "name": "Ubuntu",
      "title": "Ubuntu 10.10"
    },
    {
      "description": null,
      "major": "12",
      "minor": "10",
      "family": "Debian",
      "release_name": "rn10",
      "password_hash": "SHA256",
      "created_at": "2021-05-19 07:36:44 UTC",
      "updated_at": "2021-05-19 07:36:44 UTC",
      "id": 272342666,
      "name": "Ubuntu",
      "title": "Ubuntu 12.10"
    }
  ]
}

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

architecture_id
optional

ID of architecture

Validations:

  • Must be a String

medium_id
optional

ID of medium

Validations:

  • Must be a String

ptable_id
optional

ID of partition table

Validations:

  • Must be a String

provisioning_template_id
optional

ID of template

Validations:

  • Must be a String

os_parameters_attributes
optional

Array of parameters

Validations:

  • Must be an Array of nested elements

os_parameters_attributes[name]
required

Name of the parameter

Validations:

  • Must be a String

os_parameters_attributes[value]
required

Parameter value

Validations:

  • Must be a String

search
optional

filter results

Validations:

  • Must be a String

order
optional

Sort field and order, eg. ‘id DESC’

Validations:

  • Must be a String

page
optional

Page number, starting at 1

Validations:

  • Must be a number.

per_page
optional

Number of results per page to return, ‘all’ to return all results

Validations:

  • Must match regular expression /\A([1-9]\d|all)\Z$/.

Search fields

Field name Type Possible values
architecture string
description string
family string
major string
medium string
minor string
name string
params string
template string
title string

GET /api/operatingsystems/:id
Show an operating system

Examples

GET /api/operatingsystems/centos%205.3
200
{
  "description": null,
  "major": "5",
  "minor": "3",
  "family": "Redhat",
  "release_name": null,
  "password_hash": "SHA256",
  "created_at": "2021-05-19 07:36:44 UTC",
  "updated_at": "2021-05-19 07:36:44 UTC",
  "id": 309172073,
  "name": "centos",
  "title": "centos 5.3",
  "media": [
    {
      "id": 980190962,
      "name": "CentOS 5.4"
    }
  ],
  "architectures": [
    {
      "name": "x86_64",
      "id": 501905019
    }
  ],
  "ptables": [
    {
      "name": "Example partition table",
      "id": 615088209
    }
  ],
  "provisioning_templates": [
    {
      "id": 1007981701,
      "name": "centos5_3_pxelinux",
      "template_kind_id": 452984334,
      "template_kind_name": "PXELinux"
    },
    {
      "id": 698706415,
      "name": "iPXE Dummy Menu",
      "template_kind_id": 698706415,
      "template_kind_name": "iPXE"
    },
    {
      "id": 718456980,
      "name": "Locked Template",
      "template_kind_id": 983253650,
      "template_kind_name": "provision"
    },
    {
      "id": 104314179,
      "name": "MyFinish",
      "template_kind_id": 550103832,
      "template_kind_name": "finish"
    },
    {
      "id": 981457253,
      "name": "MyScript",
      "template_kind_id": 478250810,
      "template_kind_name": "script"
    },
    {
      "id": 943779058,
      "name": "MyString",
      "template_kind_id": 698706415,
      "template_kind_name": "iPXE"
    },
    {
      "id": 269958254,
      "name": "MyString2",
      "template_kind_id": 983253650,
      "template_kind_name": "provision"
    },
    {
      "id": 684651467,
      "name": "PXE Default Menu",
      "template_kind_id": 452984334,
      "template_kind_name": "PXELinux"
    },
    {
      "id": 554905648,
      "name": "PXEGrub2 global default",
      "template_kind_id": 701398793,
      "template_kind_name": "PXEGrub2"
    },
    {
      "id": 131565194,
      "name": "PXEGrub Dummy Menu",
      "template_kind_id": 131565194,
      "template_kind_name": "PXEGrub"
    },
    {
      "id": 824224502,
      "name": "PXEGrub global default",
      "template_kind_id": 131565194,
      "template_kind_name": "PXEGrub"
    },
    {
      "id": 821548108,
      "name": "PXELinux default local boot",
      "template_kind_id": 452984334,
      "template_kind_name": "PXELinux"
    },
    {
      "id": 352050261,
      "name": "PXELinux global default",
      "template_kind_id": 452984334,
      "template_kind_name": "PXELinux"
    }
  ],
  "os_default_templates": [],
  "images": [
    {
      "id": 980190962,
      "name": "centos-1"
    },
    {
      "id": 298486374,
      "name": "centos-2"
    }
  ],
  "parameters": []
}

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

id
required

Validations:

  • Must be a String

show_hidden_parameters
optional

Display hidden parameter values

Validations:

  • Must be one of: true, false, 1, 0.


POST /api/operatingsystems
Create an operating system

Examples

POST /api/operatingsystems
{
  "operatingsystem": {
    "name": "vdeLwTXTPm",
    "major": "642",
    "password_hash": "INVALID_HASH"
  }
}
422
{
  "error": {
    "id": null,
    "errors": {
      "password_hash": [
        "is not included in the list"
      ]
    },
    "full_messages": [
      "Password hash is not included in the list"
    ]
  }
}

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

operatingsystem
required

Validations:

  • Must be a Hash

operatingsystem[name]
required

Validations:

  • Must match regular expression /\A(\S+)\Z/.

operatingsystem[major]
required

Validations:

  • Must be a String

operatingsystem[minor]
optional , nil allowed

Validations:

  • Must be a String

operatingsystem[description]
optional , nil allowed

Validations:

  • Must be a String

operatingsystem[family]
optional , nil allowed

Validations:

  • Must be a String

operatingsystem[release_name]
optional , nil allowed

Validations:

  • Must be a String

operatingsystem[os_parameters_attributes]
optional , nil allowed

Array of parameters

Validations:

  • Must be an Array of nested elements

operatingsystem[os_parameters_attributes][name]
required

Name of the parameter

Validations:

  • Must be a String

operatingsystem[os_parameters_attributes][value]
required

Parameter value

Validations:

  • Must be a String

operatingsystem[password_hash]
optional , nil allowed

Root password hash function to use

Validations:

  • Must be one of: SHA256, SHA512, Base64, Base64-Windows, MD5.

operatingsystem[architecture_ids]
optional , nil allowed

IDs of associated architectures

Validations:

  • Must be an array of any type

operatingsystem[provisioning_template_ids]
optional , nil allowed

IDs of associated provisioning templates

Validations:

  • Must be an array of any type

operatingsystem[medium_ids]
optional , nil allowed

IDs of associated media

Validations:

  • Must be an array of any type

operatingsystem[ptable_ids]
optional , nil allowed

IDs of associated partition tables

Validations:

  • Must be an array of any type


PUT /api/operatingsystems/:id
Update an operating system

Examples

PUT /api/operatingsystems/1073012828
{
  "operatingsystem": {
    "family": "INVALID_FAMILY"
  }
}
422
{
  "error": {
    "id": 1073012828,
    "errors": {
      "type": [
        "must be one of [ AIX, Altlinux, Archlinux, Coreos, Debian, Freebsd, Gentoo, Junos, NXOS, Rancheros, Redhat, Solaris, Suse, VRP, Windows, Xenserver ]"
      ]
    },
    "full_messages": [
      "Type must be one of [ AIX, Altlinux, Archlinux, Coreos, Debian, Freebsd, Gentoo, Junos, NXOS, Rancheros, Redhat, Solaris, Suse, VRP, Windows, Xenserver ]"
    ]
  }
}

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

id
required

Validations:

  • Must be a String

operatingsystem
required

Validations:

  • Must be a Hash

operatingsystem[name]
optional

Validations:

  • Must match regular expression /\A(\S+)\Z/.

operatingsystem[major]
optional

Validations:

  • Must be a String

operatingsystem[minor]
optional , nil allowed

Validations:

  • Must be a String

operatingsystem[description]
optional , nil allowed

Validations:

  • Must be a String

operatingsystem[family]
optional , nil allowed

Validations:

  • Must be a String

operatingsystem[release_name]
optional , nil allowed

Validations:

  • Must be a String

operatingsystem[os_parameters_attributes]
optional , nil allowed

Array of parameters

Validations:

  • Must be an Array of nested elements

operatingsystem[os_parameters_attributes][name]
optional

Name of the parameter

Validations:

  • Must be a String

operatingsystem[os_parameters_attributes][value]
optional

Parameter value

Validations:

  • Must be a String

operatingsystem[password_hash]
optional , nil allowed

Root password hash function to use

Validations:

  • Must be one of: SHA256, SHA512, Base64, Base64-Windows, MD5.

operatingsystem[architecture_ids]
optional , nil allowed

IDs of associated architectures

Validations:

  • Must be an array of any type

operatingsystem[provisioning_template_ids]
optional , nil allowed

IDs of associated provisioning templates

Validations:

  • Must be an array of any type

operatingsystem[medium_ids]
optional , nil allowed

IDs of associated media

Validations:

  • Must be an array of any type

operatingsystem[ptable_ids]
optional , nil allowed

IDs of associated partition tables

Validations:

  • Must be an array of any type


DELETE /api/operatingsystems/:id
Delete an operating system

Examples

DELETE /api/operatingsystems/775246587-NoHosts%201-1
{
  "operatingsystem": {}
}
200
{
  "id": 775246587,
  "major": "1",
  "name": "NoHosts",
  "minor": "1",
  "nameindicator": null,
  "created_at": "2021-05-19T07:36:44.988Z",
  "updated_at": "2021-05-19T07:36:44.988Z",
  "release_name": null,
  "description": null,
  "password_hash": "SHA256",
  "title": "NoHosts 1.1"
}

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

id
required

Validations:

  • Must be a String


GET /api/operatingsystems/:id/bootfiles
List boot files for an operating system

Params

Param name Description
location_id
optional

Set the current location context for the request

Validations:

  • Must be a Integer

organization_id
optional

Set the current organization context for the request

Validations:

  • Must be a Integer

id
required

Validations:

  • Must be a String

medium
optional

Validations:

  • Must be a String

architecture
optional

Validations:

  • Must be a String