GET /api/hostgroups
List all host groups

GET /api/puppetclasses/:puppetclass_id/hostgroups
List all host groups for a Puppet class

GET /api/locations/:location_id/hostgroups
List all host groups per location

GET /api/organizations/:organization_id/hostgroups
List all host groups per organization

Examples

GET /api/hostgroups
200
{
  "total": 5,
  "subtotal": 5,
  "page": 1,
  "per_page": 20,
  "search": null,
  "sort": {
    "by": null,
    "order": null
  },
  "results": [
    {
      "subnet_id": null,
      "subnet_name": null,
      "operatingsystem_id": 309172073,
      "operatingsystem_name": "centos 5.3",
      "domain_id": 22495316,
      "domain_name": "mydomain.net",
      "environment_id": 334344675,
      "environment_name": "production",
      "compute_profile_id": 980190962,
      "compute_profile_name": "1-Small",
      "ancestry": null,
      "parent_id": null,
      "parent_name": null,
      "ptable_id": null,
      "ptable_name": null,
      "medium_id": 980190962,
      "medium_name": "CentOS 5.4",
      "pxe_loader": null,
      "subnet6_id": null,
      "subnet6_name": null,
      "compute_resource_id": null,
      "compute_resource_name": null,
      "architecture_id": 501905019,
      "architecture_name": "x86_64",
      "realm_id": null,
      "realm_name": null,
      "created_at": "2020-05-20 13:24:30 UTC",
      "updated_at": "2020-05-20 13:24:30 UTC",
      "id": 636252244,
      "name": "Common",
      "title": "Common",
      "description": null,
      "puppet_proxy_id": 182953976,
      "puppet_proxy_name": "Puppetmaster Proxy",
      "puppet_ca_proxy_id": null,
      "puppet_ca_proxy_name": null,
      "puppet_proxy": {
        "name": "Puppetmaster Proxy",
        "id": 182953976,
        "url": "http://else.where:4567"
      },
      "puppet_ca_proxy": null,
      "inherited_compute_profile_id": null,
      "inherited_environment_id": null,
      "inherited_domain_id": null,
      "inherited_puppet_proxy_id": null,
      "inherited_puppet_ca_proxy_id": null,
      "inherited_compute_resource_id": null,
      "inherited_operatingsystem_id": null,
      "inherited_architecture_id": null,
      "inherited_medium_id": null,
      "inherited_ptable_id": null,
      "inherited_subnet_id": null,
      "inherited_subnet6_id": null,
      "inherited_realm_id": null,
      "inherited_pxe_loader": null
    },
    {
      "subnet_id": null,
      "subnet_name": null,
      "operatingsystem_id": 309172073,
      "operatingsystem_name": "centos 5.3",
      "domain_id": null,
      "domain_name": null,
      "environment_id": 334344675,
      "environment_name": "production",
      "compute_profile_id": null,
      "compute_profile_name": null,
      "ancestry": null,
      "parent_id": null,
      "parent_name": null,
      "ptable_id": null,
      "ptable_name": null,
      "medium_id": 980190962,
      "medium_name": "CentOS 5.4",
      "pxe_loader": null,
      "subnet6_id": null,
      "subnet6_name": null,
      "compute_resource_id": null,
      "compute_resource_name": null,
      "architecture_id": 501905019,
      "architecture_name": "x86_64",
      "realm_id": null,
      "realm_name": null,
      "created_at": "2020-05-20 13:24:30 UTC",
      "updated_at": "2020-05-20 13:24:30 UTC",
      "id": 603241515,
      "name": "db",
      "title": "db",
      "description": null,
      "puppet_proxy_id": 182953976,
      "puppet_proxy_name": "Puppetmaster Proxy",
      "puppet_ca_proxy_id": null,
      "puppet_ca_proxy_name": null,
      "puppet_proxy": {
        "name": "Puppetmaster Proxy",
        "id": 182953976,
        "url": "http://else.where:4567"
      },
      "puppet_ca_proxy": null,
      "inherited_compute_profile_id": null,
      "inherited_environment_id": null,
      "inherited_domain_id": null,
      "inherited_puppet_proxy_id": null,
      "inherited_puppet_ca_proxy_id": null,
      "inherited_compute_resource_id": null,
      "inherited_operatingsystem_id": null,
      "inherited_architecture_id": null,
      "inherited_medium_id": null,
      "inherited_ptable_id": null,
      "inherited_subnet_id": null,
      "inherited_subnet6_id": null,
      "inherited_realm_id": null,
      "inherited_pxe_loader": null
    },
    {
      "subnet_id": 1018350795,
      "subnet_name": "five",
      "operatingsystem_id": 309172073,
      "operatingsystem_name": "centos 5.3",
      "domain_id": 22495316,
      "domain_name": "mydomain.net",
      "environment_id": 153855663,
      "environment_name": "global_puppetmaster",
      "compute_profile_id": 980190962,
      "compute_profile_name": "1-Small",
      "ancestry": null,
      "parent_id": null,
      "parent_name": null,
      "ptable_id": 615088209,
      "ptable_name": "Example partition table",
      "medium_id": 980190962,
      "medium_name": "CentOS 5.4",
      "pxe_loader": "PXELinux BIOS",
      "subnet6_id": 51848956,
      "subnet6_name": "six",
      "compute_resource_id": null,
      "compute_resource_name": null,
      "architecture_id": 501905019,
      "architecture_name": "x86_64",
      "realm_id": null,
      "realm_name": null,
      "created_at": "2020-05-20 13:24:30 UTC",
      "updated_at": "2020-05-20 13:24:30 UTC",
      "id": 1,
      "name": "Parent",
      "title": "Parent",
      "description": null,
      "puppet_proxy_id": 182953976,
      "puppet_proxy_name": "Puppetmaster Proxy",
      "puppet_ca_proxy_id": 182953976,
      "puppet_ca_proxy_name": "Puppetmaster Proxy",
      "puppet_proxy": {
        "name": "Puppetmaster Proxy",
        "id": 182953976,
        "url": "http://else.where:4567"
      },
      "puppet_ca_proxy": {
        "name": "Puppetmaster Proxy",
        "id": 182953976,
        "url": "http://else.where:4567"
      },
      "inherited_compute_profile_id": null,
      "inherited_environment_id": null,
      "inherited_domain_id": null,
      "inherited_puppet_proxy_id": null,
      "inherited_puppet_ca_proxy_id": null,
      "inherited_compute_resource_id": null,
      "inherited_operatingsystem_id": null,
      "inherited_architecture_id": null,
      "inherited_medium_id": null,
      "inherited_ptable_id": null,
      "inherited_subnet_id": null,
      "inherited_subnet6_id": null,
      "inherited_realm_id": null,
      "inherited_pxe_loader": null
    },
    {
      "subnet_id": null,
      "subnet_name": "five",
      "operatingsystem_id": null,
      "operatingsystem_name": "centos 5.3",
      "domain_id": null,
      "domain_name": "mydomain.net",
      "environment_id": 334344675,
      "environment_name": "production",
      "compute_profile_id": null,
      "compute_profile_name": "1-Small",
      "ancestry": "1",
      "parent_id": 1,
      "parent_name": "Parent",
      "ptable_id": null,
      "ptable_name": "Example partition table",
      "medium_id": null,
      "medium_name": "CentOS 5.4",
      "pxe_loader": "PXELinux BIOS",
      "subnet6_id": null,
      "subnet6_name": "six",
      "compute_resource_id": null,
      "compute_resource_name": null,
      "architecture_id": null,
      "architecture_name": "x86_64",
      "realm_id": null,
      "realm_name": null,
      "created_at": "2020-05-20 13:24:30 UTC",
      "updated_at": "2020-05-20 13:24:30 UTC",
      "id": 928644285,
      "name": "inherited",
      "title": "Parent/inherited",
      "description": null,
      "puppet_proxy_id": null,
      "puppet_proxy_name": "Puppetmaster Proxy",
      "puppet_ca_proxy_id": null,
      "puppet_ca_proxy_name": "Puppetmaster Proxy",
      "puppet_proxy": {
        "name": "Puppetmaster Proxy",
        "id": 182953976,
        "url": "http://else.where:4567"
      },
      "puppet_ca_proxy": {
        "name": "Puppetmaster Proxy",
        "id": 182953976,
        "url": "http://else.where:4567"
      },
      "inherited_compute_profile_id": 980190962,
      "inherited_environment_id": null,
      "inherited_domain_id": 22495316,
      "inherited_puppet_proxy_id": 182953976,
      "inherited_puppet_ca_proxy_id": 182953976,
      "inherited_compute_resource_id": null,
      "inherited_operatingsystem_id": 309172073,
      "inherited_architecture_id": 501905019,
      "inherited_medium_id": 980190962,
      "inherited_ptable_id": 615088209,
      "inherited_subnet_id": 1018350795,
      "inherited_subnet6_id": 51848956,
      "inherited_realm_id": null,
      "inherited_pxe_loader": "PXELinux BIOS"
    },
    {
      "subnet_id": null,
      "subnet_name": null,
      "operatingsystem_id": null,
      "operatingsystem_name": null,
      "domain_id": null,
      "domain_name": null,
      "environment_id": null,
      "environment_name": null,
      "compute_profile_id": null,
      "compute_profile_name": null,
      "ancestry": null,
      "parent_id": null,
      "parent_name": null,
      "ptable_id": null,
      "ptable_name": null,
      "medium_id": null,
      "medium_name": null,
      "pxe_loader": null,
      "subnet6_id": null,
      "subnet6_name": null,
      "compute_resource_id": null,
      "compute_resource_name": null,
      "architecture_id": null,
      "architecture_name": null,
      "realm_id": null,
      "realm_name": null,
      "created_at": "2020-05-20 13:24:30 UTC",
      "updated_at": "2020-05-20 13:24:30 UTC",
      "id": 866317115,
      "name": "Unusual",
      "title": "Unusual",
      "description": null,
      "puppet_proxy_id": 182953976,
      "puppet_proxy_name": "Puppetmaster Proxy",
      "puppet_ca_proxy_id": null,
      "puppet_ca_proxy_name": null,
      "puppet_proxy": {
        "name": "Puppetmaster Proxy",
        "id": 182953976,
        "url": "http://else.where:4567"
      },
      "puppet_ca_proxy": null,
      "inherited_compute_profile_id": null,
      "inherited_environment_id": null,
      "inherited_domain_id": null,
      "inherited_puppet_proxy_id": null,
      "inherited_puppet_ca_proxy_id": null,
      "inherited_compute_resource_id": null,
      "inherited_operatingsystem_id": null,
      "inherited_architecture_id": null,
      "inherited_medium_id": null,
      "inherited_ptable_id": null,
      "inherited_subnet_id": null,
      "inherited_subnet6_id": null,
      "inherited_realm_id": null,
      "inherited_pxe_loader": null
    }
  ]
}

