APIs

Red Hat Advanced Cluster Management for Kubernetes 2.1

APIs

Red Hat Advanced Cluster Management for Kubernetes Team

Abstract

API guide for Red Hat Advanced Cluster Management for Kubernetes

Chapter 1. APIs

You can access APIs to create and manage application resources, channels, subscriptions, and to query information.

User required access: You can only perform actions that your role is assigned. Learn about access requirements from the Role-based access control documentation.

For more information, review the API documentation for each of the following resources:

1.1. Clusters API

1.1.1. Overview

This documentation is for the cluster resource for Red Hat Advanced Cluster Management for Kubernetes. Cluster resource has four possible requests: create, query, delete and update.

1.1.1.1. Version information

Version : 2.1.0

1.1.1.2. Contact information

Contact Email : apiteam@swagger.io

1.1.1.3. License information

License : Apache 2.0
License URL : http://www.apache.org/licenses/LICENSE-2.0.html
Terms of service : http://swagger.io/terms/

1.1.1.4. URI scheme

BasePath : /kubernetes/apis
Schemes : HTTPS

1.1.1.5. Tags

  • cluster.open-cluster-management.io : Create and manage clusters

1.1.1.6. External Docs

Description : Find out more about Swagger.
URL : http://swagger.io

1.1.2. Paths

1.1.2.1. Query all clusters

GET /cluster.open-cluster-management.io/v1/managedclusters
1.1.2.1.1. Description

Query your clusters for more details.

1.1.2.1.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

1.1.2.1.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.1.2.1.4. Consumes
  • cluster/yaml
1.1.2.1.5. Tags
  • cluster.open-cluster-management.io

1.1.2.2. Create a cluster

POST /cluster.open-cluster-management.io/v1/managedclusters
1.1.2.2.1. Description

Create a cluster

1.1.2.2.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Body

body
required

Parameters describing the cluster to be created.

Cluster

1.1.2.2.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.1.2.2.4. Consumes
  • cluster/yaml
1.1.2.2.5. Tags
  • cluster.open-cluster-management.io
1.1.2.2.6. Example HTTP request
1.1.2.2.6.1. Request body
{
  "apiVersion" : "cluster.open-cluster-management.io/v1",
  "kind" : "ManagedCluster",
  "metadata" : {
    "labels" : {
      "vendor" : "OpenShift"
    },
    "name" : "cluster1"
  },
  "spec": {
    "hubAcceptsClient": true,
    "managedClusterClientConfigs": [
      {
        "caBundle": "test",
        "url": "https://test.com"
      }
    ]
  },
  "status" : { }
}

1.1.2.3. Query a single cluster

GET /cluster.open-cluster-management.io/v1/managedclusters/{cluster_name}
1.1.2.3.1. Description

Query a single cluster for more details.

1.1.2.3.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

cluster_name
required

Name of the cluster that you want to query.

string

1.1.2.3.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.1.2.3.4. Tags
  • cluster.open-cluster-management.io

1.1.2.4. Delete a cluster

DELETE /cluster.open-cluster-management.io/v1/managedclusters/{cluster_name}
1.1.2.4.1. Description

Delete a single cluster

1.1.2.4.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

cluster_name
required

Name of the cluster that you want to delete.

string

1.1.2.4.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.1.2.4.4. Tags
  • cluster.open-cluster-management.io

1.1.3. Definitions

1.1.3.1. Cluster

NameSchema

apiVersion
required

string

kind
required

string

metadata
required

object

spec
required

spec

spec

NameSchema

hubAcceptsClient
required

bool

managedClusterClientConfigs
optional

< managedClusterClientConfigs > array

leaseDurationSeconds
optional

integer (int32)

managedClusterClientConfigs

NameDescriptionSchema

URL
required

 

string

CABundle
optional

Pattern : "^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$"

string (byte)

1.2. Clustersets API (v1alpha1)

1.2.1. Overview

This documentation is for the Clusterset resource for Red Hat Advanced Cluster Management for Kubernetes. Clusterset resource has four possible requests: create, query, delete and update.

1.2.1.1. Version information

Version : 2.1.0

1.2.1.2. Contact information

Contact Email : apiteam@swagger.io

1.2.1.3. License information

License : Apache 2.0
License URL : http://www.apache.org/licenses/LICENSE-2.0.html
Terms of service : http://swagger.io/terms/

1.2.1.4. URI scheme

BasePath : /kubernetes/apis
Schemes : HTTPS

1.2.1.5. Tags

  • cluster.open-cluster-management.io : Create and manage Clustersets

1.2.1.6. External Docs

Description : Find out more about Swagger.
URL : http://swagger.io

1.2.2. Paths

1.2.2.1. Query all clustersets

GET /cluster.open-cluster-management.io/v1alpha1/managedclustersets
1.2.2.1.1. Description

Query your Clustersets for more details.

1.2.2.1.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

1.2.2.1.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.2.2.1.4. Consumes
  • clusterset/yaml
1.2.2.1.5. Tags
  • cluster.open-cluster-management.io

1.2.2.2. Create a clusterset

POST /cluster.open-cluster-management.io/v1alpha1/managedclustersets
1.2.2.2.1. Description

Create a clusterset.

1.2.2.2.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Body

body
required

Parameters describing the clusterset to be created.

Clusterset

1.2.2.2.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.2.2.2.4. Consumes
  • clusterset/yaml
1.2.2.2.5. Tags
  • cluster.open-cluster-management.io
1.2.2.2.6. Example HTTP request
1.2.2.2.6.1. Request body
{
  "apiVersion" : "cluster.open-cluster-management.io/v1alpha1",
  "kind" : "ManagedClusterSet",
  "metadata" : {
    "name" : "clusterset1"
  },
  "spec": { },
  "status" : { }
}

1.2.2.3. Query a single clusterset

GET /cluster.open-cluster-management.io/v1alpha1/managedclustersets/{clusterset_name}
1.2.2.3.1. Description

