{ "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" }, "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/providerId" }, { "$ref": "#/components/parameters/providerType" }, { "$ref": "#/components/parameters/updatedStart" }, { "$ref": "#/components/parameters/updatedEnd" }, { "$ref": "#/components/parameters/groupNameListParam" }, { "$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/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/groupNameListParam" }, { "$ref": "#/components/parameters/registered_with" }, { "$ref": "#/components/parameters/stalenessNoDefaultsParam" }, { "$ref": "#/components/parameters/tagsParam" }, { "$ref": "#/components/parameters/filter_param" } ], "responses": { "202": { "description": "Request for deletion of filtered hosts has been accepted." }, "400": { "description": "Invalid request." } } } }, "/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/hostOrderByParam" }, { "$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/hostOrderByParam" }, { "$ref": "#/components/parameters/hostOrderHowParam" } ], "responses": { "200": { "description": "Successfully found tag count.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TagCountOut" } } } }, "400": { "description": "Invalid request." } } } }, "/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" } ], "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": "Merge group information", "description": "Merge group information.

Required permissions: inventory:groups:write", "security": [ { "ApiKeyAuth": [] } ], "parameters": [ { "$ref": "#/components/parameters/groupId" } ], "requestBody": { "description": "A dictionary with new information to merge with the original group.", "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GroupIn" } } } }, "responses": { "200": { "description": "Group information successfully or already previously merged.", "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": { "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, "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/tagsOrderBy" }, { "$ref": "#/components/parameters/tagsOrderHow" }, { "$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/groupNameListParam" }, { "$ref": "#/components/parameters/registered_with" }, { "$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: inventory:TODO: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: inventory:TODO: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: inventory: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: inventory: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: inventory:TODO: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 }, "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", "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" }, "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" ] }, "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": { "name": "order_how", "in": "query", "required": false, "schema": { "type": "string", "enum": [ "ASC", "DESC" ] }, "description": "Direction of the ordering; defaults to ASC for display_name, and to DESC for updated and operating_system" }, "groupOrderHowParam": { "name": "order_how", "in": "query", "required": false, "schema": { "type": "string", "enum": [ "ASC", "DESC" ] }, "description": "Direction of the ordering; defaults to ASC for name, and to DESC for host_count" }, "assignmentRuleOrderByParam": { "name": "order_by", "in": "query", "required": false, "schema": { "type": "string", "enum": [ "name", "group_id" ] }, "description": "Ordering field name" }, "assignmentRuleOrderHowParam": { "name": "order_how", "in": "query", "required": false, "schema": { "type": "string", "enum": [ "ASC", "DESC" ] }, "description": "Direction of the ordering; defaults to ASC for name, and to DESC for host_ids" }, "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 out hosts not tagged by the given tags", "required": false, "schema": { "type": "array", "items": { "type": "string", "pattern": "^([^=/]+/)?[^=/]+(=[^=/]+)?$" } } }, "tagsOrderBy": { "in": "query", "name": "order_by", "required": false, "schema": { "type": "string", "default": "tag", "enum": [ "tag", "count" ] }, "description": "Ordering field name" }, "tagsOrderHow": { "in": "query", "name": "order_how", "required": false, "schema": { "type": "string", "default": "ASC", "enum": [ "ASC", "DESC" ] }, "description": "Direction of the ordering. Default to ASC" }, "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" ] } } }, "filter_param": { "in": "query", "name": "filter", "required": false, "description": "Filters hosts based on system_profile fields. For example:

    {\"system_profile\": {\"host_type\": {\"eq\": \"edge\"}}}

which equates to the URL param:

    \"?filter[system_profile][host_type][eq]=edge\"", "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" } }, "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" } } }, "groupId": { "in": "path", "name": "group_id", "description": "Group ID.", "required": true, "schema": { "$ref": "#/components/schemas/NonStrictUUID" } }, "assignmentRuleName": { "in": "query", "name": "name", "schema": { "type": "string" }, "description": "Filter by assignment-rule name", "required": false }, "assignmentRuleId": { "in": "path", "name": "assignment_rule_id", "description": "assignment-rule 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" } } }, "assignmentRuleIdList": { "in": "path", "name": "assignment_rule_id_list", "description": "A comma-separated list of assignment-rule 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" } } }, "required": [ "org_id" ] } ] }, "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" } } } } ] }, "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" } } }, "PerReporterStaleness": { "type": "object", "properties": { "last_check_in": { "type": "string", "format": "date-time", "example": "2020-02-10T08:07:03.354307+00:00" }, "stale_timestamp": { "type": "string", "format": "date-time", "example": "2020-02-17T08:07:03.354307+00:00" }, "stale_warning_timestamp": { "type": "string", "format": "date-time", "example": "2020-02-17T08:07:03.354307+00:00" }, "culled_timestamp": { "type": "string", "format": "date-time", "example": "2020-02-17T08:07:03.354307+00:00" }, "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", "pattern": "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" }, "AssignmentRuleId": { "description": "A durable and reliable platform-wide assignment-rule identifier. Applications should use this identifier to reference assignment-rules.", "$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 }, "UnleashToggleOut": { "title": "Unleash Toggle Out", "properties": { "flag_value": { "description": "The value of the feature flag toggle", "type": "boolean" }, "using_fallback_value": { "description": "Whether the fallback value was used, if the Unleash server could not be accessed", "type": "boolean" } } }, "GroupIn": { "title": "Group In", "description": "Data of a single group belonging to an account.", "type": "object", "allOf": [ { "properties": { "name": { "$ref": "#/components/schemas/GroupName" }, "host_ids": { "$ref": "#/components/schemas/HostIds" } } } ] }, "AssignmentRuleIn": { "title": "Assignment Rule In", "description": "Data for a single Assignment Rule", "type": "object", "properties": { "name": { "type": "string", "minLength": 1, "maxLength": 255 }, "description": { "type": "string", "minLength": 1, "maxLength": 255, "nullable": true }, "group_id": { "$ref": "#/components/schemas/GroupId" }, "filter": { "type": "object" }, "enabled": { "type": "boolean" } }, "required": [ "name", "group_id", "filter", "enabled" ] }, "AssignmentRuleOut": { "title": "Assignment Rule response", "description": "Data for a single Assignment Rule response", "type": "object", "properties": { "id": { "$ref": "#/components/schemas/NonStrictUUID" }, "org_id": { "$ref": "#/components/schemas/OrgId" }, "account": { "$ref": "#/components/schemas/AccountNumber" }, "name": { "type": "string", "minLength": 1 }, "description": { "type": "string", "minLength": 1, "nullable": true }, "group_id": { "$ref": "#/components/schemas/GroupId" }, "filter": { "type": "object" }, "enabled": { "type": "boolean" }, "created_on": { "type": "string", "format": "date-time" }, "modified_on": { "type": "string", "format": "date-time" } }, "required": [ "name", "group_id", "filter", "enabled", "created_on", "modified_on" ] }, "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" }, "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" } } } } ] }, "AssignmentRuleQueryOutput": { "title": "An Inventory Assignment Rules query result", "description": "A paginated assignment-rule search query result with assignment-rule entries and their Inventory metadata.", "type": "object", "allOf": [ { "$ref": "#/components/schemas/PaginationOut" }, { "type": "object", "required": [ "results" ], "properties": { "results": { "description": "Actual assignment-rule search query result entries.", "type": "array", "items": { "$ref": "#/components/schemas/AssignmentRuleOut" } } } } ] }, "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" } } } } ] }, "StalenessIn": { "title": "Account Staleness In", "description": "Data of a single account staleness.", "type": "object", "anyOf": [ { "properties": { "conventional_time_to_stale": { "type": "integer", "minimum": 1 }, "conventional_time_to_stale_warning": { "type": "integer", "minimum": 1 }, "conventional_time_to_delete": { "type": "integer", "minimum": 1 }, "immutable_time_to_stale": { "type": "integer", "minimum": 1 }, "immutable_time_to_stale_warning": { "type": "integer", "minimum": 1 }, "immutable_time_to_delete": { "type": "integer", "minimum": 1 } } } ] }, "StalenessOutput": { "title": "Account Staleness Out", "description": "Data of a account staleness.", "type": "object", "properties": { "id": { "$ref": "#/components/schemas/StalenessId" }, "org_id": { "$ref": "#/components/schemas/OrgId" }, "conventional_time_to_stale": { "type": "integer" }, "conventional_time_to_stale_warning": { "type": "integer" }, "conventional_time_to_delete": { "type": "integer" }, "immutable_time_to_stale": { "type": "integer" }, "immutable_time_to_stale_warning": { "type": "integer" }, "immutable_time_to_delete": { "type": "integer" }, "created_at": { "description": "A timestamp when the entry was created.", "type": "string", "format": "date-time" }, "updated_at": { "description": "A timestamp when the entry was last updated.", "type": "string", "format": "date-time" } } }, "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 }, "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" } }, "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-indexed": false, "x-wildcard": true, "maxLength": 50, "example": "ex1, ex2, ex3" }, "cpu_flags": { "type": "array", "items": { "type": "string", "maxLength": 30, "example": "ex1, ex2, ex3" } }, "systemd": { "description": "Object for whole system systemd state, as reported by systemctl status --all", "type": "object", "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" } }, "last_boot_time": { "type": "string", "format": "date-time", "maxLength": 50 }, "running_processes": { "type": "array", "x-indexed": false, "items": { "description": "A single running process. This will be truncated to 1000 characters when saved.", "type": "string", "maxLength": 1000, "example": "ex1, ex2, ex3" } }, "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", "x-indexed": false, "items": { "description": "The external IPv4 address of the system", "type": "string", "maxLength": 15, "example": "12.23.31.32", "format": "ipv4" } }, "public_dns": { "type": "array", "x-indexed": false, "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", "x-indexed": false, "items": { "$ref": "#/components/schemas/SystemProfileYumRepo" } }, "dnf_modules": { "type": "array", "items": { "$ref": "#/components/schemas/SystemProfileDnfModule" } }, "installed_products": { "type": "array", "items": { "$ref": "#/components/schemas/SystemProfileInstalledProduct" } }, "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" }, "captured_date": { "type": "string", "maxLength": 32, "example": "ex1, ex2, ex3" }, "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 } }, "installed_packages_delta": { "type": "array", "x-indexed": false, "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" ], "maxLength": 4, "description": "Indicates the type of host.", "example": "edge, None" }, "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 } } }, "system_purpose": { "description": "Object for system purpose information", "type": "object", "properties": { "usage": { "description": "The intended usage of the system", "type": "string", "maxLength": 17, "enum": [ "Production", "Development/Test", "Disaster Recovery" ], "example": "Production, Development/Test, Disaster Recovery" }, "role": { "description": "The intended role of the system", "type": "string", "maxLength": 37, "enum": [ "Red Hat Enterprise Linux Server", "Red Hat Enterprise Linux Workstation", "Red Hat Enterprise Linux Compute Node" ], "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": 12, "enum": [ "Premium", "Standard", "Self-Support" ], "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": { "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+)+$" } } } } } }, "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" ], "example": "dnf, rpm-ostree, yum" }, "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", "x-indexed": false, "example": true } } } } }, "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", "x-indexed": false }, "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" } } }, "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 } } }, "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" } } } }