Redpanda logo API
Cloud Self-Managed Connect Labs
or
Show more

Use to navigate results, ENTER to select one, ESC to close

Type in any word to easily find the endpoint, property or group of operations you are looking for.

Redpanda APIs hub
  • Cloud Control Plane API
  • Cloud Data Plane API
  • HTTP Proxy
  • Schema Registry
Back to hub page
API Explorer API changelog
Download source
  • JSON OpenAPI specification
  • YAML OpenAPI specification
Share feedback
Cloud Data Plane API logo

Topics

  • Introduction
  • Quickstart
  • Cloud API Overview
  • Authentication
  • Error and Status Codes
  • Deprecation Policy

Endpoints

  • Redpanda ACLs
    • List ACLs GET
    • Create ACL POST
    • Delete ACLs DELETE
  • Cloud Storage
    • Retrieve the mount task status GET
    • Get the status of a mount or unmount by ID GET
    • Update a mount or unmount POST
    • Delete a mount or unmount DELETE
    • Mount topics from object storage POST
    • List mountable topics GET
    • Unmount topics to object storage POST
  • Wasm Transforms
    • List transforms GET
    • Deploy transform PUT
    • Get transform GET
    • Delete transform DELETE
  • Kafka Connect
    • List Connect clusters GET
    • Get Connect cluster GET
    • List connectors GET
    • Create connector POST
    • Get connector GET
    • Delete connector DELETE
    • Get connector configuration GET
    • Upsert connector configuration PUT
    • Pause connector PUT
    • Restart connector POST
    • Resume connector PUT
    • Get connector status GET
    • Stop connector PUT
    • List connector topics GET
    • Reset connector topics PUT
  • Redpanda Connect Pipelines
    • Retrieve the list of available components GET
    • Retrieve the schema for Redpanda Connect pipeline configurations GET
    • List Redpanda Connect pipelines GET
    • Create Redpanda Connect pipeline POST
    • Get Redpanda Connect pipelines by secrets GET
    • Get Redpanda Connect pipelines for secret GET
    • Get Redpanda Connect pipeline GET
    • Update a Redpanda Connect pipeline PUT
    • Delete a Redpanda Connect pipeline DELETE
    • Start a Redpanda Connect pipeline PUT
    • Stops a Redpanda Connect pipeline PUT
    • Lint a Redpanda Connect pipeline configuration POST
  • Redpanda Connect MCP servers
    • List Redpanda Connect MCP Servers GET
    • Create Redpanda Connect MCP Server POST
    • Get Redpanda Connect MCP server GET
    • Update a Redpanda Connect MCP Server PUT
    • Delete a Redpanda Connect MCP server DELETE
    • Start a Redpanda Connect MCP server POST
    • Stops a Redpanda Connect MCP server POST
    • Retrieve the schema for Redpanda Connect MCP Servers configurations. GET
    • Lint a Redpanda Connect MCP tools configuration POST
  • Monitoring
    • List Recent Connections GET
  • Quotas
    • List quotas GET
    • Set a quota POST
    • Delete multiple quotas POST
    • Set multiple quotas POST
    • Delete a quota POST
  • Secrets
    • List Connect cluster secrets GET
    • Create Connect cluster secret POST
    • Get Connect cluster secret GET
    • Update Connect cluster secret PUT
    • Delete Connect cluster secret DELETE
    • List secret scopes GET
    • List secrets GET
    • Create secret POST
    • Get resources by secret GET
    • Get secret GET
    • Update secret PUT
    • Delete secret DELETE
  • Security
    • List roles GET
    • Create role POST
    • Get role GET
    • Update role PUT
    • Delete role DELETE
    • List role members GET
  • Shadow Links (Data Plane)
    • Get Shadow Link GET
    • Fail Over Shadow Link POST
    • Get Shadow Link Metrics GET
    • List Shadow Link Topics GET
    • Get Shadow Topic GET
  • Topics
    • List topics GET
    • Create topic POST
    • Set topic partitions PUT
    • Add topic partitions PATCH
    • Delete topic DELETE
    • Get topic configurations GET
    • Set topic configurations PUT
    • Update topic configuration PATCH
    • Set topic partitions PUT
    • Add topic partitions PATCH
  • Redpanda Users
    • List users GET
    • Create user POST
    • Delete user DELETE
    • Update user PUT