Query a single clusterset for more details.

1.2.2.3.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

clusterset_name
required

Name of the clusterset that you want to query.

string

1.2.2.3.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.2.2.3.4. Tags
  • cluster.open-cluster-management.io

1.2.2.4. Delete a clusterset

DELETE /cluster.open-cluster-management.io/v1alpha1/managedclustersets/{clusterset_name}
1.2.2.4.1. Description

Delete a single clusterset.

1.2.2.4.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

clusterset_name
required

Name of the clusterset that you want to delete.

string

1.2.2.4.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.2.2.4.4. Tags
  • cluster.open-cluster-management.io

1.2.3. Definitions

1.2.3.1. Clusterset

NameSchema

apiVersion
required

string

kind
required

string

metadata
required

object

1.3. Clustersetbindings API (v1alpha1)

1.3.1. Overview

This documentation is for the clustersetbinding resource for Red Hat Advanced Cluster Management for Kubernetes. Clustersetbinding resource has four possible requests: create, query, delete and update.

1.3.1.1. Version information

Version : 2.1.0

1.3.1.2. Contact information

Contact Email : apiteam@swagger.io

1.3.1.3. License information

License : Apache 2.0
License URL : http://www.apache.org/licenses/LICENSE-2.0.html
Terms of service : http://swagger.io/terms/

1.3.1.4. URI scheme

BasePath : /kubernetes/apis
Schemes : HTTPS

1.3.1.5. Tags

  • cluster.open-cluster-management.io : Create and manage clustersetbindings

1.3.1.6. External Docs

Description : Find out more about Swagger.
URL : http://swagger.io

1.3.2. Paths

1.3.2.1. Query all clustersetbindings

GET /cluster.open-cluster-management.io/v1alpha1/namespaces/{namespace}/managedclustersetbindings
1.3.2.1.1. Description

Query your clustersetbindings for more details.

1.3.2.1.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

namespace
required

Namespace that you want to use, for example, default.

string

1.3.2.1.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.3.2.1.4. Consumes
  • clustersetbinding/yaml
1.3.2.1.5. Tags
  • cluster.open-cluster-management.io

1.3.2.2. Create a clustersetbinding

POST /cluster.open-cluster-management.io/v1alpha1/namespaces/{namespace}/managedclustersetbindings
1.3.2.2.1. Description

Create a clustersetbinding.

1.3.2.2.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

namespace
required

Namespace that you want to use, for example, default.

string

Body

body
required

Parameters describing the clustersetbinding to be created.

Clustersetbinding

1.3.2.2.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.3.2.2.4. Consumes
  • clustersetbinding/yaml
1.3.2.2.5. Tags
  • cluster.open-cluster-management.io
1.3.2.2.6. Example HTTP request
1.3.2.2.6.1. Request body
{
  "apiVersion" : "cluster.open-cluster-management.io/v1alpha1",
  "kind" : "ManagedClusterSetBinding",
  "metadata" : {
    "name" : "clusterset1",
    "namespace" : "ns1"
  },
 "spec": {
    "clusterSet": "clusterset1"
  },
  "status" : { }
}

1.3.2.3. Query a single clustersetbinding

GET /cluster.open-cluster-management.io/v1alpha1/namespaces/{namespace}/managedclustersetbindings/{clustersetbinding_name}
1.3.2.3.1. Description

Query a single clustersetbinding for more details.

1.3.2.3.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

namespace
required

Namespace that you want to use, for example, default.

string

Path

clustersetbinding_name
required

Name of the clustersetbinding that you want to query.

string

1.3.2.3.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.3.2.3.4. Tags
  • cluster.open-cluster-management.io

1.3.2.4. Delete a clustersetbinding

DELETE /cluster.open-cluster-management.io/v1alpha1/managedclustersetbindings/{clustersetbinding_name}
1.3.2.4.1. Description

Delete a single clustersetbinding.

1.3.2.4.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

namespace
required

Namespace that you want to use, for example, default.

string

Path

clustersetbinding_name
required

Name of the clustersetbinding that you want to delete.

string

1.3.2.4.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.3.2.4.4. Tags
  • cluster.open-cluster-management.io

1.3.3. Definitions

1.3.3.1. Clustersetbinding

NameSchema

apiVersion
required

string

kind
required

string

metadata
required

object

spec
required

spec

spec

NameSchema

clusterSet
required

string

1.4. Channels API

1.4.1. Overview

This documentation is for the Channel resource for Red Hat Advanced Cluster Management for Kubernetes. The Channel resource has four possible requests: create, query, delete and update.

1.4.1.1. Version information

Version : 2.1.0

1.4.1.2. Contact information

Contact Email : apiteam@swagger.io

1.4.1.3. License information

License : Apache 2.0
License URL : http://www.apache.org/licenses/LICENSE-2.0.html
Terms of service : http://swagger.io/terms/

1.4.1.4. URI scheme

BasePath : /kubernetes/apis
Schemes : HTTPS

1.4.1.5. Tags

  • channels.apps.open-cluster-management.io : Create and manage deployables

1.4.1.6. External Docs

Description : Find out more about Swagger.
URL : http://swagger.io

1.4.2. Paths

1.4.2.1. Create a channel

POST /apps.open-cluster-management.io/v1/namespaces/{namespace}/channels
1.4.2.1.1. Description

Create a channel.

1.4.2.1.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

namespace
required

Namespace that you want to use, for example, default.

string

Body

body
required

Parameters describing the deployable to be created.

Channel

1.4.2.1.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.4.2.1.4. Consumes
  • application/yaml
1.4.2.1.5. Tags
  • channels.apps.open-cluster-management.io
1.4.2.1.6. Example HTTP request
1.4.2.1.6.1. Request body
{
  "apiVersion" : "apps.open-cluster-management.io/v1",
  "kind" : "Channel",
  "name" : "sample-channel",
  "namespace" : "default",
  "spec" : {
    "type" : "Git",
    "pathname" : "https://github.com/IBM/charts.git",
    "configMapRef" : {
      "name" : "bookinfo-resource-filter-configmap",
      "kind" : "configmap"
    }
  }
}

