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/config_templates/:config_template_id/operatingsystems
List all operating systems for nested provisioning template

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

Examples

GET /api/operatingsystems
200
{
  "total": 7,
  "subtotal": 7,
  "page": 1,
  "per_page": 20,
  "search": null,
  "sort": {
    "by": null,
    "order": null
  },
  "results": [
    {
      "description": null,
      "major": "1",
      "minor": "1",
      "family": "Redhat",
      "release_name": null,
      "password_hash": "SHA256",
      "created_at": "2018-11-15 19:01:27 UTC",
      "updated_at": "2018-11-15 19:01:27 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": "2018-11-15 19:01:27 UTC",
      "updated_at": "2018-11-15 19:01:27 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": "2018-11-15 19:01:27 UTC",
      "updated_at": "2018-11-15 19:01:27 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": "2018-11-15 19:01:27 UTC",
      "updated_at": "2018-11-15 19:01:27 UTC",
      "id": 442321401,
      "name": "Solaris",
      "title": "Solaris 5.10"
    },
    {
      "description": null,
      "major": "10",
      "minor": "10",
      "family": "Debian",
      "release_name": null,
      "password_hash": "SHA256",
      "created_at": "2018-11-15 19:01:27 UTC",
      "updated_at": "2018-11-15 19:01:27 UTC",
      "id": 331303656,
      "name": "Ubuntu",
      "title": "Ubuntu 10.10"
    },
    {
      "description": null,
      "major": "12",
      "minor": "10",
      "family": "Debian",
      "release_name": null,
      "password_hash": "SHA256",
      "created_at": "2018-11-15 19:01:27 UTC",
      "updated_at": "2018-11-15 19:01:27 UTC",
      "id": 272342666,
      "name": "Ubuntu",
      "title": "Ubuntu 12.10"
    },
    {
      "description": null,
      "major": "5",
      "minor": "3",
      "family": "Redhat",
      "release_name": null,
      "password_hash": "SHA256",
      "created_at": "2018-11-15 19:01:27 UTC",
      "updated_at": "2018-11-15 19:01:27 UTC",
      "id": 309172073,
      "name": "centos",
      "title": "centos 5.3"
    }
  ]
}

Params

Param name Description
location_id
optional

Scope by locations

Validations:

  • Must be a Integer

organization_id
optional

Scope by organizations

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

config_template_id
optional

ID of template

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

paginate results

Validations:

  • Must be a String

per_page
optional

number of entries per request

Validations:

  • Must be a String

Search fields

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

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

Examples

GET /api/operatingsystems/1073012829
200
{
  "description": null,
  "major": "5",
  "minor": "",
  "family": null,
  "release_name": null,
  "password_hash": "SHA256",
  "created_at": "2018-11-15 19:01:55 UTC",
  "updated_at": "2018-11-15 19:01:55 UTC",
  "id": 1073012829,
  "name": "operatingsystem5",
  "title": "operatingsystem5 5",
  "media": [],
  "architectures": [],
  "ptables": [],
  "config_templates": [],
  "provisioning_templates": [],
  "os_default_templates": [],
  "images": [],
  "parameters": [
    {
      "priority": 50,
      "created_at": "2018-11-15 19:01:55 UTC",
      "updated_at": "2018-11-15 19:01:55 UTC",
      "id": 767575239,
      "name": "foo",
      "value": "*****"
    }
  ]
}

Params

Param name Description
location_id
optional

Scope by locations

Validations:

  • Must be a Integer

organization_id
optional

Scope by organizations

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": "awsome_os",
    "minor": "2"
  }
}
422
{
  "error": {
    "id": null,
    "errors": {
      "major": [
        "is not a number",
        "Operating System version is required"
      ]
    },
    "full_messages": [
      "Major is not a number",
      "Major Operating System version is required"
    ]
  }
}

Params

Param name Description
location_id
optional

Scope by locations

Validations:

  • Must be a Integer

organization_id
optional

Scope by organizations

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, one of MD5, SHA256, SHA512, Base64

Validations:

  • Must be a String

operatingsystem[architecture_ids]
optional , nil allowed

IDs of associated architectures

Validations:

  • Must be an array of any type

operatingsystem[config_template_ids]
optional , nil allowed

IDs of associated provisioning templates

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": {
    "minor": "-30"
  }
}
422
{
  "error": {
    "id": 1073012828,
    "errors": {
      "minor": [
        "must be greater than or equal to 0"
      ]
    },
    "full_messages": [
      "Minor must be greater than or equal to 0"
    ]
  }
}

Params

Param name Description
location_id
optional

Scope by locations

Validations:

  • Must be a Integer

organization_id
optional

Scope by organizations

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, one of MD5, SHA256, SHA512, Base64

Validations:

  • Must be a String

operatingsystem[architecture_ids]
optional , nil allowed

IDs of associated architectures

Validations:

  • Must be an array of any type

operatingsystem[config_template_ids]
optional , nil allowed

IDs of associated provisioning templates

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": "2018-11-15T19:01:27.687Z",
  "updated_at": "2018-11-15T19:01:27.687Z",
  "release_name": null,
  "description": null,
  "password_hash": "SHA256",
  "title": "NoHosts 1.1"
}

Params

Param name Description
location_id
optional

Scope by locations

Validations:

  • Must be a Integer

organization_id
optional

Scope by organizations

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

Scope by locations

Validations:

  • Must be a Integer

organization_id
optional

Scope by organizations

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