Powered by Bump.sh
Redpanda APIs hub
  • Cloud Control Plane API
  • Cloud Data Plane API
  • HTTP Proxy
  • Schema Registry
Back to hub page
API Explorer API changelog
Download source
  • JSON OpenAPI specification
  • YAML OpenAPI specification
Share feedback
Cloud Data Plane API logo

Get Shadow Link Run in API Explorer

Ask AI
  • Open in ChatGPT
  • Open in Claude

  • View as Markdown
  • Copy as Markdown
GET /v1/shadow-links/{name}
Auth0

Retrieve details of a specific shadow link by name.

Path parameters

  • name string Required

Responses

  • 200 application/json

    OK

    Hide response attribute Show response attribute object
    • shadow_link object
      Hide shadow_link attributes Show shadow_link attributes object
      • configurations object
        Hide configurations attributes Show configurations attributes object
        • client_options object
          Hide client_options attributes Show client_options attributes object
          • authentication_configuration object
            Hide authentication_configuration attributes Show authentication_configuration attributes object
            • plain_configuration object
              Hide plain_configuration attributes Show plain_configuration attributes object
              • password string
              • password_set boolean
              • password_set_at string(date-time)
              • username string
            • scram_configuration object
              Hide scram_configuration attributes Show scram_configuration attributes object
              • password string
              • password_set boolean
              • password_set_at string(date-time)
              • scram_mechanism string
                • SCRAM_MECHANISM_SCRAM_SHA_256: SCRAM-SHA-256
                  • SCRAM_MECHANISM_SCRAM_SHA_512: SCRAM-SHA-512

                Values are SCRAM_MECHANISM_SCRAM_SHA_256 or SCRAM_MECHANISM_SCRAM_SHA_512.

              • username string
          • bootstrap_servers array[string] Required
          • client_id string
          • connection_timeout_ms integer(int32)
          • effective_connection_timeout_ms integer(int32)
          • effective_fetch_max_bytes integer(int32)
          • effective_fetch_min_bytes integer(int32)
          • effective_fetch_partition_max_bytes integer(int32)
          • effective_fetch_wait_max_ms integer(int32)
          • effective_metadata_max_age_ms integer(int32)
          • effective_retry_backoff_ms integer(int32)
          • fetch_max_bytes integer(int32)
          • fetch_min_bytes integer(int32)
          • fetch_partition_max_bytes integer(int32)
          • fetch_wait_max_ms integer(int32)
          • metadata_max_age_ms integer(int32)
          • retry_backoff_ms integer(int32)
          • source_cluster_id string
          • tls_settings object
            Hide tls_settings attributes Show tls_settings attributes object
            • do_not_set_sni_hostname boolean
            • enabled boolean
            • tls_file_settings object
              Hide tls_file_settings attributes Show tls_file_settings attributes object
              • ca_path string
              • cert_path string
              • key_path string
            • tls_pem_settings object
              Hide tls_pem_settings attributes Show tls_pem_settings attributes object
              • ca string
              • cert string
              • key string
              • key_fingerprint string
        • consumer_offset_sync_options object
          Hide consumer_offset_sync_options attributes Show consumer_offset_sync_options attributes object
          • effective_interval string
          • group_filters array[object]
            Hide group_filters attributes Show group_filters attributes object
            • filter_type string
              • FILTER_TYPE_INCLUDE: Include the items that match the filter
                • FILTER_TYPE_EXCLUDE: Exclude the items that match the filter

              Values are FILTER_TYPE_INCLUDE or FILTER_TYPE_EXCLUDE.

            • name string
            • pattern_type string
              • PATTERN_TYPE_LITERAL: Must match the filter exactly
                • PATTERN_TYPE_PREFIX: Will match anything that starts with filter

              Values are PATTERN_TYPE_LITERAL or PATTERN_TYPE_PREFIX.

          • interval string
          • paused boolean
        • schema_registry_sync_options object

          Options for how the Schema Registry is synced.

          Hide schema_registry_sync_options attribute Show schema_registry_sync_options attribute object
          • shadow_schema_registry_topic object

            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.
        • security_sync_options object
          Hide security_sync_options attributes Show security_sync_options attributes object
          • acl_filters array[object]
            Hide acl_filters attributes Show acl_filters attributes object
            • access_filter object
              Hide access_filter attributes Show access_filter attributes object
              • host string
              • operation string

                Values are 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, or ACL_OPERATION_IDEMPOTENT_WRITE.

              • permission_type string

                Values are ACL_PERMISSION_TYPE_ANY, ACL_PERMISSION_TYPE_ALLOW, or ACL_PERMISSION_TYPE_DENY.

              • principal string
            • resource_filter object
              Hide resource_filter attributes Show resource_filter attributes object
              • name string
              • pattern_type string
                • ACL_PATTERN_ANY: Wildcard to match any pattern
                  • ACL_PATTERN_LITERAL: Match a literal string
                  • ACL_PATTERN_PREFIXED: 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

                Values are ACL_PATTERN_ANY, ACL_PATTERN_LITERAL, ACL_PATTERN_PREFIXED, or ACL_PATTERN_MATCH.

              • resource_type string
                • 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

                Values are ACL_RESOURCE_ANY, ACL_RESOURCE_CLUSTER, ACL_RESOURCE_GROUP, ACL_RESOURCE_TOPIC, ACL_RESOURCE_TXN_ID, ACL_RESOURCE_SR_SUBJECT, ACL_RESOURCE_SR_REGISTRY, or ACL_RESOURCE_SR_ANY.

          • effective_interval string
          • interval string
          • paused boolean
        • topic_metadata_sync_options object
          Hide topic_metadata_sync_options attributes Show topic_metadata_sync_options attributes object
          • auto_create_shadow_topic_filters array[object]

            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.

            Hide auto_create_shadow_topic_filters attributes Show auto_create_shadow_topic_filters attributes object
            • filter_type string
              • FILTER_TYPE_INCLUDE: Include the items that match the filter
                • FILTER_TYPE_EXCLUDE: Exclude the items that match the filter

              Values are FILTER_TYPE_INCLUDE or FILTER_TYPE_EXCLUDE.

            • name string
            • pattern_type string
              • PATTERN_TYPE_LITERAL: Must match the filter exactly
                • PATTERN_TYPE_PREFIX: Will match anything that starts with filter

              Values are PATTERN_TYPE_LITERAL or PATTERN_TYPE_PREFIX.

          • effective_interval string
          • exclude_default boolean

            If this is true, then only the properties listed in synced_shadow_topic_properties will be synced.

          • interval string
          • paused boolean
          • start_at_earliest object

            Start at the earliest offset in the partition.

          • start_at_latest object

            Start at the latest offset in the partition.

          • start_at_timestamp string(date-time)

            Enables data replication from the first offset on the source topic/partition where the record's timestamp is at or after the specified timestamp.

          • synced_shadow_topic_properties array[string]

            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.cloud_topic.enabled

            This list is a list of properties in addition to the default properties that will be synced. See exclude_default.

      • name string
      • state string
        • SHADOW_LINK_STATE_ACTIVE: Shadow link is active
          • SHADOW_LINK_STATE_PAUSED: Shadow link was paused

        Values are SHADOW_LINK_STATE_ACTIVE or SHADOW_LINK_STATE_PAUSED.

      • synced_shadow_topic_properties array[string]
      • tasks_status array[object]
        Hide tasks_status attributes Show tasks_status attributes object
        • broker_id integer(int32)
        • name string
        • reason string
        • shard integer(int32)
        • state string
          • 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

          Values are TASK_STATE_ACTIVE, TASK_STATE_PAUSED, TASK_STATE_LINK_UNAVAILABLE, TASK_STATE_NOT_RUNNING, or TASK_STATE_FAULTED.

      • uid string
  • 401 application/json

    Unauthenticated.

    Hide response attributes Show response attributes object
    • code string(int32)

      RPC status code, as described here.

      Values are 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, or DATA_LOSS.

    • details array[object]

      A list of messages that carries the error details.

      Details of the error.

      Details of the error.

      One of:
      BadRequest object ErrorInfo object QuotaFailure object Help object

      Describes violations in a client request. This error type focuses on the syntactic aspects of the request.

      Hide attributes Show attributes
      • @type string

        Fully qualified protobuf type name of the underlying response, prefixed with type.googleapis.com/.

        Value is type.googleapis.com/google.rpc.BadRequest.

      • field_violations array[object]

        Describes all violations in a client request.

        A message type used to describe a single bad request field.

        Hide field_violations attributes Show field_violations attributes object
        • description string

          A description of why the request element is bad.

        • field string

          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.
        • localized_message object

          Provides a localized error message that is safe to return to the user which can be attached to an RPC error.

          Hide localized_message attributes Show localized_message attributes object
          • locale string
          • message string

            The localized error message in the above locale.

        • reason string

          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.

      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" } }

      Hide attributes Show attributes
      • @type string

        Fully qualified protobuf type name of the underlying response, prefixed with type.googleapis.com/.

        Value is type.googleapis.com/google.rpc.ErrorInfo.

      • domain string

        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".

      • metadata object

        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.

        Hide metadata attribute Show metadata attribute object
        • * string Additional properties
      • reason string

        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.

      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.

      Hide attributes Show attributes
      • @type string

        Fully qualified protobuf type name of the underlying response, prefixed with type.googleapis.com/.

        Value is type.googleapis.com/google.rpc.QuotaFailure.

      • violations array[object]

        Describes all quota violations.

        A message type used to describe a single quota violation. For example, a daily quota or a custom quota that was exceeded.

        Hide violations attributes Show violations attributes object
        • api_service string

          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".

        • description string

          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".

        • future_quota_value string(int64) | null

          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.

        • quota_dimensions object

          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.

          Hide quota_dimensions attribute Show quota_dimensions attribute object
          • * string Additional properties
        • quota_id string

          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".

        • quota_metric string

          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".

        • quota_value string(int64)

          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.

        • subject string

          The subject on which the quota check failed. For example, "clientip:" or "project:".

      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.

      Hide attributes Show attributes
      • @type string

        Fully qualified protobuf type name of the underlying response, prefixed with type.googleapis.com/.

        Value is type.googleapis.com/google.rpc.Help.

      • links array[object]

        URL(s) pointing to additional information on handling the current error.

        Describes a URL link.

        Hide links attributes Show links attributes object
        • description string

          Describes what the link offers.

        • url string

          The URL of the link.

    • message string

      Detailed error message. No compatibility guarantees are given for the text contained in this message.

  • 500 application/json

    Internal Server Error. Reach out to support.

    Hide response attributes Show response attributes object
    • code string(int32)

      RPC status code, as described here.

      Values are 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, or DATA_LOSS.

    • details array[object]

      A list of messages that carries the error details.

      Details of the error.

      Details of the error.

      One of:
      BadRequest object ErrorInfo object QuotaFailure object Help object

      Describes violations in a client request. This error type focuses on the syntactic aspects of the request.

      Hide attributes Show attributes
      • @type string

        Fully qualified protobuf type name of the underlying response, prefixed with type.googleapis.com/.

        Value is type.googleapis.com/google.rpc.BadRequest.

      • field_violations array[object]

        Describes all violations in a client request.

        A message type used to describe a single bad request field.

        Hide field_violations attributes Show field_violations attributes object
        • description string

          A description of why the request element is bad.

        • field string

          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.
        • localized_message object

          Provides a localized error message that is safe to return to the user which can be attached to an RPC error.

          Hide localized_message attributes Show localized_message attributes object
          • locale string
          • message string

            The localized error message in the above locale.

        • reason string

          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.

      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" } }

      Hide attributes Show attributes
      • @type string

        Fully qualified protobuf type name of the underlying response, prefixed with type.googleapis.com/.

        Value is type.googleapis.com/google.rpc.ErrorInfo.

      • domain string

        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".

      • metadata object

        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.

        Hide metadata attribute Show metadata attribute object
        • * string Additional properties
      • reason string

        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.

      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.

      Hide attributes Show attributes
      • @type string

        Fully qualified protobuf type name of the underlying response, prefixed with type.googleapis.com/.

        Value is type.googleapis.com/google.rpc.QuotaFailure.

      • violations array[object]

        Describes all quota violations.

        A message type used to describe a single quota violation. For example, a daily quota or a custom quota that was exceeded.

        Hide violations attributes Show violations attributes object
        • api_service string

          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".

        • description string

          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".

        • future_quota_value string(int64) | null

          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.

        • quota_dimensions object

          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.

          Hide quota_dimensions attribute Show quota_dimensions attribute object
          • * string Additional properties
        • quota_id string

          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".

        • quota_metric string

          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".

        • quota_value string(int64)

          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.

        • subject string

          The subject on which the quota check failed. For example, "clientip:" or "project:".

      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.

      Hide attributes Show attributes
      • @type string

        Fully qualified protobuf type name of the underlying response, prefixed with type.googleapis.com/.

        Value is type.googleapis.com/google.rpc.Help.

      • links array[object]

        URL(s) pointing to additional information on handling the current error.

        Describes a URL link.

        Hide links attributes Show links attributes object
        • description string

          Describes what the link offers.

        • url string

          The URL of the link.

    • message string

      Detailed error message. No compatibility guarantees are given for the text contained in this message.

  • default application/json

    An unexpected error response.

    Hide response attributes Show response attributes object
    • code string(int32)

      RPC status code, as described here.

      Values are 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, or DATA_LOSS.

    • details array[object]

      A list of messages that carries the error details.

      Details of the error.

      Details of the error.

      One of:
      BadRequest object ErrorInfo object QuotaFailure object Help object

      Describes violations in a client request. This error type focuses on the syntactic aspects of the request.

      Hide attributes Show attributes
      • @type string

        Fully qualified protobuf type name of the underlying response, prefixed with type.googleapis.com/.

        Value is type.googleapis.com/google.rpc.BadRequest.

      • field_violations array[object]

        Describes all violations in a client request.

        A message type used to describe a single bad request field.

        Hide field_violations attributes Show field_violations attributes object
        • description string

          A description of why the request element is bad.

        • field string

          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.
        • localized_message object

          Provides a localized error message that is safe to return to the user which can be attached to an RPC error.

          Hide localized_message attributes Show localized_message attributes object
          • locale string
          • message string

            The localized error message in the above locale.

        • reason string

          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.

      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" } }

      Hide attributes Show attributes
      • @type string

        Fully qualified protobuf type name of the underlying response, prefixed with type.googleapis.com/.

        Value is type.googleapis.com/google.rpc.ErrorInfo.

      • domain string

        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".

      • metadata object

        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.

        Hide metadata attribute Show metadata attribute object
        • * string Additional properties
      • reason string

        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.

      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.

      Hide attributes Show attributes
      • @type string

        Fully qualified protobuf type name of the underlying response, prefixed with type.googleapis.com/.

        Value is type.googleapis.com/google.rpc.QuotaFailure.

      • violations array[object]

        Describes all quota violations.

        A message type used to describe a single quota violation. For example, a daily quota or a custom quota that was exceeded.

        Hide violations attributes Show violations attributes object
        • api_service string

          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".

        • description string

          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".

        • future_quota_value string(int64) | null

          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.

        • quota_dimensions object

          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.

          Hide quota_dimensions attribute Show quota_dimensions attribute object
          • * string Additional properties
        • quota_id string

          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".

        • quota_metric string

          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".

        • quota_value string(int64)

          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.

        • subject string

          The subject on which the quota check failed. For example, "clientip:" or "project:".

      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.

      Hide attributes Show attributes
      • @type string

        Fully qualified protobuf type name of the underlying response, prefixed with type.googleapis.com/.

        Value is type.googleapis.com/google.rpc.Help.

      • links array[object]

        URL(s) pointing to additional information on handling the current error.

        Describes a URL link.

        Hide links attributes Show links attributes object
        • description string

          Describes what the link offers.

        • url string

          The URL of the link.

    • message string

      Detailed error message. No compatibility guarantees are given for the text contained in this message.