1.4.2.2. Query all channels for the target namespace

GET /apps.open-cluster-management.io/v1/namespaces/{namespace}/channels
1.4.2.2.1. Description

Query your channels for more details.

1.4.2.2.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

namespace
required

Namespace that you want to use, for example, default.

string

1.4.2.2.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.4.2.2.4. Consumes
  • application/yaml
1.4.2.2.5. Tags
  • channels.apps.open-cluster-management.io

1.4.2.3. Query a single channels of a namespace

GET /apps.open-cluster-management.io/v1/namespaces/{namespace}/channels/{channel_name}
1.4.2.3.1. Description

Query a single channels for more details.

1.4.2.3.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

channel_name
required

Name of the deployable that you wan to query.

string

Path

namespace
required

Namespace that you want to use, for example, default.

string

1.4.2.3.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.4.2.3.4. Tags
  • channels.apps.open-cluster-management.io

1.4.2.4. Delete a Channel

DELETE /apps.open-cluster-management.io/v1/namespaces/{namespace}/channels/{channel_name}
1.4.2.4.1. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

channel_name
required

Name of the Channel that you want to delete.

string

Path

namespace
required

Namespace that you want to use, for example, default.

string

1.4.2.4.2. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.4.2.4.3. Tags
  • channels.apps.open-cluster-management.io

1.4.3. Definitions

1.4.3.1. Channel

NameSchema

apiVersion
required

string

kind
required

string

metadata
required

object

spec
required

spec

spec

NameDescriptionSchema

configMapRef
optional

ObjectReference contains enough information to let you inspect or modify the referred object.

configMapRef

gates
optional

ChannelGate defines criteria for promote to channel

gates

pathname
required

 

string

secretRef
optional

ObjectReference contains enough information to let you inspect or modify the referred object.

secretRef

sourceNamespaces
optional

 

< enum (Namespace, HelmRepo, ObjectBucket, Git, namespace, helmrepo, objectbucket, github) > array

configMapRef

NameDescriptionSchema

apiVersion
optional

API version of the referent.

string

fieldPath
optional

If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: "spec.containers{name}" (where "name" refers to the name of the container that triggered the event) or if no container name is specified "spec.containers[2]" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object. TODO: this design is not final and this field is subject to change in the future.

string

kind
optional

Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds

string

name
optional

Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

string

namespace
optional

Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/

string

resourceVersion
optional

Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency

string

uid
optional

UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids

string

gates

NameDescriptionSchema

annotations
optional

typical annotations of k8s

annotations

labelSelector
optional

A label selector is a label query over a set of resources. The result of matchLabels and matchExpressions are ANDed. An empty label selector matches all objects. A null label selector matches no objects.

labelSelector

name
optional

 

string

annotations

NameSchema

key
optional

string

value
optional

string

labelSelector

NameDescriptionSchema

matchExpressions
optional

matchExpressions is a list of label selector requirements. The requirements are ANDed.

< matchExpressions > array

matchLabels
optional

matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.

< string, string > map

matchExpressions

NameDescriptionSchema

key
required

key is the label key that the selector applies to.

string

operator
required

operator represents a key’s relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.

string

values
optional

values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.

< string > array

secretRef

NameDescriptionSchema

apiVersion
optional

API version of the referent.

string

fieldPath
optional

If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: "spec.containers{name}" (where "name" refers to the name of the container that triggered the event) or if no container name is specified "spec.containers[2]" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object. TODO: this design is not final and this field is subject to change in the future.

string

kind
optional

Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds

string

name
optional

Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

string

namespace
optional

Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/

string

resourceVersion
optional

Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency

string

uid
optional

UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids

string

1.5. Subscriptions API

1.5.1. Overview

This documentation is for the Subscription resource for Red Hat Advanced Cluster Management for Kubernetes. The Subscription resource has four possible requests: create, query, delete and update.

1.5.1.1. Version information

Version : 2.1.0

1.5.1.2. Contact information

Contact Email : apiteam@swagger.io

1.5.1.3. License information

License : Apache 2.0
License URL : http://www.apache.org/licenses/LICENSE-2.0.html
Terms of service : http://swagger.io/terms/

1.5.1.4. URI scheme

BasePath : /kubernetes/apis
Schemes : HTTPS

1.5.1.5. Tags

  • subscriptions.apps.open-cluster-management.io : Create and manage subscriptions

1.5.1.6. External Docs

Description : Find out more about Swagger.
URL : http://swagger.io

1.5.2. Paths

1.5.2.1. Create a subscription

POST /apps.open-cluster-management.io/v1/namespaces/{namespace}/subscriptions
1.5.2.1.1. Description

Create a subscription.

1.5.2.1.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

namespace
required

Namespace that you want to use, for example, default.

string

Body

body
required

Parameters describing the subscription to be created.

Subscription

1.5.2.1.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.5.2.1.4. Consumes
  • subscription/yaml
1.5.2.1.5. Tags
  • subscriptions.apps.open-cluster-management.io
1.5.2.1.6. Example HTTP request
1.5.2.1.6.1. Request body
{
  "apiVersion" : "apps.open-cluster-management.io/v1",
  "kind" : "Subscription",
  "metadata" : {
    "name" : "sample_subscription",
    "namespace" : "default",
    "labels" : {
      "app" : "sample_subscription-app"
    },
    "annotations" : {
      "apps.open-cluster-management.io/git-path" : "apps/sample/",
      "apps.open-cluster-management.io/git-branch" : "sample_branch"
    }
  },
  "spec" : {
    "channel" : "channel_namespace/sample_channel",
    "packageOverrides" : [ {
      "packageName" : "my-sample-application",
      "packageAlias" : "the-sample-app",
      "packageOverrides" : [ {
        "path" : "spec",
        "value" : {
          "persistence" : {
            "enabled" : false,
            "useDynamicProvisioning" : false
          },
          "license" : "accept",
          "tls" : {
            "hostname" : "my-mcm-cluster.icp"
          },
          "sso" : {
            "registrationImage" : {
              "pullSecret" : "hub-repo-docker-secret"
            }
          }
        }
      } ]
    } ],
    "placement" : {
      "placementRef" : {
        "kind" : "PlacementRule",
        "name" : "demo-clusters"
      }
    }
  }
}