Params

Param name Description
puppetclass_id
optional

ID of Puppet class

Validations:

  • Must be a String

location_id
optional

Scope by locations

Validations:

  • Must be a Integer

organization_id
optional

Scope by organizations

Validations:

  • Must be a Integer

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$/.

include
optional

Array of extra information types to include

Validations:

  • Must be an array of [parameters]

Search fields

Field name Type Possible values
architecture string
class string
config_group string
environment string
host string
id integer
label string
location string
location_id integer
medium string
name string
organization string
organization_id integer
os string
os_description string
os_id integer
os_major string
os_minor string
os_title string
params string
template string
title string

GET /api/hostgroups/:id
Show a host group

Examples

GET /api/hostgroups/928644290
200
{
  "subnet_id": null,
  "subnet_name": null,
  "operatingsystem_id": null,
  "operatingsystem_name": null,
  "domain_id": null,
  "domain_name": null,
  "environment_id": null,
  "environment_name": null,
  "compute_profile_id": null,
  "compute_profile_name": null,
  "ancestry": null,
  "parent_id": null,
  "parent_name": null,
  "ptable_id": null,
  "ptable_name": null,
  "medium_id": null,
  "medium_name": null,
  "pxe_loader": null,
  "subnet6_id": null,
  "subnet6_name": null,
  "compute_resource_id": null,
  "compute_resource_name": null,
  "architecture_id": null,
  "architecture_name": null,
  "realm_id": null,
  "realm_name": null,
  "created_at": "2020-05-20 13:13:20 UTC",
  "updated_at": "2020-05-20 13:13:20 UTC",
  "id": 928644290,
  "name": "hostgroup6",
  "title": "hostgroup6",
  "description": null,
  "puppet_proxy_id": null,
  "puppet_proxy_name": null,
  "puppet_ca_proxy_id": null,
  "puppet_ca_proxy_name": null,
  "puppet_proxy": null,
  "puppet_ca_proxy": null,
  "inherited_compute_profile_id": null,
  "inherited_environment_id": null,
  "inherited_domain_id": null,
  "inherited_puppet_proxy_id": null,
  "inherited_puppet_ca_proxy_id": null,
  "inherited_compute_resource_id": null,
  "inherited_operatingsystem_id": null,
  "inherited_architecture_id": null,
  "inherited_medium_id": null,
  "inherited_ptable_id": null,
  "inherited_subnet_id": null,
  "inherited_subnet6_id": null,
  "inherited_realm_id": null,
  "inherited_pxe_loader": null,
  "parameters": [
    {
      "priority": 60,
      "created_at": "2020-05-20 13:13:20 UTC",
      "updated_at": "2020-05-20 13:13:20 UTC",
      "id": 767575240,
      "name": "foo",
      "parameter_type": "integer",
      "value": 42
    }
  ],
  "template_combinations": [],
  "puppetclasses": [],
  "config_groups": [],
  "all_puppetclasses": [],
  "locations": [
    {
      "id": 255093256,
      "name": "Location 1",
      "title": "Location 1",
      "description": null
    }
  ],
  "organizations": [
    {
      "id": 447626438,
      "name": "Organization 1",
      "title": "Organization 1",
      "description": null
    }
  ]
}

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 an identifier, string from 1 to 128 characters containing only alphanumeric characters, space, underscore(_), hypen(-) with no leading or trailing space.

