Red Hat Satellite Subscriptions API

Manage Red Hat subscriptions and entitlements for organizations and hosts.

Operations 4

GET /katello/api/v2/organizations/{organization_id}/subscriptions List Organization Subscriptions #
POST /katello/api/v2/organizations/{organization_id}/subscriptions/upload Upload a Subscription Manifest #
POST /katello/api/v2/organizations/{organization_id}/subscriptions/delete_manifest Delete a Subscription Manifest #
PUT /katello/api/v2/organizations/{organization_id}/subscriptions/refresh_manifest Refresh a Subscription Manifest #

Documentation

Specifications

Schemas & Data

📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/json-schema/red-hat-satellite-host-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/json-schema/red-hat-satellite-host-create-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/json-schema/red-hat-satellite-host-update-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/json-schema/red-hat-satellite-host-interface-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/json-schema/red-hat-satellite-host-interface-create-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/json-schema/red-hat-satellite-content-view-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/json-schema/red-hat-satellite-content-view-create-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/json-schema/red-hat-satellite-content-view-update-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/json-schema/red-hat-satellite-subscription-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/json-schema/red-hat-satellite-lifecycle-environment-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/json-schema/red-hat-satellite-organization-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/json-schema/red-hat-satellite-foreman-task-schema.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/json-structure/red-hat-satellite-host-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/json-structure/red-hat-satellite-host-create-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/json-structure/red-hat-satellite-host-update-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/json-structure/red-hat-satellite-host-interface-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/json-structure/red-hat-satellite-host-interface-create-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/json-structure/red-hat-satellite-content-view-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/json-structure/red-hat-satellite-content-view-create-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/json-structure/red-hat-satellite-content-view-update-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/json-structure/red-hat-satellite-subscription-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/json-structure/red-hat-satellite-lifecycle-environment-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/json-structure/red-hat-satellite-organization-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/json-structure/red-hat-satellite-foreman-task-structure.json

Other Resources

🔗
Examples
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/examples/red-hat-satellite-host-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/examples/red-hat-satellite-host-create-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/examples/red-hat-satellite-host-update-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/examples/red-hat-satellite-host-interface-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/examples/red-hat-satellite-host-interface-create-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/examples/red-hat-satellite-content-view-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/examples/red-hat-satellite-content-view-create-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/examples/red-hat-satellite-content-view-update-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/examples/red-hat-satellite-subscription-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/examples/red-hat-satellite-lifecycle-environment-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/examples/red-hat-satellite-organization-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/examples/red-hat-satellite-foreman-task-example.json
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/red-hat-satellite/refs/heads/main/json-ld/red-hat-satellite-context.jsonld

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/red-hat-satellite-subscriptions-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

red-hat-satellite-subscriptions-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Red Hat Satellite REST Content Views Subscriptions 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
servers:
- url: https://satellite.example.com
  description: Red Hat Satellite Server
security:
- basicAuth: []
- oAuth2: []
tags:
- 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
paths:
  /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
components:
  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.
  parameters:
    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
    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
    pageQuery:
      name: page
      in: query
      description: Page number for paginated results (starting at 1).
      schema:
        type: integer
        minimum: 1
        default: 1
  schemas:
    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'
    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
  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: {}
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