1.5.2.2. Query all subscriptions

GET /apps.open-cluster-management.io/v1/namespaces/{namespace}/subscriptions
1.5.2.2.1. Description

Query your subscriptions for more details.

1.5.2.2.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

namespace
required

Namespace that you want to use, for example, default.

string

1.5.2.2.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.5.2.2.4. Consumes
  • subscription/yaml
1.5.2.2.5. Tags
  • subscriptions.apps.open-cluster-management.io

1.5.2.3. Query a single subscription

GET /apps.open-cluster-management.io/v1/namespaces/{namespace}/subscriptions/{subscription_name}
1.5.2.3.1. Description

Query a single subscription for more details.

1.5.2.3.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

namespace
required

Namespace that you want to use, for example, default.

string

Path

subscription_name
required

Name of the subscription that you wan to query.

string

1.5.2.3.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.5.2.3.4. Tags
  • subscriptions.apps.open-cluster-management.io

1.5.2.4. Delete a subscription

DELETE /apps.open-cluster-management.io/v1/namespaces/{namespace}/subscriptions/{subscription_name}
1.5.2.4.1. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

namespace
required

Namespace that you want to use, for example, default.

string

Path

subscription_name
required

Name of the subscription that you want to delete.

string

1.5.2.4.2. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.5.2.4.3. Tags
  • subscriptions.apps.open-cluster-management.io

1.5.3. Definitions

1.5.3.1. Subscription

NameSchema

apiVersion
required

string

kind
required

string

metadata
required

metadata

spec
required

spec

status
optional

status

metadata

NameSchema

annotations
optional

object

labels
optional

object

name
optional

string

namespace
optional

string

spec

NameSchema

channel
required

string

name
optional

string

overrides
optional

< overrides > array

packageFilter
optional

packageFilter

packageOverrides
optional

< packageOverrides > array

placement
optional

placement

timewindow
optional

timewindow

overrides

NameSchema

clusterName
required

string

clusterOverrides
required

< object > array

packageFilter

NameDescriptionSchema

annotations
optional

 

< string, string > map

filterRef
optional

 

filterRef

labelSelector
optional

 

labelSelector

version
optional

Pattern : "()((\\.[0-9])(\\.)|(\\.[0-9])?(\\.[xX]))$"

string

filterRef

NameSchema

name
optional

string

labelSelector

NameSchema

matchExpressions
optional

< matchExpressions > array

matchLabels
optional

< string, string > map

matchExpressions

NameSchema

key
required

string

operator
required

string

values
optional

< string > array

packageOverrides

NameSchema

packageAlias
optional

string

packageName
required

string

packageOverrides
optional

< object > array

placement

NameSchema

clusterSelector
optional

clusterSelector

clusters
optional

< clusters > array

local
optional

boolean

placementRef
optional

placementRef

clusterSelector

NameSchema

matchExpressions
optional

< matchExpressions > array

matchLabels
optional

< string, string > map

matchExpressions

NameSchema

key
required

string

operator
required

string

values
optional

< string > array

clusters

NameSchema

name
required

string

placementRef

NameSchema

apiVersion
optional

string

fieldPath
optional

string

kind
optional

string

name
optional

string

namespace
optional

string

resourceVersion
optional

string

uid
optional

string

timewindow

NameSchema

daysofweek
optional

< string > array

hours
optional

< hours > array

location
optional

string

windowtype
optional

enum (active, blocked, Active, Blocked)

hours

NameSchema

end
optional

string

start
optional

string

status

NameSchema

lastUpdateTime
optional

string (date-time)

message
optional

string

phase
optional

string

reason
optional

string

statuses
optional

object

1.6. PlacementRules API

1.6.1. Overview

This documentation is for the PlacementRule resource for Red Hat Advanced Cluster Management for Kubernetes. The PlacementRule resource has four possible requests: create, query, delete and update.

1.6.1.1. Version information

Version : 2.1.0

1.6.1.2. Contact information

Contact Email : apiteam@swagger.io

1.6.1.3. License information

License : Apache 2.0
License URL : http://www.apache.org/licenses/LICENSE-2.0.html
Terms of service : http://swagger.io/terms/

1.6.1.4. URI scheme

BasePath : /kubernetes/apis
Schemes : HTTPS

1.6.1.5. Tags

  • placementrules.apps.open-cluster-management.io : Create and manage placement rules.

1.6.1.6. External Docs

Description : Find out more about Swagger.
URL : http://swagger.io

1.6.2. Paths

1.6.2.1. Create a placement rule

POST /apps.open-cluster-management.io/v1/namespaces/{namespace}/placementrules
1.6.2.1.1. Description

Create a placement rule.

1.6.2.1.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

namespace
required

Namespace that you want to use, for example, default.

string

Body

body
required

Parameters describing the placement rule to be created.

Placementrule

1.6.2.1.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.6.2.1.4. Consumes
  • application/yaml
1.6.2.1.5. Tags
  • placementrules.apps.open-cluster-management.io
1.6.2.1.6. Example HTTP request
1.6.2.1.6.1. Request body
{
  "apiVersion" : "apps.open-cluster-management.io/v1",
  "kind" : "PlacementRule",
  "metadata" : {
    "name" : "towhichcluster",
    "namespace" : "ns-sub-1"
  },
  "spec" : {
    "clusterConditions" : [ {
      "type": "ManagedClusterConditionAvailable",
      "status": "True"
    } ],
    "clusterSelector" : { }
  }
}

