diff --git a/openapi/console/console-1.46.1.yaml b/openapi/console/console-1.46.1.yaml new file mode 100644 index 0000000..9ec020f --- /dev/null +++ b/openapi/console/console-1.46.1.yaml @@ -0,0 +1,27136 @@ +openapi: 3.1.0 +info: + title: Conduktor Console API + version: v2 + description: The API to interact with Conduktor Console programmatically + contact: + email: support@conduktor.io + url: https://docs.conduktor.io + x-logo: + url: https://raw.githubusercontent.com/conduktor/conduktor.io-public/main/logo/conduktor-console-api.png + backgroundColor: '#FFFFFF' + altText: Conduktor logo +tags: +- name: Introduction + description: | + The Conduktor REST API 's aim is to help you automate the way your Kafka resources are handled by your teams. + + Get started with Conduktor [self-hosted](https://docs.conduktor.io/guide/get-started) today. Setup takes only a few minutes. +- name: Authentication + description: | + Authentication to the API requires a token set in the **authorization** header. + + To get a token and use it you must go through the following steps: + + * Log in to Conduktor Console and go to the **Settings** page. + + * Click on the **API Keys** tab. + + * Click on the **Create API Key** button. + + * Give your key a name and click on the **Generate Key** button. + + * Copy the key and store it in a safe place. You will not be able to see it again. + + * Use the key in the **authorization** header of your requests. + + Example: + + ```shell + API_KEY="your_api_key" + curl -X GET "https://your.conduktor.host/public/v1/clusters" -H "accept: application/json" -H "authorization: Bearer $API_KEY" + ``` +- name: Kinds + description: |+ + ### Definition + + Kinds the resource types of the Conduktor platform. They follow a set of conventions inspired by K8S that improve the experience and the consistency of the tool chain for the users. + It is important to understand that this standardization is made with the goal of a global __Conduktor automation experience__ (including not only API, but also CLI, files resources definition, devops, scripting, UI) and should result in a __better governance__ of your Kafka resources. + + ### Conduktor Kinds + + The following kinds are available in the Conduktor API: + * `Topic` + * `Application` + * `ApplicationInstance` + * `ApplicationInstancePermission` + * `TopicPolicy` + + ### Properties + Each kind has the following groups of properties: + * `kind`: the kind of the resource (e.g. `Topic`, `Application`...). This field is mandatory, immutable, and case sensitive. + * `version`: the version of the kind that the resource was created with. The version is inherited from the [api group](#tag/Api-Groups) of the kind. Breaking changes to the kind schema will result in a new version. + * `metadata` - common metadata for any kinds. + * `name`: the unique identifier for the resource. It is unique __in the scope of the kind__, not universally. `name` can have different formats depending on the kind. For example clusters names must follow this pattern `^[0-9a-z\\-\\_]+$$` although other kinds can have different patterns. + * `labels`: a set of key-value pairs that can be by the used to organize and categorize resources in a custom way. + * `spec` - the specific fields of each kind. + + + Example: + ```json + { + "metadata":{ + "name":"my-topic", + "cluster":"my-cluster", + "labels": { + "env": "prod", + "team": "infra" + } + }, + "spec":{ + "partitions":1, + "replicationFactor":1, + "configs":{ + } + }, + "apiVersion":"kafka/v2", + "kind":"Topic" + } + ``` + + +- name: Api Groups + description: |+ + ### Definition + + API groups a set of resources that share the same API path prefix. They are used to organize the API endpoints and the + resources they manage. + The versioning is set at this level, so all the resources in the same group share the same version. + Kinds of a same group can be nested paths in the API, for example, the `clusters` group can have a `connectors` kind + nested in it. + + ### Conduktor Api Groups + + The following groups are available in the Conduktor API: + + * `console` : Manage the metadata concerning the connection and the information of the Kafka clusters that you have + access to. + * `iam`: Define the users, groups, and permissions of your Conduktor platform. + * `self-serve`: Empower teams to govern their Kafka applications. + * `kafka`: Endpoints to interact with your Kafka clusters. + * `gateway`: Manage the virtual clusters, interceptors, and topic mappings of your Conduktor Gateway. + + | Api Group | Kinds | + |--------------|----------------------------------------------------------------------------------------------------------------------------------| + | `console` | `clusters`, `certificates` | + | `iam` | `users`, `groups`, `permissions` | + | `self-serve` | `application`, `application-instance`, `application-instance-permission`, `topic-policy`, `service-account`, `application-group` | + | `kafka` | `topic`, `consumergroup`, `service-accounts`, `ksqlDBs`, `subject`, `connector` | + | `gateway` | `interceptors` | + + + + +- name: Versioning + description: |+ + * __The version is set at the api group level__. It is incremented when a breaking change happens in the schema of an endpoint of the group (that has been marked `stable`). The n-1 version is still available for a while to allow users to migrate. The version is part of the endpoint path. + + + Endpoint also have a status to manage their API lifecycle, following the order below: + * __preview__: this is an early-stage feature, really likely to change + * __beta__: early access feature, breaking change + * __stable__: Production-ready endpoint, no breaking change + * __deprecated__: This endpoint isn't supported anymore and the user should migrate + + + +- name: Conventions + description: | + ### Path conventions + + The API follows as much as possible the endpoints structure below for each kind of resource: + * `GET /{api-group}/{version}/{kind}/{name}` to read a resource + * `GET /{api-group}/{version}/{kind}` to list resources of a kind + * `PUT /{api-group}/{version}/{kind}` to update or create a resource + * The `name` field is mandatory in the request body for updates. If not matching an existing resource, a 404 Not Found is returned. + * The `name` field is omitted in the request body for creations. + * 201 Created is returned for creations, 200 OK for updates. + * `DELETE /{api-group}/{version}/{kind}/{name}` to delete a resource + * `POST` is used for specific operations that don't fit this CRUD model. PUT is the default verb for updates and creations. + * Important principle: the result of a GET can be reused as the body of a PUT to update the resource. + + __Nested paths__: + When a kind is nested in another kind, the parent kind is used in the endpoint path. + For example, the `topic` kind is nested in the `cluster` group, so the endpoints for connectors are: + * `GET /kafka/v2/cluster/{name}/topic` + * `GET /kafka/v2/cluster/{name}/topic/{name}` + * `PUT /kafka/v2/cluster/{name}/topic` + * `DELETE /kafka/v2/cluster/{name}/topic/{name}` +- name: cli_user_iam_v2_0 + x-displayName: user +- name: cli_group_iam_v2_1 + x-displayName: group +- name: cli_kafka-cluster_console_v2_2 + x-displayName: kafka-cluster +- name: cli_kafka-connect-cluster_console_v2_3 + x-displayName: kafka-connect-cluster +- name: cli_ksql-d-b-cluster_console_v2_4 + x-displayName: ksqldb-cluster +- name: cli_topic-policy_self-serve_v1_5 + x-displayName: topic-policy +- name: cli_resource-policy_self-serve_v1_6 + x-displayName: resource-policy +- name: cli_application_self-serve_v1_7 + x-displayName: application +- name: cli_application-instance_self-serve_v1_8 + x-displayName: application-instance +- name: cli_application-instance-permission_self-serve_v1_9 + x-displayName: application-instance-permission +- name: cli_application-group_self-serve_v1_10 + x-displayName: application-group +- name: cli_service-account_self-serve_v1_11 + x-displayName: service-account +- name: cli_topic_kafka_v2_12 + x-displayName: topic +- name: cli_subject_kafka_v2_13 + x-displayName: subject +- name: cli_glue-schema_kafka_v2_14 + x-displayName: glue-schema +- name: cli_connector_kafka_v2_15 + x-displayName: connector +- name: cli_indexed-topic_sql_v1_16 + x-displayName: indexed-topic +- name: cli_partner-zone_console_v2_17 + x-displayName: partner-zone +- name: cli_data-quality-rule_data-quality_v1_18 + x-displayName: data-quality-rule +- name: cli_data-quality-policy_data-quality_v1_19 + x-displayName: data-quality-policy +- name: cli_integration_monitoring_v2_20 + x-displayName: integration +- name: cli_integration_monitoring_v3_20 + x-displayName: integration +- name: cli_alert_monitoring_v2_21 + x-displayName: alert +- name: cli_alert_monitoring_v3_21 + x-displayName: alert +- name: cli_topic-template_console_v2_22 + x-displayName: topic-template +- name: cli_connector-template_console_v2_23 + x-displayName: connector-template +- name: cli_chargeback-cost_console_v2_24 + x-displayName: chargeback-cost +- name: cli_chargeback-label_console_v2_25 + x-displayName: chargeback-label +paths: + /public/v1/clusters/{clusterName}/service-accounts: + get: + tags: + - service-accounts + description: Get service accounts + operationId: get-service-accounts + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + responses: + '200': + description: All service accounts created on the cluster. + content: + application/json: + schema: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/AclPrincipal' + example: + - type: User + name: Gertrude + - type: Group + name: Data + '400': + description: Security disabled on this kafka cluster + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: Security disabled on this kafka cluster + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have the required permission(s) "kafka.clusters.acl.read" + to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have the required permission(s) "kafka.clusters.acl.read" + to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/service-accounts' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - service-accounts + description: Put acl for a given service account + operationId: put-acl-for-a-given-service-account + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/AllAclForPrincipal' + example: + aclPrincipal: + type: User + name: Gertrude + acls: + - pattern: + resourceType: Topic + name: topicB + patternType: Literal + host: '*' + operationStates: + Describe: Allow + required: true + responses: + '200': + description: '' + '400': + description: Security disabled on this kafka cluster + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: Security disabled on this kafka cluster + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have the required permission(s) "kafka.clusters.acl.create, + kafka.clusters.acl.delete" to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have the required permission(s) "kafka.clusters.acl.create, + kafka.clusters.acl.delete" to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/service-accounts' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"aclPrincipal":{"type":"User","name":"Gertrude"},"acls":[{"pattern":{"resourceType":"Topic","name":"topicB","patternType":"Literal"},"host":"*","operationStates":{"Describe":"Allow"}}]}' \ + --location \ + --max-redirs 32 + /public/v1/clusters/{clusterName}/service-accounts-confluent: + get: + tags: + - service-accounts + description: Get Confluent service accounts + operationId: get-confluent-service-accounts + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + responses: + '200': + description: All service accounts created on a confluent cluster. + content: + application/json: + schema: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/ServiceAccount' + example: + - resourceId: sa-pg7y0o + internalId: 675350 + serviceName: my application + description: my business application + '400': + description: This cluster is not a Confluent cluster. + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: This cluster is not a Confluent cluster. + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have the required permission(s) "kafka.clusters.acl.read" + to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have the required permission(s) "kafka.clusters.acl.read" + to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '429': + description: rate limit exceeded on Confluent API + content: + application/json: + schema: + $ref: '#/components/schemas/TooManyRequest' + example: + title: rate limit exceeded on Confluent API + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/service-accounts-confluent' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + post: + tags: + - service-accounts + description: Create Confluent service accounts + operationId: create-confluent-service-accounts + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + requestBody: + description: New Confluent service account. + content: + application/json: + schema: + $ref: '#/components/schemas/CreateServiceAccount' + example: + name: prod-service-account + description: my service account. + required: true + responses: + '201': + description: Create a service accounts. + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceAccount' + example: + resourceId: sa-pg7y0o + internalId: 675350 + serviceName: my application + description: my business application + '400': + description: This cluster is not a Confluent cluster. + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: This cluster is not a Confluent cluster. + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have the required permission(s) "kafka.clusters.acl.create" + to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have the required permission(s) "kafka.clusters.acl.create" + to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '429': + description: rate limit exceeded on Confluent API + content: + application/json: + schema: + $ref: '#/components/schemas/TooManyRequest' + example: + title: rate limit exceeded on Confluent API + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request POST \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/service-accounts-confluent' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"name":"prod-service-account","description":"my service account."}' \ + --location \ + --max-redirs 32 + /public/v1/clusters/{clusterName}/service-accounts-confluent/{confluentResourceId}/api-keys: + get: + tags: + - service-accounts + description: Get Confluent api keys + operationId: get-confluent-api-keys + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + - name: confluentResourceId + in: path + description: Confluent service Account's id + required: true + schema: + type: string + responses: + '200': + description: All confluent's api keys related to a service account. + content: + application/json: + schema: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/ApiKey' + example: + - key: VJF6UG6VSXYIGY32 + description: my api key. + createdAt: -1000000000-01-01T00:00:00Z + secret: R15hoiDIq8Nxu/lY4mPO3DwAVIfU5W7OI+efsB607mLgHTnVW5XJGVqX2ysDx987 + '400': + description: This cluster is not a Confluent cluster. + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: This cluster is not a Confluent cluster. + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have the required permission(s) "kafka.clusters.acl.read" + to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have the required permission(s) "kafka.clusters.acl.read" + to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '429': + description: rate limit exceeded on Confluent API + content: + application/json: + schema: + $ref: '#/components/schemas/TooManyRequest' + example: + title: rate limit exceeded on Confluent API + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/service-accounts-confluent/sa-pg7y0y/api-keys' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + post: + tags: + - service-accounts + description: Create Confluent api keys + operationId: create-confluent-api-keys + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + - name: confluentResourceId + in: path + description: Confluent service Account's id + required: true + schema: + type: string + requestBody: + description: New Confluent API key. + content: + application/json: + schema: + $ref: '#/components/schemas/CreateApiKey' + example: + name: key + description: my api key. + required: true + responses: + '201': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ApiKey' + example: + key: VJF6UG6VSXYIGY32 + description: my api key. + createdAt: -1000000000-01-01T00:00:00Z + secret: R15hoiDIq8Nxu/lY4mPO3DwAVIfU5W7OI+efsB607mLgHTnVW5XJGVqX2ysDx987 + '400': + description: This cluster is not a Confluent cluster. + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: This cluster is not a Confluent cluster. + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have the required permission(s) "kafka.clusters.acl.create" + to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have the required permission(s) "kafka.clusters.acl.create" + to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '429': + description: rate limit exceeded on Confluent API + content: + application/json: + schema: + $ref: '#/components/schemas/TooManyRequest' + example: + title: rate limit exceeded on Confluent API + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request POST \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/service-accounts-confluent/sa-pg7y0y/api-keys' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"name":"key","description":"my api key."}' \ + --location \ + --max-redirs 32 + /public/v1/clusters/{clusterName}/service-accounts-aiven: + get: + tags: + - service-accounts + description: Get Aiven service accounts + operationId: get-aiven-service-accounts + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + responses: + '200': + description: All service accounts created on an Aiven cluster. + content: + application/json: + schema: + type: array + uniqueItems: true + items: + type: string + example: + - example-account + '400': + description: This cluster is not an Aiven cluster. + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: This cluster is not an Aiven cluster. + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have the required permission(s) "kafka.clusters.acl.read" + to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have the required permission(s) "kafka.clusters.acl.read" + to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/service-accounts-aiven' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + post: + tags: + - service-accounts + description: Create an Aiven service accounts + operationId: create-an-aiven-service-accounts + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/AivenServiceAccountCreateRequest' + required: true + responses: + '201': + description: Create a service account on an Aiven cluster. + content: + application/json: + schema: + $ref: '#/components/schemas/AivenServiceAccountCreateResponse' + '400': + description: This cluster is not an Aiven cluster. + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: This cluster is not an Aiven cluster. + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have the required permission(s) "kafka.clusters.acl.create" + to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have the required permission(s) "kafka.clusters.acl.create" + to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '409': + description: The service account already exists + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: The service account already exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request POST \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/service-accounts-aiven' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"username":"my-service-account"}' \ + --location \ + --max-redirs 32 + /public/v1/clusters/{clusterName}/service-accounts-confluent/{confluentResourceId}/api-keys/{confluentApiKeyId}: + delete: + tags: + - service-accounts + description: Delete Confluent api keys + operationId: delete-confluent-api-keys + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + - name: confluentResourceId + in: path + description: Confluent service Account's id + required: true + schema: + type: string + - name: confluentApiKeyId + in: path + description: Confluent API key's id + required: true + schema: + type: string + responses: + '204': + description: '' + '400': + description: This cluster is not a Confluent cluster. + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: This cluster is not a Confluent cluster. + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have the required permission(s) "kafka.clusters.acl.delete" + to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have the required permission(s) "kafka.clusters.acl.delete" + to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '429': + description: rate limit exceeded on Confluent API + content: + application/json: + schema: + $ref: '#/components/schemas/TooManyRequest' + example: + title: rate limit exceeded on Confluent API + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/service-accounts-confluent/sa-pg7y0y/api-keys/VJF6UG6VSXYIGY32' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/v1/clusters/{clusterName}/service-accounts-aiven/{aivenSAUsername}: + delete: + tags: + - service-accounts + description: Delete an Aiven service account + operationId: delete-an-aiven-service-account + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + - name: aivenSAUsername + in: path + description: Aiven's service account username + required: true + schema: + type: string + responses: + '204': + description: '' + '400': + description: This cluster is not an Aiven cluster. + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: This cluster is not an Aiven cluster. + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have the required permission(s) "kafka.clusters.acl.delete" + to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have the required permission(s) "kafka.clusters.acl.delete" + to do this operation + '404': + description: No cluster with this technical id exist or no service account + with this username exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist or no service account + with this username exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/service-accounts-aiven/my-service-account' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/v1/clusters/{clusterName}/service-accounts-aiven/{AivenSAUsernamePattern}/acl: + get: + tags: + - service-accounts + description: Get Aiven ACLs of a cluster + operationId: get-aiven-acls-of-a-cluster + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + - name: AivenSAUsernamePattern + in: path + description: Aiven service account username pattern + required: true + schema: + type: string + responses: + '200': + description: All ACLs created on an Aiven cluster. + content: + application/json: + schema: + $ref: '#/components/schemas/AivenListAclResponse' + example: + acls: + - id: acl453f874ec16 + permission: read + topic: topicA + username: bob + - id: acl453f874ec17 + permission: read + topic: topicB + username: bob + schemaRegistryAcls: + - id: acl453f874ec16 + permission: read + resource: 'Config:' + username: bob + - id: acl453f874ec17 + permission: write + resource: 'Subject: topicA-value' + username: bob + '400': + description: This cluster is not an Aiven cluster. + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: This cluster is not an Aiven cluster. + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have the required permission(s) "kafka.clusters.acl.read" + to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have the required permission(s) "kafka.clusters.acl.read" + to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/service-accounts-aiven/my-service-account/acl' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - service-accounts + description: Create (or update) acls for a given Aiven service account + operationId: create-or-update-acls-for-a-given-aiven-service-account + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + - name: AivenSAUsernamePattern + in: path + description: Aiven service account username pattern + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/AivenAclsCreateRequest' + example: + acls: + - permission: read + topic: topicA + - permission: write + topic: topicB-* + schemaRegistryAcls: + - permission: schema_registry_read + resource: 'Config:' + - permission: schema_registry_write + resource: Subject:topicA-value + required: true + responses: + '200': + description: '' + '400': + description: This cluster is not an Aiven cluster. + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: This cluster is not an Aiven cluster. + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have the required permission(s) "kafka.clusters.acl.create, + kafka.clusters.acl.delete" to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have the required permission(s) "kafka.clusters.acl.create, + kafka.clusters.acl.delete" to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/service-accounts-aiven/my-username/acl' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"acls":[{"permission":"read","topic":"topicA"},{"permission":"write","topic":"topicB-*"}],"schemaRegistryAcls":[{"permission":"schema_registry_read","resource":"Config:"},{"permission":"schema_registry_write","resource":"Subject:topicA-value"}]}' \ + --location \ + --max-redirs 32 + /public/v1/clusters/{clusterName}/service-accounts/{aclPrincipal}: + get: + tags: + - service-accounts + description: Get acls for a given service account + operationId: get-acls-for-a-given-service-account + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + - name: aclPrincipal + in: path + description: Kafka ACL principal + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/AclBinding' + example: + - pattern: + resourceType: Topic + name: topicB + patternType: Literal + entry: + principal: + type: User + name: Gertrude + host: '*' + operation: Read + permissionType: Allow + '400': + description: Invalid value + content: + text/plain: + schema: + type: string + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have the required permission(s) "kafka.clusters.acl.read" + to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have the required permission(s) "kafka.clusters.acl.read" + to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/service-accounts/User:bob' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/v1/clusters/{clusterName}/interceptors: + get: + tags: + - interceptors + description: Get interceptors + operationId: get-interceptors + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + responses: + '200': + description: All interceptors created on the cluster. + content: + application/json: + schema: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/Interceptor' + example: + - name: myEncryptionInterceptor + pluginClass: io.conduktor.gateway.interceptor.EncryptPlugin + priority: 50 + config: + topic: topicName + - name: myInjectHeaderInterceptor + pluginClass: io.conduktor.gateway.interceptor.DynamicHeaderInjectionPlugin + priority: 51 + config: + topic: topicName + - name: myInjectHeaderInterceptor + pluginClass: io.conduktor.gateway.interceptor.DynamicHeaderInjectionPlugin + priority: 52 + config: + topic: topicName + '400': + description: The cluster is not a valid gateway cluster + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The cluster is not a valid gateway cluster + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/interceptors' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + post: + tags: + - interceptors + description: Create an Interceptor + operationId: create-an-interceptor + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + requestBody: + description: The interceptor to create. + content: + application/json: + schema: + $ref: '#/components/schemas/Interceptor' + example: + name: myEncryptionInterceptor + pluginClass: io.conduktor.gateway.interceptor.EncryptPlugin + priority: 50 + config: + topic: topicName + required: true + responses: + '201': + description: '' + '400': + description: The cluster is not a valid gateway cluster + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The cluster is not a valid gateway cluster + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request POST \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/interceptors' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"name":"myEncryptionInterceptor","pluginClass":"io.conduktor.gateway.interceptor.EncryptPlugin","priority":50,"config":{"topic":"topicName"}}' \ + --location \ + --max-redirs 32 + /public/v1/clusters/{clusterName}/plugins: + get: + tags: + - interceptors + description: Get plugins + operationId: get-plugins + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + responses: + '200': + description: All plugins available on the cluster. + content: + application/json: + schema: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/Plugin' + example: + - plugin: io.conduktor.gateway.interceptor.chaos.SimulateSlowProducersConsumersPlugin + pluginId: io.conduktor.gateway.interceptor.chaos.SimulateSlowProducersConsumersPlugin + tags: + parent: Console + description: Validate your application behaves correctly when broker + errors occur. + license: enterprise + version: 1.0.1-SNAPSHOT + title: Broker errors + '400': + description: The cluster is not a valid gateway cluster + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The cluster is not a valid gateway cluster + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/plugins' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/v1/clusters/{clusterName}/plugins/{pluginId}: + get: + tags: + - interceptors + description: Get a plugin + operationId: get-a-plugin + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + - name: pluginId + in: path + required: true + schema: + type: string + responses: + '200': + description: Get a specific plugin available on the cluster. + content: + application/json: + schema: + $ref: '#/components/schemas/PluginWithReadme' + example: + plugin: io.conduktor.gateway.interceptor.chaos.SimulateSlowProducersConsumersPlugin + pluginId: io.conduktor.gateway.interceptor.chaos.SimulateSlowProducersConsumersPlugin + tags: + parent: Console + description: Validate your application behaves correctly when broker + errors occur. + license: enterprise + version: 1.0.1-SNAPSHOT + title: Broker errors + readme: "---\nversion: 1.0.1-SNAPSHOT\ntitle: Broker errors\ndescription:\ + \ Validate your application behaves correctly when broker errors\ + \ occur.\nparent: chaos\nlicense: enterprise\n---\n\n## What is\ + \ Broken broker chaos?\n\nThis interceptor inject intermittent errors\ + \ in client connections to brokers that are consistent with broker\ + \ side issues. \n\nThis only works on Produce requests and Fetch\ + \ requests.\n\n## Configuration\n\n| config | type | description\ + \ \ + \ \ + \ |\n|:--------------|------|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n\ + | rateInPercent | int | The percentage of requests that will result\ + \ in a broker not available response \ + \ \ + \ |\n| errorMap | Map | Map of ApiKeys and Error you\ + \ want to response, not required.Default errorMap when errorMap\ + \ is not configured:FETCH: UNKNOWN_SERVER_ERRORPRODUCE: CORRUPT_MESSAGE\ + \ |\n\n## Possible Error for Api Key\n\n### [FETCH](https://github.com/apache/kafka/blob/trunk/clients/src/main/java/org/apache/kafka/common/requests/FetchResponse.java#L48-L65):\n\ + \n- OFFSET_OUT_OF_RANGE\n- TOPIC_AUTHORIZATION_FAILED\n- REPLICA_NOT_AVAILABLE\n\ + - NOT_LEADER_OR_FOLLOWER\n- FENCED_LEADER_EPOCH\n- UNKNOWN_LEADER_EPOCH\n\ + - UNKNOWN_TOPIC_OR_PARTITION\n- KAFKA_STORAGE_ERROR\n- UNSUPPORTED_COMPRESSION_TYPE\n\ + - CORRUPT_MESSAGE\n- UNKNOWN_TOPIC_ID\n- FETCH_SESSION_TOPIC_ID_ERROR,\n\ + - INCONSISTENT_TOPIC_ID,\n- UNKNOWN_SERVER_ERROR\n\n### [PRODUCE](https://github.com/apache/kafka/blob/trunk/clients/src/main/java/org/apache/kafka/common/requests/ProduceResponse.java#L39-L53):\n\ + \n- CORRUPT_MESSAGE,\n- UNKNOWN_TOPIC_OR_PARTITION,\n- NOT_LEADER_OR_FOLLOWER,\n\ + - INVALID_TOPIC_EXCEPTION,\n- RECORD_LIST_TOO_LARGE,\n- NOT_ENOUGH_REPLICAS,\n\ + - NOT_ENOUGH_REPLICAS_AFTER_APPEND,\n- INVALID_REQUIRED_ACKS,\n\ + - TOPIC_AUTHORIZATION_FAILED,\n- UNSUPPORTED_FOR_MESSAGE_FORMAT,\n\ + - INVALID_PRODUCER_EPOCH,\n- CLUSTER_AUTHORIZATION_FAILED,\n- TRANSACTIONAL_ID_AUTHORIZATION_FAILED,\n\ + - INVALID_RECORD\n\n## Example\n\n```yaml\n name: myBrokenBrokerChaosInterceptor\n\ + \ pluginClass: io.conduktor.gateway.interceptor.BrokenBrokerChaosPlugin\n\ + \ priority: 100\n config:\n - key: rateInPercent\n \ + \ value: 100\n - key: errorMap\n value:\n \ + \ FETCH: UNKNOWN_SERVER_ERROR\n PRODUCE: CORRUPT_MESSAGE\n\ + ```" + '400': + description: The cluster is not a valid gateway cluster + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The cluster is not a valid gateway cluster + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/plugins/io.conduktor.gateway.interceptor.chaos.SimulateSlowProducersConsumersPlugin' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/v1/clusters/{clusterName}/interceptors/{interceptorName}: + put: + tags: + - interceptors + description: Update an Interceptor + operationId: update-an-interceptor + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + - name: interceptorName + in: path + required: true + schema: + type: string + requestBody: + description: The interceptor to update. + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateInterceptor' + example: + pluginClass: io.conduktor.gateway.interceptor.EncryptPlugin + priority: 50 + config: + topic: topicName + required: true + responses: + '204': + description: '' + '400': + description: The cluster is not a valid gateway cluster + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The cluster is not a valid gateway cluster + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/interceptors/name' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"pluginClass":"io.conduktor.gateway.interceptor.EncryptPlugin","priority":50,"config":{"topic":"topicName"}}' \ + --location \ + --max-redirs 32 + delete: + tags: + - interceptors + description: Delete an interceptor + operationId: delete-an-interceptor + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + - name: interceptorName + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + '400': + description: The cluster is not a valid gateway cluster + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The cluster is not a valid gateway cluster + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/interceptors/name' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/v1/clusters/{clusterName}/topics: + post: + tags: + - topic + description: List topic on a kafka cluster + operationId: list-topic-on-a-kafka-cluster + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/TopicListRequest' + example: + page: 1 + itemsPerPage: 20 + filter: + - contains: opi + type: TopicNameFilter + - oneOf: + - compact + type: CleanupPolicyFilter + - type: HideInternal + sort: ByMessageCount + descSort: true + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/Page_TopicResponse' + example: + data: + - name: topic + type: NotIndexedTopic + - name: topic + replicationFactor: 3 + partitionCount: 3 + recordCount: 191829 + topicSize: 42390 + cleanupPolicy: compact + retentionInSize: -1 + retentionInMs: -1 + minIsr: 1 + tags: + - id: f9ae435d-ac85-4d9f-ae0b-e1eb3ee0bf28 + name: a_tag + color: '#008000' + labels: + label-key: label-value + lastActivityAt: '2021-03-18T14:00:00Z' + produceRate: 0.0 + type: IndexedTopic + page: 1 + totalPages: 1 + perPage: 10 + totalElements: 1 + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have the required permission(s) "kafka.topics.read" + to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have the required permission(s) "kafka.topics.read" + to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request POST \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/topics' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"page":1,"itemsPerPage":20,"filter":[{"contains":"opi","type":"TopicNameFilter"},{"oneOf":["compact"],"type":"CleanupPolicyFilter"},{"type":"HideInternal"}],"sort":"ByMessageCount","descSort":true}' \ + --location \ + --max-redirs 32 + /public/v1/clusters/{clusterName}/consumergroups: + post: + tags: + - consumergroup + description: List consumer group + operationId: list-consumer-group + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ConsumerGroupRequest' + example: + page: 1 + itemsPerPage: 20 + filter: + - contains: opi + type: OnConsumerGroupName + - oneOf: + - Dead + type: OnState + sort: ByMaxLagTimeInSeconds + descSort: true + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/Page_ConsumerGroupResponse' + example: + data: + - name: cg1 + state: Dead + members: 1 + overallLag: 542 + topics: + - topic1 + maxLagTimeInSeconds: 100 + labels: + label: value + groupType: Consumer + type: IndexedConsumerGroup + page: 1 + totalPages: 1 + perPage: 20 + totalElements: 1 + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have the required permission(s) "kafka.groups.describe" + to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have the required permission(s) "kafka.groups.describe" + to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request POST \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/consumergroups' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"page":1,"itemsPerPage":20,"filter":[{"contains":"opi","type":"OnConsumerGroupName"},{"oneOf":["Dead"],"type":"OnState"}],"sort":"ByMaxLagTimeInSeconds","descSort":true}' \ + --location \ + --max-redirs 32 + /public/v1/clusters/{clusterName}/ksqldbs/{ksqlDBSlug}/queries: + get: + tags: + - ksqlDBs + description: List queries + operationId: list-queries + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + - name: ksqlDBSlug + in: path + required: true + schema: + type: string + responses: + '200': + description: All queries available on the cluster. + content: + application/json: + schema: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/Query' + example: + - queryString: "CREATE TABLE WIKIPEDIA_COUNT_GT_1 WITH (KAFKA_TOPIC='WIKIPEDIA_COUNT_GT_1',\ + \ KEY_FORMAT='JSON', PARTITIONS=2, REPLICAS=2) AS SELECT\n WIKIPEDIA.USER\ + \ USER,\n WIKIPEDIA.META->URI URI,\n COUNT(*) COUNT\nFROM WIKIPEDIA\ + \ WIKIPEDIA\nWINDOW TUMBLING ( SIZE 300 SECONDS ) \nWHERE (WIKIPEDIA.META->DOMAIN\ + \ = 'commons.wikimedia.org')\nGROUP BY WIKIPEDIA.USER, WIKIPEDIA.META->URI\n\ + HAVING (COUNT(*) > 1)\nEMIT CHANGES;" + sinks: + - WIKIPEDIA_COUNT_GT_1 + sinkKafkaTopics: + - WIKIPEDIA_COUNT_GT_1 + id: CTAS_WIKIPEDIA_COUNT_GT_1_7 + statusCount: + RUNNING: 1 + ERROR: 0 + TERMINATED: 0 + SUCCESS: 0 + queryType: PERSISTENT + state: RUNNING + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/ksqldbs/server/queries' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + post: + tags: + - ksqlDBs + description: Execute a query + operationId: execute-a-query + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + - name: ksqlDBSlug + in: path + required: true + schema: + type: string + requestBody: + description: example + content: + application/json: + schema: + $ref: '#/components/schemas/KsqlDBQuery' + example: + ksql: SELECT * FROM WIKIPEDIA EMIT CHANGES; + properties: + ksql.streams.auto.offset.reset: earliest + required: true + responses: + '200': + description: The result of the query. + content: + application/json: + schema: + type: array + items: + type: string + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request POST \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/ksqldbs/ksqldbSlug/queries' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"ksql":"SELECT * FROM WIKIPEDIA EMIT CHANGES;","properties":{"ksql.streams.auto.offset.reset":"earliest"}}' \ + --location \ + --max-redirs 32 + /public/v1/clusters/{clusterName}/ksqldbs/{ksqlDBSlug}/tables: + get: + tags: + - ksqlDBs + description: List tables + operationId: list-tables + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + - name: ksqlDBSlug + in: path + required: true + schema: + type: string + responses: + '200': + description: All tables available on the cluster. + content: + application/json: + schema: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/Table' + example: + - name: table1 + topic: topic1 + keyFormat: JSON + valueFormat: JSON + reads: 3 + writes: 1 + isWindowed: false + - name: table2 + topic: topic2 + keyFormat: JSON + valueFormat: JSON + reads: 5 + writes: 1 + isWindowed: false + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/ksqldbs/server/tables' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/v1/clusters/{clusterName}/ksqldbs/{ksqlDBSlug}/describe/{sourceName}: + get: + tags: + - ksqlDBs + description: Describe source + operationId: describe-source + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + - name: ksqlDBSlug + in: path + required: true + schema: + type: string + - name: sourceName + in: path + required: true + schema: + type: string + responses: + '200': + description: The description of the source. (stream or table) + content: + application/json: + schema: + $ref: '#/components/schemas/SourceDescription' + example: + name: WIKIPEDIA_COUNT_GT_1 + windowType: TUMBLING + topic: WIKIPEDIA_COUNT_GT_1 + type: TABLE + keyFormat: JSON + valueFormat: JSON + sourceConstraints: + - TOPIC1 + - TOPIC2 + statement: CREATE STREAM WIKIPEDIA (BOT BOOLEAN, COMMENT STRING, ID + BIGINT, LENGTH STRUCT, LOG_ACTION STRING, + LOG_ACTION_COMMENT STRING, LOG_ID BIGINT, LOG_TYPE STRING, META + STRUCT, MINOR BOOLEAN, `NAMESPACE` BIGINT, + PARSEDCOMMENT STRING, PATROLLED BOOLEAN, REVISION STRUCT, SERVER_NAME STRING, SERVER_SCRIPT_PATH STRING, SERVER_URL + STRING, TIMESTAMP BIGINT, TITLE STRING, TYPE STRING, USER STRING, + WIKI STRING) WITH (KAFKA_TOPIC='wikipedia.parsed', KEY_FORMAT='KAFKA', + VALUE_FORMAT='AVRO'); + statistics: + consumer-message-per-sec: 0.0 + consumer-total-messages: 0.0 + consumer-total-bytes: 0.0 + last-message: 1.696268412825E12 + readQueriesCount: 2 + writeQueriesCount: 10 + fields: + - name: BOT + type: BOOLEAN + - name: COMMENT + type: STRING + - name: ID + type: BIGINT + - name: LENGTH + type: STRUCT + fields: + - name: NEW + type: BIGINT + - name: OLD + type: BIGINT + - name: LOG_ACTION + type: STRING + - name: LOG_ACTION_COMMENT + type: STRING + - name: LOG_ID + type: BIGINT + - name: LOG_TYPE + type: STRING + - name: META + type: STRUCT + fields: + - name: DOMAIN + type: STRING + - name: DT + type: TIMESTAMP + - name: ID + type: STRING + - name: REQUEST_ID + type: STRING + - name: STREAM + type: STRING + - name: URI + type: STRING + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/ksqldbs/ksqldbSlug/describe/sourceName' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/v1/clusters/{clusterName}/ksqldbs/{ksqlDBSlug}/explain/{query}: + get: + tags: + - ksqlDBs + description: Explain a query + operationId: explain-a-query + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + - name: ksqlDBSlug + in: path + required: true + schema: + type: string + - name: query + in: path + required: true + schema: + type: string + responses: + '200': + description: The description of a query. + content: + application/json: + schema: + $ref: '#/components/schemas/ExplainQuery' + example: + statementText: |- + CREATE STREAM WIKIPEDIANOBOT WITH (KAFKA_TOPIC='WIKIPEDIANOBOT', PARTITIONS=2, REPLICAS=2) AS SELECT + *, + (WIKIPEDIA.LENGTH->NEW - WIKIPEDIA.LENGTH->OLD) BYTECHANGE + FROM WIKIPEDIA WIKIPEDIA + WHERE ((((WIKIPEDIA.BOT = false) AND (WIKIPEDIA.LENGTH IS NOT NULL)) AND (WIKIPEDIA.LENGTH->NEW IS NOT NULL)) AND (WIKIPEDIA.LENGTH->OLD IS NOT NULL)) + EMIT CHANGES; + sources: + - WIKIPEDIA + sinks: + - WIKIPEDIANOBOT + topology: |+ + Topologies: + Sub-topology: 0 + Source: KSTREAM-SOURCE-0000000000 (topics: [wikipedia.parsed]) + --> KSTREAM-TRANSFORMVALUES-0000000001 + Processor: KSTREAM-TRANSFORMVALUES-0000000001 (stores: []) + --> WhereFilter + <-- KSTREAM-SOURCE-0000000000 + Processor: WhereFilter (stores: []) + --> Project + <-- KSTREAM-TRANSFORMVALUES-0000000001 + Processor: Project (stores: []) + --> KSTREAM-SINK-0000000004 + <-- WhereFilter + Sink: KSTREAM-SINK-0000000004 (topic: WIKIPEDIANOBOT) + <-- Project + + executionPlan: " > [ SINK ] | Schema: BOT BOOLEAN, COMMENT STRING,\ + \ ID BIGINT, LENGTH STRUCT, LOG_ACTION STRING,\ + \ LOG_ACTION_COMMENT STRING, LOG_ID BIGINT, LOG_TYPE STRING, META\ + \ STRUCT, MINOR BOOLEAN, `NAMESPACE` BIGINT,\ + \ PARSEDCOMMENT STRING, PATROLLED BOOLEAN, REVISION STRUCT, SERVER_NAME STRING, SERVER_SCRIPT_PATH STRING, SERVER_URL\ + \ STRING, TIMESTAMP BIGINT, TITLE STRING, TYPE STRING, USER STRING,\ + \ WIKI STRING, BYTECHANGE BIGINT | Logger: CSAS_WIKIPEDIANOBOT_3.WIKIPEDIANOBOT\n\ + \t\t > [ PROJECT ] | Schema: BOT BOOLEAN, COMMENT STRING, ID BIGINT,\ + \ LENGTH STRUCT, LOG_ACTION STRING, LOG_ACTION_COMMENT\ + \ STRING, LOG_ID BIGINT, LOG_TYPE STRING, META STRUCT, MINOR BOOLEAN, `NAMESPACE` BIGINT, PARSEDCOMMENT STRING,\ + \ PATROLLED BOOLEAN, REVISION STRUCT, SERVER_NAME\ + \ STRING, SERVER_SCRIPT_PATH STRING, SERVER_URL STRING, TIMESTAMP\ + \ BIGINT, TITLE STRING, TYPE STRING, USER STRING, WIKI STRING, BYTECHANGE\ + \ BIGINT | Logger: CSAS_WIKIPEDIANOBOT_3.Project\n\t\t\t\t > [ FILTER\ + \ ] | Schema: BOT BOOLEAN, COMMENT STRING, ID BIGINT, LENGTH STRUCT, LOG_ACTION STRING, LOG_ACTION_COMMENT STRING,\ + \ LOG_ID BIGINT, LOG_TYPE STRING, META STRUCT, MINOR BOOLEAN, `NAMESPACE` BIGINT, PARSEDCOMMENT STRING,\ + \ PATROLLED BOOLEAN, REVISION STRUCT, SERVER_NAME\ + \ STRING, SERVER_SCRIPT_PATH STRING, SERVER_URL STRING, TIMESTAMP\ + \ BIGINT, TITLE STRING, TYPE STRING, USER STRING, WIKI STRING, ROWTIME\ + \ BIGINT, ROWPARTITION INTEGER, ROWOFFSET BIGINT | Logger: CSAS_WIKIPEDIANOBOT_3.WhereFilter\n\ + \t\t\t\t\t\t > [ SOURCE ] | Schema: BOT BOOLEAN, COMMENT STRING,\ + \ ID BIGINT, LENGTH STRUCT, LOG_ACTION STRING,\ + \ LOG_ACTION_COMMENT STRING, LOG_ID BIGINT, LOG_TYPE STRING, META\ + \ STRUCT, MINOR BOOLEAN, `NAMESPACE` BIGINT,\ + \ PARSEDCOMMENT STRING, PATROLLED BOOLEAN, REVISION STRUCT, SERVER_NAME STRING, SERVER_SCRIPT_PATH STRING, SERVER_URL\ + \ STRING, TIMESTAMP BIGINT, TITLE STRING, TYPE STRING, USER STRING,\ + \ WIKI STRING, ROWTIME BIGINT, ROWPARTITION INTEGER, ROWOFFSET BIGINT\ + \ | Logger: CSAS_WIKIPEDIANOBOT_3.KsqlTopic.Source\n" + state: RUNNING + fields: + - name: BOT + type: BOOLEAN + - name: COMMENT + type: STRING + - name: ID + type: BIGINT + - name: LENGTH + type: STRUCT + fields: + - name: NEW + type: BIGINT + - name: OLD + type: BIGINT + - name: LOG_ACTION + type: STRING + - name: LOG_ACTION_COMMENT + type: STRING + - name: LOG_ID + type: BIGINT + - name: LOG_TYPE + type: STRING + - name: META + type: STRUCT + fields: + - name: DOMAIN + type: STRING + - name: DT + type: TIMESTAMP + - name: ID + type: STRING + - name: REQUEST_ID + type: STRING + - name: STREAM + type: STRING + - name: URI + type: STRING + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/ksqldbs/ksqldbSlug/explain/queryName' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/v1/clusters/{clusterName}/ksqldbs/{ksqlDBSlug}/tables/{sourceName}: + delete: + tags: + - ksqlDBs + description: Delete a table + operationId: delete-a-table + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + - name: ksqlDBSlug + in: path + required: true + schema: + type: string + - name: sourceName + in: path + required: true + schema: + type: string + responses: + '200': + description: The table has been dropped. + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/ksqldbs/ksqldbSlug/tables/WIKIPEDIA' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/v1/clusters/{clusterName}/ksqldbs/{ksqlDBSlug}/streams/{sourceName}: + delete: + tags: + - ksqlDBs + description: Delete a stream + operationId: delete-a-stream + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + - name: ksqlDBSlug + in: path + required: true + schema: + type: string + - name: sourceName + in: path + required: true + schema: + type: string + responses: + '200': + description: The stream has been dropped. + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/ksqldbs/ksqldbSlug/streams/WIKIPEDIA' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/v1/clusters/{clusterName}/ksqldbs/{ksqlDBSlug}/queries/{queryId}: + delete: + tags: + - ksqlDBs + description: Terminate a query + operationId: terminate-a-query + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + - name: ksqlDBSlug + in: path + required: true + schema: + type: string + - name: queryId + in: path + required: true + schema: + type: string + responses: + '200': + description: The query has been terminated. + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/ksqldbs/ksqldbSlug/queries/transient_WIKIPEDIA_8560267961308778116' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/v1/clusters/{clusterName}/ksqldbs/{ksqlDBSlug}/statements: + post: + tags: + - ksqlDBs + description: Execute a statement + operationId: execute-a-statement + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + - name: ksqlDBSlug + in: path + required: true + schema: + type: string + requestBody: + description: example + content: + application/json: + schema: + $ref: '#/components/schemas/KsqlDBStatement' + example: + ksql: LIST TABLES; + required: true + responses: + '200': + description: The statement has been executed. + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request POST \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/ksqldbs/ksqldbSlug/statements' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"ksql":"LIST TABLES;"}' \ + --location \ + --max-redirs 32 + /public/v1/clusters/{clusterName}/ksqldbs: + get: + tags: + - ksqlDBs + operationId: list-server-infodescription() + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + responses: + '200': + description: All server infos available on the cluster. + content: + application/json: + schema: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/KsqlServerInfo' + example: + - name: my name + slug: my-name + version: 7.2.1 + tableCount: 1 + streamCount: 10 + queryCount: 3 + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/ksqldbs' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/v1/clusters/{clusterName}/ksqldbs/{ksqlDBSlug}: + get: + tags: + - ksqlDBs + description: Get server infos of a specific ksqldb server + operationId: get-server-infos-of-a-specific-ksqldb-server + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + - name: ksqlDBSlug + in: path + required: true + schema: + type: string + responses: + '200': + description: server infos for a specific ksqldb server. + content: + application/json: + schema: + $ref: '#/components/schemas/KsqlServerInfo' + example: + name: my name + slug: my-name + version: 7.2.1 + tableCount: 1 + streamCount: 10 + queryCount: 3 + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/ksqldbs/server' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/data-quality/v1/data-quality-rule/{data-quality-rule-name}: + get: + tags: + - cli_data-quality-rule_data-quality_v1_18 + description: Get DataQualityRule by name + operationId: get-data-quality-rule-by-name-V1 + parameters: + - name: data-quality-rule-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/DataQualityRuleOutputResourceV1' + example: + apiVersion: v1 + kind: DataQualityRule + metadata: + name: my-rule + createdAt: '1970-01-01T00:00:00Z' + updatedAt: '1970-01-01T00:00:00Z' + createdBy: admin + updatedBy: admin + attachedPolicies: + - name: policy1 + displayName: policy1 + readAccess: true + - name: policy2 + displayName: policy2 + readAccess: true + builtIn: false + spec: + celExpression: value.user == 'admin' + displayName: Admin only + description: Allow only admin + type: Cel + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No data-quality-rule with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No data-quality-rule with this technical id exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/data-quality/v1/data-quality-rule/my-data-quality-rule' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - cli_data-quality-rule_data-quality_v1_18 + description: Delete a DataQualityRule + operationId: delete-data-quality-rule-V1 + parameters: + - name: data-quality-rule-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No data-quality-rule with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No data-quality-rule with this technical id exists + '409': + description: Resource link to an other resource + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource link to an other resource + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/data-quality/v1/data-quality-rule/my-data-quality-rule' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/data-quality/v1/data-quality-rule: + get: + tags: + - cli_data-quality-rule_data-quality_v1_18 + description: List DataQualityRule resources + operationId: list-data-quality-rule-resources-V1 + parameters: + - name: descSort + in: query + description: Sort in descending order (Z-A) by display name. Default is ascending + (A-Z). + required: false + schema: + type: boolean + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/DataQualityRuleOutputResourceV1' + example: + - apiVersion: v1 + kind: DataQualityRule + metadata: + name: my-rule + createdAt: '1970-01-01T00:00:00Z' + updatedAt: '1970-01-01T00:00:00Z' + createdBy: admin + updatedBy: admin + attachedPolicies: + - name: policy1 + displayName: policy1 + readAccess: true + - name: policy2 + displayName: policy2 + readAccess: true + builtIn: false + spec: + celExpression: value.user == 'admin' + displayName: Admin only + description: Allow only admin + type: Cel + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No data-quality-rule with this name exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No data-quality-rule with this name exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/data-quality/v1/data-quality-rule' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - cli_data-quality-rule_data-quality_v1_18 + description: Create or update a DataQualityRule + operationId: create-or-update-data-quality-rule-V1 + parameters: + - name: dryMode + in: query + required: false + schema: + default: false + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/DataQualityRuleResourceV1' + example: + apiVersion: v1 + kind: DataQualityRule + metadata: + name: my-rule + spec: + celExpression: value.user == 'admin' + displayName: Admin only + description: Allow only admin + type: Cel + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/DataQualityRuleApplyResultV1' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No data-quality-rule with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No data-quality-rule with this technical id exists + '409': + description: The request does not match one of the business rules + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: The request does not match one of the business rules + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/data-quality/v1/data-quality-rule?dryMode=false' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v1","kind":"DataQualityRule","metadata":{"name":"my-rule"},"spec":{"celExpression":"value.user == \'admin\'","displayName":"Admin only","description":"Allow only admin","type":"Cel"}}' \ + --location \ + --max-redirs 32 + /public/data-quality/v1/data-quality-policy/{data-quality-policy-name}: + get: + tags: + - cli_data-quality-policy_data-quality_v1_19 + description: Get DataQualityPolicy by name + operationId: get-data-quality-policy-by-name-V1 + parameters: + - name: data-quality-policy-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/DataQualityPolicyOutputResourceV1' + example: + apiVersion: v1 + kind: DataQualityPolicy + metadata: + name: my-policy + nameForMetrics: my-policy-aabb00 + group: my-group + status: ready + statuses: + - clusterSlug: my-cluster + status: ready + statusInfo: Policy my-policy is ready + updatedAt: '1970-01-01T00:00:00Z' + statusInfo: Policy my-policy is ready + attachedRules: + - name: my-rule + displayName: My rule + metrics: + evaluationsCount: 10 + violationsCount: 2 + createdAt: '1970-01-01T00:00:00Z' + updatedAt: '1970-01-01T00:00:00Z' + createdBy: my-user + updatedBy: my-user + spec: + displayName: My policy + description: My policy description + rules: + - my-rule + targets: + - cluster: my-cluster1 + topic: topic + patternType: LITERAL + - cluster: my-cluster2 + topic: topic-* + patternType: PREFIXED + actions: + block: + enabled: true + mark: + enabled: true + dlq: + enabled: true + dlqTopic: my-dlq-topic + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No data-quality-policy with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No data-quality-policy with this technical id exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/data-quality/v1/data-quality-policy/my-data-quality-policy' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - cli_data-quality-policy_data-quality_v1_19 + description: Delete a DataQualityPolicy + operationId: delete-data-quality-policy-V1 + parameters: + - name: data-quality-policy-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No data-quality-policy with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No data-quality-policy with this technical id exists + '409': + description: Resource link to an other resource + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource link to an other resource + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/data-quality/v1/data-quality-policy/my-data-quality-policy' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/data-quality/v1/data-quality-policy: + get: + tags: + - cli_data-quality-policy_data-quality_v1_19 + description: List DataQualityPolicy resources + operationId: list-data-quality-policy-resources-V1 + parameters: + - name: includeMetrics + in: query + description: Add a metrics field in the metadata section with the counters + of evaluated messages and violations + required: false + schema: + type: boolean + - name: metricsFrom + in: query + description: Start date for the metrics computation. If not provided, the + metrics are computed from the last 1 hour + required: false + schema: + type: string + format: date-time + - name: descSort + in: query + description: Sort in descending order (Z-A) by display name. Default is ascending + (A-Z). + required: false + schema: + type: boolean + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/DataQualityPolicyOutputResourceV1' + example: + - apiVersion: v1 + kind: DataQualityPolicy + metadata: + name: my-policy + nameForMetrics: my-policy-aabb00 + group: my-group + status: ready + statuses: + - clusterSlug: my-cluster + status: ready + statusInfo: Policy my-policy is ready + updatedAt: '1970-01-01T00:00:00Z' + statusInfo: Policy my-policy is ready + attachedRules: + - name: my-rule + displayName: My rule + metrics: + evaluationsCount: 10 + violationsCount: 2 + createdAt: '1970-01-01T00:00:00Z' + updatedAt: '1970-01-01T00:00:00Z' + createdBy: my-user + updatedBy: my-user + spec: + displayName: My policy + description: My policy description + rules: + - my-rule + targets: + - cluster: my-cluster1 + topic: topic + patternType: LITERAL + - cluster: my-cluster2 + topic: topic-* + patternType: PREFIXED + actions: + block: + enabled: true + mark: + enabled: true + dlq: + enabled: true + dlqTopic: my-dlq-topic + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No data-quality-policy with this name exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No data-quality-policy with this name exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/data-quality/v1/data-quality-policy' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - cli_data-quality-policy_data-quality_v1_19 + description: Create or update a DataQualityPolicy + operationId: create-or-update-data-quality-policy-V1 + parameters: + - name: dryMode + in: query + required: false + schema: + default: false + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/DataQualityPolicyResourceV1' + example: + apiVersion: v1 + kind: DataQualityPolicy + metadata: + name: my-policy + group: my-group + spec: + displayName: My policy + description: My policy description + rules: + - my-rule + targets: + - cluster: my-cluster1 + topic: topic + patternType: LITERAL + - cluster: my-cluster2 + topic: topic-* + patternType: PREFIXED + actions: + block: + enabled: true + mark: + enabled: true + dlq: + enabled: true + dlqTopic: my-dlq-topic + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/DataQualityPolicyApplyResultV1' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No data-quality-policy with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No data-quality-policy with this technical id exists + '409': + description: The request does not match one of the business rules + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: The request does not match one of the business rules + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/data-quality/v1/data-quality-policy?dryMode=false' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v1","kind":"DataQualityPolicy","metadata":{"name":"my-policy","group":"my-group"},"spec":{"displayName":"My policy","description":"My policy description","rules":["my-rule"],"targets":[{"cluster":"my-cluster1","topic":"topic","patternType":"LITERAL"},{"cluster":"my-cluster2","topic":"topic-*","patternType":"PREFIXED"}],"actions":{"block":{"enabled":true},"mark":{"enabled":true},"dlq":{"enabled":true,"dlqTopic":"my-dlq-topic"}}}}' \ + --location \ + --max-redirs 32 + /public/partner-zone/v2/{partner-zone-name}/generate-credentials: + post: + tags: + - cli_partner-zone_console_v2_17 + description: Generate service account credentials + operationId: generate-credentials + parameters: + - name: partner-zone-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + content: + application/json: + schema: + type: string + example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJ1c2VyMSIsIm5hbWUiOiJ1c2VyMSIsImlhdCI6MTUxNjIzOTAyMn0.1Q2JjNz + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: The searched entity was not found + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: The searched entity was not found + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-cdk-run-version: '1' + x-cdk-run-name: partnerZoneGenerateCredentials + x-cdk-run-doc: generate a token for a partner zone service account + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request POST \ + --url 'http://localhost:8080/public/partner-zone/v2/john-partner-zone/generate-credentials' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/console/v2/partner-zone/{partner-zone-name}/kafka-configuration: + get: + tags: + - partner-zone + description: Get partner zone kafka configuration + operationId: kafka-configuration + parameters: + - name: partner-zone-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + content: + application/json: + schema: + type: string + example: | + bootstrap.servers=my-cluster.conduktor.io:9092 + security.protocol=SASL_PLAINTEXT + sasl.mechanism=PLAIN + sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username='johndoe' password='***************'; + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: The searched entity was not found + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: The searched entity was not found + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/console/v2/partner-zone/john-partner-zone/kafka-configuration' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/console/v2/partner-zone/{partner-zone-name}: + get: + tags: + - cli_partner-zone_console_v2_17 + description: Get PartnerZone by name + operationId: get-partner-zone-by-name-V2 + parameters: + - name: partner-zone-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/PartnerZoneOutputResourceV2' + example: + apiVersion: v2 + kind: PartnerZone + metadata: + name: john-partner-zone + id: 00000000-0000-0000-0000-000000000000 + updatedAt: '2021-09-01T00:00:00Z' + status: READY + labels: + project: projectA + spec: + cluster: my-gateway + underlyingCluster: my-cluster + displayName: John's partner zone + description: for john + url: http://conduktor.io + authenticationMode: + serviceAccount: johndoe + type: PLAIN + topics: + - name: topic-a + backingTopic: kafka-topic-a + permission: WRITE + partner: + name: John Doe + role: Data analyst + email: johndoe@company.io + phone: 07827 837 177 + trafficControlPolicies: + maxProduceRate: 1000000 + maxConsumeRate: 2000000 + limitCommitOffset: 30 + headers: + addOnProduce: + - key: X-My-Header + value: my-x-value + overrideIfExists: false + - key: Y-My-Header + value: my-y-value + overrideIfExists: true + removeOnConsume: + - keyRegex: my_org_prefix.* + vclusterName: johns-vcluster + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No partner-zone with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No partner-zone with this technical id exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/console/v2/partner-zone/my-partner-zone' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - cli_partner-zone_console_v2_17 + description: Delete a PartnerZone + operationId: delete-partner-zone-V2 + parameters: + - name: partner-zone-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No partner-zone with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No partner-zone with this technical id exists + '409': + description: Resource link to an other resource + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource link to an other resource + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/console/v2/partner-zone/my-partner-zone' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/console/v2/partner-zone: + get: + tags: + - cli_partner-zone_console_v2_17 + description: List PartnerZone resources + operationId: list-partner-zone-resources-V2 + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/PartnerZoneOutputResourceV2' + example: + - apiVersion: v2 + kind: PartnerZone + metadata: + name: john-partner-zone + id: 00000000-0000-0000-0000-000000000000 + updatedAt: '2021-09-01T00:00:00Z' + status: READY + labels: + project: projectA + spec: + cluster: my-gateway + underlyingCluster: my-cluster + displayName: John's partner zone + description: for john + url: http://conduktor.io + authenticationMode: + serviceAccount: johndoe + type: PLAIN + topics: + - name: topic-a + backingTopic: kafka-topic-a + permission: WRITE + partner: + name: John Doe + role: Data analyst + email: johndoe@company.io + phone: 07827 837 177 + trafficControlPolicies: + maxProduceRate: 1000000 + maxConsumeRate: 2000000 + limitCommitOffset: 30 + headers: + addOnProduce: + - key: X-My-Header + value: my-x-value + overrideIfExists: false + - key: Y-My-Header + value: my-y-value + overrideIfExists: true + removeOnConsume: + - keyRegex: my_org_prefix.* + vclusterName: johns-vcluster + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No partner-zone with this name exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No partner-zone with this name exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/console/v2/partner-zone' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - cli_partner-zone_console_v2_17 + description: Create or update a PartnerZone + operationId: create-or-update-partner-zone-V2 + parameters: + - name: dryMode + in: query + required: false + schema: + default: false + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/PartnerZoneResourceV2' + example: + apiVersion: v2 + kind: PartnerZone + metadata: + name: john-partner-zone + labels: + project: projectA + spec: + cluster: my-gateway + underlyingCluster: my-cluster + displayName: John's partner zone + description: for john + url: http://conduktor.io + authenticationMode: + serviceAccount: johndoe + type: PLAIN + topics: + - name: topic-a + backingTopic: kafka-topic-a + permission: WRITE + partner: + name: John Doe + role: Data analyst + email: johndoe@company.io + phone: 07827 837 177 + trafficControlPolicies: + maxProduceRate: 1000000 + maxConsumeRate: 2000000 + limitCommitOffset: 30 + headers: + addOnProduce: + - key: X-My-Header + value: my-x-value + overrideIfExists: false + - key: Y-My-Header + value: my-y-value + overrideIfExists: true + removeOnConsume: + - keyRegex: my_org_prefix.* + vclusterName: johns-vcluster + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/PartnerZoneApplyResultV2' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No partner-zone with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No partner-zone with this technical id exists + '409': + description: The request does not match one of the business rules + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: The request does not match one of the business rules + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/console/v2/partner-zone?dryMode=false' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v2","kind":"PartnerZone","metadata":{"name":"john-partner-zone","labels":{"project":"projectA"}},"spec":{"cluster":"my-gateway","underlyingCluster":"my-cluster","displayName":"John\'s partner zone","description":"for john","url":"http://conduktor.io","authenticationMode":{"serviceAccount":"johndoe","type":"PLAIN"},"topics":[{"name":"topic-a","backingTopic":"kafka-topic-a","permission":"WRITE"}],"partner":{"name":"John Doe","role":"Data analyst","email":"johndoe@company.io","phone":"07827 837 177"},"trafficControlPolicies":{"maxProduceRate":1000000,"maxConsumeRate":2000000,"limitCommitOffset":30},"headers":{"addOnProduce":[{"key":"X-My-Header","value":"my-x-value","overrideIfExists":false},{"key":"Y-My-Header","value":"my-y-value","overrideIfExists":true}],"removeOnConsume":[{"keyRegex":"my_org_prefix.*"}]},"vclusterName":"johns-vcluster"}}' \ + --location \ + --max-redirs 32 + /public/sql/v1/execute: + post: + tags: + - beta + - sql + description: Run a SQL query. Admin API keys are currently not supported, please + use a User API key instead. + operationId: execute + parameters: + - name: maxLine + in: query + description: Max number of lines to return + required: true + schema: + type: integer + format: int32 + maximum: 500 + example: 100 + requestBody: + content: + text/plain: + schema: + type: string + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/SqlResultApiResponse' + example: + header: + - field1 + - field2 + row: + - - '1' + - 2 + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request POST \ + --url 'http://localhost:8080/public/sql/v1/execute?maxLine=100' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: text/plain' \ + --data-raw 'select * from my_cluser_topic1' \ + --location \ + --max-redirs 32 + /public/sql/v1/topicTable: + get: + tags: + - beta + - sql + description: List of topic tables and their columns + operationId: topicTable + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/TopicTable' + example: + - tableName: my_cluster_topic + clusterSlug: my_cluster + topicName: topic + fields: + id: + - columnName: id + columnType: INT + - columnName: id_2 + columnType: LONG + firstName: + - columnName: firstName + columnType: STRING + - tableName: my_cluster2_topic2 + clusterSlug: my_cluster2 + topicName: topic2 + fields: + id: + - columnName: id + columnType: INT + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/sql/v1/topicTable' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/sql/v1/cluster/{cluster}/indexed_topic/{indexed-topic-name}: + get: + tags: + - beta + - cli_indexed-topic_sql_v1_16 + description: Get IndexedTopic by name + operationId: get-indexed-topic-by-name-V1 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: indexed-topic-name + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/IndexedTopicResourceV1' + example: + apiVersion: v1 + kind: IndexedTopic + metadata: + cluster: my-cluster + name: my-topic + spec: + retentionTimeInSecond: 3600 + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No indexed-topic with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No indexed-topic with this technical id exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/sql/v1/cluster/my-cluster/indexed_topic/my-topic' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - beta + - cli_indexed-topic_sql_v1_16 + description: Delete a IndexedTopic + operationId: delete-indexed-topic-V1 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: indexed-topic-name + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No indexed-topic with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No indexed-topic with this technical id exists + '409': + description: Resource link to an other resource + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource link to an other resource + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/sql/v1/cluster/my-cluster/indexed_topic/my-topic' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/sql/v1/cluster/{cluster}/indexed_topic: + get: + tags: + - cli_indexed-topic_sql_v1_16 + description: List IndexedTopic resources + operationId: list-indexed-topic-resources-V1 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/IndexedTopicResourceV1' + example: + - apiVersion: v1 + kind: IndexedTopic + metadata: + cluster: my-cluster + name: my-topic + spec: + retentionTimeInSecond: 3600 + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No indexed-topic with this name exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No indexed-topic with this name exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/sql/v1/cluster/my-cluster/indexed_topic' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - cli_indexed-topic_sql_v1_16 + description: Create or update a IndexedTopic + operationId: create-or-update-indexed-topic-V1 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: dryMode + in: query + required: false + schema: + default: false + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/IndexedTopicResourceV1' + example: + apiVersion: v1 + kind: IndexedTopic + metadata: + cluster: my-cluster + name: my-topic + spec: + retentionTimeInSecond: 3600 + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/IndexedTopicApplyResultV1' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No indexed-topic with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No indexed-topic with this technical id exists + '409': + description: The request does not match one of the business rules + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: The request does not match one of the business rules + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/sql/v1/cluster/my-cluster/indexed_topic?dryMode=false' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v1","kind":"IndexedTopic","metadata":{"cluster":"my-cluster","name":"my-topic"},"spec":{"retentionTimeInSecond":3600}}' \ + --location \ + --max-redirs 32 + /public/self-serve/v1/application-group/{application-group-name}: + get: + tags: + - cli_application-group_self-serve_v1_10 + description: |- + Get ApplicationGroup by name + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: get-application-group-by-name-V1 + parameters: + - name: application-group-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ApplicationGroupResourceV1' + example: + apiVersion: v1 + kind: ApplicationGroup + metadata: + application: clickstream-app + name: clickstream-support + spec: + displayName: Support Clickstream + description: |- + Members of the Support Group are allowed: + Read access on all the resources + Can restart owned connectors + Can reset offsets + instancePermissions: + - appInstance: clickstream-app-dev + permissions: + - instanceViewConfig + permissions: + - appInstance: clickstream-app-dev + patternType: LITERAL + name: '*' + permissions: + - topicConsume + - topicViewConfig + resourceType: TOPIC + members: + - user1@company.org + - user2@company.org + externalGroups: + - support + externalGroupRegex: + - support* + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No application-group with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No application-group with this technical id exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/self-serve/v1/application-group/my-application-group' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - cli_application-group_self-serve_v1_10 + description: |- + Delete a ApplicationGroup + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: delete-application-group-V1 + parameters: + - name: application-group-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No application-group with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No application-group with this technical id exists + '409': + description: Resource link to an other resource + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource link to an other resource + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/self-serve/v1/application-group/my-application-group' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/self-serve/v1/application-group: + get: + tags: + - cli_application-group_self-serve_v1_10 + description: |- + List ApplicationGroup resources + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: list-application-group-resources-V1 + parameters: + - name: application + in: query + description: Filter by application name + required: false + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/ApplicationGroupResourceV1' + example: + - apiVersion: v1 + kind: ApplicationGroup + metadata: + application: clickstream-app + name: clickstream-support + spec: + displayName: Support Clickstream + description: |- + Members of the Support Group are allowed: + Read access on all the resources + Can restart owned connectors + Can reset offsets + instancePermissions: + - appInstance: clickstream-app-dev + permissions: + - instanceViewConfig + permissions: + - appInstance: clickstream-app-dev + patternType: LITERAL + name: '*' + permissions: + - topicConsume + - topicViewConfig + resourceType: TOPIC + members: + - user1@company.org + - user2@company.org + externalGroups: + - support + externalGroupRegex: + - support* + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No application-group with this name exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No application-group with this name exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/self-serve/v1/application-group' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - cli_application-group_self-serve_v1_10 + description: |- + Create or update a ApplicationGroup + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: create-or-update-application-group-V1 + parameters: + - name: dryMode + in: query + required: false + schema: + default: false + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ApplicationGroupResourceV1' + example: + apiVersion: v1 + kind: ApplicationGroup + metadata: + application: clickstream-app + name: clickstream-support + spec: + displayName: Support Clickstream + description: |- + Members of the Support Group are allowed: + Read access on all the resources + Can restart owned connectors + Can reset offsets + instancePermissions: + - appInstance: clickstream-app-dev + permissions: + - instanceViewConfig + permissions: + - appInstance: clickstream-app-dev + patternType: LITERAL + name: '*' + permissions: + - topicConsume + - topicViewConfig + resourceType: TOPIC + members: + - user1@company.org + - user2@company.org + externalGroups: + - support + externalGroupRegex: + - support* + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ApplicationGroupApplyResultV1' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No application-group with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No application-group with this technical id exists + '409': + description: The request does not match one of the business rules + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: The request does not match one of the business rules + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/self-serve/v1/application-group?dryMode=false' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v1","kind":"ApplicationGroup","metadata":{"application":"clickstream-app","name":"clickstream-support"},"spec":{"displayName":"Support Clickstream","description":"Members of the Support Group are allowed:\nRead access on all the resources\nCan restart owned connectors\nCan reset offsets","instancePermissions":[{"appInstance":"clickstream-app-dev","permissions":["instanceViewConfig"]}],"permissions":[{"appInstance":"clickstream-app-dev","patternType":"LITERAL","name":"*","permissions":["topicConsume","topicViewConfig"],"resourceType":"TOPIC"}],"members":["user1@company.org","user2@company.org"],"externalGroups":["support"],"externalGroupRegex":["support*"]}}' \ + --location \ + --max-redirs 32 + /public/self-serve/v1/application-instance-permission/{application-instance-permission-name}: + get: + tags: + - cli_application-instance-permission_self-serve_v1_9 + description: |- + Get ApplicationInstancePermission by name + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: get-application-instance-permission-by-name-V1 + parameters: + - name: application-instance-permission-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ApplicationInstancePermissionResourceV1' + example: + apiVersion: v1 + kind: ApplicationInstancePermission + metadata: + application: test + appInstance: test + name: test + spec: + resource: + type: TOPIC + name: test + patternType: LITERAL + userPermission: READ + serviceAccountPermission: WRITE + grantedTo: test + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No application-instance-permission with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No application-instance-permission with this technical id exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/self-serve/v1/application-instance-permission/my-application-instance-permission' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - cli_application-instance-permission_self-serve_v1_9 + description: |- + Delete a ApplicationInstancePermission + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: delete-application-instance-permission-V1 + parameters: + - name: application-instance-permission-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No application-instance-permission with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No application-instance-permission with this technical id exists + '409': + description: Resource link to an other resource + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource link to an other resource + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/self-serve/v1/application-instance-permission/my-application-instance-permission' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/self-serve/v1/application-instance-permission: + get: + tags: + - cli_application-instance-permission_self-serve_v1_9 + description: |- + List ApplicationInstancePermission resources + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: list-application-instance-permission-resources-V1 + parameters: + - name: filterByApplication + in: query + description: Filter by application + required: false + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + - name: filterByApplicationInstance + in: query + description: Filter by application instance + required: false + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + - name: filterByGrantedTo + in: query + description: Filter by granted to + required: false + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/ApplicationInstancePermissionResourceV1' + example: + - apiVersion: v1 + kind: ApplicationInstancePermission + metadata: + application: test + appInstance: test + name: test + spec: + resource: + type: TOPIC + name: test + patternType: LITERAL + userPermission: READ + serviceAccountPermission: WRITE + grantedTo: test + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No application-instance-permission with this name exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No application-instance-permission with this name exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/self-serve/v1/application-instance-permission' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - cli_application-instance-permission_self-serve_v1_9 + description: |- + Create or update a ApplicationInstancePermission + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: create-or-update-application-instance-permission-V1 + parameters: + - name: dryMode + in: query + required: false + schema: + default: false + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ApplicationInstancePermissionResourceV1' + example: + apiVersion: v1 + kind: ApplicationInstancePermission + metadata: + application: test + appInstance: test + name: test + spec: + resource: + type: TOPIC + name: test + patternType: LITERAL + userPermission: READ + serviceAccountPermission: WRITE + grantedTo: test + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ApplicationInstancePermissionApplyResultV1' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No application-instance-permission with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No application-instance-permission with this technical id exists + '409': + description: The request does not match one of the business rules + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: The request does not match one of the business rules + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/self-serve/v1/application-instance-permission?dryMode=false' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v1","kind":"ApplicationInstancePermission","metadata":{"application":"test","appInstance":"test","name":"test"},"spec":{"resource":{"type":"TOPIC","name":"test","patternType":"LITERAL"},"userPermission":"READ","serviceAccountPermission":"WRITE","grantedTo":"test"}}' \ + --location \ + --max-redirs 32 + /public/self-serve/v1/application-instance/{application-instance-name}: + get: + tags: + - cli_application-instance_self-serve_v1_8 + description: |- + Get ApplicationInstance by name + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: get-application-instance-by-name-V1 + parameters: + - name: application-instance-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ApplicationInstanceResourceV1' + example: + apiVersion: v1 + kind: ApplicationInstance + metadata: + name: my-app-instance-prod + application: my-app + labels: + env: prod + team: my-team + spec: + cluster: prod-cluster + topicPolicyRef: + - my-topic-policy + policyRef: + - my-policy + resources: + - type: TOPIC + name: my-topic + patternType: LITERAL + - type: CONSUMER_GROUP + name: my-consumer-group + patternType: LITERAL + serviceAccount: my-service-account + defaultCatalogVisibility: PUBLIC + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No application-instance with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No application-instance with this technical id exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/self-serve/v1/application-instance/my-application-instance' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - cli_application-instance_self-serve_v1_8 + description: |- + Delete a ApplicationInstance + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: delete-application-instance-V1 + parameters: + - name: application-instance-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No application-instance with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No application-instance with this technical id exists + '409': + description: Resource link to an other resource + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource link to an other resource + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/self-serve/v1/application-instance/my-application-instance' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/self-serve/v1/application-instance: + get: + tags: + - cli_application-instance_self-serve_v1_8 + description: |- + List ApplicationInstance resources + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: list-application-instance-resources-V1 + parameters: + - name: application + in: query + description: Filter by application name + required: false + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/ApplicationInstanceResourceV1' + example: + - apiVersion: v1 + kind: ApplicationInstance + metadata: + name: my-app-instance-prod + application: my-app + labels: + env: prod + team: my-team + spec: + cluster: prod-cluster + topicPolicyRef: + - my-topic-policy + policyRef: + - my-policy + resources: + - type: TOPIC + name: my-topic + patternType: LITERAL + - type: CONSUMER_GROUP + name: my-consumer-group + patternType: LITERAL + serviceAccount: my-service-account + defaultCatalogVisibility: PUBLIC + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No application-instance with this name exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No application-instance with this name exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/self-serve/v1/application-instance' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - cli_application-instance_self-serve_v1_8 + description: |- + Create or update a ApplicationInstance + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: create-or-update-application-instance-V1 + parameters: + - name: dryMode + in: query + required: false + schema: + default: false + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ApplicationInstanceResourceV1' + example: + apiVersion: v1 + kind: ApplicationInstance + metadata: + name: my-app-instance-prod + application: my-app + labels: + env: prod + team: my-team + spec: + cluster: prod-cluster + topicPolicyRef: + - my-topic-policy + policyRef: + - my-policy + resources: + - type: TOPIC + name: my-topic + patternType: LITERAL + - type: CONSUMER_GROUP + name: my-consumer-group + patternType: LITERAL + serviceAccount: my-service-account + defaultCatalogVisibility: PUBLIC + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ApplicationInstanceApplyResultV1' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No application-instance with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No application-instance with this technical id exists + '409': + description: The request does not match one of the business rules + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: The request does not match one of the business rules + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/self-serve/v1/application-instance?dryMode=false' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v1","kind":"ApplicationInstance","metadata":{"name":"my-app-instance-prod","application":"my-app","labels":{"env":"prod","team":"my-team"}},"spec":{"cluster":"prod-cluster","topicPolicyRef":["my-topic-policy"],"policyRef":["my-policy"],"resources":[{"type":"TOPIC","name":"my-topic","patternType":"LITERAL"},{"type":"CONSUMER_GROUP","name":"my-consumer-group","patternType":"LITERAL"}],"serviceAccount":"my-service-account","defaultCatalogVisibility":"PUBLIC"}}' \ + --location \ + --max-redirs 32 + /public/self-serve/v1/application/{application-name}: + get: + tags: + - cli_application_self-serve_v1_7 + description: |- + Get Application by name + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: get-application-by-name-V1 + parameters: + - name: application-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ApplicationOutputResourceV1' + example: + apiVersion: v1 + kind: Application + metadata: + name: my-application + labels: + business-unit: delivery + spec: + title: My Application + owner: me + policyRef: + - my-policy + createdAt: '1970-01-01T00:00:00Z' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No application with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No application with this technical id exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/self-serve/v1/application/my-application' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - cli_application_self-serve_v1_7 + description: |- + Delete a Application + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: delete-application-V1 + parameters: + - name: application-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No application with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No application with this technical id exists + '409': + description: Resource link to an other resource + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource link to an other resource + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/self-serve/v1/application/my-application' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/self-serve/v1/application: + get: + tags: + - cli_application_self-serve_v1_7 + description: |- + List Application resources + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: list-application-resources-V1 + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/ApplicationOutputResourceV1' + example: + - apiVersion: v1 + kind: Application + metadata: + name: my-application + labels: + business-unit: delivery + spec: + title: My Application + owner: me + policyRef: + - my-policy + createdAt: '1970-01-01T00:00:00Z' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No application with this name exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No application with this name exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/self-serve/v1/application' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - cli_application_self-serve_v1_7 + description: |- + Create or update a Application + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: create-or-update-application-V1 + parameters: + - name: dryMode + in: query + required: false + schema: + default: false + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ApplicationResourceV1' + example: + apiVersion: v1 + kind: Application + metadata: + name: my-application + labels: + business-unit: delivery + spec: + title: My Application + owner: me + policyRef: + - my-policy + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ApplicationApplyResultV1' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No application with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No application with this technical id exists + '409': + description: The request does not match one of the business rules + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: The request does not match one of the business rules + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/self-serve/v1/application?dryMode=false' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v1","kind":"Application","metadata":{"name":"my-application","labels":{"business-unit":"delivery"}},"spec":{"title":"My Application","owner":"me","policyRef":["my-policy"]}}' \ + --location \ + --max-redirs 32 + /public/self-serve/v1/resource-policy/{resource-policy-name}: + get: + tags: + - cli_resource-policy_self-serve_v1_6 + description: |- + Get ResourcePolicy by name + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: get-resource-policy-by-name-V1 + parameters: + - name: resource-policy-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ResourcePolicyResourceV1' + example: + apiVersion: v1 + kind: ResourcePolicy + metadata: + name: example + labels: + business-unit: delivery + spec: + targetKind: Connector + description: A policy for a Connect to check that we always set + the key 'a' to 1 and the key 'name' to 'example' + rules: + - condition: spec.a == 1 + errorMessage: a should be 1 + - condition: metadata.name == 'example' + errorMessage: name should be example + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No resource-policy with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No resource-policy with this technical id exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/self-serve/v1/resource-policy/my-resource-policy' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - cli_resource-policy_self-serve_v1_6 + description: |- + Delete a ResourcePolicy + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: delete-resource-policy-V1 + parameters: + - name: resource-policy-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No resource-policy with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No resource-policy with this technical id exists + '409': + description: Resource link to an other resource + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource link to an other resource + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/self-serve/v1/resource-policy/my-resource-policy' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/self-serve/v1/resource-policy: + get: + tags: + - cli_resource-policy_self-serve_v1_6 + description: |- + List ResourcePolicy resources + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: list-resource-policy-resources-V1 + parameters: + - name: application-instance + in: query + description: Filter by application instance name + required: false + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + - name: application + in: query + description: Filter by application name + required: false + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/ResourcePolicyResourceV1' + example: + - apiVersion: v1 + kind: ResourcePolicy + metadata: + name: example + labels: + business-unit: delivery + spec: + targetKind: Connector + description: A policy for a Connect to check that we always set + the key 'a' to 1 and the key 'name' to 'example' + rules: + - condition: spec.a == 1 + errorMessage: a should be 1 + - condition: metadata.name == 'example' + errorMessage: name should be example + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No resource-policy with this name exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No resource-policy with this name exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/self-serve/v1/resource-policy?application-instance=example-instance&application=example-application' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - cli_resource-policy_self-serve_v1_6 + description: |- + Create or update a ResourcePolicy + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: create-or-update-resource-policy-V1 + parameters: + - name: dryMode + in: query + required: false + schema: + default: false + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ResourcePolicyResourceV1' + example: + apiVersion: v1 + kind: ResourcePolicy + metadata: + name: example + labels: + business-unit: delivery + spec: + targetKind: Connector + description: A policy for a Connect to check that we always set the + key 'a' to 1 and the key 'name' to 'example' + rules: + - condition: spec.a == 1 + errorMessage: a should be 1 + - condition: metadata.name == 'example' + errorMessage: name should be example + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ResourcePolicyApplyResultV1' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No resource-policy with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No resource-policy with this technical id exists + '409': + description: The request does not match one of the business rules + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: The request does not match one of the business rules + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/self-serve/v1/resource-policy?dryMode=false' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v1","kind":"ResourcePolicy","metadata":{"name":"example","labels":{"business-unit":"delivery"}},"spec":{"targetKind":"Connector","description":"A policy for a Connect to check that we always set the key \'a\' to 1 and the key \'name\' to \'example\'","rules":[{"condition":"spec.a == 1","errorMessage":"a should be 1"},{"condition":"metadata.name == \'example\'","errorMessage":"name should be example"}]}}' \ + --location \ + --max-redirs 32 + /public/self-serve/v1/topic-policy/{topic-policy-name}: + get: + tags: + - cli_topic-policy_self-serve_v1_5 + description: |- + Get TopicPolicy by name + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: get-topic-policy-by-name-V1 + parameters: + - name: topic-policy-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TopicPolicyResourceV1' + example: + apiVersion: v1 + kind: TopicPolicy + metadata: + name: my-app-instance-prod + spec: + policies: + my-policy: + constraint: OneOf + optional: true + values: + - value1 + - value2 + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No topic-policy with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No topic-policy with this technical id exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/self-serve/v1/topic-policy/my-topic-policy' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - cli_topic-policy_self-serve_v1_5 + description: |- + Delete a TopicPolicy + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: delete-topic-policy-V1 + parameters: + - name: topic-policy-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No topic-policy with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No topic-policy with this technical id exists + '409': + description: Resource link to an other resource + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource link to an other resource + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/self-serve/v1/topic-policy/my-topic-policy' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/self-serve/v1/topic-policy: + get: + tags: + - cli_topic-policy_self-serve_v1_5 + description: |- + List TopicPolicy resources + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: list-topic-policy-resources-V1 + parameters: + - name: app-instance + in: query + description: Filter by application instance name + required: false + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/TopicPolicyResourceV1' + example: + - apiVersion: v1 + kind: TopicPolicy + metadata: + name: my-app-instance-prod + spec: + policies: + my-policy: + constraint: OneOf + optional: true + values: + - value1 + - value2 + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No topic-policy with this name exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No topic-policy with this name exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/self-serve/v1/topic-policy' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - cli_topic-policy_self-serve_v1_5 + description: |- + Create or update a TopicPolicy + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: create-or-update-topic-policy-V1 + parameters: + - name: dryMode + in: query + required: false + schema: + default: false + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/TopicPolicyResourceV1' + example: + apiVersion: v1 + kind: TopicPolicy + metadata: + name: my-app-instance-prod + spec: + policies: + my-policy: + constraint: OneOf + optional: true + values: + - value1 + - value2 + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TopicPolicyApplyResultV1' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No topic-policy with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No topic-policy with this technical id exists + '409': + description: The request does not match one of the business rules + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: The request does not match one of the business rules + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/self-serve/v1/topic-policy?dryMode=false' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v1","kind":"TopicPolicy","metadata":{"name":"my-app-instance-prod"},"spec":{"policies":{"my-policy":{"constraint":"OneOf","optional":true,"values":["value1","value2"]}}}}' \ + --location \ + --max-redirs 32 + /public/console/v2/topic-template/{topic-template-name}: + get: + tags: + - cli_topic-template_console_v2_22 + description: |- + Get TopicTemplate by name + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: get-topic-template-by-name-V2 + parameters: + - name: topic-template-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TopicTemplateResourceV2' + example: + apiVersion: v2 + kind: TopicTemplate + metadata: + name: high-partition-topic + labels: + category: template + spec: + displayName: High Partition Topic + description: Optimised for high-throughput workloads. 24 partitions, + 3× replication, 7-day retention. + defaults: + metadata: + name: my-topic-{{department}} + labels: + throughput: high + spec: + partitions: 24 + replicationFactor: 3 + configs: + retention.ms: '604800000' + cleanup.policy: delete + min.insync.replicas: '2' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No topic-template with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No topic-template with this technical id exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/console/v2/topic-template/my-topic-template' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - cli_topic-template_console_v2_22 + description: |- + Delete a TopicTemplate + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: delete-topic-template-V2 + parameters: + - name: topic-template-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No topic-template with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No topic-template with this technical id exists + '409': + description: Resource link to an other resource + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource link to an other resource + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/console/v2/topic-template/my-topic-template' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/console/v2/topic-template: + get: + tags: + - cli_topic-template_console_v2_22 + description: |- + List TopicTemplate resources + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: list-topic-template-resources-V2 + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/TopicTemplateResourceV2' + example: + - apiVersion: v2 + kind: TopicTemplate + metadata: + name: high-partition-topic + labels: + category: template + spec: + displayName: High Partition Topic + description: Optimised for high-throughput workloads. 24 partitions, + 3× replication, 7-day retention. + defaults: + metadata: + name: my-topic-{{department}} + labels: + throughput: high + spec: + partitions: 24 + replicationFactor: 3 + configs: + retention.ms: '604800000' + cleanup.policy: delete + min.insync.replicas: '2' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No topic-template with this name exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No topic-template with this name exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/console/v2/topic-template' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - cli_topic-template_console_v2_22 + description: |- + Create or update a TopicTemplate + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: create-or-update-topic-template-V2 + parameters: + - name: dryMode + in: query + required: false + schema: + default: false + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/TopicTemplateResourceV2' + example: + apiVersion: v2 + kind: TopicTemplate + metadata: + name: high-partition-topic + labels: + category: template + spec: + displayName: High Partition Topic + description: Optimised for high-throughput workloads. 24 partitions, + 3× replication, 7-day retention. + defaults: + metadata: + name: my-topic-{{department}} + labels: + throughput: high + spec: + partitions: 24 + replicationFactor: 3 + configs: + retention.ms: '604800000' + cleanup.policy: delete + min.insync.replicas: '2' + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TopicTemplateApplyResultV2' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No topic-template with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No topic-template with this technical id exists + '409': + description: The request does not match one of the business rules + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: The request does not match one of the business rules + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/console/v2/topic-template?dryMode=false' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v2","kind":"TopicTemplate","metadata":{"name":"high-partition-topic","labels":{"category":"template"}},"spec":{"displayName":"High Partition Topic","description":"Optimised for high-throughput workloads. 24 partitions, 3× replication, 7-day retention.","defaults":{"metadata":{"name":"my-topic-{{department}}","labels":{"throughput":"high"}},"spec":{"partitions":24,"replicationFactor":3,"configs":{"retention.ms":"604800000","cleanup.policy":"delete","min.insync.replicas":"2"}}}}}' \ + --location \ + --max-redirs 32 + /public/console/v2/connector-template/{connector-template-name}: + get: + tags: + - cli_connector-template_console_v2_23 + description: |- + Get ConnectorTemplate by name + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: get-connector-template-by-name-V2 + parameters: + - name: connector-template-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ConnectorTemplateResourceV2' + example: + apiVersion: v2 + kind: ConnectorTemplate + metadata: + name: s3-sink-standard + labels: + category: sink + spec: + displayName: S3 Sink (Standard) + description: Standard S3 sink connector with flush every 10,000 + records or 60 seconds. + defaults: + metadata: + name: s3-sink-{{dept}} + labels: + category: sink + spec: + class: io.confluent.connect.s3.S3SinkConnector + config: + format.class: io.confluent.connect.s3.format.avro.AvroFormat + storage.class: io.confluent.connect.s3.storage.S3Storage + rotate.interval.ms: '60000' + tasks.max: '2' + flush.size: '10000' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No connector-template with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No connector-template with this technical id exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/console/v2/connector-template/my-connector-template' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - cli_connector-template_console_v2_23 + description: |- + Delete a ConnectorTemplate + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: delete-connector-template-V2 + parameters: + - name: connector-template-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No connector-template with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No connector-template with this technical id exists + '409': + description: Resource link to an other resource + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource link to an other resource + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/console/v2/connector-template/my-connector-template' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/console/v2/connector-template: + get: + tags: + - cli_connector-template_console_v2_23 + description: |- + List ConnectorTemplate resources + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: list-connector-template-resources-V2 + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/ConnectorTemplateResourceV2' + example: + - apiVersion: v2 + kind: ConnectorTemplate + metadata: + name: s3-sink-standard + labels: + category: sink + spec: + displayName: S3 Sink (Standard) + description: Standard S3 sink connector with flush every 10,000 + records or 60 seconds. + defaults: + metadata: + name: s3-sink-{{dept}} + labels: + category: sink + spec: + class: io.confluent.connect.s3.S3SinkConnector + config: + format.class: io.confluent.connect.s3.format.avro.AvroFormat + storage.class: io.confluent.connect.s3.storage.S3Storage + rotate.interval.ms: '60000' + tasks.max: '2' + flush.size: '10000' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No connector-template with this name exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No connector-template with this name exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/console/v2/connector-template' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - cli_connector-template_console_v2_23 + description: |- + Create or update a ConnectorTemplate + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: create-or-update-connector-template-V2 + parameters: + - name: dryMode + in: query + required: false + schema: + default: false + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ConnectorTemplateResourceV2' + example: + apiVersion: v2 + kind: ConnectorTemplate + metadata: + name: s3-sink-standard + labels: + category: sink + spec: + displayName: S3 Sink (Standard) + description: Standard S3 sink connector with flush every 10,000 records + or 60 seconds. + defaults: + metadata: + name: s3-sink-{{dept}} + labels: + category: sink + spec: + class: io.confluent.connect.s3.S3SinkConnector + config: + format.class: io.confluent.connect.s3.format.avro.AvroFormat + storage.class: io.confluent.connect.s3.storage.S3Storage + rotate.interval.ms: '60000' + tasks.max: '2' + flush.size: '10000' + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ConnectorTemplateApplyResultV2' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No connector-template with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No connector-template with this technical id exists + '409': + description: The request does not match one of the business rules + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: The request does not match one of the business rules + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/console/v2/connector-template?dryMode=false' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v2","kind":"ConnectorTemplate","metadata":{"name":"s3-sink-standard","labels":{"category":"sink"}},"spec":{"displayName":"S3 Sink (Standard)","description":"Standard S3 sink connector with flush every 10,000 records or 60 seconds.","defaults":{"metadata":{"name":"s3-sink-{{dept}}","labels":{"category":"sink"}},"spec":{"class":"io.confluent.connect.s3.S3SinkConnector","config":{"format.class":"io.confluent.connect.s3.format.avro.AvroFormat","storage.class":"io.confluent.connect.s3.storage.S3Storage","rotate.interval.ms":"60000","tasks.max":"2","flush.size":"10000"}}}}}' \ + --location \ + --max-redirs 32 + /public/kafka/v2/cluster/{cluster}/connect/{connectCluster}/connector/{connector-name}: + get: + tags: + - cli_connector_kafka_v2_15 + description: Get Connector by name + operationId: get-connector-by-name-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: connectCluster + in: path + required: true + schema: + type: string + minLength: 1 + - name: connector-name + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ConnectorResourceV2' + example: + apiVersion: v2 + kind: Connector + metadata: + name: my-connector + cluster: my-cluster + connectCluster: my-connect + autoRestart: + enabled: true + frequencySeconds: 600 + description: My connector + spec: + config: {} + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No connector with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No connector with this technical id exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/kafka/v2/cluster/my-cluster/connect/my-connect/connector/my-connector' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - cli_connector_kafka_v2_15 + description: Delete a Connector + operationId: delete-connector-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: connectCluster + in: path + required: true + schema: + type: string + minLength: 1 + - name: connector-name + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No connector with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No connector with this technical id exists + '409': + description: Resource link to an other resource + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource link to an other resource + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/kafka/v2/cluster/my-cluster/connect/my-connect/connector/my-connector' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/kafka/v2/cluster/{cluster}/connect/{connectCluster}/connector: + get: + tags: + - cli_connector_kafka_v2_15 + description: List Connector resources + operationId: list-connector-resources-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: connectCluster + in: path + required: true + schema: + type: string + minLength: 1 + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/ConnectorResourceV2' + example: + - apiVersion: v2 + kind: Connector + metadata: + name: my-connector + cluster: my-cluster + connectCluster: my-connect + autoRestart: + enabled: true + frequencySeconds: 600 + description: My connector + spec: + config: {} + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No connector with this name exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No connector with this name exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/kafka/v2/cluster/my-cluster/connect/my-connect/connector' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - cli_connector_kafka_v2_15 + description: Create or update a Connector + operationId: create-or-update-connector-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: connectCluster + in: path + required: true + schema: + type: string + minLength: 1 + - name: dryMode + in: query + required: false + schema: + default: false + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ConnectorResourceV2' + example: + apiVersion: v2 + kind: Connector + metadata: + name: my-connector + cluster: my-cluster + connectCluster: my-connect + autoRestart: + enabled: true + frequencySeconds: 600 + description: My connector + spec: + config: {} + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ConnectorApplyResultV2' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No connector with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No connector with this technical id exists + '409': + description: The request does not match one of the business rules + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: The request does not match one of the business rules + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/kafka/v2/cluster/my-cluster/connect/my-connect/connector?dryMode=false' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v2","kind":"Connector","metadata":{"name":"my-connector","cluster":"my-cluster","connectCluster":"my-connect","autoRestart":{"enabled":true,"frequencySeconds":600},"description":"My connector"},"spec":{"config":{}}}' \ + --location \ + --max-redirs 32 + post: + tags: + - cli_connector_kafka_v2_15 + description: Create a Connector + operationId: create-connector-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: connectCluster + in: path + required: true + schema: + type: string + minLength: 1 + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ConnectorResourceV2' + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ConnectorCreateResultV2' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No connector with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No connector with this technical id exists + '409': + description: Resource already exists + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource already exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request POST \ + --url 'http://localhost:8080/public/kafka/v2/cluster/my-cluster/connect/my-connect/connector' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v2","kind":"Connector","metadata":{"name":"my-connector","cluster":"my-cluster","connectCluster":"my-connect","autoRestart":{"enabled":true,"frequencySeconds":600},"description":"My connector"},"spec":{"config":{}}}' \ + --location \ + --max-redirs 32 + /public/kafka/v2/cluster/{cluster}/connect/{connectCluster}/connector/{connector-name}/autorestart: + put: + tags: + - connector + description: Update auto restart configuration of a connector + operationId: update-connector-auto-restart + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: connectCluster + in: path + required: true + schema: + type: string + minLength: 1 + - name: connector-name + in: path + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/AutoRestartConfig' + required: true + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: The searched entity was not found + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: The searched entity was not found + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/kafka/v2/cluster/my-cluster/connect/my-connect/connector/my-connector/autorestart' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"enabled":true,"frequencySeconds":600}' \ + --location \ + --max-redirs 32 + /public/kafka/v2/cluster/{cluster}/connect/{connectCluster}/connector/{connector-name}/stop: + put: + tags: + - connector + description: Stop a connector (Kafka Connect 3.5.0+, KIP-875) + operationId: stop-connector + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: connectCluster + in: path + required: true + schema: + type: string + minLength: 1 + - name: connector-name + in: path + required: true + schema: + type: string + responses: + '204': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have the required permission(s) "kafka.connects.stop" + to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have the required permission(s) "kafka.connects.stop" + to do this operation + '404': + description: The searched entity was not found + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: The searched entity was not found + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-cdk-run-version: '1' + x-cdk-run-name-v2: connectorStop + x-cdk-run-doc: Stop a connector + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/kafka/v2/cluster/my-cluster/connect/my-connect/connector/my-connector/stop' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/kafka/v2/cluster/{cluster}/connect/{connectCluster}/connector/{connector-name}/pause: + put: + tags: + - connector + description: Pause a connector + operationId: pause-connector + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: connectCluster + in: path + required: true + schema: + type: string + minLength: 1 + - name: connector-name + in: path + required: true + schema: + type: string + responses: + '204': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have the required permission(s) "kafka.connects.pause.or.resume" + to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have the required permission(s) "kafka.connects.pause.or.resume" + to do this operation + '404': + description: The searched entity was not found + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: The searched entity was not found + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-cdk-run-version: '1' + x-cdk-run-name-v2: connectorPause + x-cdk-run-doc: Pause a connector + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/kafka/v2/cluster/my-cluster/connect/my-connect/connector/my-connector/pause' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/kafka/v2/cluster/{cluster}/connect/{connectCluster}/connector/{connector-name}/resume: + put: + tags: + - connector + description: Resume a paused connector + operationId: resume-connector + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: connectCluster + in: path + required: true + schema: + type: string + minLength: 1 + - name: connector-name + in: path + required: true + schema: + type: string + responses: + '204': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have the required permission(s) "kafka.connects.pause.or.resume" + to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have the required permission(s) "kafka.connects.pause.or.resume" + to do this operation + '404': + description: The searched entity was not found + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: The searched entity was not found + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-cdk-run-version: '1' + x-cdk-run-name-v2: connectorResume + x-cdk-run-doc: Resume a paused connector + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/kafka/v2/cluster/my-cluster/connect/my-connect/connector/my-connector/resume' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/kafka/v2/cluster/{cluster}/connect/{connectCluster}/connector/{connector-name}/restart: + put: + tags: + - connector + description: Restart a connector + operationId: restart-connector + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: connectCluster + in: path + required: true + schema: + type: string + minLength: 1 + - name: connector-name + in: path + required: true + schema: + type: string + responses: + '204': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have the required permission(s) "kafka.connects.restart" + to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have the required permission(s) "kafka.connects.restart" + to do this operation + '404': + description: The searched entity was not found + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: The searched entity was not found + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-cdk-run-version: '1' + x-cdk-run-name-v2: connectorRestart + x-cdk-run-doc: Restart a connector + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/kafka/v2/cluster/my-cluster/connect/my-connect/connector/my-connector/restart' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/kafka/v2/cluster/{cluster}/connect/{connectCluster}/connector/{connector-name}/offsets: + get: + tags: + - connector + description: Get the source or sink offsets of a connector (Kafka Connect 3.5.0+, + KIP-875) + operationId: get-connector-offsets + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: connectCluster + in: path + required: true + schema: + type: string + minLength: 1 + - name: connector-name + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ConnectorOffsets' + '400': + description: 'Invalid value, Invalid value for: path parameter connectCluster' + content: + text/plain: + schema: + type: string + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have the required permission(s) "kafka.connects.offsets.view" + to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have the required permission(s) "kafka.connects.offsets.view" + to do this operation + '404': + description: The searched entity was not found + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: The searched entity was not found + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-cdk-run-version: '1' + x-cdk-run-name-v2: connectorGetOffsets + x-cdk-run-doc: Get the offsets of a connector + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/kafka/v2/cluster/my-cluster/connect/my-connect/connector/my-connector/offsets' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - connector + description: Reset all offsets of a connector. The connector must be in STOPPED + state (Kafka Connect 3.6.0+, KIP-875) + operationId: reset-connector-offsets + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: connectCluster + in: path + required: true + schema: + type: string + minLength: 1 + - name: connector-name + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + '400': + description: The request is invalid (e.g. the connector is not in STOPPED + state) + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is invalid (e.g. the connector is not in STOPPED + state) + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have the required permission(s) "kafka.connects.offsets.manage" + to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have the required permission(s) "kafka.connects.offsets.manage" + to do this operation + '404': + description: The searched entity was not found + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: The searched entity was not found + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-cdk-run-version: '1' + x-cdk-run-name-v2: connectorResetOffsets + x-cdk-run-doc: Reset all offsets of a stopped connector + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/kafka/v2/cluster/my-cluster/connect/my-connect/connector/my-connector/offsets' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + patch: + tags: + - connector + description: Alter the offsets of a connector. The connector must be in STOPPED + state (Kafka Connect 3.6.0+, KIP-875) + operationId: alter-connector-offsets + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: connectCluster + in: path + required: true + schema: + type: string + minLength: 1 + - name: connector-name + in: path + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ConnectorOffsets' + required: true + responses: + '200': + description: '' + '400': + description: The request is invalid (e.g. malformed payload, or the connector + is not in STOPPED state) + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is invalid (e.g. malformed payload, or the connector + is not in STOPPED state) + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have the required permission(s) "kafka.connects.offsets.manage" + to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have the required permission(s) "kafka.connects.offsets.manage" + to do this operation + '404': + description: The searched entity was not found + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: The searched entity was not found + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-cdk-run-version: '1' + x-cdk-run-name-v2: connectorAlterOffsets + x-cdk-run-doc: Alter the offsets of a stopped connector + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PATCH \ + --url 'http://localhost:8080/public/kafka/v2/cluster/my-cluster/connect/my-connect/connector/my-connector/offsets' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"offsets":[]}' \ + --location \ + --max-redirs 32 + /public/v1/clusters/{clusterName}/consumergroups/{consumerGroup}: + get: + tags: + - consumergroup + description: Consumer group stats + operationId: consumer-group-stats + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + - name: consumerGroup + in: path + description: Consumer Group name + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ConsumerGroupStats' + example: + name: cg1 + state: Stable + consumeRateInSeconds: 100.0 + overallLag: 100 + maxLagTimeInSeconds: 100 + labels: + label-key: label-value + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have the required permission(s) "kafka.groups.describe" + to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have the required permission(s) "kafka.groups.describe" + to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-cdk-run-version: '1' + x-cdk-run-name-v2: consumerGroupDescribe + x-cdk-run-doc: Describe a consumer group + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/consumergroups/my-consumer-group' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - consumergroup + description: Delete consumer group + operationId: delete-consumer-group + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + - name: consumerGroup + in: path + description: Consumer Group name + required: true + schema: + type: string + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have the required permission(s) "kafka.groups.delete" + to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have the required permission(s) "kafka.groups.delete" + to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-cdk-run-version: '1' + x-cdk-run-name-v2: consumerGroupDelete + x-cdk-run-doc: Delete a consumer group + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/consumergroups/my-consumer-group' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/v1/clusters/{clusterName}/consumergroups/{consumerGroup}/topics: + get: + tags: + - consumergroup + description: List topics for consumer group + operationId: list-topics-for-consumer-group + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + - name: consumerGroup + in: path + description: Consumer Group name + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/TopicOfConsumerGroupStat' + example: + - name: topic1 + consumeRateInSeconds: 100.0 + timeLagInSeconds: 100 + offsetLag: 100 + labels: + label1: value1 + label2: value2 + - name: topic2 + consumeRateInSeconds: 100.0 + timeLagInSeconds: 100 + offsetLag: 100 + labels: {} + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have the required permission(s) "kafka.groups.describe" + to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have the required permission(s) "kafka.groups.describe" + to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-cdk-run-version: '1' + x-cdk-run-name-v2: consumerGroupListTopics + x-cdk-run-doc: List the topics consumed by a consumer group + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/consumergroups/my-consumer-group/topics' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/v1/clusters/{clusterName}/consumergroups/{consumerGroup}/topics/{topicName}: + get: + tags: + - consumergroup + description: Topic detail for consumer group + operationId: topic-detail-for-consumer-group + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + - name: consumerGroup + in: path + description: Consumer Group name + required: true + schema: + type: string + - name: topicName + in: path + description: Topic name + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TopicOfConsumerGroup' + example: + name: topic1 + consumeRateInSeconds: 100.0 + timeLagInSeconds: 100 + offsetLag: 100 + partitions: + - partition: 0 + member: + id: member1 + clientId: client + host: host + consumeRateInSeconds: 100.0 + timeLagInSeconds: 100 + offsetLag: 100 + endOffset: 100 + committedOffset: 100 + - partition: 1 + consumeRateInSeconds: 100.0 + timeLagInSeconds: 100 + offsetLag: 100 + endOffset: 100 + committedOffset: 100 + labels: + label1: value1 + label2: value2 + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have the required permission(s) "kafka.groups.describe" + to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have the required permission(s) "kafka.groups.describe" + to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-cdk-run-version: '1' + x-cdk-run-name-v2: consumerGroupTopicDetail + x-cdk-run-doc: Describe a topic consumed by a consumer group + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/consumergroups/my-consumer-group/topics/my-topic' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/v1/clusters/{clusterName}/consumergroups/{consumerGroup}/members: + get: + tags: + - consumergroup + description: List members for consumer group + operationId: list-members-for-consumer-group + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + - name: consumerGroup + in: path + description: Consumer Group name + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/MemberOfConsumerGroupStat' + example: + - memberId: member1 + clientId: client1 + host: host1 + partitionCount: 1 + consumeRateInSeconds: 100.0 + timeLagInSeconds: 100 + offsetLag: 100 + - memberId: member2 + clientId: client2 + host: host2 + partitionCount: 2 + consumeRateInSeconds: 100.0 + timeLagInSeconds: 100 + offsetLag: 100 + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have the required permission(s) "kafka.groups.describe" + to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have the required permission(s) "kafka.groups.describe" + to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-cdk-run-version: '1' + x-cdk-run-name-v2: consumerGroupListMembers + x-cdk-run-doc: List the members of a consumer group + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/consumergroups/my-consumer-group/members' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/v1/clusters/{clusterName}/consumergroups/{consumerGroup}/members/{memberId}: + get: + tags: + - consumergroup + description: Member detail for consumer group + operationId: member-detail-for-consumer-group + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + - name: consumerGroup + in: path + description: Consumer Group name + required: true + schema: + type: string + - name: memberId + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/MemberOfConsumerGroup' + example: + id: member1 + clientId: client1 + host: host1 + consumeRateInSeconds: 100.0 + timeLagInSeconds: 100 + offsetLag: 100 + topics: + - name: topic1 + partition: 0 + consumeRateInSeconds: 100.0 + timeLagInSeconds: 100 + endOffset: 100 + committedOffset: 100 + labels: + label1: value1 + label2: value2 + - name: topic2 + partition: 1 + consumeRateInSeconds: 100.0 + timeLagInSeconds: 100 + endOffset: 100 + committedOffset: 100 + labels: {} + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have the required permission(s) "kafka.groups.describe" + to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have the required permission(s) "kafka.groups.describe" + to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-cdk-run-version: '1' + x-cdk-run-name-v2: consumerGroupMemberDetail + x-cdk-run-doc: Describe a member of a consumer group + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/consumergroups/my-consumer-group/members/my-member' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/v1/clusters/{clusterName}/consumergroups/{consumerGroup}/offset-reset-preview: + post: + tags: + - consumergroup + description: Consumer group offset reset preview + operationId: consumer-group-offset-reset-preview + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + - name: consumerGroup + in: path + description: Consumer Group name + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ResetOffsetRequest' + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/ResetOffsetPreviewResult' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have the required permission(s) "kafka.groups.reset" + to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have the required permission(s) "kafka.groups.reset" + to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-cdk-run-version: '1' + x-cdk-run-name-v2: consumerGroupResetOffsetsPreview + x-cdk-run-doc: Preview the result of resetting a consumer group's offsets + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request POST \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/consumergroups/my-consumer-group/offset-reset-preview' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"topicPartitionSelection":{"type":"AllTopics"},"resetSpecification":{"type":"ToEarliest"}}' \ + --location \ + --max-redirs 32 + /public/v1/clusters/{clusterName}/consumergroups/{consumerGroup}/offset-reset: + post: + tags: + - consumergroup + description: Consumer group offset reset + operationId: consumer-group-offset-reset + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + - name: consumerGroup + in: path + description: Consumer Group name + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ResetOffsetRequest' + required: true + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have the required permission(s) "kafka.groups.reset" + to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have the required permission(s) "kafka.groups.reset" + to do this operation + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-cdk-run-version: '1' + x-cdk-run-name-v2: consumerGroupResetOffsets + x-cdk-run-doc: Reset a consumer group's offsets + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request POST \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster/consumergroups/my-consumer-group/offset-reset' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"topicPartitionSelection":{"type":"AllTopics"},"resetSpecification":{"type":"ToEarliest"}}' \ + --location \ + --max-redirs 32 + /public/console/v2/kafka-cluster/{kafka-cluster-name}: + get: + tags: + - cli_kafka-cluster_console_v2_2 + description: Get KafkaCluster by name + operationId: get-kafka-cluster-by-name-V2 + parameters: + - name: kafka-cluster-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/KafkaClusterResourceV2' + example: + apiVersion: v2 + kind: KafkaCluster + metadata: + name: my-kafka-cluster + labels: + env: prod + spec: + displayName: yo + bootstrapServers: localhost:9092 + properties: + sasl.jaas.config: org.apache.kafka.common.security.plain.PlainLoginModule + required username="admin" password="admin-secret"; + color: '#FF0000' + icon: icon + schemaRegistry: + url: https://my-schema-registry:8081 + security: + username: admin + password: admin-secret + type: BasicAuth + ignoreUntrustedCertificate: false + type: ConfluentLike + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No kafka-cluster with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No kafka-cluster with this technical id exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/console/v2/kafka-cluster/my-kafka-cluster' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - cli_kafka-cluster_console_v2_2 + description: Delete a KafkaCluster + operationId: delete-kafka-cluster-V2 + parameters: + - name: kafka-cluster-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No kafka-cluster with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No kafka-cluster with this technical id exists + '409': + description: Resource link to an other resource + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource link to an other resource + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/console/v2/kafka-cluster/my-kafka-cluster' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/console/v2/kafka-cluster: + get: + tags: + - cli_kafka-cluster_console_v2_2 + description: List KafkaCluster resources + operationId: list-kafka-cluster-resources-V2 + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/KafkaClusterResourceV2' + example: + - apiVersion: v2 + kind: KafkaCluster + metadata: + name: my-kafka-cluster + labels: + env: prod + spec: + displayName: yo + bootstrapServers: localhost:9092 + properties: + sasl.jaas.config: org.apache.kafka.common.security.plain.PlainLoginModule + required username="admin" password="admin-secret"; + color: '#FF0000' + icon: icon + schemaRegistry: + url: https://my-schema-registry:8081 + security: + username: admin + password: admin-secret + type: BasicAuth + ignoreUntrustedCertificate: false + type: ConfluentLike + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No kafka-cluster with this name exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No kafka-cluster with this name exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/console/v2/kafka-cluster' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - cli_kafka-cluster_console_v2_2 + description: Create or update a KafkaCluster + operationId: create-or-update-kafka-cluster-V2 + parameters: + - name: dryMode + in: query + required: false + schema: + default: false + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/KafkaClusterResourceV2' + example: + apiVersion: v2 + kind: KafkaCluster + metadata: + name: my-kafka-cluster + labels: + env: prod + spec: + displayName: yo + bootstrapServers: localhost:9092 + properties: + sasl.jaas.config: org.apache.kafka.common.security.plain.PlainLoginModule + required username="admin" password="admin-secret"; + color: '#FF0000' + icon: icon + schemaRegistry: + url: https://my-schema-registry:8081 + security: + username: admin + password: admin-secret + type: BasicAuth + ignoreUntrustedCertificate: false + type: ConfluentLike + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/KafkaClusterApplyResultV2' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No kafka-cluster with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No kafka-cluster with this technical id exists + '409': + description: The request does not match one of the business rules + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: The request does not match one of the business rules + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/console/v2/kafka-cluster?dryMode=false' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v2","kind":"KafkaCluster","metadata":{"name":"my-kafka-cluster","labels":{"env":"prod"}},"spec":{"displayName":"yo","bootstrapServers":"localhost:9092","properties":{"sasl.jaas.config":"org.apache.kafka.common.security.plain.PlainLoginModule required username=\"admin\" password=\"admin-secret\";"},"color":"#FF0000","icon":"icon","schemaRegistry":{"url":"https://my-schema-registry:8081","security":{"username":"admin","password":"admin-secret","type":"BasicAuth"},"ignoreUntrustedCertificate":false,"type":"ConfluentLike"}}}' \ + --location \ + --max-redirs 32 + /public/console/v2/cluster/{cluster}/kafka-connect/{kafka-connect-cluster-name}: + get: + tags: + - cli_kafka-connect-cluster_console_v2_3 + description: Get KafkaConnectCluster by name + operationId: get-kafka-connect-cluster-by-name-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: kafka-connect-cluster-name + in: path + required: true + schema: + type: string + minLength: 1 + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/KafkaConnectClusterResourceV2' + example: + apiVersion: v2 + kind: KafkaConnectCluster + metadata: + name: connect-1 + cluster: my-cloud + labels: + user-labels: I am a user label + spec: + displayName: My kafka connect + urls: http://localhost:8083 + headers: + a: b + c: d + ignoreUntrustedCertificate: true + security: + username: user + password: password + type: BasicAuth + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No kafka-connect-cluster with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No kafka-connect-cluster with this technical id exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/console/v2/cluster/my-cluster/kafka-connect/my-kafka-connect' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - cli_kafka-connect-cluster_console_v2_3 + description: Delete a KafkaConnectCluster + operationId: delete-kafka-connect-cluster-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: kafka-connect-cluster-name + in: path + required: true + schema: + type: string + minLength: 1 + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No kafka-connect-cluster with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No kafka-connect-cluster with this technical id exists + '409': + description: Resource link to an other resource + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource link to an other resource + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/console/v2/cluster/my-cluster/kafka-connect/my-kafka-connect' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/console/v2/cluster/{cluster}/kafka-connect: + get: + tags: + - cli_kafka-connect-cluster_console_v2_3 + description: List KafkaConnectCluster resources + operationId: list-kafka-connect-cluster-resources-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/KafkaConnectClusterResourceV2' + example: + - apiVersion: v2 + kind: KafkaConnectCluster + metadata: + name: connect-1 + cluster: my-cloud + labels: + user-labels: I am a user label + spec: + displayName: My kafka connect + urls: http://localhost:8083 + headers: + a: b + c: d + ignoreUntrustedCertificate: true + security: + username: user + password: password + type: BasicAuth + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No kafka-connect-cluster with this name exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No kafka-connect-cluster with this name exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/console/v2/cluster/my-cluster/kafka-connect' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - cli_kafka-connect-cluster_console_v2_3 + description: Create or update a KafkaConnectCluster + operationId: create-or-update-kafka-connect-cluster-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: dryMode + in: query + required: false + schema: + default: false + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/KafkaConnectClusterResourceV2' + example: + apiVersion: v2 + kind: KafkaConnectCluster + metadata: + name: connect-1 + cluster: my-cloud + labels: + user-labels: I am a user label + spec: + displayName: My kafka connect + urls: http://localhost:8083 + headers: + a: b + c: d + ignoreUntrustedCertificate: true + security: + username: user + password: password + type: BasicAuth + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/KafkaConnectClusterApplyResultV2' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No kafka-connect-cluster with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No kafka-connect-cluster with this technical id exists + '409': + description: The request does not match one of the business rules + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: The request does not match one of the business rules + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/console/v2/cluster/my-cluster/kafka-connect?dryMode=false' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v2","kind":"KafkaConnectCluster","metadata":{"name":"connect-1","cluster":"my-cloud","labels":{"user-labels":"I am a user label"}},"spec":{"displayName":"My kafka connect","urls":"http://localhost:8083","headers":{"a":"b","c":"d"},"ignoreUntrustedCertificate":true,"security":{"username":"user","password":"password","type":"BasicAuth"}}}' \ + --location \ + --max-redirs 32 + /public/console/v2/cluster/{cluster}/ksqldb/{ksql-d-b-cluster-name}: + get: + tags: + - cli_ksql-d-b-cluster_console_v2_4 + description: Get KsqlDBCluster by name + operationId: get-ksql-d-b-cluster-by-name-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: ksql-d-b-cluster-name + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/KsqlDBClusterResourceV2' + example: + apiVersion: v2 + kind: KsqlDBCluster + metadata: + name: connect-1 + cluster: my-cloud + spec: + displayName: My kafka connect + url: http://localhost:8083 + headers: + a: b + c: d + ignoreUntrustedCertificate: true + security: + username: user + password: password + type: BasicAuth + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No ksql-d-b-cluster with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No ksql-d-b-cluster with this technical id exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/console/v2/cluster/my-cluster/ksqldb/my-ksql' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - cli_ksql-d-b-cluster_console_v2_4 + description: Delete a KsqlDBCluster + operationId: delete-ksql-d-b-cluster-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: ksql-d-b-cluster-name + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No ksql-d-b-cluster with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No ksql-d-b-cluster with this technical id exists + '409': + description: Resource link to an other resource + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource link to an other resource + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/console/v2/cluster/my-cluster/ksqldb/my-ksql' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/console/v2/cluster/{cluster}/ksqldb: + get: + tags: + - cli_ksql-d-b-cluster_console_v2_4 + description: List KsqlDBCluster resources + operationId: list-ksql-d-b-cluster-resources-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/KsqlDBClusterResourceV2' + example: + - apiVersion: v2 + kind: KsqlDBCluster + metadata: + name: connect-1 + cluster: my-cloud + spec: + displayName: My kafka connect + url: http://localhost:8083 + headers: + a: b + c: d + ignoreUntrustedCertificate: true + security: + username: user + password: password + type: BasicAuth + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No ksql-d-b-cluster with this name exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No ksql-d-b-cluster with this name exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/console/v2/cluster/my-cluster/ksqldb' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - cli_ksql-d-b-cluster_console_v2_4 + description: Create or update a KsqlDBCluster + operationId: create-or-update-ksql-d-b-cluster-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: dryMode + in: query + required: false + schema: + default: false + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/KsqlDBClusterResourceV2' + example: + apiVersion: v2 + kind: KsqlDBCluster + metadata: + name: connect-1 + cluster: my-cloud + spec: + displayName: My kafka connect + url: http://localhost:8083 + headers: + a: b + c: d + ignoreUntrustedCertificate: true + security: + username: user + password: password + type: BasicAuth + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/KsqlDBClusterApplyResultV2' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No ksql-d-b-cluster with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No ksql-d-b-cluster with this technical id exists + '409': + description: The request does not match one of the business rules + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: The request does not match one of the business rules + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/console/v2/cluster/my-cluster/ksqldb?dryMode=false' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v2","kind":"KsqlDBCluster","metadata":{"name":"connect-1","cluster":"my-cloud"},"spec":{"displayName":"My kafka connect","url":"http://localhost:8083","headers":{"a":"b","c":"d"},"ignoreUntrustedCertificate":true,"security":{"username":"user","password":"password","type":"BasicAuth"}}}' \ + --location \ + --max-redirs 32 + /public/self-serve/v1/cluster/{cluster}/service-account/{service-account-name}: + get: + tags: + - cli_service-account_self-serve_v1_11 + description: Get ServiceAccount by name + operationId: get-service-account-by-name-V1 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: service-account-name + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceAccountResourceV1' + example: + apiVersion: v1 + kind: ServiceAccount + metadata: + appInstance: my-app-instance-dev + cluster: my-kafka-cluster + labels: + conduktor.io/application: application-a + conduktor.io/application-instance: dev + user-labels: I am a user label + name: sa-clicko-dev + spec: + authorization: + acls: + - type: TOPIC + name: click. + patternType: PREFIXED + operations: + - Write + host: '*' + permission: Allow + type: KAFKA_ACL + schemaRegistryAuthorization: + acls: + - name: click. + patternType: PREFIXED + operations: + - Read + - Write + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No service-account with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No service-account with this technical id exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/self-serve/v1/cluster/my-cluster/service-account/sa-clicko-dev' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - cli_service-account_self-serve_v1_11 + description: Delete a ServiceAccount + operationId: delete-service-account-V1 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: service-account-name + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No service-account with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No service-account with this technical id exists + '409': + description: Resource link to an other resource + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource link to an other resource + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/self-serve/v1/cluster/my-cluster/service-account/sa-clicko-dev' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/self-serve/v1/cluster/{cluster}/service-account: + get: + tags: + - cli_service-account_self-serve_v1_11 + description: List ServiceAccount resources + operationId: list-service-account-resources-V1 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/ServiceAccountResourceV1' + example: + - apiVersion: v1 + kind: ServiceAccount + metadata: + appInstance: my-app-instance-dev + cluster: my-kafka-cluster + labels: + conduktor.io/application: application-a + conduktor.io/application-instance: dev + user-labels: I am a user label + name: sa-clicko-dev + spec: + authorization: + acls: + - type: TOPIC + name: click. + patternType: PREFIXED + operations: + - Write + host: '*' + permission: Allow + type: KAFKA_ACL + schemaRegistryAuthorization: + acls: + - name: click. + patternType: PREFIXED + operations: + - Read + - Write + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No service-account with this name exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No service-account with this name exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/self-serve/v1/cluster/my-cluster/service-account' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - cli_service-account_self-serve_v1_11 + description: Create or update a ServiceAccount + operationId: create-or-update-service-account-V1 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: dryMode + in: query + required: false + schema: + default: false + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceAccountResourceV1' + example: + apiVersion: v1 + kind: ServiceAccount + metadata: + appInstance: my-app-instance-dev + cluster: my-kafka-cluster + labels: + conduktor.io/application: application-a + conduktor.io/application-instance: dev + user-labels: I am a user label + name: sa-clicko-dev + spec: + authorization: + acls: + - type: TOPIC + name: click. + patternType: PREFIXED + operations: + - Write + host: '*' + permission: Allow + type: KAFKA_ACL + schemaRegistryAuthorization: + acls: + - name: click. + patternType: PREFIXED + operations: + - Read + - Write + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ServiceAccountApplyResultV1' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No service-account with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No service-account with this technical id exists + '409': + description: The request does not match one of the business rules + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: The request does not match one of the business rules + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/self-serve/v1/cluster/my-cluster/service-account?dryMode=false' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v1","kind":"ServiceAccount","metadata":{"appInstance":"my-app-instance-dev","cluster":"my-kafka-cluster","labels":{"conduktor.io/application":"application-a","conduktor.io/application-instance":"dev","user-labels":"I am a user label"},"name":"sa-clicko-dev"},"spec":{"authorization":{"acls":[{"type":"TOPIC","name":"click.","patternType":"PREFIXED","operations":["Write"],"host":"*","permission":"Allow"}],"type":"KAFKA_ACL"},"schemaRegistryAuthorization":{"acls":[{"name":"click.","patternType":"PREFIXED","operations":["Read","Write"]}]}}}' \ + --location \ + --max-redirs 32 + /public/kafka/v2/cluster/{cluster}/subject/{subject-name}: + get: + tags: + - cli_subject_kafka_v2_13 + description: Get Subject by name + operationId: get-subject-by-name-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: subject-name + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/SubjectResourceV2' + example: + apiVersion: v2 + kind: Subject + metadata: + name: my-subject + cluster: my-cluster + labels: + conduktor.io/application: application-a + conduktor.io/application-instance: staging + spec: + format: AVRO + compatibility: BACKWARD_TRANSITIVE + schema: '{"type": "long"}' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No subject with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No subject with this technical id exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/kafka/v2/cluster/my-cluster/subject/my-subject' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - cli_subject_kafka_v2_13 + description: Delete a Subject + operationId: delete-subject-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: subject-name + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No subject with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No subject with this technical id exists + '409': + description: Resource link to an other resource + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource link to an other resource + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/kafka/v2/cluster/my-cluster/subject/my-subject' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/kafka/v2/cluster/{cluster}/subject: + get: + tags: + - cli_subject_kafka_v2_13 + description: List Subject resources + operationId: list-subject-resources-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/SubjectResourceV2' + example: + - apiVersion: v2 + kind: Subject + metadata: + name: my-subject + cluster: my-cluster + labels: + conduktor.io/application: application-a + conduktor.io/application-instance: staging + spec: + format: AVRO + compatibility: BACKWARD_TRANSITIVE + schema: '{"type": "long"}' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No subject with this name exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No subject with this name exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/kafka/v2/cluster/my-cluster/subject' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - cli_subject_kafka_v2_13 + description: Create or update a Subject + operationId: create-or-update-subject-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: dryMode + in: query + required: false + schema: + default: false + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/SubjectResourceV2' + example: + apiVersion: v2 + kind: Subject + metadata: + name: my-subject + cluster: my-cluster + labels: + conduktor.io/application: application-a + conduktor.io/application-instance: staging + spec: + format: AVRO + compatibility: BACKWARD_TRANSITIVE + schema: '{"type": "long"}' + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/SubjectApplyResultV2' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No subject with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No subject with this technical id exists + '409': + description: The request does not match one of the business rules + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: The request does not match one of the business rules + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/kafka/v2/cluster/my-cluster/subject?dryMode=false' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v2","kind":"Subject","metadata":{"name":"my-subject","cluster":"my-cluster","labels":{"conduktor.io/application":"application-a","conduktor.io/application-instance":"staging"}},"spec":{"format":"AVRO","compatibility":"BACKWARD_TRANSITIVE","schema":"{\"type\": \"long\"}"}}' \ + --location \ + --max-redirs 32 + post: + tags: + - cli_subject_kafka_v2_13 + description: Create a Subject + operationId: create-subject-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/SubjectResourceV2' + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/SubjectCreateResultV2' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No subject with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No subject with this technical id exists + '409': + description: Resource already exists + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource already exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request POST \ + --url 'http://localhost:8080/public/kafka/v2/cluster/my-cluster/subject' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v2","kind":"Subject","metadata":{"name":"my-subject","cluster":"my-cluster","labels":{"conduktor.io/application":"application-a","conduktor.io/application-instance":"staging"}},"spec":{"format":"AVRO","compatibility":"BACKWARD_TRANSITIVE","schema":"{\"type\": \"long\"}"}}' \ + --location \ + --max-redirs 32 + /public/kafka/v2/cluster/{cluster}/topic/{topic-name}: + get: + tags: + - cli_topic_kafka_v2_12 + description: Get Topic by name + operationId: get-topic-by-name-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: topic-name + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TopicResourceV2' + example: + apiVersion: v2 + kind: Topic + metadata: + name: my-topic + cluster: my-cluster + labels: + conduktor.io/application: application-a + conduktor.io/application-instance: staging + user-labels: I am a user label + catalogVisibility: PUBLIC + descriptionIsEditable: true + description: This is a topic description + sqlStorage: + retentionTimeInSecond: 42 + spec: + partitions: 1 + replicationFactor: 1 + configs: + cleanup.policy: delete + retention.ms: '86400000' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No topic with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No topic with this technical id exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/kafka/v2/cluster/my-cluster/topic/my-topic' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - cli_topic_kafka_v2_12 + description: Delete a Topic + operationId: delete-topic-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: topic-name + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No topic with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No topic with this technical id exists + '409': + description: Resource link to an other resource + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource link to an other resource + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/kafka/v2/cluster/my-cluster/topic/my-topic' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/kafka/v2/cluster/{cluster}/topic: + get: + tags: + - cli_topic_kafka_v2_12 + description: List Topic resources + operationId: list-topic-resources-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/TopicResourceV2' + example: + - apiVersion: v2 + kind: Topic + metadata: + name: my-topic + cluster: my-cluster + labels: + conduktor.io/application: application-a + conduktor.io/application-instance: staging + user-labels: I am a user label + catalogVisibility: PUBLIC + descriptionIsEditable: true + description: This is a topic description + sqlStorage: + retentionTimeInSecond: 42 + spec: + partitions: 1 + replicationFactor: 1 + configs: + cleanup.policy: delete + retention.ms: '86400000' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No topic with this name exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No topic with this name exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/kafka/v2/cluster/my-cluster/topic' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - cli_topic_kafka_v2_12 + description: Create or update a Topic + operationId: create-or-update-topic-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: dryMode + in: query + required: false + schema: + default: false + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/TopicResourceV2' + example: + apiVersion: v2 + kind: Topic + metadata: + name: my-topic + cluster: my-cluster + labels: + conduktor.io/application: application-a + conduktor.io/application-instance: staging + user-labels: I am a user label + catalogVisibility: PUBLIC + descriptionIsEditable: true + description: This is a topic description + sqlStorage: + retentionTimeInSecond: 42 + spec: + partitions: 1 + replicationFactor: 1 + configs: + cleanup.policy: delete + retention.ms: '86400000' + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TopicApplyResultV2' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No topic with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No topic with this technical id exists + '409': + description: The request does not match one of the business rules + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: The request does not match one of the business rules + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/kafka/v2/cluster/my-cluster/topic?dryMode=false' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v2","kind":"Topic","metadata":{"name":"my-topic","cluster":"my-cluster","labels":{"conduktor.io/application":"application-a","conduktor.io/application-instance":"staging","user-labels":"I am a user label"},"catalogVisibility":"PUBLIC","descriptionIsEditable":true,"description":"This is a topic description","sqlStorage":{"retentionTimeInSecond":42}},"spec":{"partitions":1,"replicationFactor":1,"configs":{"cleanup.policy":"delete","retention.ms":"86400000"}}}' \ + --location \ + --max-redirs 32 + post: + tags: + - cli_topic_kafka_v2_12 + description: Create a Topic + operationId: create-topic-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/TopicResourceV2' + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TopicCreateResultV2' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No topic with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No topic with this technical id exists + '409': + description: Resource already exists + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource already exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request POST \ + --url 'http://localhost:8080/public/kafka/v2/cluster/my-cluster/topic' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v2","kind":"Topic","metadata":{"name":"my-topic","cluster":"my-cluster","labels":{"conduktor.io/application":"application-a","conduktor.io/application-instance":"staging","user-labels":"I am a user label"},"catalogVisibility":"PUBLIC","descriptionIsEditable":true,"description":"This is a topic description","sqlStorage":{"retentionTimeInSecond":42}},"spec":{"partitions":1,"replicationFactor":1,"configs":{"cleanup.policy":"delete","retention.ms":"86400000"}}}' \ + --location \ + --max-redirs 32 + /public/self-serve/v1/catalog: + get: + tags: + - catalog + description: Data catalog + operationId: data-catalog + parameters: + - name: page + in: query + required: false + schema: + type: integer + format: int32 + - name: itemsPerPage + in: query + required: false + schema: + type: integer + format: int32 + - name: sort + in: query + required: false + schema: + $ref: '#/components/schemas/Ord' + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/Page_Resource' + example: + kind: DataCatalogList + data: + - apiVersion: v2 + kind: Topic + metadata: + name: topic1 + cluster: cluster1 + catalogVisibility: PUBLIC + descriptionIsEditable: true + description: This is a topic description + spec: + partitions: 3 + replicationFactor: 3 + configs: + min.insync.replicas: '3' + page: 1 + totalPages: 1 + perPage: 1 + totalElements: 1 + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/self-serve/v1/catalog?fulltext=I'm+searching+for+something+in+full+text&name=my-topic&cluster=my-cluster&attr.label1=value1&attr.label2=value2&page=1&itemsPerPage=50&sort=desc' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/kafka/v2/cluster/{cluster}/glue-schemas/{glue-schema-name}: + get: + tags: + - cli_glue-schema_kafka_v2_14 + description: Get GlueSchema by name + operationId: get-glue-schema-by-name-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: glue-schema-name + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/GlueSchemaResourceV2' + example: + apiVersion: v2 + kind: GlueSchema + metadata: + name: my-schema + cluster: my-cluster + labels: + conduktor.io/application: application-a + conduktor.io/application-instance: staging + spec: + format: AVRO + compatibility: BACKWARD_ALL + schema: '{"type": "long"}' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No glue-schema with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No glue-schema with this technical id exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/kafka/v2/cluster/my-cluster/glue-schemas/my-schema' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - cli_glue-schema_kafka_v2_14 + description: Delete a GlueSchema + operationId: delete-glue-schema-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: glue-schema-name + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No glue-schema with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No glue-schema with this technical id exists + '409': + description: Resource link to an other resource + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource link to an other resource + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/kafka/v2/cluster/my-cluster/glue-schemas/my-schema' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/kafka/v2/cluster/{cluster}/glue-schemas: + get: + tags: + - cli_glue-schema_kafka_v2_14 + description: List GlueSchema resources + operationId: list-glue-schema-resources-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/GlueSchemaResourceV2' + example: + - apiVersion: v2 + kind: GlueSchema + metadata: + name: my-schema + cluster: my-cluster + labels: + conduktor.io/application: application-a + conduktor.io/application-instance: staging + spec: + format: AVRO + compatibility: BACKWARD_ALL + schema: '{"type": "long"}' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No glue-schema with this name exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No glue-schema with this name exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/kafka/v2/cluster/my-cluster/glue-schemas' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - cli_glue-schema_kafka_v2_14 + description: Create or update a GlueSchema + operationId: create-or-update-glue-schema-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: dryMode + in: query + required: false + schema: + default: false + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/GlueSchemaResourceV2' + example: + apiVersion: v2 + kind: GlueSchema + metadata: + name: my-schema + cluster: my-cluster + labels: + conduktor.io/application: application-a + conduktor.io/application-instance: staging + spec: + format: AVRO + compatibility: BACKWARD_ALL + schema: '{"type": "long"}' + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/GlueSchemaApplyResultV2' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No glue-schema with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No glue-schema with this technical id exists + '409': + description: The request does not match one of the business rules + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: The request does not match one of the business rules + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/kafka/v2/cluster/my-cluster/glue-schemas?dryMode=false' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v2","kind":"GlueSchema","metadata":{"name":"my-schema","cluster":"my-cluster","labels":{"conduktor.io/application":"application-a","conduktor.io/application-instance":"staging"}},"spec":{"format":"AVRO","compatibility":"BACKWARD_ALL","schema":"{\"type\": \"long\"}"}}' \ + --location \ + --max-redirs 32 + post: + tags: + - cli_glue-schema_kafka_v2_14 + description: Create a GlueSchema + operationId: create-glue-schema-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/GlueSchemaResourceV2' + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/GlueSchemaCreateResultV2' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No glue-schema with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No glue-schema with this technical id exists + '409': + description: Resource already exists + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource already exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request POST \ + --url 'http://localhost:8080/public/kafka/v2/cluster/my-cluster/glue-schemas' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v2","kind":"GlueSchema","metadata":{"name":"my-schema","cluster":"my-cluster","labels":{"conduktor.io/application":"application-a","conduktor.io/application-instance":"staging"}},"spec":{"format":"AVRO","compatibility":"BACKWARD_ALL","schema":"{\"type\": \"long\"}"}}' \ + --location \ + --max-redirs 32 + /token/v1/admin_tokens: + get: + tags: + - tokens + description: List the admin Public API tokens of the organization (without the + token value) + operationId: list-admin-tokens + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/TokenResponse' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: The searched entity was not found + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: The searched entity was not found + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/token/v1/admin_tokens' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + post: + tags: + - tokens + description: | + Create a new admin API token for the organization. It can be called with an already existing admin API TOKEN or with a user token having admin permission. + You can obtain a user token with the following command: + `curl -s localhost:8080/api/login -d '{"username":"{{username}}","password":"{{password}}"}' | jq -r ".refresh_token"` + operationId: create-an-admin-token + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CreateTokenRequest' + required: true + responses: + '201': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TokenCreatedResponse' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: The searched entity was not found + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: The searched entity was not found + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request POST \ + --url 'http://localhost:8080/token/v1/admin_tokens' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"name":"my-token-name"}' \ + --location \ + --max-redirs 32 + /token/v1/{token-id}: + delete: + tags: + - tokens + description: 'Delete an API (admin or application instance) token of the organization ' + operationId: delete-a-token + parameters: + - name: token-id + in: path + required: true + schema: + type: string + format: uuid + responses: + '204': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: The searched entity was not found + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: The searched entity was not found + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/token/v1/00000004-0008-0015-0016-230000000042' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /token/v1/application_instance_tokens/{application-instance-name}: + get: + tags: + - tokens + operationId: list-app-instance-token-for-a-given-app-instance + parameters: + - name: application-instance-name + in: path + description: The name of an application instance + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/TokenResponse' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: The searched entity was not found + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: The searched entity was not found + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/token/v1/application_instance_tokens/app-instance' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + post: + tags: + - tokens + description: Create a new admin API token for an application instance + operationId: create-an-application-instance-token + parameters: + - name: application-instance-name + in: path + description: The name of an application instance + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CreateTokenRequest' + required: true + responses: + '201': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TokenCreatedResponse' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: The searched entity was not found + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: The searched entity was not found + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request POST \ + --url 'http://localhost:8080/token/v1/application_instance_tokens/app-instance' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"name":"my-app-instance-token-name"}' \ + --location \ + --max-redirs 32 + /token/v1/whoami: + get: + tags: + - tokens + description: Get the information of the token used to call this endpoint + operationId: whoami + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/TokenInfo' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: The searched entity was not found + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: The searched entity was not found + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-cdk-run-version: '1' + x-cdk-run-name: whoami + x-cdk-run-doc: Return information about the credentials configured in the CLI + /public/v1/groups: + get: + tags: + - groups + description: Return all groups of an organization + operationId: list-all-groups + responses: + '200': + description: The list of groups + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/PublicGroupResponse' + '400': + description: Invalid value + content: + text/plain: + schema: + type: string + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/v1/groups' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + post: + tags: + - groups + description: Create a new group in the organization + operationId: create-a-group + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/PublicCreateGroupRequest' + example: + name: Data engineering + description: Data department. + groupId: data-engineering + externalGroups: + - data + - dataeng + externalGroupRegex: + - data* + required: true + responses: + '201': + description: '' + '400': + description: 'Invalid value for: body, Invalid value' + content: + text/plain: + schema: + type: string + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request POST \ + --url 'http://localhost:8080/public/v1/groups' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"name":"Data engineering","description":"Data department.","groupId":"data-engineering","externalGroups":["data","dataeng"],"externalGroupRegex":["data*"]}' \ + --location \ + --max-redirs 32 + /public/v1/groups/{groupId}: + get: + tags: + - groups + description: Return a group by id with its users + operationId: get-a-group + parameters: + - name: groupId + in: path + description: id of the group + required: true + schema: + type: string + pattern: ^[0-9a-z\_-]+$ + responses: + '200': + description: The group matching the given slug + content: + application/json: + schema: + $ref: '#/components/schemas/PublicGroupResponse' + '400': + description: 'Invalid value for: path parameter groupId, Invalid value' + content: + text/plain: + schema: + type: string + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No group found with this slug + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No group found with this slug + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/v1/groups/data-engineering' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - groups + description: Create or update a group in the organization + operationId: create-or-update-a-group + parameters: + - name: groupId + in: path + description: id of the group + required: true + schema: + type: string + pattern: ^[0-9a-z\_-]+$ + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateGroupRequest' + example: + name: Data engineering + description: Data department. + externalGroups: + - data + - dataeng + externalGroupRegex: + - data* + required: true + responses: + '200': + description: '' + '400': + description: 'Invalid value for: path parameter groupId, Invalid value for: + body, Invalid value' + content: + text/plain: + schema: + type: string + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/v1/groups/data-engineering' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"name":"Data engineering","description":"Data department.","externalGroups":["data","dataeng"],"externalGroupRegex":["data*"]}' \ + --location \ + --max-redirs 32 + delete: + tags: + - groups + description: Delete a group from the organization + operationId: delete-a-group + parameters: + - name: groupId + in: path + description: id of the group + required: true + schema: + type: string + pattern: ^[0-9a-z\_-]+$ + responses: + '204': + description: The group was deleted + '400': + description: 'Invalid value for: path parameter groupId, Invalid value' + content: + text/plain: + schema: + type: string + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: The searched entity was not found + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: The searched entity was not found + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/v1/groups/data-engineering' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/v1/groups/{groupId}/users/{userId}: + put: + tags: + - groups + description: Add a user to a group + operationId: add-user-to-group-using-id + parameters: + - name: groupId + in: path + description: id of the group + required: true + schema: + type: string + pattern: ^[0-9a-z\_-]+$ + - name: userId + in: path + required: true + schema: + type: integer + format: int32 + responses: + '200': + description: '' + '400': + description: 'Invalid value for: path parameter groupId, Invalid value for: + path parameter userId, Invalid value' + content: + text/plain: + schema: + type: string + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: The searched entity was not found + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: The searched entity was not found + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + deprecated: true + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/v1/groups/data-engineering/users/42' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - groups + description: Remove a user from a group + operationId: remove-user-from-group-using-id + parameters: + - name: groupId + in: path + description: id of the group + required: true + schema: + type: string + pattern: ^[0-9a-z\_-]+$ + - name: userId + in: path + required: true + schema: + type: integer + format: int32 + responses: + '200': + description: '' + '400': + description: 'Invalid value for: path parameter groupId, Invalid value for: + path parameter userId, Invalid value' + content: + text/plain: + schema: + type: string + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + deprecated: true + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/v1/groups/data-engineering/users/42' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/v1/groups/{groupId}/userEmail/{email}: + put: + tags: + - groups + description: Add a user to a group + operationId: add-user-to-group-using-email + parameters: + - name: groupId + in: path + description: id of the group + required: true + schema: + type: string + pattern: ^[0-9a-z\_-]+$ + - name: email + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + '400': + description: 'Invalid value for: path parameter groupId, Invalid value' + content: + text/plain: + schema: + type: string + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: The searched entity was not found + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: The searched entity was not found + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/v1/groups/data-engineering/userEmail/%2Fuser%2540cdk.com' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - groups + description: Remove a user from a group + operationId: remove-user-from-group-using-email + parameters: + - name: groupId + in: path + description: id of the group + required: true + schema: + type: string + pattern: ^[0-9a-z\_-]+$ + - name: email + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + '400': + description: 'Invalid value for: path parameter groupId, Invalid value' + content: + text/plain: + schema: + type: string + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/v1/groups/data-engineering/userEmail/%2Fuser%2540cdk.com' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/v1/groups/{groupId}/permissions: + get: + tags: + - groups + description: Get group's permissions + operationId: get-group-permissions + parameters: + - name: groupId + in: path + description: id of the group + required: true + schema: + type: string + pattern: ^[0-9a-z\_-]+$ + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/ResourcePermissions' + example: + - resourceType: Topic + clusterId: my-cluster + topicPattern: finance-* + permissions: + - topicCreate + - topicDelete + '400': + description: 'Invalid value for: path parameter groupId, Invalid value' + content: + text/plain: + schema: + type: string + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No group found with this email + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No group found with this email + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/v1/groups/data-engineering/permissions' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - groups + description: Set permissions to group + operationId: set-group-permissions + parameters: + - name: groupId + in: path + description: id of the group + required: true + schema: + type: string + pattern: ^[0-9a-z\_-]+$ + requestBody: + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/ResourcePermissions' + example: + - resourceType: Topic + clusterId: my-cluster + topicPattern: finance-* + permissions: + - topicCreate + - topicDelete + required: false + responses: + '204': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No group found with this slug + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No group found with this slug + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/v1/groups/data-engineering/permissions' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '[{"resourceType":"Topic","clusterId":"my-cluster","topicPattern":"finance-*","permissions":["topicCreate","topicDelete"]}]' \ + --location \ + --max-redirs 32 + delete: + tags: + - groups + description: Delete group's permissions + operationId: delete-group-permissions + parameters: + - name: groupId + in: path + description: id of the group + required: true + schema: + type: string + pattern: ^[0-9a-z\_-]+$ + requestBody: + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/ResourcePermissions' + example: + - resourceType: Topic + clusterId: my-cluster + topicPattern: finance-* + permissions: + - topicCreate + - topicDelete + required: false + responses: + '204': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No group found with this slug + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No group found with this slug + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/v1/groups/data-engineering/permissions' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '[{"resourceType":"Topic","clusterId":"my-cluster","topicPattern":"finance-*","permissions":["topicCreate","topicDelete"]}]' \ + --location \ + --max-redirs 32 + patch: + tags: + - groups + description: Add permissions to group + operationId: add-group-permissions + parameters: + - name: groupId + in: path + description: id of the group + required: true + schema: + type: string + pattern: ^[0-9a-z\_-]+$ + requestBody: + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/ResourcePermissions' + example: + - resourceType: Topic + clusterId: my-cluster + topicPattern: finance-* + permissions: + - topicCreate + - topicDelete + required: false + responses: + '204': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No group found with this email + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No group found with this email + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PATCH \ + --url 'http://localhost:8080/public/v1/groups/data-engineering/permissions' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '[{"resourceType":"Topic","clusterId":"my-cluster","topicPattern":"finance-*","permissions":["topicCreate","topicDelete"]}]' \ + --location \ + --max-redirs 32 + /public/v1/groups/{groupId}/permissions/all: + delete: + tags: + - groups + description: Delete all user's permissions + operationId: delete-all-group-permissions + parameters: + - name: groupId + in: path + description: id of the group + required: true + schema: + type: string + pattern: ^[0-9a-z\_-]+$ + responses: + '204': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No group found with this slug + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No group found with this slug + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/v1/groups/data-engineering/permissions/all' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/iam/v2/group/{group-name}: + get: + tags: + - cli_group_iam_v2_1 + description: Get Group by name + operationId: get-group-by-name-V2 + parameters: + - name: group-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/GroupResourceV2' + example: + apiVersion: v2 + kind: Group + metadata: + name: group + spec: + displayName: test + description: description + externalGroups: + - test + externalGroupRegex: + - tes* + members: + - user@conduktor.io + membersFromExternalGroups: [] + permissions: + - resourceType: TOPIC + cluster: '*' + name: test + patternType: LITERAL + permissions: + - topicConsume + - resourceType: TOPIC + cluster: '*' + name: test2 + patternType: PREFIXED + permissions: + - topicConsume + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No group with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No group with this technical id exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/iam/v2/group/my-group' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - cli_group_iam_v2_1 + description: Delete a Group + operationId: delete-group-V2 + parameters: + - name: group-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No group with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No group with this technical id exists + '409': + description: Resource link to an other resource + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource link to an other resource + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/iam/v2/group/my-group' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/iam/v2/group: + get: + tags: + - cli_group_iam_v2_1 + description: List Group resources + operationId: list-group-resources-V2 + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/GroupResourceV2' + example: + - apiVersion: v2 + kind: Group + metadata: + name: group + spec: + displayName: test + description: description + externalGroups: + - test + externalGroupRegex: + - tes* + members: + - user@conduktor.io + membersFromExternalGroups: [] + permissions: + - resourceType: TOPIC + cluster: '*' + name: test + patternType: LITERAL + permissions: + - topicConsume + - resourceType: TOPIC + cluster: '*' + name: test2 + patternType: PREFIXED + permissions: + - topicConsume + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No group with this name exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No group with this name exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/iam/v2/group' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - cli_group_iam_v2_1 + description: Create or update a Group + operationId: create-or-update-group-V2 + parameters: + - name: dryMode + in: query + required: false + schema: + default: false + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/GroupResourceV2' + example: + apiVersion: v2 + kind: Group + metadata: + name: group + spec: + displayName: test + description: description + externalGroups: + - test + externalGroupRegex: + - tes* + members: + - user@conduktor.io + membersFromExternalGroups: [] + permissions: + - resourceType: TOPIC + cluster: '*' + name: test + patternType: LITERAL + permissions: + - topicConsume + - resourceType: TOPIC + cluster: '*' + name: test2 + patternType: PREFIXED + permissions: + - topicConsume + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/GroupApplyResultV2' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No group with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No group with this technical id exists + '409': + description: The request does not match one of the business rules + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: The request does not match one of the business rules + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/iam/v2/group?dryMode=false' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v2","kind":"Group","metadata":{"name":"group"},"spec":{"displayName":"test","description":"description","externalGroups":["test"],"externalGroupRegex":["tes*"],"members":["user@conduktor.io"],"membersFromExternalGroups":[],"permissions":[{"resourceType":"TOPIC","cluster":"*","name":"test","patternType":"LITERAL","permissions":["topicConsume"]},{"resourceType":"TOPIC","cluster":"*","name":"test2","patternType":"PREFIXED","permissions":["topicConsume"]}]}}' \ + --location \ + --max-redirs 32 + /public/v1/clusters/{clusterName}: + get: + tags: + - clusters + description: Get cluster from its technical id + operationId: get-a-cluster + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + responses: + '200': + description: The cluster + content: + application/json: + schema: + $ref: '#/components/schemas/PublicKafkaClusterResponse' + '400': + description: Invalid value + content: + text/plain: + schema: + type: string + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - clusters + description: |2 + + Create or update a cluster inside the organization + The technical is mandatory. if it matches an existing cluster, it will be updated, otherwise it will be created. + The slugs of the kafka connects must be unique within the cluster. + operationId: create-or-update-a-cluster + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + requestBody: + description: The cluster to create or update + content: + application/json: + schema: + $ref: '#/components/schemas/UpsertKafkaClusterRequest' + examples: + Simple Kafka cluster: + value: + name: My Kafka cluster + bootstrapServers: broker1:9092, broker2:9092 + ignoreUntrustedCertificate: false + Simple Kafka cluster with UI config: + value: + name: My Kafka cluster + bootstrapServers: broker1:9092, broker2:9092 + color: '#000000' + icon: icon + ignoreUntrustedCertificate: false + Kafka cluster with properties: + value: + name: My Kafka cluster + bootstrapServers: broker1:9092, broker2:9092 + properties: |- + ssl.truststore.location=/etc/kafka/secrets/kafka.truststore.jks + security.protocol=SSL + ssl.truststore.password=conduktor + ssl.keystore.password=conduktor + ssl.keystore.location=/etc/kafka/secrets/kafka.keystore.jks + ignoreUntrustedCertificate: false + Kafka cluster with a Schema Registry: + value: + name: My Kafka cluster + bootstrapServers: broker1:9092, broker2:9092 + schemaRegistry: + url: https://schema-registry:8081 + security: + key: key + certificateChain: certificateChain + type: SSLAuth + properties: |- + schema.registry.ssl.keystore.location=/etc/kafka/secrets/kafka.keystore.jks + schema.registry.ssl.keystore.password=conduktor + schema.registry.ssl.truststore.password=conduktor + schema.registry.ssl.truststore.location=/etc/kafka/secrets/kafka.truststore.jks + ignoreUntrustedCertificate: false + type: ConfluentLikeSchemaRegistryRequest + ignoreUntrustedCertificate: false + Kafka cluster with Kafka Connect: + value: + name: My Kafka cluster + bootstrapServers: broker1:9092, broker2:9092 + kafkaConnects: + - url: http://kafka-connect:8083 + slug: kafka-connect + name: kafka-connect + security: + key: key + certificateChain: certificateChain + type: KafkaConnectSSLAuth + headers: |2 + + "transforms": "insertAppIdHeader", + "transforms.insertAppIdHeader.type": "org.apache.kafka.connect.transforms.InsertHeader", + "transforms.insertAppIdHeader.header": "app.id", + "transforms.insertAppIdHeader.value.literal": "best-app-ever" + ignoreUntrustedCertificate: false + ignoreUntrustedCertificate: false + Kafka cluster with ksqlDB: + value: + name: My Kafka cluster + bootstrapServers: broker1:9092, broker2:9092 + ignoreUntrustedCertificate: false + ksqlDBs: + - url: http://ksqlDB:8088 + slug: ksqlDB + name: ksqlDB + security: + key: key + certificateChain: certificateChain + type: KsqlDBSSLAuth + headers: '' + ignoreUntrustedCertificate: false + required: true + responses: + '200': + description: The created or updated cluster + content: + application/json: + schema: + $ref: '#/components/schemas/PublicKafkaClusterResponse' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"name":"My Kafka cluster","bootstrapServers":"broker1:9092, broker2:9092","properties":"ssl.truststore.location=/etc/kafka/secrets/kafka.truststore.jks\nsecurity.protocol=SSL\nssl.truststore.password=conduktor\nssl.keystore.password=conduktor\nssl.keystore.location=/etc/kafka/secrets/kafka.keystore.jks","color":null,"icon":null,"schemaRegistry":null,"kafkaConnects":null,"ignoreUntrustedCertificate":false,"amazonSecurity":null,"kafkaFlavor":null,"ksqlDBs":null,"policiesRef":null}' \ + --location \ + --max-redirs 32 + delete: + tags: + - clusters + operationId: delete-a-cluster + parameters: + - name: clusterName + in: path + description: Cluster name of a cluster + required: true + schema: + type: string + responses: + '204': + description: The cluster has been deleted + '400': + description: Invalid value + content: + text/plain: + schema: + type: string + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '404': + description: No cluster with this technical id exist + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No cluster with this technical id exist + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/v1/clusters/my-cluster' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/v1/clusters: + get: + tags: + - clusters + description: Get all clusters of the organization + operationId: list-all-clusters + responses: + '200': + description: The list of the clusters of the organization + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/PublicKafkaClusterResponse' + example: + - clusterSlug: silent-hill + name: My Kafka cluster + bootstrapServers: broker1:9092, broker2:9092 + kafkaConnects: [] + ignoreUntrustedCertificate: false + createdAt: '1970-01-01T00:00:00Z' + updatedAt: '1970-01-01T00:00:00Z' + ksqlDBs: [] + - clusterSlug: silent-hill + name: My Kafka cluster + bootstrapServers: broker1:9092, broker2:9092 + properties: |- + ssl.truststore.location=/etc/kafka/secrets/kafka.truststore.jks + security.protocol=SSL + ssl.truststore.password=conduktor + ssl.keystore.password=conduktor + ssl.keystore.location=/etc/kafka/secrets/kafka.keystore.jks + kafkaConnects: [] + ignoreUntrustedCertificate: false + createdAt: '1970-01-01T00:00:00Z' + updatedAt: '1970-01-01T00:00:00Z' + ksqlDBs: [] + '400': + description: Invalid value + content: + text/plain: + schema: + type: string + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/v1/clusters' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/v1/certificates: + get: + tags: + - certificates + description: List the certificates of the organization + operationId: list-certificates + responses: + '200': + description: The list of certificates of the organization + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/DecodedCertificate' + example: + - id: '1' + version: 1 + serialNumber: 123 + issuerDN: CN=Test Root CA + subjectDN: CN=Test Subordinate CA + notBefore: 1672531200000 + notAfter: 1704067200000 + - id: '2' + version: 1 + serialNumber: 456 + issuerDN: CN=Test Root CA + subjectDN: CN=Test Subordinate CA + notBefore: 1672531200000 + notAfter: 1704067200000 + '400': + description: Invalid value + content: + text/plain: + schema: + type: string + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/v1/certificates' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + post: + tags: + - certificates + description: Add one or several certificates from a text input to the organization + operationId: add-a-certificate + requestBody: + description: |2 + + The certificate(s) as a String to add to the organization. + * The input field must match the following regex pattern (cf. example): -----BEGIN CERTIFICATE-----(?:[\\s\\S]*?)-----END CERTIFICATE----- + * The input field must contain a valid x509 certificate (PEM or CRT formats are supported) + content: + application/json: + schema: + $ref: '#/components/schemas/CreateCertificateRequest' + example: + input: |- + -----BEGIN CERTIFICATE----- + MIIDRjCCAi6gAwIBAgIQbgEc+n3F+Gqe8YQqls+DRDANBgkqhkiG9w0BAQsFADAX + MRUwEwYDVQQDDAxUZXN0IFJvb3QgQ0EwHhcNMjIxMDI0MTk1OTUyWhcNMzIxMDIx + MTk1OTUyWjAeMRwwGgYDVQQDDBNUZXN0IFN1Ym9yZGluYXRlIENBMIIBIjANBgkq + hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAr4XNztsNyAaewOH9QkrpQWkT78FYg7Ke + j/C2vfzwVb8d/IVP6L8bKIA5/lGlQb5fWEB0AQnlRYVxQyVkycRGpPN3mAzfsD0g + v786pDxxkKAeXMFup+Pc6vRDA+kJ6ok6JcrjhJr+9mBrRCVP6hlUswlQnR2fiYGG + Z4A0VYQu9u2gPwsIBuTBNI9vH6+cKdjdWZIJ4+XJNJ8ohbr8URDa7g3pEIHr71kk + L5mabsB4KLPm0l3W6mu6QTYXn51NAvTMtDx9XCEThNqLammls0xio9Qpp7gxI1QY + huKwNkSz2a50HbhR2kbjSlUw+ugqHBLajB9RwhRtJJT4oF7/V1ZOzQIDAQABo4GG + MIGDMB8GA1UdIwQYMBaAFDpynTg8PcVyv8i1s4qxgQlIT1EhMBIGA1UdEwEB/wQI + MAYBAf8CAQAwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsGAQUFBwMBMA4GA1UdDwEB + /wQEAwIBBjAdBgNVHQ4EFgQUbFpG1G+/QTgbgEa8nRc75m1b2TwwDQYJKoZIhvcN + AQELBQADggEBAEfcOpW/VZjlYdClTBVDi8bpMfs3AN+gFouetPMddEXJPJ6xm7My + a5+rmXdLX+l5ThsNkFQ5+UOXu7PBtpgQfn7W1q2el2oDgg2uc0I0f4WFlMyM1N9z + YkN80/7S5g3n2bbkAWjhyx2b/zh73ChM/rbLGKlsjz+mRIJzI7DXcEwVNJjRMUtG + xxp9PBMZ7uZyoyHru592oaX9Ehm6UDpBDUia8POTENzEz0+9msv0mWbYCzOBKupc + mnd4jMMbT8MSlANCmqPV8VjbnBKT+lVL7nXSqrxlZ6jb8ZA5I9lHK7XS1sQab574 + UC7flGdjN3Ml05raSgAz3mh7qGhv8iQDMbo= + -----END CERTIFICATE----- + required: true + responses: + '201': + description: The certificate(s) added to the organization + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/DecodedCertificate' + example: + - id: '1' + version: 1 + serialNumber: 123 + issuerDN: CN=Test Root CA + subjectDN: CN=Test Subordinate CA + notBefore: 1672531200000 + notAfter: 1704067200000 + - id: '2' + version: 1 + serialNumber: 456 + issuerDN: CN=Test Root CA + subjectDN: CN=Test Subordinate CA + notBefore: 1672531200000 + notAfter: 1704067200000 + '400': + description: |2 + + The Json is invalid or the certificate input does not contain a (or several) valid certificate(s): + * The input field must match the following pattern: -----BEGIN CERTIFICATE-----(?:[\\s\\S]*?)-----END CERTIFICATE----- + * The input field must contain a valid x509 certificate (PEM or CRT formats are supported) + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: |2 + + The Json is invalid or the certificate input does not contain a (or several) valid certificate(s): + * The input field must match the following pattern: -----BEGIN CERTIFICATE-----(?:[\\s\\S]*?)-----END CERTIFICATE----- + * The input field must contain a valid x509 certificate (PEM or CRT formats are supported) + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request POST \ + --url 'http://localhost:8080/public/v1/certificates' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"input":"-----BEGIN CERTIFICATE-----\nMIIDRjCCAi6gAwIBAgIQbgEc+n3F+Gqe8YQqls+DRDANBgkqhkiG9w0BAQsFADAX\nMRUwEwYDVQQDDAxUZXN0IFJvb3QgQ0EwHhcNMjIxMDI0MTk1OTUyWhcNMzIxMDIx\nMTk1OTUyWjAeMRwwGgYDVQQDDBNUZXN0IFN1Ym9yZGluYXRlIENBMIIBIjANBgkq\nhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAr4XNztsNyAaewOH9QkrpQWkT78FYg7Ke\nj/C2vfzwVb8d/IVP6L8bKIA5/lGlQb5fWEB0AQnlRYVxQyVkycRGpPN3mAzfsD0g\nv786pDxxkKAeXMFup+Pc6vRDA+kJ6ok6JcrjhJr+9mBrRCVP6hlUswlQnR2fiYGG\nZ4A0VYQu9u2gPwsIBuTBNI9vH6+cKdjdWZIJ4+XJNJ8ohbr8URDa7g3pEIHr71kk\nL5mabsB4KLPm0l3W6mu6QTYXn51NAvTMtDx9XCEThNqLammls0xio9Qpp7gxI1QY\nhuKwNkSz2a50HbhR2kbjSlUw+ugqHBLajB9RwhRtJJT4oF7/V1ZOzQIDAQABo4GG\nMIGDMB8GA1UdIwQYMBaAFDpynTg8PcVyv8i1s4qxgQlIT1EhMBIGA1UdEwEB/wQI\nMAYBAf8CAQAwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsGAQUFBwMBMA4GA1UdDwEB\n/wQEAwIBBjAdBgNVHQ4EFgQUbFpG1G+/QTgbgEa8nRc75m1b2TwwDQYJKoZIhvcN\nAQELBQADggEBAEfcOpW/VZjlYdClTBVDi8bpMfs3AN+gFouetPMddEXJPJ6xm7My\na5+rmXdLX+l5ThsNkFQ5+UOXu7PBtpgQfn7W1q2el2oDgg2uc0I0f4WFlMyM1N9z\nYkN80/7S5g3n2bbkAWjhyx2b/zh73ChM/rbLGKlsjz+mRIJzI7DXcEwVNJjRMUtG\nxxp9PBMZ7uZyoyHru592oaX9Ehm6UDpBDUia8POTENzEz0+9msv0mWbYCzOBKupc\nmnd4jMMbT8MSlANCmqPV8VjbnBKT+lVL7nXSqrxlZ6jb8ZA5I9lHK7XS1sQab574\nUC7flGdjN3Ml05raSgAz3mh7qGhv8iQDMbo=\n-----END CERTIFICATE-----"}' \ + --location \ + --max-redirs 32 + delete: + tags: + - certificates + description: Delete multiple certificates from the organization + operationId: delete-certificates + parameters: + - name: ids + in: query + description: The ids of the certificates to delete + required: true + schema: + type: array + minItems: 1 + items: + type: string + example: + - 1 + - 2 + - 3 + responses: + '200': + description: The list of certificate ids effectively deleted + content: + application/json: + schema: + type: array + items: + type: string + example: + - '1' + - '2' + - '3' + '400': + description: The ids query parameter is invalid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The ids query parameter is invalid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/v1/certificates?ids=1&ids=2&ids=3' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/v1/certificates/file: + post: + tags: + - certificates + description: Import certificates in the organization from a file (.crt, .pem. + or .jks) + operationId: upload-a-certificate + requestBody: + description: |2 + + The certificate(s) as a file to add to the organization and the password if the file is in the JKS format. + content: + multipart/form-data: + schema: + $ref: '#/components/schemas/CreateCertificateFromFileRequest' + required: true + responses: + '201': + description: The certificate(s) added to the organization + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/DecodedCertificate' + example: + - id: '1' + version: 1 + serialNumber: 123 + issuerDN: CN=Test Root CA + subjectDN: CN=Test Subordinate CA + notBefore: 1672531200000 + notAfter: 1704067200000 + - id: '2' + version: 1 + serialNumber: 456 + issuerDN: CN=Test Root CA + subjectDN: CN=Test Subordinate CA + notBefore: 1672531200000 + notAfter: 1704067200000 + '400': + description: |2 + + The input file is invalid for one of the following reasons: + * The content is not a valid x509 certificate (PEM, CRT or JKS formats are supported) + * If the file is in the JKS format the password field is mandatory and a valid password must be provided + * The file exceeds the maximum size allowed (50MB) + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: |2 + + The input file is invalid for one of the following reasons: + * The content is not a valid x509 certificate (PEM, CRT or JKS formats are supported) + * If the file is in the JKS format the password field is mandatory and a valid password must be provided + * The file exceeds the maximum size allowed (50MB) + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request POST \ + --url 'http://localhost:8080/public/v1/certificates/file' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: multipart/form-data' \ + --form 'file=@keystore.jks' \ + --form 'jksPassword=password' \ + --location \ + --max-redirs 32 + /public/v1/certificates/{certificateId}: + delete: + tags: + - certificates + description: Delete a certificate from the organization + operationId: delete-a-certificate + parameters: + - name: certificateId + in: path + description: The id of the certificate to delete + required: true + schema: + type: string + responses: + '204': + description: The certificate has been deleted + '400': + description: Invalid value + content: + text/plain: + schema: + type: string + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/v1/certificates/fd6e9b0ef398bcd904c3b2ec167a7b0fda7201c903c53a6a6ae5d0414363ef65' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/v1/certificates/tls-test: + post: + tags: + - certificates + description: Test a tcp target with the organization's certificates (Kafka uses + the TLS/TCP protocol) + operationId: tls-check + requestBody: + description: ' The connection (host, port) to test with the organization''s + certificates' + content: + application/json: + schema: + $ref: '#/components/schemas/TlsTestRequest' + example: + host: www.google.com + port: 443 + required: true + responses: + '200': + description: The result of the TLS check + content: + application/json: + schema: + $ref: '#/components/schemas/TlsTestResponse' + examples: + The server is authenticated: + value: + status: checked_certificate + The server could NOT be authenticated: + value: + status: unchecked_certificate + The server is unsecure (not using TLS): + value: + status: tls_not_supported + The given url and port could not be reached (timeout 5 seconds): + value: + status: unreachable_target + The server is not authenticated (unexpected response): + value: + status: unexpected_status + '400': + description: The input is invalid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The input is invalid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request POST \ + --url 'http://localhost:8080/public/v1/certificates/tls-test' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"host":"www.google.com","port":443}' \ + --location \ + --max-redirs 32 + /public/v1/users: + get: + tags: + - users + operationId: get-the-list-of-users + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/PublicWithAllDetailsAndGroup' + example: + - userId: john.doe@conduktor.io + firstName: John + lastName: Doe + fullName: John Doe + pictureUrl: https://www.gravatar.com/avatar/123 + phoneNumber: '+33612345678' + country: France + platformRole: admin + groups: + - name: Admin + groupId: admin + lastLoginDate: '2023-10-01T12:00:00Z' + - userId: jane.doe@conduktor.io + firstName: Jane + lastName: Doe + fullName: John Doe + pictureUrl: https://www.gravatar.com/avatar/123 + phoneNumber: '+33612345678' + country: France + platformRole: member + lastLoginDate: '2023-10-01T12:00:00Z' + '400': + description: Invalid value + content: + text/plain: + schema: + type: string + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/v1/users' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - users + description: Create or update a user in the organization + operationId: update-a-user + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateUserRequest' + example: + lastName: Doe + firstName: John + email: john.doe@conduktor.io + required: true + responses: + '200': + description: The user was created or updated + '400': + description: 'Invalid value for: body, Invalid value' + content: + text/plain: + schema: + type: string + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/v1/users' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"lastName":"Doe","firstName":"John","email":"john.doe@conduktor.io"}' \ + --location \ + --max-redirs 32 + /public/v1/users/{email}: + get: + tags: + - users + description: Get a user by email + operationId: get-user + parameters: + - name: email + in: path + description: Email address of user + required: true + schema: + type: string + responses: + '200': + description: The user found + content: + application/json: + schema: + $ref: '#/components/schemas/PublicWithAllDetailsAndGroup' + example: + userId: john.doe@conduktor.io + firstName: John + lastName: Doe + fullName: John Doe + pictureUrl: https://www.gravatar.com/avatar/123 + phoneNumber: '+33612345678' + country: France + platformRole: admin + groups: + - name: Admin + groupId: admin + lastLoginDate: '2023-10-01T12:00:00Z' + '400': + description: Invalid value + content: + text/plain: + schema: + type: string + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '404': + description: No user found with this email + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No user found with this email + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/v1/users/john.doe@conduktor.io' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - users + description: Removes a user from the organization + operationId: delete-a-user + parameters: + - name: email + in: path + description: Email address of user + required: true + schema: + type: string + responses: + '204': + description: The user was deleted + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '404': + description: No user found with this id + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No user found with this id + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/v1/users/john.doe@conduktor.io' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/v1/users/{email}/permissions: + get: + tags: + - users + description: Get user's permissions + operationId: get-user-permissions + parameters: + - name: email + in: path + description: Email address of user + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/UserPermissions' + example: + user: + - resourceType: Topic + clusterId: my-cluster + topicPattern: finance-* + permissions: + - topicCreate + - topicDelete + groups: + '42': + - resourceType: Topic + clusterId: my-cluster + topicPattern: finance-* + permissions: + - topicRead + '400': + description: Invalid value + content: + text/plain: + schema: + type: string + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '404': + description: No user found with this email + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No user found with this email + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/v1/users/john.doe@conduktor.io/permissions' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - users + description: Set permissions to user + operationId: set-user-permissions + parameters: + - name: email + in: path + description: Email address of user + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/ResourcePermissions' + example: + - resourceType: Topic + clusterId: my-cluster + topicPattern: finance-* + permissions: + - topicCreate + - topicDelete + required: false + responses: + '204': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '404': + description: No user found with this email + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No user found with this email + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/v1/users/john.doe@conduktor.io/permissions' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '[{"resourceType":"Topic","clusterId":"my-cluster","topicPattern":"finance-*","permissions":["topicCreate","topicDelete"]}]' \ + --location \ + --max-redirs 32 + delete: + tags: + - users + description: Delete user's permissions + operationId: delete-user-permissions + parameters: + - name: email + in: path + description: Email address of user + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/ResourcePermissions' + example: + - resourceType: Topic + clusterId: my-cluster + topicPattern: finance-* + permissions: + - topicCreate + - topicDelete + required: false + responses: + '204': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '404': + description: No user found with this email + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No user found with this email + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/v1/users/john.doe@conduktor.io/permissions' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '[{"resourceType":"Topic","clusterId":"my-cluster","topicPattern":"finance-*","permissions":["topicCreate","topicDelete"]}]' \ + --location \ + --max-redirs 32 + patch: + tags: + - users + description: Add permissions to user + operationId: add-user-permissions + parameters: + - name: email + in: path + description: Email address of user + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/ResourcePermissions' + example: + - resourceType: Topic + clusterId: my-cluster + topicPattern: finance-* + permissions: + - topicCreate + - topicDelete + required: false + responses: + '204': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '404': + description: No user found with this email + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No user found with this email + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PATCH \ + --url 'http://localhost:8080/public/v1/users/john.doe@conduktor.io/permissions' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '[{"resourceType":"Topic","clusterId":"my-cluster","topicPattern":"finance-*","permissions":["topicCreate","topicDelete"]}]' \ + --location \ + --max-redirs 32 + /public/v1/users/{email}/permissions/all: + delete: + tags: + - users + description: Delete all user's permissions + operationId: delete-all-user-permissions + parameters: + - name: email + in: path + description: Email address of user + required: true + schema: + type: string + responses: + '204': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '404': + description: No user found with this email + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No user found with this email + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/v1/users/john.doe@conduktor.io/permissions/all' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/iam/v2/user/{user-name}: + get: + tags: + - cli_user_iam_v2_0 + description: Get User by name + operationId: get-user-by-name-V2 + parameters: + - name: user-name + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/UserResourceV2' + example: + apiVersion: v2 + kind: User + metadata: + name: user@conduktor.io + spec: + firstName: description + lastName: test + permissions: [] + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No user with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No user with this technical id exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/iam/v2/user/user@conduktor.io' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - cli_user_iam_v2_0 + description: Delete a User + operationId: delete-user-V2 + parameters: + - name: user-name + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No user with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No user with this technical id exists + '409': + description: Resource link to an other resource + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource link to an other resource + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/iam/v2/user/user@conduktor.io' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/iam/v2/user: + get: + tags: + - cli_user_iam_v2_0 + description: List User resources + operationId: list-user-resources-V2 + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/UserResourceV2' + example: + - apiVersion: v2 + kind: User + metadata: + name: user@conduktor.io + spec: + firstName: description + lastName: test + permissions: [] + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No user with this name exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No user with this name exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/iam/v2/user' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - cli_user_iam_v2_0 + description: Create or update a User + operationId: create-or-update-user-V2 + parameters: + - name: dryMode + in: query + required: false + schema: + default: false + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UserResourceV2' + example: + apiVersion: v2 + kind: User + metadata: + name: user@conduktor.io + spec: + firstName: description + lastName: test + permissions: [] + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/UserApplyResultV2' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No user with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No user with this technical id exists + '409': + description: The request does not match one of the business rules + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: The request does not match one of the business rules + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/iam/v2/user?dryMode=false' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v2","kind":"User","metadata":{"name":"user@conduktor.io"},"spec":{"firstName":"description","lastName":"test","permissions":[]}}' \ + --location \ + --max-redirs 32 + /public/console/v2/chargeback-cost/{chargeback-cost-name}: + get: + tags: + - cli_chargeback-cost_console_v2_24 + description: Get ChargebackCost by name + operationId: get-chargeback-cost-by-name-V2 + parameters: + - name: chargeback-cost-name + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ChargebackCostResourceV2' + example: + apiVersion: v2 + kind: ChargebackCost + metadata: + name: my-cluster + spec: + topics: + storageGigaBytesHourCost: '0.00001' + partitionHourCost: '0.004' + network: + ingressGigaByteCost: '0.001' + egressGigaBytesCost: '0.002' + connect: + connectorTaskHourDefault: '0.05' + connectorTaskHourOverrides: + - connectorClass: io.confluent.connect.s3.S3SinkConnector + connectorTaskHour: '0.10' + - connectorClass: io.debezium.connector.postgresql.PostgresConnector + connectorTaskHour: '0.20' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No chargeback-cost with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No chargeback-cost with this technical id exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/console/v2/chargeback-cost/my-cluster' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - cli_chargeback-cost_console_v2_24 + description: Delete a ChargebackCost + operationId: delete-chargeback-cost-V2 + parameters: + - name: chargeback-cost-name + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No chargeback-cost with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No chargeback-cost with this technical id exists + '409': + description: Resource link to an other resource + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource link to an other resource + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/console/v2/chargeback-cost/my-cluster' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/console/v2/chargeback-cost: + get: + tags: + - cli_chargeback-cost_console_v2_24 + description: List ChargebackCost resources + operationId: list-chargeback-cost-resources-V2 + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/ChargebackCostResourceV2' + example: + - apiVersion: v2 + kind: ChargebackCost + metadata: + name: my-cluster + spec: + topics: + storageGigaBytesHourCost: '0.00001' + partitionHourCost: '0.004' + network: + ingressGigaByteCost: '0.001' + egressGigaBytesCost: '0.002' + connect: + connectorTaskHourDefault: '0.05' + connectorTaskHourOverrides: + - connectorClass: io.confluent.connect.s3.S3SinkConnector + connectorTaskHour: '0.10' + - connectorClass: io.debezium.connector.postgresql.PostgresConnector + connectorTaskHour: '0.20' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No chargeback-cost with this name exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No chargeback-cost with this name exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/console/v2/chargeback-cost' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - cli_chargeback-cost_console_v2_24 + description: Create or update a ChargebackCost + operationId: create-or-update-chargeback-cost-V2 + parameters: + - name: dryMode + in: query + required: false + schema: + default: false + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ChargebackCostResourceV2' + example: + apiVersion: v2 + kind: ChargebackCost + metadata: + name: my-cluster + spec: + topics: + storageGigaBytesHourCost: '0.00001' + partitionHourCost: '0.004' + network: + ingressGigaByteCost: '0.001' + egressGigaBytesCost: '0.002' + connect: + connectorTaskHourDefault: '0.05' + connectorTaskHourOverrides: + - connectorClass: io.confluent.connect.s3.S3SinkConnector + connectorTaskHour: '0.10' + - connectorClass: io.debezium.connector.postgresql.PostgresConnector + connectorTaskHour: '0.20' + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ChargebackCostApplyResultV2' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No chargeback-cost with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No chargeback-cost with this technical id exists + '409': + description: The request does not match one of the business rules + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: The request does not match one of the business rules + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/console/v2/chargeback-cost?dryMode=false' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v2","kind":"ChargebackCost","metadata":{"name":"my-cluster"},"spec":{"topics":{"storageGigaBytesHourCost":"0.00001","partitionHourCost":"0.004"},"network":{"ingressGigaByteCost":"0.001","egressGigaBytesCost":"0.002"},"connect":{"connectorTaskHourDefault":"0.05","connectorTaskHourOverrides":[{"connectorClass":"io.confluent.connect.s3.S3SinkConnector","connectorTaskHour":"0.10"},{"connectorClass":"io.debezium.connector.postgresql.PostgresConnector","connectorTaskHour":"0.20"}]}}}' \ + --location \ + --max-redirs 32 + /public/console/v2/chargeback-label/{chargeback-label-name}: + get: + tags: + - cli_chargeback-label_console_v2_25 + description: Get ChargebackLabel by name + operationId: get-chargeback-label-by-name-V2 + parameters: + - name: chargeback-label-name + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ChargebackLabelResourceV2' + example: + apiVersion: v2 + kind: ChargebackLabel + metadata: + name: team + spec: {} + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No chargeback-label with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No chargeback-label with this technical id exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/console/v2/chargeback-label/team' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - cli_chargeback-label_console_v2_25 + description: Delete a ChargebackLabel + operationId: delete-chargeback-label-V2 + parameters: + - name: chargeback-label-name + in: path + required: true + schema: + type: string + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No chargeback-label with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No chargeback-label with this technical id exists + '409': + description: Resource link to an other resource + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource link to an other resource + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/console/v2/chargeback-label/team' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/console/v2/chargeback-label: + get: + tags: + - cli_chargeback-label_console_v2_25 + description: List ChargebackLabel resources + operationId: list-chargeback-label-resources-V2 + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/ChargebackLabelResourceV2' + example: + - apiVersion: v2 + kind: ChargebackLabel + metadata: + name: team + spec: {} + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No chargeback-label with this name exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No chargeback-label with this name exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/console/v2/chargeback-label' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - cli_chargeback-label_console_v2_25 + description: Create or update a ChargebackLabel + operationId: create-or-update-chargeback-label-V2 + parameters: + - name: dryMode + in: query + required: false + schema: + default: false + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ChargebackLabelResourceV2' + example: + apiVersion: v2 + kind: ChargebackLabel + metadata: + name: team + spec: {} + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/ChargebackLabelApplyResultV2' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No chargeback-label with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No chargeback-label with this technical id exists + '409': + description: The request does not match one of the business rules + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: The request does not match one of the business rules + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/console/v2/chargeback-label?dryMode=false' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v2","kind":"ChargebackLabel","metadata":{"name":"team"},"spec":{}}' \ + --location \ + --max-redirs 32 + /public/v1/chargeback/v3/export: + get: + tags: + - chargeback-v3 + description: |- + Stream the full chargeback cost dataset as a gzipped CSV file over a user-specified date range. + Each row carries its cluster, application, application-instance and labels columns. + `granularity` sets the time bucket: `daily` (default) emits + one row per day per entity; `monthly` rolls those up to one row per calendar month. + Usage columns : `byte_hours` in byte-hours, `partition_hours` in partition-hours, + `bytes_in`/`bytes_out` in bytes. Cost columns (`storage_cost`, `partition_cost`, `ingress_cost`, + `egress_cost`, `connect_cost`) are numeric amounts obtained by applying per unit costs + configured via /public/console/v2/chargeback-cost/{chargeback-cost-name}. + operationId: chargeback-v3-export + parameters: + - name: from + in: query + description: Start date, inclusive (ISO `YYYY-MM-DD`). + required: true + schema: + type: string + format: date + - name: to + in: query + description: End date, inclusive (ISO `YYYY-MM-DD`). + required: true + schema: + type: string + format: date + - name: granularity + in: query + description: 'Aggregation grain: `daily` or `monthly`. Defaults to `daily`.' + required: false + schema: + type: string + - name: format + in: query + description: Export format. Only `csv` is supported; defaults to `csv`. + required: false + schema: + $ref: '#/components/schemas/ChargebackExportFormat' + responses: + '200': + description: Gzipped CSV byte stream. + headers: + Content-Type: + description: Always `text/csv; charset=utf-8`. + required: true + schema: + type: string + Content-Disposition: + description: Attachment with filename `chargeback__to_.csv`. + required: true + schema: + type: string + Content-Encoding: + description: Always `gzip`. + required: true + schema: + type: string + content: + text/plain: + schema: + type: string + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + /public/debug/v1/loggers: + get: + tags: + - debug + - logging + description: List all loggers of Console + operationId: list-loggers + responses: + '200': + description: All loggers + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/LoggerDto' + example: + - name: org.apache.kafka + level: WARN + - name: io.conduktor.authenticator + level: DEBUG + - name: io.conduktor.authenticator.adapter.Http4sWebContext + level: INFO + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: The searched entity was not found + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: The searched entity was not found + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/debug/v1/loggers' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - debug + - logging + description: Set multiple loggers levels + operationId: set-loggers-levels + requestBody: + description: The loggers to set + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/LoggerDto' + example: + - name: io.conduktor + level: INFO + - name: io.conduktor.authenticator + level: DEBUG + required: false + responses: + '200': + description: Updated loggers canonical names + content: + application/json: + schema: + type: array + items: + type: string + example: + - io.conduktor + - io.conduktor.admin + - io.conduktor.authenticator + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: The searched entity was not found + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: The searched entity was not found + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/debug/v1/loggers' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '[{"name":"io.conduktor","level":"INFO"},{"name":"io.conduktor.authenticator","level":"DEBUG"}]' \ + --location \ + --max-redirs 32 + /public/debug/v1/loggers/{loggerName}: + get: + tags: + - debug + - logging + description: Get all loggers of Console matching the given name + operationId: get-logger + parameters: + - name: loggerName + in: path + description: The logger canonical name + required: true + schema: + type: string + example: io.conduktor.authenticator + responses: + '200': + description: All matching loggers + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/LoggerDto' + example: + - name: io.conduktor.authenticator + level: DEBUG + - name: io.conduktor.authenticator.adapter.Http4sWebContext + level: INFO + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: The searched entity was not found + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: The searched entity was not found + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/debug/v1/loggers/io.conduktor.authenticator' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - debug + - logging + description: Delete a persisted logger level + operationId: delete-logger + parameters: + - name: loggerName + in: path + description: The logger canonical name to delete + required: true + schema: + type: string + example: io.conduktor.authenticator + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: The searched entity was not found + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: The searched entity was not found + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/debug/v1/loggers/io.conduktor.authenticator' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/debug/v1/loggers/{loggerName}/{level}: + put: + tags: + - debug + - logging + description: Set a logger level + operationId: set-logger-level + parameters: + - name: loggerName + in: path + description: The logger canonical name to set + required: true + schema: + type: string + example: io.conduktor.authenticator + - name: level + in: path + description: The log level to set + required: true + schema: + type: string + example: DEBUG + responses: + '200': + description: Updated loggers canonical names + content: + application/json: + schema: + type: array + items: + type: string + example: + - io.conduktor.authenticator + - io.conduktor.authenticator.adapter.Http4sWebContext + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: The searched entity was not found + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: The searched entity was not found + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/debug/v1/loggers/io.conduktor.authenticator/DEBUG' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/debug/v1/loggers-mode/tracing/{enabled}: + put: + tags: + - debug + - logging + description: Enable or disable tracing mode + operationId: set-tracing + parameters: + - name: enabled + in: path + description: true to enable, false to disable + required: true + schema: + type: boolean + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: The searched entity was not found + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: The searched entity was not found + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/debug/v1/loggers-mode/tracing/true' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/debug/v1/loggers-mode/debug/{enabled}: + put: + tags: + - debug + - logging + description: Enable or disable debug mode + operationId: set-debug + parameters: + - name: enabled + in: path + description: true to enable, false to disable + required: true + schema: + type: boolean + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: The searched entity was not found + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: The searched entity was not found + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/debug/v1/loggers-mode/debug/true' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/debug/v1/loggers-mode/tracing: + get: + tags: + - debug + - logging + description: Get tracing mode status + operationId: get-tracing-status + responses: + '200': + description: true if enabled, false if disabled + content: + application/json: + schema: + type: boolean + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: The searched entity was not found + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: The searched entity was not found + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/debug/v1/loggers-mode/tracing' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/debug/v1/loggers-mode/debug: + get: + tags: + - debug + - logging + description: Get debug mode status + operationId: get-debug-status + responses: + '200': + description: true if enabled, false if disabled + content: + application/json: + schema: + type: boolean + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: The searched entity was not found + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: The searched entity was not found + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/debug/v1/loggers-mode/debug' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/monitoring/v3/integration/{integration-name}: + get: + tags: + - cli_integration_monitoring_v3_20 + description: Get Integration by name + operationId: get-integration-by-name-V3 + parameters: + - name: integration-name + in: path + required: true + schema: + $ref: '#/components/schemas/IntegrationType' + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/IntegrationResourceV3' + example: + apiVersion: v3 + kind: Integration + metadata: + name: Slack + spec: + config: + token: slack-token + type: Slack + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No integration with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No integration with this technical id exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/monitoring/v3/integration/Slack' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - cli_integration_monitoring_v3_20 + description: Delete a Integration + operationId: delete-integration-V3 + parameters: + - name: integration-name + in: path + required: true + schema: + $ref: '#/components/schemas/IntegrationType' + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No integration with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No integration with this technical id exists + '409': + description: Resource link to an other resource + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource link to an other resource + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/monitoring/v3/integration/Slack' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/monitoring/v3/integration: + get: + tags: + - cli_integration_monitoring_v3_20 + description: List Integration resources + operationId: list-integration-resources-V3 + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/IntegrationResourceV3' + example: + - apiVersion: v3 + kind: Integration + metadata: + name: Slack + spec: + config: + token: slack-token + type: Slack + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No integration with this name exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No integration with this name exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/monitoring/v3/integration' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - cli_integration_monitoring_v3_20 + description: Create or update a Integration + operationId: create-or-update-integration-V3 + parameters: + - name: dryMode + in: query + required: false + schema: + default: false + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/IntegrationResourceV3' + example: + apiVersion: v3 + kind: Integration + metadata: + name: Slack + spec: + config: + token: slack-token + type: Slack + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/IntegrationApplyResultV3' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No integration with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No integration with this technical id exists + '409': + description: The request does not match one of the business rules + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: The request does not match one of the business rules + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/monitoring/v3/integration?dryMode=false' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v3","kind":"Integration","metadata":{"name":"Slack"},"spec":{"config":{"token":"slack-token","type":"Slack"}}}' \ + --location \ + --max-redirs 32 + /public/debug/v1/indexer: + get: + tags: + - debug + - indexing + description: List all indexer tasks results + operationId: list-indexer-task-results + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/IndexerTaskResult' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: The searched entity was not found + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: The searched entity was not found + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/debug/v1/indexer' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/monitoring/v2/cluster/{cluster}/alert/{alert-name}: + get: + tags: + - cli_alert_monitoring_v2_21 + description: |- + Get Alert by name + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: get-alert-by-name-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: alert-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/AlertOutputResourceV2' + example: + apiVersion: v2 + kind: Alert + metadata: + name: alert + cluster: my-cluster + updatedAt: '1970-01-01T00:00:00Z' + updatedBy: someone@somewhere.com + lastTriggeredAt: '1970-01-01T00:00:00Z' + status: Pending + spec: + connectName: connect + connectorName: connector + metric: FailedTaskCount + threshold: 1 + operator: GreaterThan + promQl: kafka_connect_failed_tasks{cluster_name="f9af33a6-88ee-534f-cb62-46094d233d5c",cluster_id="shadow-julien",connect_cluster_id="cloud-confluent",connector="elasticsearch-ksqldb"} + type: KafkaConnectAlert + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No alert with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No alert with this technical id exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + deprecated: true + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/monitoring/v2/cluster/my-cluster/alert/alert' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - cli_alert_monitoring_v2_21 + description: |- + Delete a Alert + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: delete-alert-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: alert-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No alert with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No alert with this technical id exists + '409': + description: Resource link to an other resource + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource link to an other resource + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + deprecated: true + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/monitoring/v2/cluster/my-cluster/alert/alert' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/monitoring/v2/cluster/{cluster}/alert: + get: + tags: + - cli_alert_monitoring_v2_21 + description: |- + List Alert resources + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: list-alert-resources-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: connector + in: query + description: Filter by connector name + required: false + schema: + type: string + - name: connect + in: query + description: Filter by connect name + required: false + schema: + type: string + minLength: 1 + - name: topic + in: query + description: Filter by topic name + required: false + schema: + type: string + - name: consumerGroup + in: query + description: Filter by consumer group name + required: false + schema: + type: string + - name: alertType + in: query + description: 'Filter by alert type ' + required: false + schema: + $ref: '#/components/schemas/AlertType' + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/AlertOutputResourceV2' + example: + - apiVersion: v2 + kind: Alert + metadata: + name: alert + cluster: my-cluster + updatedAt: '1970-01-01T00:00:00Z' + updatedBy: someone@somewhere.com + lastTriggeredAt: '1970-01-01T00:00:00Z' + status: Pending + spec: + connectName: connect + connectorName: connector + metric: FailedTaskCount + threshold: 1 + operator: GreaterThan + promQl: kafka_connect_failed_tasks{cluster_name="f9af33a6-88ee-534f-cb62-46094d233d5c",cluster_id="shadow-julien",connect_cluster_id="cloud-confluent",connector="elasticsearch-ksqldb"} + type: KafkaConnectAlert + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No alert with this name exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No alert with this name exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + deprecated: true + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/monitoring/v2/cluster/my-cluster/alert' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - cli_alert_monitoring_v2_21 + description: |- + Create or update a Alert + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: create-or-update-alert-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + - name: dryMode + in: query + required: false + schema: + default: false + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/AlertResourceV2' + example: + apiVersion: v2 + kind: Alert + metadata: + name: alert + cluster: cluster + spec: + connectName: connect + connectorName: connector + threshold: 1 + operator: GreaterThan + metric: FailedTaskCount + type: KafkaConnectAlert + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/AlertApplyResultV2' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No alert with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No alert with this technical id exists + '409': + description: The request does not match one of the business rules + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: The request does not match one of the business rules + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + deprecated: true + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/monitoring/v2/cluster/my-cluster/alert?dryMode=false' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v2","kind":"Alert","metadata":{"name":"alert","cluster":"cluster"},"spec":{"connectName":"connect","connectorName":"connector","threshold":1,"operator":"GreaterThan","metric":"FailedTaskCount","type":"KafkaConnectAlert"}}' \ + --location \ + --max-redirs 32 + post: + tags: + - cli_alert_monitoring_v2_21 + description: |- + Create a Alert + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: create-alert-V2 + parameters: + - name: cluster + in: path + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/AlertResourceV2' + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/AlertCreateResultV2' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No alert with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No alert with this technical id exists + '409': + description: Resource already exists + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource already exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + deprecated: true + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request POST \ + --url 'http://localhost:8080/public/monitoring/v2/cluster/my-cluster/alert' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v2","kind":"Alert","metadata":{"name":"alert","cluster":"cluster"},"spec":{"connectName":"connect","connectorName":"connector","threshold":1,"operator":"GreaterThan","metric":"FailedTaskCount","type":"KafkaConnectAlert"}}' \ + --location \ + --max-redirs 32 + /public/monitoring/v3/alert/{alert-name}: + get: + tags: + - cli_alert_monitoring_v3_21 + description: |- + Get Alert by name + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: get-alert-by-name-V3 + parameters: + - name: appInstance + in: query + required: false + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + - name: group + in: query + required: false + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + - name: user + in: query + required: false + schema: + type: string + - name: alert-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/AlertOutputResourceV3' + example: + apiVersion: v3 + kind: Alert + metadata: + name: alert + appInstance: my-app + updatedAt: '1970-01-01T00:00:00Z' + updatedBy: someone@somewhere.com + lastTriggeredAt: '1970-01-01T00:00:00Z' + status: Pending + spec: + cluster: cluster + connectName: connect + connectorName: connector + metric: FailedTaskCount + threshold: 1 + operator: GreaterThan + promQl: kafka_connect_failed_tasks{cluster_name="f9af33a6-88ee-534f-cb62-46094d233d5c",cluster_id="shadow-julien",connect_cluster_id="cloud-confluent",connector="elasticsearch-ksqldb"} + destination: + url: http://localhost:8080/hook + method: POST + type: Webhook + type: KafkaConnectAlert + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No alert with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No alert with this technical id exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/monitoring/v3/alert/alert?appInstance=my-app' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + delete: + tags: + - cli_alert_monitoring_v3_21 + description: |- + Delete a Alert + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: delete-alert-V3 + parameters: + - name: appInstance + in: query + required: false + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + - name: group + in: query + required: false + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + - name: user + in: query + required: false + schema: + type: string + - name: alert-name + in: path + required: true + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + responses: + '200': + description: '' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No alert with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No alert with this technical id exists + '409': + description: Resource link to an other resource + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource link to an other resource + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request DELETE \ + --url 'http://localhost:8080/public/monitoring/v3/alert/alert?appInstance=my-app' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + /public/monitoring/v3/alert: + get: + tags: + - cli_alert_monitoring_v3_21 + description: |- + List Alert resources + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: list-alert-resources-V3 + parameters: + - name: appInstance + in: query + required: false + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + - name: group + in: query + required: false + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + - name: user + in: query + required: false + schema: + type: string + - name: cluster + in: query + description: Filter by cluster name + required: false + schema: + type: string + - name: connector + in: query + description: Filter by connector name + required: false + schema: + type: string + - name: connect + in: query + description: Filter by connect name + required: false + schema: + type: string + minLength: 1 + - name: topic + in: query + description: Filter by topic name + required: false + schema: + type: string + - name: consumerGroup + in: query + description: Filter by consumer group name + required: false + schema: + type: string + - name: alertType + in: query + description: 'Filter by alert type ' + required: false + schema: + $ref: '#/components/schemas/AlertType' + responses: + '200': + description: '' + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/AlertOutputResourceV3' + example: + - apiVersion: v3 + kind: Alert + metadata: + name: alert + appInstance: my-app + updatedAt: '1970-01-01T00:00:00Z' + updatedBy: someone@somewhere.com + lastTriggeredAt: '1970-01-01T00:00:00Z' + status: Pending + spec: + cluster: cluster + connectName: connect + connectorName: connector + metric: FailedTaskCount + threshold: 1 + operator: GreaterThan + promQl: kafka_connect_failed_tasks{cluster_name="f9af33a6-88ee-534f-cb62-46094d233d5c",cluster_id="shadow-julien",connect_cluster_id="cloud-confluent",connector="elasticsearch-ksqldb"} + destination: + url: http://localhost:8080/hook + method: POST + type: Webhook + type: KafkaConnectAlert + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No alert with this name exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No alert with this name exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request GET \ + --url 'http://localhost:8080/public/monitoring/v3/alert?appInstance=my-app' \ + --header 'Authorization: Bearer $BEARER' \ + --location \ + --max-redirs 32 + put: + tags: + - cli_alert_monitoring_v3_21 + description: |- + Create or update a Alert + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: create-or-update-alert-V3 + parameters: + - name: appInstance + in: query + required: false + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + - name: group + in: query + required: false + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + - name: user + in: query + required: false + schema: + type: string + - name: dryMode + in: query + required: false + schema: + default: false + type: boolean + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/AlertResourceV3' + example: + apiVersion: v3 + kind: Alert + metadata: + name: alert + appInstance: my-app + spec: + cluster: cluster + connectName: connect + connectorName: connector + threshold: 1 + operator: GreaterThan + metric: FailedTaskCount + destination: + channel: test + type: Slack + type: KafkaConnectAlert + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/AlertApplyResultV3' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No alert with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No alert with this technical id exists + '409': + description: The request does not match one of the business rules + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: The request does not match one of the business rules + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request PUT \ + --url 'http://localhost:8080/public/monitoring/v3/alert?appInstance=my-app&dryMode=false' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v3","kind":"Alert","metadata":{"name":"alert","appInstance":"my-app"},"spec":{"cluster":"cluster","connectName":"connect","connectorName":"connector","threshold":1,"operator":"GreaterThan","metric":"FailedTaskCount","destination":{"channel":"test","type":"Slack"},"type":"KafkaConnectAlert"}}' \ + --location \ + --max-redirs 32 + post: + tags: + - cli_alert_monitoring_v3_21 + description: |- + Create a Alert + + **Requires a paid license.** Returns 403 Forbidden on Free plan. + operationId: create-alert-V3 + parameters: + - name: appInstance + in: query + required: false + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + - name: group + in: query + required: false + schema: + type: string + pattern: ^[0-9a-z_\-.]+$ + - name: user + in: query + required: false + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/AlertResourceV3' + required: true + responses: + '200': + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/AlertCreateResultV3' + '400': + description: The request is not valid + content: + application/json: + schema: + $ref: '#/components/schemas/BadRequest' + example: + title: The request is not valid + '401': + description: The user is not authenticated + content: + application/json: + schema: + $ref: '#/components/schemas/Unauthorized' + example: + title: The user is not authenticated + '403': + description: The user doesn't have sufficient privilege to do this operation + content: + application/json: + schema: + $ref: '#/components/schemas/Forbidden' + example: + title: The user doesn't have sufficient privilege to do this operation + '404': + description: No alert with this technical id exists + content: + application/json: + schema: + $ref: '#/components/schemas/NotFound' + example: + title: No alert with this technical id exists + '409': + description: Resource already exists + content: + application/json: + schema: + $ref: '#/components/schemas/Conflict' + example: + title: Resource already exists + '500': + description: An unexpected error occurred in the server + content: + application/json: + schema: + $ref: '#/components/schemas/ServerError' + example: + title: An unexpected error occurred in the server + security: + - httpAuth: [] + x-codeSamples: + - lang: Shell + Curl + source: |- + curl \ + --request POST \ + --url 'http://localhost:8080/public/monitoring/v3/alert?appInstance=my-app' \ + --header 'Authorization: Bearer $BEARER' \ + --header 'Content-Type: application/json' \ + --data-raw '{"apiVersion":"v3","kind":"Alert","metadata":{"name":"alert","appInstance":"my-app"},"spec":{"cluster":"cluster","connectName":"connect","connectorName":"connector","threshold":1,"operator":"GreaterThan","metric":"FailedTaskCount","destination":{"channel":"test","type":"Slack"},"type":"KafkaConnectAlert"}}' \ + --location \ + --max-redirs 32 +components: + schemas: + AIVEN_ACL: + title: AIVEN_ACL + type: object + required: + - type + properties: + acls: + type: array + items: + $ref: '#/components/schemas/AivenServiceAccountACL' + type: + type: string + const: AIVEN_ACL + AccessControlEntry: + title: AccessControlEntry + type: object + required: + - principal + - host + - operation + - permissionType + properties: + principal: + $ref: '#/components/schemas/AclPrincipal' + host: + type: string + operation: + $ref: '#/components/schemas/AclOperationForAccessControlEntry' + permissionType: + $ref: '#/components/schemas/AclPermissionTypeForAccessControlEntry' + AclBinding: + title: AclBinding + type: object + required: + - pattern + - entry + properties: + pattern: + $ref: '#/components/schemas/ResourcePattern' + entry: + $ref: '#/components/schemas/AccessControlEntry' + AclForResourceAndHost: + title: AclForResourceAndHost + type: object + required: + - pattern + - host + - operationStates + properties: + pattern: + $ref: '#/components/schemas/ResourcePattern' + host: + type: string + operationStates: + $ref: '#/components/schemas/OperationStates' + AclOperationForAccessControlEntry: + title: AclOperationForAccessControlEntry + type: string + enum: + - Unknown + - All + - Read + - Write + - Create + - Delete + - Alter + - Describe + - ClusterAction + - DescribeConfigs + - AlterConfigs + - IdempotentWrite + - CreateTokens + - DescribeTokens + AclPermissionTypeForAccessControlEntry: + title: AclPermissionTypeForAccessControlEntry + type: string + enum: + - Deny + - Allow + AclPrincipal: + title: AclPrincipal + type: object + required: + - type + - name + properties: + type: + type: string + name: + type: string + AclResourceType: + title: AclResourceType + type: string + enum: + - CLUSTER + - CONSUMER_GROUP + - DELEGATION_TOKEN + - TOPIC + - TRANSACTIONAL_ID + - UNKNOWN + - USER + Actions: + title: Actions + type: object + properties: + block: + $ref: '#/components/schemas/Block' + mark: + $ref: '#/components/schemas/Mark' + dlq: + $ref: '#/components/schemas/Dlq' + AdminToken: + title: AdminToken + type: object + required: + - id + - name + - createdAt + properties: + id: + type: string + format: uuid + name: + type: string + createdAt: + type: string + format: date-time + createdBy: + type: string + Aiven: + title: Aiven + type: object + required: + - apiToken + - project + - serviceName + - type + properties: + apiToken: + type: string + project: + type: string + serviceName: + type: string + type: + type: string + const: Aiven + AivenAclCreatePayload: + title: AivenAclCreatePayload + type: object + required: + - permission + - topic + properties: + permission: + $ref: '#/components/schemas/AivenAclPermission' + topic: + type: string + AivenAclModel: + title: AivenAclModel + type: object + required: + - id + - permission + - topic + - username + properties: + id: + type: string + permission: + type: string + topic: + type: string + username: + type: string + AivenAclPermission: + title: AivenAclPermission + type: string + enum: + - read + - write + - readwrite + - admin + AivenAclsCreateRequest: + title: AivenAclsCreateRequest + type: object + properties: + acls: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/AivenAclCreatePayload' + schemaRegistryAcls: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/AivenSRAclCreatePayload' + AivenCreate: + title: AivenCreate + type: object + required: + - apiToken + - project + - serviceName + - type + properties: + apiToken: + type: string + project: + type: string + serviceName: + type: string + type: + type: string + const: Aiven + AivenListAclResponse: + title: AivenListAclResponse + type: object + properties: + acls: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/AivenAclModel' + schemaRegistryAcls: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/AivenSchemaRegistryAcl' + AivenPermission: + title: AivenPermission + type: string + enum: + - admin + - read + - readwrite + - schema_registry_read + - schema_registry_write + - write + AivenResourceType: + title: AivenResourceType + type: string + enum: + - SCHEMA + - TOPIC + AivenResponse: + title: AivenResponse + type: object + required: + - project + - serviceName + - type + properties: + project: + type: string + serviceName: + type: string + type: + type: string + const: Aiven + AivenSRAclCreatePayload: + title: AivenSRAclCreatePayload + type: object + required: + - permission + - resource + properties: + permission: + $ref: '#/components/schemas/AivenSchemaRegistryAclPermission' + resource: + type: string + AivenSchemaRegistryAcl: + title: AivenSchemaRegistryAcl + type: object + required: + - id + - permission + - resource + - username + properties: + id: + type: string + permission: + type: string + resource: + type: string + username: + type: string + AivenSchemaRegistryAclPermission: + title: AivenSchemaRegistryAclPermission + type: string + enum: + - schema_registry_read + - schema_registry_write + AivenServiceAccountACL: + title: AivenServiceAccountACL + type: object + required: + - resourceType + - name + - permission + properties: + resourceType: + $ref: '#/components/schemas/AivenResourceType' + name: + type: string + permission: + $ref: '#/components/schemas/AivenPermission' + AivenServiceAccountCreateRequest: + title: AivenServiceAccountCreateRequest + type: object + required: + - username + properties: + username: + type: string + AivenServiceAccountCreateResponse: + title: AivenServiceAccountCreateResponse + type: object + required: + - access_cert + - access_key + - password + - type + - username + properties: + access_cert: + type: string + access_key: + type: string + password: + type: string + type: + type: string + username: + type: string + AlertApplyResultV2: + title: AlertApplyResultV2 + type: object + required: + - resource + - upsertResult + properties: + resource: + $ref: '#/components/schemas/AlertResourceV2' + upsertResult: + $ref: '#/components/schemas/UpsertResult' + AlertApplyResultV3: + title: AlertApplyResultV3 + type: object + required: + - resource + - upsertResult + properties: + resource: + $ref: '#/components/schemas/AlertResourceV3' + upsertResult: + $ref: '#/components/schemas/UpsertResult' + AlertCreateResultV2: + title: AlertCreateResultV2 + type: object + required: + - resource + - createResult + properties: + resource: + $ref: '#/components/schemas/AlertResourceV2' + createResult: + $ref: '#/components/schemas/CreateResult' + AlertCreateResultV3: + title: AlertCreateResultV3 + type: object + required: + - resource + - createResult + properties: + resource: + $ref: '#/components/schemas/AlertResourceV3' + createResult: + $ref: '#/components/schemas/CreateResult' + AlertKind: + title: AlertKind + type: string + enum: + - Alert + AlertMetadata: + title: AlertMetadata + type: object + required: + - name + - cluster + properties: + name: + type: string + pattern: ^[0-9a-z_\-.]+$ + cluster: + type: string + AlertMetadataOutput: + title: AlertMetadataOutput + type: object + required: + - name + - cluster + - updatedAt + - updatedBy + - status + properties: + name: + type: string + pattern: ^[0-9a-z_\-.]+$ + cluster: + type: string + updatedAt: + type: string + format: date-time + updatedBy: + type: string + lastTriggeredAt: + type: string + format: date-time + status: + $ref: '#/components/schemas/AlertStatus' + AlertMetadataOutputV3: + title: AlertMetadataOutputV3 + type: object + required: + - name + - updatedAt + - updatedBy + - status + properties: + name: + type: string + pattern: ^[0-9a-z_\-.]+$ + appInstance: + type: string + pattern: ^[0-9a-z_\-.]+$ + group: + type: string + pattern: ^[0-9a-z_\-.]+$ + user: + type: string + updatedAt: + type: string + format: date-time + updatedBy: + type: string + lastTriggeredAt: + type: string + format: date-time + status: + $ref: '#/components/schemas/AlertStatus' + AlertMetadataV3: + title: AlertMetadataV3 + type: object + required: + - name + properties: + name: + type: string + pattern: ^[0-9a-z_\-.]+$ + appInstance: + type: string + pattern: ^[0-9a-z_\-.]+$ + group: + type: string + pattern: ^[0-9a-z_\-.]+$ + user: + type: string + AlertOutputResourceV2: + title: AlertOutputResourceV2 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v2 + kind: + $ref: '#/components/schemas/AlertKind' + metadata: + $ref: '#/components/schemas/AlertMetadataOutput' + spec: + $ref: '#/components/schemas/AlertSpecOutputV2' + AlertOutputResourceV3: + title: AlertOutputResourceV3 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v3 + kind: + $ref: '#/components/schemas/AlertKind' + metadata: + $ref: '#/components/schemas/AlertMetadataOutputV3' + spec: + $ref: '#/components/schemas/AlertSpecOutputV3' + AlertResourceV2: + title: AlertResourceV2 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v2 + kind: + $ref: '#/components/schemas/AlertKind' + metadata: + $ref: '#/components/schemas/AlertMetadata' + spec: + $ref: '#/components/schemas/AlertSpecV2' + AlertResourceV3: + title: AlertResourceV3 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v3 + kind: + $ref: '#/components/schemas/AlertKind' + metadata: + $ref: '#/components/schemas/AlertMetadataV3' + spec: + $ref: '#/components/schemas/AlertSpecV3' + AlertSpecOutputV2: + title: AlertSpecOutputV2 + oneOf: + - $ref: '#/components/schemas/BrokerAlertOutputV2' + - $ref: '#/components/schemas/ConsumerGroupAlertOutputV2' + - $ref: '#/components/schemas/KafkaConnectAlertOutputV2' + - $ref: '#/components/schemas/TopicAlertOutputV2' + discriminator: + propertyName: type + mapping: + BrokerAlert: '#/components/schemas/BrokerAlertOutputV2' + ConsumerGroupAlert: '#/components/schemas/ConsumerGroupAlertOutputV2' + KafkaConnectAlert: '#/components/schemas/KafkaConnectAlertOutputV2' + TopicAlert: '#/components/schemas/TopicAlertOutputV2' + AlertSpecOutputV3: + title: AlertSpecOutputV3 + oneOf: + - $ref: '#/components/schemas/BrokerAlertOutputV3' + - $ref: '#/components/schemas/ConsumerGroupAlertOutputV3' + - $ref: '#/components/schemas/DataQualityPolicyAlertOutputV3' + - $ref: '#/components/schemas/KafkaConnectAlertOutputV3' + - $ref: '#/components/schemas/TopicAlertOutputV3' + discriminator: + propertyName: type + mapping: + BrokerAlert: '#/components/schemas/BrokerAlertOutputV3' + ConsumerGroupAlert: '#/components/schemas/ConsumerGroupAlertOutputV3' + DataQualityPolicyAlert: '#/components/schemas/DataQualityPolicyAlertOutputV3' + KafkaConnectAlert: '#/components/schemas/KafkaConnectAlertOutputV3' + TopicAlert: '#/components/schemas/TopicAlertOutputV3' + AlertSpecV2: + title: AlertSpecV2 + oneOf: + - $ref: '#/components/schemas/BrokerAlertV2' + - $ref: '#/components/schemas/ConsumerGroupAlertV2' + - $ref: '#/components/schemas/KafkaConnectAlertV2' + - $ref: '#/components/schemas/TopicAlertV2' + discriminator: + propertyName: type + mapping: + BrokerAlert: '#/components/schemas/BrokerAlertV2' + ConsumerGroupAlert: '#/components/schemas/ConsumerGroupAlertV2' + KafkaConnectAlert: '#/components/schemas/KafkaConnectAlertV2' + TopicAlert: '#/components/schemas/TopicAlertV2' + AlertSpecV3: + title: AlertSpecV3 + oneOf: + - $ref: '#/components/schemas/BrokerAlertV3' + - $ref: '#/components/schemas/ConsumerGroupAlertV3' + - $ref: '#/components/schemas/DataQualityPolicyAlertV3' + - $ref: '#/components/schemas/KafkaConnectAlertV3' + - $ref: '#/components/schemas/TopicAlertV3' + discriminator: + propertyName: type + mapping: + BrokerAlert: '#/components/schemas/BrokerAlertV3' + ConsumerGroupAlert: '#/components/schemas/ConsumerGroupAlertV3' + DataQualityPolicyAlert: '#/components/schemas/DataQualityPolicyAlertV3' + KafkaConnectAlert: '#/components/schemas/KafkaConnectAlertV3' + TopicAlert: '#/components/schemas/TopicAlertV3' + AlertStatus: + title: AlertStatus + type: string + enum: + - Firing + - Healthy + - Pending + AlertType: + title: AlertType + type: string + enum: + - BrokerAlert + - ConsumerGroupAlert + - DataQualityPolicyAlert + - KafkaConnectAlert + - TopicAlert + AllAclForPrincipal: + title: AllAclForPrincipal + type: object + required: + - aclPrincipal + properties: + aclPrincipal: + $ref: '#/components/schemas/AclPrincipal' + acls: + type: array + items: + $ref: '#/components/schemas/AclForResourceAndHost' + AllTopics: + title: AllTopics + type: object + AllowedKeys: + title: AllowedKeys + type: object + required: + - constraint + - keys + properties: + constraint: + $ref: '#/components/schemas/ConstraintKind' + optional: + type: boolean + keys: + type: array + minItems: 1 + items: + type: string + AmazonSecurity: + title: AmazonSecurity + oneOf: + - $ref: '#/components/schemas/Credentials' + - $ref: '#/components/schemas/FromContext' + - $ref: '#/components/schemas/FromRole' + - $ref: '#/components/schemas/IAMAnywhere' + discriminator: + propertyName: type + mapping: + Credentials: '#/components/schemas/Credentials' + FromContext: '#/components/schemas/FromContext' + FromRole: '#/components/schemas/FromRole' + IAMAnywhere: '#/components/schemas/IAMAnywhere' + ApiKey: + title: ApiKey + type: object + required: + - key + - description + - createdAt + - secret + properties: + key: + type: string + description: + type: string + createdAt: + type: string + format: date-time + secret: + type: string + ApplicationApplyResultV1: + title: ApplicationApplyResultV1 + type: object + required: + - resource + - upsertResult + properties: + resource: + $ref: '#/components/schemas/ApplicationResourceV1' + upsertResult: + $ref: '#/components/schemas/UpsertResult' + ApplicationGroupApplyResultV1: + title: ApplicationGroupApplyResultV1 + type: object + required: + - resource + - upsertResult + properties: + resource: + $ref: '#/components/schemas/ApplicationGroupResourceV1' + upsertResult: + $ref: '#/components/schemas/UpsertResult' + ApplicationGroupKind: + title: ApplicationGroupKind + type: string + enum: + - ApplicationGroup + ApplicationGroupMetadata: + title: ApplicationGroupMetadata + type: object + required: + - application + - name + properties: + application: + type: string + pattern: ^[0-9a-z_\-.]+$ + name: + type: string + pattern: ^[0-9a-z_\-.]+$ + ApplicationGroupResourceV1: + title: ApplicationGroupResourceV1 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v1 + kind: + $ref: '#/components/schemas/ApplicationGroupKind' + metadata: + $ref: '#/components/schemas/ApplicationGroupMetadata' + spec: + $ref: '#/components/schemas/ApplicationGroupSpec' + ApplicationGroupSpec: + title: ApplicationGroupSpec + type: object + required: + - displayName + properties: + displayName: + type: string + description: + type: string + instancePermissions: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/InstancePermissionDto' + permissions: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/ApplicationResourcePermissionDto_Any' + members: + type: array + uniqueItems: true + items: + type: string + externalGroups: + type: array + uniqueItems: true + items: + type: string + externalGroupRegex: + type: array + uniqueItems: true + items: + type: string + membersFromExternalGroups: + type: array + uniqueItems: true + items: + type: string + ApplicationInstanceApplyResultV1: + title: ApplicationInstanceApplyResultV1 + type: object + required: + - resource + - upsertResult + properties: + resource: + $ref: '#/components/schemas/ApplicationInstanceResourceV1' + upsertResult: + $ref: '#/components/schemas/UpsertResult' + ApplicationInstanceKind: + title: ApplicationInstanceKind + type: string + enum: + - ApplicationInstance + ApplicationInstanceMetadata: + title: ApplicationInstanceMetadata + type: object + required: + - name + - application + properties: + name: + type: string + pattern: ^[0-9a-z_\-.]+$ + application: + type: string + pattern: ^[0-9a-z_\-.]+$ + labels: + $ref: '#/components/schemas/Map_LabelKey_String' + ApplicationInstancePermissionApplyResultV1: + title: ApplicationInstancePermissionApplyResultV1 + type: object + required: + - resource + - upsertResult + properties: + resource: + $ref: '#/components/schemas/ApplicationInstancePermissionResourceV1' + upsertResult: + $ref: '#/components/schemas/UpsertResult' + ApplicationInstancePermissionKind: + title: ApplicationInstancePermissionKind + type: string + enum: + - ApplicationInstancePermission + ApplicationInstancePermissionMetadata: + title: ApplicationInstancePermissionMetadata + type: object + required: + - application + - appInstance + - name + properties: + application: + type: string + pattern: ^[0-9a-z_\-.]+$ + appInstance: + type: string + pattern: ^[0-9a-z_\-.]+$ + name: + type: string + pattern: ^[0-9a-z_\-.]+$ + ApplicationInstancePermissionResourceV1: + title: ApplicationInstancePermissionResourceV1 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v1 + kind: + $ref: '#/components/schemas/ApplicationInstancePermissionKind' + metadata: + $ref: '#/components/schemas/ApplicationInstancePermissionMetadata' + spec: + $ref: '#/components/schemas/ApplicationInstancePermissionSpec' + ApplicationInstancePermissionSpec: + title: ApplicationInstancePermissionSpec + type: object + required: + - resource + - grantedTo + properties: + resource: + $ref: '#/components/schemas/Resource' + permission: + $ref: '#/components/schemas/ResourcePermission' + userPermission: + $ref: '#/components/schemas/OptionalResourcePermission' + serviceAccountPermission: + $ref: '#/components/schemas/OptionalResourcePermission' + grantedTo: + type: string + pattern: ^[0-9a-z_\-.]+$ + ApplicationInstanceResourceV1: + title: ApplicationInstanceResourceV1 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v1 + kind: + $ref: '#/components/schemas/ApplicationInstanceKind' + metadata: + $ref: '#/components/schemas/ApplicationInstanceMetadata' + spec: + $ref: '#/components/schemas/ApplicationInstanceSpec' + ApplicationInstanceSpec: + title: ApplicationInstanceSpec + type: object + required: + - cluster + properties: + cluster: + type: string + topicPolicyRef: + type: array + uniqueItems: true + items: + type: string + pattern: ^[0-9a-z_\-.]+$ + policyRef: + type: array + uniqueItems: true + items: + type: string + pattern: ^[0-9a-z_\-.]+$ + resources: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/ResourceWithOwnership' + applicationManagedServiceAccount: + type: boolean + serviceAccount: + type: string + defaultCatalogVisibility: + $ref: '#/components/schemas/CatalogVisibility' + ApplicationInstanceToken: + title: ApplicationInstanceToken + type: object + required: + - id + - name + - applicationInstanceName + properties: + id: + type: string + format: uuid + name: + type: string + applicationInstanceName: + type: string + pattern: ^[0-9a-z_\-.]+$ + ApplicationKind: + title: ApplicationKind + type: string + enum: + - Application + ApplicationMetadata: + title: ApplicationMetadata + type: object + required: + - name + properties: + name: + type: string + pattern: ^[0-9a-z_\-.]+$ + labels: + $ref: '#/components/schemas/Map_LabelKey_String' + ApplicationOutputResourceV1: + title: ApplicationOutputResourceV1 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v1 + kind: + $ref: '#/components/schemas/ApplicationKind' + metadata: + $ref: '#/components/schemas/ApplicationMetadata' + spec: + $ref: '#/components/schemas/OutputApplicationSpec' + ApplicationPolicyMetadata: + title: ApplicationPolicyMetadata + type: object + required: + - name + properties: + name: + type: string + pattern: ^[0-9a-z_\-.]+$ + ApplicationPolicySpec: + title: ApplicationPolicySpec + type: object + required: + - policies + properties: + policies: + $ref: '#/components/schemas/Map_PolicyConstraintDto' + ApplicationResourcePermissionDto_Any: + title: ApplicationResourcePermissionDto_Any + oneOf: + - $ref: '#/components/schemas/CONNECTOR' + - $ref: '#/components/schemas/CONSUMER_GROUP' + - $ref: '#/components/schemas/SUBJECT' + - $ref: '#/components/schemas/TOPIC' + discriminator: + propertyName: resourceType + mapping: + CONNECTOR: '#/components/schemas/CONNECTOR' + CONSUMER_GROUP: '#/components/schemas/CONSUMER_GROUP' + SUBJECT: '#/components/schemas/SUBJECT' + TOPIC: '#/components/schemas/TOPIC' + ApplicationResourceV1: + title: ApplicationResourceV1 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v1 + kind: + $ref: '#/components/schemas/ApplicationKind' + metadata: + $ref: '#/components/schemas/ApplicationMetadata' + spec: + $ref: '#/components/schemas/InputApplicationSpec' + AttachedPolicy: + title: AttachedPolicy + type: object + required: + - name + - readAccess + properties: + name: + type: string + pattern: ^[0-9a-z_\-.]+$ + displayName: + type: string + readAccess: + type: boolean + AttachedRule: + title: AttachedRule + type: object + required: + - name + - displayName + properties: + name: + type: string + pattern: ^[0-9a-z_\-.]+$ + displayName: + type: string + description: + type: string + AuthenticationMode: + title: AuthenticationMode + type: object + required: + - serviceAccount + - type + properties: + serviceAccount: + type: string + type: + $ref: '#/components/schemas/PartnerZoneAuthenticationType' + AutoRestartConfig: + title: AutoRestartConfig + type: object + required: + - enabled + properties: + enabled: + type: boolean + frequencySeconds: + type: integer + format: int64 + BadRequest: + title: BadRequest + type: object + required: + - title + properties: + title: + type: string + msg: + type: string + cause: + type: string + Basic: + title: Basic + type: object + required: + - username + - password + - type + properties: + username: + type: string + password: + type: string + type: + type: string + const: Basic + BasicAuth: + title: BasicAuth + type: object + required: + - username + - password + - type + properties: + username: + type: string + password: + type: string + type: + type: string + const: BasicAuth + BasicAuth1: + title: BasicAuth + type: object + required: + - username + - password + - type + properties: + username: + type: string + password: + type: string + type: + type: string + const: BasicAuth + BasicAuth2: + title: BasicAuth + type: object + required: + - username + - password + - type + properties: + username: + type: string + password: + type: string + type: + type: string + const: BasicAuth + Bearer: + title: Bearer + type: object + required: + - token + - type + properties: + token: + type: string + type: + type: string + const: Bearer + BearerToken: + title: BearerToken + type: object + required: + - token + - type + properties: + token: + type: string + type: + type: string + const: BearerToken + BearerToken1: + title: BearerToken + type: object + required: + - token + - type + properties: + token: + type: string + type: + type: string + const: BearerToken + BearerToken2: + title: BearerToken + type: object + required: + - token + - type + properties: + token: + type: string + type: + type: string + const: BearerToken + Block: + title: Block + type: object + required: + - enabled + properties: + enabled: + type: boolean + dlqTopic: + type: string + BrokerAlertOutputV2: + title: BrokerAlertOutputV2 + type: object + required: + - threshold + - operator + - metric + - promQl + - type + properties: + threshold: + type: integer + format: int64 + operator: + $ref: '#/components/schemas/Operator' + metric: + $ref: '#/components/schemas/BrokerMetricType' + promQl: + type: string + description: + type: string + displayName: + type: string + disable: + type: boolean + type: + type: string + const: BrokerAlert + BrokerAlertOutputV3: + title: BrokerAlertOutputV3 + type: object + required: + - cluster + - threshold + - operator + - metric + - promQl + - type + properties: + cluster: + type: string + threshold: + type: integer + format: int64 + operator: + $ref: '#/components/schemas/Operator' + metric: + $ref: '#/components/schemas/BrokerMetricType' + promQl: + type: string + description: + type: string + displayName: + type: string + destination: + $ref: '#/components/schemas/Destination' + disable: + type: boolean + type: + type: string + const: BrokerAlert + BrokerAlertV2: + title: BrokerAlertV2 + type: object + required: + - threshold + - operator + - metric + - type + properties: + threshold: + type: integer + format: int64 + operator: + $ref: '#/components/schemas/Operator' + metric: + $ref: '#/components/schemas/BrokerMetricType' + description: + type: string + displayName: + type: string + disable: + type: boolean + type: + type: string + const: BrokerAlert + BrokerAlertV3: + title: BrokerAlertV3 + type: object + required: + - cluster + - threshold + - operator + - metric + - type + properties: + cluster: + type: string + threshold: + type: integer + format: int64 + operator: + $ref: '#/components/schemas/Operator' + metric: + $ref: '#/components/schemas/BrokerMetricType' + description: + type: string + displayName: + type: string + destination: + $ref: '#/components/schemas/Destination' + disable: + type: boolean + type: + type: string + const: BrokerAlert + BrokerMetricType: + title: BrokerMetricType + type: string + enum: + - MessageIn + - MessageOut + - MessageSize + - OfflinePartitionCount + - PartitionCount + - UnderMinIsrPartitionCount + - UnderReplicatedPartitionCount + CLUSTER: + title: CLUSTER + type: object + required: + - name + - resourceType + properties: + name: + type: string + pattern: ^([0-9a-z\-]+|\*)$ + permissions: + type: array + uniqueItems: true + items: + type: string + enum: + - clusterViewBroker + - clusterEditSRCompatibility + - clusterEditBroker + - clusterViewACL + - clusterManageACL + resourceType: + type: string + enum: + - PLATFORM + - CLUSTER + - TOPIC + - CONSUMER_GROUP + - KAFKA_CONNECT + - SUBJECT + - KSQLDB + CONNECTOR: + title: CONNECTOR + type: object + required: + - appInstance + - patternType + - connectCluster + - name + - resourceType + properties: + appInstance: + type: string + pattern: ^[0-9a-z_\-.]+$ + patternType: + $ref: '#/components/schemas/PatternType' + connectCluster: + type: string + name: + type: string + permissions: + type: array + uniqueItems: true + items: + type: string + enum: + - kafkaConnectorStatus + - kafkaConnectorEditConfig + - kafkaConnectorDelete + - kafkaConnectorCreate + - kafkaConnectorOffsetsView + - kafkaConnectorViewConfig + - kafkaConnectorStop + - kafkaConnectPauseResume + - kafkaConnectRestart + - kafkaConnectorOffsetsManage + resourceType: + type: string + const: CONNECTOR + CONSUMER_GROUP: + title: CONSUMER_GROUP + type: object + required: + - appInstance + - patternType + - name + - resourceType + properties: + appInstance: + type: string + pattern: ^[0-9a-z_\-.]+$ + patternType: + $ref: '#/components/schemas/PatternType' + name: + type: string + permissions: + type: array + uniqueItems: true + items: + type: string + enum: + - consumerGroupView + - consumerGroupReset + - consumerGroupDelete + - consumerGroupCreate + resourceType: + type: string + const: CONSUMER_GROUP + CONSUMER_GROUP1: + title: CONSUMER_GROUP + type: object + required: + - cluster + - name + - patternType + - resourceType + properties: + cluster: + type: string + pattern: ^([0-9a-z\-]+|\*)$ + name: + type: string + patternType: + $ref: '#/components/schemas/PatternType' + permissions: + type: array + uniqueItems: true + items: + type: string + enum: + - consumerGroupView + - consumerGroupReset + - consumerGroupDelete + - consumerGroupCreate + resourceType: + type: string + enum: + - PLATFORM + - CLUSTER + - TOPIC + - CONSUMER_GROUP + - KAFKA_CONNECT + - SUBJECT + - KSQLDB + CatalogVisibility: + title: CatalogVisibility + type: string + enum: + - PRIVATE + - PUBLIC + Cel: + title: Cel + type: object + required: + - celExpression + - displayName + - type + properties: + celExpression: + type: string + displayName: + type: string + description: + type: string + customErrorMessage: + type: string + type: + type: string + const: Cel + Cel1: + title: Cel + type: object + required: + - celExpression + - displayName + - type + properties: + celExpression: + type: string + displayName: + type: string + description: + type: string + customErrorMessage: + type: string + type: + type: string + const: Cel + CelRule: + title: CelRule + type: object + required: + - condition + - errorMessage + properties: + condition: + type: string + errorMessage: + type: string + ChargebackCostApplyResultV2: + title: ChargebackCostApplyResultV2 + type: object + required: + - resource + - upsertResult + properties: + resource: + $ref: '#/components/schemas/ChargebackCostResourceV2' + upsertResult: + $ref: '#/components/schemas/UpsertResult' + ChargebackCostConnect: + title: ChargebackCostConnect + type: object + properties: + connectorTaskHourDefault: + type: string + connectorTaskHourOverrides: + type: array + items: + $ref: '#/components/schemas/ChargebackCostConnectorOverride' + ChargebackCostConnectorOverride: + title: ChargebackCostConnectorOverride + type: object + required: + - connectorClass + - connectorTaskHour + properties: + connectorClass: + type: string + connectorTaskHour: + type: string + ChargebackCostKind: + title: ChargebackCostKind + type: string + enum: + - ChargebackCost + ChargebackCostMetadata: + title: ChargebackCostMetadata + type: object + required: + - name + properties: + name: + type: string + ChargebackCostNetwork: + title: ChargebackCostNetwork + type: object + properties: + ingressGigaByteCost: + type: string + egressGigaBytesCost: + type: string + ChargebackCostResourceV2: + title: ChargebackCostResourceV2 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v2 + kind: + $ref: '#/components/schemas/ChargebackCostKind' + metadata: + $ref: '#/components/schemas/ChargebackCostMetadata' + spec: + $ref: '#/components/schemas/ChargebackCostSpec' + ChargebackCostSpec: + title: ChargebackCostSpec + type: object + required: + - topics + properties: + topics: + $ref: '#/components/schemas/ChargebackCostTopics' + network: + $ref: '#/components/schemas/ChargebackCostNetwork' + connect: + $ref: '#/components/schemas/ChargebackCostConnect' + ChargebackCostTopics: + title: ChargebackCostTopics + type: object + required: + - storageGigaBytesHourCost + - partitionHourCost + properties: + storageGigaBytesHourCost: + type: string + partitionHourCost: + type: string + ChargebackExportFormat: + title: ChargebackExportFormat + type: string + enum: + - csv + ChargebackLabelApplyResultV2: + title: ChargebackLabelApplyResultV2 + type: object + required: + - resource + - upsertResult + properties: + resource: + $ref: '#/components/schemas/ChargebackLabelResourceV2' + upsertResult: + $ref: '#/components/schemas/UpsertResult' + ChargebackLabelKind: + title: ChargebackLabelKind + type: string + enum: + - ChargebackLabel + ChargebackLabelMetadata: + title: ChargebackLabelMetadata + type: object + required: + - name + properties: + name: + type: string + ChargebackLabelResourceV2: + title: ChargebackLabelResourceV2 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v2 + kind: + $ref: '#/components/schemas/ChargebackLabelKind' + metadata: + $ref: '#/components/schemas/ChargebackLabelMetadata' + spec: + $ref: '#/components/schemas/ChargebackLabelSpec' + ChargebackLabelSpec: + title: ChargebackLabelSpec + type: object + CleanupPolicy: + title: CleanupPolicy + type: string + enum: + - delete + - compact + - compact,delete + CleanupPolicyFilter: + title: CleanupPolicyFilter + type: object + required: + - type + properties: + oneOf: + type: array + items: + $ref: '#/components/schemas/CleanupPolicy' + type: + type: string + const: CleanupPolicyFilter + ClusterV1: + title: ClusterV1 + type: object + required: + - clusterId + - resourceType + properties: + clusterId: + type: string + pattern: ^([0-9a-z\-]+|\*)$ + permissions: + type: array + uniqueItems: true + items: + type: string + enum: + - clusterViewBroker + - clusterEditSRCompatibility + - clusterEditBroker + - clusterViewACL + - clusterManageACL + resourceType: + type: string + enum: + - Platform + - Cluster + - Topic + - ConsumerGroup + - KafkaConnect + - Subject + - KsqlDB + Column: + title: Column + type: object + required: + - columnName + - columnType + properties: + columnName: + type: string + columnType: + $ref: '#/components/schemas/ColumnType' + ColumnType: + title: ColumnType + type: string + enum: + - BOOLEAN + - DOUBLE + - INT + - JSON + - LONG + - STRING + - TIMESTAMP + Conflict: + title: Conflict + type: object + required: + - title + properties: + title: + type: string + msg: + type: string + cause: + type: string + Confluent: + title: Confluent + type: object + required: + - key + - secret + - confluentEnvironmentId + - confluentClusterId + - type + properties: + key: + type: string + secret: + type: string + confluentEnvironmentId: + type: string + confluentClusterId: + type: string + organizationId: + type: string + schemaRegistryId: + type: string + enableRbacRoleBindings: + type: boolean + type: + type: string + const: Confluent + ConfluentCreate: + title: ConfluentCreate + type: object + required: + - key + - secret + - confluentEnvironmentId + - confluentClusterId + - type + properties: + key: + type: string + secret: + type: string + confluentEnvironmentId: + type: string + confluentClusterId: + type: string + organizationId: + type: string + schemaRegistryId: + type: string + enableRbacRoleBindings: + type: boolean + type: + type: string + const: Confluent + ConfluentLike: + title: ConfluentLike + type: object + required: + - url + - security + - ignoreUntrustedCertificate + - type + properties: + url: + type: string + security: + $ref: '#/components/schemas/ConfluentLikeSchemaRegistrySecurity' + properties: + type: string + ignoreUntrustedCertificate: + type: boolean + schemaRegistryProxyClusterName: + type: string + schemaRegistryProxyId: + type: string + type: + type: string + const: ConfluentLike + ConfluentLikeSchemaRegistryRequest: + title: ConfluentLikeSchemaRegistryRequest + type: object + required: + - url + - type + properties: + url: + type: string + security: + $ref: '#/components/schemas/ConfluentLikeSchemaRegistrySecurity' + properties: + type: string + ignoreUntrustedCertificate: + type: boolean + schemaRegistryProxyClusterName: + type: string + type: + type: string + const: ConfluentLikeSchemaRegistryRequest + ConfluentLikeSchemaRegistryResponse: + title: ConfluentLikeSchemaRegistryResponse + type: object + required: + - id + - url + - security + - ignoreUntrustedCertificate + - type + properties: + id: + type: string + format: uuid + url: + type: string + security: + $ref: '#/components/schemas/ConfluentLikeSchemaRegistrySecurity' + properties: + type: string + ignoreUntrustedCertificate: + type: boolean + schemaRegistryProxyClusterName: + type: string + schemaRegistryProxyId: + type: string + type: + type: string + const: ConfluentLikeSchemaRegistryResponse + ConfluentLikeSchemaRegistrySecurity: + title: ConfluentLikeSchemaRegistrySecurity + oneOf: + - $ref: '#/components/schemas/BasicAuth' + - $ref: '#/components/schemas/BearerToken' + - $ref: '#/components/schemas/NoSecurity' + - $ref: '#/components/schemas/SSLAuth' + discriminator: + propertyName: type + mapping: + BasicAuth: '#/components/schemas/BasicAuth' + BearerToken: '#/components/schemas/BearerToken' + NoSecurity: '#/components/schemas/NoSecurity' + SSLAuth: '#/components/schemas/SSLAuth' + ConfluentPlatform: + title: ConfluentPlatform + type: object + required: + - kafkaClusterId + - type + properties: + kafkaClusterId: + type: string + mdsUrl: + type: string + ldapUsername: + type: string + ldapPassword: + type: string + mtlsClientCertificateId: + type: string + mtlsClientKeyId: + type: string + mtlsCaCertificateIds: + type: array + items: + type: string + schemaRegistryClusterId: + type: string + enableRbacRoleBindings: + type: boolean + ignoreUntrustedCertificate: + default: false + type: boolean + type: + type: string + const: ConfluentPlatform + ConfluentPlatformAuthenticationCreateRequest: + title: ConfluentPlatformAuthenticationCreateRequest + oneOf: + - $ref: '#/components/schemas/LDAP' + discriminator: + propertyName: type + mapping: + LDAP: '#/components/schemas/LDAP' + ConfluentPlatformAuthenticationResponse: + title: ConfluentPlatformAuthenticationResponse + oneOf: + - $ref: '#/components/schemas/LDAP1' + discriminator: + propertyName: type + mapping: + LDAP: '#/components/schemas/LDAP1' + ConfluentPlatformCreate: + title: ConfluentPlatformCreate + type: object + required: + - kafkaClusterId + - type + properties: + kafkaClusterId: + type: string + mdsUrl: + type: string + authentication: + $ref: '#/components/schemas/ConfluentPlatformAuthenticationCreateRequest' + mtls: + $ref: '#/components/schemas/ConfluentPlatformMTLSCreateRequest' + schemaRegistryClusterId: + type: string + enableRbacRoleBindings: + type: boolean + ignoreUntrustedCertificate: + default: false + type: boolean + type: + type: string + const: ConfluentPlatform + ConfluentPlatformMTLSCreateRequest: + title: ConfluentPlatformMTLSCreateRequest + type: object + required: + - clientCertificateId + - clientKeyId + properties: + clientCertificateId: + type: string + clientKeyId: + type: string + caCertificateIds: + type: array + items: + type: string + ConfluentPlatformMTLSResponse: + title: ConfluentPlatformMTLSResponse + type: object + required: + - clientCertificateId + - clientKeyId + properties: + clientCertificateId: + type: string + clientKeyId: + type: string + caCertificateIds: + type: array + items: + type: string + ConfluentPlatformResponse: + title: ConfluentPlatformResponse + type: object + required: + - kafkaClusterId + - type + properties: + kafkaClusterId: + type: string + mdsUrl: + type: string + authentication: + $ref: '#/components/schemas/ConfluentPlatformAuthenticationResponse' + mtls: + $ref: '#/components/schemas/ConfluentPlatformMTLSResponse' + schemaRegistryClusterId: + type: string + enableRbacRoleBindings: + type: boolean + ignoreUntrustedCertificate: + default: false + type: boolean + type: + type: string + const: ConfluentPlatform + ConfluentResponse: + title: ConfluentResponse + type: object + required: + - key + - confluentEnvironmentId + - confluentClusterId + - type + properties: + key: + type: string + confluentEnvironmentId: + type: string + confluentClusterId: + type: string + organizationId: + type: string + schemaRegistryId: + type: string + enableRbacRoleBindings: + type: boolean + type: + type: string + const: Confluent + ConnectorApplyResultV2: + title: ConnectorApplyResultV2 + type: object + required: + - resource + - upsertResult + properties: + resource: + $ref: '#/components/schemas/ConnectorResourceV2' + upsertResult: + $ref: '#/components/schemas/UpsertResult' + ConnectorCreateResultV2: + title: ConnectorCreateResultV2 + type: object + required: + - resource + - createResult + properties: + resource: + $ref: '#/components/schemas/ConnectorResourceV2' + createResult: + $ref: '#/components/schemas/CreateResult' + ConnectorInitialState: + title: ConnectorInitialState + type: string + enum: + - RUNNING + - PAUSED + - STOPPED + ConnectorKind: + title: ConnectorKind + type: string + enum: + - Connector + ConnectorMetadata: + title: ConnectorMetadata + type: object + required: + - name + - cluster + - connectCluster + properties: + name: + type: string + cluster: + type: string + connectCluster: + type: string + labels: + $ref: '#/components/schemas/Map_LabelKey_String' + autoRestart: + $ref: '#/components/schemas/AutoRestartConfig' + description: + type: string + ConnectorOffsetEntry: + title: ConnectorOffsetEntry + type: object + required: + - partition + - offset + properties: + partition: {} + offset: {} + ConnectorOffsets: + title: ConnectorOffsets + type: object + properties: + offsets: + type: array + items: + $ref: '#/components/schemas/ConnectorOffsetEntry' + ConnectorResourceV2: + title: ConnectorResourceV2 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v2 + kind: + $ref: '#/components/schemas/ConnectorKind' + metadata: + $ref: '#/components/schemas/ConnectorMetadata' + spec: + $ref: '#/components/schemas/ConnectorSpec' + ConnectorSpec: + title: ConnectorSpec + type: object + required: + - config + properties: + config: + $ref: '#/components/schemas/Map_String' + initialState: + $ref: '#/components/schemas/ConnectorInitialState' + ConnectorTemplateApplyResultV2: + title: ConnectorTemplateApplyResultV2 + type: object + required: + - resource + - upsertResult + properties: + resource: + $ref: '#/components/schemas/ConnectorTemplateResourceV2' + upsertResult: + $ref: '#/components/schemas/UpsertResult' + ConnectorTemplateDefaults: + title: ConnectorTemplateDefaults + type: object + required: + - metadata + - spec + properties: + metadata: + $ref: '#/components/schemas/ConnectorTemplateDefaultsMetadata' + spec: + $ref: '#/components/schemas/ConnectorTemplateDefaultsSpec' + ConnectorTemplateDefaultsMetadata: + title: ConnectorTemplateDefaultsMetadata + type: object + properties: + name: + type: string + pattern: ([^{]|\{(?!\{)|\{\{[A-Za-z_][A-Za-z0-9_]*\}\})* + labels: + $ref: '#/components/schemas/Map_LabelKey_String' + ConnectorTemplateDefaultsSpec: + title: ConnectorTemplateDefaultsSpec + type: object + required: + - class + - config + properties: + class: + type: string + pattern: (?s).*\S.* + config: + $ref: '#/components/schemas/Map_String' + ConnectorTemplateKind: + title: ConnectorTemplateKind + type: string + enum: + - ConnectorTemplate + ConnectorTemplateMetadata: + title: ConnectorTemplateMetadata + type: object + required: + - name + properties: + name: + type: string + pattern: ^[0-9a-z_\-.]+$ + labels: + $ref: '#/components/schemas/Map_LabelKey_String' + ConnectorTemplateResourceV2: + title: ConnectorTemplateResourceV2 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v2 + kind: + $ref: '#/components/schemas/ConnectorTemplateKind' + metadata: + $ref: '#/components/schemas/ConnectorTemplateMetadata' + spec: + $ref: '#/components/schemas/ConnectorTemplateSpec' + ConnectorTemplateSpec: + title: ConnectorTemplateSpec + type: object + required: + - displayName + - defaults + properties: + displayName: + type: string + pattern: (?s).*\S.* + description: + type: string + defaults: + $ref: '#/components/schemas/ConnectorTemplateDefaults' + ConstraintKind: + title: ConstraintKind + type: string + enum: + - AllowedKeys + - Match + - NoneOf + - OneOf + - Range + ConsumerGroupAlertOutputV2: + title: ConsumerGroupAlertOutputV2 + type: object + required: + - consumerGroupName + - threshold + - operator + - metric + - promQl + - type + properties: + consumerGroupName: + type: string + threshold: + type: integer + format: int64 + operator: + $ref: '#/components/schemas/Operator' + metric: + $ref: '#/components/schemas/ConsumerGroupMetricType' + promQl: + type: string + description: + type: string + displayName: + type: string + disable: + type: boolean + topicName: + type: string + type: + type: string + const: ConsumerGroupAlert + ConsumerGroupAlertOutputV3: + title: ConsumerGroupAlertOutputV3 + type: object + required: + - cluster + - consumerGroupName + - threshold + - operator + - metric + - promQl + - type + properties: + cluster: + type: string + consumerGroupName: + type: string + threshold: + type: integer + format: int64 + operator: + $ref: '#/components/schemas/Operator' + metric: + $ref: '#/components/schemas/ConsumerGroupMetricType' + promQl: + type: string + description: + type: string + displayName: + type: string + destination: + $ref: '#/components/schemas/Destination' + disable: + type: boolean + topicName: + type: string + type: + type: string + const: ConsumerGroupAlert + ConsumerGroupAlertV2: + title: ConsumerGroupAlertV2 + type: object + required: + - consumerGroupName + - threshold + - operator + - metric + - type + properties: + consumerGroupName: + type: string + threshold: + type: integer + format: int64 + operator: + $ref: '#/components/schemas/Operator' + metric: + $ref: '#/components/schemas/ConsumerGroupMetricType' + description: + type: string + displayName: + type: string + disable: + type: boolean + topicName: + type: string + type: + type: string + const: ConsumerGroupAlert + ConsumerGroupAlertV3: + title: ConsumerGroupAlertV3 + type: object + required: + - cluster + - consumerGroupName + - threshold + - operator + - metric + - type + properties: + cluster: + type: string + consumerGroupName: + type: string + threshold: + type: integer + format: int64 + operator: + $ref: '#/components/schemas/Operator' + metric: + $ref: '#/components/schemas/ConsumerGroupMetricType' + description: + type: string + displayName: + type: string + destination: + $ref: '#/components/schemas/Destination' + disable: + type: boolean + topicName: + type: string + type: + type: string + const: ConsumerGroupAlert + ConsumerGroupFilter: + title: ConsumerGroupFilter + oneOf: + - $ref: '#/components/schemas/OnConsumerGroupName' + - $ref: '#/components/schemas/OnGroupType' + - $ref: '#/components/schemas/OnLabels' + - $ref: '#/components/schemas/OnState' + discriminator: + propertyName: type + mapping: + OnConsumerGroupName: '#/components/schemas/OnConsumerGroupName' + OnGroupType: '#/components/schemas/OnGroupType' + OnLabels: '#/components/schemas/OnLabels' + OnState: '#/components/schemas/OnState' + ConsumerGroupMetricType: + title: ConsumerGroupMetricType + type: string + enum: + - OffsetLag + - TimeLag + ConsumerGroupRequest: + title: ConsumerGroupRequest + type: object + required: + - page + - itemsPerPage + - sort + properties: + page: + description: Page number, starting from 1 + type: integer + format: int32 + itemsPerPage: + type: integer + format: int32 + filter: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/ConsumerGroupFilter' + sort: + $ref: '#/components/schemas/ConsumerGroupSort' + descSort: + type: boolean + ConsumerGroupResponse: + title: ConsumerGroupResponse + oneOf: + - $ref: '#/components/schemas/IndexedConsumerGroup' + - $ref: '#/components/schemas/NotIndexedConsumerGroup' + discriminator: + propertyName: type + mapping: + IndexedConsumerGroup: '#/components/schemas/IndexedConsumerGroup' + NotIndexedConsumerGroup: '#/components/schemas/NotIndexedConsumerGroup' + ConsumerGroupSort: + title: ConsumerGroupSort + type: string + enum: + - ByName + - ByState + - ByOverallLag + - ByMaxLagTimeInSeconds + - ByMembers + - ByGroupType + ConsumerGroupState: + title: ConsumerGroupState + type: string + enum: + - Unknown + - PreparingRebalance + - CompletingRebalance + - Stable + - Dead + - Empty + - Assigning + - Reconciling + ConsumerGroupStats: + title: ConsumerGroupStats + type: object + required: + - name + - state + - overallLag + - labels + properties: + name: + type: string + state: + $ref: '#/components/schemas/ConsumerGroupState' + consumeRateInSeconds: + type: number + format: double + overallLag: + type: integer + format: int64 + maxLagTimeInSeconds: + type: integer + format: int64 + labels: + $ref: '#/components/schemas/Map_LabelKey_String' + ConsumerGroupV1: + title: ConsumerGroupV1 + type: object + required: + - clusterId + - consumerGroupPattern + - resourceType + properties: + clusterId: + type: string + pattern: ^([0-9a-z\-]+|\*)$ + consumerGroupPattern: + type: string + permissions: + type: array + uniqueItems: true + items: + type: string + enum: + - consumerGroupView + - consumerGroupReset + - consumerGroupDelete + - consumerGroupCreate + resourceType: + type: string + enum: + - Platform + - Cluster + - Topic + - ConsumerGroup + - KafkaConnect + - Subject + - KsqlDB + CreateApiKey: + title: CreateApiKey + type: object + required: + - name + - description + properties: + name: + type: string + description: + type: string + CreateCertificateFromFileRequest: + title: CreateCertificateFromFileRequest + type: object + required: + - file + properties: + file: + type: string + format: binary + jksPassword: + type: string + CreateCertificateRequest: + title: CreateCertificateRequest + type: object + required: + - input + properties: + input: + type: string + CreateResult: + title: CreateResult + type: string + enum: + - AlreadyExist + - Created + CreateServiceAccount: + title: CreateServiceAccount + type: object + required: + - name + - description + properties: + name: + type: string + description: + type: string + CreateTokenRequest: + title: CreateTokenRequest + type: object + required: + - name + properties: + name: + type: string + Credentials: + title: Credentials + type: object + required: + - accessKeyId + - secretKey + - type + properties: + accessKeyId: + type: string + secretKey: + type: string + type: + type: string + const: Credentials + DataQualityPolicyAlertOutputV3: + title: DataQualityPolicyAlertOutputV3 + type: object + required: + - policyName + - triggerAfter + - withinInSeconds + - promQl + - type + properties: + policyName: + type: string + pattern: ^[0-9a-z_\-.]+$ + triggerAfter: + type: integer + format: int64 + withinInSeconds: + type: integer + format: int64 + promQl: + type: string + description: + type: string + displayName: + type: string + destination: + $ref: '#/components/schemas/Destination' + disable: + type: boolean + type: + type: string + const: DataQualityPolicyAlert + DataQualityPolicyAlertV3: + title: DataQualityPolicyAlertV3 + type: object + required: + - policyName + - triggerAfter + - withinInSeconds + - type + properties: + policyName: + type: string + pattern: ^[0-9a-z_\-.]+$ + triggerAfter: + type: integer + format: int64 + exclusiveMinimum: 0 + withinInSeconds: + type: integer + format: int64 + exclusiveMinimum: 0 + description: + type: string + displayName: + type: string + destination: + $ref: '#/components/schemas/Destination' + disable: + type: boolean + type: + type: string + const: DataQualityPolicyAlert + DataQualityPolicyApplyResultV1: + title: DataQualityPolicyApplyResultV1 + type: object + required: + - resource + - upsertResult + properties: + resource: + $ref: '#/components/schemas/DataQualityPolicyResourceV1' + upsertResult: + $ref: '#/components/schemas/UpsertResult' + DataQualityPolicyKind: + title: DataQualityPolicyKind + type: string + enum: + - DataQualityPolicy + DataQualityPolicyMetadata: + title: DataQualityPolicyMetadata + type: object + required: + - name + - group + properties: + name: + type: string + pattern: ^[0-9a-z_\-.]+$ + labels: + $ref: '#/components/schemas/Map_LabelKey_String' + group: + type: string + DataQualityPolicyMetadataOutput: + title: DataQualityPolicyMetadataOutput + type: object + required: + - name + - nameForMetrics + - group + - status + - statusInfo + - createdAt + - updatedAt + - createdBy + - updatedBy + properties: + name: + type: string + pattern: ^[0-9a-z_\-.]+$ + nameForMetrics: + type: string + pattern: ^[0-9a-z_\-.]+$ + labels: + $ref: '#/components/schemas/Map_LabelKey_String' + group: + type: string + status: + $ref: '#/components/schemas/Status' + statuses: + type: array + items: + $ref: '#/components/schemas/DataQualityPolicyStatusResponse' + statusInfo: + type: string + attachedRules: + type: array + items: + $ref: '#/components/schemas/AttachedRule' + metrics: + $ref: '#/components/schemas/DataQualityPolicyMetrics' + createdAt: + type: string + format: date-time + updatedAt: + type: string + format: date-time + createdBy: + type: string + updatedBy: + type: string + DataQualityPolicyMetrics: + title: DataQualityPolicyMetrics + type: object + required: + - evaluationsCount + - violationsCount + properties: + evaluationsCount: + type: integer + format: int64 + violationsCount: + type: integer + format: int64 + DataQualityPolicyOutputResourceV1: + title: DataQualityPolicyOutputResourceV1 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v1 + kind: + $ref: '#/components/schemas/DataQualityPolicyKind' + metadata: + $ref: '#/components/schemas/DataQualityPolicyMetadataOutput' + spec: + $ref: '#/components/schemas/DataQualityPolicySpec' + DataQualityPolicyResourceV1: + title: DataQualityPolicyResourceV1 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v1 + kind: + $ref: '#/components/schemas/DataQualityPolicyKind' + metadata: + $ref: '#/components/schemas/DataQualityPolicyMetadata' + spec: + $ref: '#/components/schemas/DataQualityPolicySpec' + DataQualityPolicySpec: + title: DataQualityPolicySpec + type: object + required: + - displayName + - actions + properties: + displayName: + type: string + description: + type: string + rules: + type: array + items: + type: string + pattern: ^[0-9a-z_\-.]+$ + targets: + type: array + items: + $ref: '#/components/schemas/Target' + actions: + $ref: '#/components/schemas/Actions' + DataQualityPolicyStatusResponse: + title: DataQualityPolicyStatusResponse + type: object + required: + - clusterSlug + - status + - statusInfo + - updatedAt + properties: + clusterSlug: + type: string + status: + $ref: '#/components/schemas/Status' + statusInfo: + type: string + updatedAt: + type: string + format: date-time + DataQualityRuleApplyResultV1: + title: DataQualityRuleApplyResultV1 + type: object + required: + - resource + - upsertResult + properties: + resource: + $ref: '#/components/schemas/DataQualityRuleResourceV1' + upsertResult: + $ref: '#/components/schemas/UpsertResult' + DataQualityRuleKind: + title: DataQualityRuleKind + type: string + enum: + - DataQualityRule + DataQualityRuleMetadata: + title: DataQualityRuleMetadata + type: object + required: + - name + properties: + name: + type: string + pattern: ^[0-9a-z_\-.]+$ + labels: + $ref: '#/components/schemas/Map_LabelKey_String' + DataQualityRuleMetadataOutput: + title: DataQualityRuleMetadataOutput + type: object + required: + - name + - createdAt + - updatedAt + - createdBy + - updatedBy + - builtIn + properties: + name: + type: string + pattern: ^[0-9a-z_\-.]+$ + labels: + $ref: '#/components/schemas/Map_LabelKey_String' + createdAt: + type: string + format: date-time + updatedAt: + type: string + format: date-time + createdBy: + type: string + updatedBy: + type: string + attachedPolicies: + type: array + items: + $ref: '#/components/schemas/AttachedPolicy' + builtIn: + type: boolean + DataQualityRuleOutputResourceV1: + title: DataQualityRuleOutputResourceV1 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v1 + kind: + $ref: '#/components/schemas/DataQualityRuleKind' + metadata: + $ref: '#/components/schemas/DataQualityRuleMetadataOutput' + spec: + $ref: '#/components/schemas/DataQualityRuleSpecOutput' + DataQualityRuleResourceV1: + title: DataQualityRuleResourceV1 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v1 + kind: + $ref: '#/components/schemas/DataQualityRuleKind' + metadata: + $ref: '#/components/schemas/DataQualityRuleMetadata' + spec: + $ref: '#/components/schemas/DataQualityRuleSpec' + DataQualityRuleSpec: + title: DataQualityRuleSpec + oneOf: + - $ref: '#/components/schemas/Cel1' + - $ref: '#/components/schemas/JsonSchema1' + discriminator: + propertyName: type + mapping: + Cel: '#/components/schemas/Cel1' + JsonSchema: '#/components/schemas/JsonSchema1' + DataQualityRuleSpecOutput: + title: DataQualityRuleSpecOutput + oneOf: + - $ref: '#/components/schemas/Cel' + - $ref: '#/components/schemas/EnforceAvro' + - $ref: '#/components/schemas/EnforceSchemaId' + - $ref: '#/components/schemas/JsonSchema' + discriminator: + propertyName: type + mapping: + Cel: '#/components/schemas/Cel' + EnforceAvro: '#/components/schemas/EnforceAvro' + EnforceSchemaId: '#/components/schemas/EnforceSchemaId' + JsonSchema: '#/components/schemas/JsonSchema' + DecodedCertificate: + title: DecodedCertificate + type: object + required: + - id + - version + - serialNumber + - issuerDN + - subjectDN + - notBefore + - notAfter + properties: + id: + type: string + version: + type: integer + format: int32 + serialNumber: + type: integer + issuerDN: + type: string + subjectDN: + type: string + notBefore: + type: string + format: date-time + notAfter: + type: string + format: date-time + Destination: + title: Destination + oneOf: + - $ref: '#/components/schemas/Email1' + - $ref: '#/components/schemas/Slack1' + - $ref: '#/components/schemas/Teams' + - $ref: '#/components/schemas/Webhook' + discriminator: + propertyName: type + mapping: + Email: '#/components/schemas/Email1' + Slack: '#/components/schemas/Slack1' + Teams: '#/components/schemas/Teams' + Webhook: '#/components/schemas/Webhook' + Dlq: + title: Dlq + type: object + required: + - enabled + properties: + enabled: + type: boolean + dlqTopic: + type: string + Email: + title: Email + type: object + required: + - smtpServerUrl + - enableTls + - ignoreUntrustedCertificate + - senderEmail + - username + - password + properties: + smtpServerUrl: + type: string + enableTls: + type: boolean + ignoreUntrustedCertificate: + type: boolean + senderEmail: + type: string + username: + type: string + password: + type: string + tlsMode: + $ref: '#/components/schemas/EmailTlsMode' + Email1: + title: Email + type: object + required: + - to + - subject + - type + properties: + to: + type: string + subject: + type: string + body: + type: string + type: + type: string + const: Email + EmailTlsMode: + title: EmailTlsMode + type: string + enum: + - StartTls + - Tls + EnforceAvro: + title: EnforceAvro + type: object + required: + - displayName + - type + properties: + displayName: + type: string + description: + type: string + customErrorMessage: + type: string + type: + type: string + const: EnforceAvro + EnforceSchemaId: + title: EnforceSchemaId + type: object + required: + - displayName + - type + properties: + displayName: + type: string + description: + type: string + customErrorMessage: + type: string + type: + type: string + const: EnforceSchemaId + ExplainQuery: + title: ExplainQuery + type: object + required: + - statementText + - topology + - executionPlan + - state + properties: + statementText: + type: string + sources: + type: array + items: + type: string + sinks: + type: array + items: + type: string + topology: + type: string + executionPlan: + type: string + state: + type: string + windowType: + type: string + fields: + type: array + items: + $ref: '#/components/schemas/Field' + Field: + title: Field + type: object + required: + - name + - type + properties: + name: + type: string + type: + type: string + fields: + type: array + items: + $ref: '#/components/schemas/Field' + Forbidden: + title: Forbidden + type: object + required: + - title + properties: + title: + type: string + msg: + type: string + cause: + type: string + FromContext: + title: FromContext + type: object + required: + - type + properties: + profile: + type: string + type: + type: string + const: FromContext + FromRole: + title: FromRole + type: object + required: + - role + - type + properties: + role: + type: string + type: + type: string + const: FromRole + Gateway: + title: Gateway + type: object + required: + - url + - user + - password + - virtualCluster + - type + properties: + url: + type: string + user: + type: string + password: + type: string + virtualCluster: + type: string + ignoreUntrustedCertificate: + default: false + type: boolean + type: + type: string + const: Gateway + GatewayCreate: + title: GatewayCreate + type: object + required: + - url + - user + - password + - virtualCluster + - type + properties: + url: + type: string + user: + type: string + password: + type: string + virtualCluster: + type: string + ignoreUntrustedCertificate: + default: false + type: boolean + type: + type: string + const: Gateway + GatewayResponse: + title: GatewayResponse + type: object + required: + - url + - user + - virtualCluster + - type + properties: + url: + type: string + user: + type: string + virtualCluster: + type: string + ignoreUntrustedCertificate: + default: false + type: boolean + type: + type: string + const: Gateway + Glue: + title: Glue + type: object + required: + - region + - security + - type + properties: + registryName: + type: string + region: + type: string + security: + $ref: '#/components/schemas/AmazonSecurity' + type: + type: string + const: Glue + GlueCompatibility: + title: GlueCompatibility + type: string + enum: + - BACKWARD + - BACKWARD_ALL + - DISABLED + - FORWARD + - FORWARD_ALL + - FULL + - FULL_ALL + - NONE + GlueSchemaApplyResultV2: + title: GlueSchemaApplyResultV2 + type: object + required: + - resource + - upsertResult + properties: + resource: + $ref: '#/components/schemas/GlueSchemaResourceV2' + upsertResult: + $ref: '#/components/schemas/UpsertResult' + GlueSchemaCreateResultV2: + title: GlueSchemaCreateResultV2 + type: object + required: + - resource + - createResult + properties: + resource: + $ref: '#/components/schemas/GlueSchemaResourceV2' + createResult: + $ref: '#/components/schemas/CreateResult' + GlueSchemaKind: + title: GlueSchemaKind + type: string + enum: + - GlueSchema + GlueSchemaMetadata: + title: GlueSchemaMetadata + type: object + required: + - name + - cluster + properties: + name: + type: string + cluster: + type: string + labels: + $ref: '#/components/schemas/Map_LabelKey_String' + GlueSchemaRegistryRequest: + title: GlueSchemaRegistryRequest + type: object + required: + - region + - security + - type + properties: + registryName: + type: string + region: + type: string + security: + $ref: '#/components/schemas/AmazonSecurity' + type: + type: string + const: GlueSchemaRegistryRequest + GlueSchemaRegistryResponse: + title: GlueSchemaRegistryResponse + type: object + required: + - id + - region + - security + - type + properties: + id: + type: string + format: uuid + registryName: + type: string + region: + type: string + security: + $ref: '#/components/schemas/AmazonSecurity' + type: + type: string + const: GlueSchemaRegistryResponse + GlueSchemaResourceV2: + title: GlueSchemaResourceV2 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v2 + kind: + $ref: '#/components/schemas/GlueSchemaKind' + metadata: + $ref: '#/components/schemas/GlueSchemaMetadata' + spec: + $ref: '#/components/schemas/GlueSchemaSpec' + GlueSchemaSpec: + title: GlueSchemaSpec + type: object + required: + - format + - compatibility + - schema + properties: + format: + $ref: '#/components/schemas/SchemaFormat' + compatibility: + $ref: '#/components/schemas/GlueCompatibility' + schema: + type: string + id: + type: string + format: uuid + version: + type: integer + format: int32 + GroupApplyResultV2: + title: GroupApplyResultV2 + type: object + required: + - resource + - upsertResult + properties: + resource: + $ref: '#/components/schemas/GroupResourceV2' + upsertResult: + $ref: '#/components/schemas/UpsertResult' + GroupKind: + title: GroupKind + type: string + enum: + - Group + GroupMetadata: + title: GroupMetadata + type: object + required: + - name + properties: + name: + type: string + pattern: ^[0-9a-z_\-.]+$ + GroupResourceV2: + title: GroupResourceV2 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v2 + kind: + $ref: '#/components/schemas/GroupKind' + metadata: + $ref: '#/components/schemas/GroupMetadata' + spec: + $ref: '#/components/schemas/GroupSpec' + GroupSpec: + title: GroupSpec + type: object + required: + - displayName + properties: + displayName: + type: string + description: + type: string + externalGroups: + type: array + items: + type: string + externalGroupRegex: + type: array + uniqueItems: true + items: + type: string + members: + type: array + uniqueItems: true + items: + type: string + membersFromExternalGroups: + type: array + uniqueItems: true + items: + type: string + permissions: + type: array + items: + $ref: '#/components/schemas/ResourcePermissions1' + GroupType: + title: GroupType + type: string + enum: + - Unknown + - Classic + - Consumer + - Share + Headers: + title: Headers + type: object + properties: + addOnProduce: + type: array + items: + $ref: '#/components/schemas/ToAdd' + removeOnConsume: + type: array + items: + $ref: '#/components/schemas/ToRemove' + HideInternal: + title: HideInternal + type: object + required: + - type + properties: + type: + type: string + const: HideInternal + HideStream: + title: HideStream + type: object + required: + - type + properties: + type: + type: string + const: HideStream + HttpAuthentification: + title: HttpAuthentification + oneOf: + - $ref: '#/components/schemas/Basic' + - $ref: '#/components/schemas/Bearer' + discriminator: + propertyName: type + mapping: + Basic: '#/components/schemas/Basic' + Bearer: '#/components/schemas/Bearer' + HttpMethod: + title: HttpMethod + type: string + enum: + - DELETE + - GET + - PATCH + - POST + - PUT + IAMAnywhere: + title: IAMAnywhere + type: object + required: + - trustAnchorArn + - profileArn + - roleArn + - certificate + - privateKey + - type + properties: + trustAnchorArn: + type: string + profileArn: + type: string + roleArn: + type: string + certificate: + type: string + privateKey: + type: string + type: + type: string + const: IAMAnywhere + IndexedConsumerGroup: + title: IndexedConsumerGroup + type: object + required: + - name + - state + - members + - labels + - groupType + - type + properties: + name: + type: string + state: + $ref: '#/components/schemas/ConsumerGroupState' + members: + type: integer + format: int32 + overallLag: + type: integer + format: int64 + topics: + type: array + uniqueItems: true + items: + type: string + maxLagTimeInSeconds: + type: integer + format: int64 + labels: + $ref: '#/components/schemas/Map_LabelKey_String' + groupType: + $ref: '#/components/schemas/GroupType' + type: + type: string + const: IndexedConsumerGroup + IndexedTopic: + title: IndexedTopic + type: object + required: + - name + - replicationFactor + - partitionCount + - recordCount + - labels + - produceRate + - type + properties: + name: + type: string + replicationFactor: + type: integer + format: int32 + partitionCount: + type: integer + format: int32 + recordCount: + type: integer + format: int64 + topicSize: + type: integer + cleanupPolicy: + $ref: '#/components/schemas/CleanupPolicy' + retentionInSize: + type: integer + format: int64 + retentionInMs: + type: integer + format: int64 + minIsr: + type: integer + format: int32 + tags: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/TagInfo' + labels: + $ref: '#/components/schemas/Map_LabelKey_String' + lastActivityAt: + type: string + format: date-time + produceRate: + type: number + format: double + type: + type: string + const: IndexedTopic + IndexedTopicApplyResultV1: + title: IndexedTopicApplyResultV1 + type: object + required: + - resource + - upsertResult + properties: + resource: + $ref: '#/components/schemas/IndexedTopicResourceV1' + upsertResult: + $ref: '#/components/schemas/UpsertResult' + IndexedTopicKind: + title: IndexedTopicKind + type: string + enum: + - IndexedTopic + IndexedTopicMetadata: + title: IndexedTopicMetadata + type: object + required: + - cluster + - name + properties: + cluster: + type: string + name: + type: string + IndexedTopicResourceV1: + title: IndexedTopicResourceV1 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v1 + kind: + $ref: '#/components/schemas/IndexedTopicKind' + metadata: + $ref: '#/components/schemas/IndexedTopicMetadata' + spec: + $ref: '#/components/schemas/IndexedTopicSpec' + IndexedTopicSpec: + title: IndexedTopicSpec + type: object + required: + - retentionTimeInSecond + properties: + retentionTimeInSecond: + type: integer + format: int64 + enabled: + type: boolean + IndexerClusterResult: + title: IndexerClusterResult + type: object + required: + - clusterId + - startAt + - duration + - status + properties: + clusterId: + type: string + startAt: + type: string + format: date-time + duration: + type: string + status: + $ref: '#/components/schemas/IndexerClusterStatus' + error: + type: string + IndexerClusterStatus: + title: IndexerClusterStatus + type: string + enum: + - FAILURE + - SKIPPED + - SUCCESS + - TIMEOUT + - UNCAUGHT_ERROR + IndexerTaskResult: + title: IndexerTaskResult + type: object + required: + - taskId + - startAt + - duration + properties: + taskId: + type: string + startAt: + type: string + format: date-time + duration: + type: string + results: + type: array + items: + $ref: '#/components/schemas/IndexerClusterResult' + InputApplicationSpec: + title: InputApplicationSpec + type: object + required: + - title + - owner + properties: + title: + type: string + description: + type: string + owner: + type: string + policyRef: + type: array + uniqueItems: true + items: + type: string + pattern: ^[0-9a-z_\-.]+$ + InstancePermissionDto: + title: InstancePermissionDto + type: object + required: + - appInstance + properties: + appInstance: + type: string + pattern: ^[0-9a-z_\-.]+$ + permissions: + type: array + uniqueItems: true + items: + type: string + enum: + - applicationInstancePermissionRequestAccess + - applicationInstancePermissionGrantAccess + - applicationInstanceApiKeyManage + - applicationInstancePermissionProposeAccess + - serviceAccountManage + IntegrationApplyResultV3: + title: IntegrationApplyResultV3 + type: object + required: + - resource + - upsertResult + properties: + resource: + $ref: '#/components/schemas/IntegrationResourceV3' + upsertResult: + $ref: '#/components/schemas/UpsertResult' + IntegrationConfig: + title: IntegrationConfig + oneOf: + - $ref: '#/components/schemas/Email' + - $ref: '#/components/schemas/Slack' + IntegrationKind: + title: IntegrationKind + type: string + enum: + - Integration + IntegrationMetadata: + title: IntegrationMetadata + type: object + required: + - name + properties: + name: + $ref: '#/components/schemas/IntegrationType' + IntegrationResourceV3: + title: IntegrationResourceV3 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v3 + kind: + $ref: '#/components/schemas/IntegrationKind' + metadata: + $ref: '#/components/schemas/IntegrationMetadata' + spec: + $ref: '#/components/schemas/IntegrationSpec' + IntegrationSpec: + title: IntegrationSpec + type: object + properties: + config: + $ref: '#/components/schemas/IntegrationConfig' + IntegrationType: + title: IntegrationType + type: string + enum: + - Email + - Slack + - Teams + - Webhook + Interceptor: + title: Interceptor + type: object + required: + - name + - pluginClass + - priority + - config + properties: + name: + type: string + pluginClass: + type: string + priority: + type: integer + format: int32 + config: {} + JsonObject: + title: JsonObject + type: object + JsonSchema: + title: JsonSchema + type: object + required: + - schema + - displayName + - type + properties: + schema: + $ref: '#/components/schemas/JsonObject' + displayName: + type: string + description: + type: string + customErrorMessage: + type: string + type: + type: string + const: JsonSchema + JsonSchema1: + title: JsonSchema + type: object + required: + - schema + - displayName + - type + properties: + schema: + $ref: '#/components/schemas/JsonObject' + displayName: + type: string + description: + type: string + customErrorMessage: + type: string + type: + type: string + const: JsonSchema + KAFKA_ACL: + title: KAFKA_ACL + type: object + required: + - type + properties: + acls: + type: array + items: + $ref: '#/components/schemas/KafkaServiceAccountACL' + type: + type: string + const: KAFKA_ACL + KAFKA_CONNECT: + title: KAFKA_CONNECT + type: object + required: + - cluster + - kafkaConnect + - name + - patternType + - resourceType + properties: + cluster: + type: string + pattern: ^([0-9a-z\-]+|\*)$ + kafkaConnect: + type: string + pattern: ^([0-9a-z\-]+|\*)$ + name: + type: string + patternType: + $ref: '#/components/schemas/PatternType' + permissions: + type: array + uniqueItems: true + items: + type: string + enum: + - kafkaConnectorStatus + - kafkaConnectorEditConfig + - kafkaConnectorDelete + - kafkaConnectorCreate + - kafkaConnectorOffsetsView + - kafkaConnectorViewConfig + - kafkaConnectorStop + - kafkaConnectPauseResume + - kafkaConnectRestart + - kafkaConnectorOffsetsManage + resourceType: + type: string + enum: + - PLATFORM + - CLUSTER + - TOPIC + - CONSUMER_GROUP + - KAFKA_CONNECT + - SUBJECT + - KSQLDB + KSQLDB: + title: KSQLDB + type: object + required: + - cluster + - ksqlDB + - resourceType + properties: + cluster: + type: string + pattern: ^([0-9a-z\-]+|\*)$ + ksqlDB: + type: string + pattern: ^([0-9a-z\-]+|\*)$ + permissions: + type: array + uniqueItems: true + items: + type: string + enum: + - ksqldbAccess + resourceType: + type: string + enum: + - PLATFORM + - CLUSTER + - TOPIC + - CONSUMER_GROUP + - KAFKA_CONNECT + - SUBJECT + - KSQLDB + KafkaClusterApplyResultV2: + title: KafkaClusterApplyResultV2 + type: object + required: + - resource + - upsertResult + properties: + resource: + $ref: '#/components/schemas/KafkaClusterResourceV2' + upsertResult: + $ref: '#/components/schemas/UpsertResult' + KafkaClusterKind: + title: KafkaClusterKind + type: string + enum: + - KafkaCluster + KafkaClusterMetadata: + title: KafkaClusterMetadata + type: object + required: + - name + properties: + name: + type: string + pattern: ^[0-9a-z_\-.]+$ + labels: + $ref: '#/components/schemas/Map_LabelKey_String' + KafkaClusterResourceV2: + title: KafkaClusterResourceV2 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v2 + kind: + $ref: '#/components/schemas/KafkaClusterKind' + metadata: + $ref: '#/components/schemas/KafkaClusterMetadata' + spec: + $ref: '#/components/schemas/KafkaClusterSpec' + KafkaClusterSpec: + title: KafkaClusterSpec + type: object + required: + - displayName + - bootstrapServers + properties: + displayName: + type: string + bootstrapServers: + type: string + properties: + $ref: '#/components/schemas/Map_String' + color: + type: string + icon: + type: string + schemaRegistry: + $ref: '#/components/schemas/SchemaRegistry' + ignoreUntrustedCertificate: + type: boolean + kafkaFlavor: + $ref: '#/components/schemas/KafkaFlavor' + policiesRef: + type: array + uniqueItems: true + items: + type: string + pattern: ^[0-9a-z_\-.]+$ + KafkaConnectAlertOutputV2: + title: KafkaConnectAlertOutputV2 + type: object + required: + - connectName + - connectorName + - metric + - threshold + - operator + - promQl + - type + properties: + connectName: + type: string + connectorName: + type: string + metric: + $ref: '#/components/schemas/KafkaConnectMetricType' + threshold: + type: integer + format: int64 + operator: + $ref: '#/components/schemas/Operator' + promQl: + type: string + description: + type: string + displayName: + type: string + disable: + type: boolean + type: + type: string + const: KafkaConnectAlert + KafkaConnectAlertOutputV3: + title: KafkaConnectAlertOutputV3 + type: object + required: + - cluster + - connectName + - connectorName + - metric + - threshold + - operator + - promQl + - type + properties: + cluster: + type: string + connectName: + type: string + connectorName: + type: string + metric: + $ref: '#/components/schemas/KafkaConnectMetricType' + threshold: + type: integer + format: int64 + operator: + $ref: '#/components/schemas/Operator' + promQl: + type: string + description: + type: string + displayName: + type: string + destination: + $ref: '#/components/schemas/Destination' + disable: + type: boolean + type: + type: string + const: KafkaConnectAlert + KafkaConnectAlertV2: + title: KafkaConnectAlertV2 + type: object + required: + - connectName + - connectorName + - threshold + - operator + - metric + - type + properties: + connectName: + type: string + connectorName: + type: string + threshold: + type: integer + format: int64 + operator: + $ref: '#/components/schemas/Operator' + metric: + $ref: '#/components/schemas/KafkaConnectMetricType' + description: + type: string + displayName: + type: string + disable: + type: boolean + type: + type: string + const: KafkaConnectAlert + KafkaConnectAlertV3: + title: KafkaConnectAlertV3 + type: object + required: + - cluster + - connectName + - connectorName + - threshold + - operator + - metric + - type + properties: + cluster: + type: string + connectName: + type: string + connectorName: + type: string + threshold: + type: integer + format: int64 + operator: + $ref: '#/components/schemas/Operator' + metric: + $ref: '#/components/schemas/KafkaConnectMetricType' + description: + type: string + displayName: + type: string + destination: + $ref: '#/components/schemas/Destination' + disable: + type: boolean + type: + type: string + const: KafkaConnectAlert + KafkaConnectBasicAuth: + title: KafkaConnectBasicAuth + type: object + required: + - username + - password + - type + properties: + username: + type: string + password: + type: string + type: + type: string + const: KafkaConnectBasicAuth + KafkaConnectBearerToken: + title: KafkaConnectBearerToken + type: object + required: + - token + - type + properties: + token: + type: string + type: + type: string + const: KafkaConnectBearerToken + KafkaConnectClusterApplyResultV2: + title: KafkaConnectClusterApplyResultV2 + type: object + required: + - resource + - upsertResult + properties: + resource: + $ref: '#/components/schemas/KafkaConnectClusterResourceV2' + upsertResult: + $ref: '#/components/schemas/UpsertResult' + KafkaConnectClusterKind: + title: KafkaConnectClusterKind + type: string + enum: + - KafkaConnectCluster + KafkaConnectClusterResourceV2: + title: KafkaConnectClusterResourceV2 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v2 + kind: + $ref: '#/components/schemas/KafkaConnectClusterKind' + metadata: + $ref: '#/components/schemas/KafkaConnectMetadata' + spec: + $ref: '#/components/schemas/KafkaConnectSpec' + KafkaConnectMetadata: + title: KafkaConnectMetadata + type: object + required: + - name + - cluster + properties: + name: + type: string + cluster: + type: string + labels: + $ref: '#/components/schemas/Map_LabelKey_String' + KafkaConnectMetricType: + title: KafkaConnectMetricType + type: string + enum: + - FailedTaskCount + KafkaConnectNoSecurity: + title: KafkaConnectNoSecurity + type: object + required: + - type + properties: + type: + type: string + const: KafkaConnectNoSecurity + KafkaConnectSSLAuth: + title: KafkaConnectSSLAuth + type: object + required: + - key + - certificateChain + - type + properties: + key: + type: string + certificateChain: + type: string + type: + type: string + const: KafkaConnectSSLAuth + KafkaConnectSecurity: + title: KafkaConnectSecurity + oneOf: + - $ref: '#/components/schemas/KafkaConnectBasicAuth' + - $ref: '#/components/schemas/KafkaConnectBearerToken' + - $ref: '#/components/schemas/KafkaConnectNoSecurity' + - $ref: '#/components/schemas/KafkaConnectSSLAuth' + discriminator: + propertyName: type + mapping: + KafkaConnectBasicAuth: '#/components/schemas/KafkaConnectBasicAuth' + KafkaConnectBearerToken: '#/components/schemas/KafkaConnectBearerToken' + KafkaConnectNoSecurity: '#/components/schemas/KafkaConnectNoSecurity' + KafkaConnectSSLAuth: '#/components/schemas/KafkaConnectSSLAuth' + KafkaConnectSecurityForCli: + title: KafkaConnectSecurityForCli + oneOf: + - $ref: '#/components/schemas/BasicAuth1' + - $ref: '#/components/schemas/BearerToken1' + - $ref: '#/components/schemas/SSLAuth1' + discriminator: + propertyName: type + mapping: + BasicAuth: '#/components/schemas/BasicAuth1' + BearerToken: '#/components/schemas/BearerToken1' + SSLAuth: '#/components/schemas/SSLAuth1' + KafkaConnectSpec: + title: KafkaConnectSpec + type: object + required: + - displayName + - urls + properties: + displayName: + type: string + urls: + type: string + headers: + $ref: '#/components/schemas/Map_String' + ignoreUntrustedCertificate: + type: boolean + security: + $ref: '#/components/schemas/KafkaConnectSecurityForCli' + policiesRef: + type: array + uniqueItems: true + items: + type: string + pattern: ^[0-9a-z_\-.]+$ + KafkaConnectUpsert: + title: KafkaConnectUpsert + type: object + required: + - url + - name + properties: + url: + type: string + slug: + type: string + name: + type: string + security: + $ref: '#/components/schemas/KafkaConnectSecurity' + headers: + type: string + ignoreUntrustedCertificate: + type: boolean + policiesRef: + type: array + uniqueItems: true + items: + type: string + pattern: ^[0-9a-z_\-.]+$ + KafkaConnectV1: + title: KafkaConnectV1 + type: object + required: + - clusterId + - connectClusterId + - connectorNamePattern + - resourceType + properties: + clusterId: + type: string + pattern: ^([0-9a-z\-]+|\*)$ + connectClusterId: + type: string + connectorNamePattern: + type: string + permissions: + type: array + uniqueItems: true + items: + type: string + enum: + - kafkaConnectorStatus + - kafkaConnectorEditConfig + - kafkaConnectorDelete + - kafkaConnectorCreate + - kafkaConnectorOffsetsView + - kafkaConnectorViewConfig + - kafkaConnectorStop + - kafkaConnectPauseResume + - kafkaConnectRestart + - kafkaConnectorOffsetsManage + resourceType: + type: string + enum: + - Platform + - Cluster + - Topic + - ConsumerGroup + - KafkaConnect + - Subject + - KsqlDB + KafkaConnectWithId: + title: KafkaConnectWithId + type: object + required: + - id + - slug + - url + - name + - security + - ignoreUntrustedCertificate + - labels + properties: + id: + type: string + format: uuid + slug: + type: string + url: + type: string + name: + type: string + security: + $ref: '#/components/schemas/KafkaConnectSecurity' + headers: + type: string + ignoreUntrustedCertificate: + type: boolean + labels: + $ref: '#/components/schemas/Map_LabelKey_String' + policiesRef: + type: array + uniqueItems: true + items: + type: string + pattern: ^[0-9a-z_\-.]+$ + KafkaFlavor: + title: KafkaFlavor + oneOf: + - $ref: '#/components/schemas/Aiven' + - $ref: '#/components/schemas/Confluent' + - $ref: '#/components/schemas/ConfluentPlatform' + - $ref: '#/components/schemas/Gateway' + discriminator: + propertyName: type + mapping: + Aiven: '#/components/schemas/Aiven' + Confluent: '#/components/schemas/Confluent' + ConfluentPlatform: '#/components/schemas/ConfluentPlatform' + Gateway: '#/components/schemas/Gateway' + KafkaFlavorCreateRequest: + title: KafkaFlavorCreateRequest + oneOf: + - $ref: '#/components/schemas/AivenCreate' + - $ref: '#/components/schemas/ConfluentCreate' + - $ref: '#/components/schemas/ConfluentPlatformCreate' + - $ref: '#/components/schemas/GatewayCreate' + discriminator: + propertyName: type + mapping: + Aiven: '#/components/schemas/AivenCreate' + Confluent: '#/components/schemas/ConfluentCreate' + ConfluentPlatform: '#/components/schemas/ConfluentPlatformCreate' + Gateway: '#/components/schemas/GatewayCreate' + KafkaFlavorResponse: + title: KafkaFlavorResponse + oneOf: + - $ref: '#/components/schemas/AivenResponse' + - $ref: '#/components/schemas/ConfluentPlatformResponse' + - $ref: '#/components/schemas/ConfluentResponse' + - $ref: '#/components/schemas/GatewayResponse' + discriminator: + propertyName: type + mapping: + Aiven: '#/components/schemas/AivenResponse' + Confluent: '#/components/schemas/ConfluentResponse' + ConfluentPlatform: '#/components/schemas/ConfluentPlatformResponse' + Gateway: '#/components/schemas/GatewayResponse' + KafkaServiceAccountACL: + title: KafkaServiceAccountACL + type: object + required: + - type + - name + - patternType + properties: + type: + $ref: '#/components/schemas/AclResourceType' + name: + type: string + patternType: + $ref: '#/components/schemas/ResourcePatternType' + connectCluster: + type: string + operations: + type: array + items: + $ref: '#/components/schemas/Operation' + host: + type: string + permission: + $ref: '#/components/schemas/AclPermissionTypeForAccessControlEntry' + KsqlDBBasicAuth: + title: KsqlDBBasicAuth + type: object + required: + - username + - password + - type + properties: + username: + type: string + password: + type: string + type: + type: string + const: KsqlDBBasicAuth + KsqlDBBearerToken: + title: KsqlDBBearerToken + type: object + required: + - token + - type + properties: + token: + type: string + type: + type: string + const: KsqlDBBearerToken + KsqlDBClusterApplyResultV2: + title: KsqlDBClusterApplyResultV2 + type: object + required: + - resource + - upsertResult + properties: + resource: + $ref: '#/components/schemas/KsqlDBClusterResourceV2' + upsertResult: + $ref: '#/components/schemas/UpsertResult' + KsqlDBClusterKind: + title: KsqlDBClusterKind + type: string + enum: + - KsqlDBCluster + KsqlDBClusterResourceV2: + title: KsqlDBClusterResourceV2 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v2 + kind: + $ref: '#/components/schemas/KsqlDBClusterKind' + metadata: + $ref: '#/components/schemas/KsqlDBMetadata' + spec: + $ref: '#/components/schemas/KsqlDBSpec' + KsqlDBMetadata: + title: KsqlDBMetadata + type: object + required: + - name + - cluster + properties: + name: + type: string + cluster: + type: string + KsqlDBNoSecurity: + title: KsqlDBNoSecurity + type: object + required: + - type + properties: + type: + type: string + const: KsqlDBNoSecurity + KsqlDBQuery: + title: KsqlDBQuery + type: object + required: + - ksql + properties: + ksql: + type: string + properties: + $ref: '#/components/schemas/Map_String' + KsqlDBSSLAuth: + title: KsqlDBSSLAuth + type: object + required: + - key + - certificateChain + - type + properties: + key: + type: string + certificateChain: + type: string + type: + type: string + const: KsqlDBSSLAuth + KsqlDBSecurity: + title: KsqlDBSecurity + oneOf: + - $ref: '#/components/schemas/KsqlDBBasicAuth' + - $ref: '#/components/schemas/KsqlDBBearerToken' + - $ref: '#/components/schemas/KsqlDBNoSecurity' + - $ref: '#/components/schemas/KsqlDBSSLAuth' + discriminator: + propertyName: type + mapping: + KsqlDBBasicAuth: '#/components/schemas/KsqlDBBasicAuth' + KsqlDBBearerToken: '#/components/schemas/KsqlDBBearerToken' + KsqlDBNoSecurity: '#/components/schemas/KsqlDBNoSecurity' + KsqlDBSSLAuth: '#/components/schemas/KsqlDBSSLAuth' + KsqlDBSecurityDto: + title: KsqlDBSecurityDto + oneOf: + - $ref: '#/components/schemas/BasicAuth2' + - $ref: '#/components/schemas/BearerToken2' + - $ref: '#/components/schemas/NoSecurity1' + - $ref: '#/components/schemas/SSLAuth2' + discriminator: + propertyName: type + mapping: + BasicAuth: '#/components/schemas/BasicAuth2' + BearerToken: '#/components/schemas/BearerToken2' + NoSecurity: '#/components/schemas/NoSecurity1' + SSLAuth: '#/components/schemas/SSLAuth2' + KsqlDBSpec: + title: KsqlDBSpec + type: object + required: + - displayName + - url + properties: + displayName: + type: string + url: + type: string + headers: + $ref: '#/components/schemas/Map_String' + ignoreUntrustedCertificate: + type: boolean + security: + $ref: '#/components/schemas/KsqlDBSecurityDto' + KsqlDBStatement: + title: KsqlDBStatement + type: object + required: + - ksql + properties: + ksql: + type: string + KsqlDBUpsert: + title: KsqlDBUpsert + type: object + required: + - url + - name + properties: + url: + type: string + slug: + type: string + name: + type: string + security: + $ref: '#/components/schemas/KsqlDBSecurity' + headers: + type: string + ignoreUntrustedCertificate: + type: boolean + KsqlDBV1: + title: KsqlDBV1 + type: object + required: + - clusterId + - ksqlDBServerSlug + - resourceType + properties: + clusterId: + type: string + pattern: ^([0-9a-z\-]+|\*)$ + ksqlDBServerSlug: + type: string + pattern: ^([0-9a-z\-]+|\*)$ + permissions: + type: array + uniqueItems: true + items: + type: string + enum: + - ksqldbAccess + resourceType: + type: string + enum: + - Platform + - Cluster + - Topic + - ConsumerGroup + - KafkaConnect + - Subject + - KsqlDB + KsqlDBWithId: + title: KsqlDBWithId + type: object + required: + - id + - slug + - url + - name + - security + - ignoreUntrustedCertificate + properties: + id: + type: string + format: uuid + slug: + type: string + url: + type: string + name: + type: string + security: + $ref: '#/components/schemas/KsqlDBSecurity' + headers: + type: string + ignoreUntrustedCertificate: + type: boolean + KsqlServerInfo: + title: KsqlServerInfo + type: object + required: + - name + - slug + properties: + name: + type: string + slug: + type: string + version: + type: string + tableCount: + type: integer + format: int32 + streamCount: + type: integer + format: int32 + queryCount: + type: integer + format: int32 + error: + type: string + LDAP: + title: LDAP + type: object + required: + - username + - password + - type + properties: + username: + type: string + password: + type: string + type: + type: string + const: LDAP + LDAP1: + title: LDAP + type: object + required: + - username + - type + properties: + username: + type: string + type: + type: string + const: LDAP + LabelsFilter: + title: LabelsFilter + type: object + required: + - key + - type + properties: + key: + type: string + values: + type: array + items: + type: string + type: + type: string + const: LabelsFilter + LoggerDto: + title: LoggerDto + type: object + required: + - name + - level + properties: + name: + type: string + level: + type: string + Map_Double: + title: Map_Double + type: object + additionalProperties: + type: number + format: double + Map_Int: + title: Map_Int + type: object + additionalProperties: + type: integer + format: int32 + Map_LabelKey_String: + title: Map_LabelKey_String + type: object + additionalProperties: + type: string + Map_PolicyConstraintDto: + title: Map_PolicyConstraintDto + type: object + additionalProperties: + $ref: '#/components/schemas/PolicyConstraintDto' + Map_String: + title: Map_String + type: object + additionalProperties: + type: string + Mark: + title: Mark + type: object + required: + - enabled + properties: + enabled: + type: boolean + Match: + title: Match + type: object + required: + - constraint + - pattern + properties: + constraint: + $ref: '#/components/schemas/ConstraintKind' + optional: + type: boolean + pattern: + type: string + Member: + title: Member + type: object + required: + - id + properties: + id: + type: string + clientId: + type: string + host: + type: string + MemberOfConsumerGroup: + title: MemberOfConsumerGroup + type: object + required: + - id + properties: + id: + type: string + clientId: + type: string + host: + type: string + consumeRateInSeconds: + type: number + format: double + timeLagInSeconds: + type: integer + format: int64 + offsetLag: + type: integer + format: int64 + topics: + type: array + items: + $ref: '#/components/schemas/TopicPartitionOfMember' + MemberOfConsumerGroupStat: + title: MemberOfConsumerGroupStat + type: object + required: + - memberId + - partitionCount + properties: + memberId: + type: string + clientId: + type: string + host: + type: string + partitionCount: + type: integer + format: int32 + consumeRateInSeconds: + type: number + format: double + timeLagInSeconds: + type: integer + format: int64 + offsetLag: + type: integer + format: int64 + NoSecurity: + title: NoSecurity + type: object + required: + - type + properties: + type: + type: string + const: NoSecurity + NoSecurity1: + title: NoSecurity + type: object + required: + - type + properties: + type: + type: string + const: NoSecurity + NoneOf: + title: NoneOf + type: object + required: + - constraint + - values + properties: + constraint: + $ref: '#/components/schemas/ConstraintKind' + optional: + type: boolean + values: + type: array + minItems: 1 + items: + type: string + NotFound: + title: NotFound + type: object + required: + - title + properties: + title: + type: string + msg: + type: string + cause: + type: string + NotIndexedConsumerGroup: + title: NotIndexedConsumerGroup + type: object + required: + - name + - type + properties: + name: + type: string + type: + type: string + const: NotIndexedConsumerGroup + NotIndexedTopic: + title: NotIndexedTopic + type: object + required: + - name + - type + properties: + name: + type: string + type: + type: string + const: NotIndexedTopic + OffsetResetSpecification: + title: OffsetResetSpecification + oneOf: + - $ref: '#/components/schemas/ShiftBy' + - $ref: '#/components/schemas/ToEarliest' + - $ref: '#/components/schemas/ToLatest' + - $ref: '#/components/schemas/ToOffset' + - $ref: '#/components/schemas/ToTimestamp' + OnConsumerGroupName: + title: OnConsumerGroupName + type: object + required: + - contains + - type + properties: + contains: + type: string + type: + type: string + const: OnConsumerGroupName + OnGroupType: + title: OnGroupType + type: object + required: + - type + properties: + oneOf: + type: array + items: + $ref: '#/components/schemas/GroupType' + type: + type: string + const: OnGroupType + OnLabels: + title: OnLabels + type: object + required: + - key + - type + properties: + key: + type: string + values: + type: array + items: + type: string + type: + type: string + const: OnLabels + OnState: + title: OnState + type: object + required: + - type + properties: + oneOf: + type: array + items: + $ref: '#/components/schemas/ConsumerGroupState' + type: + type: string + const: OnState + OneOf: + title: OneOf + type: object + required: + - constraint + - values + properties: + constraint: + $ref: '#/components/schemas/ConstraintKind' + optional: + type: boolean + values: + type: array + minItems: 1 + items: + type: string + Operation: + title: Operation + type: string + enum: + - All + - Alter + - AlterConfigs + - ClusterAction + - Create + - CreateTokens + - Delete + - Describe + - DescribeConfigs + - DescribeTokens + - IdempotentWrite + - Read + - Unknown + - Write + OperationStates: + title: OperationStates + type: object + properties: + Unknown: + $ref: '#/components/schemas/AclPermissionTypeForAccessControlEntry' + All: + $ref: '#/components/schemas/AclPermissionTypeForAccessControlEntry' + Read: + $ref: '#/components/schemas/AclPermissionTypeForAccessControlEntry' + Write: + $ref: '#/components/schemas/AclPermissionTypeForAccessControlEntry' + Create: + $ref: '#/components/schemas/AclPermissionTypeForAccessControlEntry' + Delete: + $ref: '#/components/schemas/AclPermissionTypeForAccessControlEntry' + Alter: + $ref: '#/components/schemas/AclPermissionTypeForAccessControlEntry' + Describe: + $ref: '#/components/schemas/AclPermissionTypeForAccessControlEntry' + ClusterAction: + $ref: '#/components/schemas/AclPermissionTypeForAccessControlEntry' + DescribeConfigs: + $ref: '#/components/schemas/AclPermissionTypeForAccessControlEntry' + AlterConfigs: + $ref: '#/components/schemas/AclPermissionTypeForAccessControlEntry' + IdempotentWrite: + $ref: '#/components/schemas/AclPermissionTypeForAccessControlEntry' + CreateTokens: + $ref: '#/components/schemas/AclPermissionTypeForAccessControlEntry' + DescribeTokens: + $ref: '#/components/schemas/AclPermissionTypeForAccessControlEntry' + additionalProperties: + $ref: '#/components/schemas/AclPermissionTypeForAccessControlEntry' + Operator: + title: Operator + type: string + enum: + - GreaterThan + - GreaterThanOrEqual + - LessThan + - LessThanOrEqual + - NotEqual + OptionalResourcePermission: + title: OptionalResourcePermission + type: string + enum: + - NONE + - READ + - WRITE + Ord: + title: Ord + type: string + enum: + - asc + - desc + OutputApplicationSpec: + title: OutputApplicationSpec + type: object + required: + - title + - owner + - createdAt + properties: + title: + type: string + description: + type: string + owner: + type: string + policyRef: + type: array + uniqueItems: true + items: + type: string + pattern: ^[0-9a-z_\-.]+$ + createdAt: + type: string + format: date-time + OwnershipMode: + title: OwnershipMode + type: string + enum: + - ALL + - LIMITED + PLATFORM: + title: PLATFORM + type: object + required: + - resourceType + properties: + permissions: + type: array + uniqueItems: true + items: + type: string + enum: + - taasView + - certificateManage + - userManage + - clusterConnectionsManage + - notificationChannelManage + - datamaskingView + - sqlManage + - userView + - datamaskingManage + - auditLogView + - chargebackManage + - chargebackView + - notificationChannelView + resourceType: + type: string + enum: + - PLATFORM + - CLUSTER + - TOPIC + - CONSUMER_GROUP + - KAFKA_CONNECT + - SUBJECT + - KSQLDB + Page_ConsumerGroupResponse: + title: Page_ConsumerGroupResponse + type: object + required: + - page + - totalPages + - perPage + - totalElements + properties: + data: + type: array + items: + $ref: '#/components/schemas/ConsumerGroupResponse' + page: + type: integer + format: int32 + totalPages: + type: integer + format: int32 + perPage: + type: integer + format: int32 + totalElements: + type: integer + format: int64 + Page_Resource: + title: Page_Resource + type: object + required: + - page + - totalPages + - perPage + - totalElements + properties: + data: + type: array + items: + $ref: '#/components/schemas/Resource_TopicMetadata_TopicSpec_String_V2' + page: + type: integer + format: int32 + totalPages: + type: integer + format: int32 + perPage: + type: integer + format: int32 + totalElements: + type: integer + format: int64 + Page_TopicResponse: + title: Page_TopicResponse + type: object + required: + - page + - totalPages + - perPage + - totalElements + properties: + data: + type: array + items: + $ref: '#/components/schemas/TopicResponse' + page: + type: integer + format: int32 + totalPages: + type: integer + format: int32 + perPage: + type: integer + format: int32 + totalElements: + type: integer + format: int64 + PartitionOfConsumerGroupStats: + title: PartitionOfConsumerGroupStats + type: object + required: + - partition + properties: + partition: + type: integer + format: int32 + member: + $ref: '#/components/schemas/Member' + consumeRateInSeconds: + type: number + format: double + timeLagInSeconds: + type: integer + format: int64 + offsetLag: + type: integer + format: int64 + endOffset: + type: integer + format: int64 + committedOffset: + type: integer + format: int64 + Partner: + title: Partner + type: object + required: + - name + properties: + name: + type: string + role: + type: string + email: + type: string + phone: + type: string + PartnerZoneApplyResultV2: + title: PartnerZoneApplyResultV2 + type: object + required: + - resource + - upsertResult + properties: + resource: + $ref: '#/components/schemas/PartnerZoneResourceV2' + upsertResult: + $ref: '#/components/schemas/UpsertResult' + PartnerZoneAuthenticationType: + title: PartnerZoneAuthenticationType + type: string + enum: + - MTLS + - OAUTHBEARER + - PLAIN + PartnerZoneKind: + title: PartnerZoneKind + type: string + enum: + - PartnerZone + PartnerZoneMetadata: + title: PartnerZoneMetadata + type: object + required: + - name + properties: + name: + type: string + pattern: ^[0-9a-z_\-.]+$ + labels: + $ref: '#/components/schemas/Map_LabelKey_String' + PartnerZoneMetadataOutput: + title: PartnerZoneMetadataOutput + type: object + required: + - name + - id + - updatedAt + - status + properties: + name: + type: string + pattern: ^[0-9a-z_\-.]+$ + id: + type: string + format: uuid + updatedAt: + type: string + format: date-time + status: + $ref: '#/components/schemas/PartnerZoneStatus' + failedReason: + type: string + labels: + $ref: '#/components/schemas/Map_LabelKey_String' + PartnerZoneOutputResourceV2: + title: PartnerZoneOutputResourceV2 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v2 + kind: + $ref: '#/components/schemas/PartnerZoneKind' + metadata: + $ref: '#/components/schemas/PartnerZoneMetadataOutput' + spec: + $ref: '#/components/schemas/PartnerZoneSpec' + PartnerZoneResourceV2: + title: PartnerZoneResourceV2 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v2 + kind: + $ref: '#/components/schemas/PartnerZoneKind' + metadata: + $ref: '#/components/schemas/PartnerZoneMetadata' + spec: + $ref: '#/components/schemas/PartnerZoneSpec' + PartnerZoneSpec: + title: PartnerZoneSpec + type: object + required: + - cluster + - authenticationMode + properties: + cluster: + description: The gateway cluster to use for this Partner Zone + type: string + underlyingCluster: + description: The underlying cluster behind gateway to use for this Partner + Zone. If not provided, defaults to the value of the `cluster` field + type: string + displayName: + type: string + description: + type: string + url: + type: string + authenticationMode: + $ref: '#/components/schemas/AuthenticationMode' + topics: + type: array + items: + $ref: '#/components/schemas/PartnerZoneTopic' + partner: + $ref: '#/components/schemas/Partner' + trafficControlPolicies: + $ref: '#/components/schemas/TrafficControlPolicies' + headers: + $ref: '#/components/schemas/Headers' + vclusterName: + description: Custom virtual cluster name. If not provided, it will be auto-generated + type: string + skipInterceptorReconciliation: + description: When enabled, interceptors are created once during partner + zone creation but skipped on subsequent reconciliations. Use with caution + as enabling this flag could lead to issues with upgrading to future versions + of Console + deprecated: true + type: boolean + PartnerZoneStatus: + title: PartnerZoneStatus + type: string + enum: + - DELETED + - FAILED + - PENDING_CREATE + - PENDING_UPDATE + - READY + - TO_DELETE + PartnerZoneTopic: + title: PartnerZoneTopic + type: object + required: + - name + - backingTopic + - permission + properties: + name: + type: string + backingTopic: + type: string + permission: + $ref: '#/components/schemas/PartnerZoneTopicPermission' + PartnerZoneTopicPermission: + title: PartnerZoneTopicPermission + type: string + enum: + - READ + - WRITE + PatternType: + title: PatternType + type: string + enum: + - LITERAL + - PREFIXED + PatternTypeForResourcePattern: + title: PatternTypeForResourcePattern + type: string + enum: + - Literal + - Prefixed + PersonalAccessToken: + title: PersonalAccessToken + type: object + required: + - id + - email + - name + - createdAt + properties: + id: + type: string + format: uuid + email: + type: string + name: + type: string + createdAt: + type: string + format: date-time + createdBy: + type: string + PlatformV1: + title: PlatformV1 + type: object + required: + - resourceType + properties: + permissions: + type: array + uniqueItems: true + items: + type: string + enum: + - taasView + - certificateManage + - userManage + - clusterConnectionsManage + - notificationChannelManage + - datamaskingView + - sqlManage + - userView + - datamaskingManage + - auditLogView + - chargebackManage + - chargebackView + - notificationChannelView + resourceType: + type: string + enum: + - Platform + - Cluster + - Topic + - ConsumerGroup + - KafkaConnect + - Subject + - KsqlDB + Plugin: + title: Plugin + type: object + required: + - plugin + - pluginId + - tags + properties: + plugin: + type: string + pluginId: + type: string + tags: + $ref: '#/components/schemas/Map_String' + PluginWithReadme: + title: PluginWithReadme + type: object + required: + - plugin + - pluginId + - tags + - readme + properties: + plugin: + type: string + pluginId: + type: string + tags: + $ref: '#/components/schemas/Map_String' + readme: + type: string + PolicyConstraintDto: + title: PolicyConstraintDto + oneOf: + - $ref: '#/components/schemas/AllowedKeys' + - $ref: '#/components/schemas/Match' + - $ref: '#/components/schemas/NoneOf' + - $ref: '#/components/schemas/OneOf' + - $ref: '#/components/schemas/Range' + discriminator: + propertyName: constraint + mapping: + AllowedKeys: '#/components/schemas/AllowedKeys' + Match: '#/components/schemas/Match' + NoneOf: '#/components/schemas/NoneOf' + OneOf: '#/components/schemas/OneOf' + Range: '#/components/schemas/Range' + PolicyKind: + title: PolicyKind + type: string + enum: + - ApplicationGroup + - Connector + - Subject + - Topic + PublicCreateGroupRequest: + title: PublicCreateGroupRequest + type: object + required: + - name + - groupId + properties: + name: + type: string + description: + type: string + groupId: + type: string + pattern: ^[0-9a-z\_-]+$ + externalGroups: + type: array + items: + type: string + externalGroupRegex: + type: array + uniqueItems: true + items: + type: string + PublicGroupOfUser: + title: PublicGroupOfUser + type: object + required: + - name + - groupId + properties: + name: + type: string + groupId: + type: string + pattern: ^[0-9a-z\_-]+$ + PublicGroupResponse: + title: PublicGroupResponse + type: object + required: + - groupId + - name + - isAdmin + properties: + groupId: + type: string + pattern: ^[0-9a-z\_-]+$ + name: + type: string + description: + type: string + users: + type: array + items: + $ref: '#/components/schemas/PublicUserOfGroup' + externalGroups: + type: array + items: + type: string + externalGroupRegex: + type: array + uniqueItems: true + items: + type: string + isAdmin: + type: boolean + PublicKafkaClusterResponse: + title: PublicKafkaClusterResponse + type: object + required: + - clusterSlug + - name + - bootstrapServers + - ignoreUntrustedCertificate + - createdAt + - updatedAt + properties: + clusterSlug: + type: string + name: + type: string + bootstrapServers: + type: string + properties: + type: string + color: + type: string + icon: + type: string + schemaRegistry: + $ref: '#/components/schemas/SharedSchemaRegistryResponseV2' + kafkaConnects: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/KafkaConnectWithId' + ignoreUntrustedCertificate: + type: boolean + accessCert: + description: set it directly in kafka property, a call to API v2 will erase + them + deprecated: true + type: string + accessKey: + description: set it directly in kafka property, a call to API v2 will erase + them + deprecated: true + type: string + createdAt: + type: string + format: date-time + updatedAt: + type: string + format: date-time + amazonSecurity: + $ref: '#/components/schemas/AmazonSecurity' + description: set it directly in kafka property, a call to API v2 will erase + them + deprecated: true + kafkaFlavor: + $ref: '#/components/schemas/KafkaFlavorResponse' + ksqlDBs: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/KsqlDBWithId' + PublicUserOfGroup: + title: PublicUserOfGroup + type: object + required: + - email + - externalMapping + properties: + email: + type: string + externalMapping: + type: boolean + PublicWithAllDetailsAndGroup: + title: PublicWithAllDetailsAndGroup + type: object + required: + - userId + - fullName + properties: + userId: + type: string + firstName: + type: string + lastName: + type: string + fullName: + type: string + pictureUrl: + type: string + phoneNumber: + type: string + country: + type: string + platformRole: + type: string + groups: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/PublicGroupOfUser' + lastLoginDate: + type: string + format: date-time + Query: + title: Query + type: object + required: + - queryString + - id + - statusCount + - queryType + - state + properties: + queryString: + type: string + sinks: + type: array + items: + type: string + sinkKafkaTopics: + type: array + items: + type: string + id: + type: string + statusCount: + $ref: '#/components/schemas/Map_Int' + queryType: + type: string + state: + type: string + Range: + title: Range + type: object + required: + - constraint + - min + - max + properties: + constraint: + $ref: '#/components/schemas/ConstraintKind' + optional: + type: boolean + min: + type: integer + format: int64 + max: + type: integer + format: int64 + ResetOffsetPreviewResult: + title: ResetOffsetPreviewResult + type: object + required: + - topicName + - partition + - newOffset + properties: + topicName: + type: string + partition: + type: integer + format: int32 + newOffset: + type: integer + format: int64 + ResetOffsetRequest: + title: ResetOffsetRequest + type: object + required: + - topicPartitionSelection + - resetSpecification + properties: + topicPartitionSelection: + $ref: '#/components/schemas/TopicPartitionSelection' + resetSpecification: + $ref: '#/components/schemas/OffsetResetSpecification' + Resource: + title: Resource + type: object + required: + - type + - name + - patternType + properties: + type: + $ref: '#/components/schemas/ResourceType' + name: + type: string + patternType: + $ref: '#/components/schemas/ResourcePatternType' + connectCluster: + type: string + ResourcePattern: + title: ResourcePattern + type: object + required: + - resourceType + - name + - patternType + properties: + resourceType: + $ref: '#/components/schemas/ResourceTypeForResourcePattern' + name: + type: string + patternType: + $ref: '#/components/schemas/PatternTypeForResourcePattern' + ResourcePatternType: + title: ResourcePatternType + type: string + enum: + - LITERAL + - PREFIXED + ResourcePermission: + title: ResourcePermission + type: string + enum: + - READ + - WRITE + ResourcePermissions: + title: ResourcePermissions + oneOf: + - $ref: '#/components/schemas/ClusterV1' + - $ref: '#/components/schemas/ConsumerGroupV1' + - $ref: '#/components/schemas/KafkaConnectV1' + - $ref: '#/components/schemas/KsqlDBV1' + - $ref: '#/components/schemas/PlatformV1' + - $ref: '#/components/schemas/SubjectV1' + - $ref: '#/components/schemas/TopicV1' + discriminator: + propertyName: resourceType + mapping: + Cluster: '#/components/schemas/ClusterV1' + ConsumerGroup: '#/components/schemas/ConsumerGroupV1' + KafkaConnect: '#/components/schemas/KafkaConnectV1' + KsqlDB: '#/components/schemas/KsqlDBV1' + Platform: '#/components/schemas/PlatformV1' + Subject: '#/components/schemas/SubjectV1' + Topic: '#/components/schemas/TopicV1' + ResourcePermissions1: + title: ResourcePermissions + oneOf: + - $ref: '#/components/schemas/CLUSTER' + - $ref: '#/components/schemas/CONSUMER_GROUP1' + - $ref: '#/components/schemas/KAFKA_CONNECT' + - $ref: '#/components/schemas/KSQLDB' + - $ref: '#/components/schemas/PLATFORM' + - $ref: '#/components/schemas/SUBJECT1' + - $ref: '#/components/schemas/TOPIC1' + discriminator: + propertyName: resourceType + ResourcePermissionsByGroupId: + title: ResourcePermissionsByGroupId + type: object + additionalProperties: + type: array + items: + $ref: '#/components/schemas/ResourcePermissions' + ResourcePolicyApplyResultV1: + title: ResourcePolicyApplyResultV1 + type: object + required: + - resource + - upsertResult + properties: + resource: + $ref: '#/components/schemas/ResourcePolicyResourceV1' + upsertResult: + $ref: '#/components/schemas/UpsertResult' + ResourcePolicyKind: + title: ResourcePolicyKind + type: string + enum: + - ResourcePolicy + ResourcePolicyMetadata: + title: ResourcePolicyMetadata + type: object + required: + - name + properties: + name: + type: string + pattern: ^[0-9a-z_\-.]+$ + labels: + $ref: '#/components/schemas/Map_LabelKey_String' + ResourcePolicyResourceV1: + title: ResourcePolicyResourceV1 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v1 + kind: + $ref: '#/components/schemas/ResourcePolicyKind' + metadata: + $ref: '#/components/schemas/ResourcePolicyMetadata' + spec: + $ref: '#/components/schemas/ResourcePolicySpec' + ResourcePolicySpec: + title: ResourcePolicySpec + type: object + required: + - targetKind + properties: + targetKind: + $ref: '#/components/schemas/PolicyKind' + description: + type: string + rules: + type: array + items: + $ref: '#/components/schemas/CelRule' + ResourceType: + title: ResourceType + type: string + enum: + - TOPIC + - CONSUMER_GROUP + - SUBJECT + - CONNECTOR + - TRANSACTIONAL_ID + ResourceTypeForResourcePattern: + title: ResourceTypeForResourcePattern + type: string + enum: + - Unknown + - Topic + - Group + - Cluster + - TransactionalId + - DelegationToken + - User + ResourceWithOwnership: + title: ResourceWithOwnership + type: object + required: + - type + - name + - patternType + properties: + type: + $ref: '#/components/schemas/ResourceType' + name: + type: string + patternType: + $ref: '#/components/schemas/ResourcePatternType' + connectCluster: + type: string + ownershipMode: + $ref: '#/components/schemas/OwnershipMode' + Resource_TopicMetadata_TopicSpec_String_V2: + title: Resource_TopicMetadata_TopicSpec_String_V2 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v2 + kind: + type: string + metadata: + $ref: '#/components/schemas/TopicMetadata' + spec: + $ref: '#/components/schemas/TopicSpec' + SSLAuth: + title: SSLAuth + type: object + required: + - key + - certificateChain + - type + properties: + key: + type: string + certificateChain: + type: string + type: + type: string + const: SSLAuth + SSLAuth1: + title: SSLAuth + type: object + required: + - key + - certificateChain + - type + properties: + key: + type: string + certificateChain: + type: string + type: + type: string + const: SSLAuth + SSLAuth2: + title: SSLAuth + type: object + required: + - key + - certificateChain + - type + properties: + key: + type: string + certificateChain: + type: string + type: + type: string + const: SSLAuth + SUBJECT: + title: SUBJECT + type: object + required: + - appInstance + - patternType + - name + - resourceType + properties: + appInstance: + type: string + pattern: ^[0-9a-z_\-.]+$ + patternType: + $ref: '#/components/schemas/PatternType' + name: + type: string + permissions: + type: array + uniqueItems: true + items: + type: string + enum: + - subjectCreateUpdate + - subjectEditCompatibility + - subjectDelete + - subjectView + resourceType: + type: string + const: SUBJECT + SUBJECT1: + title: SUBJECT + type: object + required: + - cluster + - name + - patternType + - resourceType + properties: + cluster: + type: string + pattern: ^([0-9a-z\-]+|\*)$ + name: + type: string + patternType: + $ref: '#/components/schemas/PatternType' + permissions: + type: array + uniqueItems: true + items: + type: string + enum: + - subjectCreateUpdate + - subjectEditCompatibility + - subjectDelete + - subjectView + resourceType: + type: string + enum: + - PLATFORM + - CLUSTER + - TOPIC + - CONSUMER_GROUP + - KAFKA_CONNECT + - SUBJECT + - KSQLDB + SchemaCompatibility: + title: SchemaCompatibility + type: string + enum: + - BACKWARD + - BACKWARD_TRANSITIVE + - FORWARD + - FORWARD_TRANSITIVE + - FULL + - FULL_TRANSITIVE + - NONE + SchemaFormat: + title: SchemaFormat + type: string + enum: + - AVRO + - JSON + - PROTOBUF + SchemaReference: + title: SchemaReference + type: object + required: + - name + - subject + - version + properties: + name: + type: string + subject: + type: string + version: + type: integer + format: int32 + SchemaRegistry: + title: SchemaRegistry + oneOf: + - $ref: '#/components/schemas/ConfluentLike' + - $ref: '#/components/schemas/Glue' + discriminator: + propertyName: type + mapping: + ConfluentLike: '#/components/schemas/ConfluentLike' + Glue: '#/components/schemas/Glue' + SchemaRegistryAcl: + title: SchemaRegistryAcl + type: object + required: + - name + - patternType + properties: + name: + type: string + patternType: + $ref: '#/components/schemas/ResourcePatternType' + operations: + type: array + items: + $ref: '#/components/schemas/SchemaRegistryOperation' + SchemaRegistryAuthorization: + title: SchemaRegistryAuthorization + description: Schema Registry ACLs for this service account. Only available when + Conduktor Schema Registry Proxy is configured on the cluster. + type: object + properties: + acls: + type: array + items: + $ref: '#/components/schemas/SchemaRegistryAcl' + SchemaRegistryOperation: + title: SchemaRegistryOperation + type: string + enum: + - Read + - Write + SchemaRegistryRequest: + title: SchemaRegistryRequest + oneOf: + - $ref: '#/components/schemas/ConfluentLikeSchemaRegistryRequest' + - $ref: '#/components/schemas/GlueSchemaRegistryRequest' + discriminator: + propertyName: type + mapping: + ConfluentLikeSchemaRegistryRequest: '#/components/schemas/ConfluentLikeSchemaRegistryRequest' + GlueSchemaRegistryRequest: '#/components/schemas/GlueSchemaRegistryRequest' + ServerError: + title: ServerError + type: object + required: + - title + properties: + title: + type: string + msg: + type: string + cause: + type: string + ServiceAccount: + title: ServiceAccount + type: object + required: + - resourceId + - internalId + - serviceName + - description + properties: + resourceId: + type: string + internalId: + type: integer + format: int32 + serviceName: + type: string + description: + type: string + ServiceAccountApplyResultV1: + title: ServiceAccountApplyResultV1 + type: object + required: + - resource + - upsertResult + properties: + resource: + $ref: '#/components/schemas/ServiceAccountResourceV1' + upsertResult: + $ref: '#/components/schemas/UpsertResult' + ServiceAccountAuthorization: + title: ServiceAccountAuthorization + oneOf: + - $ref: '#/components/schemas/AIVEN_ACL' + - $ref: '#/components/schemas/KAFKA_ACL' + discriminator: + propertyName: type + mapping: + AIVEN_ACL: '#/components/schemas/AIVEN_ACL' + KAFKA_ACL: '#/components/schemas/KAFKA_ACL' + ServiceAccountKind: + title: ServiceAccountKind + type: string + enum: + - ServiceAccount + ServiceAccountMetadata: + title: ServiceAccountMetadata + type: object + required: + - cluster + - name + properties: + appInstance: + type: string + pattern: ^[0-9a-z_\-.]+$ + cluster: + type: string + labels: + $ref: '#/components/schemas/Map_LabelKey_String' + name: + type: string + ServiceAccountResourceV1: + title: ServiceAccountResourceV1 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v1 + kind: + $ref: '#/components/schemas/ServiceAccountKind' + metadata: + $ref: '#/components/schemas/ServiceAccountMetadata' + spec: + $ref: '#/components/schemas/ServiceAccountSpec' + ServiceAccountSpec: + title: ServiceAccountSpec + type: object + required: + - authorization + properties: + authorization: + $ref: '#/components/schemas/ServiceAccountAuthorization' + schemaRegistryAuthorization: + $ref: '#/components/schemas/SchemaRegistryAuthorization' + SharedSchemaRegistryResponseV2: + title: SharedSchemaRegistryResponseV2 + oneOf: + - $ref: '#/components/schemas/ConfluentLikeSchemaRegistryResponse' + - $ref: '#/components/schemas/GlueSchemaRegistryResponse' + discriminator: + propertyName: type + mapping: + ConfluentLikeSchemaRegistryResponse: '#/components/schemas/ConfluentLikeSchemaRegistryResponse' + GlueSchemaRegistryResponse: '#/components/schemas/GlueSchemaRegistryResponse' + ShiftBy: + title: ShiftBy + type: object + required: + - n + properties: + n: + type: integer + format: int64 + SinglePartition: + title: SinglePartition + type: object + required: + - topic + - partition + properties: + topic: + type: string + partition: + type: integer + format: int32 + SingleTopic: + title: SingleTopic + type: object + required: + - topic + properties: + topic: + type: string + Slack: + title: Slack + type: object + required: + - token + properties: + token: + type: string + Slack1: + title: Slack + type: object + required: + - channel + - type + properties: + channel: + type: string + type: + type: string + const: Slack + SourceDescription: + title: SourceDescription + type: object + required: + - name + - topic + - type + - keyFormat + - valueFormat + - statement + - statistics + - readQueriesCount + - writeQueriesCount + properties: + name: + type: string + windowType: + type: string + topic: + type: string + type: + type: string + keyFormat: + type: string + valueFormat: + type: string + sourceConstraints: + type: array + items: + type: string + statement: + type: string + statistics: + $ref: '#/components/schemas/Map_Double' + readQueriesCount: + type: integer + format: int32 + writeQueriesCount: + type: integer + format: int32 + fields: + type: array + items: + $ref: '#/components/schemas/Field' + SqlResultApiResponse: + title: SqlResultApiResponse + type: object + properties: + header: + type: array + items: + type: string + row: + type: array + items: + type: array + items: {} + Status: + title: Status + type: string + enum: + - Failed + - Pending + - Ready + SubjectApplyResultV2: + title: SubjectApplyResultV2 + type: object + required: + - resource + - upsertResult + properties: + resource: + $ref: '#/components/schemas/SubjectResourceV2' + upsertResult: + $ref: '#/components/schemas/UpsertResult' + SubjectCreateResultV2: + title: SubjectCreateResultV2 + type: object + required: + - resource + - createResult + properties: + resource: + $ref: '#/components/schemas/SubjectResourceV2' + createResult: + $ref: '#/components/schemas/CreateResult' + SubjectKind: + title: SubjectKind + type: string + enum: + - Subject + SubjectMetadata: + title: SubjectMetadata + type: object + required: + - name + - cluster + properties: + name: + type: string + cluster: + type: string + labels: + $ref: '#/components/schemas/Map_LabelKey_String' + SubjectResourceV2: + title: SubjectResourceV2 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v2 + kind: + $ref: '#/components/schemas/SubjectKind' + metadata: + $ref: '#/components/schemas/SubjectMetadata' + spec: + $ref: '#/components/schemas/SubjectSpec' + SubjectSpec: + title: SubjectSpec + type: object + required: + - format + - schema + properties: + format: + $ref: '#/components/schemas/SchemaFormat' + compatibility: + $ref: '#/components/schemas/SchemaCompatibility' + schema: + type: string + id: + type: integer + format: int32 + version: + type: integer + format: int32 + references: + type: array + items: + $ref: '#/components/schemas/SchemaReference' + SubjectV1: + title: SubjectV1 + type: object + required: + - clusterId + - subjectPattern + - resourceType + properties: + clusterId: + type: string + pattern: ^([0-9a-z\-]+|\*)$ + subjectPattern: + type: string + permissions: + type: array + uniqueItems: true + items: + type: string + enum: + - subjectCreateUpdate + - subjectEditCompatibility + - subjectDelete + - subjectView + resourceType: + type: string + enum: + - Platform + - Cluster + - Topic + - ConsumerGroup + - KafkaConnect + - Subject + - KsqlDB + TOPIC: + title: TOPIC + type: object + required: + - appInstance + - patternType + - name + - resourceType + properties: + appInstance: + type: string + pattern: ^[0-9a-z_\-.]+$ + patternType: + $ref: '#/components/schemas/PatternType' + name: + type: string + permissions: + type: array + uniqueItems: true + items: + type: string + enum: + - topicViewConfig + - topicEmpty + - topicConsume + - topicProduce + - topicEditConfig + - topicAddPartition + - topicDelete + - topicDataQualityManage + - topicCreate + resourceType: + type: string + const: TOPIC + TOPIC1: + title: TOPIC + type: object + required: + - cluster + - name + - patternType + - resourceType + properties: + cluster: + type: string + pattern: ^([0-9a-z\-]+|\*)$ + name: + type: string + patternType: + $ref: '#/components/schemas/PatternType' + permissions: + type: array + uniqueItems: true + items: + type: string + enum: + - topicViewConfig + - topicEmpty + - topicConsume + - topicProduce + - topicEditConfig + - topicAddPartition + - topicDelete + - topicDataQualityManage + - topicCreate + resourceType: + type: string + enum: + - PLATFORM + - CLUSTER + - TOPIC + - CONSUMER_GROUP + - KAFKA_CONNECT + - SUBJECT + - KSQLDB + Table: + title: Table + type: object + required: + - name + - topic + - keyFormat + - valueFormat + - reads + - writes + - isWindowed + properties: + name: + type: string + topic: + type: string + keyFormat: + type: string + valueFormat: + type: string + reads: + type: integer + format: int32 + writes: + type: integer + format: int32 + isWindowed: + type: boolean + TagInfo: + title: TagInfo + type: object + required: + - id + - name + - color + properties: + id: + type: string + format: uuid + name: + type: string + color: + type: string + TagsFilter: + title: TagsFilter + type: object + required: + - type + properties: + atLeast: + type: array + items: + type: string + type: + type: string + const: TagsFilter + Target: + title: Target + type: object + required: + - cluster + - topic + - patternType + properties: + cluster: + type: string + topic: + type: string + patternType: + $ref: '#/components/schemas/PatternType' + Teams: + title: Teams + type: object + required: + - url + - type + properties: + url: + type: string + type: + type: string + const: Teams + TlsStatus: + title: TlsStatus + type: string + enum: + - checked_certificate + - unchecked_certificate + - tls_not_supported + - unreachable_target + - unexpected_status + TlsTestRequest: + title: TlsTestRequest + type: object + required: + - host + - port + properties: + host: + type: string + port: + type: integer + format: int32 + TlsTestResponse: + title: TlsTestResponse + type: object + required: + - status + properties: + status: + $ref: '#/components/schemas/TlsStatus' + ToAdd: + title: ToAdd + type: object + required: + - key + - value + - overrideIfExists + properties: + key: + type: string + value: + type: string + overrideIfExists: + type: boolean + ToEarliest: + title: ToEarliest + type: object + ToLatest: + title: ToLatest + type: object + ToOffset: + title: ToOffset + type: object + required: + - offset + properties: + offset: + type: integer + format: int64 + ToRemove: + title: ToRemove + type: object + required: + - keyRegex + properties: + keyRegex: + description: Must be a valid java regular expression + type: string + ToTimestamp: + title: ToTimestamp + type: object + required: + - timestamp + properties: + timestamp: + type: integer + format: int64 + TokenCreatedResponse: + title: TokenCreatedResponse + type: object + required: + - id + - name + - token + - createdAt + properties: + id: + type: string + format: uuid + name: + type: string + token: + type: string + createdAt: + type: string + format: date-time + TokenInfo: + title: TokenInfo + oneOf: + - $ref: '#/components/schemas/AdminToken' + - $ref: '#/components/schemas/ApplicationInstanceToken' + - $ref: '#/components/schemas/PersonalAccessToken' + - $ref: '#/components/schemas/UserToken' + TokenResponse: + title: TokenResponse + type: object + required: + - id + - name + - createdAt + properties: + id: + type: string + format: uuid + name: + type: string + createdAt: + type: string + format: date-time + createdBy: + type: integer + format: int32 + lastTimeUsed: + type: string + format: date-time + TooManyRequest: + title: TooManyRequest + type: object + required: + - title + properties: + title: + type: string + msg: + type: string + cause: + type: string + TopicAlertOutputV2: + title: TopicAlertOutputV2 + type: object + required: + - topicName + - threshold + - operator + - metric + - promQl + - type + properties: + topicName: + type: string + threshold: + type: integer + format: int64 + operator: + $ref: '#/components/schemas/Operator' + metric: + $ref: '#/components/schemas/TopicMetricType' + promQl: + type: string + description: + type: string + displayName: + type: string + disable: + type: boolean + type: + type: string + const: TopicAlert + TopicAlertOutputV3: + title: TopicAlertOutputV3 + type: object + required: + - cluster + - topicName + - threshold + - operator + - metric + - promQl + - type + properties: + cluster: + type: string + topicName: + type: string + threshold: + type: integer + format: int64 + operator: + $ref: '#/components/schemas/Operator' + metric: + $ref: '#/components/schemas/TopicMetricType' + promQl: + type: string + description: + type: string + displayName: + type: string + destination: + $ref: '#/components/schemas/Destination' + disable: + type: boolean + type: + type: string + const: TopicAlert + TopicAlertV2: + title: TopicAlertV2 + type: object + required: + - topicName + - threshold + - operator + - metric + - type + properties: + topicName: + type: string + threshold: + type: integer + format: int64 + operator: + $ref: '#/components/schemas/Operator' + metric: + $ref: '#/components/schemas/TopicMetricType' + description: + type: string + displayName: + type: string + disable: + type: boolean + type: + type: string + const: TopicAlert + TopicAlertV3: + title: TopicAlertV3 + type: object + required: + - cluster + - topicName + - threshold + - operator + - metric + - type + properties: + cluster: + type: string + topicName: + type: string + threshold: + type: integer + format: int64 + operator: + $ref: '#/components/schemas/Operator' + metric: + $ref: '#/components/schemas/TopicMetricType' + description: + type: string + displayName: + type: string + destination: + $ref: '#/components/schemas/Destination' + disable: + type: boolean + type: + type: string + const: TopicAlert + TopicApplyResultV2: + title: TopicApplyResultV2 + type: object + required: + - resource + - upsertResult + properties: + resource: + $ref: '#/components/schemas/TopicResourceV2' + upsertResult: + $ref: '#/components/schemas/UpsertResult' + TopicConfigMap: + title: TopicConfigMap + type: object + additionalProperties: + type: string + TopicCreateResultV2: + title: TopicCreateResultV2 + type: object + required: + - resource + - createResult + properties: + resource: + $ref: '#/components/schemas/TopicResourceV2' + createResult: + $ref: '#/components/schemas/CreateResult' + TopicKind: + title: TopicKind + type: string + enum: + - Topic + TopicListFilter: + title: TopicListFilter + oneOf: + - $ref: '#/components/schemas/CleanupPolicyFilter' + - $ref: '#/components/schemas/HideInternal' + - $ref: '#/components/schemas/HideStream' + - $ref: '#/components/schemas/LabelsFilter' + - $ref: '#/components/schemas/TagsFilter' + - $ref: '#/components/schemas/TopicNameFilter' + discriminator: + propertyName: type + mapping: + CleanupPolicyFilter: '#/components/schemas/CleanupPolicyFilter' + HideInternal: '#/components/schemas/HideInternal' + HideStream: '#/components/schemas/HideStream' + LabelsFilter: '#/components/schemas/LabelsFilter' + TagsFilter: '#/components/schemas/TagsFilter' + TopicNameFilter: '#/components/schemas/TopicNameFilter' + TopicListRequest: + title: TopicListRequest + type: object + required: + - page + - itemsPerPage + - sort + properties: + page: + description: Page number, starting from 1 + type: integer + format: int32 + itemsPerPage: + type: integer + format: int32 + filter: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/TopicListFilter' + sort: + $ref: '#/components/schemas/TopicListSort' + descSort: + type: boolean + TopicListSort: + title: TopicListSort + type: string + enum: + - ByName + - ByReplicationFactor + - ByNumPartition + - ByMessageCount + - ByTopicSizeByte + - ByCleanupPolicy + - ByRetentionTimes + - ByMinIsr + - ByLastActivityAt + - ByProduceRate + TopicMetadata: + title: TopicMetadata + type: object + required: + - name + - cluster + properties: + name: + type: string + cluster: + type: string + labels: + $ref: '#/components/schemas/Map_LabelKey_String' + catalogVisibility: + $ref: '#/components/schemas/CatalogVisibility' + descriptionIsEditable: + type: boolean + description: + type: string + sqlStorage: + $ref: '#/components/schemas/TopicSqlStorage' + TopicMetricType: + title: TopicMetricType + type: string + enum: + - MessageCount + - MessageIn + - MessageOut + - MessageSize + TopicNameFilter: + title: TopicNameFilter + type: object + required: + - contains + - type + properties: + contains: + type: string + type: + type: string + const: TopicNameFilter + TopicOfConsumerGroup: + title: TopicOfConsumerGroup + type: object + required: + - name + - labels + properties: + name: + type: string + consumeRateInSeconds: + type: number + format: double + timeLagInSeconds: + type: integer + format: int64 + offsetLag: + type: integer + format: int64 + partitions: + type: array + items: + $ref: '#/components/schemas/PartitionOfConsumerGroupStats' + labels: + $ref: '#/components/schemas/Map_String' + TopicOfConsumerGroupStat: + title: TopicOfConsumerGroupStat + type: object + required: + - name + - labels + properties: + name: + type: string + consumeRateInSeconds: + type: number + format: double + timeLagInSeconds: + type: integer + format: int64 + offsetLag: + type: integer + format: int64 + labels: + $ref: '#/components/schemas/Map_String' + TopicPartitionOfMember: + title: TopicPartitionOfMember + type: object + required: + - name + - partition + - endOffset + - labels + properties: + name: + type: string + partition: + type: integer + format: int32 + consumeRateInSeconds: + type: number + format: double + timeLagInSeconds: + type: integer + format: int64 + endOffset: + type: integer + format: int64 + committedOffset: + type: integer + format: int64 + labels: + $ref: '#/components/schemas/Map_String' + TopicPartitionSelection: + title: TopicPartitionSelection + oneOf: + - $ref: '#/components/schemas/AllTopics' + - $ref: '#/components/schemas/SinglePartition' + - $ref: '#/components/schemas/SingleTopic' + TopicPolicyApplyResultV1: + title: TopicPolicyApplyResultV1 + type: object + required: + - resource + - upsertResult + properties: + resource: + $ref: '#/components/schemas/TopicPolicyResourceV1' + upsertResult: + $ref: '#/components/schemas/UpsertResult' + TopicPolicyKind: + title: TopicPolicyKind + type: string + enum: + - TopicPolicy + TopicPolicyResourceV1: + title: TopicPolicyResourceV1 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v1 + kind: + $ref: '#/components/schemas/TopicPolicyKind' + metadata: + $ref: '#/components/schemas/ApplicationPolicyMetadata' + spec: + $ref: '#/components/schemas/ApplicationPolicySpec' + TopicResourceV2: + title: TopicResourceV2 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v2 + kind: + $ref: '#/components/schemas/TopicKind' + metadata: + $ref: '#/components/schemas/TopicMetadata' + spec: + $ref: '#/components/schemas/TopicSpec' + TopicResponse: + title: TopicResponse + oneOf: + - $ref: '#/components/schemas/IndexedTopic' + - $ref: '#/components/schemas/NotIndexedTopic' + discriminator: + propertyName: type + mapping: + IndexedTopic: '#/components/schemas/IndexedTopic' + NotIndexedTopic: '#/components/schemas/NotIndexedTopic' + TopicSpec: + title: TopicSpec + type: object + required: + - partitions + - replicationFactor + properties: + partitions: + type: integer + format: int32 + replicationFactor: + type: integer + format: int32 + configs: + $ref: '#/components/schemas/TopicConfigMap' + TopicSqlStorage: + title: TopicSqlStorage + type: object + required: + - retentionTimeInSecond + properties: + retentionTimeInSecond: + type: integer + format: int64 + enabled: + type: boolean + TopicTable: + title: TopicTable + type: object + required: + - tableName + - clusterSlug + - topicName + - fields + properties: + tableName: + type: string + clusterSlug: + type: string + topicName: + type: string + fields: + $ref: '#/components/schemas/columnPerField' + TopicTemplateApplyResultV2: + title: TopicTemplateApplyResultV2 + type: object + required: + - resource + - upsertResult + properties: + resource: + $ref: '#/components/schemas/TopicTemplateResourceV2' + upsertResult: + $ref: '#/components/schemas/UpsertResult' + TopicTemplateDefaults: + title: TopicTemplateDefaults + type: object + required: + - metadata + - spec + properties: + metadata: + $ref: '#/components/schemas/TopicTemplateDefaultsMetadata' + spec: + $ref: '#/components/schemas/TopicTemplateDefaultsSpec' + TopicTemplateDefaultsMetadata: + title: TopicTemplateDefaultsMetadata + type: object + properties: + name: + type: string + pattern: ([^{]|\{(?!\{)|\{\{[A-Za-z_][A-Za-z0-9_]*\}\})* + labels: + $ref: '#/components/schemas/Map_LabelKey_String' + TopicTemplateDefaultsSpec: + title: TopicTemplateDefaultsSpec + type: object + properties: + partitions: + type: integer + format: int32 + exclusiveMinimum: 0 + replicationFactor: + type: integer + format: int32 + exclusiveMinimum: 0 + configs: + $ref: '#/components/schemas/Map_String' + TopicTemplateKind: + title: TopicTemplateKind + type: string + enum: + - TopicTemplate + TopicTemplateMetadata: + title: TopicTemplateMetadata + type: object + required: + - name + properties: + name: + type: string + pattern: ^[0-9a-z_\-.]+$ + labels: + $ref: '#/components/schemas/Map_LabelKey_String' + TopicTemplateResourceV2: + title: TopicTemplateResourceV2 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v2 + kind: + $ref: '#/components/schemas/TopicTemplateKind' + metadata: + $ref: '#/components/schemas/TopicTemplateMetadata' + spec: + $ref: '#/components/schemas/TopicTemplateSpec' + TopicTemplateSpec: + title: TopicTemplateSpec + type: object + required: + - displayName + - defaults + properties: + displayName: + type: string + pattern: (?s).*\S.* + description: + type: string + defaults: + $ref: '#/components/schemas/TopicTemplateDefaults' + TopicV1: + title: TopicV1 + type: object + required: + - clusterId + - topicPattern + - resourceType + properties: + clusterId: + type: string + pattern: ^([0-9a-z\-]+|\*)$ + topicPattern: + type: string + permissions: + type: array + uniqueItems: true + items: + type: string + enum: + - topicViewConfig + - topicEmpty + - topicConsume + - topicProduce + - topicEditConfig + - topicAddPartition + - topicDelete + - topicDataQualityManage + - topicCreate + resourceType: + type: string + enum: + - Platform + - Cluster + - Topic + - ConsumerGroup + - KafkaConnect + - Subject + - KsqlDB + TrafficControlPolicies: + title: TrafficControlPolicies + type: object + properties: + maxProduceRate: + description: produce rate in bytes per second + type: integer + format: int32 + maxConsumeRate: + description: consume rate in bytes per second + type: integer + format: int32 + limitCommitOffset: + description: commit attempts per minute + type: integer + format: int32 + Unauthorized: + title: Unauthorized + type: object + required: + - title + properties: + title: + type: string + msg: + type: string + cause: + type: string + UpdateGroupRequest: + title: UpdateGroupRequest + type: object + required: + - name + properties: + name: + type: string + description: + type: string + externalGroups: + type: array + items: + type: string + externalGroupRegex: + type: array + uniqueItems: true + items: + type: string + UpdateInterceptor: + title: UpdateInterceptor + type: object + required: + - pluginClass + - priority + - config + properties: + pluginClass: + type: string + priority: + type: integer + format: int32 + config: {} + UpdateUserRequest: + title: UpdateUserRequest + type: object + required: + - email + properties: + lastName: + type: string + firstName: + type: string + email: + type: string + UpsertKafkaClusterRequest: + title: UpsertKafkaClusterRequest + type: object + required: + - name + - bootstrapServers + properties: + name: + type: string + bootstrapServers: + type: string + properties: + type: string + color: + type: string + icon: + type: string + schemaRegistry: + $ref: '#/components/schemas/SchemaRegistryRequest' + kafkaConnects: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/KafkaConnectUpsert' + ignoreUntrustedCertificate: + type: boolean + amazonSecurity: + $ref: '#/components/schemas/AmazonSecurity' + description: set it directly in kafka property, a call to API v2 will erase + them + deprecated: true + kafkaFlavor: + $ref: '#/components/schemas/KafkaFlavorCreateRequest' + ksqlDBs: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/KsqlDBUpsert' + policiesRef: + type: array + uniqueItems: true + items: + type: string + pattern: ^[0-9a-z_\-.]+$ + UpsertResult: + title: UpsertResult + type: string + enum: + - Created + - Updated + - NotChanged + UserApplyResultV2: + title: UserApplyResultV2 + type: object + required: + - resource + - upsertResult + properties: + resource: + $ref: '#/components/schemas/UserResourceV2' + upsertResult: + $ref: '#/components/schemas/UpsertResult' + UserKind: + title: UserKind + type: string + enum: + - User + UserMetadata: + title: UserMetadata + type: object + required: + - name + properties: + name: + type: string + lastLoginDate: + type: string + format: date-time + UserPermissions: + title: UserPermissions + type: object + required: + - groups + properties: + user: + type: array + items: + $ref: '#/components/schemas/ResourcePermissions' + groups: + $ref: '#/components/schemas/ResourcePermissionsByGroupId' + UserResourceV2: + title: UserResourceV2 + type: object + required: + - apiVersion + - kind + - metadata + - spec + properties: + apiVersion: + type: string + pattern: v2 + kind: + $ref: '#/components/schemas/UserKind' + metadata: + $ref: '#/components/schemas/UserMetadata' + spec: + $ref: '#/components/schemas/UserSpec' + UserSpec: + title: UserSpec + type: object + properties: + firstName: + type: string + lastName: + type: string + permissions: + type: array + items: + $ref: '#/components/schemas/ResourcePermissions1' + UserToken: + title: UserToken + type: object + required: + - email + properties: + email: + type: string + Webhook: + title: Webhook + type: object + required: + - url + - method + - type + properties: + url: + type: string + method: + $ref: '#/components/schemas/HttpMethod' + headers: + $ref: '#/components/schemas/Map_String' + authentification: + $ref: '#/components/schemas/HttpAuthentification' + body: + type: string + type: + type: string + const: Webhook + columnPerField: + title: columnPerField + type: object + additionalProperties: + type: array + uniqueItems: true + items: + $ref: '#/components/schemas/Column' + securitySchemes: + httpAuth: + type: http + scheme: bearer +x-tagGroups: +- name: 🐺 Conduktor API + tags: + - Introduction + - Authentication + - Kinds + - Api Groups + - Versioning + - Conventions +- name: 🏆 console/v1 + tags: + - clusters + - certificates +- name: 🏆 console/v2 + tags: + - cli_kafka-cluster_console_v2_2 + - cli_kafka-connect-cluster_console_v2_3 + - cli_ksql-d-b-cluster_console_v2_4 + - cli_partner-zone_console_v2_17 + - cli_topic-template_console_v2_22 + - cli_connector-template_console_v2_23 + - cli_chargeback-cost_console_v2_24 + - cli_chargeback-label_console_v2_25 +- name: 💎 dataquality/v1 + tags: + - cli_data-quality-rule_data-quality_v1_18 + - cli_data-quality-policy_data-quality_v1_19 +- name: 🐞 debug/v1 + tags: + - logging + - indexing +- name: 🌉 gateway/v1 + tags: + - interceptors +- name: 👥 iam/v1 + tags: + - users + - groups + - permissions +- name: 👥 iam/v2 + tags: + - cli_user_iam_v2_0 + - cli_group_iam_v2_1 +- name: 🔥 kafka/v1 + tags: + - topic + - consumergroup + - connector + - acls + - service-accounts + - ksqlDBs +- name: 🔥 kafka/v2 + tags: + - cli_topic_kafka_v2_12 + - cli_subject_kafka_v2_13 + - cli_glue-schema_kafka_v2_14 + - cli_connector_kafka_v2_15 +- name: 🩺 monitoring/v2 + tags: + - cli_integration_monitoring_v2_20 + - cli_alert_monitoring_v2_21 +- name: 🩺 monitoring/v3 + tags: + - cli_integration_monitoring_v3_20 + - cli_alert_monitoring_v3_21 +- name: 🚀 self-serve/v1 + tags: + - cli_topic-policy_self-serve_v1_5 + - cli_resource-policy_self-serve_v1_6 + - cli_application_self-serve_v1_7 + - cli_application-instance_self-serve_v1_8 + - cli_application-instance-permission_self-serve_v1_9 + - cli_application-group_self-serve_v1_10 + - cli_service-account_self-serve_v1_11 + - catalog +- name: 🐘 sql/v1 + tags: + - cli_indexed-topic_sql_v1_16 + - sql +- name: 🔑 token/v1 + tags: + - tokens diff --git a/openapi/manifest.json b/openapi/manifest.json index ac5d707..2c5b9b8 100644 --- a/openapi/manifest.json +++ b/openapi/manifest.json @@ -59,7 +59,8 @@ "1.44.1", "1.45.0", "1.45.1", - "1.46.0" + "1.46.0", + "1.46.1" ], "gateway": [ "3.1.0",