show_hidden_parameters
optional

Display hidden parameter values

Validations:

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


POST /api/hostgroups
Create a host group

Examples

POST /api/hostgroups
{
  "hostgroup": {
    "name": "TestHostgroup",
    "parameters": [
      {
        "name": "foo",
        "value": 42,
        "parameter_type": "integer"
      }
    ]
  }
}
201
{
  "subnet_id": null,
  "subnet_name": null,
  "operatingsystem_id": null,
  "operatingsystem_name": null,
  "domain_id": null,
  "domain_name": null,
  "environment_id": null,
  "environment_name": null,
  "compute_profile_id": null,
  "compute_profile_name": null,
  "ancestry": null,
  "parent_id": null,
  "parent_name": null,
  "ptable_id": null,
  "ptable_name": null,
  "medium_id": null,
  "medium_name": null,
  "pxe_loader": null,
  "subnet6_id": null,
  "subnet6_name": null,
  "compute_resource_id": null,
  "compute_resource_name": null,
  "architecture_id": null,
  "architecture_name": null,
  "realm_id": null,
  "realm_name": null,
  "created_at": "2020-05-20 13:13:20 UTC",
  "updated_at": "2020-05-20 13:13:20 UTC",
  "id": 928644288,
  "name": "TestHostgroup",
  "title": "TestHostgroup",
  "description": null,
  "puppet_proxy_id": null,
  "puppet_proxy_name": null,
  "puppet_ca_proxy_id": null,
  "puppet_ca_proxy_name": null,
  "puppet_proxy": null,
  "puppet_ca_proxy": null,
  "inherited_compute_profile_id": null,
  "inherited_environment_id": null,
  "inherited_domain_id": null,
  "inherited_puppet_proxy_id": null,
  "inherited_puppet_ca_proxy_id": null,
  "inherited_compute_resource_id": null,
  "inherited_operatingsystem_id": null,
  "inherited_architecture_id": null,
  "inherited_medium_id": null,
  "inherited_ptable_id": null,
  "inherited_subnet_id": null,
  "inherited_subnet6_id": null,
  "inherited_realm_id": null,
  "inherited_pxe_loader": null,
  "parameters": [],
  "template_combinations": [],
  "puppetclasses": [],
  "config_groups": [],
  "all_puppetclasses": [],
  "locations": [],
  "organizations": []
}

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