1.6.2.2. Query all placementrules

GET /apps.open-cluster-management.io/v1/namespaces/{namespace}/placementrules
1.6.2.2.1. Description

Query your placement rules for more details.

1.6.2.2.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

namespace
required

Namespace that you want to use, for example, default.

string

1.6.2.2.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.6.2.2.4. Consumes
  • application/yaml
1.6.2.2.5. Tags
  • placementrules.apps.open-cluster-management.io

1.6.2.3. Query a single placementrule

GET /apps.open-cluster-management.io/v1/namespaces/{namespace}/placementrules/{placementrule_name}
1.6.2.3.1. Description

Query a single placement rule for more details.

1.6.2.3.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

namespace
required

Namespace that you want to use, for example, default.

string

Path

placementrule_name
required

Name of the placement rule that you want to query.

string

1.6.2.3.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.6.2.3.4. Tags
  • placementrules.apps.open-cluster-management.io

1.6.2.4. Delete a placementrule

DELETE /apps.open-cluster-management.io/v1/namespaces/{namespace}/placementrules/{placementrule_name}
1.6.2.4.1. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

namespace
required

Namespace that you want to use, for example, default.

string

Path

placementrule_name
required

Name of the placementrule that you want to delete.

string

1.6.2.4.2. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.6.2.4.3. Tags
  • placementrules.apps.open-cluster-management.io

1.6.3. Definitions

1.6.3.1. Placementrule

NameSchema

apiVersion
required

string

kind
required

string

metadata
required

object

spec
required

spec

spec

NameSchema

clusterConditions
optional

< clusterConditions > array

clusterReplicas
optional

integer

clusterSelector
optional

clusterSelector

clusters
optional

< clusters > array

policies
optional

< policies > array

resourceHint
optional

resourceHint

schedulerName
optional

string

clusterConditions

NameSchema

status
optional

string

type
optional

string

clusterSelector

NameSchema

matchExpressions
optional

< matchExpressions > array

matchLabels
optional

< string, string > map

matchExpressions

NameSchema

key
optional

string

operator
optional

string

values
optional

< string > array

clusters

NameSchema

name
optional

string

policies

NameSchema

apiVersion
optional

string

fieldPath
optional

string

kind
optional

string

name
optional

string

namespace
optional

string

resourceVersion
optional

string

uid
optional

string

resourceHint

NameSchema

order
optional

string

type
optional

string

1.7. Applications API

1.7.1. Overview

This documentation is for the Application resource for Red Hat Advanced Cluster Management for Kubernetes. Application resource has four possible requests: create, query, delete and update.

1.7.1.1. Version information

Version : 2.1.0

1.7.1.2. Contact information

Contact Email : apiteam@swagger.io

1.7.1.3. License information

License : Apache 2.0
License URL : http://www.apache.org/licenses/LICENSE-2.0.html
Terms of service : http://swagger.io/terms/

1.7.1.4. URI scheme

BasePath : /kubernetes/apis
Schemes : HTTPS

1.7.1.5. Tags

  • applications.app.k8s.io : Create and manage applications

1.7.1.6. External Docs

Description : Find out more about Swagger.
URL : http://swagger.io

1.7.2. Paths

1.7.2.1. Create a application

POST /app.k8s.io/v1beta1/namespaces/{namespace}/applications
1.7.2.1.1. Description

Create a application.

1.7.2.1.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

namespace
required

Namespace that you want to use, for example, default.

string

Body

body
required

Parameters describing the application to be created.

Application

1.7.2.1.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.7.2.1.4. Consumes
  • application/yaml
1.7.2.1.5. Tags
  • applications.app.k8s.io
1.7.2.1.6. Example HTTP request
1.7.2.1.6.1. Request body
{
  "apiVersion" : "app.k8s.io/v1beta1",
  "kind" : "Application",
  "metadata" : {
    "labels" : {
      "app" : "nginx-app-details"
    },
    "name" : "nginx-app-3",
    "namespace" : "ns-sub-1"
  },
  "spec" : {
    "componentKinds" : [ {
      "group" : "apps.open-cluster-management.io",
      "kind" : "Subscription"
    } ]
  },
  "selector" : {
    "matchLabels" : {
      "app" : "nginx-app-details"
    }
  },
  "status" : { }
}

1.7.2.2. Query all applications

GET /app.k8s.io/v1beta1/namespaces/{namespace}/applications
1.7.2.2.1. Description

Query your applications for more details.

1.7.2.2.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

namespace
required

Namespace that you want to use, for example, default.

string

1.7.2.2.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.7.2.2.4. Consumes
  • application/yaml
1.7.2.2.5. Tags
  • applications.app.k8s.io

1.7.2.3. Query a single application

GET /app.k8s.io/v1beta1/namespaces/{namespace}/applications/{application_name}
1.7.2.3.1. Description

Query a single application for more details.

1.7.2.3.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

application_name
required

Name of the application that you wan to query.

string

Path

namespace
required

Namespace that you want to use, for example, default.

string

1.7.2.3.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.7.2.3.4. Tags
  • applications.app.k8s.io

1.7.2.4. Delete a application

DELETE /app.k8s.io/v1beta1/namespaces/{namespace}/applications/{application_name}
1.7.2.4.1. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

application_name
required

Name of the application that you want to delete.

string

Path

namespace
required

Namespace that you want to use, for example, default.

string

1.7.2.4.2. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.7.2.4.3. Tags
  • applications.app.k8s.io

1.7.3. Definitions

1.7.3.1. Application

NameSchema

apiVersion
required

string

kind
required

string

metadata
required

object

spec
required

spec

spec

NameSchema

assemblyPhase
optional

string

componentKinds
optional

< object > array

descriptor
optional

descriptor

info
optional

< info > array

selector
optional

object

descriptor

NameSchema

description
optional

string

icons
optional

< icons > array

