openapi: 3.1.0 info: title: Red Hat Satellite REST API description: >- The Red Hat Satellite REST API provides programmatic access to Red Hat Satellite server functionality including host management, content view management, subscription management, lifecycle environments, and provisioning. The API is built on the Foreman and Katello upstream projects and follows RESTful conventions with JSON request and response bodies. version: 6.18.0 contact: name: Red Hat Support url: https://access.redhat.com/support license: name: GPL-3.0 url: https://www.gnu.org/licenses/gpl-3.0.html x-logo: url: https://www.redhat.com/profiles/rh/themes/redhatdotcom/img/logo.png externalDocs: description: Red Hat Satellite API Documentation url: https://docs.redhat.com/en/documentation/red_hat_satellite/6.18/html/using_the_satellite_rest_api/index servers: - url: https://satellite.example.com description: Red Hat Satellite Server security: - basicAuth: [] - oAuth2: [] tags: - name: Hosts description: >- Manage hosts registered with Red Hat Satellite including physical, virtual, and cloud instances. externalDocs: url: https://apidocs.theforeman.org/foreman/latest/apidoc/v2/hosts.html - name: Content Views description: >- Manage content views which define curated sets of repositories and packages available to hosts. externalDocs: url: https://apidocs.theforeman.org/katello/latest/apidoc/v2/content_views.html - name: Subscriptions description: >- Manage Red Hat subscriptions and entitlements for organizations and hosts. externalDocs: url: https://apidocs.theforeman.org/katello/latest/apidoc/v2/subscriptions.html - name: Lifecycle Environments description: >- Manage lifecycle environments that define promotion paths for content views from development through production. externalDocs: url: https://apidocs.theforeman.org/katello/latest/apidoc/v2/lifecycle_environments.html - name: Organizations description: >- Manage organizations which provide multi-tenancy isolation for hosts, content, and subscriptions. externalDocs: url: https://apidocs.theforeman.org/foreman/latest/apidoc/v2/organizations.html paths: /api/v2/hosts: get: operationId: listHosts summary: List All Hosts description: >- Retrieve a paginated list of all hosts registered with the Satellite server. Supports filtering by organization, location, host group, and search queries. tags: - Hosts parameters: - $ref: '#/components/parameters/organizationIdQuery' - $ref: '#/components/parameters/locationIdQuery' - name: hostgroup_id in: query description: Filter hosts by host group identifier. schema: type: integer example: '500123' - name: thin in: query description: Only return the ID and name of each host. schema: type: boolean default: false example: true - name: include in: query description: 'Additional information to include (e.g., parameters, all_parameters).' schema: type: string enum: - parameters - all_parameters example: parameters - $ref: '#/components/parameters/searchQuery' - $ref: '#/components/parameters/orderQuery' - $ref: '#/components/parameters/pageQuery' - $ref: '#/components/parameters/perPageQuery' responses: '200': description: Successful response containing a list of hosts. content: application/json: schema: type: object properties: total: type: integer description: Total number of hosts matching the query. subtotal: type: integer description: Number of hosts after filtering. page: type: integer description: Current page number. per_page: type: integer description: Number of results per page. search: type: - string - 'null' description: Applied search filter. sort: type: object properties: by: type: - string - 'null' order: type: - string - 'null' results: type: array items: $ref: '#/components/schemas/Host' examples: Listhosts200Example: summary: Default listHosts 200 response x-microcks-default: true value: total: 10 subtotal: 10 page: 10 per_page: 10 search: example_value sort: by: example_value order: example_value results: - id: abc123 name: Example Title ip: example_value ip6: example_value mac: example_value environment_id: '500123' hostgroup_id: '500123' hostgroup_name: example_value hostgroup_title: example_value operatingsystem_id: '500123' operatingsystem_name: example_value architecture_id: '500123' architecture_name: example_value domain_id: '500123' domain_name: example_value subnet_id: '500123' subnet_name: example_value subnet6_id: '500123' compute_resource_id: '500123' compute_resource_name: example_value compute_profile_id: '500123' medium_id: '500123' ptable_id: '500123' model_id: '500123' model_name: example_value location_id: '500123' location_name: example_value organization_id: '500123' organization_name: example_value owner_id: '500123' owner_type: User managed: true build: true enabled: true comment: example_value uuid: '500123' global_status: 10 global_status_label: OK content_facet_attributes: id: abc123 content_view_id: '500123' content_view_name: example_value lifecycle_environment_id: '500123' lifecycle_environment_name: example_value content_source_id: '500123' errata_counts: {} applicable_errata_count: 10 upgradable_package_count: 10 subscription_facet_attributes: id: abc123 uuid: '500123' registered_at: '2026-01-15T10:30:00Z' last_checkin: '2026-01-15T10:30:00Z' service_level: example_value release_version: example_value autoheal: true registered_through: example_value interfaces: - {} puppetclasses: - {} all_puppetclasses: - {} created_at: '2026-01-15T10:30:00Z' updated_at: '2026-01-15T10:30:00Z' installed_at: '2026-01-15T10:30:00Z' last_report: '2026-01-15T10:30:00Z' '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK post: operationId: createHost summary: Create a Host description: >- Register a new host with the Satellite server. The host can be managed (provisioned and configured by Satellite) or unmanaged (inventory only). tags: - Hosts parameters: - $ref: '#/components/parameters/organizationIdQuery' - $ref: '#/components/parameters/locationIdQuery' requestBody: required: true content: application/json: schema: type: object required: - host properties: host: $ref: '#/components/schemas/HostCreate' examples: CreatehostRequestExample: summary: Default createHost request x-microcks-default: true value: host: name: Example Title location_id: '500123' organization_id: '500123' ip: example_value mac: example_value architecture_id: '500123' domain_id: '500123' subnet_id: '500123' operatingsystem_id: '500123' medium_id: '500123' ptable_id: '500123' compute_resource_id: '500123' compute_profile_id: '500123' hostgroup_id: '500123' root_pass: example_value owner_id: '500123' owner_type: User build: true managed: true comment: example_value content_facet_attributes: content_view_id: '500123' lifecycle_environment_id: '500123' content_source_id: '500123' interfaces_attributes: - {} responses: '201': description: Host created successfully. content: application/json: schema: $ref: '#/components/schemas/Host' examples: Createhost201Example: summary: Default createHost 201 response x-microcks-default: true value: id: abc123 name: Example Title ip: example_value ip6: example_value mac: example_value environment_id: '500123' hostgroup_id: '500123' hostgroup_name: example_value hostgroup_title: example_value operatingsystem_id: '500123' operatingsystem_name: example_value architecture_id: '500123' architecture_name: example_value domain_id: '500123' domain_name: example_value subnet_id: '500123' subnet_name: example_value subnet6_id: '500123' compute_resource_id: '500123' compute_resource_name: example_value compute_profile_id: '500123' medium_id: '500123' ptable_id: '500123' model_id: '500123' model_name: example_value location_id: '500123' location_name: example_value organization_id: '500123' organization_name: example_value owner_id: '500123' owner_type: User managed: true build: true enabled: true comment: example_value uuid: '500123' global_status: 10 global_status_label: OK content_facet_attributes: id: abc123 content_view_id: '500123' content_view_name: example_value lifecycle_environment_id: '500123' lifecycle_environment_name: example_value content_source_id: '500123' errata_counts: security: 10 bugfix: 10 enhancement: 10 total: 10 applicable_errata_count: 10 upgradable_package_count: 10 subscription_facet_attributes: id: abc123 uuid: '500123' registered_at: '2026-01-15T10:30:00Z' last_checkin: '2026-01-15T10:30:00Z' service_level: example_value release_version: example_value autoheal: true registered_through: example_value interfaces: - id: abc123 mac: example_value ip: example_value ip6: example_value type: interface name: Example Title subnet_id: '500123' subnet6_id: '500123' domain_id: '500123' identifier: example_value managed: true primary: true provision: true virtual: true tag: example_value mtu: example_value attached_to: example_value puppetclasses: - {} all_puppetclasses: - {} created_at: '2026-01-15T10:30:00Z' updated_at: '2026-01-15T10:30:00Z' installed_at: '2026-01-15T10:30:00Z' last_report: '2026-01-15T10:30:00Z' '422': $ref: '#/components/responses/UnprocessableEntity' '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v2/hosts/{id}: get: operationId: showHost summary: Show a Host description: Retrieve details for a specific host by its identifier. tags: - Hosts parameters: - $ref: '#/components/parameters/hostId' responses: '200': description: Successful response containing host details. content: application/json: schema: $ref: '#/components/schemas/Host' examples: Showhost200Example: summary: Default showHost 200 response x-microcks-default: true value: id: abc123 name: Example Title ip: example_value ip6: example_value mac: example_value environment_id: '500123' hostgroup_id: '500123' hostgroup_name: example_value hostgroup_title: example_value operatingsystem_id: '500123' operatingsystem_name: example_value architecture_id: '500123' architecture_name: example_value domain_id: '500123' domain_name: example_value subnet_id: '500123' subnet_name: example_value subnet6_id: '500123' compute_resource_id: '500123' compute_resource_name: example_value compute_profile_id: '500123' medium_id: '500123' ptable_id: '500123' model_id: '500123' model_name: example_value location_id: '500123' location_name: example_value organization_id: '500123' organization_name: example_value owner_id: '500123' owner_type: User managed: true build: true enabled: true comment: example_value uuid: '500123' global_status: 10 global_status_label: OK content_facet_attributes: id: abc123 content_view_id: '500123' content_view_name: example_value lifecycle_environment_id: '500123' lifecycle_environment_name: example_value content_source_id: '500123' errata_counts: security: 10 bugfix: 10 enhancement: 10 total: 10 applicable_errata_count: 10 upgradable_package_count: 10 subscription_facet_attributes: id: abc123 uuid: '500123' registered_at: '2026-01-15T10:30:00Z' last_checkin: '2026-01-15T10:30:00Z' service_level: example_value release_version: example_value autoheal: true registered_through: example_value interfaces: - id: abc123 mac: example_value ip: example_value ip6: example_value type: interface name: Example Title subnet_id: '500123' subnet6_id: '500123' domain_id: '500123' identifier: example_value managed: true primary: true provision: true virtual: true tag: example_value mtu: example_value attached_to: example_value puppetclasses: - {} all_puppetclasses: - {} created_at: '2026-01-15T10:30:00Z' updated_at: '2026-01-15T10:30:00Z' installed_at: '2026-01-15T10:30:00Z' last_report: '2026-01-15T10:30:00Z' '404': $ref: '#/components/responses/NotFound' '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK put: operationId: updateHost summary: Update a Host description: Update the attributes of an existing host. tags: - Hosts parameters: - $ref: '#/components/parameters/hostId' - $ref: '#/components/parameters/organizationIdQuery' - $ref: '#/components/parameters/locationIdQuery' requestBody: required: true content: application/json: schema: type: object required: - host properties: host: $ref: '#/components/schemas/HostUpdate' examples: UpdatehostRequestExample: summary: Default updateHost request x-microcks-default: true value: host: name: Example Title ip: example_value mac: example_value architecture_id: '500123' domain_id: '500123' subnet_id: '500123' operatingsystem_id: '500123' hostgroup_id: '500123' location_id: '500123' organization_id: '500123' owner_id: '500123' owner_type: User build: true managed: true comment: example_value content_facet_attributes: content_view_id: '500123' lifecycle_environment_id: '500123' content_source_id: '500123' interfaces_attributes: - {} responses: '200': description: Host updated successfully. content: application/json: schema: $ref: '#/components/schemas/Host' examples: Updatehost200Example: summary: Default updateHost 200 response x-microcks-default: true value: id: abc123 name: Example Title ip: example_value ip6: example_value mac: example_value environment_id: '500123' hostgroup_id: '500123' hostgroup_name: example_value hostgroup_title: example_value operatingsystem_id: '500123' operatingsystem_name: example_value architecture_id: '500123' architecture_name: example_value domain_id: '500123' domain_name: example_value subnet_id: '500123' subnet_name: example_value subnet6_id: '500123' compute_resource_id: '500123' compute_resource_name: example_value compute_profile_id: '500123' medium_id: '500123' ptable_id: '500123' model_id: '500123' model_name: example_value location_id: '500123' location_name: example_value organization_id: '500123' organization_name: example_value owner_id: '500123' owner_type: User managed: true build: true enabled: true comment: example_value uuid: '500123' global_status: 10 global_status_label: OK content_facet_attributes: id: abc123 content_view_id: '500123' content_view_name: example_value lifecycle_environment_id: '500123' lifecycle_environment_name: example_value content_source_id: '500123' errata_counts: security: 10 bugfix: 10 enhancement: 10 total: 10 applicable_errata_count: 10 upgradable_package_count: 10 subscription_facet_attributes: id: abc123 uuid: '500123' registered_at: '2026-01-15T10:30:00Z' last_checkin: '2026-01-15T10:30:00Z' service_level: example_value release_version: example_value autoheal: true registered_through: example_value interfaces: - id: abc123 mac: example_value ip: example_value ip6: example_value type: interface name: Example Title subnet_id: '500123' subnet6_id: '500123' domain_id: '500123' identifier: example_value managed: true primary: true provision: true virtual: true tag: example_value mtu: example_value attached_to: example_value puppetclasses: - {} all_puppetclasses: - {} created_at: '2026-01-15T10:30:00Z' updated_at: '2026-01-15T10:30:00Z' installed_at: '2026-01-15T10:30:00Z' last_report: '2026-01-15T10:30:00Z' '404': $ref: '#/components/responses/NotFound' '422': $ref: '#/components/responses/UnprocessableEntity' '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: operationId: deleteHost summary: Delete a Host description: Remove a host from the Satellite server. tags: - Hosts parameters: - $ref: '#/components/parameters/hostId' responses: '200': description: Host deleted successfully. '404': $ref: '#/components/responses/NotFound' '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v2/hosts/{id}/power: put: operationId: hostPowerAction summary: Execute a Power Operation on a Host description: >- Perform a power management action on a host such as powering on, powering off, or rebooting. Requires a BMC or compute resource association. tags: - Hosts parameters: - $ref: '#/components/parameters/hostId' requestBody: required: true content: application/json: schema: type: object required: - power_action properties: power_action: type: string description: Power action to perform. enum: - start - stop - reboot - status examples: HostpoweractionRequestExample: summary: Default hostPowerAction request x-microcks-default: true value: power_action: start responses: '200': description: Power action executed successfully. content: application/json: schema: type: object properties: power: type: string id: type: integer examples: Hostpoweraction200Example: summary: Default hostPowerAction 200 response x-microcks-default: true value: power: example_value id: abc123 '404': $ref: '#/components/responses/NotFound' '422': $ref: '#/components/responses/UnprocessableEntity' x-microcks-operation: delay: 0 dispatcher: FALLBACK /katello/api/v2/content_views: get: operationId: listContentViews summary: List Content Views description: >- Retrieve a paginated list of content views for an organization. Content views define curated collections of repositories whose packages, errata, and other content are made available to hosts. tags: - Content Views parameters: - $ref: '#/components/parameters/organizationIdQuery' - name: environment_id in: query description: Filter by lifecycle environment identifier. schema: type: integer example: '500123' - name: nondefault in: query description: Filter out default content views. schema: type: boolean example: true - name: noncomposite in: query description: Filter out composite content views. schema: type: boolean example: true - name: composite in: query description: Filter only composite content views. schema: type: boolean example: true - name: name in: query description: Filter by content view name. schema: type: string example: Example Title - name: label in: query description: Filter by content view label. schema: type: string example: Example Title - name: include_generated in: query description: Include import/export generated content views. schema: type: boolean default: false example: true - $ref: '#/components/parameters/searchQuery' - $ref: '#/components/parameters/orderQuery' - $ref: '#/components/parameters/pageQuery' - $ref: '#/components/parameters/perPageQuery' responses: '200': description: Successful response containing a list of content views. content: application/json: schema: type: object properties: total: type: integer subtotal: type: integer page: type: integer per_page: type: integer search: type: - string - 'null' results: type: array items: $ref: '#/components/schemas/ContentView' examples: Listcontentviews200Example: summary: Default listContentViews 200 response x-microcks-default: true value: total: 10 subtotal: 10 page: 10 per_page: 10 search: example_value results: - id: abc123 name: Example Title label: Example Title description: A sample description. organization_id: '500123' organization: name: Example Title label: Example Title id: abc123 composite: true rolling: true auto_publish: true solve_dependencies: true import_only: true generated_for: example_value default: true repository_ids: - {} repositories: - {} component_ids: - {} versions: - {} environments: - {} activation_keys: - {} next_version: example_value last_published: '2026-01-15T10:30:00Z' latest_version: example_value latest_version_id: '500123' created_at: '2026-01-15T10:30:00Z' updated_at: '2026-01-15T10:30:00Z' '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK post: operationId: createContentView summary: Create a Content View description: >- Create a new content view for an organization. Content views can be standard (selecting individual repositories) or composite (combining published versions of other content views). tags: - Content Views requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ContentViewCreate' examples: CreatecontentviewRequestExample: summary: Default createContentView request x-microcks-default: true value: organization_id: '500123' name: Example Title label: Example Title description: A sample description. composite: true rolling: true auto_publish: true solve_dependencies: true import_only: true repository_ids: - 10 component_ids: - 10 environment_ids: - 10 responses: '201': description: Content view created successfully. content: application/json: schema: $ref: '#/components/schemas/ContentView' examples: Createcontentview201Example: summary: Default createContentView 201 response x-microcks-default: true value: id: abc123 name: Example Title label: Example Title description: A sample description. organization_id: '500123' organization: name: Example Title label: Example Title id: abc123 composite: true rolling: true auto_publish: true solve_dependencies: true import_only: true generated_for: example_value default: true repository_ids: - 10 repositories: - id: abc123 name: Example Title label: Example Title content_type: example_value component_ids: - 10 versions: - id: abc123 version: example_value published: '2026-01-15T10:30:00Z' environment_ids: - {} environments: - id: abc123 name: Example Title label: Example Title activation_keys: - id: abc123 name: Example Title next_version: example_value last_published: '2026-01-15T10:30:00Z' latest_version: example_value latest_version_id: '500123' created_at: '2026-01-15T10:30:00Z' updated_at: '2026-01-15T10:30:00Z' '422': $ref: '#/components/responses/UnprocessableEntity' '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK /katello/api/v2/content_views/{id}: get: operationId: showContentView summary: Show a Content View description: Retrieve details for a specific content view. tags: - Content Views parameters: - $ref: '#/components/parameters/contentViewId' responses: '200': description: Successful response containing content view details. content: application/json: schema: $ref: '#/components/schemas/ContentView' examples: Showcontentview200Example: summary: Default showContentView 200 response x-microcks-default: true value: id: abc123 name: Example Title label: Example Title description: A sample description. organization_id: '500123' organization: name: Example Title label: Example Title id: abc123 composite: true rolling: true auto_publish: true solve_dependencies: true import_only: true generated_for: example_value default: true repository_ids: - 10 repositories: - id: abc123 name: Example Title label: Example Title content_type: example_value component_ids: - 10 versions: - id: abc123 version: example_value published: '2026-01-15T10:30:00Z' environment_ids: - {} environments: - id: abc123 name: Example Title label: Example Title activation_keys: - id: abc123 name: Example Title next_version: example_value last_published: '2026-01-15T10:30:00Z' latest_version: example_value latest_version_id: '500123' created_at: '2026-01-15T10:30:00Z' updated_at: '2026-01-15T10:30:00Z' '404': $ref: '#/components/responses/NotFound' '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK put: operationId: updateContentView summary: Update a Content View description: Update an existing content view's attributes. tags: - Content Views parameters: - $ref: '#/components/parameters/contentViewId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ContentViewUpdate' examples: UpdatecontentviewRequestExample: summary: Default updateContentView request x-microcks-default: true value: name: Example Title description: A sample description. auto_publish: true solve_dependencies: true repository_ids: - 10 component_ids: - 10 environment_ids: - 10 responses: '200': description: Content view updated successfully. content: application/json: schema: $ref: '#/components/schemas/ContentView' examples: Updatecontentview200Example: summary: Default updateContentView 200 response x-microcks-default: true value: id: abc123 name: Example Title label: Example Title description: A sample description. organization_id: '500123' organization: name: Example Title label: Example Title id: abc123 composite: true rolling: true auto_publish: true solve_dependencies: true import_only: true generated_for: example_value default: true repository_ids: - 10 repositories: - id: abc123 name: Example Title label: Example Title content_type: example_value component_ids: - 10 versions: - id: abc123 version: example_value published: '2026-01-15T10:30:00Z' environment_ids: - {} environments: - id: abc123 name: Example Title label: Example Title activation_keys: - id: abc123 name: Example Title next_version: example_value last_published: '2026-01-15T10:30:00Z' latest_version: example_value latest_version_id: '500123' created_at: '2026-01-15T10:30:00Z' updated_at: '2026-01-15T10:30:00Z' '404': $ref: '#/components/responses/NotFound' '422': $ref: '#/components/responses/UnprocessableEntity' '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK delete: operationId: deleteContentView summary: Delete a Content View description: >- Delete a content view. The content view must not be associated with any lifecycle environments or activation keys. tags: - Content Views parameters: - $ref: '#/components/parameters/contentViewId' responses: '200': description: Content view deleted successfully. '404': $ref: '#/components/responses/NotFound' '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK /katello/api/v2/content_views/{id}/publish: post: operationId: publishContentView summary: Publish a Content View description: >- Publish a new version of a content view. This creates a snapshot of the current repository content and makes it available for promotion to lifecycle environments. tags: - Content Views parameters: - $ref: '#/components/parameters/contentViewId' requestBody: content: application/json: schema: type: object properties: description: type: string description: Description for the new published version. major: type: integer description: Override the major version number. minor: type: integer description: Override the minor version number. repos_units: type: array description: >- List of repository and unit pairs to include in the publish. items: type: object properties: label: type: string rpm_filenames: type: array items: type: string examples: PublishcontentviewRequestExample: summary: Default publishContentView request x-microcks-default: true value: description: A sample description. major: 10 minor: 10 repos_units: - label: Example Title rpm_filenames: - example_value responses: '202': description: >- Content view publish task accepted. Returns a task object for tracking the asynchronous publish operation. content: application/json: schema: $ref: '#/components/schemas/ForemanTask' examples: Publishcontentview202Example: summary: Default publishContentView 202 response x-microcks-default: true value: id: abc123 label: Example Title pending: true action: example_value username: example_value state: planned result: pending progress: 42.5 started_at: '2026-01-15T10:30:00Z' ended_at: '2026-01-15T10:30:00Z' humanized: action: example_value input: - example_value output: example_value errors: - example_value '404': $ref: '#/components/responses/NotFound' '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK /katello/api/v2/content_view_versions/{id}/promote: post: operationId: promoteContentViewVersion summary: Promote a Content View Version description: >- Promote a published content view version to a lifecycle environment. This makes the content available to hosts in that environment. tags: - Content Views parameters: - name: id in: path required: true description: Content view version identifier. schema: type: integer example: abc123 requestBody: required: true content: application/json: schema: type: object required: - environment_ids properties: environment_ids: type: array description: >- Identifiers of the lifecycle environments to promote to. items: type: integer description: type: string description: Description for the promotion. force: type: boolean description: Force promotion even if validation fails. default: false examples: PromotecontentviewversionRequestExample: summary: Default promoteContentViewVersion request x-microcks-default: true value: environment_ids: - 10 description: A sample description. force: true responses: '202': description: >- Content view version promotion task accepted. Returns a task object for tracking the asynchronous operation. content: application/json: schema: $ref: '#/components/schemas/ForemanTask' examples: Promotecontentviewversion202Example: summary: Default promoteContentViewVersion 202 response x-microcks-default: true value: id: abc123 label: Example Title pending: true action: example_value username: example_value state: planned result: pending progress: 42.5 started_at: '2026-01-15T10:30:00Z' ended_at: '2026-01-15T10:30:00Z' humanized: action: example_value input: - example_value output: example_value errors: - example_value '404': $ref: '#/components/responses/NotFound' '422': $ref: '#/components/responses/UnprocessableEntity' x-microcks-operation: delay: 0 dispatcher: FALLBACK /katello/api/v2/organizations/{organization_id}/subscriptions: get: operationId: listSubscriptions summary: List Organization Subscriptions description: >- Retrieve a paginated list of subscriptions for an organization. Subscriptions represent Red Hat product entitlements that can be attached to hosts. tags: - Subscriptions parameters: - name: organization_id in: path required: true description: Organization identifier. schema: type: integer example: '500123' - name: host_id in: query description: Filter subscriptions by host identifier. schema: type: string example: '500123' - name: activation_key_id in: query description: Filter subscriptions by activation key identifier. schema: type: string example: '500123' - name: name in: query description: Filter by subscription name. schema: type: string example: Example Title - name: available_for in: query description: >- Object type to show available subscriptions for (host or activation_key). schema: type: string enum: - host - activation_key example: host - name: match_host in: query description: >- Ignore subscriptions not applicable to the specified host. schema: type: boolean example: true - name: match_installed in: query description: >- Return only subscriptions matching installed products on the host. schema: type: boolean example: true - name: no_overlap in: query description: >- Exclude subscriptions that overlap with existing host attachments. schema: type: boolean example: true - $ref: '#/components/parameters/searchQuery' - $ref: '#/components/parameters/orderQuery' - $ref: '#/components/parameters/pageQuery' - $ref: '#/components/parameters/perPageQuery' responses: '200': description: Successful response containing a list of subscriptions. content: application/json: schema: type: object properties: total: type: integer subtotal: type: integer page: type: integer per_page: type: integer results: type: array items: $ref: '#/components/schemas/Subscription' examples: Listsubscriptions200Example: summary: Default listSubscriptions 200 response x-microcks-default: true value: total: 10 subtotal: 10 page: 10 per_page: 10 results: - id: abc123 cp_id: '500123' subscription_id: '500123' name: Example Title description: A sample description. product_id: '500123' product_name: example_value contract_number: example_value account_number: example_value quantity: 10 consumed: 10 available: 10 start_date: '2026-01-15T10:30:00Z' end_date: '2026-01-15T10:30:00Z' support_level: example_value type: example_value virt_only: true virt_who: true multi_entitlement: true stacking_id: '500123' upstream_pool_id: '500123' organization_id: '500123' provided_products: - {} created_at: '2026-01-15T10:30:00Z' updated_at: '2026-01-15T10:30:00Z' '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK /katello/api/v2/organizations/{organization_id}/subscriptions/upload: post: operationId: uploadSubscriptionManifest summary: Upload a Subscription Manifest description: >- Upload a Red Hat subscription manifest file to import subscriptions into an organization. tags: - Subscriptions parameters: - name: organization_id in: path required: true description: Organization identifier. schema: type: integer example: '500123' requestBody: required: true content: multipart/form-data: schema: type: object required: - content properties: content: type: string format: binary description: Subscription manifest file (.zip). repository_url: type: string description: Custom CDN URL for content. examples: UploadsubscriptionmanifestRequestExample: summary: Default uploadSubscriptionManifest request x-microcks-default: true value: content: example_value repository_url: https://www.example.com responses: '202': description: Manifest upload task accepted. content: application/json: schema: $ref: '#/components/schemas/ForemanTask' examples: Uploadsubscriptionmanifest202Example: summary: Default uploadSubscriptionManifest 202 response x-microcks-default: true value: id: abc123 label: Example Title pending: true action: example_value username: example_value state: planned result: pending progress: 42.5 started_at: '2026-01-15T10:30:00Z' ended_at: '2026-01-15T10:30:00Z' humanized: action: example_value input: - example_value output: example_value errors: - example_value '400': description: Invalid manifest or upload error. '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK /katello/api/v2/organizations/{organization_id}/subscriptions/delete_manifest: post: operationId: deleteSubscriptionManifest summary: Delete a Subscription Manifest description: >- Delete the subscription manifest from an organization, removing all imported subscriptions. tags: - Subscriptions parameters: - name: organization_id in: path required: true description: Organization identifier. schema: type: integer example: '500123' responses: '202': description: Manifest deletion task accepted. content: application/json: schema: $ref: '#/components/schemas/ForemanTask' examples: Deletesubscriptionmanifest202Example: summary: Default deleteSubscriptionManifest 202 response x-microcks-default: true value: id: abc123 label: Example Title pending: true action: example_value username: example_value state: planned result: pending progress: 42.5 started_at: '2026-01-15T10:30:00Z' ended_at: '2026-01-15T10:30:00Z' humanized: action: example_value input: - example_value output: example_value errors: - example_value '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK /katello/api/v2/organizations/{organization_id}/subscriptions/refresh_manifest: put: operationId: refreshSubscriptionManifest summary: Refresh a Subscription Manifest description: >- Refresh the subscription manifest for an organization to sync changes from the Red Hat Customer Portal. tags: - Subscriptions parameters: - name: organization_id in: path required: true description: Organization identifier. schema: type: integer example: '500123' responses: '202': description: Manifest refresh task accepted. content: application/json: schema: $ref: '#/components/schemas/ForemanTask' examples: Refreshsubscriptionmanifest202Example: summary: Default refreshSubscriptionManifest 202 response x-microcks-default: true value: id: abc123 label: Example Title pending: true action: example_value username: example_value state: planned result: pending progress: 42.5 started_at: '2026-01-15T10:30:00Z' ended_at: '2026-01-15T10:30:00Z' humanized: action: example_value input: - example_value output: example_value errors: - example_value '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK /katello/api/v2/organizations/{organization_id}/environments: get: operationId: listLifecycleEnvironments summary: List Lifecycle Environments description: >- Retrieve a list of lifecycle environments for an organization. Lifecycle environments define the content promotion path from Library through development, testing, and production stages. tags: - Lifecycle Environments parameters: - name: organization_id in: path required: true description: Organization identifier. schema: type: integer example: '500123' - name: library in: query description: Include the Library lifecycle environment. schema: type: boolean example: true - name: name in: query description: Filter by lifecycle environment name. schema: type: string example: Example Title - name: label in: query description: Filter by lifecycle environment label. schema: type: string example: Example Title - $ref: '#/components/parameters/searchQuery' - $ref: '#/components/parameters/orderQuery' - $ref: '#/components/parameters/pageQuery' - $ref: '#/components/parameters/perPageQuery' responses: '200': description: >- Successful response containing a list of lifecycle environments. content: application/json: schema: type: object properties: total: type: integer subtotal: type: integer page: type: integer per_page: type: integer results: type: array items: $ref: '#/components/schemas/LifecycleEnvironment' examples: Listlifecycleenvironments200Example: summary: Default listLifecycleEnvironments 200 response x-microcks-default: true value: total: 10 subtotal: 10 page: 10 per_page: 10 results: - id: abc123 name: Example Title label: Example Title description: A sample description. organization_id: '500123' organization: name: Example Title label: Example Title id: abc123 library: true prior: id: abc123 name: Example Title successor: example_value counts: content_hosts: 10 content_views: 10 created_at: '2026-01-15T10:30:00Z' updated_at: '2026-01-15T10:30:00Z' '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK post: operationId: createLifecycleEnvironment summary: Create a Lifecycle Environment description: >- Create a new lifecycle environment within an organization's content promotion path. tags: - Lifecycle Environments parameters: - name: organization_id in: path required: true description: Organization identifier. schema: type: integer example: '500123' requestBody: required: true content: application/json: schema: type: object required: - name - prior_id properties: name: type: string description: Name of the lifecycle environment. label: type: string description: >- Label for the lifecycle environment (auto-generated from name if omitted). description: type: string description: Description of the lifecycle environment. prior_id: type: integer description: >- Identifier of the prior lifecycle environment in the promotion path. examples: CreatelifecycleenvironmentRequestExample: summary: Default createLifecycleEnvironment request x-microcks-default: true value: name: Example Title label: Example Title description: A sample description. prior_id: '500123' responses: '201': description: Lifecycle environment created successfully. content: application/json: schema: $ref: '#/components/schemas/LifecycleEnvironment' examples: Createlifecycleenvironment201Example: summary: Default createLifecycleEnvironment 201 response x-microcks-default: true value: id: abc123 name: Example Title label: Example Title description: A sample description. organization_id: '500123' organization: name: Example Title label: Example Title id: abc123 library: true prior: id: abc123 name: Example Title successor: example_value counts: content_hosts: 10 content_views: 10 created_at: '2026-01-15T10:30:00Z' updated_at: '2026-01-15T10:30:00Z' '422': $ref: '#/components/responses/UnprocessableEntity' '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK /katello/api/v2/organizations/{organization_id}/environments/paths: get: operationId: listLifecycleEnvironmentPaths summary: List Lifecycle Environment Paths description: >- Retrieve the lifecycle environment promotion paths for an organization, showing the sequence of environments content views are promoted through. tags: - Lifecycle Environments parameters: - name: organization_id in: path required: true description: Organization identifier. schema: type: integer example: '500123' responses: '200': description: >- Successful response containing lifecycle environment paths. content: application/json: schema: type: array items: type: object properties: environments: type: array items: $ref: '#/components/schemas/LifecycleEnvironment' examples: Listlifecycleenvironmentpaths200Example: summary: Default listLifecycleEnvironmentPaths 200 response x-microcks-default: true value: - environments: - id: abc123 name: Example Title label: Example Title description: A sample description. organization_id: '500123' organization: {} library: true prior: {} successor: example_value counts: {} created_at: '2026-01-15T10:30:00Z' updated_at: '2026-01-15T10:30:00Z' '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v2/organizations: get: operationId: listOrganizations summary: List Organizations description: >- Retrieve a list of all organizations. Organizations provide multi-tenancy isolation for content, hosts, and subscriptions. tags: - Organizations parameters: - $ref: '#/components/parameters/searchQuery' - $ref: '#/components/parameters/orderQuery' - $ref: '#/components/parameters/pageQuery' - $ref: '#/components/parameters/perPageQuery' responses: '200': description: Successful response containing a list of organizations. content: application/json: schema: type: object properties: total: type: integer subtotal: type: integer page: type: integer per_page: type: integer results: type: array items: $ref: '#/components/schemas/Organization' examples: Listorganizations200Example: summary: Default listOrganizations 200 response x-microcks-default: true value: total: 10 subtotal: 10 page: 10 per_page: 10 results: - id: abc123 name: Example Title label: Example Title title: Example Title description: A sample description. created_at: '2026-01-15T10:30:00Z' updated_at: '2026-01-15T10:30:00Z' '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK /api/v2/organizations/{id}: get: operationId: showOrganization summary: Show an Organization description: Retrieve details for a specific organization. tags: - Organizations parameters: - name: id in: path required: true description: Organization identifier. schema: type: integer example: abc123 responses: '200': description: Successful response containing organization details. content: application/json: schema: $ref: '#/components/schemas/Organization' examples: Showorganization200Example: summary: Default showOrganization 200 response x-microcks-default: true value: id: abc123 name: Example Title label: Example Title title: Example Title description: A sample description. created_at: '2026-01-15T10:30:00Z' updated_at: '2026-01-15T10:30:00Z' '404': $ref: '#/components/responses/NotFound' '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK components: securitySchemes: basicAuth: type: http scheme: basic description: >- HTTP Basic authentication using Satellite username and password. oAuth2: type: oauth2 description: >- OAuth 2.0 Personal Access Token authentication for Satellite users. flows: implicit: authorizationUrl: https://satellite.example.com/users/extlogin scopes: {} parameters: hostId: name: id in: path required: true description: Host identifier (numeric ID or FQDN). schema: type: string contentViewId: name: id in: path required: true description: Content view identifier. schema: type: integer organizationIdQuery: name: organization_id in: query description: Set the current organization context for the request. schema: type: integer locationIdQuery: name: location_id in: query description: Set the current location context for the request. schema: type: integer searchQuery: name: search in: query description: >- Scoped search query string to filter results. Supports field-based search syntax (e.g., "name ~ web*"). schema: type: string orderQuery: name: order in: query description: >- Sort field and direction (e.g., "name ASC" or "id DESC"). schema: type: string pageQuery: name: page in: query description: Page number for paginated results (starting at 1). schema: type: integer minimum: 1 default: 1 perPageQuery: name: per_page in: query description: >- Number of results per page. Use "all" to retrieve all results without pagination. schema: oneOf: - type: integer minimum: 1 - type: string enum: - all default: 20 schemas: Host: type: object description: >- A host registered with Red Hat Satellite representing a physical, virtual, or cloud system. properties: id: type: integer description: Unique identifier for the host. example: abc123 name: type: string description: >- Fully qualified domain name (FQDN) of the host. example: Example Title ip: type: - string - 'null' description: Primary IPv4 address of the host. format: ipv4 example: example_value ip6: type: - string - 'null' description: Primary IPv6 address of the host. format: ipv6 example: example_value mac: type: - string - 'null' description: Primary MAC address of the host. example: example_value environment_id: type: - integer - 'null' description: Puppet environment identifier. example: '500123' hostgroup_id: type: - integer - 'null' description: Host group identifier. example: '500123' hostgroup_name: type: - string - 'null' description: Host group name. example: example_value hostgroup_title: type: - string - 'null' description: >- Full host group title including parent groups. example: example_value operatingsystem_id: type: - integer - 'null' description: Operating system identifier. example: '500123' operatingsystem_name: type: - string - 'null' description: Operating system name and version. example: example_value architecture_id: type: - integer - 'null' description: Architecture identifier. example: '500123' architecture_name: type: - string - 'null' description: Architecture name (e.g., x86_64). example: example_value domain_id: type: - integer - 'null' description: DNS domain identifier. example: '500123' domain_name: type: - string - 'null' description: DNS domain name. example: example_value subnet_id: type: - integer - 'null' description: IPv4 subnet identifier. example: '500123' subnet_name: type: - string - 'null' description: IPv4 subnet name. example: example_value subnet6_id: type: - integer - 'null' description: IPv6 subnet identifier. example: '500123' compute_resource_id: type: - integer - 'null' description: >- Compute resource identifier. Null for bare metal hosts. example: '500123' compute_resource_name: type: - string - 'null' description: Compute resource name. example: example_value compute_profile_id: type: - integer - 'null' description: Compute profile identifier. example: '500123' medium_id: type: - integer - 'null' description: Installation medium identifier. example: '500123' ptable_id: type: - integer - 'null' description: Partition table identifier. example: '500123' model_id: type: - integer - 'null' description: Hardware model identifier. example: '500123' model_name: type: - string - 'null' description: Hardware model name. example: example_value location_id: type: integer description: Location identifier. example: '500123' location_name: type: string description: Location name. example: example_value organization_id: type: integer description: Organization identifier. example: '500123' organization_name: type: string description: Organization name. example: example_value owner_id: type: - integer - 'null' description: Owner identifier. example: '500123' owner_type: type: - string - 'null' description: Owner type (User or Usergroup). enum: - User - Usergroup - example: User managed: type: boolean description: >- Whether the host is managed by Satellite for provisioning and configuration. example: true build: type: boolean description: Whether the host is in build mode. example: true enabled: type: boolean description: >- Whether configuration management reports are evaluated for this host. example: true comment: type: - string - 'null' description: Additional information about the host. example: example_value uuid: type: - string - 'null' description: Unique identifier from compute resource. example: '500123' global_status: type: integer description: >- Global status of the host (0=OK, 1=Warning, 2=Error). example: 10 global_status_label: type: string description: Human-readable global status label. enum: - OK - Warning - Error example: OK content_facet_attributes: type: object description: >- Content-related attributes from the Katello content facet. properties: id: type: integer content_view_id: type: integer content_view_name: type: string lifecycle_environment_id: type: integer lifecycle_environment_name: type: string content_source_id: type: - integer - 'null' errata_counts: type: object properties: security: type: integer bugfix: type: integer enhancement: type: integer total: type: integer applicable_errata_count: type: integer upgradable_package_count: type: integer example: example_value subscription_facet_attributes: type: object description: >- Subscription-related attributes from the Katello subscription facet. properties: id: type: integer uuid: type: string description: >- Subscription manager UUID for the host. registered_at: type: string format: date-time last_checkin: type: - string - 'null' format: date-time service_level: type: - string - 'null' release_version: type: - string - 'null' autoheal: type: boolean registered_through: type: - string - 'null' example: example_value interfaces: type: array description: Network interfaces associated with the host. items: $ref: '#/components/schemas/HostInterface' example: [] puppetclasses: type: array items: type: object example: [] all_puppetclasses: type: array items: type: object example: [] created_at: type: string format: date-time description: Timestamp when the host was created. example: '2026-01-15T10:30:00Z' updated_at: type: string format: date-time description: Timestamp when the host was last updated. example: '2026-01-15T10:30:00Z' installed_at: type: - string - 'null' format: date-time description: Timestamp when the host OS was installed. example: '2026-01-15T10:30:00Z' last_report: type: - string - 'null' format: date-time description: >- Timestamp of the last configuration management report. example: '2026-01-15T10:30:00Z' HostCreate: type: object description: Parameters for creating a new host. required: - name - organization_id - location_id properties: name: type: string description: Hostname or FQDN. example: Example Title location_id: type: integer description: Location identifier. example: '500123' organization_id: type: integer description: Organization identifier. example: '500123' ip: type: string description: IPv4 address (not required when using DHCP proxy). format: ipv4 example: example_value mac: type: string description: >- MAC address (required for managed bare metal hosts). example: example_value architecture_id: type: integer description: Architecture identifier (required if managed). example: '500123' domain_id: type: integer description: Domain identifier (required if managed). example: '500123' subnet_id: type: integer description: Subnet identifier (required if managed). example: '500123' operatingsystem_id: type: integer description: Operating system identifier (required if managed). example: '500123' medium_id: type: integer description: >- Installation medium identifier (required for non-image provisioning if managed). example: '500123' ptable_id: type: integer description: >- Partition table identifier (required if managed and no custom partition layout). example: '500123' compute_resource_id: type: integer description: >- Compute resource identifier. Null indicates bare metal. example: '500123' compute_profile_id: type: integer description: Compute profile identifier. example: '500123' hostgroup_id: type: integer description: Host group identifier. example: '500123' root_pass: type: string description: Root password (required if managed unless inherited). format: password example: example_value owner_id: type: integer description: Owner identifier. example: '500123' owner_type: type: string description: Owner type. enum: - User - Usergroup example: User build: type: boolean description: Enable build mode for provisioning. example: true managed: type: boolean description: >- Whether the host should be managed by Satellite. example: true comment: type: string description: Additional information about the host. example: example_value content_facet_attributes: type: object properties: content_view_id: type: integer description: Content view identifier. lifecycle_environment_id: type: integer description: Lifecycle environment identifier. content_source_id: type: integer description: Content source (Capsule) identifier. example: example_value interfaces_attributes: type: array description: Network interface configurations. items: $ref: '#/components/schemas/HostInterfaceCreate' example: [] HostUpdate: type: object description: Parameters for updating an existing host. properties: name: type: string example: Example Title ip: type: string format: ipv4 example: example_value mac: type: string example: example_value architecture_id: type: integer example: '500123' domain_id: type: integer example: '500123' subnet_id: type: integer example: '500123' operatingsystem_id: type: integer example: '500123' hostgroup_id: type: integer example: '500123' location_id: type: integer example: '500123' organization_id: type: integer example: '500123' owner_id: type: integer example: '500123' owner_type: type: string enum: - User - Usergroup example: User build: type: boolean example: true managed: type: boolean example: true comment: type: string example: example_value content_facet_attributes: type: object properties: content_view_id: type: integer lifecycle_environment_id: type: integer content_source_id: type: integer example: example_value interfaces_attributes: type: array items: $ref: '#/components/schemas/HostInterfaceCreate' example: [] HostInterface: type: object description: A network interface associated with a host. properties: id: type: integer example: abc123 mac: type: - string - 'null' example: example_value ip: type: - string - 'null' format: ipv4 example: example_value ip6: type: - string - 'null' format: ipv6 example: example_value type: type: string enum: - interface - bmc - bond - bridge example: interface name: type: - string - 'null' example: Example Title subnet_id: type: - integer - 'null' example: '500123' subnet6_id: type: - integer - 'null' example: '500123' domain_id: type: - integer - 'null' example: '500123' identifier: type: - string - 'null' description: Device identifier (e.g., eth0, ens192). example: example_value managed: type: boolean example: true primary: type: boolean example: true provision: type: boolean example: true virtual: type: boolean example: true tag: type: - string - 'null' description: VLAN tag. example: example_value mtu: type: - integer - 'null' description: Maximum transmission unit. example: example_value attached_to: type: - string - 'null' description: Parent interface identifier. example: example_value HostInterfaceCreate: type: object description: Parameters for creating or updating a host network interface. properties: id: type: integer description: >- Interface identifier (for updating existing interfaces). example: abc123 mac: type: string description: MAC address. example: example_value ip: type: string description: IPv4 address. format: ipv4 example: example_value ip6: type: string description: IPv6 address. format: ipv6 example: example_value type: type: string description: Interface type. enum: - interface - bmc - bond - bridge example: interface name: type: string description: DNS name. example: Example Title subnet_id: type: integer description: IPv4 subnet identifier. example: '500123' subnet6_id: type: integer description: IPv6 subnet identifier. example: '500123' domain_id: type: integer description: Domain identifier. example: '500123' identifier: type: string description: Device identifier (e.g., eth0). example: example_value managed: type: boolean description: Whether DNS and DHCP are managed for this interface. example: true primary: type: boolean description: Whether this is the primary interface for FQDN. example: true provision: type: boolean description: Whether this interface is used for provisioning. example: true virtual: type: boolean description: Whether this is a virtual interface (alias or VLAN). example: true tag: type: string description: VLAN tag. example: example_value mtu: type: integer description: Maximum transmission unit. example: 10 attached_to: type: string description: Parent interface identifier. example: example_value username: type: string description: BMC username (BMC interfaces only). example: example_value password: type: string description: BMC password (BMC interfaces only). format: password example: example_value provider: type: string description: BMC provider (BMC interfaces only). enum: - IPMI - Redfish - SSH example: IPMI mode: type: string description: Bond mode (bond interfaces only). enum: - balance-rr - active-backup - balance-xor - broadcast - '802.3ad' - balance-tlb - balance-alb example: balance-rr attached_devices: type: array description: >- Slave or bridge member interface identifiers. items: type: string example: [] bond_options: type: string description: Additional bond options (space-separated). example: example_value ContentView: type: object description: >- A content view defining a curated set of repositories and content available to hosts. properties: id: type: integer description: Unique identifier for the content view. example: abc123 name: type: string description: Name of the content view. example: Example Title label: type: string description: >- Unique label for the content view (auto-generated from name). example: Example Title description: type: - string - 'null' description: Description of the content view. example: A sample description. organization_id: type: integer description: Organization this content view belongs to. example: '500123' organization: type: object properties: name: type: string label: type: string id: type: integer example: example_value composite: type: boolean description: >- Whether this is a composite content view combining other content view versions. example: true rolling: type: boolean description: Whether this is a rolling content view. example: true auto_publish: type: boolean description: >- Whether composite content views auto-publish when a component is updated. example: true solve_dependencies: type: boolean description: >- Whether RPM dependencies are resolved during publish. example: true import_only: type: boolean description: >- Whether this content view is only for upstream imports. example: true generated_for: type: - string - 'null' description: >- If generated, indicates the purpose (e.g., import or export). example: example_value default: type: boolean description: >- Whether this is the default content view (every organization has one). example: true repository_ids: type: array description: Identifiers of repositories in this content view. items: type: integer example: [] repositories: type: array description: Repositories included in this content view. items: type: object properties: id: type: integer name: type: string label: type: string content_type: type: string example: [] component_ids: type: array description: >- Content view version IDs for composite content views. items: type: integer example: [] versions: type: array description: Published versions of this content view. items: type: object properties: id: type: integer version: type: string published: type: string format: date-time environment_ids: type: array items: type: integer example: [] environments: type: array description: Lifecycle environments this content view is in. items: type: object properties: id: type: integer name: type: string label: type: string example: [] activation_keys: type: array description: Activation keys using this content view. items: type: object properties: id: type: integer name: type: string example: [] next_version: type: string description: Next version number to be published. example: example_value last_published: type: - string - 'null' format: date-time description: Timestamp of the last publish. example: '2026-01-15T10:30:00Z' latest_version: type: - string - 'null' description: Latest published version number. example: example_value latest_version_id: type: - integer - 'null' description: Identifier of the latest published version. example: '500123' created_at: type: string format: date-time example: '2026-01-15T10:30:00Z' updated_at: type: string format: date-time example: '2026-01-15T10:30:00Z' ContentViewCreate: type: object description: Parameters for creating a new content view. required: - name - organization_id properties: organization_id: type: integer description: Organization identifier. example: '500123' name: type: string description: Name of the content view. example: Example Title label: type: string description: >- Content view label (auto-generated from name if omitted). example: Example Title description: type: string description: Description of the content view. example: A sample description. composite: type: boolean description: Whether this is a composite content view. default: false example: true rolling: type: boolean description: Whether this is a rolling content view. default: false example: true auto_publish: type: boolean description: >- Auto-publish composite view when a component updates. default: false example: true solve_dependencies: type: boolean description: Resolve RPM dependencies during publish. default: false example: true import_only: type: boolean description: Mark as import-only content view. default: false example: true repository_ids: type: array description: Repository IDs to include. items: type: integer example: [] component_ids: type: array description: >- Content view version IDs for composite views. items: type: integer example: [] environment_ids: type: array description: >- Lifecycle environment IDs for rolling content views. items: type: integer example: [] ContentViewUpdate: type: object description: Parameters for updating a content view. properties: name: type: string example: Example Title description: type: string example: A sample description. auto_publish: type: boolean example: true solve_dependencies: type: boolean example: true repository_ids: type: array items: type: integer example: [] component_ids: type: array items: type: integer example: [] environment_ids: type: array items: type: integer example: [] Subscription: type: object description: >- A Red Hat subscription providing product entitlements for an organization. properties: id: type: integer description: Unique identifier for the subscription. example: abc123 cp_id: type: string description: Candlepin subscription identifier. example: '500123' subscription_id: type: integer description: Subscription pool identifier. example: '500123' name: type: string description: Subscription name (product name). example: Example Title description: type: - string - 'null' description: Subscription description. example: A sample description. product_id: type: string description: Red Hat product identifier. example: '500123' product_name: type: string description: Red Hat product name. example: example_value contract_number: type: - string - 'null' description: Contract number associated with the subscription. example: example_value account_number: type: - string - 'null' description: Customer account number. example: example_value quantity: type: integer description: Total quantity of entitlements in the subscription. example: 10 consumed: type: integer description: Number of entitlements currently consumed. example: 10 available: type: integer description: Number of entitlements available for attachment. example: 10 start_date: type: string format: date-time description: Subscription start date. example: '2026-01-15T10:30:00Z' end_date: type: string format: date-time description: Subscription end date. example: '2026-01-15T10:30:00Z' support_level: type: - string - 'null' description: Support level (e.g., Premium, Standard, Self-Support). example: example_value type: type: string description: Subscription type. example: example_value virt_only: type: boolean description: Whether this subscription is for virtual systems only. example: true virt_who: type: boolean description: Whether this subscription requires virt-who reporting. example: true multi_entitlement: type: boolean description: >- Whether multiple entitlements can be attached to a single host. example: true stacking_id: type: - string - 'null' description: Stacking identifier for stackable subscriptions. example: '500123' upstream_pool_id: type: - string - 'null' description: Pool identifier from the upstream subscription source. example: '500123' organization_id: type: integer description: Organization this subscription belongs to. example: '500123' provided_products: type: array description: Products provided by this subscription. items: type: object properties: id: type: string name: type: string example: [] created_at: type: string format: date-time example: '2026-01-15T10:30:00Z' updated_at: type: string format: date-time example: '2026-01-15T10:30:00Z' LifecycleEnvironment: type: object description: >- A lifecycle environment defining a stage in the content promotion path. properties: id: type: integer description: Unique identifier for the lifecycle environment. example: abc123 name: type: string description: Name of the lifecycle environment. example: Example Title label: type: string description: Unique label for the lifecycle environment. example: Example Title description: type: - string - 'null' description: Description of the lifecycle environment. example: A sample description. organization_id: type: integer description: Organization this environment belongs to. example: '500123' organization: type: object properties: name: type: string label: type: string id: type: integer example: example_value library: type: boolean description: Whether this is the Library environment. example: true prior: type: object description: Prior environment in the promotion path. properties: id: type: integer name: type: string example: example_value successor: type: - object - 'null' description: Successor environment in the promotion path. properties: id: type: integer name: type: string example: example_value counts: type: object description: Content counts for this environment. properties: content_hosts: type: integer content_views: type: integer example: example_value created_at: type: string format: date-time example: '2026-01-15T10:30:00Z' updated_at: type: string format: date-time example: '2026-01-15T10:30:00Z' Organization: type: object description: >- An organization providing multi-tenancy isolation for content, hosts, and subscriptions. properties: id: type: integer description: Unique identifier for the organization. example: abc123 name: type: string description: Organization name. example: Example Title label: type: string description: Unique label for the organization. example: Example Title title: type: string description: Organization title. example: Example Title description: type: - string - 'null' description: Organization description. example: A sample description. created_at: type: string format: date-time example: '2026-01-15T10:30:00Z' updated_at: type: string format: date-time example: '2026-01-15T10:30:00Z' ForemanTask: type: object description: >- An asynchronous task object returned for long-running operations such as publishing content views or uploading manifests. properties: id: type: string format: uuid description: Unique task identifier. example: abc123 label: type: string description: Machine-readable task label. example: Example Title pending: type: boolean description: Whether the task is still pending. example: true action: type: string description: Human-readable description of the task action. example: example_value username: type: string description: User who initiated the task. example: example_value state: type: string description: Current state of the task. enum: - planned - running - paused - stopped example: planned result: type: string description: Result of the task. enum: - pending - success - error - warning example: pending progress: type: number description: Task progress as a decimal (0.0 to 1.0). minimum: 0 maximum: 1 example: 42.5 started_at: type: - string - 'null' format: date-time example: '2026-01-15T10:30:00Z' ended_at: type: - string - 'null' format: date-time example: '2026-01-15T10:30:00Z' humanized: type: object properties: action: type: string input: type: array items: type: string output: type: string errors: type: array items: type: string example: example_value responses: Unauthorized: description: Authentication credentials are missing or invalid. content: application/json: schema: type: object properties: error: type: object properties: message: type: string example: >- Unable to authenticate user. NotFound: description: The requested resource was not found. content: application/json: schema: type: object properties: error: type: object properties: message: type: string example: Resource not found. UnprocessableEntity: description: >- The request was well-formed but contained validation errors. content: application/json: schema: type: object properties: error: type: object properties: id: type: integer errors: type: object additionalProperties: type: array items: type: string full_messages: type: array items: type: string