hostgroup
required

Validations:

  • Must be a Hash

hostgroup[name]
required

Name of the host group

Validations:

  • Must be a String

hostgroup[description]
optional , nil allowed

Host group description

Validations:

  • Must be a String

hostgroup[parent_id]
optional , nil allowed

Parent ID of the host group

Validations:

  • Must be a number.

hostgroup[environment_id]
optional , nil allowed

Environment ID

Validations:

  • Must be a number.

hostgroup[compute_profile_id]
optional , nil allowed

Compute profile ID

Validations:

  • Must be a number.

hostgroup[compute_resource_id]
optional , nil allowed

Compute resource ID

Validations:

  • Must be a number.

hostgroup[operatingsystem_id]
optional , nil allowed

Operating system ID

Validations:

  • Must be a number.

hostgroup[architecture_id]
optional , nil allowed

Architecture ID

Validations:

  • Must be a number.

hostgroup[pxe_loader]
optional , nil allowed

DHCP filename option (Grub2/PXELinux by default)

Validations:

  • Must be one of: None, PXELinux BIOS, PXELinux UEFI, Grub UEFI, Grub2 BIOS, Grub2 ELF, Grub2 UEFI, Grub2 UEFI SecureBoot, Grub2 UEFI HTTP, Grub2 UEFI HTTPS, Grub2 UEFI HTTPS SecureBoot, iPXE Embedded, iPXE UEFI HTTP, iPXE Chain BIOS, iPXE Chain UEFI.