keywords
optional

< string > array

links
optional

< links > array

maintainers
optional

< maintainers > array

notes
optional

string

owners
optional

< owners > array

type
optional

string

version
optional

string

icons

NameSchema

size
optional

string

src
required

string

type
optional

string

NameSchema

description
optional

string

url
optional

string

maintainers

NameSchema

email
optional

string

name
optional

string

url
optional

string

owners

NameSchema

email
optional

string

name
optional

string

url
optional

string

info

NameSchema

name
optional

string

type
optional

string

value
optional

string

valueFrom
optional

valueFrom

valueFrom

NameSchema

configMapKeyRef
optional

configMapKeyRef

ingressRef
optional

ingressRef

secretKeyRef
optional

secretKeyRef

serviceRef
optional

serviceRef

type
optional

string

configMapKeyRef

NameSchema

apiVersion
optional

string

fieldPath
optional

string

key
optional

string

kind
optional

string

name
optional

string

namespace
optional

string

resourceVersion
optional

string

uid
optional

string

ingressRef

NameSchema

apiVersion
optional

string

fieldPath
optional

string

host
optional

string

kind
optional

string

name
optional

string

namespace
optional

string

path
optional

string

resourceVersion
optional

string

uid
optional

string

secretKeyRef

NameSchema

apiVersion
optional

string

fieldPath
optional

string

key
optional

string

kind
optional

string

name
optional

string

namespace
optional

string

resourceVersion
optional

string

uid
optional

string

serviceRef

NameSchema

apiVersion
optional

string

fieldPath
optional

string

kind
optional

string

name
optional

string

namespace
optional

string

path
optional

string

port
optional

integer (int32)

resourceVersion
optional

string

uid
optional

string

1.8. Helm API

1.8.1. Overview

This documentation is for the HelmRelease resource for Red Hat Advanced Cluster Management for Kubernetes. The HelmRelease resource has four possible requests: create, query, delete and update.

1.8.1.1. Version information

Version : 2.1.0

1.8.1.2. Contact information

Contact Email : apiteam@swagger.io

1.8.1.3. License information

License : Apache 2.0
License URL : http://www.apache.org/licenses/LICENSE-2.0.html
Terms of service : http://swagger.io/terms/

1.8.1.4. URI scheme

BasePath : /kubernetes/apis
Schemes : HTTPS

1.8.1.5. Tags

  • helmreleases.apps.open-cluster-management.io : Create and manage helmreleases

1.8.1.6. External Docs

Description : Find out more about Swagger.
URL : http://swagger.io

1.8.2. Paths

1.8.2.1. Create a helmrelease

POST /apps.open-cluster-management.io/v1/namespaces/{namespace}/helmreleases
1.8.2.1.1. Description

Create a helmrelease.

1.8.2.1.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

namespace
required

Namespace that you want to use, for example, default.

string

Body

body
required

Parameters describing the helmrelease to be created.

HelmRelease

1.8.2.1.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.8.2.1.4. Consumes
  • application/yaml
1.8.2.1.5. Tags
  • helmreleases.apps.open-cluster-management.io
1.8.2.1.6. Example HTTP request
1.8.2.1.6.1. Request body
{
  "apiVersion" : "apps.open-cluster-management.io/v1",
  "kind" : "HelmRelease",
  "metadata" : {
    "name" : "nginx-ingress",
    "namespace" : "default"
  },
  "repo" : {
    "chartName" : "nginx-ingress",
    "source" : {
      "helmRepo" : {
        "urls" : [ "https://kubernetes-charts.storage.googleapis.com/nginx-ingress-1.26.0.tgz" ]
      },
      "type" : "helmrepo"
    },
    "version" : "1.26.0"
  },
  "spec" : {
    "defaultBackend" : {
      "replicaCount" : 3
    }
  }
}

1.8.2.2. Query all helmreleases

GET /apps.open-cluster-management.io/v1/namespaces/{namespace}/helmreleases
1.8.2.2.1. Description

Query your helmreleases for more details.

1.8.2.2.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

namespace
required

Namespace that you want to use, for example, default.

string

1.8.2.2.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.8.2.2.4. Consumes
  • application/yaml
1.8.2.2.5. Tags
  • helmreleases.apps.open-cluster-management.io

1.8.2.3. Query a single helmrelease

GET /apps.open-cluster-management.io/v1/namespaces/{namespace}/helmreleases/{helmrelease_name}
1.8.2.3.1. Description

Query a single helmrelease for more details.

1.8.2.3.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

helmrelease_name
required

Name of the helmrelease that you wan to query.

string

Path

namespace
required

Namespace that you want to use, for example, default.

string

1.8.2.3.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.8.2.3.4. Tags
  • helmreleases.apps.open-cluster-management.io

1.8.2.4. Delete a helmrelease

DELETE /apps.open-cluster-management.io/v1/namespaces/{namespace}/helmreleases/{helmrelease_name}
1.8.2.4.1. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

helmrelease_name
required

Name of the helmrelease that you want to delete.

string

Path

namespace
required

Namespace that you want to use, for example, default.

string

1.8.2.4.2. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.8.2.4.3. Tags
  • helmreleases.apps.open-cluster-management.io

1.8.3. Definitions

1.8.3.1. HelmRelease

NameSchema

apiVersion
required

string

kind
required

string

metadata
required

object

repo
required

repo

spec
required

object

status
required

status

repo

NameSchema

chartName
optional

string

configMapRef
optional

configMapRef

secretRef
optional

secretRef

source
optional

source

version
optional

string

configMapRef

NameSchema

apiVersion
optional

string

fieldPath
optional

string

kind
optional

string

name
optional

string

namespace
optional

string

resourceVersion
optional

string

uid
optional

string

secretRef

NameSchema

apiVersion
optional

string

fieldPath
optional

string

kind
optional

string

name
optional

string

namespace
optional

string

resourceVersion
optional

string

uid
optional

string

source

NameSchema

