Foreman considers a domain and a DNS zone as the same thing. That is, if you are planning to manage a site where all the machines are of the form hostname.somewhere.com then the domain is somewhere.com. This allows Foreman to associate a puppet variable with a domain/site and automatically append this variable to all external node requests made by machines at that site.
GET /api/locations/447626442/domains 200 { "total": 2, "subtotal": 2, "page": 1, "per_page": 20, "search": null, "sort": { "by": null, "order": null }, "results": [ { "fullname": "example5.com", "created_at": "2018-11-16 10:02:09 UTC", "updated_at": "2018-11-16 10:02:09 UTC", "id": 759776764, "name": "example5.com", "dns_id": null, "dns": null }, { "fullname": "example6.com", "created_at": "2018-11-16 10:02:09 UTC", "updated_at": "2018-11-16 10:02:09 UTC", "id": 759776765, "name": "example6.com", "dns_id": null, "dns": null } ] }
Param name | Description |
---|---|
subnet_id optional |
ID of subnet Validations:
|
location_id optional |
Scope by locations Validations:
|
organization_id optional |
Scope by organizations Validations:
|
search optional |
filter results Validations:
|
order optional |
Sort and order by a searchable field, e.g. '<field> DESC' Validations:
|
page optional |
Page number, starting at 1 Validations:
|
per_page optional |
Number of results per page to return, 'all' to return all results Validations:
|
Field name | Type | Possible values |
---|---|---|
fullname | string | |
id | integer | |
location | string | |
location_id | integer | |
name | string | |
organization | string | |
organization_id | integer | |
params | string |
GET /api/domains/759776764 200 { "fullname": "example91.com", "created_at": "2018-11-16 10:03:27 UTC", "updated_at": "2018-11-16 10:03:27 UTC", "id": 759776764, "name": "example91.com", "dns_id": null, "dns": null, "subnets": [], "interfaces": [], "parameters": [ { "priority": 30, "created_at": "2018-11-16 10:03:27 UTC", "updated_at": "2018-11-16 10:03:27 UTC", "id": 767575239, "name": "foo", "value": "*****" } ], "locations": [ { "id": 255093256, "name": "Location 1", "title": "Location 1", "description": null } ], "organizations": [ { "id": 447626438, "name": "Organization 1", "title": "Organization 1", "description": null } ] }
Param name | Description |
---|---|
location_id optional |
Set the current location context for the request Validations:
|
organization_id optional |
Set the current organization context for the request Validations:
|
id required |
Numerical ID or domain name Validations:
|
show_hidden_parameters optional |
Display hidden parameter values Validations:
|
The fullname field is used for human readability in reports and other pages that refer to domains, and also available as an external node parameter
POST /api/domains { "organization_id": 447626439, "domain": { "name": "example4.com", "organization_ids": [ 447626439 ], "location_ids": [ 447626442 ] } } 201 { "fullname": null, "created_at": "2018-11-16 10:02:09 UTC", "updated_at": "2018-11-16 10:02:09 UTC", "id": 759776767, "name": "example4.com", "dns_id": null, "dns": null, "subnets": [], "interfaces": [], "parameters": [], "locations": [ { "id": 447626442, "name": "loc1", "title": "loc1", "description": null } ], "organizations": [ { "id": 447626439, "name": "org1", "title": "org1", "description": null } ] }
Param name | Description |
---|---|
location_id optional |
Set the current location context for the request Validations:
|
organization_id optional |
Set the current organization context for the request Validations:
|
domain required |
Validations:
|
domain[name] required |
The full DNS domain name Validations:
|
domain[fullname] optional , nil allowed |
Description of the domain Validations:
|
domain[dns_id] optional , nil allowed |
DNS proxy ID to use within this domain Validations:
|
domain[domain_parameters_attributes] optional , nil allowed |
Array of parameters (name, value) Validations:
|
domain[location_ids] optional , nil allowed |
REPLACE locations with given ids Validations:
|
domain[organization_ids] optional , nil allowed |
REPLACE organizations with given ids. Validations:
|
PUT /api/domains/22495316-mydomain-net { "domain": { "name": "domain.new" } } 200 { "fullname": null, "created_at": "2018-11-16 10:02:08 UTC", "updated_at": "2018-11-16 10:03:42 UTC", "id": 22495316, "name": "domain.new", "dns_id": 113629430, "dns": { "name": "DNS Proxy", "id": 113629430, "url": "http://else.where:45671" }, "subnets": [ { "id": 980190962, "name": "one", "description": null, "network_address": "2.3.4.0/24" } ], "interfaces": [], "parameters": [ { "priority": null, "created_at": "2018-11-16 10:02:08 UTC", "updated_at": "2018-11-16 10:02:08 UTC", "id": 665394701, "name": "parameter", "value": "value1" } ], "locations": [ { "id": 255093256, "name": "Location 1", "title": "Location 1", "description": null } ], "organizations": [ { "id": 447626438, "name": "Organization 1", "title": "Organization 1", "description": null } ] }
Param name | Description |
---|---|
location_id optional |
Set the current location context for the request Validations:
|
organization_id optional |
Set the current organization context for the request Validations:
|
id required |
Validations:
|
domain required |
Validations:
|
domain[name] optional |
The full DNS domain name Validations:
|
domain[fullname] optional , nil allowed |
Description of the domain Validations:
|
domain[dns_id] optional , nil allowed |
DNS proxy ID to use within this domain Validations:
|
domain[domain_parameters_attributes] optional , nil allowed |
Array of parameters (name, value) Validations:
|
domain[location_ids] optional , nil allowed |
REPLACE locations with given ids Validations:
|
domain[organization_ids] optional , nil allowed |
REPLACE organizations with given ids. Validations:
|
DELETE /api/domains/22495316-mydomain-net { "domain": {} } 200 { "id": 22495316, "name": "mydomain.net", "fullname": null, "created_at": "2018-11-16T10:02:08.278Z", "updated_at": "2018-11-16T10:02:08.278Z", "dns_id": 113629430 }
Param name | Description |
---|---|
location_id optional |
Set the current location context for the request Validations:
|
organization_id optional |
Set the current organization context for the request Validations:
|
id required |
Validations:
|