hostgroup[medium_id]
optional , nil allowed

Media ID

Validations:

  • Must be a number.

hostgroup[ptable_id]
optional , nil allowed

Partition table ID

Validations:

  • Must be a number.

hostgroup[subnet_id]
optional , nil allowed

Subnet ID

Validations:

  • Must be a number.

hostgroup[subnet6_id]
optional , nil allowed

Subnet IPv6 ID

Validations:

  • Must be a number.

hostgroup[domain_id]
optional , nil allowed

Domain ID

Validations:

  • Must be a number.

hostgroup[realm_id]
optional , nil allowed

Realm ID

Validations:

  • Must be a number.

hostgroup[puppetclass_ids]
optional , nil allowed

Validations:

  • Must be an array of any type

hostgroup[config_group_ids]
optional , nil allowed

IDs of associated config groups

Validations:

  • Must be an array of any type

hostgroup[group_parameters_attributes]
optional , nil allowed

Array of parameters

Validations:

  • Must be an Array of nested elements

hostgroup[group_parameters_attributes][name]
required

Name of the parameter

Validations:

  • Must be a String

hostgroup[group_parameters_attributes][value]
required

Parameter value

Validations:

  • Must be a String

hostgroup[group_parameters_attributes][parameter_type]
optional , nil allowed

Type of value

Validations:

  • Must be one of: string, boolean, integer, real, array, hash, yaml, json.

hostgroup[group_parameters_attributes][hidden_value]
optional , nil allowed

Validations:

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

hostgroup[puppet_proxy_id]
optional , nil allowed

Puppet proxy ID

Validations:

  • Must be a number.