github
optional

github

helmRepo
optional

helmRepo

type
optional

string

github

NameSchema

branch
optional

string

chartPath
optional

string

urls
optional

< string > array

helmRepo

NameSchema

urls
optional

< string > array

status

NameSchema

conditions
required

< conditions > array

deployedRelease
optional

deployedRelease

conditions

NameSchema

lastTransitionTime
optional

string (date-time)

message
optional

string

reason
optional

string

status
required

string

type
required

string

deployedRelease

NameSchema

manifest
optional

string

name
optional

string

1.9. Policy API

1.9.1. Overview

This documentation is for the Policy resource for Red Hat Advanced Cluster Management for Kubernetes. The Policy resource has four possible requests: create, query, delete and update.

1.9.1.1. Version information

Version : 2.1.0

1.9.1.2. Contact information

Contact Email : apiteam@swagger.io

1.9.1.3. License information

License : Apache 2.0
License URL : http://www.apache.org/licenses/LICENSE-2.0.html
Terms of service : http://swagger.io/terms/

1.9.1.4. URI scheme

BasePath : /kubernetes/apis
Schemes : HTTPS

1.9.1.5. Tags

  • policy.open-cluster-management.io/v1 : Create and manage policies.

1.9.1.6. External Docs

Description : Find out more about Swagger.
URL : http://swagger.io

1.9.2. Paths

1.9.2.1. Create a policy

POST /policy.open-cluster-management.io/v1/v1alpha1/namespaces/{namespace}/policies/{policy_name}
1.9.2.1.1. Description

Create a policy.

1.9.2.1.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

namespace
required

Namespace that you want to use, for example, default.

string

Body

body
required

Parameters describing the policy to be created.

Application

1.9.2.1.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.9.2.1.4. Consumes
  • application/json
1.9.2.1.5. Tags
  • policy.open-cluster-management.io
