Application & Profile APIs#

Overview#

The Application and Profile APIs are designed to manage and introspect the applications and profiles in an Omniverse on DGX Cloud deployment. These APIs are divided into three main areas:

  • Applications

  • Application Version

  • Application Profiles

Applications#

Manages the applications available in a deployment.

Application Versions#

Manages the versions of an application available in an Omniverse on DGX Cloud instance. Application versions are in the format of major.minor.patch[-pre-release][+build-metadata].

  • The first part before the hyphen (-) indicates the major.minor.patch version.

  • The part between the hyphen (-) and plus (+) sign (if present) is the pre-release version.

  • The part after the plus (+) sign (if present) is the build metadata.

Application version examples:
  • 1.0.0

  • 2.1.3-alpha.1

  • 3.2.4-beta+001

Application Profiles#

These Application Profiles are predefined runtime environments (for a given application) that enable you to fine tune an instance of an application, while allowing you to pre-configure a set of resources, additional configuration etc.

Use Cases#

Introspection#

The primary use case for these APIs is to provide a detailed view of the applications, their versions and runtime profiles available in a deployment.

Developer Integration#

For developers aiming to integrate Omniverse Kit Application Streams into custom web environments, these APIs provide the necessary endpoints to check application availability and initiate streams based on specific applications, their versions and profiles.

Summary#

These APIs allow seamless application management and streaming experience, providing flexibility to developers for integrating streaming capabilities into custom solutions.

Application APIs#

GET /cfg/apps - Return all registered applications

Retrieve a list of all registered applications.

Request Parameters

  • tags (array, optional): A list of tags to filter applications.

The request was successful. Below is the response body.

{
  "count": 2,
  "items": [
    {
      "id": "usd-composer",
      "name": "Omniverse USD Composer",
      "description": "Create 3D worlds.",
      "tags": ["multimedia", "entertainment"]
    },
    {
      "id": "usd-explorer",
      "name": "Omniverse USD Explorer",
      "description": "Explore USD scenes.",
      "tags": ["planning"]
    }
  ]
}

Access to the requested resource was forbidden.

The requested resource was not found.

There was a validation error in the request.

GET /cfg/apps/{id} - Retrieve application details

Retrieve metadata about a specific application by its unique ID.

Request Parameters

  • id (string, required): Unique identifier of the application.

{
  "id": "usd-composer",
  "name": "Omniverse USD Composer",
  "description": "Create 3D worlds.",
  "tags": ["multimedia", "entertainment"]
}

Access to the requested resource was forbidden.

The requested application was not found.

Application Version APIs#

GET /cfg/apps/{id}/versions - List all versions of an application

Retrieve a list of all versions for a specific application.

Request Parameters

  • id (string, required): Unique identifier of the application.

The request was successful. Below is the response body.

{
  "count": 2,
  "items": [
    {
      "version": "1.2.3-alpha.1"
    },
    {
      "version": "2023.2.0"
    }
  ]
}

Access to the requested resource was forbidden.

The requested resource was not found.

GET /cfg/apps/{id}/versions/{version} - Retrieve specific version details

Retrieve metadata for a specific version of an application.

Request Parameters

  • id (string, required): Unique identifier of the application.

  • version (string, required): The version identifier in the format major.minor.patch.

The request was successful. Below is the response body.

{
  "version": "2023.2.0",
  "description": "Version 2023.2.0"
}

Access to the requested resource was forbidden.

The requested version was not found.

Application Profile APIs#

GET /cfg/apps/{id}/versions/{version}/profiles - List all profiles for a specific version

Retrieve a list of all profiles for a specific version of an application.

Request Parameters

  • id (string, required): Unique identifier of the application.

  • version (string, required): Version of the application.

The request was successful. Below is the response body.

{
  "count": 2,
  "items": [
    {
      "id": "default",
      "name": "Default application profile",
      "description": "The default profile for running the application."
    },
    {
      "id": "high-mem",
      "name": "High memory profile",
      "description": "A profile with increased memory allocation."
    }
  ]
}

You do not have permission to access this resource.

The requested profiles were not found.

There was a validation error in the request.

GET /cfg/apps/{id}/versions/{version}/profiles/{profile} - Retrieve a specific profile

Retrieve metadata for a specific profile of an application version.

Request Parameters

  • id (string, required): Unique identifier of the application.

  • version (string, required): Version of the application.

  • profile (string, required): Unique identifier of the profile.

The request was successful. Below is the response body.

{
  "id": "default",
  "name": "Default application profile",
  "description": "The default profile for running the application."
}

You do not have permission to access this profile.

The requested profile was not found.