hostgroup[puppet_ca_proxy_id]
optional , nil allowed

Puppet CA proxy ID

Validations:

  • Must be a number.

hostgroup[root_pass]
optional , nil allowed

Root password on provisioned hosts

Validations:

  • Must be a String

hostgroup[location_ids]
optional , nil allowed

REPLACE locations with given ids

Validations:

  • Must be an array of any type

hostgroup[organization_ids]
optional , nil allowed

REPLACE organizations with given ids.

Validations:

  • Must be an array of any type


PUT /api/hostgroups/:id
Update a host group

Examples

PUT /api/hostgroups/636252244-Common
{
  "hostgroup": {
    "name": "TestHostgroup"
  }
}
200
{
  "subnet_id": null,
  "subnet_name": null,
  "operatingsystem_id": 309172073,
  "operatingsystem_name": "centos 5.3",
  "domain_id": 22495316,
  "domain_name": "mydomain.net",
  "environment_id": 334344675,
  "environment_name": "production",
  "compute_profile_id": 980190962,
  "compute_profile_name": "1-Small",
  "ancestry": null,
  "parent_id": null,
  "parent_name": null,
  "ptable_id": null,
  "ptable_name": null,
  "medium_id": 980190962,
  "medium_name": "CentOS 5.4",
  "pxe_loader": null,
  "subnet6_id": null,
  "subnet6_name": null,
  "compute_resource_id": null,
  "compute_resource_name": null,
  "architecture_id": 501905019,
  "architecture_name": "x86_64",
  "realm_id": null,
  "realm_name": null,
  "created_at": "2020-05-20 13:24:30 UTC",
  "updated_at": "2020-05-20 13:24:33 UTC",
  "id": 636252244,
  "name": "TestHostgroup",
  "title": "TestHostgroup",
  "description": null,
  "puppet_proxy_id": 182953976,
  "puppet_proxy_name": "Puppetmaster Proxy",
  "puppet_ca_proxy_id": 182953976,
  "puppet_ca_proxy_name": "Puppetmaster Proxy",
  "puppet_proxy": {
    "name": "Puppetmaster Proxy",
    "id": 182953976,
    "url": "http://else.where:4567"
  },
  "puppet_ca_proxy": {
    "name": "Puppetmaster Proxy",
    "id": 182953976,
    "url": "http://else.where:4567"
  },
  "inherited_compute_profile_id": null,
  "inherited_environment_id": null,
  "inherited_domain_id": null,
  "inherited_puppet_proxy_id": null,
  "inherited_puppet_ca_proxy_id": null,
  "inherited_compute_resource_id": null,
  "inherited_operatingsystem_id": null,
  "inherited_architecture_id": null,
  "inherited_medium_id": null,
  "inherited_ptable_id": null,
  "inherited_subnet_id": null,
  "inherited_subnet6_id": null,
  "inherited_realm_id": null,
  "inherited_pxe_loader": null,
  "parameters": [
    {
      "priority": null,
      "created_at": "2020-05-20 13:24:30 UTC",
      "updated_at": "2020-05-20 13:24:30 UTC",
      "id": 767575238,
      "name": "group1",
      "parameter_type": "string",
      "value": "group1"
    }
  ],
  "template_combinations": [
    {
      "id": 980190962,
      "provisioning_template_id": 943779058,
      "provisioning_template_name": "MyString",
      "hostgroup_id": 636252244,
      "hostgroup_name": "TestHostgroup",
      "environment_id": 334344675,
      "environment_name": "production"
    },
    {
      "id": 281110143,
      "provisioning_template_id": 269958254,
      "provisioning_template_name": "MyString2",
      "hostgroup_id": 636252244,
      "hostgroup_name": "TestHostgroup",
      "environment_id": 334344675,
      "environment_name": "production"
    },
    {
      "id": 1018350795,
      "provisioning_template_id": 981457253,
      "provisioning_template_name": "MyScript",
      "hostgroup_id": 636252244,
      "hostgroup_name": "TestHostgroup",
      "environment_id": 334344675,
      "environment_name": "production"
    }
  ],
  "puppetclasses": [
    {
      "id": 980190962,
      "name": "base",
      "module_name": "base"
    }
  ],
  "config_groups": [
    {
      "created_at": "2020-05-20 13:24:30 UTC",
      "updated_at": "2020-05-20 13:24:30 UTC",
      "id": 980190962,
      "name": "Monitoring",
      "puppetclasses": [
        {
          "id": 51848956,
          "name": "chkmk",
          "module_name": "chkmk"
        },
        {
          "id": 1018350795,
          "name": "nagios",
          "module_name": "nagios"
        }
      ]
    },
    {
      "created_at": "2020-05-20 13:24:30 UTC",
      "updated_at": "2020-05-20 13:24:30 UTC",
      "id": 113629430,
      "name": "Tools",
      "puppetclasses": [
        {
          "id": 113629430,
          "name": "git",
          "module_name": "git"
        },
        {
          "id": 281110143,
          "name": "vim",
          "module_name": "vim"
        }
      ]
    }
  ],
  "all_puppetclasses": [
    {
      "id": 980190962,
      "name": "base",
      "module_name": "base"
    },
    {
      "id": 51848956,
      "name": "chkmk",
      "module_name": "chkmk"
    },
    {
      "id": 1018350795,
      "name": "nagios",
      "module_name": "nagios"
    },
    {
      "id": 281110143,
      "name": "vim",
      "module_name": "vim"
    }
  ],
  "locations": [
    {
      "id": 255093256,
      "name": "Location 1",
      "title": "Location 1",
      "description": null
    }
  ],
  "organizations": [
    {
      "id": 447626438,
      "name": "Organization 1",
      "title": "Organization 1",
      "description": null
    }
  ]
}

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 an identifier, string from 1 to 128 characters containing only alphanumeric characters, space, underscore(_), hypen(-) with no leading or trailing space.