1.9.2.1.6. Example HTTP request
1.9.2.1.6.1. Request body
{
  "apiVersion": "policy.open-cluster-management.io/v1/v1alpha1",
  "kind": "Policy",
  "metadata": {
    "name": "test-policy-swagger",
    "description": "Example body for Policy API Swagger docs"
  },
  "spec": {
    "remediationAction": "enforce",
    "namespaces": {
      "include": [
        "default"
      ],
      "exclude": [
        "kube*"
      ]
    },
    "policy-templates": {
    "kind": "ConfigurationPolicy",
    "apiVersion": "policy.open-cluster-management.io/v1alpha1",
    "complianceType": "musthave",
    "metadata": {
      "namespace": null,
      "name": "test-role"
    },
    "selector": {
      "matchLabels": {
        "cloud": "IBM"
      }
    },
    "spec" : {
      "object-templates": {
        "complianceType": "mustHave",
        "objectDefinition": {
          "apiVersion": "rbac.authorization.k8s.io/v1",
          "kind": "Role",
          "metadata": {
            "name": "role-policy",
          },
          "rules": [
            {
              "apiGroups": [
                "extensions",
                "apps"
              ],
              "resources": [
                "deployments"
              ],
              "verbs": [
                "get",
                "list",
                "watch",
                "delete"
              ]
            },
            {
              "apiGroups": [
                "core"
              ],
              "resources": [
                "pods"
              ],
              "verbs": [
                "create",
                "update",
                "patch"
              ]
            },
            {
              "apiGroups": [
                "core"
              ],
              "resources": [
                "secrets"
              ],
              "verbs": [
                "get",
                "watch",
                "list",
                "create",
                "delete",
                "update",
                "patchß"
              ],
            },
          ],
        },
      },
    },
  },

1.9.2.2. Query all policies

GET /policy.open-cluster-management.io/v1/v1alpha1/namespaces/{namespace}/policies/{policy_name}
1.9.2.2.1. Description

Query your policies for more details.

1.9.2.2.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

namespace
required

Namespace that you want to apply the policy to, for example, default.

string

1.9.2.2.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.9.2.2.4. Consumes
  • application/json
1.9.2.2.5. Tags
  • policy.open-cluster-management.io

1.9.2.3. Query a single policy

GET /policy.open-cluster-management.io/v1/v1alpha1/namespaces/{namespace}/policies/{policy_name}
1.9.2.3.1. Description

Query a single policy for more details.

1.9.2.3.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

policy_name
required

Name of the policy that you want to query.

string

Path

namespace
required

Namespace that you want to use, for example, default.

string

1.9.2.3.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.9.2.3.4. Tags
  • policy.open-cluster-management.io

1.9.2.4. Delete a policy

DELETE /policy.open-cluster-management.io/v1/v1alpha1/namespaces/{namespace}/policies/{policy_name}
1.9.2.4.1. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

policy_name
required

Name of the policy that you want to delete.

string

Path

namespace
required

Namespace that you want to use, for example, default.

string

1.9.2.4.2. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.9.2.4.3. Tags
  • policy.open-cluster-management.io

1.9.3. Definitions

1.9.3.1. Policy

NameDescriptionSchema

apiVersion
required

The versioned schema of Policy.

string

kind
required

String value that represents the REST resource.

string

metadata
required

Describes rules that define the policy.

object

spec

NameDescriptionSchema

remediationAction
optional

Value that represents how violations are handled as defined in the resource.

string

namespaceSelector
required

Value that represents which namespaces the policy is applied.

string

policy-templates

NameDescriptionSchema

apiVersion
required

The versioned schema of Policy.

string

kind
optional

String value that represents the REST resource.

string

metadata
required

Describes rules that define the policy.

object

clusterConditions
optional

Section to define labels.

string

rules
optional

 

string

clusterConditions

NameDescriptionSchema

matchLabels
optional

The label that is required for the policy to be applied to a namespace.

object

cloud
optional

The label that is required for the policy to be applied to a cloud provider.

string

rules

NameDescriptionSchema

apiGroups
required

List of APIs that the rule applies to.

string

resources
required

A list of resource types.

object

verbs
required

A list of verbs.

string

1.10. Observability API

1.10.1. Overview

This documentation is for the MultiClusterObservability resource for Red Hat Advanced Cluster Management for Kubernetes. The MultiClusterObservability resource has four possible requests: create, query, delete and update.

1.10.1.1. Version information

Version : 2.1.0

1.10.1.2. Contact information

Contact Email : apiteam@swagger.io

1.10.1.3. License information

License : Apache 2.0
License URL : http://www.apache.org/licenses/LICENSE-2.0.html
Terms of service : http://swagger.io/terms/

1.10.1.4. URI scheme

BasePath : /kubernetes/apis
Schemes : HTTPS

1.10.1.5. Tags

  • observability.open-cluster-management.io : Create and manage multiclusterobservabilities

1.10.1.6. External Docs

Description : Find out more about Swagger.
URL : http://swagger.io

1.10.2. Paths

1.10.2.1. Create a multiclusterobservability resource

POST /apis/observability.open-cluster-management.io/v1beta1/multiclusterobservabilities
1.10.2.1.1. Description

Create a MultiClusterObservability resource.

1.10.2.1.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Body

body
required

Parameters describing the MultiClusterObservability resource to be created.

MultiClusterObservability

1.10.2.1.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.10.2.1.4. Consumes
  • application/yaml
1.10.2.1.5. Tags
  • observability.apps.open-cluster-management.io
1.10.2.1.6. Example HTTP request
1.10.2.1.6.1. Request body
{
  "apiVersion": "observability.open-cluster-management.io/v1beta1",
  "kind": "MultiClusterObservability",
  "metadata": {
    "name": "example"
  },
  "spec": {
    "storageConfigObject": {
      "metricObjectStorage": {
        "name": "thanos-object-storage",
        "key": "thanos.yaml"
      }
    }
  }
}

1.10.2.2. Query all multiclusterobservabilities

GET /apis/observability.open-cluster-management.io/v1beta1/multiclusterobservabilities
1.10.2.2.1. Description

Query your MultiClusterObservability resources for more details.

1.10.2.2.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

1.10.2.2.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.10.2.2.4. Consumes
  • application/yaml
1.10.2.2.5. Tags
  • observability.apps.open-cluster-management.io

1.10.2.3. Query a single multiclusterobservability

GET /apis/observability.open-cluster-management.io/v1beta1/multiclusterobservabilities/{multiclusterobservability_name}
1.10.2.3.1. Description

Query a single MultiClusterObservability resource for more details.

1.10.2.3.2. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

multiclusterobservability_name
required

Name of the multiclusterobservability that you want to query.

string

1.10.2.3.3. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.10.2.3.4. Tags
  • observability.apps.open-cluster-management.io

1.10.2.4. Delete a multiclusterobservability resource

DELETE /apis/observability.open-cluster-management.io/v1beta1/multiclusterobservabilities/{multiclusterobservability_name}
1.10.2.4.1. Parameters
TypeNameDescriptionSchema

Header

COOKIE
required

Authorization: Bearer {ACCESS_TOKEN} ; ACCESS_TOKEN is the user access token.

string

Path

multiclusterobservability_name
required

Name of the multiclusterobservability that you want to delete.

string

1.10.2.4.2. Responses
HTTP CodeDescriptionSchema

200

Success

No Content

403

Access forbidden

No Content

404

Resource not found

No Content

500

Internal service error

No Content

503

Service unavailable

No Content

1.10.2.4.3. Tags
  • observability.apps.open-cluster-management.io

1.10.3. Definitions

1.10.3.1. MultiClusterObservability

NameDescriptionSchema

apiVersion
required

The versioned schema of the MultiClusterObservability.

string

kind
required

String value that represents the REST resource, MultiClusterObservability.

string

metadata
required

Describes rules that define the policy.

object

spec

NameDescriptionSchema

availabilityConfig
optional

The parameter used to select high-availability support. This provides support in the case of a failover, and consumes more resources.
Options: Basic and High

string

enableDownSampling
optional

Enable or disable the downsample. Default value is false. If there is no downsample data, the query is unavailable.

boolean

imagePullPolicy
optional

Pull policy for the Observability images.

string

imagePullSecret
optional

Pull secret for the Observability images.

string

nodeSelector
optional

Supports node selection constraints

object

observabilityAddonSpec
optional

The global settings for all managed clusters, which have the add-on enabled.

observabilityAddonSpec

retentionResolution1h
optional

The amount of time to retain samples of resolution 2 (1 hour) in a bucket. Default value is 30 days (30d).

string

retentionResolution5m
optional

The amount of time to retain samples of resolution 1 (5 minutes) in a bucket. Default value is 14 days (14d).

string

retentionResolutionRaw
optional

The amount of time to retain raw samples of resolution in a bucket.

string

storageConfigObject
required

Specifies the storage to be used by Observability.

storageConfigObject

observabilityAddonSpec

NameDescriptionSchema

enableMetrics
optional

Indicates if the observability add-on sends metrics to the hub cluster. Default value is true.

boolean

interval
optional

Interval for when the observability add-on sends metrics to the hub cluster. Default value is 60 seconds (60s).

integer

storageConfigObject

NameDescriptionSchema

metricObjectStorage
required

Object store to configure secrets for metrics.

metricObjectStorage

statefulSetSize
optional

The amount of storage that is applied to the Observability stateful sets, i.e. Thanos store, rule, compact, and receiver. Default value is 10Gi.

string

statefulSetStorageClass
optional

Specify the storageClass stateful sets. This storage is used for the object storage if MetricObjectStorage is configured for your operating system to create storage. Default value is gp2.

string

metricObjectStorage

NameDescriptionSchema

key
required

The key of the secret to select from. Must be a valid secret key.

string

name
required

Name of the metricObjectStorage.

string

Legal Notice

Copyright © 2021 Red Hat, Inc.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.