components:
  schemas:
    ACLAccessFilter:
      properties:
        host:
          title: |-
            The host to match.  If not set, will default to match all hosts
            with the specified `operation` and `permission_type`. Note that
            the asterisk `*` is literal and matches hosts that are set to `*`
          type: string
        operation:
          $ref: '#/components/schemas/ACLOperation'
        permission_type:
          $ref: '#/components/schemas/ACLPermissionType'
        principal:
          title: |-
            The name of the principal, if not set will default to match
            all principals with the specified `operation` and `permission_type`
          type: string
      title: Filter an ACL based on its access
      type: object
    ACLFilter:
      properties:
        access_filter:
          $ref: '#/components/schemas/ACLAccessFilter'
        resource_filter:
          $ref: '#/components/schemas/ACLResourceFilter'
      title: A filter for ACLs
      type: object
    ACLOperation:
      enum:
        - ACL_OPERATION_ANY
        - ACL_OPERATION_READ
        - ACL_OPERATION_WRITE
        - ACL_OPERATION_CREATE
        - ACL_OPERATION_REMOVE
        - ACL_OPERATION_ALTER
        - ACL_OPERATION_DESCRIBE
        - ACL_OPERATION_CLUSTER_ACTION
        - ACL_OPERATION_DESCRIBE_CONFIGS
        - ACL_OPERATION_ALTER_CONFIGS
        - ACL_OPERATION_IDEMPOTENT_WRITE
      title: The ACL operation to match
      type: string
    ACLPattern:
      description: |-
        - ACL_PATTERN_ANY: Wildcard to match any pattern
         - ACL_PATTERN_LITERAL: Match a literal string
         - ACL_PATTERN_PREFIXED: Match a prefix
         - ACL_PATTERN_PREFIX: Match a prefix
         - ACL_PATTERN_MATCH: Match serves as a catch-all for all the names of a topic
        the principal is authorized to access
      enum:
        - ACL_PATTERN_ANY
        - ACL_PATTERN_LITERAL
        - ACL_PATTERN_PREFIXED
        - ACL_PATTERN_PREFIX
        - ACL_PATTERN_MATCH
      title: The ACL pattern type
      type: string
    ACLPermissionType:
      enum:
        - ACL_PERMISSION_TYPE_ANY
        - ACL_PERMISSION_TYPE_ALLOW
        - ACL_PERMISSION_TYPE_DENY
      title: ACL permission types
      type: string
    ACLResource:
      description: |-
        - ACL_RESOURCE_ANY: Wildcard for selecting any ACL resource
         - ACL_RESOURCE_CLUSTER: Cluster wide resource
         - ACL_RESOURCE_GROUP: Consumer group resource
         - ACL_RESOURCE_TOPIC: Topic resource
         - ACL_RESOURCE_TXN_ID: Transaction ID resource
         - ACL_RESOURCE_SR_SUBJECT: Schema Registry subject resource
         - ACL_RESOURCE_SR_REGISTRY: Schema Registry wide resource
         - ACL_RESOURCE_SR_ANY: Wildcard to match any SR ACL resource
      enum:
        - ACL_RESOURCE_ANY
        - ACL_RESOURCE_CLUSTER
        - ACL_RESOURCE_GROUP
        - ACL_RESOURCE_TOPIC
        - ACL_RESOURCE_TXN_ID
        - ACL_RESOURCE_SR_SUBJECT
        - ACL_RESOURCE_SR_REGISTRY
        - ACL_RESOURCE_SR_ANY
      title: The ACL resource types
      type: string
    ACLResourceFilter:
      properties:
        name:
          title: |-
            Name, if not given will default to match all items in `resource_type`.
            Note that asterisk `*` is literal and matches resource ACLs
            that are named `*`
          type: string
        pattern_type:
          $ref: '#/components/schemas/ACLPattern'
        resource_type:
          $ref: '#/components/schemas/ACLResource'
      title: A filter to match ACLs for resources
      type: object
    AWS.Role:
      description: Role identifies AWS role.
      properties:
        arn:
          description: AWS role ARN.
          type: string
      required:
        - arn
      title: Role
      type: object
    AWSInstanceProfile:
      description: AWS instance profile.
      properties:
        arn:
          description: AWS instance profile ARN.
          type: string
      required:
        - arn
      title: Instance Profile
      type: object
    AWSPeeringSpec:
      properties:
        peer_owner_id:
          title: |-
            their aws vpn id
            these are aws terms
          type: string
        peer_vpc_id:
          type: string
      title: 'https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateVpcPeeringConnection.html'
      type: object
    AWSPrivateLink:
      properties:
        allowed_principals:
          description: 'The ARN of the principals that can access the Redpanda AWS PrivateLink Endpoint Service. To grant permissions to all principals, use an asterisk (*).'
          example:
            - 'arn:aws:iam::account-number-without-hyphens:user/username or arn:aws:iam::account-number-without-hyphens:root'
          items:
            type: string
          type: array
        connect_console:
          description: Whether Console is connected in Redpanda AWS Private Link Service.
          type: boolean
        enabled:
          description: Whether Redpanda AWS Private Link Endpoint Service is enabled.
          type: boolean
        http_proxy_auth_mode:
          $ref: '#/components/schemas/PrivateLinkAuthMode'
        kafka_api_auth_mode:
          $ref: '#/components/schemas/PrivateLinkAuthMode'
        schema_registry_auth_mode:
          $ref: '#/components/schemas/PrivateLinkAuthMode'
        status:
          $ref: '#/components/schemas/AWSPrivateLink.Status'
        supported_regions:
          description: List of supported regions in cross-region AWS PrivateLink.
          items:
            type: string
          type: array
      type: object
    AWSPrivateLink.Status:
      properties:
        console_port:
          description: The port of Redpanda Console.
          format: int32
          type: integer
        created_at:
          description: Redpanda AWS PrivateLink Endpoint Service creation timestamp.
          format: date-time
          type: string
        deleted_at:
          description: Redpanda AWS PrivateLink Service deletion timestamp.
          format: date-time
          type: string
        kafka_api_node_base_port:
          description: Kafka API node service base port. The port for node `i` (0 .. node_count-1) is kafka_api_node_base_port + `i`.
          format: int32
          type: integer
        kafka_api_seed_port:
          description: Kafka API seed service port.
          format: int32
          type: integer
        redpanda_proxy_node_base_port:
          description: HTTP Proxy node service base port. The port for node `i` (0 .. node_count-1) is redpanda_proxy_node_base_port + i.
          format: int32
          type: integer
        redpanda_proxy_seed_port:
          description: HTTP Proxy seed service port.
          format: int32
          type: integer
        schema_registry_seed_port:
          description: Schema Registry seed service port.
          format: int32
          type: integer
        service_id:
          description: ID of Redpanda AWS PrivateLink Endpoint Service.
          example: vpce-svc-05fff2117d648da35
          type: string
        service_name:
          description: Name of Redpanda AWS PrivateLink Endpoint Service.
          example: com.amazonaws.vpce.us-west-2.vpce-svc-05fff2117d648da35
          type: string
        service_state:
          description: State of Redpanda AWS PrivateLink Endpoint Service.
          example: Pending | Available | Deleting | Deleted | Failed
          type: string
        vpc_endpoint_connections:
          description: List of VPC endpoints with established connections to Redpanda AWS PrivateLink Endpoint Service.
          items:
            $ref: '#/components/schemas/VPCEndpointConnection'
          type: array
      type: object
    AWSPrivateLinkSpec:
      description: AWS PrivateLink specification.
      properties:
        allowed_principals:
          description: 'The ARN of the principals that can access Redpanda AWS PrivateLink Endpoint Service. To grant permissions to all principals, use an asterisk (*).'
          example:
            - 'arn:aws:iam::account-number-without-hyphens:user/username or arn:aws:iam::account-number-without-hyphens:root'
          items:
            type: string
          type: array
        connect_console:
          description: Whether Console is connected in Redpanda AWS Private Link Service. The default is true if not set.
          nullable: true
          type: boolean
        enabled:
          description: Whether Redpanda AWS Private Link Endpoint Service is enabled.
          type: boolean
        http_proxy_auth_mode:
          $ref: '#/components/schemas/PrivateLinkAuthMode'
        kafka_api_auth_mode:
          $ref: '#/components/schemas/PrivateLinkAuthMode'
        schema_registry_auth_mode:
          $ref: '#/components/schemas/PrivateLinkAuthMode'
        supported_regions:
          description: List of AWS regions allowed in cross region configuration.
          example:
            - us-east-1
            - us-west-2
          items:
            type: string
          type: array
      type: object
    AWSSecurityGroup:
      description: Security Group identifies AWS security group.
      properties:
        arn:
          description: AWS security group ARN.
          type: string
      required:
        - arn
      title: Security Group
      type: object
    AdpApi:
      description: Cluster's ADP API properties.
      properties:
        url:
          description: ADP API URL.
          example: 'https://adp-api.cjb69h1c4vs42pca89s0.clusters.rdpa.co'
          readOnly: true
          type: string
      type: object
    Anytime:
      type: object
    AuthenticationConfiguration:
      properties:
        plain_configuration:
          $ref: '#/components/schemas/PlainConfig'
        scram_configuration:
          $ref: '#/components/schemas/ScramConfig'
      title: |-
        Authentication config.  Supports:
        * SASL/SCRAM
        * SASL/PLAIN
      type: object
    AzurePeeringSpec:
      properties:
        peer_resource_group:
          type: string
        peer_subscription_id:
          type: string
        peer_tenant_id:
          type: string
        peer_vnet_name:
          type: string
      title: 'https://learn.microsoft.com/en-us/azure/virtual-network/virtual-network-manage-peering?tabs=peering-portal'
      type: object
    AzurePrivateLink:
      properties:
        allowed_subscriptions:
          description: 'The subscriptions that can access the Redpanda Azure PrivateLink Endpoint Service. To grant permissions to all principals, use an asterisk (*).'
          example:
            - 4a73b02e-90c1-4d76-af36-5c935dd41e7c
          items:
            type: string
          type: array
        connect_console:
          description: Whether Console is connected in Redpanda Azure Private Link Service.
          type: boolean
        enabled:
          description: Whether Redpanda AWS Private Link Endpoint Service is enabled.
          type: boolean
        http_proxy_auth_mode:
          $ref: '#/components/schemas/PrivateLinkAuthMode'
        kafka_api_auth_mode:
          $ref: '#/components/schemas/PrivateLinkAuthMode'
        schema_registry_auth_mode:
          $ref: '#/components/schemas/PrivateLinkAuthMode'
        status:
          $ref: '#/components/schemas/AzurePrivateLink.Status'
      type: object
    AzurePrivateLink.Status:
      properties:
        approved_subscriptions:
          items:
            type: string
          title: These are the approved subscriptions on the private link
          type: array
        console_port:
          description: The port of Redpanda Console.
          format: int32
          type: integer
        created_at:
          description: Redpanda Azure PrivateLink Endpoint Service creation timestamp.
          format: date-time
          type: string
        deleted_at:
          description: Redpanda Azure PrivateLink Service deletion timestamp.
          format: date-time
          type: string
        dns_a_record:
          title: dns_a_dns_a_recordrecord is the DNS A record the customer will create pointing at the their PE
          type: string
        kafka_api_node_base_port:
          description: Kafka API node service base port. The port for node `i` (0 .. node_count-1) is kafka_api_node_base_port + `i`.
          format: int32
          type: integer
        kafka_api_seed_port:
          description: Kafka API seed service port.
          format: int32
          type: integer
        private_endpoint_connections:
          description: List of private endpoint connections to Redpanda Azure Private Link Service.
          items:
            $ref: '#/components/schemas/PrivateEndpointConnection'
          type: array
        redpanda_proxy_node_base_port:
          description: HTTP Proxy node service base port. The port for node `i` (0 .. node_count-1) is redpanda_proxy_node_base_port + i.
          format: int32
          type: integer
        redpanda_proxy_seed_port:
          description: HTTP Proxy seed service port.
          format: int32
          type: integer
        schema_registry_seed_port:
          description: Schema Registry seed service port.
          format: int32
          type: integer
        service_id:
          description: ID of Redpanda Azure PrivateLink Endpoint Service.
          example: /subscriptions/<sub-id>/resourceGroups/<rg-id>/providers/Microsoft.Network/privateLinkServices/<name>
          type: string
        service_name:
          description: Name of Redpanda Azure PrivateLink Endpoint Service.
          example: pls-name
          type: string
      type: object
    AzurePrivateLinkSpec:
      properties:
        allowed_subscriptions:
          description: The subscriptions that can access the Redpanda Azure PrivateLink Endpoint Service.
          example:
            - 4a73b02e-90c1-4d76-af36-5c935dd41e7c
          items:
            type: string
          type: array
        connect_console:
          description: Whether Console is connected in Redpanda Azure Private Link Service. The default is true if not set.
          nullable: true
          type: boolean
        enabled:
          description: Enabled controls if Azure Private Link Endpoint Service is enabled.
          type: boolean
        http_proxy_auth_mode:
          $ref: '#/components/schemas/PrivateLinkAuthMode'
        kafka_api_auth_mode:
          $ref: '#/components/schemas/PrivateLinkAuthMode'
        schema_registry_auth_mode:
          $ref: '#/components/schemas/PrivateLinkAuthMode'
      type: object
    BadRequest:
      description: |-
        Describes violations in a client request. This error type focuses on the
        syntactic aspects of the request.
      properties:
        field_violations:
          description: Describes all violations in a client request.
          items:
            $ref: '#/components/schemas/FieldViolation'
          type: array
      title: BadRequest
      type: object
    CIDR:
      description: Additional CIDRs allocated to Redpanda cluster.
      properties:
        aks_service_cidr:
          description: CIDR used by AKS Kubernetes services.
          type: string
      required:
        - aks_service_cidr
      title: CIDR
      type: object
    CloudProvider:
      description: Cloud provider where resources are created.
      enum:
        - CLOUD_PROVIDER_AWS
        - CLOUD_PROVIDER_GCP
        - CLOUD_PROVIDER_AZURE
      type: string
    CloudProviderStatus:
      properties:
        aws:
          $ref: '#/components/schemas/CloudProviderStatus.AWS'
        azure:
          $ref: '#/components/schemas/CloudProviderStatus.Azure'
        gcp:
          $ref: '#/components/schemas/CloudProviderStatus.GCP'
      type: object
    CloudProviderStatus.AWS:
      properties:
        accepter_cidr_block:
          type: string
        expiration_time:
          format: date-time
          type: string
        status:
          type: string
        status_message:
          type: string
      type: object
    CloudProviderStatus.Azure:
      properties:
        peering_level:
          type: string
        peering_state:
          type: string
        status:
          type: string
      type: object
    CloudProviderStatus.GCP:
      properties:
        status:
          type: string
        status_message:
          type: string
      type: object
    Cluster:
      description: Resource describing a Cluster.
      properties:
        adp_api:
          $ref: '#/components/schemas/AdpApi'
        ai_gateway:
          $ref: '#/components/schemas/Cluster.AIGateway'
        api_gateway_access:
          $ref: '#/components/schemas/NetworkAccessMode'
        aws_private_link:
          $ref: '#/components/schemas/AWSPrivateLink'
        azure_private_link:
          $ref: '#/components/schemas/AzurePrivateLink'
        cloud_provider:
          $ref: '#/components/schemas/CloudProvider'
        cloud_provider_tags:
          additionalProperties:
            type: string
          description: |-
            Tags placed on cloud resources.
            If the cloud provider is GCP and the name of a tag has the prefix "gcp.network-tag.", the tag
            is a network tag that will be added to the Redpanda cluster GKE nodes. Otherwise, the tag
            is a normal tag.
            For example, if the name of a tag is "gcp.network-tag.network-tag-foo", the network tag named
            "network-tag-foo" will be added to the Redpanda cluster GKE nodes.
            Note: The value of a network tag will be ignored.
            See the official [GCP VPC](https://cloud.google.com/vpc/docs/add-remove-network-tags) for more details on network tags.
          type: object
        cloud_storage:
          $ref: '#/components/schemas/Cluster.CloudStorage'
        cluster_configuration:
          $ref: '#/components/schemas/Cluster.ClusterConfiguration'
        connection_type:
          $ref: '#/components/schemas/ConnectionType'
        created_at:
          description: Cluster creation timestamp.
          format: date-time
          type: string
        current_redpanda_version:
          description: Current Redpanda version of the cluster.
          type: string
        customer_managed_resources:
          $ref: '#/components/schemas/v1.CustomerManagedResources'
        dataplane_api:
          $ref: '#/components/schemas/Cluster.DataplaneAPI'
        desired_redpanda_version:
          description: Desired Redpanda version of the cluster.
          type: string
        gcp_global_access_enabled:
          nullable: true
          title: 'gcp_enable_global_access control if global access is enabled on the seed load balancer, applicable only for GCP. Default is false'
          type: boolean
        gcp_private_service_connect:
          $ref: '#/components/schemas/GCPPrivateServiceConnect'
        http_proxy:
          $ref: '#/components/schemas/HTTPProxyStatus'
        id:
          description: ID of the cluster. ID is an output from the Create Cluster endpoint and cannot be set by the caller.
          type: string
        kafka_api:
          $ref: '#/components/schemas/Cluster.KafkaAPI'
        kafka_connect:
          $ref: '#/components/schemas/KafkaConnect'
        maintenance_window_config:
          $ref: '#/components/schemas/MaintenanceWindowConfig'
        name:
          description: Unique name of the cluster.
          example: development-cluster
          type: string
        nat_gateways:
          description: NAT gateway information for the cluster.
          items:
            type: string
          readOnly: true
          type: array
        network_id:
          description: Network ID where cluster is placed.
          example: cjcuq79c4vs94fcufc2g
          type: string
        prometheus:
          $ref: '#/components/schemas/Cluster.Prometheus'
        read_replica_cluster_ids:
          description: IDs of clusters which may create read-only topics from this cluster.
          items:
            type: string
          type: array
        redpanda_console:
          $ref: '#/components/schemas/RedpandaConsole'
        redpanda_node_count:
          format: int32
          title: Number of Redpanda broker nodes
          type: integer
        region:
          description: Region represents the name of the region where the cluster will be provisioned.
          example: us-central1
          title: Cloud provider region.
          type: string
        resource_group_id:
          description: Resource group ID of the cluster.
          example: a0b40af9-0250-48ca-9417-783ed127ce42
          type: string
        sandbox:
          $ref: '#/components/schemas/Sandbox'
        schema_registry:
          $ref: '#/components/schemas/Cluster.SchemaRegistryStatus'
        state:
          $ref: '#/components/schemas/Cluster.State'
        state_description:
          $ref: '#/components/schemas/rpc.Status'
        throughput_tier:
          description: Throughput tier of the cluster.
          type: string
        type:
          $ref: '#/components/schemas/Cluster.Type'
        updated_at:
          description: Cluster update timestamp.
          format: date-time
          type: string
        zones:
          description: |-
            Zones of the cluster. Must be valid zones within the selected region.
            If multiple zones are used, the cluster is a multi-AZ cluster.
          items:
            type: string
          type: array
      title: Cluster
      type: object
    Cluster.AIGateway:
      description: Cluster's AI Gateway properties.
      properties:
        url:
          description: AI Gateway URL.
          example: 'https://ai-gateway.cjb69h1c4vs42pca89s0.clusters.rdpa.co'
          readOnly: true
          type: string
        v2_url:
          description: AI Gateway v2 URL.
          example: 'https://aigw.cjb69h1c4vs42pca89s0.clusters.rdpa.co'
          readOnly: true
          type: string
      type: object
    Cluster.CloudStorage:
      properties:
        aws:
          $ref: '#/components/schemas/Cluster.CloudStorage.AWS'
        azure:
          $ref: '#/components/schemas/Cluster.CloudStorage.Azure'
        gcp:
          $ref: '#/components/schemas/Cluster.CloudStorage.GCP'
        skip_destroy:
          type: boolean
      type: object
    Cluster.CloudStorage.AWS:
      properties:
        arn:
          type: string
      type: object
    Cluster.CloudStorage.Azure:
      properties:
        allowed_ips:
          description: |-
            List of public IP or IP ranges in CIDR Format.

            - Only IPv4 addresses are allowed.
            - Private IP address ranges as defined in RFC 1918 are not allowed.
            - Private IP address ranges as defined in RFC 6598 are not allowed.
            - Small address ranges using "/31" or "/32" prefix sizes are not
            supported. These ranges should be configured using individual IP
            address rules without prefix specified.
            - allowed_ips have no effect on requests originating from the same
            Azure region as the storage account. Use allowed_subnet_ids to allow
            same-region requests. Services deployed in the same region as the
            storage account use private Azure IP addresses for communication. Thus,
            you cannot allow access to specific Azure services based on their
            public outbound IP address range.
          items:
            type: string
          type: array
        allowed_subnet_ids:
          description: |-
            A list of virtual network subnet IDs that are allowed to access the
            storage account.
          items:
            type: string
          type: array
        container_name:
          type: string
        resource_group_name:
          type: string
        storage_account_name:
          type: string
        subscription_id:
          type: string
      type: object
    Cluster.CloudStorage.GCP:
      properties:
        name:
          type: string
      type: object
    Cluster.ClusterConfiguration:
      properties:
        computed_properties:
          type: object
        custom_properties:
          type: object
      type: object
    Cluster.DataplaneAPI:
      description: Cluster's Data Plane API properties.
      properties:
        url:
          description: Data Plane API URL.
          example: 'https://api-ab1234l0.cjb69h1c4vs42pca89s0.fmc.prd.cloud.redpanda.com'
          readOnly: true
          type: string
      type: object
    Cluster.KafkaAPI:
      description: Cluster's Kafka API properties.
      properties:
        all_seed_brokers:
          $ref: '#/components/schemas/SeedBrokers'
        mtls:
          $ref: '#/components/schemas/MTLSSpec'
        sasl:
          $ref: '#/components/schemas/SASLSpec'
        seed_brokers:
          description: Kafka API Seed Brokers (also known as Bootstrap servers).
          items:
            type: string
          type: array
      type: object
    Cluster.Prometheus:
      description: Prometheus metrics endpoint properties.
      properties:
        url:
          description: Prometheus API URL.
          example: 'https://console-aa0000l0.cjb69h1c4vs42pca89s0.fmc.prd.cloud.redpanda.com/api/cloud/prometheus/public_metrics'
          readOnly: true
          type: string
      readOnly: true
      type: object
    Cluster.SchemaRegistryStatus:
      description: Cluster's Schema Registry properties.
      properties:
        all_urls:
          $ref: '#/components/schemas/Endpoints'
        mtls:
          $ref: '#/components/schemas/MTLSSpec'
        sasl:
          $ref: '#/components/schemas/SASLSpec'
        url:
          description: Schema Registry URL.
          type: string
      type: object
    Cluster.State:
      description: State describes the state of the cluster.
      enum:
        - STATE_CREATING_AGENT
        - STATE_CREATING
        - STATE_READY
        - STATE_DELETING
        - STATE_DELETING_AGENT
        - STATE_UPGRADING
        - STATE_FAILED
        - STATE_SUSPENDED
      type: string
    Cluster.Type:
      description: Cluster type. Type is immutable and can only be set on cluster creation.
      enum:
        - TYPE_DEDICATED
        - TYPE_BYOC
      type: string
    ClusterCreate:
      description: Resource describing a Create Cluster.
      properties:
        api_gateway_access:
          $ref: '#/components/schemas/NetworkAccessMode'
        aws_private_link:
          $ref: '#/components/schemas/AWSPrivateLinkSpec'
        azure_private_link:
          $ref: '#/components/schemas/AzurePrivateLinkSpec'
        cloud_provider:
          $ref: '#/components/schemas/CloudProvider'
        cloud_provider_tags:
          additionalProperties:
            type: string
          description: |-
            Tags placed on cloud resources.
            A tag is a key value pair.
            If the cloud provider is GCP and the key of a tag has the prefix "gcp.network-tag.",
            the tag is a network tag that will be added to the Redpanda cluster GKE nodes.
            Otherwise, the tag is a normal provider tag or label.
            For example, if the key of a tag is "gcp.network-tag.network-tag-foo",
            the GCP network tag named "network-tag-foo" will be added to the Redpanda cluster GKE nodes.
            Note: If a tag is GCP network tag, its value will be ignored.
            See the official [GCP VPC](https://cloud.google.com/vpc/docs/add-remove-network-tags) for more details on network tags.
          type: object
        cloud_storage:
          $ref: '#/components/schemas/ClusterCreate.CloudStorage'
        cluster_configuration:
          $ref: '#/components/schemas/ClusterCreate.ClusterConfiguration'
        connection_type:
          $ref: '#/components/schemas/ConnectionType'
        customer_managed_resources:
          $ref: '#/components/schemas/v1.CustomerManagedResources'
        gcp_enable_global_access:
          title: 'gcp_enable_global_access control if global access is enabled on the seed load balancer, applicable only for GCP. Default is false'
          type: boolean
        gcp_private_service_connect:
          $ref: '#/components/schemas/GCPPrivateServiceConnectSpec'
        http_proxy:
          $ref: '#/components/schemas/HTTPProxySpec'
        kafka_api:
          $ref: '#/components/schemas/KafkaAPISpec'
        kafka_connect:
          $ref: '#/components/schemas/KafkaConnect'
        maintenance_window_config:
          $ref: '#/components/schemas/MaintenanceWindowConfig'
        name:
          description: Unique name of the cluster.
          example: development-cluster
          type: string
        network_id:
          description: Id of the network where the cluster will be placed.
          example: cjcuq79c4vs94fcufc2g
          type: string
        read_replica_cluster_ids:
          description: IDs of clusters that can create read-only topics from this cluster.
          items:
            type: string
          type: array
        redpanda_node_count:
          description: redpanda_node_count defines the starting node count for the cluster.
          format: int32
          type: integer
        redpanda_version:
          description: 'Cluster''s Redpanda version. Only `major.minor` semver is supported, e.g. `24.1`.'
          nullable: true
          type: string
        region:
          description: Cloud provider region where the cluster will be provisioned.
          type: string
        resource_group_id:
          description: Resource group ID of the cluster
          example: a0b40af9-0250-48ca-9417-783ed127ce42
          type: string
        schema_registry:
          $ref: '#/components/schemas/SchemaRegistrySpec'
        throughput_tier:
          description: '[Throughput tier](https://docs.redpanda.com/api/doc/cloud-controlplane/topic/topic-regions-and-usage-tiers) of the cluster. See also: Redpanda Cloud [Dedicated tiers](https://docs.redpanda.com/redpanda-cloud/reference/tiers/dedicated-tiers/#dedicated-usage-tiers) and [BYOC tiers](https://docs.redpanda.com/redpanda-cloud/reference/tiers/byoc-tiers/).'
          type: string
        type:
          $ref: '#/components/schemas/Cluster.Type'
        zones:
          description: |-
            Cloud provider zones. Must be valid zones within the selected region.
            If multiple zones are used, the cluster is a multi-AZ cluster.
          items:
            type: string
          type: array
      required:
        - name
        - resource_group_id
        - throughput_tier
        - type
        - network_id
        - cloud_provider
        - region
        - zones
      title: ClusterCreate
      type: object
    ClusterCreate.CloudStorage:
      properties:
        aws:
          $ref: '#/components/schemas/ClusterCreate.CloudStorage.AWS'
        azure:
          $ref: '#/components/schemas/ClusterCreate.CloudStorage.Azure'
        gcp:
          $ref: '#/components/schemas/ClusterCreate.CloudStorage.GCP'
        skip_destroy:
          type: boolean
      type: object
    ClusterCreate.CloudStorage.AWS:
      type: object
    ClusterCreate.CloudStorage.Azure:
      properties:
        allowed_ips:
          description: |-
            List of public IP or IP ranges in CIDR Format.

            - Only IPv4 addresses are allowed.
            - Private IP address ranges as defined in RFC 1918 are not allowed.
            - Private IP address ranges as defined in RFC 6598 are not allowed.
            - Small address ranges using "/31" or "/32" prefix sizes are not
            supported. These ranges should be configured using individual IP
            address rules without prefix specified.
            - allowed_ips have no effect on requests originating from the same
            Azure region as the storage account. Use allowed_subnet_ids to allow
            same-region requests. Services deployed in the same region as the
            storage account use private Azure IP addresses for communication. Thus,
            you cannot allow access to specific Azure services based on their
            public outbound IP address range.
          items:
            type: string
          type: array
        allowed_subnet_ids:
          description: |-
            A list of virtual network subnet ids that are allowed to access the
            storage account.
          items:
            type: string
          type: array
      type: object
    ClusterCreate.CloudStorage.GCP:
      type: object
    ClusterCreate.ClusterConfiguration:
      properties:
        custom_properties:
          type: object
      type: object
    ClusterUpdate:
      description: Resource describing an Update Cluster.
      properties:
        api_gateway_access:
          $ref: '#/components/schemas/NetworkAccessMode'
        aws_private_link:
          $ref: '#/components/schemas/AWSPrivateLinkSpec'
        azure_private_link:
          $ref: '#/components/schemas/AzurePrivateLinkSpec'
        cloud_provider_tags:
          additionalProperties:
            type: string
          description: |-
            Tags that are placed on Cloud resources.
            If the cloud provider is GCP and the name of a tag has the prefix "gcp.network-tag.", the tag
            is a network tag that will be added to the Redpanda cluster GKE nodes. Otherwise, the tag
            is a normal tag.
            For example, if the name of a tag is "gcp.network-tag.network-tag-foo", the network tag named
            "network-tag-foo" will be added to the Redpanda cluster GKE nodes.
            Note: The value of a network tag will be ignored.
            See the official [GCP VPC](https://cloud.google.com/vpc/docs/add-remove-network-tags) for more details on network tags.
          type: object
        cloud_storage:
          $ref: '#/components/schemas/ClusterUpdate.CloudStorage'
        cluster_configuration:
          $ref: '#/components/schemas/ClusterUpdate.ClusterConfiguration'
        customer_managed_resources:
          $ref: '#/components/schemas/CustomerManagedResourcesUpdate'
        gcp_private_service_connect:
          $ref: '#/components/schemas/GCPPrivateServiceConnectSpec'
        http_proxy:
          $ref: '#/components/schemas/HTTPProxySpec'
        id:
          description: ID of the cluster.
          type: string
        kafka_api:
          $ref: '#/components/schemas/KafkaAPISpec'
        kafka_connect:
          $ref: '#/components/schemas/KafkaConnect'
        maintenance_window_config:
          $ref: '#/components/schemas/MaintenanceWindowConfig'
        name:
          description: Unique name of the cluster.
          example: development-cluster
          type: string
        read_replica_cluster_ids:
          description: IDs of clusters which may create read-only topics from this cluster.
          items:
            type: string
          type: array
        redpanda_node_count:
          format: int32
          type: integer
        schema_registry:
          $ref: '#/components/schemas/SchemaRegistrySpec'
        throughput_tier:
          type: string
      required:
        - id
      title: ClusterUpdate
      type: object
    ClusterUpdate.CloudStorage:
      properties:
        aws:
          $ref: '#/components/schemas/ClusterUpdate.CloudStorage.AWS'
        azure:
          $ref: '#/components/schemas/ClusterUpdate.CloudStorage.Azure'
        gcp:
          $ref: '#/components/schemas/ClusterUpdate.CloudStorage.GCP'
        skip_destroy:
          type: boolean
      type: object
    ClusterUpdate.CloudStorage.AWS:
      type: object
    ClusterUpdate.CloudStorage.Azure:
      properties:
        allowed_ips:
          description: |-
            List of public IP or IP ranges in CIDR Format.

            - Only IPv4 addresses are allowed.
            - Private IP address ranges as defined in RFC 1918 are not allowed.
            - Private IP address ranges as defined in RFC 6598 are not allowed.
            - Small address ranges using "/31" or "/32" prefix sizes are not
            supported. These ranges should be configured using individual IP
            address rules without prefix specified.
            - allowed_ips have no effect on requests originating from the same
            Azure region as the storage account. Use allowed_subnet_ids to allow
            same-region requests. Services deployed in the same region as the
            storage account use private Azure IP addresses for communication. Thus,
            you cannot allow access to specific Azure services based on their
            public outbound IP address range.
          items:
            type: string
          type: array
        allowed_subnet_ids:
          description: |-
            A list of virtual network subnet ids that are allowed to access the
            storage account.
          items:
            type: string
          type: array
      type: object
    ClusterUpdate.CloudStorage.GCP:
      type: object
    ClusterUpdate.ClusterConfiguration:
      properties:
        custom_properties:
          type: object
      type: object
    ConnectedEndpoint:
      description: ConnectedEndpoint defines endpoint connection connected to Redpanda GCP PSC (Private Service Connect) service.
      properties:
        connection_id:
          description: Connection ID of the endpoint.
          type: string
        consumer_network:
          description: |-
            Network of the consumer connecting to Redpanda GCP Private Service Connect service.
            See the official [GCP documentation](https://www.googleapis.com/compute/v1/projects/my-project/global/networks/vpc-consumer-psc) for Private Service Connect.
          type: string
        endpoint:
          description: |-
            Connection endpoint.
            See the official [GCP API reference](https://www.googleapis.com/compute/v1/projects/my-project/regions/us-west2/forwardingRules/vpc-consumer-psc) for Private Service Connect.
          type: string
        status:
          description: |-
            Endpoint status (ACCEPTED | REJECTED).

            The ServiceAttachment API resource (https://cloud.google.com/compute/docs/reference/rest/v1/serviceAttachments)
             does have more fields, such as connection ID & consumer network, but the Terraform provider
             (https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/compute_service_attachment#nested_connected_endpoints)
             doesn't return them as outputs.
          type: string
      type: object
    ConnectionType:
      description: |-
        Cluster connection type.
        Private clusters are not exposed to the internet.
        For BYOC clusters, **Private** is best-practice.
      enum:
        - CONNECTION_TYPE_PUBLIC
        - CONNECTION_TYPE_PRIVATE
      type: string
    ConsumerOffsetSyncOptions:
      properties:
        effective_interval:
          readOnly: true
          title: The effective interval for the task
          type: string
        group_filters:
          items:
            $ref: '#/components/schemas/NameFilter'
          title: The filters
          type: array
        interval:
          title: |-
            Sync interval
            If 0 provided, defaults to 30 seconds
          type: string
        paused:
          title: |-
            Allows user to pause the consumer offset sync task.  If paused, then
            the task will enter the 'paused' state and not sync consumer offsets from
            the source cluster
          type: boolean
      title: Options for syncing consumer offsets
      type: object
    CreateClusterMetadata:
      description: Resource describing an in-progress CreateCluster Operation.
      properties:
        cluster_id:
          description: ID of the Cluster created by this operation.
          type: string
      title: CreateClusterMetadata
      type: object
    CreateClusterOperation:
      description: CreateClusterOperation is the response of the create cluster rpc.
      properties:
        operation:
          $ref: '#/components/schemas/v1.Operation'
      type: object
    CreateClusterRequest:
      description: CreateClusterRequest is the request of CreateCluster.
      properties:
        cluster:
          $ref: '#/components/schemas/ClusterCreate'
      type: object
    CreateClusterResponse:
      description: CreateClusterResponse is the request of CreateCluster.
      properties:
        cluster:
          $ref: '#/components/schemas/Cluster'
      type: object
    CreateGroupRequest:
      description: CreateGroupRequest is the request of CreateGroup.
      properties:
        group:
          $ref: '#/components/schemas/GroupCreate'
      type: object
    CreateGroupResponse:
      properties:
        group:
          $ref: '#/components/schemas/Group'
      type: object
    CreateNetworkMetadata:
      description: Resource describing an in-progress CreateNetwork Operation.
      properties:
        network_id:
          description: ID of the network created by this Operation.
          type: string
      title: CreateNetworkMetadata
      type: object
    CreateNetworkOperation:
      description: CreateNetworkOperation is the response of the create network rpc.
      properties:
        operation:
          $ref: '#/components/schemas/v1.Operation'
      type: object
    CreateNetworkPeeringBody:
      properties:
        network_peering:
          properties:
            aws:
              $ref: '#/components/schemas/AWSPeeringSpec'
            azure:
              $ref: '#/components/schemas/AzurePeeringSpec'
            cloud_provider:
              $ref: '#/components/schemas/CloudProvider'
            display_name:
              type: string
            gcp:
              $ref: '#/components/schemas/GCPPeeringSpec'
          type: object
      type: object
    CreateNetworkPeeringMetadata:
      description: Resource describing an in-progress CreateNetworkPeering Operation.
      properties:
        network_peering_id:
          description: ID of the network peering created by this Operation.
          type: string
      title: CreateNetworkPeeringMetadata
      type: object
    CreateNetworkPeeringOperation:
      description: CreateNetworkPeeringOperation is the response of the create network peering rpc.
      properties:
        operation:
          $ref: '#/components/schemas/v1.Operation'
      type: object
    CreateNetworkPeeringResponse:
      properties:
        network_peering:
          $ref: '#/components/schemas/NetworkPeering'
      type: object
    CreateNetworkRequest:
      description: CreateNetworkRequest is the request of CreateNetwork.
      properties:
        network:
          $ref: '#/components/schemas/NetworkCreate'
      required:
        - network
      type: object
    CreateNetworkResponse:
      description: CreateNetworkResponse is the request of CreateNetwork.
      properties:
        network:
          $ref: '#/components/schemas/Network'
      type: object
    CreateResourceGroupRequest:
      description: CreateResourceGroupRequest is the request of CreateResourceGroup.
      properties:
        resource_group:
          $ref: '#/components/schemas/ResourceGroupCreate'
      type: object
    CreateResourceGroupResponse:
      description: CreateResourceGroupResponse is the response of CreateResourceGroup.
      properties:
        resource_group:
          $ref: '#/components/schemas/ResourceGroup'
      type: object
    CreateRoleBindingRequest:
      description: CreateRoleBindingRequest is the request of CreateRoleBinding.
      properties:
        role_binding:
          $ref: '#/components/schemas/RoleBindingCreate'
      type: object
    CreateRoleBindingResponse:
      properties:
        role_binding:
          $ref: '#/components/schemas/v1.RoleBinding'
      type: object
    CreateRoleRequest:
      description: CreateRoleRequest is the request of CreateRole.
      properties:
        role:
          $ref: '#/components/schemas/RoleCreate'
      type: object
    CreateRoleResponse:
      properties:
        role:
          $ref: '#/components/schemas/v1.Role'
      type: object
    CreateServerlessClusterMetadata:
      description: Resource describing an in-progress CreateServerlessCluster Operation.
      properties:
        serverless_cluster_id:
          description: ID of the ServerlessCluster created by this operation.
          type: string
      title: CreateServerlessClusterMetadata
      type: object
    CreateServerlessClusterOperation:
      description: CreateServerlessClusterOperation is the response of the create serverless_cluster rpc.
      properties:
        operation:
          $ref: '#/components/schemas/v1.Operation'
      type: object
    CreateServerlessClusterRequest:
      description: CreateServerlessClusterRequest is the request of CreateServerlessCluster.
      properties:
        serverless_cluster:
          $ref: '#/components/schemas/ServerlessClusterCreate'
      type: object
    CreateServerlessClusterResponse:
      description: CreateServerlessClusterResponse is the request of CreateServerlessCluster.
      properties:
        serverless_cluster:
          $ref: '#/components/schemas/ServerlessCluster'
      type: object
    CreateServerlessPrivateLinkMetadata:
      description: Resource describing an in-progress CreateServerlessPrivateLink Operation.
      properties:
        serverless_private_link_id:
          type: string
      title: CreateServerlessPrivateLinkMetadata
      type: object
    CreateServerlessPrivateLinkOperation:
      properties:
        operation:
          $ref: '#/components/schemas/v1.Operation'
      type: object
    CreateServerlessPrivateLinkRequest:
      properties:
        serverless_private_link:
          $ref: '#/components/schemas/ServerlessPrivateLinkCreate'
      type: object
    CreateServiceAccountRequest:
      description: CreateServiceAccountRequest is the request of CreateServiceAccount.
      properties:
        service_account:
          $ref: '#/components/schemas/ServiceAccountCreate'
      type: object
    CreateServiceAccountResponse:
      properties:
        service_account:
          $ref: '#/components/schemas/ServiceAccount'
      type: object
    CreateShadowLinkOperation:
      description: CreateShadowLinkOperation wraps the Operation for creating a shadow link.
      properties:
        operation:
          $ref: '#/components/schemas/v1.Operation'
      type: object
    CreateShadowLinkResponse:
      properties:
        shadow_link:
          $ref: '#/components/schemas/v2.ShadowLink'
      title: Response to creating a shadow link
      type: object
    CreateUserInviteRequest:
      properties:
        user_invite:
          $ref: '#/components/schemas/UserInviteCreate'
      type: object
    CreateUserInviteResponse:
      properties:
        user_invite:
          $ref: '#/components/schemas/UserInvite'
      type: object
    Created:
      properties:
        aws:
          $ref: '#/components/schemas/Created.AWS'
        azure:
          $ref: '#/components/schemas/Created.Azure'
        gcp:
          $ref: '#/components/schemas/Created.GCP'
      type: object
    Created.AWS:
      properties:
        vpc_peering_connection_id:
          type: string
      type: object
    Created.Azure:
      properties:
        application_id:
          type: string
        application_object_id:
          type: string
      type: object
    Created.GCP:
      properties:
        vpc_network_peering_name:
          type: string
      type: object
    CustomerManagedAWSCloudStorageBucket:
      description: AWS storage bucket properties by ARN.
      properties:
        arn:
          description: AWS storage bucket identifier.
          type: string
      required:
        - arn
      title: AWS Storage Bucket
      type: object
    CustomerManagedAWSSubnets:
      description: AWS Subnets Specification
      properties:
        arns:
          description: AWS subnet identifiers.
          items:
            type: string
          type: array
      required:
        - arns
      title: AWS Subnets
      type: object
    CustomerManagedAWSVPC:
      description: AWS VPC Specification
      properties:
        arn:
          description: AWS VPC identifier.
          type: string
      required:
        - arn
      title: AWS VPC
      type: object
    CustomerManagedAzureBucketSpec:
      description: Azure Bucket Specification
      properties:
        resource_group:
          $ref: '#/components/schemas/CustomerManagedAzureResourceGroupSpec'
        storage_account_name:
          title: |-
            Naming convention: Between 3 and 24 characters and use numbers and lower-case letters only.
            https://learn.microsoft.com/en-us/rest/api/storagerp/storage-accounts/create?view=rest-storagerp-2023-05-01&tabs=HTTP
          type: string
        storage_container_name:
          title: |-
            Naming convention: Between 3 and 63 characters and use numbers, lower-case letters and dash (-) only.
                               Every dash (-) character must be immediately preceded and followed by a letter or number.
            https://learn.microsoft.com/en-us/rest/api/storagerp/blob-containers/create?view=rest-storagerp-2023-05-01&tabs=HTTP
          type: string
      required:
        - storage_account_name
        - storage_container_name
      title: Azure Bucket
      type: object
    CustomerManagedAzureResourceGroupSpec:
      description: Azure Resource Group Specification
      properties:
        name:
          title: |-
            Naming convention: Between 1 and 90 characters long. Alphanumerics, underscores, parentheses, hyphens, periods. Can't end with period.
            https://azure.github.io/PSRule.Rules.Azure/en/rules/Azure.ResourceGroup.Name/
          type: string
      required:
        - name
      title: Azure Resource Group
      type: object
    CustomerManagedDynamoDBTable:
      description: AWS DynamoDB table specification.
      properties:
        arn:
          description: AWS DynamoDB table identifier.
          type: string
      required:
        - arn
      title: AWS DynamoDB Table
      type: object
    CustomerManagedGoogleCloudStorageBucket:
      description: GCP storage bucket properties.
      properties:
        name:
          description: 'Name of GCP storage bucket. See the official [GCP documentation](https://cloud.google.com/storage/docs/buckets#naming) for naming restrictions.'
          type: string
      required:
        - name
      title: GCP Storage Bucket
      type: object
    CustomerManagedResourcesUpdate:
      properties:
        aws:
          $ref: '#/components/schemas/CustomerManagedResourcesUpdate.AWS'
        gcp:
          $ref: '#/components/schemas/CustomerManagedResourcesUpdate.GCP'
      title: The cloud resources created by user that can be updated
      type: object
    CustomerManagedResourcesUpdate.AWS:
      description: AWS resources managed by user.
      properties:
        oxla_node_group_instance_profile:
          $ref: '#/components/schemas/AWSInstanceProfile'
        oxla_security_group:
          $ref: '#/components/schemas/AWSSecurityGroup'
        redpanda_connect_node_group_instance_profile:
          $ref: '#/components/schemas/AWSInstanceProfile'
        redpanda_connect_security_group:
          $ref: '#/components/schemas/AWSSecurityGroup'
      title: AWS Customer-Managed Resoures
      type: object
    CustomerManagedResourcesUpdate.GCP:
      description: GCP resources managed by user.
      properties:
        psc_nat_subnet_name:
          description: |-
            NAT subnet name if GCP Private Service Connect (a.k.a. Private Link) is enabled.
            If it is used for PSC v1, use psc_v2_nat_subnet_name to set NAT subnet name for PSC v2.
          type: string
        psc_v2_nat_subnet_name:
          description: |-
            NAT subnet name for PSC v2 if GCP Private Service Connect (a.k.a. Private Link) is enabled and
            psc_nat_subnet_name is used for PSC v1.
          type: string
        redpanda_connect_api_service_account:
          $ref: '#/components/schemas/GCPServiceAccount'
        redpanda_connect_service_account:
          $ref: '#/components/schemas/GCPServiceAccount'
        redpanda_operator_service_account:
          $ref: '#/components/schemas/GCPServiceAccount'
      title: GCP Customer-Managed Resoures
      type: object
    DNSEntry:
      properties:
        dns_name:
          description: DNS entry of VPC endpoint connected to Redpanda AWS PrivateLink Endpoint Service.
          example: vpce-0751b7ad8a51777f2-1hpievf5.vpce-svc-0d489fa89f24e3802.us-east-2.vpce.amazonaws.com
          type: string
        hosted_zone_id:
          description: The ID of Route53 DNS zone.
          type: string
      type: object
    DayHour:
      properties:
        day_of_week:
          $ref: '#/components/schemas/DayOfWeek'
        hour_of_day:
          format: int32
          title: always UTC
          type: integer
      type: object
    DayOfWeek:
      description: |-
        Represents a day of the week.

         - MONDAY: Monday
         - TUESDAY: Tuesday
         - WEDNESDAY: Wednesday
         - THURSDAY: Thursday
         - FRIDAY: Friday
         - SATURDAY: Saturday
         - SUNDAY: Sunday
      enum:
        - MONDAY
        - TUESDAY
        - WEDNESDAY
        - THURSDAY
        - FRIDAY
        - SATURDAY
        - SUNDAY
      type: string
    DeleteClusterMetadata:
      description: Resource describing an in-progress DeleteCluster Operation.
      properties:
        required_action:
          type: string
      title: DeleteClusterMetadata
      type: object
    DeleteClusterOperation:
      description: DeleteClusterOperation is the response of the delete cluster rpc.
      properties:
        operation:
          $ref: '#/components/schemas/v1.Operation'
      type: object
    DeleteClusterResponse:
      description: DeleteClusterResponse is the request of DeleteCluster.
      type: object
    DeleteGroupResponse:
      type: object
    DeleteNetworkMetadata:
      description: Resource describing an in-progress DeleteNetwork Operation.
      title: DeleteNetworkMetadata
      type: object
    DeleteNetworkOperation:
      description: DeleteNetworkOperation is the response of the delete network rpc.
      properties:
        operation:
          $ref: '#/components/schemas/v1.Operation'
      type: object
    DeleteNetworkPeeringMetadata:
      description: Resource describing an in-progress DeleteNetworkPeering Operation.
      title: DeleteNetworkPeeringMetadata
      type: object
    DeleteNetworkPeeringOperation:
      description: DeleteNetworkPeeringOperation is the response of the delete network peering rpc.
      properties:
        operation:
          $ref: '#/components/schemas/v1.Operation'
      type: object
    DeleteNetworkPeeringResponse:
      type: object
    DeleteNetworkResponse:
      description: DeleteNetworkResponse is the response of DeleteNetwork.
      type: object
    DeleteResourceGroupResponse:
      description: DeleteResourceGroupResponse is the response of DeleteResourceGroup.
      type: object
    DeleteRoleBindingResponse:
      description: DeleteRoleBindingResponse is the response of DeleteRoleBinding.
      type: object
    DeleteRoleResponse:
      type: object
    DeleteServerlessClusterMetadata:
      description: Resource describing an in-progress DeleteServerlessCluster Operation.
      title: DeleteServerlessClusterMetadata
      type: object
    DeleteServerlessClusterOperation:
      description: DeleteServerlessClusterOperation is the response of the delete serverless_cluster rpc.
      properties:
        operation:
          $ref: '#/components/schemas/v1.Operation'
      type: object
    DeleteServerlessClusterResponse:
      description: DeleteServerlessClusterResponse is the request of DeleteServerlessCluster.
      type: object
    DeleteServerlessPrivateLinkMetadata:
      description: Resource describing an in-progress DeleteServerlessPrivateLink Operation.
      title: DeleteServerlessPrivateLinkMetadata
      type: object
    DeleteServerlessPrivateLinkOperation:
      properties:
        operation:
          $ref: '#/components/schemas/v1.Operation'
      type: object
    DeleteServiceAccountResponse:
      type: object
    DeleteShadowLinkOperation:
      description: DeleteShadowLinkOperation wraps the Operation for deleting a shadow link.
      properties:
        operation:
          $ref: '#/components/schemas/v1.Operation'
      type: object
    DeleteShadowLinkResponse:
      title: Response to deleting a shadow link
      type: object
    DeleteUserInviteResponse:
      type: object
    DeleteUserResponse:
      type: object
    EarliestOffset:
      description: Start at the earliest offset in the partition.
      type: object
    Endpoints:
      description: The endpoints of Redpanda HTTP Proxy or Schema Registry.
      properties:
        mtls:
          description: 'URL of the seed broker for mTLS. If mTLS is not enabled, the field is empty.'
          type: string
        private_link_mtls:
          description: 'URL of the seed broker for private link with mTLS. If private link with mTLS is not enabled, the field is empty.'
          type: string
        private_link_sasl:
          description: 'URL of the seed broker for private link with SASL. If private link with SASL is not enabled, the field is empty.'
          type: string
        sasl:
          description: 'URL of the seed broker for SASL. If SASL is not enabled, the field is empty.'
          type: string
      type: object
    ErrorInfo:
      description: |-
        Describes the cause of the error with structured details.

        Example of an error when contacting the "pubsub.googleapis.com" API when it
        is not enabled:

            { "reason": "API_DISABLED"
              "domain": "googleapis.com"
              "metadata": {
                "resource": "projects/123",
                "service": "pubsub.googleapis.com"
              }
            }

        This response indicates that the pubsub.googleapis.com API is not enabled.

        Example of an error that is returned when attempting to create a Spanner
        instance in a region that is out of stock:

            { "reason": "STOCKOUT"
              "domain": "spanner.googleapis.com",
              "metadata": {
                "availableRegions": "us-central1,us-east2"
              }
            }
      properties:
        domain:
          description: |-
            The logical grouping to which the "reason" belongs. The error domain
            is typically the registered service name of the tool or product that
            generates the error. Example: "pubsub.googleapis.com". If the error is
            generated by some common infrastructure, the error domain must be a
            globally unique value that identifies the infrastructure. For Google API
            infrastructure, the error domain is "googleapis.com".
          type: string
        metadata:
          additionalProperties:
            type: string
          description: |-
            Additional structured details about this error.

            Keys must match a regular expression of `[a-z][a-zA-Z0-9-_]+` but should
            ideally be lowerCamelCase. Also, they must be limited to 64 characters in
            length. When identifying the current value of an exceeded limit, the units
            should be contained in the key, not the value.  For example, rather than
            `{"instanceLimit": "100/request"}`, should be returned as,
            `{"instanceLimitPerRequest": "100"}`, if the client exceeds the number of
            instances that can be created in a single (batch) request.
          type: object
        reason:
          description: |-
            The reason of the error. This is a constant value that identifies the
            proximate cause of the error. Error reasons are unique within a particular
            domain of errors. This should be at most 63 characters and match a
            regular expression of `[A-Z][A-Z0-9_]+[A-Z0-9]`, which represents
            UPPER_SNAKE_CASE.
          type: string
      title: ErrorInfo
      type: object
    FailOverResponse:
      properties:
        shadow_link:
          $ref: '#/components/schemas/v2.ShadowLink'
      title: The response to the FailOverRequest
      type: object
    FieldViolation:
      description: A message type used to describe a single bad request field.
      properties:
        description:
          description: A description of why the request element is bad.
          type: string
        field:
          description: |-
            A path that leads to a field in the request body. The value will be a
            sequence of dot-separated identifiers that identify a protocol buffer
            field.

            Consider the following:

                message CreateContactRequest {
                  message EmailAddress {
                    enum Type {
                      TYPE_UNSPECIFIED = 0;
                      HOME = 1;
                      WORK = 2;
                    }

                    optional string email = 1;
                    repeated EmailType type = 2;
                  }

                  string full_name = 1;
                  repeated EmailAddress email_addresses = 2;
                }

            In this example, in proto `field` could take one of the following values:

            * `full_name` for a violation in the `full_name` value
            * `email_addresses[1].email` for a violation in the `email` field of the
              first `email_addresses` message
            * `email_addresses[3].type[2]` for a violation in the second `type`
              value in the third `email_addresses` message.

            In JSON, the same values are represented as:

            * `fullName` for a violation in the `fullName` value
            * `emailAddresses[1].email` for a violation in the `email` field of the
              first `emailAddresses` message
            * `emailAddresses[3].type[2]` for a violation in the second `type`
              value in the third `emailAddresses` message.
          type: string
        localized_message:
          $ref: '#/components/schemas/LocalizedMessage'
        reason:
          description: |-
            The reason of the field-level error. This is a constant value that
            identifies the proximate cause of the field-level error. It should
            uniquely identify the type of the FieldViolation within the scope of the
            google.rpc.ErrorInfo.domain. This should be at most 63
            characters and match a regular expression of `[A-Z][A-Z0-9_]+[A-Z0-9]`,
            which represents UPPER_SNAKE_CASE.
          type: string
      type: object
    FilterType:
      description: |-
        - FILTER_TYPE_INCLUDE: Include the items that match the filter
         - FILTER_TYPE_EXCLUDE: Exclude the items that match the filter
      enum:
        - FILTER_TYPE_INCLUDE
        - FILTER_TYPE_EXCLUDE
      title: 'What type of filter this is, include or exclude'
      type: string
    GCP.Subnet:
      description: 'GCP subnet properties. See the official [GCP API reference](https://cloud.google.com/compute/docs/reference/rest/v1/subnetworks).'
      properties:
        k8s_master_ipv4_range:
          description: 'Kubernetes Master IPv4 range, e.g. 10.0.0.0/24.'
          type: string
        name:
          description: Subnet name.
          type: string
        secondary_ipv4_range_pods:
          $ref: '#/components/schemas/SecondaryIPv4Range'
        secondary_ipv4_range_services:
          $ref: '#/components/schemas/SecondaryIPv4Range'
      required:
        - name
        - secondary_ipv4_range_pods
        - secondary_ipv4_range_services
        - k8s_master_ipv4_range
      title: Subnet
      type: object
    GCPPeeringSpec:
      properties:
        peer_project_id:
          type: string
        peer_vpc_name:
          type: string
      title: 'https://cloud.google.com/vpc/docs/vpc-peering'
      type: object
    GCPPrivateServiceConnect:
      properties:
        consumer_accept_list:
          description: List of consumers that are allowed to connect to Redpanda GCP PSC (Private Service Connect) service attachment.
          items:
            $ref: '#/components/schemas/GCPPrivateServiceConnectConsumer'
          type: array
        enabled:
          description: Whether Redpanda GCP Private Service Connect is enabled.
          type: boolean
        global_access_enabled:
          description: Whether global access is enabled.
          type: boolean
        http_proxy_auth_mode:
          $ref: '#/components/schemas/PrivateLinkAuthMode'
        kafka_api_auth_mode:
          $ref: '#/components/schemas/PrivateLinkAuthMode'
        schema_registry_auth_mode:
          $ref: '#/components/schemas/PrivateLinkAuthMode'
        status:
          $ref: '#/components/schemas/GCPPrivateServiceConnect.Status'
      type: object
    GCPPrivateServiceConnect.Status:
      properties:
        connected_endpoints:
          description: List of VPC endpoints with established connections to GCP Private Service Connect.
          items:
            $ref: '#/components/schemas/ConnectedEndpoint'
          type: array
        created_at:
          description: Redpanda GCP Private Service Connect service creation timestamp.
          format: date-time
          type: string
        deleted_at:
          description: Redpanda GCP Private Service Connect service deletion timestamp.
          format: date-time
          type: string
        dns_a_records:
          description: Customer-created DNS A records that point at the PSC endpoint on the consumer side.
          items:
            type: string
          type: array
        kafka_api_node_base_port:
          description: Kafka API node service base port. The port for node `i` (0 .. node_count-1) is kafka_api_node_base_port + `i`.
          format: int32
          type: integer
        kafka_api_seed_port:
          description: Kafka API seed service port.
          format: int32
          type: integer
        redpanda_proxy_node_base_port:
          description: HTTP Proxy node service base port. The port for node `i` (0 .. node_count-1) is redpanda_proxy_node_base_port + `i`.
          format: int32
          type: integer
        redpanda_proxy_seed_port:
          description: HTTP Proxy seed service port.
          format: int32
          type: integer
        schema_registry_seed_port:
          description: Schema Registry seed service port.
          format: int32
          type: integer
        seed_hostname:
          description: Hostname for clients to initiate connections to the APIs exposed through Private Service Connect.
          type: string
        service_attachment:
          description: Service attachment used by consumers to create endpoint connections to Redpanda GCP Private Service Connect service.
          type: string
      type: object
    GCPPrivateServiceConnectConsumer:
      description: GCP Private Service Connect consumer specifications.
      properties:
        source:
          description: Either the GCP project number or its alphanumeric ID.
          example: gcp-project-1
          type: string
      type: object
    GCPPrivateServiceConnectSpec:
      properties:
        consumer_accept_list:
          description: List of consumers that are allowed to connect to Redpanda GCP PSC (Private Service Connect) service attachment.
          items:
            $ref: '#/components/schemas/GCPPrivateServiceConnectConsumer'
          type: array
        enabled:
          description: Whether Redpanda GCP Private Service Connect is enabled.
          type: boolean
        global_access_enabled:
          description: Whether global access is enabled.
          type: boolean
        http_proxy_auth_mode:
          $ref: '#/components/schemas/PrivateLinkAuthMode'
        kafka_api_auth_mode:
          $ref: '#/components/schemas/PrivateLinkAuthMode'
        schema_registry_auth_mode:
          $ref: '#/components/schemas/PrivateLinkAuthMode'
      type: object
    GCPServiceAccount:
      description: GCP service account.
      properties:
        email:
          description: GCP service account email.
          type: string
      required:
        - email
      title: Service Account
      type: object
    GetClusterResponse:
      description: GetClusterResponse is the request of GetCluster.
      properties:
        cluster:
          $ref: '#/components/schemas/Cluster'
      type: object
    GetCurrentOrganizationResponse:
      properties:
        organization:
          $ref: '#/components/schemas/Organization'
      title: |-
        GetCurrentOrganizationResponse the response of the the
        GetCurrentOrganization rpc
      type: object
    GetGroupResponse:
      properties:
        group:
          $ref: '#/components/schemas/Group'
      type: object
    GetNetworkPeeringRequest:
      properties:
        id:
          type: string
        network_id:
          type: string
      type: object
    GetNetworkPeeringResponse:
      properties:
        network_peering:
          $ref: '#/components/schemas/NetworkPeering'
      type: object
    GetNetworkResponse:
      description: GetNetworkRequest is the request of GetNetwork.
      properties:
        network:
          $ref: '#/components/schemas/Network'
      type: object
    GetOperationResponse:
      properties:
        operation:
          $ref: '#/components/schemas/v1.Operation'
      title: GetOperationResponse is the request of GetOperation
      type: object
    GetPrometheusCredentialsResponse:
      properties:
        prometheus_credentials:
          $ref: '#/components/schemas/PrometheusCredentials'
      type: object
    GetRegionResponse:
      properties:
        region:
          $ref: '#/components/schemas/Region'
      type: object
    GetResourceGroupResponse:
      description: GetResourceGroupResponse is the response of GetResourceGroup.
      properties:
        resource_group:
          $ref: '#/components/schemas/ResourceGroup'
      type: object
    GetRoleBindingResponse:
      properties:
        role_binding:
          $ref: '#/components/schemas/v1.RoleBinding'
      type: object
    GetRoleResponse:
      properties:
        role:
          $ref: '#/components/schemas/v1.Role'
      type: object
    GetServerlessClusterResponse:
      description: GetServerlessClusterResponse is the request of GetServerlessCluster.
      properties:
        serverless_cluster:
          $ref: '#/components/schemas/ServerlessCluster'
      type: object
    GetServerlessPrivateLinkResponse:
      properties:
        serverless_private_link:
          $ref: '#/components/schemas/ServerlessPrivateLink'
      type: object
    GetServerlessRegionResponse:
      description: GetServerlessRegionResponse is the response of GetServerlessRegions.
      properties:
        serverless_region:
          $ref: '#/components/schemas/ServerlessRegion'
      type: object
    GetServiceAccountCredentialsResponse:
      properties:
        credentials:
          $ref: '#/components/schemas/ServiceAccountCredentials'
      type: object
    GetServiceAccountResponse:
      properties:
        service_account:
          $ref: '#/components/schemas/ServiceAccount'
      type: object
    GetShadowTopicResponse:
      properties:
        shadow_topic:
          $ref: '#/components/schemas/ShadowTopic'
      title: Response of to getting a shadow topic
      type: object
    GetUserInviteResponse:
      properties:
        user_invite:
          $ref: '#/components/schemas/UserInvite'
      type: object
    GetUserResponse:
      properties:
        user:
          $ref: '#/components/schemas/User'
      type: object
    Group:
      properties:
        created_at:
          format: date-time
          type: string
        description:
          description: The description of the group.
          example: Engineering team group for RBAC.
          type: string
        id:
          type: string
        name:
          description: The unique name of the group.
          example: engineering
          type: string
      type: object
    GroupCreate:
      properties:
        description:
          description: The description of the group.
          example: Engineering team group for RBAC.
          nullable: true
          type: string
        name:
          description: The unique name of the group.
          example: engineering
          type: string
      type: object
    GroupUpdate:
      properties:
        description:
          description: The description of the group.
          example: Engineering team group for RBAC.
          nullable: true
          type: string
        name:
          description: The unique name of the group.
          example: engineering
          type: string
      type: object
    HTTPProxySpec:
      description: 'Cluster''s HTTP Proxy properties. See [Use Redpanda with the HTTP Proxy API](https://docs.redpanda.com/redpanda-cloud/develop/http-proxy/) and the [HTTP Proxy API reference](https://docs.redpanda.com/api/doc/http-proxy) for more information.'
      properties:
        mtls:
          $ref: '#/components/schemas/MTLSSpec'
        sasl:
          $ref: '#/components/schemas/SASLSpec'
      type: object
    HTTPProxyStatus:
      description: HTTP Proxy properties.
      properties:
        all_urls:
          $ref: '#/components/schemas/Endpoints'
        mtls:
          $ref: '#/components/schemas/MTLSSpec'
        sasl:
          $ref: '#/components/schemas/SASLSpec'
        url:
          description: HTTP Proxy URL of cluster.
          example: 'https://pandaproxy-aa0000l0.cjb69h1c4vs42pca89s0.fmc.prd.cloud.redpanda.com:9092'
          readOnly: true
          type: string
      type: object
    Help:
      description: |-
        Provides links to documentation or for performing an out of band action.

        For example, if a quota check failed with an error indicating the calling
        project hasn't enabled the accessed service, this can contain a URL pointing
        directly to the right place in the developer console to flip the bit.
      properties:
        links:
          description: URL(s) pointing to additional information on handling the current error.
          items:
            $ref: '#/components/schemas/Link'
          type: array
      title: Help
      type: object
    Identity:
      properties:
        connection:
          type: string
        is_primary:
          type: boolean
        provider:
          type: string
        user_id:
          type: string
      type: object
    KafkaAPISpec:
      description: Cluster's Kafka API properties.
      properties:
        mtls:
          $ref: '#/components/schemas/MTLSSpec'
        sasl:
          $ref: '#/components/schemas/SASLSpec'
      type: object
    KafkaConnect:
      properties:
        enabled:
          type: boolean
      type: object
    KeyVault:
      description: Azure Key Vault.
      properties:
        name:
          title: |-
            Naming convention: Between 3 and 24 characters and begin with a letter, end with a letter or digit, and not contain consecutive hyphens.
            https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/resource-name-rules
          type: string
      required:
        - name
      type: object
    KeyVaults:
      description: Azure key vaults used by Redpanda Cluster. All key vaults shall be in redpanda_resource_group.
      properties:
        console_vault:
          $ref: '#/components/schemas/KeyVault'
        management_vault:
          $ref: '#/components/schemas/KeyVault'
      required:
        - management_vault
        - console_vault
      title: Azure Key Vaults
      type: object
    LatestOffset:
      description: Start at the latest offset in the partition.
      type: object
    Link:
      description: Describes a URL link.
      properties:
        description:
          description: Describes what the link offers.
          type: string
        url:
          description: The URL of the link.
          type: string
      type: object
    ListAvailableOrganizationsResponse:
      properties:
        next_page_token:
          type: string
        organizations:
          items:
            $ref: '#/components/schemas/Organization'
          type: array
      title: |-
        GetAvalableOrganizationsResponse the response of the
        GetAvalableOrganizations rpc
      type: object
    ListClustersRequest.Filter:
      properties:
        cloud_provider:
          $ref: '#/components/schemas/CloudProvider'
        name_contains:
          description: Name of cluster.
          type: string
        network_id:
          description: Network ID.
          type: string
        region:
          description: Cloud provider region.
          type: string
        resource_group_id:
          description: Resource group ID.
          type: string
      type: object
    ListClustersResponse:
      description: ListClustersResponse is the response of ListClusters.
      properties:
        clusters:
          description: Clusters matching the request.
          items:
            $ref: '#/components/schemas/Cluster'
          maxItems: 100
          type: array
        next_page_token:
          description: Page token to fetch the next page. The value can be used as `next_page_token` in the next call to this endpoint.
          type: string
      type: object
    ListGroupsRequest.Filter:
      properties:
        name:
          type: string
      type: object
    ListGroupsResponse:
      description: ListGroupsResponse is the response of ListGroups.
      properties:
        groups:
          description: Groups matching the request
          items:
            $ref: '#/components/schemas/Group'
          maxItems: 100
          type: array
        next_page_token:
          type: string
      type: object
    ListNetworkPeeringsResponse:
      properties:
        network_peerings:
          items:
            $ref: '#/components/schemas/NetworkPeering'
          type: array
      type: object
    ListNetworksRequest.Filter:
      properties:
        cloud_provider:
          $ref: '#/components/schemas/CloudProvider'
        name_contains:
          description: Name of network.
          type: string
        region:
          description: Name of cloud provider region.
          type: string
        resource_group_id:
          description: Resource group ID.
          type: string
      type: object
    ListNetworksResponse:
      description: ListNetworksResponse is the response of ListNetworks.
      properties:
        networks:
          description: Networks matching the request
          items:
            $ref: '#/components/schemas/Network'
          maxItems: 100
          type: array
        next_page_token:
          type: string
      type: object
    ListOperationsRequest.Filter:
      properties:
        resource_id:
          type: string
        state:
          $ref: '#/components/schemas/Operation.State'
        type_in:
          items:
            $ref: '#/components/schemas/Operation.Type'
          type: array
      type: object
    ListOperationsResponse:
      properties:
        next_page_token:
          description: |-
            Page Token to fetch the next page. The value can be used as
            next_page_token in the next call to this endpoint. since the pagination is
            cursor based the last page will be encountered when the next page token is
            not set and the operations list is empty.
          type: string
        operations:
          description: Operations matching the request
          items:
            $ref: '#/components/schemas/v1.Operation'
          maxItems: 100
          type: array
      title: ListOperationsResponse is the response of ListOperations
      type: object
    ListPermissionsResponse:
      description: ListPermissionsResponse is the response of ListPermissions.
      properties:
        permissions:
          description: List of available permissions
          example:
            - iam_role_create
            - iam_role_read
            - iam_role_update
          items:
            $ref: '#/components/schemas/Permission'
          type: array
      type: object
    ListRegionsRequest.Filter:
      properties:
        cluster_type:
          $ref: '#/components/schemas/Cluster.Type'
      type: object
    ListRegionsResponse:
      properties:
        next_page_token:
          description: Page token to fetch the next page. The value can be used as `next_page_token` in the next call to this endpoint.
          type: string
        regions:
          items:
            $ref: '#/components/schemas/Region'
          type: array
      type: object
    ListResourceGroupsRequest.Filter:
      properties:
        name_contains:
          description: Name of resource group. Partial match.
          type: string
      type: object
    ListResourceGroupsResponse:
      description: ListResourceGroupsResponse is the response of ListResourceGroups.
      properties:
        next_page_token:
          type: string
        resource_groups:
          description: Matching resource groups.
          items:
            $ref: '#/components/schemas/ResourceGroup'
          maxItems: 100
          type: array
      type: object
    ListRoleBindingsRequest.Filter:
      properties:
        account:
          nullable: true
          type: string
        account_ids:
          items:
            type: string
          type: array
        role_name:
          nullable: true
          type: string
        scope:
          $ref: '#/components/schemas/Scope'
      type: object
    ListRoleBindingsResponse:
      description: ListRoleBindingsResponse is the response of ListRoleBindings.
      properties:
        next_page_token:
          type: string
        role_bindings:
          description: RoleBindings matching the request
          items:
            $ref: '#/components/schemas/v1.RoleBinding'
          maxItems: 100
          type: array
      type: object
    ListRolesRequest.Filter:
      properties:
        name:
          type: string
      type: object
    ListRolesResponse:
      description: ListRolesResponse is the response of ListRoles.
      properties:
        next_page_token:
          type: string
        roles:
          description: Roles matching the request
          items:
            $ref: '#/components/schemas/v1.Role'
          maxItems: 100
          type: array
      type: object
    ListServerlessClustersRequest.Filter:
      properties:
        name_contains:
          description: Name of cluster. Partial match.
          type: string
        private_link_id:
          title: Private link ID of Serverless cluster
          type: string
        resource_group_id:
          description: Resource group ID of Serverless cluster.
          type: string
        serverless_region:
          title: Region in which Serverless cluster is hosted
          type: string
        state_in:
          description: States of Serverless cluster.
          items:
            $ref: '#/components/schemas/ServerlessCluster.State'
          type: array
      type: object
    ListServerlessClustersResponse:
      description: ListServerlessClustersResponse is the response of ListServerlessClusters.
      properties:
        next_page_token:
          description: Page Token to fetch the next page. The value can be used as next_page_token in the next call to this endpoint.
          type: string
        serverless_clusters:
          description: Serverless clusters matching the request
          items:
            $ref: '#/components/schemas/ServerlessCluster'
          maxItems: 100
          type: array
      type: object
    ListServerlessPrivateLinksRequest.Filter:
      properties:
        name_contains:
          description: Name of private link. Partial match.
          type: string
        resource_group_id:
          description: Resource group ID of Serverless private link.
          type: string
        serverless_region:
          title: Display name of the region in which Serverless private link is hosted
          type: string
        state_in:
          description: States of Serverless private link.
          items:
            $ref: '#/components/schemas/ServerlessPrivateLink.State'
          type: array
      type: object
    ListServerlessPrivateLinksResponse:
      properties:
        next_page_token:
          description: |-
            Token to retrieve the next page of results, or empty if there are no more
            results.
          type: string
        serverless_private_links:
          description: The list of serverless private links.
          items:
            $ref: '#/components/schemas/ServerlessPrivateLink'
          type: array
      type: object
    ListServerlessRegionsRequest.Filter:
      properties:
        placement_enabled_only:
          description: Only select regions with placement enabled.
          type: boolean
      type: object
    ListServerlessRegionsResponse:
      description: ListServerlessRegionsResponse is the response of ListServerlessRegions.
      properties:
        next_page_token:
          description: Page token to fetch the next page. The value can be used as `next_page_token` in the next call to this endpoint.
          type: string
        serverless_regions:
          description: Serverless regions matching the request.
          items:
            $ref: '#/components/schemas/ServerlessRegion'
          type: array
      type: object
    ListServiceAccountsRequest.Filter:
      properties:
        name:
          type: string
      type: object
    ListServiceAccountsResponse:
      description: ListServiceAccountsResponse is the response of ListServiceAccounts.
      properties:
        next_page_token:
          type: string
        service_accounts:
          description: ServiceAccounts matching the request
          items:
            $ref: '#/components/schemas/ServiceAccount'
          maxItems: 100
          type: array
      type: object
    ListShadowLinksRequest.Filter:
      properties:
        resource_group_id:
          description: Filter by resource group ID.
          type: string
        shadow_redpanda_id:
          description: Filter by shadow Redpanda cluster ID.
          type: string
      type: object
    ListShadowTopicsResponse:
      properties:
        shadow_topics:
          items:
            $ref: '#/components/schemas/ShadowTopic'
          type: array
      title: Response to listing all shadow topics in a shadow link
      type: object
    ListUserInvitesRequest.Filter:
      type: object
    ListUserInvitesResponse:
      description: ListUserInvitesResponse is the response of ListUserInvites.
      properties:
        next_page_token:
          type: string
        user_invites:
          description: User invites matching the request
          items:
            $ref: '#/components/schemas/UserInvite'
          maxItems: 100
          type: array
      type: object
    ListUsersRequest.Filter:
      type: object
    ListUsersResponse:
      description: ListUsersResponse is the response of ListUsers.
      properties:
        next_page_token:
          type: string
        users:
          description: Users matching the request
          items:
            $ref: '#/components/schemas/User'
          maxItems: 100
          type: array
      type: object
    LocalizedMessage:
      description: |-
        Provides a localized error message that is safe to return to the user
        which can be attached to an RPC error.
      properties:
        locale:
          title: |-
            The locale used following the specification defined at
            https://www.rfc-editor.org/rfc/bcp/bcp47.txt.
            Examples are: "en-US", "fr-CH", "es-MX"
          type: string
        message:
          description: The localized error message in the above locale.
          type: string
      type: object
    MTLSSpec:
      description: mTLS configuration.
      properties:
        ca_certificates_pem:
          description: CA certificate in PEM format.
          example:
            - |-
              -----BEGIN CERTIFICATE-----
              MII........
              -----END CERTIFICATE-----
          items:
            type: string
          type: array
        enabled:
          description: Whether mTLS is enabled.
          type: boolean
        principal_mapping_rules:
          description: 'Principal mapping rules for mTLS authentication. Only valid for Kafka API. See the Redpanda documentation on [configuring authentication](https://docs.redpanda.com/redpanda-cloud/security/cloud-authentication/#mtls).'
          example:
            - 'RULE:.*CN=([^,]+).*/$1/'
          items:
            type: string
          type: array
      type: object
    MaintenanceWindowConfig:
      description: Resource describing the maintenance window configuration of a cluster.
      properties:
        anytime:
          $ref: '#/components/schemas/Anytime'
        day_hour:
          $ref: '#/components/schemas/DayHour'
        unspecified:
          $ref: '#/components/schemas/Unspecified'
      title: MaintenanceWindowConfig
      type: object
    NameFilter:
      properties:
        filter_type:
          $ref: '#/components/schemas/FilterType'
        name:
          title: |-
            The resource name, or "*"
            Note if "*", must be the _only_ character
            and `pattern_type` must be `PATTERN_TYPE_LITERAL`
          type: string
        pattern_type:
          $ref: '#/components/schemas/PatternType'
      title: A filter based on the name of a resource
      type: object
    Network:
      description: Resource describing a Network.
      properties:
        cidr_block:
          description: Network CIDR from where public and private subnets are derived. At least a 21 bits CIDR is required.
          type: string
        cloud_provider:
          $ref: '#/components/schemas/CloudProvider'
        cluster_type:
          $ref: '#/components/schemas/Cluster.Type'
        created_at:
          description: Network creation timestamp.
          format: date-time
          readOnly: true
          type: string
        customer_managed_resources:
          $ref: '#/components/schemas/Network.CustomerManagedResources'
        id:
          description: Network ID. The ID is an output of the Create Network request and cannot be set by the caller.
          readOnly: true
          type: string
        name:
          description: The unique name of the network.
          example: development-network
          type: string
        region:
          description: Region where network is placed.
          type: string
        resource_group_id:
          description: Resource group ID of the network
          example: a0b40af9-0250-48ca-9417-783ed127ce42
          type: string
        state:
          $ref: '#/components/schemas/Network.State'
        updated_at:
          description: Network update timestamp.
          format: date-time
          readOnly: true
          type: string
        zones:
          description: Network availability zones.
          items:
            type: string
          type: array
      required:
        - name
        - resource_group_id
        - cloud_provider
        - region
        - type
      title: Network
      type: object
    Network.CustomerManagedResources:
      description: Cloud resources created by user.
      properties:
        aws:
          $ref: '#/components/schemas/Network.CustomerManagedResources.AWS'
        azure:
          $ref: '#/components/schemas/Network.CustomerManagedResources.Azure'
        gcp:
          $ref: '#/components/schemas/Network.CustomerManagedResources.GCP'
      type: object
    Network.CustomerManagedResources.AWS:
      description: The AWS resources managed by user.
      properties:
        dynamodb_table:
          $ref: '#/components/schemas/CustomerManagedDynamoDBTable'
        management_bucket:
          $ref: '#/components/schemas/CustomerManagedAWSCloudStorageBucket'
        private_subnets:
          $ref: '#/components/schemas/CustomerManagedAWSSubnets'
        vpc:
          $ref: '#/components/schemas/CustomerManagedAWSVPC'
      required:
        - management_bucket
        - dynamodb_table
        - vpc
        - private_subnets
      title: AWS Customer Managed Resources
      type: object
    Network.CustomerManagedResources.Azure:
      description: The Azure resources managed by user.
      properties:
        management_bucket:
          $ref: '#/components/schemas/CustomerManagedAzureBucketSpec'
        subnets:
          $ref: '#/components/schemas/Subnets'
        vnet:
          $ref: '#/components/schemas/Vnet'
      required:
        - management_bucket
        - vnet
        - subnets
      title: Azure Customer Managed Resources
      type: object
    Network.CustomerManagedResources.GCP:
      description: 'GCP resources created and managed by user, and required to deploy the Redpanda cluster. See [Create a BYOVPC Cluster on GCP](https://docs.redpanda.com/redpanda-cloud/get-started/cluster-types/byoc/gcp/vpc-byo-gcp/) for details.'
      properties:
        management_bucket:
          $ref: '#/components/schemas/CustomerManagedGoogleCloudStorageBucket'
        network_name:
          description: |-
            Name of user-created network where the Redpanda cluster is deployed to.
            See the official [GCP API reference](https://cloud.google.com/compute/docs/reference/rest/v1/networks).
          type: string
        network_project_id:
          description: GCP project ID where the network is created.
          type: string
      required:
        - network_name
        - network_project_id
        - management_bucket
      title: GCP Customer Managed Resources
      type: object
    Network.State:
      enum:
        - STATE_CREATING
        - STATE_READY
        - STATE_DELETING
        - STATE_FAILED
      type: string
    NetworkAccessMode:
      description: Network access mode for an endpoint.
      enum:
        - NETWORK_ACCESS_MODE_PRIVATE
        - NETWORK_ACCESS_MODE_PUBLIC
      type: string
    NetworkCreate:
      description: Redpanda Cloud network properties.
      properties:
        cidr_block:
          description: 'Network CIDR from where public and private subnets are derived. At least a 21 bits CIDR is required. For more information, see [Choose CIDR Ranges](https://docs.redpanda.com/redpanda-cloud/networking/cidr-ranges/).'
          type: string
        cloud_provider:
          $ref: '#/components/schemas/CloudProvider'
        cluster_type:
          $ref: '#/components/schemas/Cluster.Type'
        customer_managed_resources:
          $ref: '#/components/schemas/Network.CustomerManagedResources'
        name:
          description: The unique name of the network.
          example: development-network
          type: string
        region:
          description: 'Cloud provider region. See [available cloud providers and regions](https://docs.redpanda.com/redpanda-cloud/reference/tiers/).'
          type: string
        resource_group_id:
          description: Resource group ID of the network
          example: a0b40af9-0250-48ca-9417-783ed127ce42
          type: string
      required:
        - resource_group_id
        - cloud_provider
        - region
        - cluster_type
      title: Network details
      type: object
    NetworkPeering:
      properties:
        aws:
          $ref: '#/components/schemas/AWSPeeringSpec'
        azure:
          $ref: '#/components/schemas/AzurePeeringSpec'
        cloud_provider:
          $ref: '#/components/schemas/CloudProvider'
        created_at:
          format: date-time
          type: string
        deleted_at:
          format: date-time
          type: string
        display_name:
          description: name can be set by the caller. unique within an organization.
          type: string
        gcp:
          $ref: '#/components/schemas/GCPPeeringSpec'
        id:
          title: id is set by the server as a xid
          type: string
        network_id:
          title: xid of the redpanda network resource this peering should apply to
          type: string
        state:
          $ref: '#/components/schemas/NetworkPeering.State'
        status:
          $ref: '#/components/schemas/NetworkPeeringStatus'
        updated_at:
          format: date-time
          type: string
      type: object
    NetworkPeering.State:
      description: |-
        state is information describing the network_peering lifecycle. It is only
        modified by the control plane.
      enum:
        - STATE_CREATING
        - STATE_PENDING_ACCEPTANCE
        - STATE_READY
        - STATE_DELETING
        - STATE_FAILED
      type: string
    NetworkPeeringCreate:
      properties:
        aws:
          $ref: '#/components/schemas/AWSPeeringSpec'
        azure:
          $ref: '#/components/schemas/AzurePeeringSpec'
        cloud_provider:
          $ref: '#/components/schemas/CloudProvider'
        display_name:
          type: string
        gcp:
          $ref: '#/components/schemas/GCPPeeringSpec'
        network_id:
          type: string
      type: object
    NetworkPeeringStatus:
      properties:
        cloud_provider:
          $ref: '#/components/schemas/CloudProviderStatus'
        created:
          $ref: '#/components/schemas/Created'
      type: object
    NullValue:
      description: |-
        `NullValue` is a singleton enumeration to represent the null value for the
        `Value` type union.

        The JSON representation for `NullValue` is JSON `null`.
      type: string
    Operation.State:
      description: 'describes if the operation has finished, or is still in progress. Only if done is true, either error or result become available.'
      enum:
        - STATE_IN_PROGRESS
        - STATE_COMPLETED
        - STATE_FAILED
      type: string
    Operation.Type:
      enum:
        - TYPE_CREATE_CLUSTER
        - TYPE_UPDATE_CLUSTER
        - TYPE_DELETE_CLUSTER
        - TYPE_CREATE_NETWORK
        - TYPE_DELETE_NETWORK
        - TYPE_CREATE_SERVERLESS_CLUSTER
        - TYPE_DELETE_SERVERLESS_CLUSTER
        - TYPE_CREATE_CLUSTER_WITH_DEPENDENCIES
        - TYPE_DELETE_CLUSTER_WITH_DEPENDENCIES
        - TYPE_CREATE_SERVERLESS_PRIVATE_LINK
        - TYPE_UPDATE_SERVERLESS_PRIVATE_LINK
        - TYPE_DELETE_SERVERLESS_PRIVATE_LINK
        - TYPE_CREATE_NETWORK_PEERING
        - TYPE_DELETE_NETWORK_PEERING
        - TYPE_CREATE_SHADOW_LINK
        - TYPE_UPDATE_SHADOW_LINK
        - TYPE_DELETE_SHADOW_LINK
      type: string
    OperationMetadata:
      description: Metadata of the long-running Operation. Contains in-progress information.
      oneOf:
        - allOf:
            - properties:
                '@type':
                  description: 'Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.'
                  enum:
                    - type.googleapis.com/redpanda.api.controlplane.v1.CreateNetworkMetadata
                  type: string
            - $ref: '#/components/schemas/CreateNetworkMetadata'
        - allOf:
            - properties:
                '@type':
                  description: 'Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.'
                  enum:
                    - type.googleapis.com/redpanda.api.controlplane.v1.DeleteNetworkMetadata
                  type: string
            - $ref: '#/components/schemas/DeleteNetworkMetadata'
        - allOf:
            - properties:
                '@type':
                  description: 'Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.'
                  enum:
                    - type.googleapis.com/redpanda.api.controlplane.v1.CreateClusterMetadata
                  type: string
            - $ref: '#/components/schemas/CreateClusterMetadata'
        - allOf:
            - properties:
                '@type':
                  description: 'Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.'
                  enum:
                    - type.googleapis.com/redpanda.api.controlplane.v1.UpdateClusterMetadata
                  type: string
            - $ref: '#/components/schemas/UpdateClusterMetadata'
        - allOf:
            - properties:
                '@type':
                  description: 'Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.'
                  enum:
                    - type.googleapis.com/redpanda.api.controlplane.v1.DeleteClusterMetadata
                  type: string
            - $ref: '#/components/schemas/DeleteClusterMetadata'
        - allOf:
            - properties:
                '@type':
                  description: 'Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.'
                  enum:
                    - type.googleapis.com/redpanda.api.controlplane.v1.CreateNetworkPeeringMetadata
                  type: string
            - $ref: '#/components/schemas/CreateNetworkPeeringMetadata'
        - allOf:
            - properties:
                '@type':
                  description: 'Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.'
                  enum:
                    - type.googleapis.com/redpanda.api.controlplane.v1.DeleteNetworkPeeringMetadata
                  type: string
            - $ref: '#/components/schemas/DeleteNetworkPeeringMetadata'
        - allOf:
            - properties:
                '@type':
                  description: 'Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.'
                  enum:
                    - type.googleapis.com/redpanda.api.controlplane.v1.DeleteNetworkPeeringMetadata
                  type: string
            - $ref: '#/components/schemas/DeleteNetworkPeeringMetadata'
        - allOf:
            - properties:
                '@type':
                  description: 'Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.'
                  enum:
                    - type.googleapis.com/redpanda.api.controlplane.v1.CreateServerlessClusterMetadata
                  type: string
            - $ref: '#/components/schemas/CreateServerlessClusterMetadata'
        - allOf:
            - properties:
                '@type':
                  description: 'Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.'
                  enum:
                    - type.googleapis.com/redpanda.api.controlplane.v1.DeleteServerlessClusterMetadata
                  type: string
            - $ref: '#/components/schemas/DeleteServerlessClusterMetadata'
    OperationResponse:
      description: Response of the long-running Operation.
      oneOf:
        - allOf:
            - properties:
                '@type':
                  description: 'Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.'
                  enum:
                    - type.googleapis.com/redpanda.api.controlplane.v1.CreateClusterResponse
                  type: string
            - $ref: '#/components/schemas/CreateClusterResponse'
        - allOf:
            - properties:
                '@type':
                  description: 'Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.'
                  enum:
                    - type.googleapis.com/redpanda.api.controlplane.v1.UpdateClusterResponse
                  type: string
            - $ref: '#/components/schemas/UpdateClusterResponse'
        - allOf:
            - properties:
                '@type':
                  description: 'Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.'
                  enum:
                    - type.googleapis.com/redpanda.api.controlplane.v1.DeleteClusterResponse
                  type: string
            - $ref: '#/components/schemas/DeleteClusterResponse'
        - allOf:
            - properties:
                '@type':
                  description: 'Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.'
                  enum:
                    - type.googleapis.com/redpanda.api.controlplane.v1.CreateNetworkResponse
                  type: string
            - $ref: '#/components/schemas/CreateNetworkResponse'
        - allOf:
            - properties:
                '@type':
                  description: 'Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.'
                  enum:
                    - type.googleapis.com/redpanda.api.controlplane.v1.DeleteNetworkResponse
                  type: string
            - $ref: '#/components/schemas/DeleteNetworkResponse'
        - allOf:
            - properties:
                '@type':
                  description: 'Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.'
                  enum:
                    - type.googleapis.com/redpanda.api.controlplane.v1.CreateNetworkPeeringResponse
                  type: string
            - $ref: '#/components/schemas/CreateNetworkPeeringResponse'
        - allOf:
            - properties:
                '@type':
                  description: 'Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.'
                  enum:
                    - type.googleapis.com/redpanda.api.controlplane.v1.DeleteNetworkPeeringResponse
                  type: string
            - $ref: '#/components/schemas/DeleteNetworkPeeringResponse'
        - allOf:
            - properties:
                '@type':
                  description: 'Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.'
                  enum:
                    - type.googleapis.com/redpanda.api.controlplane.v1.DeleteNetworkPeeringResponse
                  type: string
            - $ref: '#/components/schemas/DeleteNetworkPeeringResponse'
        - allOf:
            - properties:
                '@type':
                  description: 'Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.'
                  enum:
                    - type.googleapis.com/redpanda.api.controlplane.v1.CreateServerlessClusterResponse
                  type: string
            - $ref: '#/components/schemas/CreateServerlessClusterResponse'
        - allOf:
            - properties:
                '@type':
                  description: 'Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.'
                  enum:
                    - type.googleapis.com/redpanda.api.controlplane.v1.DeleteServerlessClusterResponse
                  type: string
            - $ref: '#/components/schemas/DeleteServerlessClusterResponse'
    Organization:
      properties:
        auth0_id:
          type: string
        default_resource_group_id:
          nullable: true
          type: string
        id:
          title: internal id of the organization
          type: string
        mfa_enforced:
          type: boolean
        name:
          title: display name of the organization
          type: string
        welcome_cluster_id:
          nullable: true
          type: string
      type: object
    OrganizationUpdate:
      properties:
        mfa_enforced:
          type: boolean
      type: object
    PatternType:
      description: |-
        - PATTERN_TYPE_LITERAL: Must match the filter exactly
         - PATTERN_TYPE_PREFIX: Will match anything that starts with filter
         - PATTERN_TYPE_PREFIXED: Will match anything that starts with filter
      enum:
        - PATTERN_TYPE_LITERAL
        - PATTERN_TYPE_PREFIX
        - PATTERN_TYPE_PREFIXED
      title: The matching pattern type
      type: string
    Permission:
      properties:
        description:
          description: A human-readable description of what the permission grants.
          type: string
        name:
          type: string
      type: object
    Placement:
      description: Information about creation of new serverless clusters on the serverless region.
      properties:
        enabled:
          description: Tells if new serverless clusters can be currently placed in the serverless region.
          readOnly: true
          type: boolean
      readOnly: true
      type: object
    PlainConfig:
      properties:
        password:
          title: Password
          type: string
        password_set:
          readOnly: true
          title: Indicates that the password has been set
          type: boolean
        password_set_at:
          format: date-time
          readOnly: true
          title: |-
            Timestamp of when the password was last set - only valid if password_set
            is true
          type: string
        username:
          title: PLAIN username
          type: string
      title: PLAIN settings
      type: object
    PlannedDeletion:
      description: Date after which this cluster can and should be deleted.
      properties:
        delete_after:
          format: date-time
          type: string
        reason:
          type: string
      type: object
    Policy:
      description: Policy identifies an AWS policy.
      properties:
        arn:
          description: AWS policy ARN.
          type: string
      required:
        - arn
      title: Policy
      type: object
    PrivateEndpointConnection:
      properties:
        connection_id:
          title: ConnectionID is the id of the connection between the private endpoint and the private link service
          type: string
        connection_name:
          title: ConnectionName is the name of the connection between the private endpoint and the private link service
          type: string
        created_at:
          description: PrivateEndpointConnection creation timestamp.
          format: date-time
          type: string
        private_endpoint_id:
          description: Resource ID of Private Endpoint to Redpanda Azure PrivateLink Endpoint Service.
          example: /subscriptions/<sub-id>/resourceGroups/<rg-id>/providers/Microsoft.Network/privateEndpoints/<name>
          title: 'resource_id is the ID of an endpoint connection, e.g. /subscriptions/<sub-id>/resourceGroups/<rg-id>/providers/Microsoft.Network/privateEndpoints/<name>'
          type: string
        private_endpoint_name:
          description: The name of the PrivateEndpointConnection.
          type: string
        status:
          description: The status of private endpoint connected to Redpanda Azure PrivateLink Endpoint Service.
          example: Approved | Rejected
          title: status is the status of the Azure PE
          type: string
      type: object
    PrivateLinkAuthMode:
      description: |-
        Private link authentication mode.

         - PRIVATE_LINK_AUTH_MODE_MATCH: Match the authentication methods configured for the normal API endpoint,
        i.e. Kafka, HTTP Proxy, or Schema Registry.
         - PRIVATE_LINK_AUTH_MODE_SASL: SASL authentication mode only.
         - PRIVATE_LINK_AUTH_MODE_MTLS: mTLS authentication mode only.
         - PRIVATE_LINK_AUTH_MODE_MTLS_AND_SASL: Both SASL and mTLS authentication modes.
         - PRIVATE_LINK_AUTH_MODE_NONE: Neither SASL or mTLS is enabled for Private Link.
      enum:
        - PRIVATE_LINK_AUTH_MODE_MATCH
        - PRIVATE_LINK_AUTH_MODE_SASL
        - PRIVATE_LINK_AUTH_MODE_MTLS
        - PRIVATE_LINK_AUTH_MODE_MTLS_AND_SASL
        - PRIVATE_LINK_AUTH_MODE_NONE
      type: string
    PrometheusCredentials:
      properties:
        password:
          type: string
        username:
          type: string
      type: object
    QuotaFailure:
      description: |-
        Describes how a quota check failed.

        For example if a daily limit was exceeded for the calling project,
        a service could respond with a QuotaFailure detail containing the project
        id and the description of the quota limit that was exceeded.  If the
        calling project hasn't enabled the service in the developer console, then
        a service could respond with the project id and set `service_disabled`
        to true.

        Also see RetryInfo and Help types for other details about handling a
        quota failure.
      properties:
        violations:
          description: Describes all quota violations.
          items:
            $ref: '#/components/schemas/QuotaFailure.Violation'
          type: array
      title: QuotaFailure
      type: object
    QuotaFailure.Violation:
      description: |-
        A message type used to describe a single quota violation.  For example, a
        daily quota or a custom quota that was exceeded.
      properties:
        api_service:
          description: |-
            The API Service from which the `QuotaFailure.Violation` orginates. In
            some cases, Quota issues originate from an API Service other than the one
            that was called. In other words, a dependency of the called API Service
            could be the cause of the `QuotaFailure`, and this field would have the
            dependency API service name.

            For example, if the called API is Kubernetes Engine API
            (container.googleapis.com), and a quota violation occurs in the
            Kubernetes Engine API itself, this field would be
            "container.googleapis.com". On the other hand, if the quota violation
            occurs when the Kubernetes Engine API creates VMs in the Compute Engine
            API (compute.googleapis.com), this field would be
            "compute.googleapis.com".
          type: string
        description:
          description: |-
            A description of how the quota check failed. Clients can use this
            description to find more about the quota configuration in the service's
            public documentation, or find the relevant quota limit to adjust through
            developer console.

            For example: "Service disabled" or "Daily Limit for read operations
            exceeded".
          type: string
        future_quota_value:
          description: |-
            The new quota value being rolled out at the time of the violation. At the
            completion of the rollout, this value will be enforced in place of
            quota_value. If no rollout is in progress at the time of the violation,
            this field is not set.

            For example, if at the time of the violation a rollout is in progress
            changing the number of CPUs quota from 10 to 20, 20 would be the value of
            this field.
          format: int64
          nullable: true
          type: string
        quota_dimensions:
          additionalProperties:
            type: string
          description: |-
            The dimensions of the violated quota. Every non-global quota is enforced
            on a set of dimensions. While quota metric defines what to count, the
            dimensions specify for what aspects the counter should be increased.

            For example, the quota "CPUs per region per VM family" enforces a limit
            on the metric "compute.googleapis.com/cpus_per_vm_family" on dimensions
            "region" and "vm_family". And if the violation occurred in region
            "us-central1" and for VM family "n1", the quota_dimensions would be,

            {
              "region": "us-central1",
              "vm_family": "n1",
            }

            When a quota is enforced globally, the quota_dimensions would always be
            empty.
          type: object
        quota_id:
          description: |-
            The id of the violated quota. Also know as "limit name", this is the
            unique identifier of a quota in the context of an API service.

            For example, "CPUS-PER-VM-FAMILY-per-project-region".
          type: string
        quota_metric:
          description: |-
            The metric of the violated quota. A quota metric is a named counter to
            measure usage, such as API requests or CPUs. When an activity occurs in a
            service, such as Virtual Machine allocation, one or more quota metrics
            may be affected.

            For example, "compute.googleapis.com/cpus_per_vm_family",
            "storage.googleapis.com/internet_egress_bandwidth".
          type: string
        quota_value:
          description: |-
            The enforced quota value at the time of the `QuotaFailure`.

            For example, if the enforced quota value at the time of the
            `QuotaFailure` on the number of CPUs is "10", then the value of this
            field would reflect this quantity.
          format: int64
          type: string
        subject:
          description: |-
            The subject on which the quota check failed.
            For example, "clientip:<ip address of client>" or "project:<Google
            developer project id>".
          type: string
      type: object
    RedpandaConsole:
      description: Cluster's Redpanda Console properties.
      properties:
        url:
          description: Redpanda Console API URL.
          example: 'https://console-aa0000l0.cjb69h1c4vs42pca89s0.fmc.prd.cloud.redpanda.com/api'
          readOnly: true
          type: string
      readOnly: true
      type: object
    Region:
      description: |-
        Region describes a region of one specific CloudProvider. There can be only
        one region with the same name per CloudProvider.
      properties:
        cloud_provider:
          $ref: '#/components/schemas/CloudProvider'
        default_timezone:
          $ref: '#/components/schemas/TimeZone'
        name:
          title: 'name is the name of the region, as given by the cloud provider. e.g. europe-west3'
          type: string
        zones:
          description: zones is the list of zones that existing in this region.
          items:
            type: string
          type: array
      type: object
    ResourceGroup:
      properties:
        created_at:
          format: date-time
          readOnly: true
          type: string
        id:
          readOnly: true
          title: ID of the resource group. ID is an output of the Create Resource Group request and cannot be set by the caller
          type: string
        name:
          description: The unique name of the resource group.
          example: development
          type: string
        updated_at:
          format: date-time
          readOnly: true
          type: string
      title: Redpanda resource group
      type: object
    ResourceGroupCreate:
      properties:
        name:
          description: The unique name of the resource group.
          example: development
          type: string
      required:
        - name
      title: ResourceGroupCreate represents a Redpanda resource group creation input
      type: object
    ResourceGroupUpdate:
      properties:
        id:
          description: |-
            ID of the resource group. The ID should be valid and the resource group
            should exist within the organization.
          type: string
        name:
          description: The unique name of the resource group.
          example: development
          type: string
      required:
        - id
        - name
      title: ResourceGroupUpdate represents a Redpanda resource group update input
      type: object
    ResourceGroups:
      description: Azure resource groups holding the Redpanda cluster resources.
      properties:
        iam_resource_group:
          $ref: '#/components/schemas/CustomerManagedAzureResourceGroupSpec'
        redpanda_resource_group:
          $ref: '#/components/schemas/CustomerManagedAzureResourceGroupSpec'
        storage_resource_group:
          $ref: '#/components/schemas/CustomerManagedAzureResourceGroupSpec'
      required:
        - redpanda_resource_group
        - storage_resource_group
        - iam_resource_group
      title: Azure Resoure Groups
      type: object
    RoleBindingCreate:
      properties:
        account_id:
          type: string
        role_name:
          type: string
        scope:
          $ref: '#/components/schemas/Scope'
      type: object
    RoleCreate:
      properties:
        description:
          description: The description of the role.
          example: Billing Admins have access to billing information.
          type: string
        name:
          description: The unique name of the role.
          example: billing-admin
          type: string
        permissions:
          items:
            type: string
          type: array
      type: object
    RoleUpdate:
      properties:
        description:
          description: The description of the role.
          example: Billing Admins have access to billing information.
          type: string
        name:
          description: The unique name of the role.
          example: billing-admin
          type: string
        permissions:
          items:
            type: string
          type: array
      type: object
    RotateServiceAccountSecretResponse:
      properties:
        service_account:
          $ref: '#/components/schemas/ServiceAccount'
      type: object
    SASLSpec:
      properties:
        enabled:
          description: Whether SASL is enabled.
          type: boolean
      title: SASL configuration
      type: object
    Sandbox:
      description: Cluster's sandbox properties.
      properties:
        url:
          description: Sandbox URL.
          example: 'https://sandbox.cjb69h1c4vs42pca89s0.clusters.rdpa.co'
          readOnly: true
          type: string
      type: object
    SchemaRegistrySpec:
      description: 'Cluster''s Schema Registry properties. See the [Schema Registry overview](https://docs.redpanda.com/redpanda-cloud/manage/schema-reg/schema-reg-overview/) and the [Schema Registry API reference](https://docs.redpanda.com/api/doc/schema-registry) for more information.'
      properties:
        mtls:
          $ref: '#/components/schemas/MTLSSpec'
        sasl:
          $ref: '#/components/schemas/SASLSpec'
      type: object
    SchemaRegistrySyncOptions:
      description: Options for how the Schema Registry is synced.
      properties:
        shadow_schema_registry_topic:
          $ref: '#/components/schemas/ShadowSchemaRegistryTopic'
      type: object
    Scope:
      properties:
        dataplane_id:
          description: |-
            dataplane_id is required when the scope.resource_type is a dataplane resource:
            MCPSERVER, AIAGENT, AIGATEWAY_MODEL_PROVIDER, AIGATEWAY_MODEL, AIGATEWAY_PROVIDER_CONFIG, AIGATEWAY_GATEWAY.
            This can either be the cluster id or the serverless cluster id depending on the dataplane resource.
            Must be a valid XID (20-character base32 hex encoded string).
          nullable: true
          type: string
        resource_id:
          type: string
        resource_type:
          $ref: '#/components/schemas/ScopeResourceType'
      type: object
    ScopeResourceType:
      enum:
        - SCOPE_RESOURCE_TYPE_RESOURCE_GROUP
        - SCOPE_RESOURCE_TYPE_NETWORK
        - SCOPE_RESOURCE_TYPE_CLUSTER
        - SCOPE_RESOURCE_TYPE_SERVERLESS_CLUSTER
        - SCOPE_RESOURCE_TYPE_NETWORK_PEERING
        - SCOPE_RESOURCE_TYPE_ORGANIZATION
        - SCOPE_RESOURCE_TYPE_MCPSERVER
        - SCOPE_RESOURCE_TYPE_AIAGENT
        - SCOPE_RESOURCE_TYPE_AIGATEWAY_MODEL_PROVIDER
        - SCOPE_RESOURCE_TYPE_AIGATEWAY_MODEL
        - SCOPE_RESOURCE_TYPE_AIGATEWAY_PROVIDER_CONFIG
        - SCOPE_RESOURCE_TYPE_AIGATEWAY_GATEWAY
        - SCOPE_RESOURCE_TYPE_KAFKA_TOPIC
      type: string
    ScramConfig:
      properties:
        password:
          title: Password
          type: string
        password_set:
          readOnly: true
          title: Indicates that the password has been set
          type: boolean
        password_set_at:
          format: date-time
          readOnly: true
          title: |-
            Timestamp of when the password was last set - only valid if password_set
            is true
          type: string
        scram_mechanism:
          $ref: '#/components/schemas/ScramMechanism'
        username:
          title: SCRAM username
          type: string
      title: SCRAM settings
      type: object
    ScramMechanism:
      description: |-
        - SCRAM_MECHANISM_SCRAM_SHA_256: SCRAM-SHA-256
         - SCRAM_MECHANISM_SCRAM_SHA_512: SCRAM-SHA-512
      enum:
        - SCRAM_MECHANISM_SCRAM_SHA_256
        - SCRAM_MECHANISM_SCRAM_SHA_512
      title: Valid SCRAM mechanisms
      type: string
    SecondaryIPv4Range:
      description: Secondary IPv4 range.
      properties:
        name:
          type: string
      type: object
    SecurityGroup:
      description: Azure security group.
      properties:
        name:
          title: |-
            Naming convention: Between 1 and 80 characters. Alphanumerics, underscores, periods, and hyphens. Start with alphanumeric. End alphanumeric or underscore.
            https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/resource-name-rules
          type: string
      required:
        - name
      type: object
    SecurityGroups:
      description: Azure security groups for Redpanda Cluster. All security groups shall be in the network resource group.
      properties:
        redpanda_security_group:
          $ref: '#/components/schemas/SecurityGroup'
      required:
        - redpanda_security_group
      title: Azure Security Groups
      type: object
    SecuritySettingsSyncOptions:
      properties:
        acl_filters:
          items:
            $ref: '#/components/schemas/ACLFilter'
          title: ACL filters
          type: array
        effective_interval:
          readOnly: true
          title: The effective interval for the task
          type: string
        interval:
          title: |-
            Sync interval
            If 0 provided, defaults to 30 seconds
          type: string
        paused:
          title: |-
            Allows user to pause the security settings sync task.  If paused,
            then the task will enter the 'paused' state and will not sync security
            settings from the source cluster
          type: boolean
      title: Options for syncing security settings
      type: object
    SeedBrokers:
      description: Seed brokers of Redpanda Kafka API.
      properties:
        mtls:
          description: 'URL of the seed broker for mTLS. If mTLS is not enabled, the field is empty.'
          type: string
        private_link_mtls:
          description: 'URL of the seed broker for private link with mTLS. If private link with mTLS is not enabled, the field is empty.'
          type: string
        private_link_sasl:
          description: 'URL of the seed broker for private link with SASL. If private link with SASL is not enabled, the field is empty.'
          type: string
        sasl:
          description: 'URL of the seed broker for SASL. If SASL is not enabled, the field is empty.'
          type: string
      type: object
    ServerlessCluster:
      description: Resource describing a ServerlessCluster.
      properties:
        ai_gateway:
          $ref: '#/components/schemas/ServerlessCluster.AIGateway'
        console_private_url:
          readOnly: true
          type: string
        console_url:
          readOnly: true
          type: string
        created_at:
          description: Timestamp when the Serverless cluster was created.
          format: date-time
          type: string
        dataplane_api:
          $ref: '#/components/schemas/ServerlessCluster.DataplaneAPI'
        id:
          description: ID of the Serverless cluster. ID is an output from the Create Serverless Cluster operation and cannot be set by the caller.
          type: string
        kafka_api:
          $ref: '#/components/schemas/ServerlessCluster.KafkaAPI'
        name:
          description: Unique name of the Serverless cluster.
          example: development-ServerlessCluster
          type: string
        networking_config:
          $ref: '#/components/schemas/ServerlessNetworkingConfig'
        planned_deletion:
          $ref: '#/components/schemas/PlannedDeletion'
        private_link_id:
          nullable: true
          readOnly: true
          type: string
        prometheus:
          $ref: '#/components/schemas/ServerlessCluster.Prometheus'
        resource_group_id:
          description: Resource group ID of the cluster.
          example: a0b40af9-0250-48ca-9417-783ed127ce42
          type: string
        schema_registry:
          $ref: '#/components/schemas/ServerlessCluster.SchemaRegistryStatus'
        serverless_region:
          description: 'Serverless region in which the cluster is placed, backed by a cloud provider region.'
          example: us-east-1
          type: string
        state:
          $ref: '#/components/schemas/ServerlessCluster.State'
        tags:
          additionalProperties:
            type: string
          title: User-defined tags for the Serverless cluster
          type: object
        updated_at:
          description: Timestamp when the Serverless cluster was updated.
          format: date-time
          type: string
      title: ServerlessCluster
      type: object
    ServerlessCluster.AIGateway:
      description: Cluster's AI Gateway properties.
      properties:
        v2_url:
          description: AI Gateway v2 URL.
          example: 'https://d1d9risv0c3i7qbbeoc0.aigw.adp.us-east-1.mpx.prd.cloud.redpanda.com'
          readOnly: true
          type: string
      readOnly: true
      type: object
    ServerlessCluster.DataplaneAPI:
      description: Cluster's Data Plane API properties.
      properties:
        private_url:
          description: |-
            private_url is the private url of the dataplane api if private networking
            is enabled for this cluster.
          readOnly: true
          type: string
        url:
          readOnly: true
          type: string
      type: object
    ServerlessCluster.KafkaAPI:
      description: Cluster's Kafka API properties.
      properties:
        private_seed_brokers:
          items:
            type: string
          readOnly: true
          title: Kafka API seed brokers (also known as bootstrap servers). Private addresses
          type: array
        seed_brokers:
          items:
            type: string
          readOnly: true
          title: Kafka API seed brokers (also known as bootstrap servers). Implicitly public
          type: array
      type: object
    ServerlessCluster.Prometheus:
      description: Prometheus metrics endpoint properties.
      properties:
        private_url:
          description: Prometheus API Private URL.
          example: 'https://d1d9risv0c3i7qbbeoc0.metrics.us-east-1.mpx.prd.cloud.redpanda.com/public_metrics'
          readOnly: true
          type: string
        url:
          description: Prometheus API URL.
          example: 'https://d1d9risv0c3i7qbbeoc0.metrics.us-east-1.mpx.prd.cloud.redpanda.com/public_metrics'
          readOnly: true
          type: string
      readOnly: true
      type: object
    ServerlessCluster.SchemaRegistryStatus:
      description: Cluster's Schema Registry properties.
      properties:
        private_url:
          readOnly: true
          title: Private url for the schema registry
          type: string
        url:
          readOnly: true
          type: string
      type: object
    ServerlessCluster.State:
      description: |-
        State describes the state of the ServerlessCluster.

         - STATE_PLACING: Serverless cluster is in the process of being placed on a cell with sufficient resources in the data plane.
         - STATE_CREATING: Serverless cluster is in the process of having its control plane state created.
         - STATE_READY: Serverless cluster is in execution and accepting external requests.
         - STATE_DELETING: Serverless cluster is in the process of having its control plane state removed. Resources dedicated to the cluster in the data plane will be released.
         - STATE_FAILED: Serverless cluster was unable to enter the ready state from either the creating or placing states.
         - STATE_SUSPENDED: Serverless cluster is in execution but blocks all external requests.
      enum:
        - STATE_PLACING
        - STATE_CREATING
        - STATE_READY
        - STATE_DELETING
        - STATE_FAILED
        - STATE_SUSPENDED
      type: string
    ServerlessClusterCreate:
      description: Resource describing a Create ServerlessCluster.
      properties:
        name:
          description: Unique name of the Serverless cluster within the org.
          example: development-ServerlessCluster
          type: string
        networking_config:
          $ref: '#/components/schemas/ServerlessNetworkingConfig'
        private_link_id:
          description: Private link configuration for the Serverless cluster.
          nullable: true
          type: string
        resource_group_id:
          description: Resource group ID of the cluster.
          example: a0b40af9-0250-48ca-9417-783ed127ce42
          title: Resource group ID (formerly namespace)
          type: string
        serverless_region:
          description: Name of the region where the Serverless cluster will be provisioned.
          type: string
        tags:
          additionalProperties:
            type: string
          title: User-defined tags for the Serverless cluster
          type: object
      required:
        - name
        - resource_group_id
        - serverless_region
      title: ServerlessClusterCreate
      type: object
    ServerlessClusterUpdate:
      description: Resource describing an Update Serverless Cluster.
      properties:
        id:
          description: ID of the vcluster.
          type: string
        networking_config:
          $ref: '#/components/schemas/ServerlessNetworkingConfig'
        private_link_id:
          description: Private link configuration for the Serverless cluster.
          nullable: true
          type: string
        tags:
          additionalProperties:
            type: string
          title: User-defined tags for the Serverless cluster (full replacement)
          type: object
      required:
        - id
      title: ServerlessClusterUpdate
      type: object
    ServerlessNetworkingConfig:
      properties:
        private:
          $ref: '#/components/schemas/ServerlessNetworkingConfig.State'
        public:
          $ref: '#/components/schemas/ServerlessNetworkingConfig.State'
      type: object
    ServerlessNetworkingConfig.State:
      enum:
        - STATE_DISABLED
        - STATE_ENABLED
      type: string
    ServerlessPrivateLink:
      properties:
        aws_config:
          $ref: '#/components/schemas/ServerlessPrivateLink.AWS'
        cloudprovider:
          $ref: '#/components/schemas/CloudProvider'
        created_at:
          format: date-time
          type: string
        id:
          type: string
        name:
          type: string
        resource_group_id:
          type: string
        serverless_region:
          type: string
        state:
          $ref: '#/components/schemas/ServerlessPrivateLink.State'
        status:
          $ref: '#/components/schemas/ServerlessPrivateLinkStatus'
        updated_at:
          format: date-time
          type: string
      type: object
    ServerlessPrivateLink.AWS:
      properties:
        allowed_principals:
          items:
            type: string
          type: array
      type: object
    ServerlessPrivateLink.State:
      description: |2-
         - STATE_CREATING: Private link is being created.
         - STATE_READY: Private link is ready to use.
         - STATE_DELETING: Private link is being deleted.
         - STATE_FAILED: Private link is in an error state.
         - STATE_UPDATING: Private link is in an updating state.
      enum:
        - STATE_CREATING
        - STATE_READY
        - STATE_DELETING
        - STATE_FAILED
        - STATE_UPDATING
      type: string
    ServerlessPrivateLinkCreate:
      properties:
        aws_config:
          $ref: '#/components/schemas/ServerlessPrivateLinkCreate.AWS'
        cloudprovider:
          $ref: '#/components/schemas/CloudProvider'
        name:
          type: string
        resource_group_id:
          type: string
        serverless_region:
          type: string
      required:
        - cloudprovider
      type: object
    ServerlessPrivateLinkCreate.AWS:
      properties:
        allowed_principals:
          description: |-
            allowed_principals specifies the list of AWS principals (for example, account
            ARNs) that can access the Redpanda AWS PrivateLink Endpoint service.
          items:
            type: string
          type: array
      type: object
    ServerlessPrivateLinkStatus:
      properties:
        aws:
          $ref: '#/components/schemas/ServerlessPrivateLinkStatus.AWS'
      title: ServerlessPrivateLinkStatus contains provider-specific status information
      type: object
    ServerlessPrivateLinkStatus.AWS:
      properties:
        availability_zones:
          items:
            type: string
          type: array
        vpc_endpoint_service_name:
          type: string
      type: object
    ServerlessRegion:
      description: Resource describing a ServerlessRegion.
      properties:
        cloud_provider:
          $ref: '#/components/schemas/CloudProvider'
        default_timezone:
          $ref: '#/components/schemas/TimeZone'
        name:
          description: Unique name of the Serverless region.
          example: int-eu-west-1
          type: string
        placement:
          $ref: '#/components/schemas/Placement'
      title: ServerlessRegion
      type: object
    ServiceAccount:
      properties:
        auth0_client_credentials:
          $ref: '#/components/schemas/ServiceAccountCredentials'
        created_at:
          format: date-time
          type: string
        description:
          description: The description of the service_account.
          example: CI bot account is used for CI workloads.
          type: string
        id:
          type: string
        name:
          description: The unique name of the service account.
          example: ci_bot
          type: string
        updated_at:
          format: date-time
          type: string
      type: object
    ServiceAccountCreate:
      properties:
        description:
          description: The description of the service_account.
          example: CI bot account is used for CI workloads.
          type: string
        name:
          description: The unique name of the service_account.
          example: billing_admin
          type: string
        role_bindings:
          items:
            $ref: '#/components/schemas/ServiceAccountCreate.RoleBinding'
          type: array
      type: object
    ServiceAccountCreate.RoleBinding:
      properties:
        role_name:
          type: string
        scope:
          $ref: '#/components/schemas/Scope'
      type: object
    ServiceAccountCredentials:
      properties:
        client_id:
          description: The client ID of the credentials
          example: CDFX4567298
          type: string
        client_secret:
          description: The client secret
          example: dYz_FZqNM6E3_O1lKUwONKNQ4TKf7i
          nullable: true
          type: string
      type: object
    ServiceAccountUpdate:
      properties:
        description:
          description: The description of the service account.
          example: CI bot account is used for CI workloads.
          type: string
        name:
          description: The unique name of the service account.
          example: ci_bot
          type: string
      type: object
    ShadowLink.State:
      description: State represents the lifecycle state of a shadow link.
      enum:
        - STATE_CREATING
        - STATE_CREATION_FAILED
        - STATE_DELETING
        - STATE_DELETION_FAILED
        - STATE_ACTIVE
        - STATE_PAUSED
      type: string
    ShadowLinkConfigurations:
      properties:
        client_options:
          $ref: '#/components/schemas/v2.ShadowLinkClientOptions'
        consumer_offset_sync_options:
          $ref: '#/components/schemas/ConsumerOffsetSyncOptions'
        schema_registry_sync_options:
          $ref: '#/components/schemas/SchemaRegistrySyncOptions'
        security_sync_options:
          $ref: '#/components/schemas/SecuritySettingsSyncOptions'
        topic_metadata_sync_options:
          $ref: '#/components/schemas/TopicMetadataSyncOptions'
      title: ShadowLink options
      type: object
    ShadowLinkCreate:
      description: ShadowLinkCreate contains fields for creating a shadow link.
      properties:
        client_options:
          $ref: '#/components/schemas/v1.ShadowLinkClientOptions'
        consumer_offset_sync_options:
          $ref: '#/components/schemas/ConsumerOffsetSyncOptions'
        name:
          title: |-
            Human-readable name for the shadow link. Must be unique.
            Must follow Kubernetes DNS-1123 subdomain naming convention:
            - lowercase alphanumeric characters, hyphens allowed
            - must start and end with alphanumeric character
            - maximum 63 characters
          type: string
        schema_registry_sync_options:
          $ref: '#/components/schemas/SchemaRegistrySyncOptions'
        security_sync_options:
          $ref: '#/components/schemas/SecuritySettingsSyncOptions'
        shadow_redpanda_id:
          description: Shadow Redpanda cluster ID where the shadow link will be created.
          type: string
        source_redpanda_id:
          description: 'Source Redpanda cluster ID. This field is optional. If provided, fetches bootstrap server information.'
          type: string
        topic_metadata_sync_options:
          $ref: '#/components/schemas/TopicMetadataSyncOptions'
      type: object
    ShadowLinkListItem:
      description: |-
        ShadowLinkListItem represents a lightweight shadow link item for list responses.
        This message contains only a subset of shadow link fields for listing operations.
        To retrieve the full shadow link details use the GetShadowLink method instead.
      properties:
        id:
          description: Shadow link ID.
          readOnly: true
          type: string
        name:
          description: Human-readable name for the shadow link.
          type: string
        shadow_redpanda_id:
          description: Shadow Redpanda cluster ID where the shadow link is created.
          type: string
        state:
          $ref: '#/components/schemas/ShadowLink.State'
      type: object
    ShadowLinkState:
      description: |-
        - SHADOW_LINK_STATE_ACTIVE: Shadow link is active
         - SHADOW_LINK_STATE_PAUSED: Shadow link was paused
      enum:
        - SHADOW_LINK_STATE_ACTIVE
        - SHADOW_LINK_STATE_PAUSED
      title: State of the shadow link
      type: string
    ShadowLinkStatus:
      properties:
        shadow_topics:
          items:
            $ref: '#/components/schemas/ShadowTopic'
          title: Status of shadow topics
          type: array
        state:
          $ref: '#/components/schemas/ShadowLinkState'
        synced_shadow_topic_properties:
          items:
            type: string
          title: List of topic properties that are being synced
          type: array
        task_statuses:
          items:
            $ref: '#/components/schemas/ShadowLinkTaskStatus'
          title: Statuses of the running tasks
          type: array
      title: Status of the shadow link
      type: object
    ShadowLinkTaskStatus:
      properties:
        broker_id:
          format: int32
          title: The broker the task is running on
          type: integer
        name:
          title: Name of the task
          type: string
        reason:
          title: Reason for task being in state
          type: string
        shard:
          format: int32
          title: The shard the task is running on
          type: integer
        state:
          $ref: '#/components/schemas/TaskState'
      title: Status of a task
      type: object
    ShadowLinkUpdate:
      description: ShadowLinkUpdate contains fields that can be updated on a shadow link.
      properties:
        client_options:
          $ref: '#/components/schemas/v1.ShadowLinkClientOptions'
        consumer_offset_sync_options:
          $ref: '#/components/schemas/ConsumerOffsetSyncOptions'
        id:
          description: Shadow link ID.
          type: string
        schema_registry_sync_options:
          $ref: '#/components/schemas/SchemaRegistrySyncOptions'
        security_sync_options:
          $ref: '#/components/schemas/SecuritySettingsSyncOptions'
        topic_metadata_sync_options:
          $ref: '#/components/schemas/TopicMetadataSyncOptions'
      type: object
    ShadowSchemaRegistryTopic:
      description: |-
        Shadow the entire source cluster's Schema Registry byte-for-byte.
        If set, the Shadow Link will attempt to add the `_schemas`
        topic to the list of Shadow Topics as long as:
        1. The `_schemas` topic exists on the source cluster
        2. The `_schemas` topic does not exist on the shadow cluster, or it is
        empty.
        If either of the above conditions are _not_ met, then the `_schemas`
        topic will _not_ be shadowed by this cluster. Unsetting this flag will
        _not_ remove the `_schemas` topic from shadowing if it has already been
        added.  Once made a shadow topic, the
        `_schemas` topic will be replicated byte-for-byte.  To stop shadowing the
        `_schemas` topic, unset this field, then either fail-over the topic or
        delete it.
      type: object
    ShadowTopic:
      properties:
        name:
          readOnly: true
          title: Name of the shadow topic
          type: string
        source_topic_id:
          readOnly: true
          title: The topic ID of the source topic
          type: string
        source_topic_name:
          title: The name of the source topic
          type: string
        status:
          $ref: '#/components/schemas/ShadowTopicStatus'
        topic_id:
          readOnly: true
          title: The topic ID of the shadow topic
          type: string
      title: A ShadowTopic resource contained by the ShadowLink
      type: object
    ShadowTopicState:
      description: |-
        - SHADOW_TOPIC_STATE_ACTIVE: Shadow topic is active
         - SHADOW_TOPIC_STATE_FAULTED: Shadow topic has faulted
         - SHADOW_TOPIC_STATE_PAUSED: Shadow topic has been paused
         - SHADOW_TOPIC_STATE_FAILING_OVER: Shadow topic is in the process of failing over
         - SHADOW_TOPIC_STATE_FAILED_OVER: Shadow topic has failed over successfully
         - SHADOW_TOPIC_STATE_PROMOTING: Shadow topic is in the process of being promoted
         - SHADOW_TOPIC_STATE_PROMOTED: Shadow topic is promoted successfully
      enum:
        - SHADOW_TOPIC_STATE_ACTIVE
        - SHADOW_TOPIC_STATE_FAULTED
        - SHADOW_TOPIC_STATE_PAUSED
        - SHADOW_TOPIC_STATE_FAILING_OVER
        - SHADOW_TOPIC_STATE_FAILED_OVER
        - SHADOW_TOPIC_STATE_PROMOTING
        - SHADOW_TOPIC_STATE_PROMOTED
      title: State of a shadow topic
      type: string
    ShadowTopicStatus:
      properties:
        partition_information:
          items:
            $ref: '#/components/schemas/TopicPartitionInformation'
          title: List of partition information for the shadow topic
          type: array
        state:
          $ref: '#/components/schemas/ShadowTopicState'
      title: Status of a ShadowTopic
      type: object
    Subnets:
      description: Azure subnets used by Redpand cluster deployment.
      properties:
        kafka_connect_pods:
          $ref: '#/components/schemas/Subnets.Subnet'
        kafka_connect_vnet:
          $ref: '#/components/schemas/Subnets.Subnet'
        rp_0_pods:
          $ref: '#/components/schemas/Subnets.Subnet'
        rp_0_vnet:
          $ref: '#/components/schemas/Subnets.Subnet'
        rp_1_pods:
          $ref: '#/components/schemas/Subnets.Subnet'
        rp_1_vnet:
          $ref: '#/components/schemas/Subnets.Subnet'
        rp_2_pods:
          $ref: '#/components/schemas/Subnets.Subnet'
        rp_2_vnet:
          $ref: '#/components/schemas/Subnets.Subnet'
        rp_agent:
          $ref: '#/components/schemas/Subnets.Subnet'
        rp_connect_pods:
          $ref: '#/components/schemas/Subnets.Subnet'
        rp_connect_vnet:
          $ref: '#/components/schemas/Subnets.Subnet'
        rp_egress_vnet:
          $ref: '#/components/schemas/Subnets.Subnet'
        sys_pods:
          $ref: '#/components/schemas/Subnets.Subnet'
        sys_vnet:
          $ref: '#/components/schemas/Subnets.Subnet'
      required:
        - rp_agent
        - rp_0_pods
        - rp_0_vnet
        - rp_1_pods
        - rp_1_vnet
        - rp_2_pods
        - rp_2_vnet
        - rp_connect_pods
        - rp_connect_vnet
        - sys_pods
        - sys_vnet
        - rp_egress_vnet
        - kafka_connect_pods
        - kafka_connect_vnet
      type: object
    Subnets.Subnet:
      description: Azure subnet.
      properties:
        name:
          title: |-
            Naming convention: Between 1 and 80 characters. Alphanumerics, underscores, periods, and hyphens. Start with alphanumeric. End alphanumeric or underscore.
            https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/resource-name-rules
          type: string
      required:
        - name
      type: object
    TLSFileSettings:
      properties:
        ca_path:
          title: Path to the CA
          type: string
        cert_path:
          title: Path to the cert
          type: string
        key_path:
          title: |-
            Key and Cert are optional but if one is provided, then both must be
            Path to the key
          type: string
      title: TLS file settings
      type: object
    TLSPEMSettings:
      properties:
        ca:
          title: The CA
          type: string
        cert:
          title: The cert
          type: string
        key:
          title: |-
            Key and Cert are optional but if one is provided, then both must be
            The key
          type: string
        key_fingerprint:
          readOnly: true
          title: 'The SHA-256 of the key, in base64 format'
          type: string
      title: Used when providing the TLS information in PEM format
      type: object
    TaskState:
      description: |-
        - TASK_STATE_ACTIVE: Task is active
         - TASK_STATE_PAUSED: Task was paused
         - TASK_STATE_LINK_UNAVAILABLE: Task is unable to communicate with source cluster
         - TASK_STATE_NOT_RUNNING: Task is not running
         - TASK_STATE_FAULTED: Task is faulted
      enum:
        - TASK_STATE_ACTIVE
        - TASK_STATE_PAUSED
        - TASK_STATE_LINK_UNAVAILABLE
        - TASK_STATE_NOT_RUNNING
        - TASK_STATE_FAULTED
      title: Task states
      type: string
    TimeZone:
      description: |-
        Represents a time zone from the
        [IANA Time Zone Database](https://www.iana.org/time-zones).
      properties:
        id:
          description: 'IANA Time Zone Database time zone, e.g. "America/New_York".'
          type: string
        version:
          description: 'Optional. IANA Time Zone Database version number, e.g. "2019a".'
          type: string
      type: object
    TopicMetadataSyncOptions:
      properties:
        auto_create_shadow_topic_filters:
          description: |-
            List of filters that indicate which topics should be automatically
            created as shadow topics on the shadow cluster.  This only controls
            automatic creation of shadow topics and does not effect the state of the
            mirror topic once it is created.
            Literal filters for __consumer_offsets, _redpanda.audit_log and _schemas
            will be rejected as well as prefix filters to match topics prefixed with
            _redpanda or __redpanda.
            Wildcard `*` is permitted only for literal filters and will _not_ match
            any topics that start with _redpanda or __redpanda.  If users wish to
            shadow topics that start with _redpanda or __redpanda, they should
            provide a literal filter for those topics.
          items:
            $ref: '#/components/schemas/NameFilter'
          type: array
        effective_interval:
          readOnly: true
          title: The effective interval for the task
          type: string
        exclude_default:
          description: |-
            If this is true, then only the properties listed in
            `synced_shadow_topic_properties` will be synced.
          title: |-
            If false, then the following topic properties will be synced by default:
            - `compression.type`
            - `retention.bytes`
            - `retention.ms`
            - `delete.retention.ms`
            - Replication Factor
            - `min.compaction.lag.ms`
            - `max.compaction.lag.ms`
          type: boolean
        interval:
          title: |-
            How often to sync metadata
            If 0 provided, defaults to 30 seconds
          type: string
        paused:
          title: |-
            Allows user to pause the topic sync task.  If paused, then
            the task will enter the 'paused' state and not sync topics or their
            properties from the source cluster
          type: boolean
        start_at_earliest:
          $ref: '#/components/schemas/EarliestOffset'
        start_at_latest:
          $ref: '#/components/schemas/LatestOffset'
        start_at_timestamp:
          description: |-
            Enables data replication from the first offset on the
            source topic/partition where the record's timestamp is
            at or after the specified timestamp.
          format: date-time
          type: string
        synced_shadow_topic_properties:
          description: |-
            The following properties are not allowed to be replicated and adding them
            to this list will result in an error:
            - `redpanda.remote.readreplica`
            - `redpanda.remote.recovery`
            - `redpanda.remote.allowgaps`
            - `redpanda.virtual.cluster.id`
            - `redpanda.leaders.preference`
            - `redpanda.storage.mode`

            This list is a list of properties in addition to the default properties
            that will be synced.  See `exclude_default`.
          items:
            type: string
          title: |-
            List of topic properties that should be synced from the source topic.
            The following properties will always be replicated
            - Partition count
            - `max.message.bytes`
            - `cleanup.policy`
            - `timestamp.type`
          type: array
      title: Options for syncing topic metadata
      type: object
    TopicPartitionInformation:
      properties:
        high_watermark:
          format: int64
          title: Shadowed partition's HWM
          type: string
        partition_id:
          format: int64
          title: Partition ID
          type: string
        source_high_watermark:
          format: int64
          title: Source partition's HWM
          type: string
        source_last_stable_offset:
          format: int64
          title: Source partition's LSO
          type: string
        source_last_updated_timestamp:
          format: date-time
          title: Timestamp of the last time the source partition information was updated
          type: string
      title: Topic partition information
      type: object
    UAISpec:
      description: Azure user assigned identity.
      properties:
        name:
          title: |-
            Naming convention: Between 3 and 128 characters and use Letters, numbers, underscores, and hyphens. Start with letters and numbers.
            https://azure.github.io/PSRule.Rules.Azure/en/rules/Azure.Identity.UserAssignedName/
          type: string
      required:
        - name
      type: object
    Unspecified:
      type: object
    UpdateClusterMetadata:
      description: Resource describing an in-progress UpdateCluster Operation.
      properties:
        update_type:
          items:
            $ref: '#/components/schemas/UpdateClusterType'
          title: 'Update operation types, based on the properties modified in the cluster'
          type: array
      title: UpdateClusterMetadata
      type: object
    UpdateClusterOperation:
      description: UpdateClusterOperation is the response of the update cluster rpc.
      properties:
        operation:
          $ref: '#/components/schemas/v1.Operation'
      type: object
    UpdateClusterResponse:
      description: |-
        UpdateClusterResponse is the resposne of UpdateCluster. It is provided by
        the Operation returned by UpdateCluster once the Operation is done.
      properties:
        cluster:
          $ref: '#/components/schemas/Cluster'
      type: object
    UpdateClusterType:
      enum:
        - UPDATE_CLUSTER_TYPE_CUSTOMER_CONFIG
        - UPDATE_CLUSTER_TYPE_SCALING
      type: string
    UpdateGroupBody:
      properties:
        group:
          $ref: '#/components/schemas/GroupUpdate'
        update_mask:
          type: string
      title: UpdateGroupRequest is the request of UpdateGroup
      type: object
    UpdateGroupResponse:
      properties:
        group:
          $ref: '#/components/schemas/Group'
      type: object
    UpdateOrganizationResponse:
      properties:
        organization:
          $ref: '#/components/schemas/Organization'
      type: object
    UpdateResourceGroupBody:
      properties:
        resource_group:
          properties:
            name:
              description: The unique name of the resource group.
              example: development
              type: string
          title: ResourceGroupUpdate represents a Redpanda resource group update input
          type: object
      required:
        - name
      title: UpdateResourceGroupRequest is the request of UpdateResourceGroup
      type: object
    UpdateResourceGroupResponse:
      properties:
        resource_group:
          $ref: '#/components/schemas/ResourceGroup'
      title: UpdateResourceGroupResponse is the response of UpdateResourceGroup
      type: object
    UpdateRoleBody:
      properties:
        role:
          $ref: '#/components/schemas/RoleUpdate'
        update_mask:
          type: string
      title: UpdateRoleRequest is the request of UpdateRole
      type: object
    UpdateRoleResponse:
      properties:
        role:
          $ref: '#/components/schemas/v1.Role'
      type: object
    UpdateServerlessClusterBody:
      description: UpdateServerlessClusterRequest is the request of UpdateServerlessCluster.
      properties:
        networking_config:
          $ref: '#/components/schemas/ServerlessNetworkingConfig'
        private_link_id:
          description: Private link configuration for the Serverless cluster.
          nullable: true
          type: string
        tags:
          additionalProperties:
            type: string
          title: User-defined tags for the Serverless cluster (full replacement)
          type: object
      type: object
    UpdateServerlessClusterOperation:
      description: UpdateServerlessClusterOperation is the response of the update cluster rpc.
      properties:
        operation:
          $ref: '#/components/schemas/v1.Operation'
      type: object
    UpdateServerlessPrivateLinkBody:
      properties:
        aws_config:
          $ref: '#/components/schemas/UpdateServerlessPrivateLinkRequest.AWS'
      type: object
    UpdateServerlessPrivateLinkMetadata:
      description: Resource describing an in-progress UpdateServerlessPrivateLink Operation.
      properties:
        serverless_private_link_id:
          type: string
      title: UpdateServerlessPrivateLinkMetadata
      type: object
    UpdateServerlessPrivateLinkOperation:
      properties:
        operation:
          $ref: '#/components/schemas/v1.Operation'
      type: object
    UpdateServerlessPrivateLinkRequest.AWS:
      properties:
        allowed_principals:
          description: |-
            allowed_principals specifies the list of AWS principals (for example, account
            ARNs) that can access the Redpanda AWS PrivateLink Endpoint service.
          items:
            type: string
          type: array
      type: object
    UpdateServiceAccountBody:
      properties:
        service_account:
          $ref: '#/components/schemas/ServiceAccountUpdate'
        update_mask:
          type: string
      title: UpdateServiceAccountRequest is the request of UpdateServiceAccount
      type: object
    UpdateServiceAccountResponse:
      properties:
        service_account:
          $ref: '#/components/schemas/ServiceAccount'
      type: object
    UpdateShadowLinkOperation:
      description: UpdateShadowLinkOperation wraps the Operation for updating a shadow link.
      properties:
        operation:
          $ref: '#/components/schemas/v1.Operation'
      type: object
    UpdateShadowLinkResponse:
      properties:
        shadow_link:
          $ref: '#/components/schemas/v2.ShadowLink'
      title: Response to the update shadow link request
      type: object
    UpdateUserInviteBody:
      properties:
        update_mask:
          type: string
        user_invite:
          $ref: '#/components/schemas/UserInviteUpdate'
      title: UpdateUserInviteRequest is the request of UpdateUserInvite
      type: object
    UpdateUserInviteResponse:
      properties:
        user_invite:
          $ref: '#/components/schemas/UserInvite'
      type: object
    User:
      properties:
        created_at:
          format: date-time
          type: string
        email:
          type: string
        id:
          type: string
        identities:
          items:
            $ref: '#/components/schemas/Identity'
          type: array
        name:
          type: string
        picture_url:
          type: string
      type: object
    UserAssignedIdentities:
      description: Azure user assigned identities used by Redpanda cluster. All identities shall be in iam_resource_group.
      properties:
        agent_user_assigned_identity:
          $ref: '#/components/schemas/UAISpec'
        aks_user_assigned_identity:
          $ref: '#/components/schemas/UAISpec'
        cert_manager_assigned_identity:
          $ref: '#/components/schemas/UAISpec'
        external_dns_assigned_identity:
          $ref: '#/components/schemas/UAISpec'
        kafka_connect_assigned_identity:
          $ref: '#/components/schemas/UAISpec'
        redpanda_cluster_assigned_identity:
          $ref: '#/components/schemas/UAISpec'
        redpanda_connect_api_assigned_identity:
          $ref: '#/components/schemas/UAISpec'
        redpanda_connect_assigned_identity:
          $ref: '#/components/schemas/UAISpec'
        redpanda_console_assigned_identity:
          $ref: '#/components/schemas/UAISpec'
        redpanda_operator_assigned_identity:
          $ref: '#/components/schemas/UAISpec'
      required:
        - agent_user_assigned_identity
        - aks_user_assigned_identity
        - redpanda_cluster_assigned_identity
        - cert_manager_assigned_identity
        - external_dns_assigned_identity
        - redpanda_console_assigned_identity
        - kafka_connect_assigned_identity
        - redpanda_connect_assigned_identity
        - redpanda_connect_api_assigned_identity
        - redpanda_operator_assigned_identity
      title: User Assigned Identities
      type: object
    UserInvite:
      properties:
        created_at:
          format: date-time
          type: string
        email:
          type: string
        expires_at:
          format: date-time
          type: string
        id:
          type: string
        invite_url:
          type: string
        role_bindings:
          items:
            $ref: '#/components/schemas/UserInvite.RoleBinding'
          type: array
      type: object
    UserInvite.RoleBinding:
      properties:
        role_name:
          type: string
        scope:
          $ref: '#/components/schemas/Scope'
      type: object
    UserInviteCreate:
      properties:
        email:
          type: string
        role_bindings:
          items:
            $ref: '#/components/schemas/UserInvite.RoleBinding'
          type: array
      type: object
    UserInviteUpdate:
      properties:
        expires_at:
          format: date-time
          type: string
        role_bindings:
          items:
            $ref: '#/components/schemas/UserInvite.RoleBinding'
          type: array
      type: object
    VPCEndpointConnection:
      properties:
        connection_id:
          description: Connection ID of VPC endpoint connected to Redpanda AWS PrivateLink Endpoint Service.
          example: vpce-con-00b9cba3360fe4aec
          type: string
        created_at:
          description: VPC endpoint creation timestamp.
          format: date-time
          type: string
        dns_entries:
          description: The list of DNS entries associated with VPC endpoint.
          items:
            $ref: '#/components/schemas/DNSEntry'
          type: array
        id:
          description: The ID of VPC endpoint.
          type: string
        load_balancer_arns:
          description: List of load balancer ARNs.
          items:
            type: string
          type: array
        owner:
          description: The owner of VPC endpoint.
          type: string
        state:
          description: The state of VPC endpoint connected to Redpanda AWS PrivateLink Endpoint Service.
          example: pendingAcceptance | pending | available | deleting | deleted | rejected | failed
          type: string
      type: object
    Vnet:
      description: Azure VNET.
      properties:
        name:
          title: |-
            The name of Azure VNET.
            Naming convention: Between 2 and 64 characters. Alphanumerics, underscores, periods, and hyphens. Start with alphanumeric. End alphanumeric or underscore.
            https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/resource-name-rules
          type: string
        resource_group:
          $ref: '#/components/schemas/CustomerManagedAzureResourceGroupSpec'
      required:
        - name
        - resource_group
      type: object
    common.v1.TLSSettings:
      properties:
        do_not_set_sni_hostname:
          title: 'If true, the SNI hostname will not be provided when TLS is used'
          type: boolean
        enabled:
          title: Whether or not TLS is enabled
          type: boolean
        tls_file_settings:
          $ref: '#/components/schemas/TLSFileSettings'
        tls_pem_settings:
          $ref: '#/components/schemas/TLSPEMSettings'
      title: TLS settings
      type: object
    controlplane.v1.TLSSettings:
      description: TLSSettings configures TLS encryption.
      properties:
        ca:
          description: The CA certificate for TLS.
          type: string
        cert:
          description: |-
            Cert is the certificate for TLS.

            Key and Cert are optional but if one is provided, then both must be provided.
          type: string
        do_not_set_sni_hostname:
          description: Do not set SNI hostname.
          type: boolean
        enabled:
          description: Enable TLS.
          type: boolean
        key:
          description: |-
            The private key for TLS.

            Key and Cert are optional but if one is provided, then both must be provided.
          type: string
      type: object
    rpc.Status:
      description: Describes errors
      properties:
        code:
          description: 'RPC status code, as described [here](https://github.com/googleapis/googleapis/blob/b4c238feaa1097c53798ed77035bbfeb7fc72e96/google/rpc/code.proto#L32).'
          enum:
            - OK
            - CANCELLED
            - UNKNOWN
            - INVALID_ARGUMENT
            - DEADLINE_EXCEEDED
            - NOT_FOUND
            - ALREADY_EXISTS
            - PERMISSION_DENIED
            - UNAUTHENTICATED
            - RESOURCE_EXHAUSTED
            - FAILED_PRECONDITION
            - ABORTED
            - OUT_OF_RANGE
            - UNIMPLEMENTED
            - INTERNAL
            - UNAVAILABLE
            - DATA_LOSS
          format: int32
          type: string
        details:
          description: A list of messages that carries the error details.
          items:
            description: Details of the error.
            oneOf:
              - allOf:
                  - properties:
                      '@type':
                        description: 'Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.'
                        enum:
                          - type.googleapis.com/google.rpc.BadRequest
                        type: string
                  - $ref: '#/components/schemas/BadRequest'
              - allOf:
                  - properties:
                      '@type':
                        description: 'Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.'
                        enum:
                          - type.googleapis.com/google.rpc.ErrorInfo
                        type: string
                  - $ref: '#/components/schemas/ErrorInfo'
              - allOf:
                  - properties:
                      '@type':
                        description: 'Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.'
                        enum:
                          - type.googleapis.com/google.rpc.QuotaFailure
                        type: string
                  - $ref: '#/components/schemas/QuotaFailure'
              - allOf:
                  - properties:
                      '@type':
                        description: 'Fully qualified protobuf type name of the underlying response, prefixed with `type.googleapis.com/`.'
                        enum:
                          - type.googleapis.com/google.rpc.Help
                        type: string
                  - $ref: '#/components/schemas/Help'
          type: array
        message:
          description: Detailed error message. No compatibility guarantees are given for the text contained in this message.
          type: string
      type: object
    v1.CreateShadowLinkRequest:
      description: CreateShadowLinkRequest creates a new shadow link.
      properties:
        shadow_link:
          $ref: '#/components/schemas/ShadowLinkCreate'
      type: object
    v1.CustomerManagedResources:
      description: The cloud resources created by user.
      properties:
        aws:
          $ref: '#/components/schemas/v1.CustomerManagedResources.AWS'
        azure:
          $ref: '#/components/schemas/v1.CustomerManagedResources.Azure'
        gcp:
          $ref: '#/components/schemas/v1.CustomerManagedResources.GCP'
      type: object
    v1.CustomerManagedResources.AWS:
      description: 'AWS resources created and managed by user, and required to deploy the Redpanda cluster.'
      properties:
        agent_instance_profile:
          $ref: '#/components/schemas/AWSInstanceProfile'
        cloud_storage_bucket:
          $ref: '#/components/schemas/CustomerManagedAWSCloudStorageBucket'
        cluster_security_group:
          $ref: '#/components/schemas/AWSSecurityGroup'
        connectors_node_group_instance_profile:
          $ref: '#/components/schemas/AWSInstanceProfile'
        connectors_security_group:
          $ref: '#/components/schemas/AWSSecurityGroup'
        k8s_cluster_role:
          $ref: '#/components/schemas/AWS.Role'
        node_security_group:
          $ref: '#/components/schemas/AWSSecurityGroup'
        oxla_node_group_instance_profile:
          $ref: '#/components/schemas/AWSInstanceProfile'
        oxla_security_group:
          $ref: '#/components/schemas/AWSSecurityGroup'
        permissions_boundary_policy:
          $ref: '#/components/schemas/Policy'
        redpanda_agent_security_group:
          $ref: '#/components/schemas/AWSSecurityGroup'
        redpanda_connect_node_group_instance_profile:
          $ref: '#/components/schemas/AWSInstanceProfile'
        redpanda_connect_security_group:
          $ref: '#/components/schemas/AWSSecurityGroup'
        redpanda_node_group_instance_profile:
          $ref: '#/components/schemas/AWSInstanceProfile'
        redpanda_node_group_security_group:
          $ref: '#/components/schemas/AWSSecurityGroup'
        utility_node_group_instance_profile:
          $ref: '#/components/schemas/AWSInstanceProfile'
        utility_security_group:
          $ref: '#/components/schemas/AWSSecurityGroup'
      required:
        - agent_instance_profile
        - connectors_node_group_instance_profile
        - utility_node_group_instance_profile
        - redpanda_node_group_instance_profile
        - k8s_cluster_role
        - redpanda_agent_security_group
        - connectors_security_group
        - redpanda_node_group_security_group
        - utility_security_group
        - cluster_security_group
        - node_security_group
        - cloud_storage_bucket
        - permissions_boundary_policy
      title: AWS Customer-Managed Resources
      type: object
    v1.CustomerManagedResources.Azure:
      description: 'Azure resources created and managed by user, and required to deploy the Redpanda cluster.'
      properties:
        cidrs:
          $ref: '#/components/schemas/CIDR'
        key_vaults:
          $ref: '#/components/schemas/KeyVaults'
        resource_groups:
          $ref: '#/components/schemas/ResourceGroups'
        security_groups:
          $ref: '#/components/schemas/SecurityGroups'
        tiered_cloud_storage:
          $ref: '#/components/schemas/CustomerManagedAzureBucketSpec'
        user_assigned_identities:
          $ref: '#/components/schemas/UserAssignedIdentities'
      required:
        - resource_groups
        - user_assigned_identities
        - tiered_cloud_storage
        - key_vaults
        - security_groups
        - cidrs
      title: Azure Customer-Managed Resoures
      type: object
    v1.CustomerManagedResources.GCP:
      description: 'GCP resources created and managed by user, and required to deploy the Redpanda cluster. See [Create a BYOVPC Cluster on GCP](https://docs.redpanda.com/redpanda-cloud/get-started/cluster-types/byoc/gcp/vpc-byo-gcp/).'
      properties:
        agent_service_account:
          $ref: '#/components/schemas/GCPServiceAccount'
        connector_service_account:
          $ref: '#/components/schemas/GCPServiceAccount'
        console_service_account:
          $ref: '#/components/schemas/GCPServiceAccount'
        gke_service_account:
          $ref: '#/components/schemas/GCPServiceAccount'
        psc_nat_subnet_name:
          description: |-
            NAT subnet name if GCP Private Service Connect (a.k.a Private Link) is enabled.
            If it is used for PSC v1, use psc_v2_nat_subnet_name to set NAT subnet name for PSC v2.
          type: string
        psc_v2_nat_subnet_name:
          description: |-
            NAT subnet name for PSC v2 if GCP Private Service Connect (a.k.a Private Link) is enabled and
            psc_nat_subnet_name is used for PSC v1.
          type: string
        redpanda_cluster_service_account:
          $ref: '#/components/schemas/GCPServiceAccount'
        redpanda_connect_api_service_account:
          $ref: '#/components/schemas/GCPServiceAccount'
        redpanda_connect_service_account:
          $ref: '#/components/schemas/GCPServiceAccount'
        redpanda_operator_service_account:
          $ref: '#/components/schemas/GCPServiceAccount'
        subnet:
          $ref: '#/components/schemas/GCP.Subnet'
        tiered_storage_bucket:
          $ref: '#/components/schemas/CustomerManagedGoogleCloudStorageBucket'
      required:
        - subnet
        - agent_service_account
        - console_service_account
        - connector_service_account
        - redpanda_cluster_service_account
        - gke_service_account
        - tiered_storage_bucket
        - redpanda_connect_api_service_account
        - redpanda_connect_service_account
      title: GCP Customer-Managed Resoures
      type: object
    v1.GetShadowLinkResponse:
      description: GetShadowLinkResponse returns the shadow link.
      properties:
        shadow_link:
          $ref: '#/components/schemas/v1.ShadowLink'
      type: object
    v1.ListShadowLinksResponse:
      description: ListShadowLinksResponse returns a list of shadow links.
      properties:
        next_page_token:
          description: Token for fetching the next page of results.
          type: string
        shadow_links:
          description: List of shadow links matching the filter.
          items:
            $ref: '#/components/schemas/ShadowLinkListItem'
          type: array
      type: object
    v1.Operation:
      description: Operation describes a long running operation
      properties:
        error:
          $ref: '#/components/schemas/rpc.Status'
        finished_at:
          description: Timestamp when the operation has finished.
          format: date-time
          type: string
        id:
          description: ID of the operation.
          readOnly: true
          type: string
        metadata:
          $ref: '#/components/schemas/OperationMetadata'
        resource_id:
          nullable: true
          title: ID of the associated resource
          type: string
        response:
          $ref: '#/components/schemas/OperationResponse'
        started_at:
          description: Timestamp when the operation has started.
          format: date-time
          type: string
        state:
          $ref: '#/components/schemas/Operation.State'
        type:
          $ref: '#/components/schemas/Operation.Type'
      readOnly: true
      title: Operation
      type: object
    v1.Role:
      properties:
        created_at:
          format: date-time
          type: string
        description:
          description: The description of the role.
          example: Billing Admins have access to billing information.
          type: string
        id:
          type: string
        is_builtin:
          description: Whether the role is a built-in role. Built-in roles cannot be modified or deleted.
          type: boolean
        name:
          description: The unique name of the role.
          example: billing_admin
          type: string
        permissions:
          items:
            type: string
          type: array
        updated_at:
          format: date-time
          type: string
      type: object
    v1.RoleBinding:
      properties:
        account_id:
          type: string
        created_at:
          format: date-time
          type: string
        id:
          type: string
        role_name:
          type: string
        scope:
          $ref: '#/components/schemas/Scope'
        updated_at:
          format: date-time
          type: string
      type: object
    v1.ShadowLink:
      description: |-
        ShadowLink represents a shadow link resource.
        Shadow links enable data replication from one Redpanda cluster to another.
      properties:
        client_options:
          $ref: '#/components/schemas/v1.ShadowLinkClientOptions'
        consumer_offset_sync_options:
          $ref: '#/components/schemas/ConsumerOffsetSyncOptions'
        created_at:
          description: Timestamp when the shadow link was created.
          format: date-time
          readOnly: true
          type: string
        id:
          description: Shadow link ID.
          readOnly: true
          type: string
        name:
          title: |-
            Human-readable name for the shadow link. Must be unique.
            Must follow Kubernetes DNS-1123 subdomain naming convention:
            - lowercase alphanumeric characters, hyphens allowed
            - must start and end with alphanumeric character
            - maximum 63 characters
          type: string
        reason:
          description: Reason provides additional context for the current state.
          readOnly: true
          type: string
        schema_registry_sync_options:
          $ref: '#/components/schemas/SchemaRegistrySyncOptions'
        security_sync_options:
          $ref: '#/components/schemas/SecuritySettingsSyncOptions'
        shadow_redpanda_id:
          description: Shadow Redpanda cluster ID where the shadow link is created. This ID is immutable.
          type: string
        state:
          $ref: '#/components/schemas/ShadowLink.State'
        topic_metadata_sync_options:
          $ref: '#/components/schemas/TopicMetadataSyncOptions'
        updated_at:
          description: Timestamp when the shadow link was last updated.
          format: date-time
          readOnly: true
          type: string
      type: object
    v1.ShadowLinkClientOptions:
      description: ShadowLinkClientOptions configures the Kafka client connection settings.
      properties:
        authentication_configuration:
          $ref: '#/components/schemas/AuthenticationConfiguration'
        bootstrap_servers:
          description: Bootstrap servers for the source cluster. Required if source Redpanda ID is not provided.
          items:
            type: string
          type: array
        client_id:
          description: Client ID for the connection.
          readOnly: true
          type: string
        connection_timeout_ms:
          description: Connection timeout in milliseconds (defaults to 1000ms if 0).
          format: int32
          type: integer
        effective_connection_timeout_ms:
          format: int32
          readOnly: true
          title: The effective connection timeout in milliseconds
          type: integer
        effective_fetch_max_bytes:
          format: int32
          readOnly: true
          title: The effective fetch max bytes
          type: integer
        effective_fetch_min_bytes:
          format: int32
          readOnly: true
          title: The effective fetch min bytes
          type: integer
        effective_fetch_partition_max_bytes:
          format: int32
          readOnly: true
          title: The effective fetch partition max bytes
          type: integer
        effective_fetch_wait_max_ms:
          format: int32
          readOnly: true
          title: The effective fetch wait max in milliseconds
          type: integer
        effective_metadata_max_age_ms:
          format: int32
          readOnly: true
          title: The effective metadata max age in milliseconds
          type: integer
        effective_retry_backoff_ms:
          format: int32
          readOnly: true
          title: The effective retry backoff in milliseconds
          type: integer
        fetch_max_bytes:
          description: Maximum bytes to fetch (defaults to 20971520 bytes / 20 MiB if 0).
          format: int32
          type: integer
        fetch_min_bytes:
          description: Minimum bytes to fetch (defaults to 5242880 bytes / 5 MiB if 0).
          format: int32
          type: integer
        fetch_partition_max_bytes:
          description: Maximum bytes per partition to fetch (defaults to 1048576 bytes / 1 MiB if 0).
          format: int32
          type: integer
        fetch_wait_max_ms:
          description: Maximum time to wait for fetch requests in milliseconds (defaults to 500ms if 0).
          format: int32
          type: integer
        metadata_max_age_ms:
          description: Metadata refresh interval in milliseconds (defaults to 10000ms if 0).
          format: int32
          type: integer
        retry_backoff_ms:
          description: Retry backoff in milliseconds (defaults to 100ms if 0).
          format: int32
          type: integer
        source_cluster_id:
          description: Source cluster ID.
          type: string
        tls_settings:
          $ref: '#/components/schemas/controlplane.v1.TLSSettings'
      type: object
    v2.GetShadowLinkResponse:
      properties:
        shadow_link:
          $ref: '#/components/schemas/v2.ShadowLink'
      title: Response to getting a shadow link
      type: object
    v2.ListShadowLinksResponse:
      properties:
        shadow_links:
          items:
            $ref: '#/components/schemas/v2.ShadowLink'
          title: The shadow links
          type: array
      title: All shadow links on the cluster
      type: object
    v2.ShadowLink:
      properties:
        configurations:
          $ref: '#/components/schemas/ShadowLinkConfigurations'
        name:
          title: The name of the shadow link
          type: string
        status:
          $ref: '#/components/schemas/ShadowLinkStatus'
        uid:
          readOnly: true
          title: The UUID of the shadow link
          type: string
      required:
        - name
      title: A ShadowLink resource
      type: object
    v2.ShadowLinkClientOptions:
      properties:
        authentication_configuration:
          $ref: '#/components/schemas/AuthenticationConfiguration'
        bootstrap_servers:
          items:
            type: string
          title: The bootstrap servers to use
          type: array
        client_id:
          readOnly: true
          title: |-
            The Client ID for the Kafka RPC requests setn by this cluster to the
            source cluster
          type: string
        connection_timeout_ms:
          format: int32
          title: |-
            Connection timeout.
            If 0 is provided, defaults to 1 second
          type: integer
        effective_connection_timeout_ms:
          format: int32
          readOnly: true
          title: The effective connection timeout in milliseconds
          type: integer
        effective_fetch_max_bytes:
          format: int32
          readOnly: true
          title: The effective fetch max bytes
          type: integer
        effective_fetch_min_bytes:
          format: int32
          readOnly: true
          title: The effective fetch min bytes
          type: integer
        effective_fetch_partition_max_bytes:
          format: int32
          readOnly: true
          title: The effective fetch partition max bytes
          type: integer
        effective_fetch_wait_max_ms:
          format: int32
          readOnly: true
          title: The effective fetch wait max in milliseconds
          type: integer
        effective_metadata_max_age_ms:
          format: int32
          readOnly: true
          title: The effective metadata max age in milliseconds
          type: integer
        effective_retry_backoff_ms:
          format: int32
          readOnly: true
          title: The effective retry backoff in milliseconds
          type: integer
        fetch_max_bytes:
          format: int32
          title: |-
            Fetch max bytes.
            If 0 is provided, defaults to 20 MiB
          type: integer
        fetch_min_bytes:
          format: int32
          title: |-
            Fetch min bytes.
            If 0 is provided, defaults to 5 MiB
          type: integer
        fetch_partition_max_bytes:
          format: int32
          title: |-
            Fetch partition max bytes.
            If 0 is provided, defaults to 5 MiB
          type: integer
        fetch_wait_max_ms:
          format: int32
          title: |-
            Fetch request timeout.
            If 0 is provided, defaults to 500ms
          type: integer
        metadata_max_age_ms:
          format: int32
          title: |-
            Max metadata age.
            If 0 is provided, defaults to 10 seconds
          type: integer
        retry_backoff_ms:
          format: int32
          title: |-
            Retry base backoff.
            If 0 is provided, defaults to 100ms
          type: integer
        source_cluster_id:
          title: |-
            If provided, this is the expected ID of the source cluster.  If it does
            not match then the connection will be rejected.  If provided, this value
            must match the `ClusterId` field returned in the Kafka Metadata response
            message
          type: string
        tls_settings:
          $ref: '#/components/schemas/common.v1.TLSSettings'
      required:
        - bootstrap_servers
      title: Options for the client link
      type: object
  securitySchemes:
    auth0:
      description: |-
        The Cloud APIs use OAuth 2.0 for authentication.

        **For API Explorer (browser):** Authentication is handled automatically. Click "Get token" on any endpoint to authenticate with your Redpanda Cloud account and include a bearer token for requests made in API Explorer.

        **For programmatic access (CLI, SDKs, scripts):** You must create a service account in the Redpanda Cloud UI and use the OAuth 2.0 client credentials flow to obtain an access token. See the Authentication topic for detailed instructions.

        The same access token can be used for both Control Plane and Data Plane API requests for as long as the token is valid (one hour).
      flows:
        implicit:
          authorizationUrl: 'https://auth.prd.cloud.redpanda.com/oauth/authorize'
          scopes: {}
          x-client-id: dQjapNIAHhF7EQqQToRla3yEII9sUSap
      type: oauth2
info:
  description: 'The Redpanda Cloud Control Plane API allows programmatic management of Redpanda Cloud resources including clusters, networks, and resource groups.'
  title: Redpanda Cloud Control Plane API
  version: v1
  x-feedbackLink:
    label: Share feedback
    url: 'https://github.com/redpanda-data/cloud-docs/issues/new?template=01_doc_request.yml'
openapi: 3.0.3
paths:
  /v1/clusters:
    get:
      description: 'List Redpanda clusters. The `filter.` query string parameters find matching clusters that meet all specified conditions. Note: This endpoint does not return `dataplane_api.url`. Use the Get Cluster endpoint to retrieve a cluster''s Data Plane API URL.'
      operationId: ClusterService_ListClusters
      parameters:
        - description: Resource group ID.
          in: query
          name: filter.resource_group_id
          schema:
            type: string
        - description: Name of cluster.
          in: query
          name: filter.name_contains
          schema:
            type: string
        - description: Cloud provider region.
          in: query
          name: filter.region
          schema:
            type: string
        - description: Cloud provider.
          in: query
          name: filter.cloud_provider
          schema:
            enum:
              - CLOUD_PROVIDER_AWS
              - CLOUD_PROVIDER_GCP
              - CLOUD_PROVIDER_AZURE
            type: string
        - description: Network ID.
          in: query
          name: filter.network_id
          schema:
            type: string
        - description: Limit the paginated response to a number of items.
          in: query
          name: page_size
          schema:
            format: int32
            maximum: 100
            minimum: 1
            type: integer
        - description: 'Value of the `next_page_token` field returned by the previous response. If not provided, the system assumes the first page is requested.'
          in: query
          name: page_token
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                clusters:
                  - adp_api: null
                    ai_gateway: null
                    api_gateway_access: NETWORK_ACCESS_MODE_PUBLIC
                    cloud_provider: CLOUD_PROVIDER_GCP
                    cloud_provider_tags: {}
                    cloud_storage: null
                    cluster_configuration: null
                    connection_type: CONNECTION_TYPE_PUBLIC
                    created_at: '2023-01-01T00:00:00Z'
                    current_redpanda_version: ''
                    customer_managed_resources: null
                    dataplane_api: null
                    desired_redpanda_version: ''
                    http_proxy:
                      all_urls: null
                      mtls:
                        ca_certificates_pem: []
                        enabled: false
                        principal_mapping_rules: []
                      sasl: null
                      url: 'https://pandaproxy-aa0000l0.cjd3r21c4vs870t0ku30.fmc.prd.cloud.redpanda.com:9092'
                    id: cjd3r21c4vs870t0ku30
                    kafka_api:
                      all_seed_brokers: null
                      mtls: null
                      sasl: null
                      seed_brokers:
                        - 'seed-aa0000l0.cjd3r21c4vs870t0ku30.fmc.prd.cloud.redpanda.com:9092'
                    kafka_connect: null
                    maintenance_window_config: null
                    name: my-new-cluster
                    nat_gateways: []
                    network_id: cjb69k1c4vs45df9bee0
                    oxla: null
                    prometheus:
                      url: 'https://console-aa0000l0.cjd3r21c4vs870t0ku30.fmc.prd.cloud.redpanda.com/api/cloud/prometheus/public_metrics'
                    read_replica_cluster_ids: []
                    redpanda_console:
                      url: 'https://console-aa0000l0.cjd3r21c4vs870t0ku30.fmc.prd.cloud.redpanda.com/api'
                    redpanda_node_count: 0
                    region: us-west1
                    resource_group_id: 6c09e47b-f426-4ec7-a7b4-8048caf8ae47
                    sandbox: null
                    schema_registry:
                      all_urls: null
                      mtls: null
                      sasl: null
                      url: 'schema-registry-aa0000l0.cjd3r21c4vs870t0ku30.fmc.prd.cloud.redpanda.com:9092'
                    state: STATE_READY
                    state_description: null
                    throughput_tier: tier-1-gcp-v2-x86
                    type: TYPE_DEDICATED
                    updated_at: '2023-01-01T00:00:00Z'
                    zones:
                      - us-west1-a
                      - us-west1-b
                      - us-west1-c
                next_page_token: some-opaque-string
              schema:
                $ref: '#/components/schemas/ListClustersResponse'
          description: OK
        '500':
          content:
            application/json:
              example:
                code: INTERNAL
                details: []
                message: Internal Server Error
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
      summary: List clusters
      tags:
        - Clusters
    post:
      description: 'Create a Redpanda cluster. Returns a long-running operation. For more information, see [Use the Control Plane API](https://docs.redpanda.com/redpanda-cloud/manage/api/controlplane/). To check operation state, call `GET /v1/operations/{id}`. Refer to [Regions](https://docs.redpanda.com/api/doc/cloud-controlplane/topic/topic-regions-and-usage-tiers) for the list of available regions, zones, and tiers combinations for each cloud provider. For BYOC clusters, follow additional steps to [create a BYOC cluster](https://docs.redpanda.com/redpanda-cloud/manage/api/cloud-byoc-controlplane-api/#additional-steps-to-create-a-byoc-cluster).'
      operationId: ClusterService_CreateCluster
      requestBody:
        content:
          application/json:
            example:
              cluster:
                cloud_provider: CLOUD_PROVIDER_GCP
                connection_type: CONNECTION_TYPE_PUBLIC
                name: my-new-cluster
                network_id: cjb69k1c4vs45df9bee0
                region: us-west1
                resource_group_id: 6c09e47b-f426-4ec7-a7b4-8048caf8ae47
                throughput_tier: tier-1-gcp-v2-x86
                type: TYPE_DEDICATED
                zones:
                  - us-west1-a
                  - us-west1-b
                  - us-west1-c
            schema:
              $ref: '#/components/schemas/CreateClusterRequest'
        description: CreateClusterRequest is the request of CreateCluster.
        required: true
        x-originalParamName: body
      responses:
        '202':
          content:
            application/json:
              example:
                operation:
                  finished_at: null
                  id: cjb5uh9c4vs1td8emmcg
                  metadata:
                    '@type': type.googleapis.com/redpanda.api.controlplane.v1.CreateClusterMetadata
                    cluster_id: cjb5vehc4vs19qc11pjg
                  resource_id: cjb5vehc4vs19qc11pjg
                  started_at: null
                  state: STATE_IN_PROGRESS
                  type: TYPE_CREATE_CLUSTER
              schema:
                $ref: '#/components/schemas/CreateClusterOperation'
          description: Accepted
        '400':
          content:
            application/json:
              examples:
                Bad Request:
                  description: '404'
                  value:
                    code: INVALID_ARGUMENT
                    message: Invalid Request
                Invalid Cluster Type:
                  description: Invalid Cluster Type
                  summary: Invalid Cluster Type
                  value:
                    code: INVALID_ARGUMENT
                    message: Invalid Request
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Bad Request
        '409':
          content:
            application/json:
              examples:
                Conflict:
                  description: Conflict
                  summary: Conflict
                  value:
                    code: ALREADY_EXISTS
                    message: Cluster with given name already exists
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Conflict
        '500':
          content:
            application/json:
              examples:
                Internal Server Error:
                  description: Internal Server Error
                  summary: Internal Server Error
                  value:
                    code: INTERNAL
                    message: Internal Server Error
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
      summary: Create cluster
      tags:
        - Clusters
  '/v1/clusters/{cluster.id}':
    patch:
      description: Update a Redpanda cluster.
      operationId: ClusterService_UpdateCluster
      parameters:
        - description: ID of the cluster.
          in: path
          name: cluster.id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            example:
              schema_registry:
                mtls:
                  ca_certificates_pem:
                    - |-
                      -----BEGIN CERTIFICATE-----
                      MII........
                      -----END CERTIFICATE-----
                  enabled: true
            schema:
              description: Resource describing an Update Cluster.
              properties:
                api_gateway_access:
                  $ref: '#/components/schemas/NetworkAccessMode'
                aws_private_link:
                  $ref: '#/components/schemas/AWSPrivateLinkSpec'
                azure_private_link:
                  $ref: '#/components/schemas/AzurePrivateLinkSpec'
                cloud_provider_tags:
                  additionalProperties:
                    type: string
                  description: |-
                    Tags that are placed on Cloud resources.
                    If the cloud provider is GCP and the name of a tag has the prefix "gcp.network-tag.", the tag
                    is a network tag that will be added to the Redpanda cluster GKE nodes. Otherwise, the tag
                    is a normal tag.
                    For example, if the name of a tag is "gcp.network-tag.network-tag-foo", the network tag named
                    "network-tag-foo" will be added to the Redpanda cluster GKE nodes.
                    Note: The value of a network tag will be ignored.
                    See the official [GCP VPC](https://cloud.google.com/vpc/docs/add-remove-network-tags) for more details on network tags.
                  type: object
                cloud_storage:
                  $ref: '#/components/schemas/ClusterUpdate.CloudStorage'
                cluster_configuration:
                  $ref: '#/components/schemas/ClusterUpdate.ClusterConfiguration'
                customer_managed_resources:
                  $ref: '#/components/schemas/CustomerManagedResourcesUpdate'
                gcp_private_service_connect:
                  $ref: '#/components/schemas/GCPPrivateServiceConnectSpec'
                http_proxy:
                  $ref: '#/components/schemas/HTTPProxySpec'
                kafka_api:
                  $ref: '#/components/schemas/KafkaAPISpec'
                kafka_connect:
                  $ref: '#/components/schemas/KafkaConnect'
                maintenance_window_config:
                  $ref: '#/components/schemas/MaintenanceWindowConfig'
                name:
                  description: Unique name of the cluster.
                  example: development-cluster
                  type: string
                read_replica_cluster_ids:
                  description: IDs of clusters which may create read-only topics from this cluster.
                  items:
                    type: string
                  type: array
                redpanda_node_count:
                  format: int32
                  type: integer
                schema_registry:
                  $ref: '#/components/schemas/SchemaRegistrySpec'
                throughput_tier:
                  type: string
              required:
                - cluster
              title: ClusterUpdate
              type: object
        description: |-
          ClusterUpdate

          Resource describing an Update Cluster.
        required: true
        x-originalParamName: cluster
      responses:
        '202':
          content:
            application/json:
              example:
                operation:
                  finished_at: null
                  id: cjd5159c4vs6rgpkevsg
                  metadata:
                    '@type': type.googleapis.com/redpanda.api.controlplane.v1.UpdateClusterMetadata
                    update_type: []
                  resource_id: cjd3r21c4vs870t0ku30
                  started_at: null
                  state: STATE_IN_PROGRESS
                  type: TYPE_UPDATE_CLUSTER
              schema:
                $ref: '#/components/schemas/ClusterUpdate'
          description: Accepted
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
      summary: Update cluster
      tags:
        - Clusters
  '/v1/clusters/{id}':
    delete:
      description: 'Delete a Redpanda Cluster. Returns a long-running operation. For more information, see [Use the Control Plane API](https://docs.redpanda.com/redpanda-cloud/manage/api/controlplane/). To check operation state, call `GET /v1/operations/{id}`.'
      operationId: ClusterService_DeleteCluster
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '202':
          content:
            application/json:
              example:
                operation:
                  finished_at: null
                  id: cjd4vu1c4vs5ugb02itg
                  metadata:
                    '@type': type.googleapis.com/redpanda.api.controlplane.v1.DeleteClusterMetadata
                    required_action: ''
                  resource_id: cjd3r21c4vs870t0ku30
                  started_at: null
                  state: STATE_IN_PROGRESS
                  type: TYPE_DELETE_CLUSTER
              schema:
                $ref: '#/components/schemas/DeleteClusterOperation'
          description: Accepted
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
      summary: Delete cluster
      tags:
        - Clusters
    get:
      description: Get information about a Redpanda cluster.
      operationId: ClusterService_GetCluster
      parameters:
        - example: cjd3r21c4vs870t0ku30
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                cluster:
                  adp_api: null
                  ai_gateway: null
                  api_gateway_access: NETWORK_ACCESS_MODE_UNSPECIFIED
                  cloud_provider: CLOUD_PROVIDER_GCP
                  cloud_provider_tags: {}
                  cloud_storage: null
                  cluster_configuration: null
                  connection_type: CONNECTION_TYPE_PUBLIC
                  created_at: '2023-01-01T00:00:00Z'
                  current_redpanda_version: ''
                  customer_managed_resources: null
                  dataplane_api: null
                  desired_redpanda_version: ''
                  http_proxy:
                    all_urls: null
                    mtls:
                      ca_certificates_pem: []
                      enabled: false
                      principal_mapping_rules: []
                    sasl: null
                    url: 'https://pandaproxy-aa0000l0.cjd3r21c4vs870t0ku30.fmc.prd.cloud.redpanda.com:9092'
                  id: cjd3r21c4vs870t0ku30
                  kafka_api:
                    all_seed_brokers: null
                    mtls: null
                    sasl: null
                    seed_brokers:
                      - 'seed-aa0000l0.cjd3r21c4vs870t0ku30.fmc.prd.cloud.redpanda.com:9092'
                  kafka_connect: null
                  maintenance_window_config: null
                  name: my-new-cluster
                  nat_gateways: []
                  network_id: cjb69k1c4vs45df9bee0
                  oxla: null
                  prometheus:
                    url: 'https://console-aa0000l0.cjd3r21c4vs870t0ku30.fmc.prd.cloud.redpanda.com/api/cloud/prometheus/public_metrics'
                  read_replica_cluster_ids: []
                  redpanda_console:
                    url: 'https://console-aa0000l0.cjd3r21c4vs870t0ku30.fmc.prd.cloud.redpanda.com/api'
                  redpanda_node_count: 0
                  region: us-west1
                  resource_group_id: 6c09e47b-f426-4ec7-a7b4-8048caf8ae47
                  sandbox: null
                  schema_registry:
                    all_urls: null
                    mtls: null
                    sasl: null
                    url: 'schema-registry-aa0000l0.cjd3r21c4vs870t0ku30.fmc.prd.cloud.redpanda.com:9092'
                  state: STATE_READY
                  state_description: null
                  throughput_tier: tier-1-gcp-v2-x86
                  type: TYPE_DEDICATED
                  updated_at: '2023-01-01T00:00:00Z'
                  zones:
                    - us-west1-a
                    - us-west1-b
                    - us-west1-c
              schema:
                $ref: '#/components/schemas/GetClusterResponse'
          description: OK
        '404':
          content:
            application/json:
              example:
                code: NOT_FOUND
                details: []
                message: Cluster not found
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
      summary: Get cluster
      tags:
        - Clusters
  /v1/groups:
    get:
      description: List groups in your organization.
      operationId: GroupService_ListGroups
      parameters:
        - in: query
          name: filter.name
          schema:
            type: string
        - in: query
          name: page_size
          schema:
            format: int32
            type: integer
        - in: query
          name: page_token
          schema:
            type: string
        - in: query
          name: read_mask
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListGroupsResponse'
          description: OK
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: List groups
      tags:
        - Control Plane Groups
    post:
      description: Create a Redpanda Cloud Group.
      operationId: GroupService_CreateGroup
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateGroupRequest'
        description: CreateGroupRequest is the request of CreateGroup.
        required: true
        x-originalParamName: body
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateGroupResponse'
          description: Group Created
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Create group
      tags:
        - Control Plane Groups
  '/v1/groups/{id}':
    delete:
      description: Delete a group.
      operationId: GroupService_DeleteGroup
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '204':
          content:
            application/json:
              schema: {}
          description: Group was deleted successfully
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Delete group
      tags:
        - Control Plane Groups
    get:
      description: Get group details.
      operationId: GroupService_GetGroup
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetGroupResponse'
          description: Ok
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Get group
      tags:
        - Control Plane Groups
    patch:
      description: Update a Redpanda Cloud group.
      operationId: GroupService_UpdateGroup
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateGroupBody'
        required: true
        x-originalParamName: body
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateGroupResponse'
          description: Ok
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Update group
      tags:
        - Control Plane Groups
  '/v1/network/{network_id}/network-peerings':
    get:
      description: List Redpanda networks peerings.
      operationId: NetworkPeeringService_ListNetworkPeerings
      parameters:
        - in: path
          name: network_id
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                network_peerings:
                  - aws:
                      peer_owner_id: '123456789012'
                      peer_vpc_id: vpc-0123456789abcdef0
                    cloud_provider: CLOUD_PROVIDER_AWS
                    created_at: '2023-01-01T00:00:00Z'
                    deleted_at: null
                    display_name: my-aws-peering
                    id: cjp5vehc4vs19qc11pjg
                    network_id: cjd533pc4vs8pjdkrrv0
                    state: STATE_READY
                    status:
                      cloud_provider:
                        aws:
                          accepter_cidr_block: 10.1.0.0/16
                          expiration_time: null
                          status: active
                          status_message: ''
                      created:
                        aws:
                          vpc_peering_connection_id: pcx-0123456789abcdef0
                    updated_at: '2023-01-01T00:00:00Z'
              schema:
                $ref: '#/components/schemas/ListNetworkPeeringsResponse'
          description: OK
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
      summary: List network peerings
      tags:
        - Network Peerings
  '/v1/network/{network_id}/network-peerings/{id}':
    delete:
      description: Delete a Redpanda network peering.
      operationId: NetworkPeeringService_DeleteNetworkPeering
      parameters:
        - in: path
          name: network_id
          required: true
          schema:
            type: string
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '202':
          content:
            application/json:
              example:
                operation:
                  finished_at: null
                  id: cjp5999c4vs6rgpkevsg
                  metadata:
                    '@type': type.googleapis.com/redpanda.api.controlplane.v1.DeleteNetworkPeeringMetadata
                  resource_id: cjp5vehc4vs19qc11pjg
                  started_at: null
                  state: STATE_IN_PROGRESS
                  type: TYPE_DELETE_NETWORK_PEERING
              schema:
                $ref: '#/components/schemas/DeleteNetworkPeeringOperation'
          description: Delete request accepted
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
      summary: Delete network peering
      tags:
        - Network Peerings
    get:
      description: Get information about a Redpanda network peering.
      operationId: NetworkPeeringService_GetNetworkPeering
      parameters:
        - example: cjd533pc4vs8pjdkrrv0
          in: path
          name: network_id
          required: true
          schema:
            type: string
        - example: cjp5vehc4vs19qc11pjg
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                network_peering:
                  aws:
                    peer_owner_id: '123456789012'
                    peer_vpc_id: vpc-0123456789abcdef0
                  cloud_provider: CLOUD_PROVIDER_AWS
                  created_at: '2023-01-01T00:00:00Z'
                  deleted_at: null
                  display_name: my-aws-peering
                  id: cjp5vehc4vs19qc11pjg
                  network_id: cjd533pc4vs8pjdkrrv0
                  state: STATE_READY
                  status:
                    cloud_provider:
                      aws:
                        accepter_cidr_block: 10.1.0.0/16
                        expiration_time: null
                        status: active
                        status_message: ''
                    created:
                      aws:
                        vpc_peering_connection_id: pcx-0123456789abcdef0
                  updated_at: '2023-01-01T00:00:00Z'
              schema:
                $ref: '#/components/schemas/GetNetworkPeeringRequest'
          description: OK
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
      summary: Get network peering
      tags:
        - Network Peerings
  '/v1/network/{network_peering.network_id}/network-peerings':
    post:
      description: Create a Redpanda network peering.
      operationId: NetworkPeeringService_CreateNetworkPeering
      parameters:
        - in: path
          name: network_peering.network_id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            example:
              network_peering:
                aws:
                  peer_owner_id: '123456789012'
                  peer_vpc_id: vpc-0123456789abcdef0
                cloud_provider: CLOUD_PROVIDER_AWS
                display_name: my-aws-peering
                network_id: cjd533pc4vs8pjdkrrv0
            schema:
              $ref: '#/components/schemas/CreateNetworkPeeringBody'
        required: true
        x-originalParamName: body
      responses:
        '202':
          content:
            application/json:
              example:
                operation:
                  finished_at: null
                  id: cjp5uh9c4vs1td8emmcg
                  metadata:
                    '@type': type.googleapis.com/redpanda.api.controlplane.v1.CreateNetworkPeeringMetadata
                    network_peering_id: cjp5vehc4vs19qc11pjg
                  resource_id: cjp5vehc4vs19qc11pjg
                  started_at: null
                  state: STATE_IN_PROGRESS
                  type: TYPE_CREATE_NETWORK_PEERING
              schema:
                $ref: '#/components/schemas/CreateNetworkPeeringOperation'
          description: Accepted
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
      summary: Create network peering
      tags:
        - Network Peerings
  /v1/networks:
    get:
      description: List Redpanda networks.
      operationId: NetworkService_ListNetworks
      parameters:
        - description: Resource group ID.
          in: query
          name: filter.resource_group_id
          schema:
            type: string
        - description: Name of network.
          in: query
          name: filter.name_contains
          schema:
            type: string
        - description: Name of cloud provider region.
          in: query
          name: filter.region
          schema:
            type: string
        - description: Cloud provider.
          in: query
          name: filter.cloud_provider
          schema:
            enum:
              - CLOUD_PROVIDER_AWS
              - CLOUD_PROVIDER_GCP
              - CLOUD_PROVIDER_AZURE
            type: string
        - description: Limit the paginated response to a number of items.
          in: query
          name: page_size
          schema:
            format: int32
            maximum: 100
            minimum: 1
            type: integer
        - description: 'Value of the `next_page_token` field returned by the previous response. If not provided, the system assumes the first page is requested.'
          in: query
          name: page_token
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                networks:
                  - cidr_block: 10.0.0.0/20
                    cloud_provider: CLOUD_PROVIDER_GCP
                    cluster_type: TYPE_DEDICATED
                    created_at: '2023-01-01T00:00:00Z'
                    customer_managed_resources: null
                    egress_spec: null
                    id: cjd533pc4vs8pjdkrrv0
                    name: my-network
                    region: us-west1
                    resource_group_id: 6c09e47b-f426-4ec7-a7b4-8048caf8ae47
                    state: STATE_READY
                    updated_at: '2023-01-01T00:00:00Z'
                    zones: []
                next_page_token: some-opaque-string
              schema:
                $ref: '#/components/schemas/ListNetworksResponse'
          description: OK
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
      summary: List networks
      tags:
        - Networks
    post:
      description: 'Create a Redpanda network. Returns a long-running operation. For more information, see [Use the Control Plane API](https://docs.redpanda.com/redpanda-cloud/manage/api/controlplane/). To check operation state, call `GET /v1/operations/{id}`.'
      operationId: NetworkService_CreateNetwork
      requestBody:
        content:
          application/json:
            example:
              network:
                cidr_block: 10.0.0.0/20
                cloud_provider: CLOUD_PROVIDER_GCP
                cluster_type: TYPE_DEDICATED
                name: my-network
                region: us-west1
                resource_group_id: 6c09e47b-f426-4ec7-a7b4-8048caf8ae47
            schema:
              $ref: '#/components/schemas/CreateNetworkRequest'
        description: CreateNetworkRequest is the request of CreateNetwork.
        required: true
        x-originalParamName: body
      responses:
        '202':
          content:
            application/json:
              example:
                operation:
                  finished_at: null
                  id: cjd55r9c4vsao59ucoqg
                  metadata:
                    '@type': type.googleapis.com/redpanda.api.controlplane.v1.CreateNetworkMetadata
                    network_id: cjd533pc4vs8pjdkrrv0
                  resource_id: cjd533pc4vs8pjdkrrv0
                  started_at: null
                  state: STATE_IN_PROGRESS
                  type: TYPE_CREATE_NETWORK
              schema:
                $ref: '#/components/schemas/CreateNetworkOperation'
          description: Accepted
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Bad Request
        '409':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Conflict
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
      summary: Create network
      tags:
        - Networks
  '/v1/networks/{id}':
    delete:
      description: Delete a Redpanda network.
      operationId: NetworkService_DeleteNetwork
      parameters:
        - description: Network ID.
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '202':
          content:
            application/json:
              example:
                operation:
                  finished_at: null
                  id: cjd58g1c4vscdqkcvbqg
                  metadata:
                    '@type': type.googleapis.com/redpanda.api.controlplane.v1.DeleteNetworkMetadata
                  resource_id: cjd533pc4vs8pjdkrrv0
                  started_at: null
                  state: STATE_IN_PROGRESS
                  type: TYPE_DELETE_NETWORK
              schema:
                $ref: '#/components/schemas/DeleteNetworkOperation'
          description: Delete request accepted
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
      summary: Delete network
      tags:
        - Networks
    get:
      description: Get information about a Redpanda network.
      operationId: NetworkService_GetNetwork
      parameters:
        - description: Network ID.
          example: cjd533pc4vs8pjdkrrv0
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                network:
                  cidr_block: 10.0.0.0/20
                  cloud_provider: CLOUD_PROVIDER_GCP
                  cluster_type: TYPE_DEDICATED
                  created_at: '2023-01-01T00:00:00Z'
                  customer_managed_resources: null
                  egress_spec: null
                  id: cjd533pc4vs8pjdkrrv0
                  name: my-network
                  region: us-west1
                  resource_group_id: 6c09e47b-f426-4ec7-a7b4-8048caf8ae47
                  state: STATE_READY
                  updated_at: '2023-01-01T00:00:00Z'
                  zones: []
              schema:
                $ref: '#/components/schemas/GetNetworkResponse'
          description: OK
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
      summary: Get network
      tags:
        - Networks
  /v1/operations:
    get:
      description: List operations. This is a generic endpoint and can be used to list any type of operation.
      operationId: OperationService_ListOperations
      parameters:
        - in: query
          name: filter.type_in
          schema:
            items:
              enum:
                - TYPE_CREATE_CLUSTER
                - TYPE_UPDATE_CLUSTER
                - TYPE_DELETE_CLUSTER
                - TYPE_CREATE_NETWORK
                - TYPE_DELETE_NETWORK
                - TYPE_CREATE_SERVERLESS_CLUSTER
                - TYPE_DELETE_SERVERLESS_CLUSTER
                - TYPE_CREATE_CLUSTER_WITH_DEPENDENCIES
                - TYPE_DELETE_CLUSTER_WITH_DEPENDENCIES
                - TYPE_CREATE_SERVERLESS_PRIVATE_LINK
                - TYPE_UPDATE_SERVERLESS_PRIVATE_LINK
                - TYPE_DELETE_SERVERLESS_PRIVATE_LINK
                - TYPE_CREATE_NETWORK_PEERING
                - TYPE_DELETE_NETWORK_PEERING
                - TYPE_CREATE_SHADOW_LINK
                - TYPE_UPDATE_SHADOW_LINK
                - TYPE_DELETE_SHADOW_LINK
              type: string
            type: array
        - in: query
          name: filter.state
          schema:
            enum:
              - STATE_IN_PROGRESS
              - STATE_COMPLETED
              - STATE_FAILED
            type: string
        - in: query
          name: filter.resource_id
          schema:
            type: string
        - description: 'Limit the number of operations returned per page, the page is capped to 100 operations.'
          in: query
          name: page_size
          schema:
            format: int32
            type: integer
        - description: |-
            Value of the next_page_token field returned by the previous response. If
            not provided, the system assumes the first page is requested.
          in: query
          name: page_token
          schema:
            type: string
        - in: query
          name: read_mask
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListOperationsResponse'
          description: OK
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: List operations
      tags:
        - Operations
  '/v1/operations/{id}':
    get:
      description: Get information about a long-running operation. This is a generic endpoint and can be used to retrieve any type of operation.
      operationId: OperationService_GetOperation
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              examples:
                CreateCluster done:
                  description: Example of an operation response of a Cluster creation that is done
                  summary: Create Cluster Operation
                  value:
                    operation:
                      finished_at: null
                      id: cjb6cjpc4vs0b0spksbg
                      metadata:
                        '@type': type.googleapis.com/redpanda.api.controlplane.v1.CreateClusterMetadata
                        cluster_id: cjb69h1c4vs42pca89s0
                      resource_id: cjb69h1c4vs42pca89s0
                      response:
                        '@type': type.googleapis.com/redpanda.api.controlplane.v1.CreateClusterResponse
                        cluster:
                          adp_api: null
                          ai_gateway: null
                          api_gateway_access: NETWORK_ACCESS_MODE_UNSPECIFIED
                          cloud_provider: CLOUD_PROVIDER_GCP
                          cloud_provider_tags: {}
                          cloud_storage: null
                          cluster_configuration: null
                          connection_type: CONNECTION_TYPE_PUBLIC
                          created_at: '2023-01-01T00:00:00Z'
                          current_redpanda_version: ''
                          customer_managed_resources: null
                          dataplane_api: null
                          desired_redpanda_version: ''
                          http_proxy:
                            all_urls: null
                            mtls:
                              ca_certificates_pem: []
                              enabled: false
                              principal_mapping_rules: []
                            sasl: null
                            url: 'https://pandaproxy-aa0000l0.cjb69h1c4vs42pca89s0.fmc.prd.cloud.redpanda.com:9092'
                          id: cjb69h1c4vs42pca89s0
                          kafka_api:
                            all_seed_brokers: null
                            mtls: null
                            sasl: null
                            seed_brokers:
                              - 'seed-aa0000l0.cjb69h1c4vs42pca89s0.fmc.prd.cloud.redpanda.com:9092'
                          kafka_connect: null
                          maintenance_window_config: null
                          name: my-new-cluster
                          nat_gateways: []
                          network_id: cjb69k1c4vs45df9bee0
                          oxla: null
                          prometheus:
                            url: 'https://console-aa0000l0.cjb69h1c4vs42pca89s0.fmc.prd.cloud.redpanda.com/api/cloud/prometheus/public_metrics'
                          read_replica_cluster_ids: []
                          redpanda_console:
                            url: 'https://console-aa0000l0.cjb69h1c4vs42pca89s0.fmc.prd.cloud.redpanda.com/api'
                          redpanda_node_count: 0
                          region: us-west1
                          resource_group_id: 6c09e47b-f426-4ec7-a7b4-8048caf8ae47
                          sandbox: null
                          schema_registry:
                            all_urls: null
                            mtls: null
                            sasl: null
                            url: 'schema-registry-aa0000l0.cjb69h1c4vs42pca89s0.fmc.prd.cloud.redpanda.com:9092'
                          state: STATE_READY
                          state_description: null
                          throughput_tier: tier-1
                          type: TYPE_DEDICATED
                          updated_at: '2023-01-01T00:00:00Z'
                          zones:
                            - us-west1-a
                            - us-west1-b
                            - us-west1-c
                      started_at: null
                      state: STATE_COMPLETED
                      type: TYPE_CREATE_CLUSTER
                CreateNetwork done:
                  description: Example of an operation response of a Network creation that is done
                  summary: CreateNetwork Operation
                  value:
                    operation:
                      finished_at: null
                      id: cjb6cg9c4vs08hd3poo0
                      metadata:
                        '@type': type.googleapis.com/redpanda.api.controlplane.v1.CreateNetworkMetadata
                        network_id: cjb6capc4vs0m91gh3kg
                      resource_id: cjb6capc4vs0m91gh3kg
                      response:
                        '@type': type.googleapis.com/redpanda.api.controlplane.v1.CreateNetworkResponse
                        network:
                          cidr_block: 10.0.0.0/20
                          cloud_provider: CLOUD_PROVIDER_GCP
                          cluster_type: TYPE_DEDICATED
                          created_at: '2023-01-01T00:00:00Z'
                          customer_managed_resources: null
                          egress_spec: null
                          id: cjb6capc4vs0m91gh3kg
                          name: my-new-cluster
                          region: us-central1
                          resource_group_id: dbc1ccee-93e8-4859-a1ae-3bcfc4ef0ded
                          state: STATE_READY
                          updated_at: '2023-01-01T00:00:00Z'
                          zones: []
                      started_at: null
                      state: STATE_COMPLETED
                      type: TYPE_CREATE_NETWORK
                DeleteCluster done:
                  description: Example of an operation response of a cluster deletion that is done
                  summary: Delete Cluster Operation
                  value:
                    operation:
                      finished_at: null
                      id: cjd5tfpc4vsfi6jbjve0
                      metadata:
                        '@type': type.googleapis.com/redpanda.api.controlplane.v1.DeleteClusterMetadata
                        required_action: ''
                      resource_id: cjb69h1c4vs42pca89s0
                      started_at: null
                      state: STATE_COMPLETED
                      type: TYPE_DELETE_CLUSTER
                DeleteNetwork done:
                  description: Example of an operation response of a Network deletion that is done
                  summary: Delete Network Operation
                  value:
                    operation:
                      finished_at: null
                      id: cjd5tdpc4vsfvm2tav1g
                      metadata:
                        '@type': type.googleapis.com/redpanda.api.controlplane.v1.DeleteNetworkMetadata
                      resource_id: cjb6capc4vs0m91gh3kg
                      started_at: null
                      state: STATE_COMPLETED
                      type: TYPE_DELETE_NETWORK
                Update done:
                  description: Example of an operation response of a Cluster update that is done
                  summary: Update Cluster Operation
                  value:
                    operation:
                      finished_at: null
                      id: cjd5tppc4vsf9o7lhcj0
                      metadata:
                        '@type': type.googleapis.com/redpanda.api.controlplane.v1.UpdateClusterMetadata
                        update_type: []
                      resource_id: cjb69h1c4vs42pca89s0
                      response:
                        '@type': type.googleapis.com/redpanda.api.controlplane.v1.CreateClusterResponse
                        cluster:
                          adp_api: null
                          ai_gateway: null
                          api_gateway_access: NETWORK_ACCESS_MODE_UNSPECIFIED
                          cloud_provider: CLOUD_PROVIDER_GCP
                          cloud_provider_tags: {}
                          cloud_storage: null
                          cluster_configuration: null
                          connection_type: CONNECTION_TYPE_PUBLIC
                          created_at: '2023-01-01T00:00:00Z'
                          current_redpanda_version: ''
                          customer_managed_resources: null
                          dataplane_api: null
                          desired_redpanda_version: ''
                          http_proxy:
                            all_urls: null
                            mtls:
                              ca_certificates_pem: []
                              enabled: false
                              principal_mapping_rules: []
                            sasl: null
                            url: 'https://pandaproxy-aa0000l0.cjb69h1c4vs42pca89s0.fmc.prd.cloud.redpanda.com:9092'
                          id: cjb69h1c4vs42pca89s0
                          kafka_api:
                            all_seed_brokers: null
                            mtls: null
                            sasl: null
                            seed_brokers:
                              - 'seed-aa0000l0.cjb69h1c4vs42pca89s0.fmc.prd.cloud.redpanda.com:9092'
                          kafka_connect: null
                          maintenance_window_config: null
                          name: my-new-cluster
                          nat_gateways: []
                          network_id: cjb69k1c4vs45df9bee0
                          oxla: null
                          prometheus:
                            url: 'https://console-aa0000l0.cjb69h1c4vs42pca89s0.fmc.prd.cloud.redpanda.com/api/cloud/prometheus/public_metrics'
                          read_replica_cluster_ids: []
                          redpanda_console:
                            url: 'https://console-aa0000l0.cjb69h1c4vs42pca89s0.fmc.prd.cloud.redpanda.com/api'
                          redpanda_node_count: 0
                          region: us-west1
                          resource_group_id: 6c09e47b-f426-4ec7-a7b4-8048caf8ae47
                          sandbox: null
                          schema_registry:
                            all_urls: null
                            mtls: null
                            sasl: null
                            url: 'schema-registry-aa0000l0.cjb69h1c4vs42pca89s0.fmc.prd.cloud.redpanda.com:9092'
                          state: STATE_READY
                          state_description: null
                          throughput_tier: tier-1
                          type: TYPE_DEDICATED
                          updated_at: '2023-01-01T00:00:00Z'
                          zones:
                            - us-west1-a
                            - us-west1-b
                            - us-west1-c
                      started_at: null
                      state: STATE_COMPLETED
                      type: TYPE_UPDATE_CLUSTER
              schema:
                $ref: '#/components/schemas/GetOperationResponse'
          description: OK
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Get operation
      tags:
        - Operations
  /v1/organizations/available:
    get:
      description: Get a list of available organizations for the user.
      operationId: OrganizationService_ListAvailableOrganizations
      parameters:
        - in: query
          name: page_size
          schema:
            format: int32
            type: integer
        - description: 'Value of the next_page_token field returned by the previous response. If not provided, the system assumes the first page is requested.'
          in: query
          name: page_token
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListAvailableOrganizationsResponse'
          description: OK
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: List available organizations for the user
      tags:
        - Organization
  /v1/organizations/current:
    get:
      description: Get information about the current organization.
      operationId: OrganizationService_GetCurrentOrganization
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetCurrentOrganizationResponse'
          description: OK
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Get current organization
      tags:
        - Organization
    patch:
      description: Update properties of the current organization.
      operationId: OrganizationService_UpdateOrganization
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OrganizationUpdate'
        required: true
        x-originalParamName: organization
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateOrganizationResponse'
          description: OK
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Update organization
      tags:
        - Organization
  /v1/permissions:
    get:
      description: List all available Redpanda Cloud permissions.
      operationId: PermissionService_ListPermissions
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListPermissionsResponse'
          description: OK
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: List permissions
      tags:
        - Control Plane Permissions
  '/v1/regions/{cloud_provider}':
    get:
      description: List available regions on the different cloud providers.
      operationId: RegionService_ListRegions
      parameters:
        - in: path
          name: cloud_provider
          required: true
          schema:
            enum:
              - CLOUD_PROVIDER_AWS
              - CLOUD_PROVIDER_GCP
              - CLOUD_PROVIDER_AZURE
            type: string
        - in: query
          name: filter.cluster_type
          schema:
            enum:
              - TYPE_DEDICATED
              - TYPE_BYOC
            type: string
        - description: Limit the paginated response to a number of items.
          in: query
          name: page_size
          schema:
            format: int32
            type: integer
        - description: 'Value of the `next_page_token` field returned by the previous response. If not provided, the system assumes the first page is requested.'
          in: query
          name: page_token
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListRegionsResponse'
          description: OK
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: List Redpanda regions
      tags:
        - Regions
  '/v1/regions/{cloud_provider}/{name}':
    get:
      description: Get information about a Redpanda region.
      operationId: RegionService_GetRegion
      parameters:
        - in: path
          name: cloud_provider
          required: true
          schema:
            enum:
              - CLOUD_PROVIDER_AWS
              - CLOUD_PROVIDER_GCP
              - CLOUD_PROVIDER_AZURE
            type: string
        - in: path
          name: name
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetRegionResponse'
          description: OK
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Get region by name
      tags:
        - Regions
  /v1/resource-groups:
    get:
      description: List Redpanda resource groups. The `filter.` query string parameter finds resource groups that match the provided name.
      operationId: ResourceGroupService_ListResourceGroups
      parameters:
        - description: Name of resource group. Partial match.
          in: query
          name: filter.name_contains
          schema:
            type: string
        - in: query
          name: page_size
          schema:
            format: int32
            maximum: 100
            minimum: 1
            type: integer
        - in: query
          name: page_token
          schema:
            type: string
        - in: query
          name: read_mask
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                next_page_token: some-opaque-string
                resource_groups:
                  - created_at: '2023-08-25T00:00:00Z'
                    id: 897e76ad-64d5-4314-9d81-7383fa14100d
                    name: my-new-namespace
                    updated_at: null
              schema:
                $ref: '#/components/schemas/ListResourceGroupsResponse'
          description: OK
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Reach out to support.
      summary: List resource groups
      tags:
        - Resource Groups
    post:
      description: Create a Redpanda resource group.
      operationId: ResourceGroupService_CreateResourceGroup
      requestBody:
        content:
          application/json:
            example:
              resource_group:
                name: my-new-namespace
            schema:
              $ref: '#/components/schemas/CreateResourceGroupRequest'
        description: CreateResourceGroupRequest is the request of CreateResourceGroup.
        required: true
        x-originalParamName: body
      responses:
        '201':
          content:
            application/json:
              example:
                resource_group:
                  created_at: '2023-08-25T00:00:00Z'
                  id: 897e76ad-64d5-4314-9d81-7383fa14100d
                  name: my-new-namespace
                  updated_at: null
              schema:
                $ref: '#/components/schemas/CreateResourceGroupResponse'
          description: Resource Group Created
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Reach out to support.
      summary: Create resource group
      tags:
        - Resource Groups
  '/v1/resource-groups/{id}':
    delete:
      description: Delete the specified Redpanda resource group.
      operationId: ResourceGroupService_DeleteResourceGroup
      parameters:
        - description: ID of resource group to delete.
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '204':
          content:
            application/json:
              example: {}
              schema: {}
          description: Resource group deleted successfully
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
      summary: Delete resource group
      tags:
        - Resource Groups
    get:
      description: Get information about a specific Redpanda resource group.
      operationId: ResourceGroupService_GetResourceGroup
      parameters:
        - description: ID of resource group.
          example: 897e76ad-64d5-4314-9d81-7383fa14100d
          in: path
          name: id
          required: true
          schema:
            type: string
        - in: query
          name: read_mask
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                resource_group:
                  created_at: '2023-08-25T00:00:00Z'
                  id: 897e76ad-64d5-4314-9d81-7383fa14100d
                  name: my-new-namespace
                  updated_at: null
              schema:
                $ref: '#/components/schemas/GetResourceGroupResponse'
          description: OK
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Reach out to support.
      summary: Get resource group
      tags:
        - Resource Groups
  '/v1/resource-groups/{resource_group.id}':
    patch:
      description: Update a Redpanda resource group.
      operationId: ResourceGroupService_UpdateResourceGroup
      parameters:
        - description: |-
            ID of the resource group. The ID should be valid and the resource group
            should exist within the organization.
          example: 897e76ad-64d5-4314-9d81-7383fa14100d
          in: path
          name: resource_group.id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            example:
              name: my-new-name
            schema:
              $ref: '#/components/schemas/UpdateResourceGroupBody'
        required: true
        x-originalParamName: body
      responses:
        '200':
          content:
            application/json:
              example:
                resource_group:
                  created_at: '2023-01-01T00:00:00Z'
                  id: 897e76ad-64d5-4314-9d81-7383fa14100d
                  name: my-new-name
                  updated_at: '2023-08-25T00:00:00Z'
              schema:
                $ref: '#/components/schemas/UpdateResourceGroupResponse'
          description: OK
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Reach out to support.
      summary: Update resource group
      tags:
        - Resource Groups
  /v1/role-bindings:
    get:
      description: List role assignments to organization users.
      operationId: RoleBindingService_ListRoleBindings
      parameters:
        - in: query
          name: filter.role_name
          schema:
            type: string
        - in: query
          name: filter.account
          schema:
            type: string
        - in: query
          name: filter.scope.resource_type
          schema:
            enum:
              - SCOPE_RESOURCE_TYPE_RESOURCE_GROUP
              - SCOPE_RESOURCE_TYPE_NETWORK
              - SCOPE_RESOURCE_TYPE_CLUSTER
              - SCOPE_RESOURCE_TYPE_SERVERLESS_CLUSTER
              - SCOPE_RESOURCE_TYPE_NETWORK_PEERING
              - SCOPE_RESOURCE_TYPE_ORGANIZATION
              - SCOPE_RESOURCE_TYPE_MCPSERVER
              - SCOPE_RESOURCE_TYPE_AIAGENT
              - SCOPE_RESOURCE_TYPE_AIGATEWAY_MODEL_PROVIDER
              - SCOPE_RESOURCE_TYPE_AIGATEWAY_MODEL
              - SCOPE_RESOURCE_TYPE_AIGATEWAY_PROVIDER_CONFIG
              - SCOPE_RESOURCE_TYPE_AIGATEWAY_GATEWAY
              - SCOPE_RESOURCE_TYPE_KAFKA_TOPIC
            type: string
        - in: query
          name: filter.scope.resource_id
          schema:
            type: string
        - description: |-
            dataplane_id is required when the scope.resource_type is a dataplane resource:
            MCPSERVER, AIAGENT, AIGATEWAY_MODEL_PROVIDER, AIGATEWAY_MODEL, AIGATEWAY_PROVIDER_CONFIG, AIGATEWAY_GATEWAY.
            This can either be the cluster id or the serverless cluster id depending on the dataplane resource.
            Must be a valid XID (20-character base32 hex encoded string).
          in: query
          name: filter.scope.dataplane_id
          schema:
            type: string
        - in: query
          name: filter.account_ids
          schema:
            items:
              type: string
            type: array
        - in: query
          name: page_size
          schema:
            format: int32
            type: integer
        - in: query
          name: page_token
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListRoleBindingsResponse'
          description: OK
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: List role bindings
      tags:
        - Control Plane Role Bindings
    post:
      description: Create a Redpanda Cloud role binding.
      operationId: RoleBindingService_CreateRoleBinding
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateRoleBindingRequest'
        description: CreateRoleBindingRequest is the request of CreateRoleBinding.
        required: true
        x-originalParamName: body
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateRoleBindingResponse'
          description: RoleBinding Created
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Create role binding
      tags:
        - Control Plane Role Bindings
  '/v1/role-bindings/{id}':
    delete:
      description: Delete Redpanda Cloud role binding.
      operationId: RoleBindingService_DeleteRoleBinding
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '204':
          content:
            application/json:
              schema: {}
          description: RoleBinding was deleted successfully
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Delete role binding
      tags:
        - Control Plane Role Bindings
    get:
      description: Get Redpanda role binding.
      operationId: RoleBindingService_GetRoleBinding
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetRoleBindingResponse'
          description: Ok
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Get role binding
      tags:
        - Control Plane Role Bindings
  /v1/roles:
    get:
      description: List Redpanda Cloud roles.
      operationId: RoleService_ListRoles
      parameters:
        - in: query
          name: filter.name
          schema:
            type: string
        - in: query
          name: page_size
          schema:
            format: int32
            type: integer
        - in: query
          name: page_token
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListRolesResponse'
          description: OK
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: List roles
      tags:
        - Control Plane Roles
    post:
      description: Create a Redpanda Cloud role.
      operationId: RoleService_CreateRole
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateRoleRequest'
        description: CreateRoleRequest is the request of CreateRole.
        required: true
        x-originalParamName: body
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateRoleResponse'
          description: Role Created
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Create role
      tags:
        - Control Plane Roles
  '/v1/roles/{id}':
    delete:
      description: Delete Redpanda Cloud role.
      operationId: RoleService_DeleteRole
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '204':
          content:
            application/json:
              schema: {}
          description: Role was deleted successfully
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Delete role
      tags:
        - Control Plane Roles
    get:
      description: Get Redpanda role.
      operationId: RoleService_GetRole
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetRoleResponse'
          description: Ok
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Get role
      tags:
        - Control Plane Roles
    patch:
      description: Update a Redpanda Cloud role.
      operationId: RoleService_UpdateRole
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateRoleBody'
        required: true
        x-originalParamName: body
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateRoleResponse'
          description: Ok
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Update role
      tags:
        - Control Plane Roles
  /v1/serverless/clusters:
    get:
      description: List Redpanda Serverless clusters. The `filter.` query string parameters find matching clusters that meet all specified conditions.
      operationId: ServerlessClusterService_ListServerlessClusters
      parameters:
        - in: query
          name: read_mask
          schema:
            type: string
        - description: |-
            States of Serverless cluster.

             - STATE_PLACING: Serverless cluster is in the process of being placed on a cell with sufficient resources in the data plane.
             - STATE_CREATING: Serverless cluster is in the process of having its control plane state created.
             - STATE_READY: Serverless cluster is in execution and accepting external requests.
             - STATE_DELETING: Serverless cluster is in the process of having its control plane state removed. Resources dedicated to the cluster in the data plane will be released.
             - STATE_FAILED: Serverless cluster was unable to enter the ready state from either the creating or placing states.
             - STATE_SUSPENDED: Serverless cluster is in execution but blocks all external requests.
          in: query
          name: filter.state_in
          schema:
            items:
              enum:
                - STATE_PLACING
                - STATE_CREATING
                - STATE_READY
                - STATE_DELETING
                - STATE_FAILED
                - STATE_SUSPENDED
              type: string
            type: array
        - description: Resource group ID of Serverless cluster.
          in: query
          name: filter.resource_group_id
          schema:
            type: string
        - description: Name of cluster. Partial match.
          in: query
          name: filter.name_contains
          schema:
            type: string
        - description: Region in which Serverless cluster is hosted
          in: query
          name: filter.serverless_region
          schema:
            type: string
        - description: Private link ID of Serverless cluster
          in: query
          name: filter.private_link_id
          schema:
            type: string
        - description: Limit the paginated response to a number of items.
          in: query
          name: page_size
          schema:
            format: int32
            maximum: 100
            minimum: 1
            type: integer
        - description: 'Value of the next_page_token field returned by the previous response. If not provided, the system assumes the first page is requested.'
          in: query
          name: page_token
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                next_page_token: some-opaque-string
                serverless_clusters:
                  - ai_gateway: null
                    console_private_url: ''
                    console_url: 'https://console-d1d9risv0c3i7qbbeoc0.any.us-east-1.mpx.prd.cloud.redpanda.com'
                    created_at: '2023-01-01T00:00:00Z'
                    dataplane_api:
                      private_url: ''
                      url: 'https://d1d9risv0c3i7qbbeoc0.any.us-east-1.mpx.prd.cloud.redpanda.com'
                    id: d1d9risv0c3i7qbbeoc0
                    kafka_api:
                      private_seed_brokers: []
                      seed_brokers:
                        - 'd1d9risv0c3i7qbbeoc0.any.us-east-1.mpx.prd.cloud.redpanda.com:9092'
                    name: my-serverless-cluster
                    networking_config: null
                    prometheus:
                      private_url: ''
                      url: 'https://d1d9risv0c3i7qbbeoc0.metrics.us-east-1.mpx.prd.cloud.redpanda.com/public_metrics'
                    resource_group_id: 6c09e47b-f426-4ec7-a7b4-8048caf8ae47
                    schema_registry:
                      private_url: ''
                      url: 'https://d1d9risv0c3i7qbbeoc0.any.us-east-1.mpx.prd.cloud.redpanda.com:30993'
                    serverless_region: us-east-1
                    state: STATE_READY
                    tags: {}
                    updated_at: '2023-01-01T00:00:00Z'
              schema:
                $ref: '#/components/schemas/ListServerlessClustersResponse'
          description: OK
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
      summary: List Serverless clusters
      tags:
        - Serverless Clusters
    post:
      description: 'Create a Redpanda Serverless cluster. Returns a long-running operation. For more information, see [Use the Control Plane API](https://docs.redpanda.com/redpanda-cloud/manage/api/cloud-serverless-controlplane-api/). To check operation state, call `GET /v1/operations/{id}`.'
      operationId: ServerlessClusterService_CreateServerlessCluster
      requestBody:
        content:
          application/json:
            example:
              serverless_cluster:
                name: my-serverless-cluster
                resource_group_id: 6c09e47b-f426-4ec7-a7b4-8048caf8ae47
                serverless_region: us-east-1
            schema:
              $ref: '#/components/schemas/CreateServerlessClusterRequest'
        description: CreateServerlessClusterRequest is the request of CreateServerlessCluster.
        required: true
        x-originalParamName: body
      responses:
        '202':
          content:
            application/json:
              example:
                operation:
                  finished_at: null
                  id: cjsl7h9c4vs1td8emmcg
                  metadata:
                    '@type': type.googleapis.com/redpanda.api.controlplane.v1.CreateServerlessClusterMetadata
                    serverless_cluster_id: d1d9risv0c3i7qbbeoc0
                  resource_id: d1d9risv0c3i7qbbeoc0
                  started_at: null
                  state: STATE_IN_PROGRESS
                  type: TYPE_CREATE_SERVERLESS_CLUSTER
              schema:
                $ref: '#/components/schemas/CreateServerlessClusterOperation'
          description: Accepted
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Bad Request
        '409':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Conflict
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
      summary: Create Serverless cluster
      tags:
        - Serverless Clusters
  '/v1/serverless/clusters/{id}':
    delete:
      description: 'Delete Redpanda Serverless cluster. Returns a long-running operation. For more information, see [Use the Control Plane API](https://docs.redpanda.com/redpanda-cloud/manage/api/cloud-serverless-controlplane-api/). To check operation state, call `GET /v1/operations/{id}`.'
      operationId: ServerlessClusterService_DeleteServerlessCluster
      parameters:
        - description: ID of Serverless cluster.
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '202':
          content:
            application/json:
              example:
                operation:
                  finished_at: null
                  id: cjsl9c4vs6rgpkevsg
                  metadata:
                    '@type': type.googleapis.com/redpanda.api.controlplane.v1.DeleteServerlessClusterMetadata
                  resource_id: d1d9risv0c3i7qbbeoc0
                  started_at: null
                  state: STATE_IN_PROGRESS
                  type: TYPE_DELETE_SERVERLESS_CLUSTER
              schema:
                $ref: '#/components/schemas/DeleteServerlessClusterOperation'
          description: Accepted
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
      summary: Delete Serverless cluster
      tags:
        - Serverless Clusters
    get:
      description: Get Redpanda Serverless cluster.
      operationId: ServerlessClusterService_GetServerlessCluster
      parameters:
        - description: ID of Serverless cluster.
          example: d1d9risv0c3i7qbbeoc0
          in: path
          name: id
          required: true
          schema:
            type: string
        - in: query
          name: read_mask
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              example:
                serverless_cluster:
                  ai_gateway: null
                  console_private_url: ''
                  console_url: 'https://console-d1d9risv0c3i7qbbeoc0.any.us-east-1.mpx.prd.cloud.redpanda.com'
                  created_at: '2023-01-01T00:00:00Z'
                  dataplane_api:
                    private_url: ''
                    url: 'https://d1d9risv0c3i7qbbeoc0.any.us-east-1.mpx.prd.cloud.redpanda.com'
                  id: d1d9risv0c3i7qbbeoc0
                  kafka_api:
                    private_seed_brokers: []
                    seed_brokers:
                      - 'd1d9risv0c3i7qbbeoc0.any.us-east-1.mpx.prd.cloud.redpanda.com:9092'
                  name: my-serverless-cluster
                  networking_config: null
                  prometheus:
                    private_url: ''
                    url: 'https://d1d9risv0c3i7qbbeoc0.metrics.us-east-1.mpx.prd.cloud.redpanda.com/public_metrics'
                  resource_group_id: 6c09e47b-f426-4ec7-a7b4-8048caf8ae47
                  schema_registry:
                    private_url: ''
                    url: 'https://d1d9risv0c3i7qbbeoc0.any.us-east-1.mpx.prd.cloud.redpanda.com:30993'
                  serverless_region: us-east-1
                  state: STATE_READY
                  tags: {}
                  updated_at: '2023-01-01T00:00:00Z'
              schema:
                $ref: '#/components/schemas/ServerlessCluster'
          description: OK
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
      summary: Get Serverless cluster
      tags:
        - Serverless Clusters
    patch:
      description: Update a Redpanda serverless cluster.
      operationId: ServerlessClusterService_UpdateServerlessCluster
      parameters:
        - description: ID of the virtual cluster.
          in: path
          name: id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateServerlessClusterBody'
        required: true
        x-originalParamName: body
      responses:
        '202':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServerlessClusterUpdate'
          description: Accepted
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Update serverless cluster
      tags:
        - Serverless Clusters
  '/v1/serverless/clusters/{id}/prometheus/credentials':
    get:
      description: Get the Redpanda Serverless cluster Prometheus credentials for accessing the metrics scrape endpoint.
      operationId: ServerlessClusterService_GetPrometheusCredentials
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PrometheusCredentials'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Bad Request
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Get Prometheus Credentials
      tags:
        - Serverless Clusters
  /v1/serverless/private-links:
    get:
      description: List Redpanda Serverless private links. The `filter.` query string parameters find matching private links that meet all specified conditions.
      operationId: ServerlessPrivateLinkService_ListServerlessPrivateLinks
      parameters:
        - description: |-
            States of Serverless private link.

             - STATE_CREATING: Private link is being created.
             - STATE_READY: Private link is ready to use.
             - STATE_DELETING: Private link is being deleted.
             - STATE_FAILED: Private link is in an error state.
             - STATE_UPDATING: Private link is in an updating state.
          in: query
          name: filter.state_in
          schema:
            items:
              enum:
                - STATE_CREATING
                - STATE_READY
                - STATE_DELETING
                - STATE_FAILED
                - STATE_UPDATING
              type: string
            type: array
        - description: Resource group ID of Serverless private link.
          in: query
          name: filter.resource_group_id
          schema:
            type: string
        - description: Name of private link. Partial match.
          in: query
          name: filter.name_contains
          schema:
            type: string
        - description: Display name of the region in which Serverless private link is hosted
          in: query
          name: filter.serverless_region
          schema:
            type: string
        - description: Limit the paginated response to a number of items.
          in: query
          name: page_size
          schema:
            format: int32
            type: integer
        - description: |-
            Value of the next_page_token field returned by the previous response. If
            not provided, the system assumes the first page is requested.
          in: query
          name: page_token
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListServerlessPrivateLinksResponse'
          description: OK
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: List Serverless private links
      tags:
        - Serverless Private Links
    post:
      description: 'Create a Serverless private link. Returns a long-running operation. Call `GET /v1/operations/{id}` to check operation state.'
      operationId: ServerlessPrivateLinkService_CreateServerlessPrivateLink
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateServerlessPrivateLinkRequest'
        required: true
        x-originalParamName: body
      responses:
        '202':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateServerlessPrivateLinkOperation'
          description: Accepted
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Bad Request
        '409':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Conflict
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Create Serverless private link
      tags:
        - Serverless Private Links
  '/v1/serverless/private-links/{id}':
    delete:
      description: 'Delete Serverless private link. Returns a long-running operation. Call `GET /v1/operations/{id}` to check operation state.'
      operationId: ServerlessPrivateLinkService_DeleteServerlessPrivateLink
      parameters:
        - description: The ID of the serverless private link to delete.
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '202':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeleteServerlessPrivateLinkOperation'
          description: Accepted
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Delete Serverless private link
      tags:
        - Serverless Private Links
    get:
      description: Get information about a Serverless private link.
      operationId: ServerlessPrivateLinkService_GetServerlessPrivateLink
      parameters:
        - description: The ID of the serverless private link to get.
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetServerlessPrivateLinkResponse'
          description: OK
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Get Serverless private link
      tags:
        - Serverless Private Links
    patch:
      description: 'Updates a Serverless private link. Returns a long-running operation. Call `GET /v1/operations/{id}` to check operation state.'
      operationId: ServerlessPrivateLinkService_UpdateServerlessPrivateLink
      parameters:
        - description: ID of the private link.
          in: path
          name: id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateServerlessPrivateLinkBody'
        required: true
        x-originalParamName: body
      responses:
        '202':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateServerlessPrivateLinkOperation'
          description: Accepted
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Update Serverless private link
      tags:
        - Serverless Private Links
  /v1/serverless/region:
    get:
      description: Get Redpanda Serverless region.
      operationId: ServerlessRegionService_GetServerlessRegion
      parameters:
        - description: Cloud provider where Serverless region is hosted.
          in: query
          name: cloud_provider
          schema:
            enum:
              - CLOUD_PROVIDER_AWS
              - CLOUD_PROVIDER_GCP
              - CLOUD_PROVIDER_AZURE
            type: string
        - description: Display name of the Serverless region
          in: query
          name: name
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetServerlessRegionResponse'
          description: OK
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Get Serverless region
      tags:
        - Serverless Regions
  /v1/serverless/regions:
    get:
      description: List Redpanda Serverless regions.
      operationId: ServerlessRegionService_ListServerlessRegions
      parameters:
        - description: Cloud provider where Serverless region is hosted.
          in: query
          name: cloud_provider
          required: true
          schema:
            enum:
              - CLOUD_PROVIDER_AWS
              - CLOUD_PROVIDER_GCP
              - CLOUD_PROVIDER_AZURE
            type: string
        - description: Only select regions with placement enabled.
          in: query
          name: filter.placement_enabled_only
          schema:
            type: boolean
        - description: Limit the paginated response to a number of items.
          in: query
          name: page_size
          schema:
            format: int32
            type: integer
        - description: 'Value of the `next_page_token` field returned by the previous response. If not provided, the system assumes the first page is requested.'
          in: query
          name: page_token
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListServerlessRegionsResponse'
          description: OK
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: List Serverless regions
      tags:
        - Serverless Regions
  /v1/service-accounts:
    get:
      description: List service accounts in your organization.
      operationId: ServiceAccountService_ListServiceAccounts
      parameters:
        - in: query
          name: filter.name
          schema:
            type: string
        - in: query
          name: page_size
          schema:
            format: int32
            type: integer
        - in: query
          name: page_token
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListServiceAccountsResponse'
          description: OK
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: List service accounts
      tags:
        - Control Plane Service Accounts
    post:
      description: Create a Redpanda Cloud ServiceAccount.
      operationId: ServiceAccountService_CreateServiceAccount
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateServiceAccountRequest'
        description: CreateServiceAccountRequest is the request of CreateServiceAccount.
        required: true
        x-originalParamName: body
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateServiceAccountResponse'
          description: ServiceAccount Created
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Create service account
      tags:
        - Control Plane Service Accounts
  '/v1/service-accounts/{id}':
    delete:
      description: Delete a service account.
      operationId: ServiceAccountService_DeleteServiceAccount
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '204':
          content:
            application/json:
              schema: {}
          description: ServiceAccount was deleted successfully
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Delete service account
      tags:
        - Control Plane Service Accounts
    get:
      description: Get service account details.
      operationId: ServiceAccountService_GetServiceAccount
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetServiceAccountResponse'
          description: Ok
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Get service account
      tags:
        - Control Plane Service Accounts
    patch:
      description: Update a Redpanda Cloud service account.
      operationId: ServiceAccountService_UpdateServiceAccount
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateServiceAccountBody'
        required: true
        x-originalParamName: body
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateServiceAccountResponse'
          description: Ok
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Update service account
      tags:
        - Control Plane Service Accounts
  '/v1/service-accounts/{id}/credentials':
    get:
      description: Get Redpanda service account credentials.
      operationId: ServiceAccountService_GetServiceAccountCredentials
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetServiceAccountCredentialsResponse'
          description: Ok
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Get service account credentials
      tags:
        - Control Plane Service Accounts
  '/v1/service-accounts/{id}/rotate-secret':
    get:
      description: Rotates the service account's secret and returns the updated service account along with the secret.
      operationId: ServiceAccountService_RotateServiceAccountSecret
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RotateServiceAccountSecretResponse'
          description: Ok
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Rotate service account secret
      tags:
        - Control Plane Service Accounts
  /v1/shadow-links:
    get:
      description: List Redpanda shadow links.
      operationId: ShadowLinkService_ListShadowLinks
      parameters:
        - description: Filter by shadow Redpanda cluster ID.
          in: query
          name: filter.shadow_redpanda_id
          schema:
            type: string
        - description: Filter by resource group ID.
          in: query
          name: filter.resource_group_id
          schema:
            type: string
        - description: Maximum number of results per page.
          in: query
          name: page_size
          schema:
            format: int32
            type: integer
        - description: Page token from previous response for pagination.
          in: query
          name: page_token
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1.ListShadowLinksResponse'
          description: OK
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: List shadow links
      tags:
        - Shadow Links
    post:
      description: Create a Redpanda shadow link for data replication.
      operationId: ShadowLinkService_CreateShadowLink
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v1.CreateShadowLinkRequest'
        description: CreateShadowLinkRequest creates a new shadow link.
        required: true
        x-originalParamName: body
      responses:
        '202':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateShadowLinkOperation'
          description: Accepted
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Bad Request
        '409':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Conflict - Shadow link with given name already exists
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Create shadow link
      tags:
        - Shadow Links
  '/v1/shadow-links/{id}':
    delete:
      description: Delete a Redpanda shadow link.
      operationId: ShadowLinkService_DeleteShadowLink
      parameters:
        - description: Shadow link ID.
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '202':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeleteShadowLinkOperation'
          description: Accepted - Shadow link deletion initiated
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found - Shadow link with given ID does not exist
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Delete shadow link
      tags:
        - Shadow Links
    get:
      description: Get a Redpanda shadow link by ID.
      operationId: ShadowLinkService_GetShadowLink
      parameters:
        - description: Shadow link ID.
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1.GetShadowLinkResponse'
          description: OK
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found - Shadow link with given ID does not exist
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Get shadow link
      tags:
        - Shadow Links
  '/v1/shadow-links/{shadow_link.id}':
    patch:
      description: Update a Redpanda shadow link configuration.
      operationId: ShadowLinkService_UpdateShadowLink
      parameters:
        - description: Shadow link ID.
          in: path
          name: shadow_link.id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                client_options:
                  $ref: '#/components/schemas/v1.ShadowLinkClientOptions'
                consumer_offset_sync_options:
                  $ref: '#/components/schemas/ConsumerOffsetSyncOptions'
                schema_registry_sync_options:
                  $ref: '#/components/schemas/SchemaRegistrySyncOptions'
                security_sync_options:
                  $ref: '#/components/schemas/SecuritySettingsSyncOptions'
                topic_metadata_sync_options:
                  $ref: '#/components/schemas/TopicMetadataSyncOptions'
              title: Shadow link fields to update.
              type: object
        description: Shadow link fields to update.
        required: true
        x-originalParamName: shadow_link
      responses:
        '202':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateShadowLinkOperation'
          description: Accepted
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found - Shadow link with given ID does not exist
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Please reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Update shadow link
      tags:
        - Shadow Links
  /v1/user-invites:
    get:
      description: List user invites to your Redpanda Cloud organization.
      operationId: UserInviteService_ListUserInvites
      parameters:
        - in: query
          name: page_size
          schema:
            format: int32
            type: integer
        - in: query
          name: page_token
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListUserInvitesResponse'
          description: OK
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: List user invites
      tags:
        - User Invites
    post:
      description: Create a Redpanda Cloud user invite.
      operationId: UserInviteService_CreateUserInvite
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateUserInviteRequest'
        required: true
        x-originalParamName: body
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateUserInviteResponse'
          description: UserInvite Created
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Create user invite
      tags:
        - User Invites
  '/v1/user-invites/{id}':
    delete:
      description: Delete Redpanda Cloud User from the organization.
      operationId: UserInviteService_DeleteUserInvite
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '204':
          content:
            application/json:
              schema: {}
          description: User was deleted from the organization successfully
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Delete User from the organization
      tags:
        - User Invites
    get:
      description: Get Redpanda user invite.
      operationId: UserInviteService_GetUserInvite
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetUserInviteResponse'
          description: Ok
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Get user invite
      tags:
        - User Invites
    patch:
      description: Update a Redpanda Cloud user invite.
      operationId: UserInviteService_UpdateUserInvite
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateUserInviteBody'
        required: true
        x-originalParamName: body
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateUserInviteResponse'
          description: Ok
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Update user invite
      tags:
        - User Invites
  /v1/users:
    get:
      description: List Redpanda Cloud Users.
      operationId: UserService_ListUsers
      parameters:
        - in: query
          name: page_size
          schema:
            format: int32
            type: integer
        - in: query
          name: page_token
          schema:
            type: string
        - in: query
          name: read_mask
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListUsersResponse'
          description: OK
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: List users
      tags:
        - Control Plane Users
  '/v1/users/{id}':
    delete:
      description: Delete Redpanda Cloud user from the organization.
      operationId: UserService_DeleteUser
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        '204':
          content:
            application/json:
              schema: {}
          description: User was deleted from the organization successfully
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Delete user
      tags:
        - Control Plane Users
    get:
      description: Get Redpanda Cloud user.
      operationId: UserService_GetUser
      parameters:
        - in: path
          name: id
          required: true
          schema:
            type: string
        - in: query
          name: read_mask
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetUserResponse'
          description: Ok
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: Internal Server Error. Reach out to support.
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpc.Status'
          description: An unexpected error response.
      summary: Get user
      tags:
        - Control Plane Users
security:
  - auth0: []
servers:
  - description: Control Plane API
    url: 'https://api.redpanda.com'
tags:
  - description: Check the state of long-running operations.
    name: Operations
  - description: 'Manage Redpanda Cloud clusters. For detailed steps and information, see [Use the Control Plane API](https://docs.redpanda.com/redpanda-cloud/manage/api/controlplane/).'
    name: Clusters
  - description: Manage Redpanda Cloud networks.
    name: Networks
  - description: Manage Redpanda Cloud network peerings.
    name: Network Peerings
  - description: 'Manage [Redpanda Serverless](https://docs.redpanda.com/redpanda-cloud/get-started/cloud-overview/#redpanda-cloud-cluster-types) clusters. For detailed steps, see [Use the Control Plane API with Serverless](https://docs.redpanda.com/redpanda-cloud/manage/api/cloud-serverless-controlplane-api/).'
    name: Serverless Clusters
  - description: 'Manage Redpanda Serverless private links. For detailed steps and information, see [Networking: Serverless](https://docs.redpanda.com/redpanda-cloud/networking/serverless).'
    name: Serverless Private Links
  - description: Get information about available Redpanda regions.
    name: Regions
  - description: Manage Redpanda Cloud resource groups.
    name: Resource Groups
  - description: See available Redpanda Serverless regions.
    name: Serverless Regions
  - name: ShadowLinkService
  - description: Manage Redpanda Cloud shadow links for data replication.
    name: Shadow Links
  - description: Manage Redpanda Cloud groups.
    name: Control Plane Groups
  - description: See information about the organization the current user belongs to.
    name: Organization
  - description: Manage your Redpanda Cloud organization permissions.
    name: Control Plane Permissions
  - description: Manage your Redpanda Cloud organization roles.
    name: Control Plane Roles
  - description: Manage role bindings for your cloud organization users.
    name: Control Plane Role Bindings
  - description: Manage Redpanda Cloud service accounts.
    name: Control Plane Service Accounts
  - description: Manage Redpanda Cloud organization users.
    name: Control Plane Users
  - description: Manage user invites for your organization.
    name: User Invites
x-topics:
  - title: Quickstart
    content:
      $ref: ../x-topics/quickstart.md
  - title: Cloud API Overview
    content:
      $ref: ../../shared/x-topics/cloud-api-overview.md
  - title: Authentication
    content:
      $ref: ../../shared/x-topics/cloud-about-authentication.md
  - title: Regions and Usage Tiers
    content:
      $ref: ../x-topics/cloud-regions.md
  - title: Long-running Operations
    content:
      $ref: ../x-topics/long-running-operations.md
  - title: Error and Status Codes
    content:
      $ref: ../x-topics/error-and-status-codes.md
  - title: Deprecation Policy
    content:
      $ref: ../../shared/x-topics/cloud-api-deprecation-policy.md