hostgroup
required

Validations:

  • Must be a Hash

hostgroup[name]
optional

Name of the host group

Validations:

  • Must be a String

hostgroup[description]
optional , nil allowed

Host group description

Validations:

  • Must be a String

hostgroup[parent_id]
optional , nil allowed

Parent ID of the host group

Validations:

  • Must be a number.

hostgroup[environment_id]
optional , nil allowed

Environment ID

Validations:

  • Must be a number.

hostgroup[compute_profile_id]
optional , nil allowed

Compute profile ID

Validations:

  • Must be a number.

hostgroup[compute_resource_id]
optional , nil allowed

Compute resource ID

Validations:

  • Must be a number.

hostgroup[operatingsystem_id]
optional , nil allowed

Operating system ID

Validations:

  • Must be a number.

hostgroup[architecture_id]
optional , nil allowed

Architecture ID

Validations:

  • Must be a number.

hostgroup[pxe_loader]
optional , nil allowed

DHCP filename option (Grub2/PXELinux by default)

Validations:

  • Must be one of: None, PXELinux BIOS, PXELinux UEFI, Grub UEFI, Grub2 BIOS, Grub2 ELF, Grub2 UEFI, Grub2 UEFI SecureBoot, Grub2 UEFI HTTP, Grub2 UEFI HTTPS, Grub2 UEFI HTTPS SecureBoot, iPXE Embedded, iPXE UEFI HTTP, iPXE Chain BIOS, iPXE Chain UEFI.

hostgroup[medium_id]
optional , nil allowed

Media ID

Validations:

  • Must be a number.

hostgroup[ptable_id]
optional , nil allowed

Partition table ID

Validations:

  • Must be a number.

hostgroup[subnet_id]
optional , nil allowed

Subnet ID

Validations:

  • Must be a number.

hostgroup[subnet6_id]
optional , nil allowed

Subnet IPv6 ID

Validations:

  • Must be a number.

hostgroup[domain_id]
optional , nil allowed

Domain ID

Validations:

  • Must be a number.

hostgroup[realm_id]
optional , nil allowed

