{
"openapi": "3.0.0",
"info": {
"description": "REST interface for the Insights Platform Host Inventory application.",
"version": "1.0.0",
"title": "Insights Host Inventory REST Interface"
},
"servers": [
{
"url": "/api/inventory/v1",
"description": "API server"
}
],
"externalDocs": {
"description": "How to use the Red Hat Insights API",
"url": "https://docs.redhat.com/en/documentation/red_hat_insights/1-latest/html/using_the_red_hat_insights_api/index"
},
"paths": {
"/hosts": {
"get": {
"operationId": "api.host.get_host_list",
"tags": [
"hosts"
],
"summary": "Read the entire list of hosts",
"description": "Read the entire list of all hosts available to the account.
Required permissions: inventory:hosts:read",
"security": [
{
"ApiKeyAuth": []
}
],
"parameters": [
{
"$ref": "#/components/parameters/displayName"
},
{
"$ref": "#/components/parameters/fqdn"
},
{
"$ref": "#/components/parameters/hostnameOrId"
},
{
"$ref": "#/components/parameters/insightsId"
},
{
"$ref": "#/components/parameters/subscriptionManagerId"
},
{
"$ref": "#/components/parameters/providerId"
},
{
"$ref": "#/components/parameters/providerType"
},
{
"$ref": "#/components/parameters/updatedStart"
},
{
"$ref": "#/components/parameters/updatedEnd"
},
{
"$ref": "#/components/parameters/lastCheckInStart"
},
{
"$ref": "#/components/parameters/lastCheckInEnd"
},
{
"$ref": "#/components/parameters/groupNameListParam"
},
{
"$ref": "#/components/parameters/groupIdListParam"
},
{
"$ref": "#/components/parameters/branchId"
},
{
"$ref": "#/components/parameters/perPageParam"
},
{
"$ref": "#/components/parameters/pageParam"
},
{
"$ref": "#/components/parameters/hostOrderByParam"
},
{
"$ref": "#/components/parameters/hostOrderHowParam"
},
{
"$ref": "#/components/parameters/stalenessParam"
},
{
"$ref": "#/components/parameters/tagsParam"
},
{
"$ref": "#/components/parameters/registered_with"
},
{
"$ref": "#/components/parameters/systemTypeParam"
},
{
"$ref": "#/components/parameters/filter_param"
},
{
"$ref": "#/components/parameters/fields_param"
}
],
"responses": {
"200": {
"description": "Successfully read the hosts list.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HostQueryOutput"
}
}
}
}
}
},
"delete": {
"operationId": "api.host.delete_hosts_by_filter",
"tags": [
"hosts"
],
"summary": "Delete the entire list of hosts filtered by the given parameters",
"description": "Delete the entire list of hosts filtered by the given parameters.
Required permissions: inventory:hosts:write",
"security": [
{
"ApiKeyAuth": []
}
],
"parameters": [
{
"$ref": "#/components/parameters/displayName"
},
{
"$ref": "#/components/parameters/fqdn"
},
{
"$ref": "#/components/parameters/hostnameOrId"
},
{
"$ref": "#/components/parameters/insightsId"
},
{
"$ref": "#/components/parameters/providerId"
},
{
"$ref": "#/components/parameters/providerType"
},
{
"$ref": "#/components/parameters/updatedStart"
},
{
"$ref": "#/components/parameters/updatedEnd"
},
{
"$ref": "#/components/parameters/lastCheckInStart"
},
{
"$ref": "#/components/parameters/lastCheckInEnd"
},
{
"$ref": "#/components/parameters/groupNameListParam"
},
{
"$ref": "#/components/parameters/groupIdListParam"
},
{
"$ref": "#/components/parameters/registered_with"
},
{
"$ref": "#/components/parameters/systemTypeParam"
},
{
"$ref": "#/components/parameters/stalenessNoDefaultsParam"
},
{
"$ref": "#/components/parameters/tagsParam"
},
{
"$ref": "#/components/parameters/filter_param"
},
{
"$ref": "#/components/parameters/subscriptionManagerId"
}
],
"responses": {
"202": {
"description": "Request for deletion of filtered hosts has been accepted."
},
"400": {
"description": "Invalid request."
}
}
}
},
"/beta/hosts-view": {
"get": {
"operationId": "api.host_views.get_host_views",
"tags": [
"hosts"
],
"summary": "[WIP] Read aggregated host and application data",
"description": "**[Work In Progress]** This endpoint is under active development and currently returns HTTP 501 (Not Implemented).
Read a combined view of hosts with optional application data such as Advisor, Vulnerability, Compliance, Patch, and others. Application joins are opt-in and controlled through the fields parameter.
Required permissions: inventory:hosts:read",
"security": [
{
"ApiKeyAuth": []
}
],
"parameters": [
{
"$ref": "#/components/parameters/displayName"
},
{
"$ref": "#/components/parameters/fqdn"
},
{
"$ref": "#/components/parameters/hostnameOrId"
},
{
"$ref": "#/components/parameters/insightsId"
},
{
"$ref": "#/components/parameters/subscriptionManagerId"
},
{
"$ref": "#/components/parameters/providerId"
},
{
"$ref": "#/components/parameters/providerType"
},
{
"$ref": "#/components/parameters/updatedStart"
},
{
"$ref": "#/components/parameters/updatedEnd"
},
{
"$ref": "#/components/parameters/lastCheckInStart"
},
{
"$ref": "#/components/parameters/lastCheckInEnd"
},
{
"$ref": "#/components/parameters/groupNameListParam"
},
{
"$ref": "#/components/parameters/branchId"
},
{
"$ref": "#/components/parameters/perPageParam"
},
{
"$ref": "#/components/parameters/pageParam"
},
{
"$ref": "#/components/parameters/hostViewOrderByParam"
},
{
"$ref": "#/components/parameters/hostOrderHowParam"
},
{
"$ref": "#/components/parameters/stalenessParam"
},
{
"$ref": "#/components/parameters/tagsParam"
},
{
"$ref": "#/components/parameters/registered_with"
},
{
"$ref": "#/components/parameters/systemTypeParam"
},
{
"$ref": "#/components/parameters/hostViewAppFilterParam"
},
{
"$ref": "#/components/parameters/hostViewFieldsParam"
}
],
"responses": {
"200": {
"description": "Successfully read host views.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HostViewQueryOutput"
}
}
}
},
"400": {
"description": "Invalid request."
},
"501": {
"description": "Not Implemented - endpoint under development."
}
}
}
},
"/hosts/all": {
"delete": {
"operationId": "api.host.delete_all_hosts",
"tags": [
"hosts"
],
"summary": "Delete all hosts on the account",
"description": "Delete all hosts on the account. The request must include \"confirm_delete_all=true\".
Required permissions: inventory:hosts:write",
"security": [
{
"ApiKeyAuth": []
}
],
"parameters": [
{
"$ref": "#/components/parameters/confirmDeleteAll"
}
],
"responses": {
"202": {
"description": "Request for deleting all hosts has been accepted."
},
"400": {
"description": "Invalid request."
}
}
}
},
"/hosts/checkin": {
"post": {
"operationId": "api.host.host_checkin",
"tags": [
"hosts"
],
"summary": "Update staleness timestamps for a host matching the provided facts",
"description": "Finds a host and updates its staleness timestamps. It uses the supplied canonical facts to determine which host to update. By default, the staleness timestamp is set to 1 hour from when the request is received; however, this can be overridden by supplying the interval.
Required permissions: inventory:hosts:write",
"security": [
{
"ApiKeyAuth": []
},
{
"BearerAuth": []
}
],
"requestBody": {
"description": "Data required to create a check-in record for a host.",
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateCheckIn"
}
}
}
},
"responses": {
"201": {
"description": "Successfully checked in Host.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HostOut"
}
}
}
},
"404": {
"description": "Not Found."
}
}
}
},
"/hosts/{host_id_list}": {
"get": {
"tags": [
"hosts"
],
"summary": "Find hosts by their IDs",
"description": "Find one or more hosts by their ID.
Required permissions: inventory:hosts:read",
"operationId": "api.host.get_host_by_id",
"security": [
{
"ApiKeyAuth": []
}
],
"parameters": [
{
"$ref": "#/components/parameters/hostIdList"
},
{
"$ref": "#/components/parameters/branchId"
},
{
"$ref": "#/components/parameters/perPageParam"
},
{
"$ref": "#/components/parameters/pageParam"
},
{
"$ref": "#/components/parameters/hostOrderByParam"
},
{
"$ref": "#/components/parameters/hostOrderHowParam"
},
{
"$ref": "#/components/parameters/fields_param"
}
],
"responses": {
"200": {
"description": "Successfully searched for hosts.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HostQueryOutput"
}
}
}
},
"400": {
"description": "Invalid request."
},
"404": {
"description": "Host not found."
}
}
},
"delete": {
"tags": [
"hosts"
],
"summary": "Delete hosts by IDs",
"description": "Delete hosts by IDs
Required permissions: inventory:hosts:write",
"operationId": "api.host.delete_host_by_id",
"security": [
{
"ApiKeyAuth": []
}
],
"parameters": [
{
"$ref": "#/components/parameters/hostIdList"
},
{
"$ref": "#/components/parameters/branchId"
}
],
"responses": {
"200": {
"description": "Successfully deleted hosts."
},
"400": {
"description": "Invalid request."
},
"404": {
"description": "Host not found."
}
}
},
"patch": {
"tags": [
"hosts"
],
"summary": "Update hosts",
"description": "Update hosts
Required permissions: inventory:hosts:write",
"operationId": "api.host.patch_host_by_id",
"security": [
{
"ApiKeyAuth": []
}
],
"parameters": [
{
"$ref": "#/components/parameters/hostIdList"
},
{
"$ref": "#/components/parameters/branchId"
}
],
"requestBody": {
"description": "A group of fields to be updated on the hosts",
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PatchHostIn"
}
}
}
},
"responses": {
"200": {
"description": "Successfully updated the hosts."
},
"400": {
"description": "Invalid request."
},
"404": {
"description": "Host not found."
}
}
}
},
"/hosts/{host_id_list}/facts/{namespace}": {
"patch": {
"tags": [
"hosts"
],
"summary": "Merge facts under a namespace",
"description": "Merge one or multiple hosts facts under a namespace.
Required permissions: inventory:hosts:write",
"operationId": "api.host.merge_facts",
"security": [
{
"ApiKeyAuth": []
}
],
"parameters": [
{
"$ref": "#/components/parameters/hostIdList"
},
{
"$ref": "#/components/parameters/factsNamespace"
},
{
"$ref": "#/components/parameters/branchId"
}
],
"requestBody": {
"description": "A dictionary with the new facts to merge with the original ones.",
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Facts"
}
}
}
},
"responses": {
"200": {
"description": "Successfully merged facts."
},
"400": {
"description": "Invalid request."
},
"404": {
"description": "Host or namespace not found."
}
}
},
"put": {
"tags": [
"hosts"
],
"summary": "Replace facts under a namespace",
"description": "Replace facts under a namespace
Required permissions: inventory:hosts:write",
"security": [
{
"ApiKeyAuth": []
}
],
"operationId": "api.host.replace_facts",
"parameters": [
{
"$ref": "#/components/parameters/hostIdList"
},
{
"$ref": "#/components/parameters/factsNamespace"
},
{
"$ref": "#/components/parameters/branchId"
}
],
"requestBody": {
"description": "A dictionary with the new facts to replace the original ones.",
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Facts"
}
}
}
},
"responses": {
"200": {
"description": "Successfully replaced facts."
},
"400": {
"description": "Invalid request."
},
"404": {
"description": "Host or namespace not found."
}
}
}
},
"/hosts/{host_id_list}/system_profile": {
"get": {
"tags": [
"hosts"
],
"summary": "Return one or more hosts system profile",
"description": "Find one or more hosts by their ID and return the id and system profile
Required permissions: inventory:hosts:read",
"operationId": "api.host.get_host_system_profile_by_id",
"security": [
{
"ApiKeyAuth": []
}
],
"parameters": [
{
"$ref": "#/components/parameters/hostIdList"
},
{
"$ref": "#/components/parameters/perPageParam"
},
{
"$ref": "#/components/parameters/pageParam"
},
{
"$ref": "#/components/parameters/hostOrderByParam"
},
{
"$ref": "#/components/parameters/hostOrderHowParam"
},
{
"$ref": "#/components/parameters/branchId"
},
{
"$ref": "#/components/parameters/fields_param"
}
],
"responses": {
"200": {
"description": "Successfully searched for hosts.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SystemProfileByHostOut"
}
}
}
},
"400": {
"description": "Invalid request."
},
"404": {
"description": "Host not found."
}
}
}
},
"/hosts/{host_id_list}/tags": {
"get": {
"tags": [
"hosts"
],
"summary": "Get the tags on a host",
"description": "Get the tags on a host
Required permissions: inventory:hosts:read",
"operationId": "api.host.get_host_tags",
"security": [
{
"ApiKeyAuth": []
}
],
"parameters": [
{
"$ref": "#/components/parameters/hostIdList"
},
{
"$ref": "#/components/parameters/perPageParam"
},
{
"$ref": "#/components/parameters/pageParam"
},
{
"$ref": "#/components/parameters/tagOrderByParam"
},
{
"$ref": "#/components/parameters/hostOrderHowParam"
},
{
"$ref": "#/components/parameters/searchParam"
}
],
"responses": {
"200": {
"description": "Successfully found tags.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/TagsOut"
}
}
}
},
"400": {
"description": "Invalid request."
}
}
}
},
"/hosts/{host_id_list}/tags/count": {
"get": {
"tags": [
"hosts"
],
"summary": "Get the number of tags on a host or hosts",
"description": "Get the number of tags on a host or hosts
Required permissions: inventory:hosts:read",
"operationId": "api.host.get_host_tag_count",
"security": [
{
"ApiKeyAuth": []
}
],
"parameters": [
{
"$ref": "#/components/parameters/hostIdList"
},
{
"$ref": "#/components/parameters/perPageParam"
},
{
"$ref": "#/components/parameters/pageParam"
},
{
"$ref": "#/components/parameters/tagOrderByParam"
},
{
"$ref": "#/components/parameters/hostOrderHowParam"
}
],
"responses": {
"200": {
"description": "Successfully found tag count.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/TagCountOut"
}
}
}
},
"400": {
"description": "Invalid request."
}
}
}
},
"/host_exists": {
"get": {
"tags": [
"hosts"
],
"summary": "Find one host by insights_id, if it exists",
"description": "Find one host by insights_id, if it exists.
Required permissions: inventory:hosts:read",
"operationId": "api.host.get_host_exists",
"security": [
{
"ApiKeyAuth": []
}
],
"parameters": [
{
"$ref": "#/components/parameters/insightsId"
}
],
"responses": {
"200": {
"description": "Found a matching host.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HostIdOut"
}
}
}
},
"400": {
"description": "Invalid request."
},
"404": {
"description": "Host not found."
},
"409": {
"description": "Multiple matching hosts detected."
}
}
}
},
"/groups": {
"get": {
"operationId": "api.group.get_group_list",
"tags": [
"groups"
],
"summary": "Read the entire list of groups",
"description": "Read the entire list of all groups available to the account.
Required permissions: inventory:groups:read",
"security": [
{
"ApiKeyAuth": []
}
],
"parameters": [
{
"$ref": "#/components/parameters/groupName"
},
{
"$ref": "#/components/parameters/perPageParam"
},
{
"$ref": "#/components/parameters/pageParam"
},
{
"$ref": "#/components/parameters/groupOrderByParam"
},
{
"$ref": "#/components/parameters/groupOrderHowParam"
},
{
"$ref": "#/components/parameters/workspaceTypeParam"
}
],
"responses": {
"200": {
"description": "Successfully read the groups list.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GroupQueryOutput"
}
}
}
},
"400": {
"description": "Groups not found."
}
}
},
"post": {
"operationId": "api.group.create_group",
"tags": [
"groups"
],
"summary": "Create a new group matching the provided name and list of hosts IDs",
"description": "Creates a new group containing the hosts associated with the host IDs provided.
Required permissions: inventory:groups:write",
"security": [
{
"ApiKeyAuth": []
},
{
"BearerAuth": []
}
],
"requestBody": {
"description": "Data required to create a record for a group.",
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GroupIn"
}
}
}
},
"responses": {
"201": {
"description": "Successfully created new Group.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GroupOutWithHostCount"
}
}
}
},
"400": {
"description": "Invalid request."
},
"403": {
"description": "Forbidden - Invalid RBAC permission."
}
}
}
},
"/groups/{group_id}": {
"patch": {
"operationId": "api.group.patch_group_by_id",
"tags": [
"groups"
],
"summary": "Update group information",
"description": "Update group information, removing any existing host associations from the group.
Required permissions: inventory:groups:write",
"security": [
{
"ApiKeyAuth": []
}
],
"parameters": [
{
"$ref": "#/components/parameters/groupId"
}
],
"requestBody": {
"description": "A dictionary with new information with which to update the original group.",
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GroupIn"
}
}
}
},
"responses": {
"200": {
"description": "Group information successfully updated.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GroupOutWithHostCount"
}
}
}
},
"400": {
"description": "Invalid request."
},
"404": {
"description": "Group not found."
}
}
}
},
"/groups/{group_id_list}": {
"get": {
"operationId": "api.group.get_groups_by_id",
"tags": [
"groups"
],
"summary": "Find groups by their IDs",
"description": "Find one or more groups by their IDs.
Required permissions: inventory:groups:read",
"security": [
{
"ApiKeyAuth": []
}
],
"parameters": [
{
"$ref": "#/components/parameters/groupIdList"
},
{
"$ref": "#/components/parameters/perPageParam"
},
{
"$ref": "#/components/parameters/pageParam"
},
{
"$ref": "#/components/parameters/groupOrderByParam"
},
{
"$ref": "#/components/parameters/groupOrderHowParam"
}
],
"responses": {
"200": {
"description": "Successfully searched for groups.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GroupQueryOutput"
}
}
}
},
"400": {
"description": "Invalid request."
},
"404": {
"description": "Groups not found."
}
}
},
"delete": {
"operationId": "api.group.delete_groups",
"tags": [
"groups"
],
"summary": "Delete a list of groups",
"description": "Delete a list of groups.
Required permissions: inventory:groups:write",
"security": [
{
"ApiKeyAuth": []
}
],
"parameters": [
{
"$ref": "#/components/parameters/groupIdList"
}
],
"responses": {
"204": {
"description": "The groups were successfully deleted."
},
"400": {
"description": "Invalid request."
}
}
}
},
"/groups/{group_id}/hosts/{host_id_list}": {
"delete": {
"operationId": "api.host_group.delete_hosts_from_group",
"tags": [
"groups"
],
"summary": "Delete one or more hosts from a group",
"description": "Delete one or more hosts from a group.
Required permissions: inventory:groups:write",
"security": [
{
"ApiKeyAuth": []
}
],
"parameters": [
{
"$ref": "#/components/parameters/groupId"
},
{
"$ref": "#/components/parameters/hostIdList"
}
],
"responses": {
"204": {
"description": "Successfully deleted hosts."
},
"400": {
"description": "Invalid request."
}
}
}
},
"/groups/{group_id}/hosts": {
"get": {
"operationId": "api.host_group.get_host_list_by_group",
"tags": [
"groups"
],
"summary": "Read the list of hosts in a group",
"description": "Read the list of all hosts in a specific group.
Required permissions: inventory:hosts:read",
"security": [
{
"ApiKeyAuth": []
}
],
"parameters": [
{
"$ref": "#/components/parameters/groupId"
},
{
"$ref": "#/components/parameters/displayName"
},
{
"$ref": "#/components/parameters/fqdn"
},
{
"$ref": "#/components/parameters/hostnameOrId"
},
{
"$ref": "#/components/parameters/insightsId"
},
{
"$ref": "#/components/parameters/perPageParam"
},
{
"$ref": "#/components/parameters/pageParam"
},
{
"$ref": "#/components/parameters/hostOrderByParam"
},
{
"$ref": "#/components/parameters/hostOrderHowParam"
},
{
"$ref": "#/components/parameters/stalenessParam"
},
{
"$ref": "#/components/parameters/tagsParam"
},
{
"$ref": "#/components/parameters/registered_with"
},
{
"$ref": "#/components/parameters/filter_param"
},
{
"$ref": "#/components/parameters/fields_param"
}
],
"responses": {
"200": {
"description": "Successfully read the hosts in the group.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HostQueryOutput"
}
}
}
},
"404": {
"description": "Group not found."
}
}
},
"post": {
"operationId": "api.host_group.add_host_list_to_group",
"tags": [
"groups"
],
"summary": "Add host IDs to the provided group",
"description": "Adds the host list in the request body to the provided group.
Required permissions: inventory:groups:write",
"security": [
{
"ApiKeyAuth": []
}
],
"parameters": [
{
"$ref": "#/components/parameters/groupId"
}
],
"requestBody": {
"description": "A list of hosts IDs to associate with the provided group.",
"required": true,
"x-body-name": "host_id_list",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HostIds"
}
}
}
},
"responses": {
"200": {
"description": "Hosts successfully or already previously associated with group.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GroupOutWithHostCount"
}
}
}
},
"400": {
"description": "Invalid request."
},
"404": {
"description": "Group not found."
}
}
}
},
"/groups/hosts/{host_id_list}": {
"delete": {
"operationId": "api.group.delete_hosts_from_different_groups",
"tags": [
"groups"
],
"summary": "Delete a list of hosts from the groups they are in",
"description": "Delete a list of hosts from the groups they are in.
Required permissions: inventory:groups:write",
"security": [
{
"ApiKeyAuth": []
}
],
"parameters": [
{
"$ref": "#/components/parameters/hostIdList"
}
],
"responses": {
"204": {
"description": "The hosts were successfully removed from their groups."
},
"400": {
"description": "Invalid request."
},
"404": {
"description": "The provided hosts are ungrouped."
}
}
}
},
"/resource-types": {
"get": {
"operationId": "api.resource_type.get_resource_type_list",
"tags": [
"resource-types"
],
"summary": "Get the list of resource types",
"description": "Returns the list of available RBAC resource types.
Required permissions: rbac:*:*",
"security": [
{
"ApiKeyAuth": []
}
],
"parameters": [
{
"$ref": "#/components/parameters/resourceTypesPerPageParam"
},
{
"$ref": "#/components/parameters/pageParam"
}
],
"responses": {
"200": {
"description": "Successfully read the resource types list.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ResourceTypesQueryOutput"
}
}
}
},
"400": {
"description": "Resource types not found."
}
}
}
},
"/resource-types/inventory-groups": {
"get": {
"operationId": "api.resource_type.get_resource_type_groups_list",
"tags": [
"resource-types"
],
"summary": "Get the list of inventory groups in resource-types format",
"description": "Returns the list of groups in the current account.
Required permissions: rbac:*:*",
"security": [
{
"ApiKeyAuth": []
}
],
"parameters": [
{
"$ref": "#/components/parameters/groupName"
},
{
"$ref": "#/components/parameters/resourceTypesPerPageParam"
},
{
"$ref": "#/components/parameters/pageParam"
}
],
"responses": {
"200": {
"description": "Successfully read the resource-types groups list.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ResourceTypesGroupsQueryOutput"
}
}
}
},
"400": {
"description": "Groups not found."
}
}
}
},
"/tags": {
"get": {
"tags": [
"tags"
],
"summary": "Get the active host tags for a given account",
"description": "Required permissions: inventory:hosts:read",
"operationId": "api.tag.get_tags",
"security": [
{
"ApiKeyAuth": []
}
],
"parameters": [
{
"$ref": "#/components/parameters/tagsParam"
},
{
"$ref": "#/components/parameters/tagsOrderByParam"
},
{
"$ref": "#/components/parameters/tagsOrderHowParam"
},
{
"$ref": "#/components/parameters/perPageParam"
},
{
"$ref": "#/components/parameters/pageParam"
},
{
"$ref": "#/components/parameters/stalenessParam"
},
{
"$ref": "#/components/parameters/searchParam"
},
{
"$ref": "#/components/parameters/displayName"
},
{
"$ref": "#/components/parameters/fqdn"
},
{
"$ref": "#/components/parameters/hostnameOrId"
},
{
"$ref": "#/components/parameters/insightsId"
},
{
"$ref": "#/components/parameters/providerId"
},
{
"$ref": "#/components/parameters/providerType"
},
{
"$ref": "#/components/parameters/updatedStart"
},
{
"$ref": "#/components/parameters/updatedEnd"
},
{
"$ref": "#/components/parameters/lastCheckInStart"
},
{
"$ref": "#/components/parameters/lastCheckInEnd"
},
{
"$ref": "#/components/parameters/groupNameListParam"
},
{
"$ref": "#/components/parameters/groupIdListParam"
},
{
"$ref": "#/components/parameters/registered_with"
},
{
"$ref": "#/components/parameters/systemTypeParam"
},
{
"$ref": "#/components/parameters/filter_param"
}
],
"responses": {
"200": {
"description": "Tags",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ActiveTags"
}
}
}
},
"400": {
"description": "Invalid request."
},
"404": {
"$ref": "#/components/responses/PageOutOfBounds"
}
}
}
},
"/system_profile/sap_system": {
"get": {
"tags": [
"system_profile"
],
"summary": "get all sap system values and counts on the account",
"description": "Required permissions: inventory:hosts:read",
"operationId": "api.system_profile.get_sap_system",
"security": [
{
"ApiKeyAuth": []
}
],
"parameters": [
{
"$ref": "#/components/parameters/tagsParam"
},
{
"$ref": "#/components/parameters/perPageParam"
},
{
"$ref": "#/components/parameters/pageParam"
},
{
"$ref": "#/components/parameters/stalenessParam"
},
{
"$ref": "#/components/parameters/registered_with"
},
{
"$ref": "#/components/parameters/filter_param"
}
],
"responses": {
"200": {
"description": "sap_system values and counts for the account",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SystemProfileSapSystemOut"
}
}
}
},
"400": {
"description": "Invalid request."
},
"404": {
"$ref": "#/components/responses/PageOutOfBounds"
}
}
}
},
"/system_profile/sap_sids": {
"get": {
"tags": [
"system_profile"
],
"summary": "get all sap sids values and counts on the account",
"description": "Required permissions: inventory:hosts:read",
"operationId": "api.system_profile.get_sap_sids",
"security": [
{
"ApiKeyAuth": []
}
],
"parameters": [
{
"$ref": "#/components/parameters/searchParam"
},
{
"$ref": "#/components/parameters/tagsParam"
},
{
"$ref": "#/components/parameters/perPageParam"
},
{
"$ref": "#/components/parameters/pageParam"
},
{
"$ref": "#/components/parameters/stalenessParam"
},
{
"$ref": "#/components/parameters/registered_with"
},
{
"$ref": "#/components/parameters/filter_param"
}
],
"responses": {
"200": {
"description": "sap_system values and counts for the account",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SystemProfileSapSystemOut"
}
}
}
},
"400": {
"description": "Invalid request."
},
"404": {
"$ref": "#/components/responses/PageOutOfBounds"
}
}
}
},
"/system_profile/operating_system": {
"get": {
"tags": [
"system_profile"
],
"summary": "get all operating system versions and counts on the account",
"description": "Required permissions: inventory:hosts:read",
"operationId": "api.system_profile.get_operating_system",
"security": [
{
"ApiKeyAuth": []
}
],
"parameters": [
{
"$ref": "#/components/parameters/tagsParam"
},
{
"$ref": "#/components/parameters/perPageParam"
},
{
"$ref": "#/components/parameters/pageParam"
},
{
"$ref": "#/components/parameters/stalenessParam"
},
{
"$ref": "#/components/parameters/registered_with"
},
{
"$ref": "#/components/parameters/filter_param"
}
],
"responses": {
"200": {
"description": "operating system versions and counts on the account",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SystemProfileOperatingSystemOut"
}
}
}
},
"400": {
"description": "Invalid request."
},
"404": {
"$ref": "#/components/responses/PageOutOfBounds"
}
}
}
},
"/system_profile/validate_schema": {
"post": {
"tags": [
"system_profile"
],
"summary": "validate system profile schema",
"description": "Validates System Profile data from recent Kafka messages against a given spec, and compares it with the current one. Only HBI Admins can access this endpoint.",
"operationId": "api.system_profile.validate_schema",
"security": [
{
"ApiKeyAuth": []
}
],
"parameters": [
{
"in": "query",
"name": "repo_fork",
"schema": {
"type": "string"
},
"description": "The fork of the inventory-schemas repo to use"
},
{
"in": "query",
"name": "repo_branch",
"schema": {
"type": "string"
},
"description": "The branch of the inventory-schemas repo to use",
"required": true
},
{
"in": "query",
"name": "days",
"schema": {
"type": "integer",
"minimum": 1
},
"description": "How many days worth of data to validate"
},
{
"in": "query",
"name": "max_messages",
"schema": {
"type": "integer",
"minimum": 1,
"default": 10000
},
"description": "Stops polling when this number of messages has been collected"
}
],
"responses": {
"200": {
"description": "Host validation results"
},
"403": {
"description": "Forbidden"
}
}
}
},
"/account/staleness": {
"get": {
"operationId": "api.staleness.get_staleness",
"tags": [
"accounts_staleness"
],
"summary": "Read the entire list of account staleness",
"description": "Read the entire list of all accounts staleness available. Required permissions: staleness:staleness:read",
"security": [
{
"ApiKeyAuth": []
},
{
"BearerAuth": []
}
],
"responses": {
"200": {
"description": "Successfully read the staleness account.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StalenessOutput"
}
}
}
},
"400": {
"description": "Invalid request."
}
}
},
"post": {
"operationId": "api.staleness.create_staleness",
"tags": [
"accounts_staleness"
],
"summary": "Create account staleness record",
"description": "Create account staleness record. Required permissions: staleness:staleness:write",
"security": [
{
"ApiKeyAuth": []
},
{
"BearerAuth": []
}
],
"requestBody": {
"description": "Data required to create a record for a account staleness.",
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StalenessIn"
}
}
}
},
"responses": {
"201": {
"description": "Successfully account staleness created.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StalenessOutput"
}
}
}
},
"400": {
"description": "Invalid request."
}
}
},
"patch": {
"operationId": "api.staleness.update_staleness",
"tags": [
"accounts_staleness"
],
"summary": "Update account staleness record",
"description": "Update account staleness record. Required permissions: staleness:staleness:write",
"security": [
{
"ApiKeyAuth": []
},
{
"BearerAuth": []
}
],
"requestBody": {
"description": "Data required to update a record for a account staleness.",
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StalenessIn"
}
}
}
},
"responses": {
"200": {
"description": "Successfully account staleness updated.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StalenessOutput"
}
}
}
},
"400": {
"description": "Invalid request."
},
"404": {
"description": "Staleness record not found."
}
}
},
"delete": {
"operationId": "api.staleness.delete_staleness",
"tags": [
"accounts_staleness"
],
"summary": "Delete an account staleness",
"description": "Delete an account staleness
Required permissions: staleness:staleness:write",
"security": [
{
"ApiKeyAuth": []
},
{
"BearerAuth": []
}
],
"responses": {
"204": {
"description": "Successfully deleted account staleness."
},
"400": {
"description": "Invalid request."
},
"404": {
"description": "Account Staleness not found."
}
}
}
},
"/account/staleness/defaults": {
"get": {
"operationId": "api.staleness.get_default_staleness",
"tags": [
"accounts_staleness"
],
"summary": "Read the entire list of account staleness",
"description": "Read the entire list of all accounts staleness available. Required permissions: staleness:staleness:read",
"security": [
{
"ApiKeyAuth": []
},
{
"BearerAuth": []
}
],
"responses": {
"200": {
"description": "Successfully read the staleness account.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StalenessOutput"
}
}
}
},
"400": {
"description": "Invalid request."
}
}
}
}
},
"components": {
"securitySchemes": {
"BearerAuth": {
"type": "http",
"scheme": "bearer",
"x-bearerInfoFunc": "app.auth.bearer_token_handler"
},
"ApiKeyAuth": {
"type": "apiKey",
"in": "header",
"name": "x-rh-identity",
"description": "Base64-encoded JSON identity header provided by 3Scale. Contains an org_id of the user issuing the request. Format of the JSON: {\"identity\": {\"org_id\": \"12345678\"}}",
"x-apikeyInfoFunc": "app.auth.authentication_header_handler"
}
},
"parameters": {
"pageParam": {
"name": "page",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"minimum": 1,
"maximum": 21474837,
"default": 1
},
"description": "A page number of the items to return."
},
"perPageParam": {
"name": "per_page",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 50
},
"description": "A number of items to return per page."
},
"resourceTypesPerPageParam": {
"name": "per_page",
"in": "query",
"required": false,
"schema": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 10
},
"description": "A number of items to return per page."
},
"hostId": {
"in": "path",
"name": "host_id",
"description": "Host (system) ID.",
"required": true,
"schema": {
"$ref": "#/components/schemas/NonStrictUUID"
}
},
"hostIdList": {
"in": "path",
"name": "host_id_list",
"description": "A comma-separated list of host IDs.",
"required": true,
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/NonStrictUUID"
}
}
},
"branchId": {
"in": "query",
"name": "branch_id",
"schema": {
"type": "string"
},
"description": "Filter by branch_id",
"required": false
},
"displayName": {
"in": "query",
"name": "display_name",
"schema": {
"type": "string"
},
"description": "Filter by display_name (case-insensitive)",
"required": false
},
"fqdn": {
"in": "query",
"name": "fqdn",
"schema": {
"type": "string"
},
"description": "Filter by FQDN (case-insensitive)",
"required": false
},
"hostnameOrId": {
"in": "query",
"name": "hostname_or_id",
"schema": {
"type": "string"
},
"description": "Filter by display_name, fqdn, id (case-insensitive)",
"required": false
},
"insightsId": {
"in": "query",
"name": "insights_id",
"schema": {
"type": "string",
"format": "uuid"
},
"description": "Filter by insights_id",
"required": false
},
"subscriptionManagerId": {
"in": "query",
"name": "subscription_manager_id",
"schema": {
"type": "string",
"format": "uuid"
},
"description": "Filter by subscription_manager_id",
"required": false
},
"providerId": {
"in": "query",
"name": "provider_id",
"schema": {
"type": "string"
},
"description": "Filter by provider_id",
"required": false
},
"providerType": {
"in": "query",
"name": "provider_type",
"schema": {
"type": "string",
"enum": [
"alibaba",
"aws",
"azure",
"discovery",
"gcp",
"ibm"
]
},
"description": "Filter by provider_type",
"required": false
},
"updatedStart": {
"in": "query",
"name": "updated_start",
"schema": {
"type": "string",
"format": "date-time"
},
"description": "Only show hosts last modified after the given date"
},
"updatedEnd": {
"in": "query",
"name": "updated_end",
"schema": {
"type": "string",
"format": "date-time"
},
"description": "Only show hosts last modified before the given date"
},
"lastCheckInStart": {
"in": "query",
"name": "last_check_in_start",
"schema": {
"type": "string",
"format": "date-time"
},
"description": "Only show hosts last checked in after the given date"
},
"lastCheckInEnd": {
"in": "query",
"name": "last_check_in_end",
"schema": {
"type": "string",
"format": "date-time"
},
"description": "Only show hosts last checked in before the given date"
},
"factsNamespace": {
"in": "path",
"name": "namespace",
"description": "A namespace of the merged facts.",
"required": true,
"schema": {
"type": "string"
}
},
"hostOrderByParam": {
"name": "order_by",
"in": "query",
"required": false,
"schema": {
"type": "string",
"enum": [
"display_name",
"group_name",
"updated",
"operating_system",
"last_check_in"
]
},
"description": "Ordering field name"
},
"tagOrderByParam": {
"name": "order_by",
"in": "query",
"required": false,
"schema": {
"type": "string",
"enum": [
"display_name",
"group_name",
"updated",
"last_check_in"
]
},
"description": "Ordering field name"
},
"groupOrderByParam": {
"name": "order_by",
"in": "query",
"required": false,
"schema": {
"type": "string",
"enum": [
"name",
"host_count",
"updated"
]
},
"description": "Ordering field name"
},
"hostOrderHowParam": {
"in": "query",
"name": "order_how",
"required": false,
"schema": {
"$ref": "#/components/schemas/OrderHow"
},
"description": "Direction of the ordering (case-insensitive); defaults to ASC for display_name, and to DESC for updated and operating_system"
},
"groupOrderHowParam": {
"in": "query",
"name": "order_how",
"required": false,
"schema": {
"$ref": "#/components/schemas/OrderHow"
},
"description": "Direction of the ordering (case-insensitive); defaults to ASC for name, and to DESC for host_count"
},
"workspaceTypeParam": {
"in": "query",
"name": "group_type",
"required": false,
"schema": {
"type": "string",
"default": "standard",
"enum": [
"standard",
"ungrouped-hosts",
"all"
]
},
"description": "The type of workspaces that should be returned."
},
"stalenessParam": {
"name": "staleness",
"in": "query",
"required": false,
"schema": {
"type": "array",
"items": {
"type": "string",
"enum": [
"fresh",
"stale",
"stale_warning",
"unknown"
]
},
"default": [
"fresh",
"stale",
"stale_warning"
]
},
"description": "Culling states of the hosts. Default: fresh, stale and stale_warning"
},
"stalenessNoDefaultsParam": {
"name": "staleness",
"in": "query",
"required": false,
"schema": {
"type": "array",
"items": {
"type": "string",
"enum": [
"fresh",
"stale",
"stale_warning",
"unknown"
]
}
},
"description": "Culling states of the hosts."
},
"tagsParam": {
"name": "tags",
"in": "query",
"description": "Filters systems by tag(s). Specify multiple tags as a comma-separated list (e.g. insights-client/security=strict,env/type=prod).",
"required": false,
"schema": {
"type": "array",
"items": {
"type": "string",
"pattern": "^([^=/]+/)?(?!.*/=)[^=]+(=[^=/]+)?$"
}
}
},
"tagsOrderByParam": {
"in": "query",
"name": "order_by",
"required": false,
"schema": {
"type": "string",
"default": "tag",
"enum": [
"tag",
"count"
]
},
"description": "Ordering field name"
},
"tagsOrderHowParam": {
"in": "query",
"name": "order_how",
"required": false,
"description": "Direction of the ordering (case-insensitive). Valid values are ASC (default) and DESC.",
"schema": {
"$ref": "#/components/schemas/OrderHow"
}
},
"searchParam": {
"in": "query",
"name": "search",
"required": false,
"description": "Used for searching tags and sap_sids that match the given search string. For searching tags, a tag's namespace, key, and/or value is used for matching.",
"schema": {
"type": "string"
}
},
"registered_with": {
"in": "query",
"name": "registered_with",
"required": false,
"description": "Filters out any host not registered by the specified reporters",
"schema": {
"type": "array",
"items": {
"type": "string",
"enum": [
"insights",
"yupana",
"satellite",
"discovery",
"puptoo",
"rhsm-conduit",
"cloud-connector",
"!yupana",
"!satellite",
"!discovery",
"!puptoo",
"!rhsm-conduit",
"!cloud-connector"
]
}
}
},
"systemTypeParam": {
"in": "query",
"name": "system_type",
"required": false,
"description": "Filters systems by type",
"schema": {
"type": "array",
"items": {
"type": "string",
"enum": [
"conventional",
"bootc",
"edge",
"cluster"
]
}
}
},
"filter_param": {
"in": "query",
"name": "filter",
"required": false,
"description": "Filters hosts based on system_profile fields. For example:
{\"system_profile\": {\"workloads\": {\"sap\": {\"sap_system\": {\"eq\": \"true\"}}}}}
which equates to the URL param:
\"?filter[system_profile][sap_system][eq]=true\"
To get \"edge\" hosts, use this explicit filter:
{\"system_profile\": {\"host_type\": {\"eq\": \"edge\"}}}
which equates to the URL param:
\"?filter[system_profile][host_type][eq]=edge\"
To get hosts with an specific operating system, use this explicit filter:
{\"system_profile\": {\"operating_system\": {\"name\": {\"eq\": \"rhel\"}}}}
which equates to the URL param:
\"?filter[system_profile][name][eq]=rhel\"",
"style": "deepObject",
"explode": true,
"example": {},
"schema": {
"$ref": "#/components/schemas/SystemProfileNestedObject"
}
},
"fields_param": {
"in": "query",
"name": "fields",
"required": false,
"description": "Fetches only mentioned system_profile fields. For example,
{\"system_profile\": [\"arch\", \"host_type\"]}
which equates to the URL param:
\"?fields[system_profile]=arch,host_type\"",
"style": "deepObject",
"explode": true,
"x-validator": "sparseFields",
"example": {},
"schema": {
"$ref": "#/components/schemas/SystemProfileNestedObject"
}
},
"hostViewFieldsParam": {
"in": "query",
"name": "fields",
"required": false,
"description": "Selects which application objects (or sub-fields) should be joined into the host view response. Supply `fields[app_data]` to fetch every supported application object, use `fields[advisor]` to request the entire Advisor object, or specify sub-fields such as `fields[vulnerability][]=critical_cves`. When this parameter is omitted, `app_data` remains empty and no additional joins are performed.",
"style": "deepObject",
"explode": true,
"example": {
"app_data": true,
"advisor": [
"recommendations"
],
"vulnerability": [
"critical_cves"
]
},
"schema": {
"$ref": "#/components/schemas/HostViewFieldsObject"
}
},
"hostViewAppFilterParam": {
"in": "query",
"name": "filter",
"required": false,
"description": "Filters on aggregated application data using the syntax `filter[app_name][field_name][operator]=value`. Supported operators are `eq`, `ne`, `gte`, and `lte`. For example: `filter[vulnerability][critical_cves][gte]=1` or `filter[patch][template][eq]=production`.",
"style": "deepObject",
"explode": true,
"example": {
"vulnerability": {
"critical_cves": {
"gte": "1"
}
},
"patch": {
"template": {
"eq": "production"
}
}
},
"schema": {
"$ref": "#/components/schemas/HostViewApplicationFilter"
}
},
"hostViewOrderByParam": {
"name": "order_by",
"in": "query",
"required": false,
"description": "Ordering field for host views. Accepts standard host columns or application metrics using `app:field` format. Use together with `order_how`.\n**Host fields:** `display_name`, `group_name`, `updated`, `operating_system`, `last_check_in`\n**App fields:** See `AppSortableFields` schema for the full list of available application sort fields (e.g. `vulnerability:critical_cves`, `advisor:recommendations`).",
"schema": {
"type": "string",
"enum": [
"display_name",
"group_name",
"updated",
"operating_system",
"last_check_in",
"advisor:recommendations",
"advisor:incidents",
"vulnerability:total_cves",
"vulnerability:critical_cves",
"patch:advisories_rhsa_installable",
"patch:packages_installable",
"remediations:remediations_plans",
"compliance:policies",
"compliance:last_scan",
"malware:last_matches",
"malware:last_scan"
]
}
},
"confirmDeleteAll": {
"in": "query",
"name": "confirm_delete_all",
"schema": {
"type": "boolean"
},
"description": "Confirmation to delete all hosts on the account",
"required": false
},
"groupName": {
"in": "query",
"name": "name",
"schema": {
"type": "string"
},
"description": "Filter by group name",
"required": false
},
"groupNameListParam": {
"in": "query",
"name": "group_name",
"description": "Filter by group name",
"required": false,
"schema": {
"type": "array",
"items": {
"type": "string"
}
}
},
"groupIdListParam": {
"in": "query",
"name": "group_id",
"description": "Filter by group ID (UUID format)",
"required": false,
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/NonStrictUUID"
}
}
},
"groupId": {
"in": "path",
"name": "group_id",
"description": "Group ID.",
"required": true,
"schema": {
"$ref": "#/components/schemas/NonStrictUUID"
}
},
"groupIdList": {
"in": "path",
"name": "group_id_list",
"description": "A comma-separated list of group IDs.",
"required": true,
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/NonStrictUUID"
}
}
}
},
"schemas": {
"SystemProfileOperatingSystemOut": {
"properties": {
"total": {
"$ref": "#/components/schemas/Total"
},
"count": {
"$ref": "#/components/schemas/Count"
},
"results": {
"description": "The list of operating_system values on the account",
"type": "array",
"items": {
"type": "object",
"properties": {
"value": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"major": {
"type": "integer",
"nullable": true
},
"minor": {
"type": "integer",
"nullable": true
}
}
},
"count": {
"type": "integer"
}
}
}
}
}
},
"SystemProfileSapSystemOut": {
"type": "object",
"properties": {
"total": {
"$ref": "#/components/schemas/Total"
},
"count": {
"$ref": "#/components/schemas/Count"
},
"results": {
"description": "The list of sap_system values on the account",
"type": "array",
"items": {
"type": "object",
"properties": {
"value": {
"oneOf": [
{
"type": "string"
},
{
"type": "boolean"
}
]
},
"count": {
"type": "integer"
}
}
}
}
}
},
"TagsOut": {
"allOf": [
{
"$ref": "#/components/schemas/PaginationOut"
},
{
"type": "object",
"properties": {
"results": {
"description": "The list of tags on the systems",
"type": "object",
"additionalProperties": {
"type": "array",
"items": {
"$ref": "#/components/schemas/StructuredTag"
}
}
}
}
}
]
},
"StructuredTag": {
"type": "object",
"properties": {
"namespace": {
"type": "string",
"nullable": true
},
"key": {
"type": "string"
},
"value": {
"type": "string",
"nullable": true
}
}
},
"TagCountOut": {
"allOf": [
{
"$ref": "#/components/schemas/PaginationOut"
},
{
"type": "object",
"properties": {
"results": {
"description": "The list of tags on the systems",
"type": "object",
"additionalProperties": {
"type": "integer"
}
}
}
}
]
},
"Facts": {
"title": "Host facts",
"description": "A set of string facts about a host.",
"type": "object",
"example": {
"fact1": "value1",
"fact2": "value2"
}
},
"FactSet": {
"title": "Host facts under a namespace",
"description": "A set of string facts belonging to a single namespace.",
"properties": {
"namespace": {
"type": "string",
"minLength": 1,
"description": "A namespace the facts belong to."
},
"facts": {
"type": "object",
"description": "The facts themselves.",
"example": {
"fact1": "value1",
"fact2": "value2"
}
}
},
"required": [
"namespace",
"facts"
]
},
"NonNullableString": {
"type": "string",
"nullable": false
},
"NonNullableStringArray": {
"type": "array",
"items": {
"type": "string"
},
"nullable": false
},
"HyphenatedUuid": {
"type": "string",
"nullable": true,
"pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}",
"minLength": 36,
"maxLength": 36,
"example": "22cd8e39-13bb-4d02-8316-84b850dc5136"
},
"InsightsId": {
"description": "An ID defined in /etc/insights-client/machine-id. This field is considered a canonical fact.",
"type": "string",
"nullable": true,
"example": "3f01b55457674041b75e41829bcee1dc"
},
"SubscriptionManagerId": {
"description": "A Red Hat Subcription Manager ID of a RHEL host. This field is considered to be a canonical fact.",
"type": "string",
"nullable": true,
"example": "22cd8e39-13bb-4d02-8316-84b850dc5136"
},
"SatelliteId": {
"description": "A Red Hat Satellite ID of a RHEL host. This field is considered to be a canonical fact.",
"type": "string",
"nullable": true,
"example": "22cd8e39-13bb-4d02-8316-84b850dc5136"
},
"BiosUuid": {
"description": "A UUID of the host machine BIOS. This field is considered to be a canonical fact.",
"type": "string",
"nullable": true,
"example": "22cd8e39-13bb-4d02-8316-84b850dc5136"
},
"IpAddresses": {
"description": "Host’s network IP addresses. This field is considered to be a canonical fact.",
"type": "array",
"nullable": true,
"items": {
"type": "string"
},
"example": [
"10.10.0.1",
"10.0.0.2"
]
},
"Fqdn": {
"description": "A host’s Fully Qualified Domain Name. This field is considered to be a canonical fact.",
"type": "string",
"nullable": true,
"example": "my.host.example.com"
},
"MacAddresses": {
"description": "Host’s network interfaces MAC addresses. This field is considered to be a canonical fact.",
"type": "array",
"nullable": true,
"items": {
"type": "string"
},
"example": [
"c2:00:d0:c8:61:01"
]
},
"ProviderId": {
"description": "Host’s reference in the external source e.g. Alibaba, AWS EC2, Azure, GCP, IBM etc. This field is one of the canonical facts and does not work without provider_type.",
"type": "string",
"nullable": true,
"example": "i-05d2313e6b9a42b16"
},
"ProviderType": {
"description": "Type of external source e.g. Alibaba, AWS EC2, Azure, GCP, IBM, etc. This field is one of the canonical facts and does not workout provider_id.",
"type": "string",
"nullable": true,
"example": "aws"
},
"AccountNumber": {
"description": "A Red Hat Account number that owns the host.",
"type": "string",
"nullable": true,
"example": "000102",
"deprecated": true
},
"OrgId": {
"description": "The Org ID of the tenant that owns the host.",
"type": "string",
"example": "000102"
},
"CanonicalFactsIn": {
"allOf": [
{
"properties": {
"insights_id": {
"allOf": [
{
"$ref": "#/components/schemas/InsightsId"
},
{
"$ref": "#/components/schemas/HyphenatedUuid"
}
]
},
"subscription_manager_id": {
"allOf": [
{
"$ref": "#/components/schemas/SubscriptionManagerId"
},
{
"$ref": "#/components/schemas/HyphenatedUuid"
}
]
},
"satellite_id": {
"allOf": [
{
"$ref": "#/components/schemas/SatelliteId"
},
{
"$ref": "#/components/schemas/HyphenatedUuid"
}
]
},
"bios_uuid": {
"allOf": [
{
"$ref": "#/components/schemas/BiosUuid"
},
{
"$ref": "#/components/schemas/HyphenatedUuid"
}
]
},
"ip_addresses": {
"$ref": "#/components/schemas/NonNullableStringArray"
},
"fqdn": {
"$ref": "#/components/schemas/NonNullableString"
},
"mac_addresses": {
"$ref": "#/components/schemas/NonNullableStringArray"
},
"provider_id": {
"$ref": "#/components/schemas/NonNullableString"
},
"provider_type": {
"$ref": "#/components/schemas/NonNullableString"
}
}
},
{
"anyOf": [
{
"required": [
"insights_id"
]
},
{
"required": [
"subscription_manager_id"
]
},
{
"required": [
"satellite_id"
]
},
{
"required": [
"bios_uuid"
]
},
{
"required": [
"ip_addresses"
]
},
{
"required": [
"fqdn"
]
},
{
"required": [
"mac_addresses"
]
},
{
"required": [
"provider_id",
"provider_type"
]
}
]
}
]
},
"CanonicalFactsOut": {
"type": "object",
"properties": {
"insights_id": {
"$ref": "#/components/schemas/InsightsId"
},
"subscription_manager_id": {
"$ref": "#/components/schemas/SubscriptionManagerId"
},
"satellite_id": {
"$ref": "#/components/schemas/SatelliteId"
},
"bios_uuid": {
"$ref": "#/components/schemas/BiosUuid"
},
"ip_addresses": {
"$ref": "#/components/schemas/IpAddresses"
},
"fqdn": {
"$ref": "#/components/schemas/Fqdn"
},
"mac_addresses": {
"$ref": "#/components/schemas/MacAddresses"
},
"provider_id": {
"$ref": "#/components/schemas/ProviderId"
},
"provider_type": {
"$ref": "#/components/schemas/ProviderType"
}
}
},
"CreateCheckIn": {
"title": "Check-in data",
"description": "Data required to create a check-in record for a host.",
"type": "object",
"allOf": [
{
"$ref": "#/components/schemas/CanonicalFactsIn"
},
{
"properties": {
"checkin_frequency": {
"description": "How long from now to expect another check-in (in minutes).",
"type": "integer",
"minimum": 1,
"maximum": 2880,
"example": 1440
}
}
}
]
},
"HostOut": {
"title": "Host Out",
"description": "Data of a single host belonging to an account. Represents the hosts without its Inventory metadata.",
"type": "object",
"allOf": [
{
"$ref": "#/components/schemas/CanonicalFactsOut"
},
{
"properties": {
"display_name": {
"description": "A host’s human-readable display name, e.g. in a form of a domain name.",
"type": "string",
"example": "host1.mydomain.com",
"nullable": true
},
"ansible_host": {
"description": "The ansible host name for remediations",
"type": "string",
"example": "host1.mydomain.com",
"nullable": true
},
"account": {
"$ref": "#/components/schemas/AccountNumber"
},
"org_id": {
"$ref": "#/components/schemas/OrgId"
},
"id": {
"description": "A durable and reliable platform-wide host identifier. Applications should use this identifier to reference hosts.",
"type": "string",
"example": "3f01b55457674041b75e41829bcee1dc"
},
"created": {
"description": "A timestamp when the entry was created.",
"type": "string",
"format": "date-time"
},
"updated": {
"description": "A timestamp when the entry was last updated.",
"type": "string",
"format": "date-time"
},
"facts": {
"description": "A set of facts belonging to the host.",
"type": "array",
"items": {
"$ref": "#/components/schemas/FactSet"
}
},
"stale_timestamp": {
"description": "Timestamp from which the host is considered stale.",
"type": "string",
"format": "date-time",
"nullable": true
},
"stale_warning_timestamp": {
"description": "Timestamp from which the host is considered too stale to be listed without an explicit toggle.",
"type": "string",
"format": "date-time",
"nullable": true
},
"culled_timestamp": {
"description": "Timestamp from which the host is considered deleted.",
"type": "string",
"format": "date-time",
"nullable": true
},
"reporter": {
"description": "Reporting source of the host. Used when updating the stale_timestamp.",
"type": "string",
"nullable": true
},
"per_reporter_staleness": {
"description": "Reporting source of the last checkin status, stale_timestamp, and last_check_in.",
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/PerReporterStaleness"
}
},
"groups": {
"description": "The groups that the host belongs to, if any.",
"type": "array",
"items": {
"$ref": "#/components/schemas/GroupOut"
}
},
"system_profile": {
"$ref": "#/components/schemas/SystemProfile"
},
"last_check_in": {
"type": "string",
"format": "date-time"
},
"openshift_cluster_id": {
"description": "The OpenShift cluster ID that the host belongs to, if any.",
"type": "string",
"nullable": true
}
},
"required": [
"org_id"
]
}
]
},
"HostIdOut": {
"title": "A Host ID query result",
"description": "A single Host ID that belongs to a host.",
"type": "object",
"properties": {
"id": {
"$ref": "#/components/schemas/HostId"
}
}
},
"HostQueryOutput": {
"title": "A Host Inventory query result",
"description": "A paginated host search query result with host entries and their Inventory metadata.",
"allOf": [
{
"$ref": "#/components/schemas/PaginationOut"
},
{
"type": "object",
"required": [
"results"
],
"properties": {
"results": {
"description": "Actual host search query result entries.",
"type": "array",
"items": {
"$ref": "#/components/schemas/HostOut"
}
}
}
}
]
},
"HostViewQueryOutput": {
"title": "Inventory view query result",
"description": "A paginated host view that optionally includes application data joins.",
"allOf": [
{
"$ref": "#/components/schemas/PaginationOut"
},
{
"type": "object",
"required": [
"results"
],
"properties": {
"results": {
"description": "Combined host and application entries.",
"type": "array",
"items": {
"$ref": "#/components/schemas/HostViewHost"
}
}
}
}
]
},
"HostViewHost": {
"title": "Host with application data",
"allOf": [
{
"$ref": "#/components/schemas/HostOut"
},
{
"type": "object",
"properties": {
"app_data": {
"$ref": "#/components/schemas/ConsumerApplicationsData"
}
}
}
]
},
"ConsumerApplicationsData": {
"type": "object",
"description": "Application-specific metrics and metadata associated with a host.",
"properties": {
"advisor": {
"$ref": "#/components/schemas/AdvisorAppData"
},
"vulnerability": {
"$ref": "#/components/schemas/VulnerabilityAppData"
},
"patch": {
"$ref": "#/components/schemas/PatchAppData"
},
"remediations": {
"$ref": "#/components/schemas/RemediationsAppData"
},
"compliance": {
"$ref": "#/components/schemas/ComplianceAppData"
},
"malware": {
"$ref": "#/components/schemas/MalwareAppData"
},
"image_builder": {
"$ref": "#/components/schemas/ImageBuilderAppData"
}
},
"additionalProperties": false
},
"AdvisorAppData": {
"type": "object",
"properties": {
"recommendations": {
"type": "integer",
"minimum": 0,
"nullable": true
},
"incidents": {
"type": "integer",
"minimum": 0,
"nullable": true
}
}
},
"VulnerabilityAppData": {
"type": "object",
"properties": {
"total_cves": {
"type": "integer",
"minimum": 0,
"nullable": true
},
"critical_cves": {
"type": "integer",
"minimum": 0,
"nullable": true
},
"high_severity_cves": {
"type": "integer",
"minimum": 0,
"nullable": true
},
"cves_with_security_rules": {
"type": "integer",
"minimum": 0,
"nullable": true
},
"cves_with_known_exploits": {
"type": "integer",
"minimum": 0,
"nullable": true
}
}
},
"PatchAppData": {
"type": "object",
"properties": {
"advisories_rhsa_applicable": {
"type": "integer",
"minimum": 0,
"nullable": true
},
"advisories_rhba_applicable": {
"type": "integer",
"minimum": 0,
"nullable": true
},
"advisories_rhea_applicable": {
"type": "integer",
"minimum": 0,
"nullable": true
},
"advisories_other_applicable": {
"type": "integer",
"minimum": 0,
"nullable": true
},
"advisories_rhsa_installable": {
"type": "integer",
"minimum": 0,
"nullable": true
},
"advisories_rhba_installable": {
"type": "integer",
"minimum": 0,
"nullable": true
},
"advisories_rhea_installable": {
"type": "integer",
"minimum": 0,
"nullable": true
},
"advisories_other_installable": {
"type": "integer",
"minimum": 0,
"nullable": true
},
"packages_applicable": {
"type": "integer",
"minimum": 0,
"nullable": true
},
"packages_installable": {
"type": "integer",
"minimum": 0,
"nullable": true
},
"packages_installed": {
"type": "integer",
"minimum": 0,
"nullable": true
},
"template_name": {
"type": "string",
"nullable": true
},
"template_uuid": {
"type": "string",
"format": "uuid",
"nullable": true
}
}
},
"RemediationsAppData": {
"type": "object",
"properties": {
"remediations_plans": {
"type": "integer",
"minimum": 0,
"nullable": true
}
}
},
"ComplianceAppData": {
"type": "object",
"properties": {
"policies": {
"type": "integer",
"minimum": 0,
"nullable": true
},
"last_scan": {
"type": "string",
"format": "date-time",
"nullable": true
}
}
},
"MalwareAppData": {
"type": "object",
"properties": {
"last_status": {
"type": "string",
"nullable": true
},
"last_matches": {
"type": "integer",
"minimum": 0,
"nullable": true
},
"last_scan": {
"type": "string",
"format": "date-time",
"nullable": true
}
}
},
"ImageBuilderAppData": {
"type": "object",
"properties": {
"image_name": {
"type": "string",
"nullable": true
},
"image_status": {
"type": "string",
"nullable": true
}
}
},
"HostViewFieldsObject": {
"type": "object",
"description": "Sparse fieldset declaration for application joins. Provide top-level keys that match application names; omit the parameter to skip all application data.",
"additionalProperties": false,
"properties": {
"app_data": {
"type": "boolean",
"description": "Include every available application object when true."
},
"advisor": {
"type": "array",
"description": "Advisor fields to return; leave empty to include the full object.",
"items": {
"type": "string",
"enum": [
"recommendations",
"incidents"
]
}
},
"vulnerability": {
"type": "array",
"description": "Vulnerability fields to return; leave empty to include the full object.",
"items": {
"type": "string",
"enum": [
"total_cves",
"critical_cves",
"high_severity_cves",
"cves_with_security_rules",
"cves_with_known_exploits"
]
}
},
"patch": {
"type": "array",
"description": "Patch fields to return; leave empty to include the full object.",
"items": {
"type": "string",
"enum": [
"advisories_rhsa_applicable",
"advisories_rhba_applicable",
"advisories_rhea_applicable",
"advisories_other_applicable",
"advisories_rhsa_installable",
"advisories_rhba_installable",
"advisories_rhea_installable",
"advisories_other_installable",
"packages_applicable",
"packages_installable",
"packages_installed",
"template_name",
"template_uuid"
]
}
},
"remediations": {
"type": "array",
"description": "Remediation Planner fields to return; leave empty to include the full object.",
"items": {
"type": "string",
"enum": [
"remediations_plans"
]
}
},
"compliance": {
"type": "array",
"description": "Compliance fields to return; leave empty to include the full object.",
"items": {
"type": "string",
"enum": [
"policies",
"last_scan"
]
}
},
"malware": {
"type": "array",
"description": "Malware Detection fields to return; leave empty to include the full object.",
"items": {
"type": "string",
"enum": [
"last_status",
"last_matches",
"last_scan"
]
}
},
"image_builder": {
"type": "array",
"description": "Image Builder fields to return; leave empty to include the full object.",
"items": {
"type": "string",
"enum": [
"image_name",
"image_status"
]
}
}
}
},
"HostViewApplicationFilter": {
"type": "object",
"description": "Structure for the `filter[app_name][field][operator]=value` syntax applied to application metrics.",
"additionalProperties": {
"$ref": "#/components/schemas/HostViewApplicationFilterField"
}
},
"HostViewApplicationFilterField": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/HostViewFilterComparison"
}
},
"HostViewFilterComparison": {
"type": "object",
"description": "Supported comparison operators for application metrics filtering.\n\n**Value comparisons:**\n- `eq` - Equal to\n- `ne` - Not equal to\n- `gt` - Greater than\n- `lt` - Less than\n- `gte` - Greater than or equal to\n- `lte` - Less than or equal to\n\n**Null checks:**\n- `nil` - Field is null/missing\n- `not_nil` - Field is not null/exists\n",
"additionalProperties": false,
"properties": {
"eq": {
"type": "string"
},
"ne": {
"type": "string"
},
"gt": {
"type": "string"
},
"lt": {
"type": "string"
},
"gte": {
"type": "string"
},
"lte": {
"type": "string"
},
"nil": {
"type": "boolean",
"description": "When true, matches hosts where this field is null/missing."
},
"not_nil": {
"type": "boolean",
"description": "When true, matches hosts where this field exists and is not null."
}
}
},
"AppSortableFields": {
"type": "string",
"description": "Application data fields available for sorting in the /hosts-view endpoint.\nUse format `app_name:field_name` with the `order_by` parameter.\n\n**Advisor**\n- `advisor:recommendations` - Number of Advisor recommendations\n- `advisor:incidents` - Number of Advisor incidents\n\n**Vulnerability**\n- `vulnerability:total_cves` - Total CVE count\n- `vulnerability:critical_cves` - Critical severity CVEs\n\n**Patch**\n- `patch:advisories_rhsa_installable` - Number of RHSA installable advisories\n- `patch:packages_installable` - Number of installable packages\n\n**Remediations**\n- `remediations:remediations_plans` - Active remediation plans count\n\n**Compliance**\n- `compliance:policies` - Number of compliance policies\n- `compliance:last_scan` - Last compliance scan timestamp\n\n**Malware**\n- `malware:last_matches` - Malware matches count\n- `malware:last_scan` - Last malware scan timestamp\n",
"enum": [
"advisor:recommendations",
"advisor:incidents",
"vulnerability:total_cves",
"vulnerability:critical_cves",
"patch:advisories_rhsa_installable",
"patch:packages_installable",
"remediations:remediations_plans",
"compliance:policies",
"compliance:last_scan",
"malware:last_matches",
"malware:last_scan"
]
},
"SystemProfileByHostOut": {
"title": "A host system profile query result",
"description": "Structure of the output of the host system profile query",
"allOf": [
{
"$ref": "#/components/schemas/PaginationOut"
},
{
"type": "object",
"required": [
"results"
],
"properties": {
"results": {
"description": "Actual host search query result entries.",
"type": "array",
"items": {
"$ref": "#/components/schemas/HostSystemProfileOut"
}
}
}
}
]
},
"HostSystemProfileOut": {
"title": "Structure of an individual host system profile output",
"description": "Individual host record that contains only the host id and system profile",
"type": "object",
"properties": {
"id": {
"type": "string"
},
"system_profile": {
"$ref": "#/components/schemas/SystemProfile"
}
}
},
"PatchHostIn": {
"title": "Host data",
"description": "Data of a single host to be updated.",
"type": "object",
"properties": {
"ansible_host": {
"description": "The ansible host name for remediations",
"type": "string",
"example": "host1.mydomain.com"
},
"display_name": {
"description": "A host’s human-readable display name, e.g. in a form of a domain name.",
"type": "string",
"example": "host1.mydomain.com"
}
}
},
"TimeStamp": {
"type": "string",
"format": "date-time",
"example": "2020-02-10T08:07:03.354307+00:00"
},
"PerReporterStaleness": {
"type": "object",
"properties": {
"last_check_in": {
"$ref": "#/components/schemas/TimeStamp"
},
"stale_timestamp": {
"$ref": "#/components/schemas/TimeStamp"
},
"stale_warning_timestamp": {
"$ref": "#/components/schemas/TimeStamp"
},
"culled_timestamp": {
"$ref": "#/components/schemas/TimeStamp"
},
"check_in_succeeded": {
"type": "boolean"
}
}
},
"ActiveTags": {
"title": "Host data",
"allOf": [
{
"$ref": "#/components/schemas/PaginationOut"
},
{
"type": "object",
"required": [
"results"
],
"properties": {
"results": {
"type": "array",
"items": {
"title": "ActiveTag",
"description": "Information about a host tag",
"type": "object",
"required": [
"tag",
"count"
],
"properties": {
"tag": {
"$ref": "#/components/schemas/StructuredTag"
},
"count": {
"description": "The number of hosts with the given tag. If the value is null this indicates that the count is unknown.",
"type": "integer",
"nullable": true
}
}
}
}
}
}
],
"example": {
"total": 3,
"count": 3,
"page": 1,
"per_page": 50,
"results": [
{
"tag": {
"namespace": "Sat",
"key": "env",
"value": "prod"
},
"count": 3
},
{
"tag": {
"namespace": "aws",
"key": "region",
"value": "us-east-1"
},
"count": 1
},
{
"tag": {
"namespace": "insights-client",
"key": "web",
"value": null
},
"count": -1
}
]
}
},
"GroupName": {
"description": "A group’s human-readable name.",
"type": "string",
"nullable": false,
"example": "sre-group"
},
"NonStrictUUID": {
"type": "string",
"pattern": "^[0-9a-fA-F]{8}\\-[0-9a-fA-F]{4}\\-[0-9a-fA-F]{4}\\-[0-9a-fA-F]{4}\\-[0-9a-fA-F]{12}$|^[0-9a-fA-F]{8}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{12}$",
"format": "uuid",
"example": "bA6deCFc19564430AB814bf8F70E8cEf"
},
"SystemDefaultId": {
"type": "string",
"enum": [
"system_default"
],
"example": "system_default"
},
"GroupId": {
"description": "A durable and reliable platform-wide group identifier. Applications should use this identifier to reference groups.",
"$ref": "#/components/schemas/NonStrictUUID"
},
"HostId": {
"description": "A durable and reliable platform-wide group identifier. Applications should use this identifier to reference hosts.",
"$ref": "#/components/schemas/NonStrictUUID"
},
"HostIds": {
"description": "A comma-separated list of host IDs that belong to the group.",
"type": "array",
"nullable": true,
"items": {
"$ref": "#/components/schemas/NonStrictUUID"
}
},
"StalenessId": {
"description": "Account Staleness UID",
"oneOf": [
{
"$ref": "#/components/schemas/NonStrictUUID"
},
{
"$ref": "#/components/schemas/SystemDefaultId"
}
]
},
"HostCount": {
"description": "The number of hosts associated with the group.",
"type": "integer",
"example": 3
},
"GroupIn": {
"title": "Group In",
"description": "Data of a single group belonging to an account.",
"type": "object",
"properties": {
"name": {
"$ref": "#/components/schemas/GroupName"
},
"host_ids": {
"$ref": "#/components/schemas/HostIds"
}
}
},
"GroupOutWithHostCount": {
"title": "Group properties with host count",
"description": "Data of a single group belonging to an account.",
"type": "object",
"allOf": [
{
"$ref": "#/components/schemas/GroupOut"
},
{
"properties": {
"host_count": {
"$ref": "#/components/schemas/HostCount"
}
}
}
]
},
"GroupOut": {
"title": "Group Out Properties",
"description": "Data of a single group belonging to an account.",
"type": "object",
"properties": {
"id": {
"$ref": "#/components/schemas/GroupId"
},
"name": {
"$ref": "#/components/schemas/GroupName"
},
"account": {
"$ref": "#/components/schemas/AccountNumber"
},
"org_id": {
"$ref": "#/components/schemas/OrgId"
},
"ungrouped": {
"description": "Whether the group is the \"ungrouped hosts\" group",
"type": "boolean"
},
"created": {
"description": "A timestamp when the entry was created.",
"type": "string",
"format": "date-time"
},
"updated": {
"description": "A timestamp when the entry was last updated.",
"type": "string",
"format": "date-time"
}
}
},
"GroupQueryOutput": {
"title": "An Inventory Groups query result",
"description": "A paginated group search query result with group entries and their Inventory metadata.",
"type": "object",
"allOf": [
{
"$ref": "#/components/schemas/PaginationOut"
},
{
"type": "object",
"required": [
"results"
],
"properties": {
"results": {
"description": "Actual group search query result entries.",
"type": "array",
"items": {
"$ref": "#/components/schemas/GroupOutWithHostCount"
}
}
}
}
]
},
"ResourceTypesOut": {
"title": "A resource type query result",
"description": "Data describing a single resource-types RBAC object.",
"type": "object",
"properties": {
"value": {
"description": "The name of the resource type",
"type": "string"
},
"path": {
"description": "The path for the RBAC endpoint for the resource type",
"type": "string"
},
"count": {
"type": "integer"
}
}
},
"ResourceTypesQueryOutput": {
"title": "A resource-types query result",
"description": "A paginated list of resource-types RBAC objects.",
"type": "object",
"allOf": [
{
"$ref": "#/components/schemas/ResourceTypesPaginationOut"
},
{
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"description": "Actual resource-types object data.",
"type": "array",
"items": {
"$ref": "#/components/schemas/ResourceTypesOut"
}
}
}
}
]
},
"ResourceTypesGroupsQueryOutput": {
"title": "An Inventory Groups query result in resource-types response format",
"description": "A paginated group search query result with group entries and their Inventory metadata in paginated resource-types response format.",
"type": "object",
"allOf": [
{
"$ref": "#/components/schemas/ResourceTypesPaginationOut"
},
{
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"description": "Actual group search query result entries.",
"type": "array",
"items": {
"$ref": "#/components/schemas/GroupOutWithHostCount"
}
}
}
}
]
},
"StalenessTimeout": {
"type": "integer",
"minimum": 1
},
"StalenessIn": {
"title": "Account Staleness In",
"description": "Data of a single account staleness.",
"type": "object",
"properties": {
"conventional_time_to_stale": {
"$ref": "#/components/schemas/StalenessTimeout"
},
"conventional_time_to_stale_warning": {
"$ref": "#/components/schemas/StalenessTimeout"
},
"conventional_time_to_delete": {
"$ref": "#/components/schemas/StalenessTimeout"
},
"immutable_time_to_stale": {
"$ref": "#/components/schemas/StalenessTimeout"
},
"immutable_time_to_stale_warning": {
"$ref": "#/components/schemas/StalenessTimeout"
},
"immutable_time_to_delete": {
"$ref": "#/components/schemas/StalenessTimeout"
}
}
},
"StalenessOutput": {
"title": "Account Staleness Out",
"description": "Data of a account staleness.",
"type": "object",
"allOf": [
{
"$ref": "#/components/schemas/StalenessIn"
},
{
"required": [
"conventional_time_to_stale",
"conventional_time_to_stale_warning",
"conventional_time_to_delete",
"immutable_time_to_stale",
"immutable_time_to_stale_warning",
"immutable_time_to_delete"
]
},
{
"properties": {
"id": {
"$ref": "#/components/schemas/StalenessId"
},
"org_id": {
"$ref": "#/components/schemas/OrgId"
},
"created": {
"description": "A timestamp when the entry was created.",
"type": "string",
"format": "date-time",
"nullable": true
},
"updated": {
"nullable": true,
"description": "A timestamp when the entry was last updated.",
"type": "string",
"format": "date-time"
}
},
"required": [
"id",
"org_id",
"created",
"updated"
]
}
]
},
"OrderHow": {
"type": "string",
"pattern": "^([Aa][Ss][Cc])|([Dd][Ee][Ss][Cc])$"
},
"SystemProfile": {
"title": "SystemProfile",
"description": "Representation of the system profile fields",
"type": "object",
"properties": {
"owner_id": {
"description": "A UUID associated with the host's RHSM certificate",
"type": "string",
"pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}",
"maxLength": 36,
"example": "22cd8e39-13bb-4d02-8316-84b850dc5136, ffdfd200-f5b9-4e57-b080-f5e257349df0, e2357169-f5e2-4afa-b509-ab1be3f30807"
},
"rhc_client_id": {
"description": "A UUID associated with a cloud_connector",
"type": "string",
"pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}",
"maxLength": 36,
"example": "22cd8e39-13bb-4d02-8316-84b850dc5136, 33cd8e39-13bb-4d02-8316-84b850dc5136, 2fa3e796-10e2-11ec-82a8-0242ac130003"
},
"rhc_config_state": {
"description": "A UUID associated with the config manager state",
"type": "string",
"pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}",
"maxLength": 36,
"example": "22cd8e39-13bb-4d02-8316-84b850dc5136, 2c68e8ec-10e2-11ec-82a8-0242ac130003, 2fa3e796-10e2-11ec-82a8-0242ac130003"
},
"cpu_model": {
"description": "The cpu model name",
"type": "string",
"maxLength": 100,
"example": "Intel(R) Xeon(R) CPU E5-2690 0 @ 2.90GHz, Intel(R) Xeon(R) CPU E9-7800 0 @ 1.90GHz, Intel(R) I7(R) CPU I7-10900k 0 @ 4.90GHz"
},
"number_of_cpus": {
"type": "integer",
"format": "int32",
"minimum": 0,
"maximum": 2147483647
},
"number_of_sockets": {
"type": "integer",
"format": "int32",
"minimum": 0,
"maximum": 2147483647
},
"cores_per_socket": {
"type": "integer",
"format": "int32",
"minimum": 0,
"maximum": 2147483647
},
"threads_per_core": {
"description": "Number of CPU threads per CPU core. Typical values: 1, 2, 4",
"type": "integer",
"format": "int32",
"minimum": 0,
"maximum": 2147483647,
"example": 2
},
"system_memory_bytes": {
"type": "integer",
"format": "int64",
"minimum": 0,
"maximum": 9007199254740991,
"x-dynamic": true
},
"infrastructure_type": {
"type": "string",
"maxLength": 100,
"example": "physical, virtual, imaginary"
},
"infrastructure_vendor": {
"type": "string",
"maxLength": 100,
"example": "ex1, ex2, baremetal"
},
"network_interfaces": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SystemProfileNetworkInterface"
},
"x-dynamic": true
},
"disk_devices": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SystemProfileDiskDevice"
}
},
"bios_vendor": {
"type": "string",
"maxLength": 100,
"example": "ex1, ex2, ex3"
},
"bios_version": {
"type": "string",
"maxLength": 100,
"example": "ex1, ex2, ex3"
},
"bios_release_date": {
"type": "string",
"x-wildcard": true,
"maxLength": 50,
"example": "ex1, ex2, ex3"
},
"cpu_flags": {
"type": "array",
"items": {
"type": "string",
"maxLength": 30,
"example": "ex1, ex2, ex3"
},
"x-dynamic": true
},
"systemd": {
"description": "Object for whole system systemd state, as reported by systemctl status --all",
"type": "object",
"x-dynamic": true,
"required": [
"state",
"jobs_queued",
"failed"
],
"properties": {
"state": {
"description": "The state of the systemd subsystem",
"type": "string",
"maxLength": 12,
"enum": [
"initializing",
"starting",
"running",
"degraded",
"maintenance",
"stopping"
],
"example": "initializing, starting, running, degraded, maintenance, stopping"
},
"jobs_queued": {
"description": "The number of jobs jobs_queued",
"example": 4,
"type": "integer",
"minimum": 0
},
"failed": {
"description": "The number of jobs failed",
"example": 1,
"type": "integer",
"minimum": 0
},
"failed_services": {
"description": "List of all failed jobs.",
"type": "array",
"items": {
"description": "The name of a failed job.",
"maxLength": 1000,
"type": "string",
"example": "ex1, ex2, ex3"
}
}
}
},
"operating_system": {
"description": "Object for OS details. Supports range operations",
"type": "object",
"required": [
"major",
"minor",
"name"
],
"properties": {
"major": {
"description": "Major release of OS (aka the x version)",
"example": 6,
"type": "integer",
"minimum": 0,
"maximum": 99
},
"minor": {
"description": "Minor release of OS (aka the y version)",
"example": 8,
"type": "integer",
"minimum": 0,
"maximum": 99
},
"name": {
"description": "Name of the distro/os",
"type": "string",
"maxLength": 12,
"enum": [
"RHEL",
"CentOS",
"CentOS Linux"
],
"example": "RHEL, CentOS, CentOS Linux"
}
}
},
"os_release": {
"type": "string",
"maxLength": 100,
"x-wildcard": true,
"example": "7.4, 8.2, 7.5"
},
"os_kernel_version": {
"type": "string",
"maxLength": 20,
"pattern": "^\\d+\\.\\d+\\.\\d+(\\.\\d+)?$",
"description": "The kernel version represented with a three, optionally four, number scheme.",
"example": "4.18.2, 4.5.0, 5.1.0",
"x-wildcard": true
},
"releasever": {
"type": "string",
"description": "Release name of the system distribution (from yum/dnf)",
"maxLength": 100,
"example": "7, 7.0, 7Server, 8, 8.4"
},
"arch": {
"type": "string",
"maxLength": 50,
"example": "ARM, x86_64, RISC-V"
},
"basearch": {
"type": "string",
"description": "The architecture family (from yum/dnf)",
"maxLength": 50,
"example": "x86_64, arm, ppc64"
},
"kernel_modules": {
"type": "array",
"items": {
"type": "string",
"maxLength": 255,
"example": "ex1, ex2, ex3"
},
"x-dynamic": true
},
"last_boot_time": {
"type": "string",
"format": "date-time",
"maxLength": 50,
"x-dynamic": true
},
"running_processes": {
"type": "array",
"items": {
"description": "A single running process. This will be truncated to 1000 characters when saved.",
"type": "string",
"maxLength": 1000,
"example": "ex1, ex2, ex3"
},
"x-dynamic": true
},
"subscription_status": {
"type": "string",
"maxLength": 100,
"example": "ex1, ex2, ex3"
},
"subscription_auto_attach": {
"type": "string",
"maxLength": 100,
"example": "ex1, ex2, ex3"
},
"katello_agent_running": {
"type": "boolean"
},
"satellite_managed": {
"type": "boolean"
},
"cloud_provider": {
"type": "string",
"maxLength": 100,
"example": "aws, ms, ibm"
},
"public_ipv4_addresses": {
"type": "array",
"items": {
"description": "The external IPv4 address of the system",
"type": "string",
"maxLength": 15,
"example": "12.23.31.32",
"format": "ipv4"
}
},
"public_dns": {
"type": "array",
"items": {
"description": "The external DNS of the system",
"type": "string",
"maxLength": 100,
"example": "ec2-12-34-56-78.us-west-2.compute.amazonaws.com",
"format": "string"
}
},
"yum_repos": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SystemProfileYumRepo"
}
},
"dnf_modules": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SystemProfileDnfModule"
}
},
"installed_products": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SystemProfileInstalledProduct"
},
"x-dynamic": true
},
"insights_client_version": {
"type": "string",
"description": "The version number of insights client. supports wildcards",
"x-wildcard": true,
"maxLength": 50,
"example": "3.0.1-2.el4_2, 5.0.6-2.el7_6, 6.0.6-2.el8_4"
},
"insights_egg_version": {
"type": "string",
"maxLength": 50,
"example": "2.3, 4.4, 5.1",
"x-dynamic": true
},
"captured_date": {
"type": "string",
"format": "date-time",
"maxLength": 50,
"x-dynamic": true
},
"installed_packages": {
"type": "array",
"items": {
"description": "A NEVRA string for a single installed package",
"example": "krb5-libs-0:-1.16.1-23.fc29.i686, arb5-libs-0:-1.16.1-23.fc29.i686, brb5-libs-0:-1.16.1-23.fc29.i686",
"type": "string",
"maxLength": 512
},
"x-dynamic": true
},
"installed_packages_delta": {
"type": "array",
"items": {
"description": "A NEVRA string for a single installed package",
"example": "krb5-libs-0:-1.16.1-23.fc29.i686, arb5-libs-0:-1.16.1-23.fc29.i686, brb5-libs-0:-1.16.1-23.fc29.i686",
"type": "string",
"maxLength": 512
}
},
"gpg_pubkeys": {
"type": "array",
"items": {
"description": "A package name string of a single imported GPG pubkey",
"example": "gpg-pubkey-11111111-22222222, gpg-pubkey-22222222-22222222, gpg-pubkey-22222222-33333333",
"type": "string",
"maxLength": 512
}
},
"installed_services": {
"type": "array",
"items": {
"type": "string",
"maxLength": 512,
"example": "ex1, ex2, ex3"
}
},
"enabled_services": {
"type": "array",
"items": {
"type": "string",
"maxLength": 512,
"example": "ex1, ex2, ex3"
}
},
"sap": {
"description": "Object containing data specific to the SAP workload",
"type": "object",
"properties": {
"sap_system": {
"type": "boolean",
"description": "Indicates if SAP is installed on the system"
},
"sids": {
"type": "array",
"uniqueItems": true,
"items": {
"description": "The SAP system ID (SID)",
"type": "string",
"example": "H2O, ABC, XYZ",
"maxLength": 3,
"pattern": "^[A-Z][A-Z0-9]{2}$"
}
},
"instance_number": {
"type": "string",
"description": "The instance number of the SAP HANA system (a two-digit number between 00 and 99)",
"example": "03, 05, 99",
"maxLength": 2,
"pattern": "^[0-9]{2}$"
},
"version": {
"type": "string",
"description": "The version of the SAP HANA lifecycle management program",
"example": "1.00.122.04.1478575636, 2.00.122.04.1478575636, 3.00.122.04.1478575636",
"maxLength": 22,
"pattern": "^[0-9]\\.[0-9]{2}\\.[0-9]{3}\\.[0-9]{2}\\.[0-9]{10}$"
}
}
},
"sap_system": {
"type": "boolean",
"description": "Indicates if SAP is installed on the system"
},
"sap_sids": {
"type": "array",
"uniqueItems": true,
"items": {
"description": "The SAP system ID (SID)",
"type": "string",
"example": "H2O, ABC, XYZ",
"maxLength": 3,
"pattern": "^[A-Z][A-Z0-9]{2}$"
}
},
"sap_instance_number": {
"type": "string",
"description": "The instance number of the SAP HANA system (a two-digit number between 00 and 99)",
"example": "03, 05, 99",
"maxLength": 2,
"pattern": "^[0-9]{2}$"
},
"sap_version": {
"type": "string",
"description": "The version of the SAP HANA lifecycle management program",
"example": "1.00.122.04.1478575636, 2.00.122.04.1478575636, 3.00.122.04.1478575636",
"maxLength": 22,
"pattern": "^[0-9]\\.[0-9]{2}\\.[0-9]{3}\\.[0-9]{2}\\.[0-9]{10}$"
},
"tuned_profile": {
"type": "string",
"maxLength": 256,
"description": "Current profile resulting from command tuned-adm active",
"example": "desktop, example, laptop"
},
"selinux_current_mode": {
"type": "string",
"enum": [
"enforcing",
"permissive",
"disabled"
],
"maxLength": 10,
"description": "The current SELinux mode, either enforcing, permissive, or disabled",
"example": "enforcing, not_enforcing, sleeping"
},
"selinux_config_file": {
"type": "string",
"maxLength": 128,
"description": "The SELinux mode provided in the config file",
"example": "permissive, sleepy, authoritative"
},
"is_marketplace": {
"description": "Indicates whether the host is part of a marketplace install from AWS, Azure, etc.",
"type": "boolean"
},
"host_type": {
"type": "string",
"enum": [
"edge",
"cluster"
],
"maxLength": 12,
"description": "Indicates the type of host.",
"example": "edge, cluster"
},
"greenboot_status": {
"type": "string",
"enum": [
"red",
"green"
],
"maxLength": 5,
"description": "Indicates the greenboot status of an edge device.",
"example": "green, red"
},
"greenboot_fallback_detected": {
"type": "boolean",
"description": "Indicates whether greenboot detected a rolled back update on an edge device."
},
"rpm_ostree_deployments": {
"type": "array",
"description": "The list of deployments on the system as reported by rpm-ostree status --json",
"items": {
"description": "Limited deployment information from systems managed by rpm-ostree as reported by rpm-ostree status --json",
"type": "object",
"required": [
"id",
"checksum",
"origin",
"osname",
"booted",
"pinned"
],
"properties": {
"id": {
"description": "ID of the deployment",
"example": "fedora-silverblue-63335a77f9853618ba1a5f139c5805e82176a2a040ef5e34d7402e12263af5bb.0, fedora-blackpink-63335a77f9853618ba1a5f139c5805e82176a2a040ef5e34d7402e12263af5bb.0, fedora-orangeblue-63335a77f9853618ba1a5f139c5805e82176a2a040ef5e34d7402e12263af5bb.0",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"checksum": {
"description": "The checksum / commit of the deployment",
"example": "63335a77f9853618ba1a5f139c5805e82176a2a040ef5e34d7402e12263af5bb, 73335a77f9853618ba1a5f139c5805e82176a2a040ef5e34d7402e12263af5bb, 83335a77f9853618ba1a5f139c5805e82176a2a040ef5e34d7402e12263af5bb",
"type": "string",
"maxLength": 64,
"pattern": "^[a-fA-F0-9]{64}$"
},
"origin": {
"description": "The origin repo from which the commit was installed",
"example": "fedora/33/x86_64/silverblue, fedora/31/x86_64/blackpink, fedora/34/x86_64/orangeblue",
"type": "string",
"maxLength": 255
},
"osname": {
"description": "The operating system name",
"example": "fedora-silverblue, fedora-blackpink, fedora-orangeblue",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"version": {
"description": "The version of the deployment",
"example": "33.21, 31.12, 33.45",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"booted": {
"description": "Whether the deployment is currently booted",
"type": "boolean",
"example": true
},
"pinned": {
"description": "Whether the deployment is currently pinned",
"type": "boolean",
"example": false
}
}
}
},
"rhsm": {
"description": "Object for subscription-manager details",
"type": "object",
"properties": {
"version": {
"description": "System release set by subscription-manager",
"example": "8.1, 7.5, 9.9",
"type": "string",
"maxLength": 255
},
"environment_ids": {
"description": "Environments (\"content templates\") the system is subscribed to.",
"example": [
"262e621d10ae4475ab5732b39a9160b2"
],
"type": "array",
"items": {
"description": "An environment ID.",
"type": "string",
"example": "262e621d10ae4475ab5732b39a9160b2, 01fd642e02de4e6da2da6172081a971e",
"pattern": "^.*$",
"maxLength": 256
}
}
}
},
"system_purpose": {
"description": "Object for system purpose information",
"type": "object",
"properties": {
"usage": {
"description": "The intended usage of the system",
"type": "string",
"maxLength": 128,
"example": "Production, Development/Test, Disaster Recovery"
},
"role": {
"description": "The intended role of the system",
"type": "string",
"maxLength": 128,
"example": "Red Hat Enterprise Linux Server, Red Hat Enterprise Linux Workstation, Red Hat Enterprise Linux Compute Node"
},
"sla": {
"description": "The intended SLA of the system",
"type": "string",
"maxLength": 128,
"example": "Premium, Standard, Self-Support"
}
}
},
"ansible": {
"description": "Object containing data specific to Ansible Automation Platform",
"type": "object",
"properties": {
"controller_version": {
"description": "The ansible-tower or automation-controller version on the host",
"type": "string",
"example": "1.2.3, 4.5.6, 7.8.9",
"maxLength": 30,
"pattern": "^\\d+(\\.\\d+)+$",
"x-wildcard": true
},
"hub_version": {
"description": "The automation-hub version on the host",
"type": "string",
"example": "1.2.3, 4.5.6, 7.8.9",
"maxLength": 30,
"pattern": "^\\d+(\\.\\d+)+$",
"x-wildcard": true
},
"catalog_worker_version": {
"description": "The catalog-worker version on the host",
"type": "string",
"example": "1.2.3, 4.5.6, 7.8.9",
"maxLength": 30,
"pattern": "^\\d+(\\.\\d+)+$",
"x-wildcard": true
},
"sso_version": {
"description": "The SSO version on the host",
"type": "string",
"example": "1.2.3, 4.5.6, 7.8.9",
"maxLength": 30,
"pattern": "^\\d+(\\.\\d+)+$",
"x-wildcard": true
}
}
},
"intersystems": {
"description": "Object containing data specific to InterSystems workload",
"type": "object",
"properties": {
"is_intersystems": {
"description": "Indicates if InterSystems is installed on the system",
"type": "boolean"
},
"running_instances": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SystemProfileInterSystemsRunningInstance"
}
}
}
},
"mssql": {
"description": "Object containing data specific to the MS SQL workload",
"type": "object",
"properties": {
"version": {
"description": "MSSQL version number",
"type": "string",
"example": "15.2.0, 12.5.3, 10.1.0",
"maxLength": 30,
"x-wildcard": true
}
}
},
"system_update_method": {
"description": "System update method",
"type": "string",
"maxLength": 10,
"enum": [
"dnf",
"rpm-ostree",
"yum",
"bootc"
],
"example": "dnf, rpm-ostree, yum, bootc"
},
"virtual_host_uuid": {
"description": "Hypervisor host identity (subscription manager id)",
"type": "string",
"pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}",
"maxLength": 36,
"example": "0ddf52cb-94e3-4ada-bdf7-d424a547b671, 6996463b-c9d4-402b-ad37-8ab5556ddf88, 0c352918-fa05-4f05-996c-6c43ec0b3c5e"
},
"bootc_status": {
"description": "Object containing image data from command bootc status",
"type": "object",
"properties": {
"booted": {
"type": "object",
"properties": {
"image": {
"description": "Name of the image",
"type": "string",
"example": "quay.io/centos-bootc/fedora-bootc-cloud:eln, 192.168.0.1:5000/foo/foo:latest",
"maxLength": 128,
"x-wildcard": true
},
"image_digest": {
"description": "Digest of the image",
"type": "string",
"example": "sha256:806d77394f96e47cf99b1233561ce970c94521244a2d8f2affa12c3261961223, sha256:92e476435ced1c148350c660b09c744717defbd300a15d33deda5b50ad6b21a0",
"maxLength": 128,
"pattern": "^(sha256\\:)[a-fA-F0-9]{64}$"
},
"cached_image": {
"description": "Name of the image",
"type": "string",
"example": "quay.io/centos-bootc/fedora-bootc-cloud:eln, 192.168.0.1:5000/foo/foo:latest",
"maxLength": 128,
"x-wildcard": true
},
"cached_image_digest": {
"description": "Digest of the image",
"type": "string",
"example": "sha256:806d77394f96e47cf99b1233561ce970c94521244a2d8f2affa12c3261961223, sha256:92e476435ced1c148350c660b09c744717defbd300a15d33deda5b50ad6b21a0",
"maxLength": 128,
"pattern": "^(sha256\\:)[a-fA-F0-9]{64}$"
}
}
},
"rollback": {
"type": "object",
"properties": {
"image": {
"description": "Name of the image",
"type": "string",
"example": "quay.io/centos-bootc/fedora-bootc-cloud:eln, 192.168.0.1:5000/foo/foo:latest",
"maxLength": 128,
"x-wildcard": true
},
"image_digest": {
"description": "Digest of the image",
"type": "string",
"example": "sha256:806d77394f96e47cf99b1233561ce970c94521244a2d8f2affa12c3261961223, sha256:92e476435ced1c148350c660b09c744717defbd300a15d33deda5b50ad6b21a0",
"maxLength": 128,
"pattern": "^(sha256\\:)[a-fA-F0-9]{64}$"
},
"cached_image": {
"description": "Name of the image",
"type": "string",
"example": "quay.io/centos-bootc/fedora-bootc-cloud:eln, 192.168.0.1:5000/foo/foo:latest",
"maxLength": 128,
"x-wildcard": true
},
"cached_image_digest": {
"description": "Digest of the image",
"type": "string",
"example": "sha256:806d77394f96e47cf99b1233561ce970c94521244a2d8f2affa12c3261961223, sha256:92e476435ced1c148350c660b09c744717defbd300a15d33deda5b50ad6b21a0",
"maxLength": 128,
"pattern": "^(sha256\\:)[a-fA-F0-9]{64}$"
}
}
},
"staged": {
"type": "object",
"properties": {
"image": {
"description": "Name of the image",
"type": "string",
"example": "quay.io/centos-bootc/fedora-bootc-cloud:eln, 192.168.0.1:5000/foo/foo:latest",
"maxLength": 128,
"x-wildcard": true
},
"image_digest": {
"description": "Digest of the image",
"type": "string",
"example": "sha256:806d77394f96e47cf99b1233561ce970c94521244a2d8f2affa12c3261961223, sha256:92e476435ced1c148350c660b09c744717defbd300a15d33deda5b50ad6b21a0",
"maxLength": 128,
"pattern": "^(sha256\\:)[a-fA-F0-9]{64}$"
},
"cached_image": {
"description": "Name of the image",
"type": "string",
"example": "quay.io/centos-bootc/fedora-bootc-cloud:eln, 192.168.0.1:5000/foo/foo:latest",
"maxLength": 128,
"x-wildcard": true
},
"cached_image_digest": {
"description": "Digest of the image",
"type": "string",
"example": "sha256:806d77394f96e47cf99b1233561ce970c94521244a2d8f2affa12c3261961223, sha256:92e476435ced1c148350c660b09c744717defbd300a15d33deda5b50ad6b21a0",
"maxLength": 128,
"pattern": "^(sha256\\:)[a-fA-F0-9]{64}$"
}
}
}
}
},
"conversions": {
"description": "Object containing information about 3rd party migration on instances",
"type": "object",
"properties": {
"activity": {
"description": "Whether the conversion activity has been done or not",
"type": "boolean",
"example": true
}
}
},
"rhel_ai": {
"description": "Object containing information about RHEL AI",
"type": "object",
"properties": {
"variant": {
"description": "RHEL AI VARIANT",
"type": "string",
"example": "RHEL AI",
"maxLength": 7
},
"rhel_ai_version_id": {
"description": "RHEL AI VERSION ID",
"type": "string",
"example": "v1.1.3",
"maxLength": 16
},
"amd_gpu_models": {
"description": "Model name of AMD GPUs",
"type": "array",
"items": {
"description": "The AMD GPU model",
"type": "string",
"example": "Advanced Micro Devices, Inc. [AMD/ATI] Device 0c34, Advanced Micro Devices, Inc. [AMD/ATI] Radeon PRO V320",
"maxLength": 128
}
},
"intel_gaudi_hpu_models": {
"description": "Model name of Intel Gaudi HPUs",
"type": "array",
"items": {
"description": "The Intel Gaudi HPU model",
"type": "string",
"example": "Habana Labs Ltd. Device 1020, Habana Labs Ltd. HL-2000 AI Training Accelerator [Gaudi]",
"maxLength": 128
}
},
"nvidia_gpu_models": {
"description": "Model name of Nvidia GPUs in the GPU index order",
"type": "array",
"items": {
"description": "The Nvidia GPU model",
"type": "string",
"example": "Tesla V100-PCIE-16GB",
"maxLength": 128
}
}
}
},
"third_party_services": {
"description": "Object containing information about system facts of third party services",
"type": "object",
"properties": {
"crowdstrike": {
"description": "Object containing information about CrowdStrike system facts",
"type": "object",
"properties": {
"falcon_aid": {
"description": "CrowdStrike Falcon Agent ID",
"type": "string",
"example": "44e3b7d20b434a2bb2815d9808fa3a8b",
"maxLength": 32
},
"falcon_backend": {
"description": "CrowdStrike Falcon Sensor backend",
"type": "string",
"example": "auto, kernel, bpf",
"maxLength": 32
},
"falcon_version": {
"description": "CrowdStrike running Falcon Sensor version",
"type": "string",
"example": "7.14.16703.0, 6.33.13003.0",
"maxLength": 32
}
}
}
}
},
"image_builder": {
"description": "Object containing image builder facts",
"type": "object",
"properties": {
"compliance_policy_id": {
"description": "The compliance policy that was used and applied during the image build",
"type": "string",
"example": "89b52baa-9912-4edc-9ed5-be15c06eaaa9",
"pattern": "[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}",
"maxLength": 36
},
"compliance_profile_id": {
"description": "The profile that was applied during the image build on which the compliance policy was based\n",
"type": "string",
"example": "xccdf_org.ssgproject.content_profile_cis",
"maxLength": 255
}
}
},
"workloads": {
"description": "Object containing information about system workloads",
"type": "object",
"x-dynamic": true,
"properties": {
"ansible": {
"description": "Object containing data specific to Ansible Automation Platform",
"type": "object",
"properties": {
"controller_version": {
"description": "The ansible-tower or automation-controller version on the host",
"type": "string",
"example": "1.2.3, 4.5.6, 7.8.9",
"maxLength": 30,
"pattern": "^\\d+(\\.\\d+)+$",
"x-wildcard": true
},
"hub_version": {
"description": "The automation-hub version on the host",
"type": "string",
"example": "1.2.3, 4.5.6, 7.8.9",
"maxLength": 30,
"pattern": "^\\d+(\\.\\d+)+$",
"x-wildcard": true
},
"catalog_worker_version": {
"description": "The catalog-worker version on the host",
"type": "string",
"example": "1.2.3, 4.5.6, 7.8.9",
"maxLength": 30,
"pattern": "^\\d+(\\.\\d+)+$",
"x-wildcard": true
},
"sso_version": {
"description": "The SSO version on the host",
"type": "string",
"example": "1.2.3, 4.5.6, 7.8.9",
"maxLength": 30,
"pattern": "^\\d+(\\.\\d+)+$",
"x-wildcard": true
}
}
},
"crowdstrike": {
"description": "Object containing information about CrowdStrike system facts",
"type": "object",
"properties": {
"falcon_aid": {
"description": "CrowdStrike Falcon Agent ID",
"type": "string",
"example": "44e3b7d20b434a2bb2815d9808fa3a8b",
"maxLength": 32
},
"falcon_backend": {
"description": "CrowdStrike Falcon Sensor backend",
"type": "string",
"example": "auto, kernel, bpf",
"maxLength": 32
},
"falcon_version": {
"description": "CrowdStrike running Falcon Sensor version",
"type": "string",
"example": "7.14.16703.0, 6.33.13003.0",
"maxLength": 32
}
}
},
"ibm_db2": {
"description": "Object containing data specific to the IBM DB2 workload",
"type": "object",
"properties": {
"is_running": {
"description": "Indicates if IBM DB2 is running on the system",
"type": "boolean"
}
}
},
"intersystems": {
"description": "Object containing data specific to InterSystems workload",
"type": "object",
"properties": {
"is_intersystems": {
"description": "Indicates if InterSystems is installed on the system",
"type": "boolean"
},
"running_instances": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SystemProfileInterSystemsRunningInstance"
}
}
}
},
"mssql": {
"description": "Object containing data specific to the MS SQL workload",
"type": "object",
"properties": {
"version": {
"description": "MSSQL version number",
"type": "string",
"example": "15.2.0, 12.5.3, 10.1.0",
"maxLength": 30,
"x-wildcard": true
}
}
},
"oracle_db": {
"description": "Object containing data specific to the Oracle DB workload",
"type": "object",
"properties": {
"is_running": {
"description": "Indicates if Oracle DB is running on the system",
"type": "boolean"
}
}
},
"rhel_ai": {
"description": "Object containing information about RHEL AI",
"type": "object",
"properties": {
"variant": {
"description": "RHEL AI VARIANT",
"type": "string",
"example": "RHEL AI",
"maxLength": 7
},
"rhel_ai_version_id": {
"description": "RHEL AI VERSION ID",
"type": "string",
"example": "v1.1.3",
"maxLength": 16
},
"gpu_models": {
"description": "The list of GPU models on the host",
"type": "array",
"items": {
"description": "Object containing data specific to a GPU model",
"type": "object",
"properties": {
"name": {
"description": "The name of GPU model",
"type": "string",
"example": "NVIDIA A100 80GB PCIe, Habana Labs Ltd. Device 1020",
"maxLength": 128
},
"vendor": {
"description": "The vendor of GPU model",
"type": "string",
"example": "Nvidia, AMD, Habana",
"maxLength": 32
},
"memory": {
"description": "The memory of GPU model",
"type": "string",
"example": "24GB, 80GB",
"maxLength": 32
},
"count": {
"description": "The count of this specific GPU model",
"type": "integer",
"format": "int32",
"example": 4,
"minimum": 0,
"maximum": 9999
}
}
}
},
"ai_models": {
"description": "The list of AI models available on the host",
"type": "array",
"items": {
"description": "AI model name",
"type": "string",
"example": "granite-7b-redhat-lab, granite-7b-starter",
"maxLength": 256
}
},
"free_disk_storage": {
"description": "The free storage available on the host",
"type": "string",
"example": "698GB, 3TB",
"maxLength": 32
}
}
},
"sap": {
"description": "Object containing data specific to the SAP workload",
"type": "object",
"properties": {
"sap_system": {
"type": "boolean",
"description": "Indicates if SAP is installed on the system"
},
"sids": {
"type": "array",
"uniqueItems": true,
"items": {
"description": "The SAP system ID (SID)",
"type": "string",
"example": "H2O, ABC, XYZ",
"maxLength": 3,
"pattern": "^[A-Z][A-Z0-9]{2}$"
}
},
"instance_number": {
"type": "string",
"description": "The instance number of the SAP HANA system (a two-digit number between 00 and 99)",
"example": "03, 05, 99",
"maxLength": 2,
"pattern": "^[0-9]{2}$"
},
"version": {
"type": "string",
"description": "The version of the SAP HANA lifecycle management program",
"example": "1.00.122.04.1478575636, 2.00.122.04.1478575636, 3.00.122.04.1478575636",
"maxLength": 22,
"pattern": "^[0-9]\\.[0-9]{2}\\.[0-9]{3}\\.[0-9]{2}\\.[0-9]{10}$"
}
}
}
}
}
}
},
"SystemProfileNestedObject": {
"type": "object",
"description": "An arbitrary object that does not allow empty string keys.",
"x-propertyNames": {
"minLength": 1
},
"additionalProperties": {
"oneOf": [
{
"$ref": "#/components/schemas/SystemProfileNestedObject"
},
{
"not": {
"type": "object"
}
}
]
}
},
"SystemProfileDiskDevice": {
"description": "Representation of one mounted device",
"type": "object",
"properties": {
"device": {
"example": "/dev/fdd0, /dev/sda1, /dev/nvme2",
"type": "string",
"maxLength": 2048
},
"label": {
"description": "User-defined mount label",
"type": "string",
"example": "foo, bar, baz",
"maxLength": 1024
},
"options": {
"description": "Mount options for nested object",
"example": {
"uid": "0",
"ro": true
},
"$ref": "#/components/schemas/SystemProfileNestedObject"
},
"mount_point": {
"description": "The mount point",
"example": "/mnt/remote_nfs_shares, /mnt/local_nfs, /mnt/foo",
"type": "string",
"maxLength": 2048
},
"type": {
"description": "The mount type",
"example": "ext1, ext2, ext3",
"type": "string",
"maxLength": 256
}
}
},
"SystemProfileYumRepo": {
"description": "Representation of one yum repository",
"type": "object",
"properties": {
"id": {
"type": "string",
"maxLength": 256,
"example": "abc, dfg, pop"
},
"name": {
"type": "string",
"maxLength": 1024,
"example": "abc, dfg, pop"
},
"gpgcheck": {
"type": "boolean"
},
"enabled": {
"type": "boolean"
},
"base_url": {
"type": "string",
"format": "uri",
"maxLength": 2048,
"example": "abc, dfg, pop"
},
"mirrorlist": {
"description": "URL of a mirrorlist for the repository",
"type": "string",
"format": "uri",
"maxLength": 2048,
"example": "https://rhui.redhat.com/pulp/mirror/content/dist/rhel8/rhui/$releasever/$basearch/baseos/os"
}
}
},
"SystemProfileDnfModule": {
"description": "Representation of one DNF module",
"type": "object",
"properties": {
"name": {
"type": "string",
"maxLength": 128,
"example": "abc, dfg, pop"
},
"stream": {
"type": "string",
"maxLength": 2048,
"example": "abc, dfg, pop"
},
"status": {
"type": "array",
"items": {
"description": "The module stream's status",
"type": "string",
"maxLength": 64,
"enum": [
"default",
"enabled",
"installed"
],
"example": "default, enabled, installed"
}
}
}
},
"SystemProfileInstalledProduct": {
"description": "Representation of one installed product",
"type": "object",
"properties": {
"name": {
"type": "string",
"maxLength": 512,
"example": "abc, dfg, pop"
},
"id": {
"description": "The product ID",
"type": "string",
"maxLength": 64,
"example": "abc, dfg, pop"
},
"status": {
"description": "Subscription status for product",
"example": "Subscribed, inactive, canceled",
"type": "string",
"maxLength": 256
}
}
},
"SystemProfileNetworkInterface": {
"description": "Representation of one network interface",
"type": "object",
"properties": {
"ipv4_addresses": {
"type": "array",
"items": {
"description": "The ipv4 address of the system",
"example": "227.161.169.210 30.143.76.153 233.87.178.7, 60.209.47.155 40.124.217.134, 67.77.119.70",
"type": "string",
"format": "ipv4"
}
},
"ipv6_addresses": {
"type": "array",
"items": {
"description": "The ipv6 address of the system",
"example": "8886:2565:f753:1bbb:1d08:4239:c470:a889, dd2e:879f:afff:7845:b346:bb88:bcf2:4b1b, e979:3081:7218:4c98:fd19:5777:309a:957b",
"type": "string",
"format": "ipv6"
}
},
"mtu": {
"description": "MTU (Maximum transmission unit)",
"type": "integer",
"format": "int32",
"minimum": 0,
"maximum": 2147483647
},
"mac_address": {
"description": "MAC address (with or without colons)",
"example": "00:00:00:00:00:00, 100000000000, 20:00:00:00:00:00",
"type": "string",
"pattern": "^([A-Fa-f0-9]{2}[:-]){5}[A-Fa-f0-9]{2}$|^([A-Fa-f0-9]{4}[.]){2}[A-Fa-f0-9]{4}$|^[A-Fa-f0-9]{12}$|^([A-Fa-f0-9]{2}[:-]){19}[A-Fa-f0-9]{2}$|^[A-Fa-f0-9]{40}$",
"maxLength": 59
},
"name": {
"description": "Name of interface",
"type": "string",
"example": "eth0, eth1, eth2",
"minLength": 1,
"maxLength": 50
},
"state": {
"description": "Interface state (UP, DOWN, UNKNOWN)",
"type": "string",
"example": "UP, DOWN, UNKNOWN",
"maxLength": 25
},
"type": {
"description": "Interface type (ether, loopback)",
"type": "string",
"example": "ether, infiniband, loopback",
"maxLength": 18
}
}
},
"SystemProfileInterSystemsRunningInstance": {
"description": "The info for an InterSystems instance running on the system",
"type": "object",
"properties": {
"instance_name": {
"description": "The name of the instance",
"type": "string",
"example": "IRIS3, PROD",
"maxLength": 255
},
"product": {
"description": "The product of the instance",
"type": "string",
"example": "IRIS",
"maxLength": 64
},
"version": {
"description": "The version of the instance",
"type": "string",
"example": "2023.1, 2023.2",
"maxLength": 7,
"pattern": "^\\d+(\\.\\d+)+$"
}
}
},
"PaginationOut": {
"type": "object",
"required": [
"count",
"page",
"per_page",
"total"
],
"properties": {
"count": {
"$ref": "#/components/schemas/Count"
},
"page": {
"$ref": "#/components/schemas/Page"
},
"per_page": {
"$ref": "#/components/schemas/PerPage"
},
"total": {
"$ref": "#/components/schemas/Total"
}
}
},
"Total": {
"type": "integer",
"description": "Total number of items"
},
"Count": {
"type": "integer",
"description": "The number of items on the current page"
},
"Page": {
"type": "integer",
"description": "The page number"
},
"PerPage": {
"type": "integer",
"description": "The number of items to return per page"
},
"ResourceTypesPaginationOut": {
"type": "object",
"required": [
"meta",
"links"
],
"properties": {
"meta": {
"description": "The metadata for resource-types responses",
"type": "object",
"required": [
"count"
],
"properties": {
"count": {
"description": "The total number of objects returned by the query.",
"type": "integer"
}
}
},
"links": {
"description": "A collection of pagination links for resource-types endpoints",
"type": "object",
"required": [
"first",
"previous",
"next",
"last"
],
"properties": {
"first": {
"description": "The URI path for the first page in the pagination",
"type": "string"
},
"previous": {
"description": "The URI path for the previous page in the pagination",
"type": "string",
"nullable": true
},
"next": {
"description": "The URI path for the next page in the pagination",
"type": "string",
"nullable": true
},
"last": {
"description": "The URI path for the last page in the pagination",
"type": "string"
}
}
}
}
}
},
"responses": {
"PageOutOfBounds": {
"description": "Requested page is outside of the range of available pages"
}
}
}
}