GET /v1/shadow-links/{name}
curl \
 --request GET 'https://{dataplane_api_subdomain}.cloud.redpanda.com/v1/shadow-links/{name}' \
 --header "Authorization: Bearer $ACCESS_TOKEN"
Response examples (200)
{
  "shadow_link": {
    "configurations": {
      "client_options": {
        "authentication_configuration": {
          "plain_configuration": {
            "password": "string",
            "password_set": true,
            "password_set_at": "2025-05-04T09:42:00Z",
            "username": "string"
          },
          "scram_configuration": {
            "password": "string",
            "password_set": true,
            "password_set_at": "2025-05-04T09:42:00Z",
            "scram_mechanism": "SCRAM_MECHANISM_SCRAM_SHA_256",
            "username": "string"
          }
        },
        "bootstrap_servers": [
          "string"
        ],
        "client_id": "string",
        "connection_timeout_ms": 42,
        "effective_connection_timeout_ms": 42,
        "effective_fetch_max_bytes": 42,
        "effective_fetch_min_bytes": 42,
        "effective_fetch_partition_max_bytes": 42,
        "effective_fetch_wait_max_ms": 42,
        "effective_metadata_max_age_ms": 42,
        "effective_retry_backoff_ms": 42,
        "fetch_max_bytes": 42,
        "fetch_min_bytes": 42,
        "fetch_partition_max_bytes": 42,
        "fetch_wait_max_ms": 42,
        "metadata_max_age_ms": 42,
        "retry_backoff_ms": 42,
        "source_cluster_id": "string",
        "tls_settings": {
          "do_not_set_sni_hostname": true,
          "enabled": true,
          "tls_file_settings": {
            "ca_path": "string",
            "cert_path": "string",
            "key_path": "string"
          },
          "tls_pem_settings": {
            "ca": "string",
            "cert": "string",
            "key": "string",
            "key_fingerprint": "string"
          }
        }
      },
      "consumer_offset_sync_options": {
        "effective_interval": "string",
        "group_filters": [
          {
            "filter_type": "FILTER_TYPE_INCLUDE",
            "name": "string",
            "pattern_type": "PATTERN_TYPE_LITERAL"
          }
        ],
        "interval": "string",
        "paused": true
      },
      "schema_registry_sync_options": {
        "shadow_schema_registry_topic": {}
      },
      "security_sync_options": {
        "acl_filters": [
          {
            "access_filter": {
              "host": "string",
              "operation": "ACL_OPERATION_ANY",
              "permission_type": "ACL_PERMISSION_TYPE_ANY",
              "principal": "string"
            },
            "resource_filter": {
              "name": "string",
              "pattern_type": "ACL_PATTERN_ANY",
              "resource_type": "ACL_RESOURCE_ANY"
            }
          }
        ],
        "effective_interval": "string",
        "interval": "string",
        "paused": true
      },
      "topic_metadata_sync_options": {
        "auto_create_shadow_topic_filters": [
          {
            "filter_type": "FILTER_TYPE_INCLUDE",
            "name": "string",
            "pattern_type": "PATTERN_TYPE_LITERAL"
          }
        ],
        "effective_interval": "string",
        "exclude_default": true,
        "interval": "string",
        "paused": true,
        "start_at_earliest": {},
        "start_at_latest": {},
        "start_at_timestamp": "2025-05-04T09:42:00Z",
        "synced_shadow_topic_properties": [
          "string"
        ]
      }
    },
    "name": "string",
    "state": "SHADOW_LINK_STATE_ACTIVE",
    "synced_shadow_topic_properties": [
      "string"
    ],
    "tasks_status": [
      {
        "broker_id": 42,
        "name": "string",
        "reason": "string",
        "shard": 42,
        "state": "TASK_STATE_ACTIVE"
      }
    ],
    "uid": "string"
  }
}
Response examples (401)
{
  "code": "OK",
  "details": [
    {
      "@type": "type.googleapis.com/google.rpc.BadRequest",
      "field_violations": [
        {
          "description": "string",
          "field": "string",
          "localized_message": {
            "locale": "string",
            "message": "string"
          },
          "reason": "string"
        }
      ]
    }
  ],
  "message": "string"
}
Response examples (500)
{
  "code": "OK",
  "details": [
    {
      "@type": "type.googleapis.com/google.rpc.BadRequest",
      "field_violations": [
        {
          "description": "string",
          "field": "string",
          "localized_message": {
            "locale": "string",
            "message": "string"
          },
          "reason": "string"
        }
      ]
    }
  ],
  "message": "string"
}
Response examples (default)
{
  "code": "OK",
  "details": [
    {
      "@type": "type.googleapis.com/google.rpc.BadRequest",
      "field_violations": [
        {
          "description": "string",
          "field": "string",
          "localized_message": {
            "locale": "string",
            "message": "string"
          },
          "reason": "string"
        }
      ]
    }
  ],
  "message": "string"
}
Redpanda
Product
Agentic Data Plane Data Streaming
Learn
Resources Events On-demand Blog
Company
About us Customers Press Partners Careers Contact Legal hub Trust center
Privacy policy
© 2025 Redpanda. All rights reserved.