Realm ID

Validations:

  • Must be a number.

hostgroup[puppetclass_ids]
optional , nil allowed

Validations:

  • Must be an array of any type

hostgroup[config_group_ids]
optional , nil allowed

IDs of associated config groups

Validations:

  • Must be an array of any type

hostgroup[group_parameters_attributes]
optional , nil allowed

Array of parameters

Validations:

  • Must be an Array of nested elements

hostgroup[group_parameters_attributes][name]
optional

Name of the parameter

Validations:

  • Must be a String

hostgroup[group_parameters_attributes][value]
optional

Parameter value

Validations:

  • Must be a String

hostgroup[group_parameters_attributes][parameter_type]
optional , nil allowed

Type of value

Validations:

  • Must be one of: string, boolean, integer, real, array, hash, yaml, json.

hostgroup[group_parameters_attributes][hidden_value]
optional , nil allowed

Validations:

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

hostgroup[puppet_proxy_id]
optional , nil allowed

Puppet proxy ID

Validations:

  • Must be a number.

hostgroup[puppet_ca_proxy_id]
optional , nil allowed

Puppet CA proxy ID

Validations:

  • Must be a number.

hostgroup[root_pass]
optional , nil allowed

Root password on provisioned hosts

Validations:

  • Must be a String

hostgroup[location_ids]
optional , nil allowed

REPLACE locations with given ids

Validations:

  • Must be an array of any type

hostgroup[organization_ids]
optional , nil allowed

REPLACE organizations with given ids.

Validations:

  • Must be an array of any type


DELETE /api/hostgroups/:id
Delete a host group

Examples

DELETE /api/hostgroups/1-Parent
{
  "hostgroup": {}
}
409
{
  "message": "Cannot delete group Parent because it has nested host groups."
}

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 an identifier, string from 1 to 128 characters containing only alphanumeric characters, space, underscore(_), hypen(-) with no leading or trailing space.


POST /api/hostgroups/:id/clone
Clone a host group

Examples

POST /api/hostgroups/636252244/clone
{
  "name": "IslNRXKMQO",
  "hostgroup": {
    "name": "IslNRXKMQO"
  }
}
201
{
  "id": 928644292,
  "name": "IslNRXKMQO",
  "created_at": "2020-05-20T13:24:35.071Z",
  "updated_at": "2020-05-20T13:24:35.071Z",
  "environment_id": 334344675,
  "operatingsystem_id": 309172073,
  "architecture_id": 501905019,
  "medium_id": 980190962,
  "ptable_id": null,
  "root_pass": "$1$foreman$NW1XVtbk4/XkJqmKNrFWV0",
  "puppet_ca_proxy_id": 182953976,
  "use_image": null,
  "image_file": "",
  "ancestry": null,
  "vm_defaults": null,
  "subnet_id": null,
  "domain_id": 22495316,
  "puppet_proxy_id": 182953976,
  "title": "IslNRXKMQO",
  "realm_id": null,
  "compute_profile_id": 980190962,
  "grub_pass": "$1$foreman$NW1XVtbk4/XkJqmKNrFWV0",
  "lookup_value_matcher": "hostgroup=IslNRXKMQO",
  "subnet6_id": null,
  "pxe_loader": null,
  "description": null,
  "compute_resource_id": null
}

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

name
required

Validations:

  • Must be a String


PUT /api/hostgroups/:id/rebuild_config
Rebuild orchestration config

Examples

POST /api/hostgroups/928644290-hostgroup81/rebuild_config
{
  "only": [
    "TFTP"
  ],
  "hostgroup": {}
}
200
{
  "message": "Configuration successfully rebuilt."
}

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 an identifier, string from 1 to 128 characters containing only alphanumeric characters, space, underscore(_), hypen(-) with no leading or trailing space.

only
optional

Limit rebuild steps, valid steps are DHCP, DNS, TFTP

Validations:

  • Must be an array of any type

children_hosts
optional

Operate on child hostgroup hosts

Validations:

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