{"components":{"schemas":{"connect-protocol-version":{"const":1,"description":"Define the version of the Connect protocol","enum":[1],"title":"Connect-Protocol-Version","type":"number"},"connect-timeout-header":{"description":"Define the timeout, in ms","title":"Connect-Timeout-Ms","type":"number"},"connect.error":{"additionalProperties":true,"description":"Error type returned by Connect: https://connectrpc.com/docs/go/errors/#http-representation","properties":{"code":{"description":"The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code].","enum":["canceled","unknown","invalid_argument","deadline_exceeded","not_found","already_exists","permission_denied","resource_exhausted","failed_precondition","aborted","out_of_range","unimplemented","internal","unavailable","data_loss","unauthenticated"],"examples":["not_found"],"type":"string"},"details":{"description":"A list of messages that carry the error details. There is no limit on the number of messages.","items":{"$ref":"#/components/schemas/connect.error_details.Any"},"type":"array"},"message":{"description":"A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details][google.rpc.Status.details] field, or localized by the client.","type":"string"}},"title":"Connect Error","type":"object"},"connect.error_details.Any":{"additionalProperties":true,"description":"Contains an arbitrary serialized message along with a @type that describes the type of the serialized message, with an additional debug field for ConnectRPC error details.","properties":{"debug":{"description":"Deserialized error detail payload. The 'type' field indicates the schema. This field is for easier debugging and should not be relied upon for application logic.","discriminator":{"propertyName":"type"},"oneOf":[{"additionalProperties":true,"description":"Detailed error information.","title":"Any","type":"object"}],"title":"Debug"},"type":{"description":"A URL that acts as a globally unique identifier for the type of the serialized message. For example: `type.googleapis.com/google.rpc.ErrorInfo`. This is used to determine the schema of the data in the `value` field and is the discriminator for the `debug` field.","type":"string"},"value":{"description":"The Protobuf message, serialized as bytes and base64-encoded. The specific message type is identified by the `type` field.","format":"binary","type":"string"}},"type":"object"},"google.protobuf.Duration":{"description":"A Duration represents a signed, fixed-length span of time represented\n as a count of seconds and fractions of seconds at nanosecond\n resolution. It is independent of any calendar and concepts like \"day\"\n or \"month\". It is related to Timestamp in that the difference between\n two Timestamp values is a Duration and it can be added or subtracted\n from a Timestamp. Range is approximately +-10,000 years.\n\n # Examples\n\n Example 1: Compute Duration from two Timestamps in pseudo code.\n\n     Timestamp start = ...;\n     Timestamp end = ...;\n     Duration duration = ...;\n\n     duration.seconds = end.seconds - start.seconds;\n     duration.nanos = end.nanos - start.nanos;\n\n     if (duration.seconds \u003c 0 \u0026\u0026 duration.nanos \u003e 0) {\n       duration.seconds += 1;\n       duration.nanos -= 1000000000;\n     } else if (duration.seconds \u003e 0 \u0026\u0026 duration.nanos \u003c 0) {\n       duration.seconds -= 1;\n       duration.nanos += 1000000000;\n     }\n\n Example 2: Compute Timestamp from Timestamp + Duration in pseudo code.\n\n     Timestamp start = ...;\n     Duration duration = ...;\n     Timestamp end = ...;\n\n     end.seconds = start.seconds + duration.seconds;\n     end.nanos = start.nanos + duration.nanos;\n\n     if (end.nanos \u003c 0) {\n       end.seconds -= 1;\n       end.nanos += 1000000000;\n     } else if (end.nanos \u003e= 1000000000) {\n       end.seconds += 1;\n       end.nanos -= 1000000000;\n     }\n\n Example 3: Compute Duration from datetime.timedelta in Python.\n\n     td = datetime.timedelta(days=3, minutes=10)\n     duration = Duration()\n     duration.FromTimedelta(td)\n\n # JSON Mapping\n\n In JSON format, the Duration type is encoded as a string rather than an\n object, where the string ends in the suffix \"s\" (indicating seconds) and\n is preceded by the number of seconds, with nanoseconds expressed as\n fractional seconds. For example, 3 seconds with 0 nanoseconds should be\n encoded in JSON format as \"3s\", while 3 seconds and 1 nanosecond should\n be expressed in JSON format as \"3.000000001s\", and 3 seconds and 1\n microsecond should be expressed in JSON format as \"3.000001s\".","format":"duration","type":"string"},"google.protobuf.FieldMask":{"description":"`FieldMask` represents a set of symbolic field paths, for example:\n\n     paths: \"f.a\"\n     paths: \"f.b.d\"\n\n Here `f` represents a field in some root message, `a` and `b`\n fields in the message found in `f`, and `d` a field found in the\n message in `f.b`.\n\n Field masks are used to specify a subset of fields that should be\n returned by a get operation or modified by an update operation.\n Field masks also have a custom JSON encoding (see below).\n\n # Field Masks in Projections\n\n When used in the context of a projection, a response message or\n sub-message is filtered by the API to only contain those fields as\n specified in the mask. For example, if the mask in the previous\n example is applied to a response message as follows:\n\n     f {\n       a : 22\n       b {\n         d : 1\n         x : 2\n       }\n       y : 13\n     }\n     z: 8\n\n The result will not contain specific values for fields x,y and z\n (their value will be set to the default, and omitted in proto text\n output):\n\n\n     f {\n       a : 22\n       b {\n         d : 1\n       }\n     }\n\n A repeated field is not allowed except at the last position of a\n paths string.\n\n If a FieldMask object is not present in a get operation, the\n operation applies to all fields (as if a FieldMask of all fields\n had been specified).\n\n Note that a field mask does not necessarily apply to the\n top-level response message. In case of a REST get operation, the\n field mask applies directly to the response, but in case of a REST\n list operation, the mask instead applies to each individual message\n in the returned resource list. In case of a REST custom method,\n other definitions may be used. Where the mask applies will be\n clearly documented together with its declaration in the API.  In\n any case, the effect on the returned resource/resources is required\n behavior for APIs.\n\n # Field Masks in Update Operations\n\n A field mask in update operations specifies which fields of the\n targeted resource are going to be updated. The API is required\n to only change the values of the fields as specified in the mask\n and leave the others untouched. If a resource is passed in to\n describe the updated values, the API ignores the values of all\n fields not covered by the mask.\n\n If a repeated field is specified for an update operation, new values will\n be appended to the existing repeated field in the target resource. Note that\n a repeated field is only allowed in the last position of a `paths` string.\n\n If a sub-message is specified in the last position of the field mask for an\n update operation, then new value will be merged into the existing sub-message\n in the target resource.\n\n For example, given the target message:\n\n     f {\n       b {\n         d: 1\n         x: 2\n       }\n       c: [1]\n     }\n\n And an update message:\n\n     f {\n       b {\n         d: 10\n       }\n       c: [2]\n     }\n\n then if the field mask is:\n\n  paths: [\"f.b\", \"f.c\"]\n\n then the result will be:\n\n     f {\n       b {\n         d: 10\n         x: 2\n       }\n       c: [1, 2]\n     }\n\n An implementation may provide options to override this default behavior for\n repeated and message fields.\n\n In order to reset a field's value to the default, the field must\n be in the mask and set to the default value in the provided resource.\n Hence, in order to reset all fields of a resource, provide a default\n instance of the resource and set all fields in the mask, or do\n not provide a mask as described below.\n\n If a field mask is not present on update, the operation applies to\n all fields (as if a field mask of all fields has been specified).\n Note that in the presence of schema evolution, this may mean that\n fields the client does not know and has therefore not filled into\n the request will be reset to their default. If this is unwanted\n behavior, a specific service may require a client to always specify\n a field mask, producing an error if not.\n\n As with get operations, the location of the resource which\n describes the updated values in the request message depends on the\n operation kind. In any case, the effect of the field mask is\n required to be honored by the API.\n\n ## Considerations for HTTP REST\n\n The HTTP kind of an update operation which uses a field mask must\n be set to PATCH instead of PUT in order to satisfy HTTP semantics\n (PUT must only be used for full updates).\n\n # JSON Encoding of Field Masks\n\n In JSON, a field mask is encoded as a single string where paths are\n separated by a comma. Fields name in each path are converted\n to/from lower-camel naming conventions.\n\n As an example, consider the following message declarations:\n\n     message Profile {\n       User user = 1;\n       Photo photo = 2;\n     }\n     message User {\n       string display_name = 1;\n       string address = 2;\n     }\n\n In proto a field mask for `Profile` may look as such:\n\n     mask {\n       paths: \"user.display_name\"\n       paths: \"photo\"\n     }\n\n In JSON, the same mask is represented as below:\n\n     {\n       mask: \"user.displayName,photo\"\n     }\n\n # Field Masks and Oneof Fields\n\n Field masks treat fields in oneofs just as regular fields. Consider the\n following message:\n\n     message SampleMessage {\n       oneof test_oneof {\n         string name = 4;\n         SubMessage sub_message = 9;\n       }\n     }\n\n The field mask can be:\n\n     mask {\n       paths: \"name\"\n     }\n\n Or:\n\n     mask {\n       paths: \"sub_message\"\n     }\n\n Note that oneof type names (\"test_oneof\" in this case) cannot be used in\n paths.\n\n ## Field Mask Verification\n\n The implementation of any API method which has a FieldMask type field in the\n request should verify the included field paths, and return an\n `INVALID_ARGUMENT` error if any path is unmappable.","type":"string"},"google.protobuf.Timestamp":{"description":"A Timestamp represents a point in time independent of any time zone or local\n calendar, encoded as a count of seconds and fractions of seconds at\n nanosecond resolution. The count is relative to an epoch at UTC midnight on\n January 1, 1970, in the proleptic Gregorian calendar which extends the\n Gregorian calendar backwards to year one.\n\n All minutes are 60 seconds long. Leap seconds are \"smeared\" so that no leap\n second table is needed for interpretation, using a [24-hour linear\n smear](https://developers.google.com/time/smear).\n\n The range is from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z. By\n restricting to that range, we ensure that we can convert to and from [RFC\n 3339](https://www.ietf.org/rfc/rfc3339.txt) date strings.\n\n # Examples\n\n Example 1: Compute Timestamp from POSIX `time()`.\n\n     Timestamp timestamp;\n     timestamp.set_seconds(time(NULL));\n     timestamp.set_nanos(0);\n\n Example 2: Compute Timestamp from POSIX `gettimeofday()`.\n\n     struct timeval tv;\n     gettimeofday(\u0026tv, NULL);\n\n     Timestamp timestamp;\n     timestamp.set_seconds(tv.tv_sec);\n     timestamp.set_nanos(tv.tv_usec * 1000);\n\n Example 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`.\n\n     FILETIME ft;\n     GetSystemTimeAsFileTime(\u0026ft);\n     UINT64 ticks = (((UINT64)ft.dwHighDateTime) \u003c\u003c 32) | ft.dwLowDateTime;\n\n     // A Windows tick is 100 nanoseconds. Windows epoch 1601-01-01T00:00:00Z\n     // is 11644473600 seconds before Unix epoch 1970-01-01T00:00:00Z.\n     Timestamp timestamp;\n     timestamp.set_seconds((INT64) ((ticks / 10000000) - 11644473600LL));\n     timestamp.set_nanos((INT32) ((ticks % 10000000) * 100));\n\n Example 4: Compute Timestamp from Java `System.currentTimeMillis()`.\n\n     long millis = System.currentTimeMillis();\n\n     Timestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000)\n         .setNanos((int) ((millis % 1000) * 1000000)).build();\n\n Example 5: Compute Timestamp from Java `Instant.now()`.\n\n     Instant now = Instant.now();\n\n     Timestamp timestamp =\n         Timestamp.newBuilder().setSeconds(now.getEpochSecond())\n             .setNanos(now.getNano()).build();\n\n Example 6: Compute Timestamp from current time in Python.\n\n     timestamp = Timestamp()\n     timestamp.GetCurrentTime()\n\n # JSON Mapping\n\n In JSON format, the Timestamp type is encoded as a string in the\n [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) format. That is, the\n format is \"{year}-{month}-{day}T{hour}:{min}:{sec}[.{frac_sec}]Z\"\n where {year} is always expressed using four digits while {month}, {day},\n {hour}, {min}, and {sec} are zero-padded to two digits each. The fractional\n seconds, which can go up to 9 digits (i.e. up to 1 nanosecond resolution),\n are optional. The \"Z\" suffix indicates the timezone (\"UTC\"); the timezone\n is required. A proto3 JSON serializer should always use UTC (as indicated by\n \"Z\") when printing the Timestamp type and a proto3 JSON parser should be\n able to accept both UTC and other timezones (as indicated by an offset).\n\n For example, \"2017-01-15T01:30:15.01Z\" encodes 15.01 seconds past\n 01:30 UTC on January 15, 2017.\n\n In JavaScript, one can convert a Date object to this format using the\n standard\n [toISOString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString)\n method. In Python, a standard `datetime.datetime` object can be converted\n to this format using\n [`strftime`](https://docs.python.org/2/library/time.html#time.strftime) with\n the time format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use\n the Joda Time's [`ISODateTimeFormat.dateTime()`](\n http://joda-time.sourceforge.net/apidocs/org/joda/time/format/ISODateTimeFormat.html#dateTime()\n ) to obtain a formatter capable of generating timestamps in this format.","examples":["2023-01-15T01:30:15.01Z","2024-12-25T12:00:00Z"],"format":"date-time","type":"string"},"redpanda.core.admin.v2.ACLAccessFilter":{"additionalProperties":false,"description":"Filter an ACL based on its access","properties":{"host":{"description":"The host to match.  If not set, will default to match all hosts\n with the specified `operation` and `permission_type`. Note that\n the asterisk `*` is literal and matches hosts that are set to `*`","title":"host","type":"string"},"operation":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.common.v1.ACLOperation"}],"description":"The ACL operation to match","title":"operation"},"permissionType":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.common.v1.ACLPermissionType"}],"description":"The permission type","title":"permission_type"},"principal":{"description":"The name of the principal, if not set will default to match\n all principals with the specified `operation` and `permission_type`","title":"principal","type":"string"}},"title":"ACLAccessFilter","type":"object"},"redpanda.core.admin.v2.ACLFilter":{"additionalProperties":false,"description":"A filter for ACLs","properties":{"accessFilter":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.ACLAccessFilter"}],"description":"The access filter","title":"access_filter"},"resourceFilter":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.ACLResourceFilter"}],"description":"The resource filter","title":"resource_filter"}},"title":"ACLFilter","type":"object"},"redpanda.core.admin.v2.ACLResourceFilter":{"additionalProperties":false,"description":"A filter to match ACLs for resources","properties":{"name":{"description":"Name, if not given will default to match all items in `resource_type`.\n Note that asterisk `*` is literal and matches resource ACLs\n that are named `*`","title":"name","type":"string"},"patternType":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.common.v1.ACLPattern"}],"description":"The pattern to apply to name","title":"pattern_type"},"resourceType":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.common.v1.ACLResource"}],"description":"The ACL resource type to match","title":"resource_type"}},"title":"ACLResourceFilter","type":"object"},"redpanda.core.admin.v2.AddRoleMembersRequest":{"additionalProperties":false,"description":"AddRoleMembersRequest is the request for the AddRoleMembers RPC.","properties":{"members":{"description":"The members to add to the Role. If any members are already part of the\n role, they are ignored.","items":{"$ref":"#/components/schemas/redpanda.core.admin.v2.RoleMember"},"title":"members","type":"array"},"roleName":{"description":"The name of the Role to add members to.","title":"role_name","type":"string"}},"required":["roleName","members"],"title":"AddRoleMembersRequest","type":"object"},"redpanda.core.admin.v2.AddRoleMembersResponse":{"additionalProperties":false,"description":"AddRoleMembersResponse is the response from the AddRoleMembers RPC.","properties":{"role":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.Role"}],"description":"The updated Role.","title":"role"}},"title":"AddRoleMembersResponse","type":"object"},"redpanda.core.admin.v2.AdminServer":{"additionalProperties":false,"description":"AdminServer has information about the admin server within the broker.","properties":{"routes":{"description":"All of the ConnectRPC routes available on this admin server.","items":{"$ref":"#/components/schemas/redpanda.core.admin.v2.RPCRoute"},"title":"routes","type":"array"}},"title":"AdminServer","type":"object"},"redpanda.core.admin.v2.AuthenticationConfiguration":{"additionalProperties":false,"description":"Authentication config.  Supports:\n * SASL/SCRAM\n * SASL/PLAIN","oneOf":[{"properties":{"plainConfiguration":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.PlainConfig"}],"description":"SASL/PLAIN configuration","title":"plain_configuration"}},"required":["plainConfiguration"],"title":"plain_configuration"},{"properties":{"scramConfiguration":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.ScramConfig"}],"description":"SASL/SCRAM configuration","title":"scram_configuration"}},"required":["scramConfiguration"],"title":"scram_configuration"}],"title":"AuthenticationConfiguration","type":"object"},"redpanda.core.admin.v2.AuthenticationInfo":{"additionalProperties":false,"description":"Other Messages","properties":{"mechanism":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.AuthenticationMechanism"}],"description":"Authentication mechanism","title":"mechanism"},"state":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.AuthenticationState"}],"description":"Authentication state","title":"state"},"userPrincipal":{"description":"Authenticated user principal","title":"user_principal","type":"string"}},"title":"AuthenticationInfo","type":"object"},"redpanda.core.admin.v2.AuthenticationMechanism":{"enum":["AUTHENTICATION_MECHANISM_UNSPECIFIED","AUTHENTICATION_MECHANISM_MTLS","AUTHENTICATION_MECHANISM_SASL_SCRAM","AUTHENTICATION_MECHANISM_SASL_OAUTHBEARER","AUTHENTICATION_MECHANISM_SASL_PLAIN","AUTHENTICATION_MECHANISM_SASL_GSSAPI"],"title":"AuthenticationMechanism","type":"string"},"redpanda.core.admin.v2.AuthenticationState":{"enum":["AUTHENTICATION_STATE_UNSPECIFIED","AUTHENTICATION_STATE_UNAUTHENTICATED","AUTHENTICATION_STATE_SUCCESS","AUTHENTICATION_STATE_FAILURE"],"title":"AuthenticationState","type":"string"},"redpanda.core.admin.v2.Broker":{"additionalProperties":false,"description":"The resource for an individual broker within the Kafka Cluster.","properties":{"adminServer":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.AdminServer"}],"description":"The admin server information.\n\n Only populated for `GetBroker` RPCs","nullable":true,"title":"admin_server"},"buildInfo":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.BuildInfo"}],"description":"The build this broker is running.\n\n Only populated for `GetBroker` RPCs","nullable":true,"title":"build_info"},"nodeId":{"description":"This broker's node ID.","format":"int32","title":"node_id","type":"integer"}},"title":"Broker","type":"object"},"redpanda.core.admin.v2.BuildInfo":{"additionalProperties":false,"description":"BuildInfo contains information about the Redpanda build.","properties":{"buildSha":{"description":"The git commit SHA of the build.","title":"build_sha","type":"string"},"version":{"description":"A version string of Redpanda like \"v25.2.1\"","title":"version","type":"string"}},"title":"BuildInfo","type":"object"},"redpanda.core.admin.v2.ConsumerOffsetSyncOptions":{"additionalProperties":false,"description":"Options for syncing consumer offsets","properties":{"effectiveInterval":{"allOf":[{"$ref":"#/components/schemas/google.protobuf.Duration"}],"description":"The effective interval for the task","readOnly":true,"title":"effective_interval"},"groupFilters":{"description":"The filters","items":{"$ref":"#/components/schemas/redpanda.core.admin.v2.NameFilter"},"title":"group_filters","type":"array"},"interval":{"allOf":[{"$ref":"#/components/schemas/google.protobuf.Duration"}],"description":"Sync interval\n If 0 provided, defaults to 30 seconds","title":"interval"},"paused":{"description":"Allows user to pause the consumer offset sync task.  If paused, then\n the task will enter the 'paused' state and not sync consumer offsets from\n the source cluster","title":"paused","type":"boolean"}},"title":"ConsumerOffsetSyncOptions","type":"object"},"redpanda.core.admin.v2.CreateRoleRequest":{"additionalProperties":false,"description":"CreateRoleRequest is the request for the CreateRole RPC.","properties":{"role":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.Role"}],"description":"The Role to create.","title":"role"}},"required":["role"],"title":"CreateRoleRequest","type":"object"},"redpanda.core.admin.v2.CreateRoleResponse":{"additionalProperties":false,"description":"CreateRoleResponse is the response from the CreateRole RPC.","properties":{"role":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.Role"}],"description":"The created Role.","title":"role"}},"title":"CreateRoleResponse","type":"object"},"redpanda.core.admin.v2.CreateScramCredentialRequest":{"additionalProperties":false,"description":"CreateScramCredentialRequest is the request for the CreateScramCredential\n RPC.","properties":{"scramCredential":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.ScramCredential"}],"description":"The SCRAM credential to create.","title":"scram_credential"}},"required":["scramCredential"],"title":"CreateScramCredentialRequest","type":"object"},"redpanda.core.admin.v2.CreateScramCredentialResponse":{"additionalProperties":false,"description":"CreateScramCredentialResponse is the response from the CreateScramCredential\n RPC.","properties":{"scramCredential":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.ScramCredential"}],"description":"The created SCRAM credential.","title":"scram_credential"}},"title":"CreateScramCredentialResponse","type":"object"},"redpanda.core.admin.v2.CreateShadowLinkRequest":{"additionalProperties":false,"description":"Create a new shadow link","properties":{"shadowLink":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.ShadowLink"}],"description":"The shadow link to create","title":"shadow_link"}},"title":"CreateShadowLinkRequest","type":"object"},"redpanda.core.admin.v2.CreateShadowLinkResponse":{"additionalProperties":false,"description":"Response to creating a shadow link","properties":{"shadowLink":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.ShadowLink"}],"description":"The shadow link that was created","title":"shadow_link"}},"title":"CreateShadowLinkResponse","type":"object"},"redpanda.core.admin.v2.DeleteRoleRequest":{"additionalProperties":false,"description":"DeleteRoleRequest is the request for the DeleteRole RPC.","properties":{"deleteAcls":{"description":"Whether to also delete any ACLs associated with this role.","title":"delete_acls","type":"boolean"},"name":{"description":"The name of the Role to delete.","title":"name","type":"string"}},"required":["name"],"title":"DeleteRoleRequest","type":"object"},"redpanda.core.admin.v2.DeleteRoleResponse":{"additionalProperties":false,"description":"DeleteRoleResponse is the response from the DeleteRole RPC.","title":"DeleteRoleResponse","type":"object"},"redpanda.core.admin.v2.DeleteScramCredentialRequest":{"additionalProperties":false,"description":"DeleteScramCredentialRequest is the request for the DeleteScramCredential\n RPC.","properties":{"name":{"description":"The name of the SCRAM credential to delete.","title":"name","type":"string"}},"required":["name"],"title":"DeleteScramCredentialRequest","type":"object"},"redpanda.core.admin.v2.DeleteScramCredentialResponse":{"additionalProperties":false,"description":"DeleteScramCredentialResponse is the response from the DeleteScramCredential\n RPC.","title":"DeleteScramCredentialResponse","type":"object"},"redpanda.core.admin.v2.DeleteShadowLinkRequest":{"additionalProperties":false,"description":"Request to delete a shadow link","properties":{"force":{"description":"By default, DeleteShadowLink will fail if there are any active Shadow\n Topics.  Set this flag to 'true' if you wish to delete the link while\n there are active shadow topics.","title":"force","type":"boolean"},"name":{"description":"The name of the link to delete","title":"name","type":"string"}},"required":["name"],"title":"DeleteShadowLinkRequest","type":"object"},"redpanda.core.admin.v2.DeleteShadowLinkResponse":{"additionalProperties":false,"description":"Response to deleting a shadow link","title":"DeleteShadowLinkResponse","type":"object"},"redpanda.core.admin.v2.FailOverRequest":{"additionalProperties":false,"description":"Request to fail over a shadow link or a single shadow topic","properties":{"name":{"description":"The name of the shadow link to fail over","title":"name","type":"string"},"shadowTopicName":{"description":"(OPTIONAL) The name of the shadow topic to fail over, if not set will fail over\n the entire shadow link","title":"shadow_topic_name","type":"string"}},"required":["name"],"title":"FailOverRequest","type":"object"},"redpanda.core.admin.v2.FailOverResponse":{"additionalProperties":false,"description":"The response to the FailOverRequest","properties":{"shadowLink":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.ShadowLink"}],"description":"The shadow link that was failed over","title":"shadow_link"}},"title":"FailOverResponse","type":"object"},"redpanda.core.admin.v2.FilterType":{"description":"What type of filter this is, include or exclude","enum":["FILTER_TYPE_UNSPECIFIED","FILTER_TYPE_INCLUDE","FILTER_TYPE_EXCLUDE"],"title":"FilterType","type":"string"},"redpanda.core.admin.v2.GetBrokerRequest":{"additionalProperties":false,"description":"GetBrokerRequest returns information about a single broker in the cluster","properties":{"nodeId":{"description":"The node ID for the broker. If unset, the broker handling the RPC\n request returns information about itself.","format":"int32","nullable":true,"title":"node_id","type":"integer"}},"title":"GetBrokerRequest","type":"object"},"redpanda.core.admin.v2.GetBrokerResponse":{"additionalProperties":false,"description":"GetBrokerResponse is the response from the GetBroker RPC.","properties":{"broker":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.Broker"}],"description":"The specified broker and it's information.","title":"broker"}},"title":"GetBrokerResponse","type":"object"},"redpanda.core.admin.v2.GetRoleRequest":{"additionalProperties":false,"description":"GetRoleRequest is the request for the GetRole RPC.","properties":{"name":{"description":"The name of the Role to retrieve.","title":"name","type":"string"}},"required":["name"],"title":"GetRoleRequest","type":"object"},"redpanda.core.admin.v2.GetRoleResponse":{"additionalProperties":false,"description":"GetRoleResponse is the response from the GetRole RPC.","properties":{"role":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.Role"}],"description":"The requested Role.","title":"role"}},"title":"GetRoleResponse","type":"object"},"redpanda.core.admin.v2.GetScramCredentialRequest":{"additionalProperties":false,"description":"GetScramCredentialRequest is the request for the GetScramCredential RPC.","properties":{"name":{"description":"The name of the SCRAM credential to retrieve.","title":"name","type":"string"}},"required":["name"],"title":"GetScramCredentialRequest","type":"object"},"redpanda.core.admin.v2.GetScramCredentialResponse":{"additionalProperties":false,"description":"GetScramCredentialResponse is the response from the GetScramCredential RPC.","properties":{"scramCredential":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.ScramCredential"}],"description":"The requested SCRAM credential.","title":"scram_credential"}},"title":"GetScramCredentialResponse","type":"object"},"redpanda.core.admin.v2.GetShadowLinkRequest":{"additionalProperties":false,"description":"Request to get the information about a shadow link","properties":{"name":{"description":"The name of the shadow link to get","title":"name","type":"string"}},"required":["name"],"title":"GetShadowLinkRequest","type":"object"},"redpanda.core.admin.v2.GetShadowLinkResponse":{"additionalProperties":false,"description":"Response to getting a shadow link","properties":{"shadowLink":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.ShadowLink"}],"description":"The shadow link that was retrieved","title":"shadow_link"}},"title":"GetShadowLinkResponse","type":"object"},"redpanda.core.admin.v2.GetShadowTopicRequest":{"additionalProperties":false,"description":"Request to get a shadow topic","properties":{"name":{"description":"The name of the shadow topic to get","title":"name","type":"string"},"shadowLinkName":{"description":"The name of the shadow link the topic is contained in","title":"shadow_link_name","type":"string"}},"required":["shadowLinkName","name"],"title":"GetShadowTopicRequest","type":"object"},"redpanda.core.admin.v2.GetShadowTopicResponse":{"additionalProperties":false,"description":"Response of to getting a shadow topic","properties":{"shadowTopic":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.ShadowTopic"}],"title":"shadow_topic"}},"title":"GetShadowTopicResponse","type":"object"},"redpanda.core.admin.v2.InFlightRequests":{"additionalProperties":false,"properties":{"hasMoreRequests":{"description":"Whether there are more in-flight requests than those in\n `sampled_in_flight_requests`.","title":"has_more_requests","type":"boolean"},"sampledInFlightRequests":{"description":"A sample (e.g., the 5 latest) of the currently in-flight requests","items":{"$ref":"#/components/schemas/redpanda.core.admin.v2.InFlightRequests.Request"},"title":"sampled_in_flight_requests","type":"array"}},"title":"InFlightRequests","type":"object"},"redpanda.core.admin.v2.InFlightRequests.Request":{"additionalProperties":false,"properties":{"apiKey":{"description":"API key for the request type (e.g., produce/fetch/metadata/etc)\n https://kafka.apache.org/0101/protocol.html#protocol_api_keys","format":"int32","title":"api_key","type":"integer"},"inFlightDuration":{"allOf":[{"$ref":"#/components/schemas/google.protobuf.Duration"}],"description":"How long the request has been in-flight since it was received","title":"in_flight_duration"}},"title":"Request","type":"object"},"redpanda.core.admin.v2.KafkaConnection":{"additionalProperties":false,"description":"Kafka connection details for a broker","properties":{"apiVersions":{"additionalProperties":{"format":"int32","title":"value","type":"integer"},"description":"This map records, for each Kafka API, the highest version number observed\n in requests on this connection. It can be useful for understanding which\n protocol versions a client supports or has negotiated with the broker.\n Only APIs that were actually used (i.e. at least one request was seen)\n are included.\n\n Example:\n   { 0: 11, 1: 13 }\n means that for API key 0 (Produce), version 11 was the highest seen,\n and for API key 1 (Fetch), version 13 was the highest seen.\n\n Reference:\n - https://kafka.apache.org/0101/protocol.html#protocol_api_keys\n - https://kafka.apache.org/0101/protocol.html#protocol_compatibility","title":"api_versions","type":"object"},"authenticationInfo":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.AuthenticationInfo"}],"description":"Information about the authentication state of the connection","title":"authentication_info"},"clientId":{"description":"Client identifier included in every request sent by the Kafka client.\n This is typically a configurable property (client.id) set by the\n application when creating a producer or consumer, and is often used for\n metrics, quotas, and debugging.","title":"client_id","type":"string"},"clientSoftwareName":{"description":"Name of the client library, reported automatically in ApiVersions v3+\n requests. This is set by the client implementation and is not typically\n configurable by applications.","title":"client_software_name","type":"string"},"clientSoftwareVersion":{"description":"Version of the client library, reported automatically in ApiVersions v3+\n requests. Like client_software_name, this is set by the\n client and not usually configurable by applications.","title":"client_software_version","type":"string"},"closeTime":{"allOf":[{"$ref":"#/components/schemas/google.protobuf.Timestamp"}],"description":"When the connection was closed. This field is set only when the\n connection state is \"closed\".","title":"close_time"},"groupId":{"description":"Most recent group ID seen in requests sent over this connection. This\n typically refers to a consumer group, but the Kafka group protocol is\n more general and may also be used by other types of clients that\n coordinate membership and assignments through the broker.","title":"group_id","type":"string"},"groupInstanceId":{"description":"Most recent group instance ID seen in requests sent over this connection.\n This is used when static membership is enabled, allowing a specific\n client instance to retain its group membership across restarts.","title":"group_instance_id","type":"string"},"groupMemberId":{"description":"Most recent group member ID seen in requests sent over this connection.\n This is the unique identifier assigned by the broker to a particular\n member of the group.","title":"group_member_id","type":"string"},"idleDuration":{"allOf":[{"$ref":"#/components/schemas/google.protobuf.Duration"}],"description":"How long the connection has been idle (no in-flight requests)","title":"idle_duration"},"inFlightRequests":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.InFlightRequests"}],"description":"Currently in-flight requests","title":"in_flight_requests"},"listenerName":{"description":"Name of the Kafka listener that accepted this connection.\n A listener is a named broker endpoint (for example, \"internal\",\n \"external\", or \"sasl_tls\"). Each listener defines its network address and\n enforces its protocol and authentication policy.","title":"listener_name","type":"string"},"nodeId":{"description":"Broker node ID","format":"int32","title":"node_id","type":"integer"},"openTime":{"allOf":[{"$ref":"#/components/schemas/google.protobuf.Timestamp"}],"description":"When the broker accepted the connection","title":"open_time"},"recentRequestStatistics":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.RequestStatistics"}],"description":"Statistics for previous last one minute window.","title":"recent_request_statistics"},"shardId":{"description":"Broker shard that handles the connection","title":"shard_id","type":"integer"},"source":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.Source"}],"description":"Remote client address of the TCP connection","title":"source"},"state":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.KafkaConnectionState"}],"description":"Lifecycle state of the connection (open/aborting/closed)","title":"state"},"tlsInfo":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.TLSInfo"}],"description":"Information about the TLS state of the connection (e.g., whether TLS\n encryption is used for this connection)","title":"tls_info"},"totalRequestStatistics":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.RequestStatistics"}],"description":"Aggregated statistics for the entire connection's lifetime.","title":"total_request_statistics"},"transactionalId":{"description":"Most recent transactional ID seen in requests sent over this connection","title":"transactional_id","type":"string"},"uid":{"description":"Kafka connection UUID","title":"uid","type":"string"}},"title":"KafkaConnection","type":"object"},"redpanda.core.admin.v2.KafkaConnection.ApiVersionsEntry":{"additionalProperties":false,"properties":{"key":{"format":"int32","title":"key","type":"integer"},"value":{"format":"int32","title":"value","type":"integer"}},"title":"ApiVersionsEntry","type":"object"},"redpanda.core.admin.v2.KafkaConnectionState":{"description":"Enums","enum":["KAFKA_CONNECTION_STATE_UNSPECIFIED","KAFKA_CONNECTION_STATE_OPEN","KAFKA_CONNECTION_STATE_ABORTING","KAFKA_CONNECTION_STATE_CLOSED"],"title":"KafkaConnectionState","type":"string"},"redpanda.core.admin.v2.ListBrokersRequest":{"additionalProperties":false,"description":"ListBrokersRequest returns information about all the brokers in the cluster","title":"ListBrokersRequest","type":"object"},"redpanda.core.admin.v2.ListBrokersResponse":{"additionalProperties":false,"description":"ListBrokersResponse is the response from the ListBrokers RPC.","properties":{"brokers":{"description":"The brokers in the cluster and their information.","items":{"$ref":"#/components/schemas/redpanda.core.admin.v2.Broker"},"title":"brokers","type":"array"}},"title":"ListBrokersResponse","type":"object"},"redpanda.core.admin.v2.ListCurrentUserRolesRequest":{"additionalProperties":false,"description":"ListCurrentUserRolesRequest is the request for the ListCurrentUserRoles RPC.","title":"ListCurrentUserRolesRequest","type":"object"},"redpanda.core.admin.v2.ListCurrentUserRolesResponse":{"additionalProperties":false,"description":"ListCurrentUserRolesResponse is the response from the ListCurrentUserRoles\n RPC.","properties":{"roles":{"description":"The list of Role names that the current authenticated user is a member\n of.","items":{"readOnly":true,"type":"string"},"readOnly":true,"title":"roles","type":"array"}},"title":"ListCurrentUserRolesResponse","type":"object"},"redpanda.core.admin.v2.ListKafkaConnectionsRequest":{"additionalProperties":false,"description":"ListKafkaConnectionsRequest return information about the broker's Kafka\n connections.","properties":{"filter":{"description":"Filter expression to apply to the connection list.\n Uses a subset of AIP-160 filter syntax supporting:\n - Field comparisons (`=`, `!=`, `\u003c`, `\u003e`, `\u003c=`, `\u003e=`)\n - Logical AND chaining: condition1 AND condition2\n - Nested field access: parent.child = value\n - Escape sequences: field = \"string with \\\"quotes\\\"\"\n - Enum types\n - RFC3339 timestamps and ISO-like duration\n\n Limitations (not supported):\n - Logical OR chaining\n - Parentheses `(` `)` for grouping\n - Map and repeated types\n - HAS (:) operator\n - Negation (-, NOT)\n - Bare literal matching\n\n Example filters:\n - `state = KAFKA_CONNECTION_STATE_OPEN`\n - `idle_duration \u003e 30s AND total_request_statistics.request_count \u003e 100`\n - `authentication_info.user_principal = \"my-producer\"`\n - `recent_request_statistics.produce_bytes \u003e 1000 AND\n client_software_name = \"kgo\"`\n - `open_time \u003e= 2025-09-01T10:22:54Z`\n\n Reference: https://google.aip.dev/160","title":"filter","type":"string"},"orderBy":{"description":"Field-based ordering specification following AIP-132 syntax.\n Supports multiple fields with `asc`/`desc` direction indicators.\n Examples:\n - `idle_duration desc` - longest idle connections first\n - `open_time desc, total_request_statistics.request_count desc` - newest\n connections first, then most active\n - `recent_request_statistics.produce_bytes desc` - connections with\n highest current produce throughput first\n\n Reference: https://google.aip.dev/132#ordering","title":"order_by","type":"string"},"pageSize":{"description":"The maximum number of connections to return. If unspecified or 0, a\n default value may be applied. The server may return fewer connections\n than requested due to memory constraints; the limit is set to allow\n listing all connections for a single broker. Consider filtering by\n node_id to view connections for specific brokers. Note that paging is\n currently not fully supported, and this field only acts as a limit for\n the first page of data returned. Subsequent pages of data cannot be\n requested.","format":"int32","title":"page_size","type":"integer"}},"title":"ListKafkaConnectionsRequest","type":"object"},"redpanda.core.admin.v2.ListKafkaConnectionsResponse":{"additionalProperties":false,"description":"ListKafkaConnectionsResponse is the response from the ListKafkaConnections\n RPC.","properties":{"connections":{"description":"The list of connections matching the request.\n Note that in addition to open connections, some recently-closed\n connections may also be included here. If you don't want to include\n closed connections, set the filter in the request to `state =\n KAFKA_CONNECTION_STATE_OPEN`.","items":{"$ref":"#/components/schemas/redpanda.core.admin.v2.KafkaConnection"},"title":"connections","type":"array"},"totalSize":{"description":"Total number of connections matching the request.\n This may be greater than `len(connections)` if some connections were\n omitted from the response due to the specified (or default) `page_size`.\n Example:\n   request.page_size = 10\n   response.connections = [\u003c10 items\u003e]\n   response.total_size = 13","format":"int64","title":"total_size","type":["integer","string"]}},"title":"ListKafkaConnectionsResponse","type":"object"},"redpanda.core.admin.v2.ListRolesRequest":{"additionalProperties":false,"description":"ListRolesRequest is the request for the ListRoles RPC.","title":"ListRolesRequest","type":"object"},"redpanda.core.admin.v2.ListRolesResponse":{"additionalProperties":false,"description":"ListRolesResponse is the response from the ListRoles RPC.","properties":{"roles":{"description":"The list of Roles.","items":{"$ref":"#/components/schemas/redpanda.core.admin.v2.Role"},"title":"roles","type":"array"}},"title":"ListRolesResponse","type":"object"},"redpanda.core.admin.v2.ListScramCredentialsRequest":{"additionalProperties":false,"description":"ListScramCredentialsRequest is the request for the ListScramCredentials RPC.","title":"ListScramCredentialsRequest","type":"object"},"redpanda.core.admin.v2.ListScramCredentialsResponse":{"additionalProperties":false,"description":"ListScramCredentialsResponse is the response from the ListScramCredentials\n RPC.","properties":{"scramCredentials":{"description":"The list of SCRAM credentials.","items":{"$ref":"#/components/schemas/redpanda.core.admin.v2.ScramCredential"},"title":"scram_credentials","type":"array"}},"title":"ListScramCredentialsResponse","type":"object"},"redpanda.core.admin.v2.ListShadowLinksRequest":{"additionalProperties":false,"description":"Request to list all shadow links","title":"ListShadowLinksRequest","type":"object"},"redpanda.core.admin.v2.ListShadowLinksResponse":{"additionalProperties":false,"description":"All shadow links on the cluster","properties":{"shadowLinks":{"description":"The shadow links","items":{"$ref":"#/components/schemas/redpanda.core.admin.v2.ShadowLink"},"title":"shadow_links","type":"array"}},"title":"ListShadowLinksResponse","type":"object"},"redpanda.core.admin.v2.ListShadowTopicsRequest":{"additionalProperties":false,"description":"Request to list all shadow topics in a shadow link","properties":{"shadowLinkName":{"title":"shadow_link_name","type":"string"}},"required":["shadowLinkName"],"title":"ListShadowTopicsRequest","type":"object"},"redpanda.core.admin.v2.ListShadowTopicsResponse":{"additionalProperties":false,"description":"Response to listing all shadow topics in a shadow link","properties":{"shadowTopics":{"items":{"$ref":"#/components/schemas/redpanda.core.admin.v2.ShadowTopic"},"title":"shadow_topics","type":"array"}},"title":"ListShadowTopicsResponse","type":"object"},"redpanda.core.admin.v2.NameFilter":{"additionalProperties":false,"description":"A filter based on the name of a resource","properties":{"filterType":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.FilterType"}],"description":"Include or exclude","title":"filter_type"},"name":{"description":"The resource name, or \"*\"\n Note if \"*\", must be the _only_ character\n and `pattern_type` must be `PATTERN_TYPE_LITERAL`","title":"name","type":"string"},"patternType":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.PatternType"}],"description":"Literal or prefix","title":"pattern_type"}},"title":"NameFilter","type":"object"},"redpanda.core.admin.v2.PatternType":{"description":"The matching pattern type","enum":["PATTERN_TYPE_UNSPECIFIED","PATTERN_TYPE_LITERAL","PATTERN_TYPE_PREFIX","PATTERN_TYPE_PREFIXED"],"title":"PatternType","type":"string"},"redpanda.core.admin.v2.PlainConfig":{"additionalProperties":false,"description":"PLAIN settings","properties":{"password":{"description":"Password","title":"password","type":"string","writeOnly":true},"passwordSet":{"description":"Indicates that the password has been set","readOnly":true,"title":"password_set","type":"boolean"},"passwordSetAt":{"allOf":[{"$ref":"#/components/schemas/google.protobuf.Timestamp"}],"description":"Timestamp of when the password was last set - only valid if password_set\n is true","readOnly":true,"title":"password_set_at"},"username":{"description":"PLAIN username","title":"username","type":"string"}},"title":"PlainConfig","type":"object"},"redpanda.core.admin.v2.RPCRoute":{"additionalProperties":false,"description":"A route in the Admin API RPC server.","properties":{"httpRoute":{"description":"The HTTP route for this RPC method.\n\n For example `/redpanda.core.admin.v2.AdminService/GetVersion`","title":"http_route","type":"string"},"name":{"description":"The name of the RPC method.\n\n For example `redpanda.core.admin.v2.AdminService.GetVersion`","title":"name","type":"string"}},"title":"RPCRoute","type":"object"},"redpanda.core.admin.v2.RefreshOidcKeysRequest":{"additionalProperties":false,"description":"RefreshOidcKeysRequest is the request for the RefreshOidcKeys RPC.","title":"RefreshOidcKeysRequest","type":"object"},"redpanda.core.admin.v2.RefreshOidcKeysResponse":{"additionalProperties":false,"description":"RefreshOidcKeysResponse is the response from the RefreshOidcKeys RPC.","title":"RefreshOidcKeysResponse","type":"object"},"redpanda.core.admin.v2.RemoveRoleMembersRequest":{"additionalProperties":false,"description":"RemoveRoleMembersRequest is the request for the RemoveRoleMembers RPC.","properties":{"members":{"description":"The members to remove from the Role. If any members are already not part\n of the role, they are ignored.","items":{"$ref":"#/components/schemas/redpanda.core.admin.v2.RoleMember"},"title":"members","type":"array"},"roleName":{"description":"The name of the Role to remove members from.","title":"role_name","type":"string"}},"required":["roleName","members"],"title":"RemoveRoleMembersRequest","type":"object"},"redpanda.core.admin.v2.RemoveRoleMembersResponse":{"additionalProperties":false,"description":"RemoveRoleMembersResponse is the response from the RemoveRoleMembers RPC.","properties":{"role":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.Role"}],"description":"The updated Role.","title":"role"}},"title":"RemoveRoleMembersResponse","type":"object"},"redpanda.core.admin.v2.RequestStatistics":{"additionalProperties":false,"properties":{"fetchBytes":{"description":"Sum of bytes fetched.","format":"int64","title":"fetch_bytes","type":["integer","string"]},"produceBatchCount":{"description":"Number of produced batches.\n Average batch size = produce_bytes / produce_batch_count","format":"int64","title":"produce_batch_count","type":["integer","string"]},"produceBytes":{"description":"Sum of bytes produced.","format":"int64","title":"produce_bytes","type":["integer","string"]},"requestCount":{"description":"Number of requests the client has made.","format":"int64","title":"request_count","type":["integer","string"]}},"title":"RequestStatistics","type":"object"},"redpanda.core.admin.v2.ResolveOidcIdentityRequest":{"additionalProperties":false,"description":"ResolveOidcIdentityRequest is the request for the ResolveOidcIdentity RPC.","title":"ResolveOidcIdentityRequest","type":"object"},"redpanda.core.admin.v2.ResolveOidcIdentityResponse":{"additionalProperties":false,"description":"ResolveOidcIdentityResponse is the response from the ResolveOidcIdentity RPC.","properties":{"expire":{"allOf":[{"$ref":"#/components/schemas/google.protobuf.Timestamp"}],"description":"The timestamp of the token's expiry.","title":"expire"},"groups":{"description":"The groups resolved from the OIDC token.","items":{"type":"string"},"title":"groups","type":"array"},"principal":{"description":"The principal resolved from the OIDC token.","title":"principal","type":"string"}},"title":"ResolveOidcIdentityResponse","type":"object"},"redpanda.core.admin.v2.RevokeOidcSessionsRequest":{"additionalProperties":false,"description":"RevokeOidcSessionsRequest is the request for the RevokeOidcSessions RPC.","title":"RevokeOidcSessionsRequest","type":"object"},"redpanda.core.admin.v2.RevokeOidcSessionsResponse":{"additionalProperties":false,"description":"RevokeOidcSessionsResponse is the response from the RevokeOidcSessions RPC.","title":"RevokeOidcSessionsResponse","type":"object"},"redpanda.core.admin.v2.Role":{"additionalProperties":false,"description":"The Role resource represents a security role with associated members.","properties":{"members":{"description":"The members of the Role.","items":{"$ref":"#/components/schemas/redpanda.core.admin.v2.RoleMember"},"title":"members","type":"array"},"name":{"description":"(IMMUTABLE) The name of the Role.","title":"name","type":"string"}},"required":["name"],"title":"Role","type":"object"},"redpanda.core.admin.v2.RoleGroup":{"additionalProperties":false,"description":"RoleGroup represents a group member of a Role.","properties":{"name":{"description":"The name of the group.","title":"name","type":"string"}},"title":"RoleGroup","type":"object"},"redpanda.core.admin.v2.RoleMember":{"additionalProperties":false,"description":"RoleMember represents a member of a Role.","oneOf":[{"properties":{"group":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.RoleGroup"}],"title":"group"}},"required":["group"],"title":"group"},{"properties":{"user":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.RoleUser"}],"title":"user"}},"required":["user"],"title":"user"}],"title":"RoleMember","type":"object"},"redpanda.core.admin.v2.RoleUser":{"additionalProperties":false,"description":"RoleUser represents a user member of a Role.","properties":{"name":{"description":"The name of the user.","title":"name","type":"string"}},"title":"RoleUser","type":"object"},"redpanda.core.admin.v2.SchemaRegistrySyncOptions":{"additionalProperties":false,"description":"Options for how the Schema Registry is synced.","oneOf":[{"properties":{"shadowSchemaRegistryTopic":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.SchemaRegistrySyncOptions.ShadowSchemaRegistryTopic"}],"title":"shadow_schema_registry_topic"}},"required":["shadowSchemaRegistryTopic"],"title":"shadow_schema_registry_topic"}],"title":"SchemaRegistrySyncOptions","type":"object"},"redpanda.core.admin.v2.SchemaRegistrySyncOptions.ShadowSchemaRegistryTopic":{"additionalProperties":false,"description":"Shadow the entire source cluster's Schema Registry byte-for-byte.\n If set, the Shadow Link will attempt to add the `_schemas`\n topic to the list of Shadow Topics as long as:\n 1. The `_schemas` topic exists on the source cluster\n 2. The `_schemas` topic does not exist on the shadow cluster, or it is\n empty.\n If either of the above conditions are _not_ met, then the `_schemas`\n topic will _not_ be shadowed by this cluster. Unsetting this flag will\n _not_ remove the `_schemas` topic from shadowing if it has already been\n added.  Once made a shadow topic, the\n `_schemas` topic will be replicated byte-for-byte.  To stop shadowing the\n `_schemas` topic, unset this field, then either fail-over the topic or\n delete it.","title":"ShadowSchemaRegistryTopic","type":"object"},"redpanda.core.admin.v2.ScramConfig":{"additionalProperties":false,"description":"SCRAM settings","properties":{"password":{"description":"Password","title":"password","type":"string","writeOnly":true},"passwordSet":{"description":"Indicates that the password has been set","readOnly":true,"title":"password_set","type":"boolean"},"passwordSetAt":{"allOf":[{"$ref":"#/components/schemas/google.protobuf.Timestamp"}],"description":"Timestamp of when the password was last set - only valid if password_set\n is true","readOnly":true,"title":"password_set_at"},"scramMechanism":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.ScramMechanism"}],"description":"The SCRAM mechanism to use","title":"scram_mechanism"},"username":{"description":"SCRAM username","title":"username","type":"string"}},"title":"ScramConfig","type":"object"},"redpanda.core.admin.v2.ScramCredential":{"additionalProperties":false,"description":"The ScramCredential resource used for SCRAM authentication.","properties":{"mechanism":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.common.v1.ScramMechanism"}],"description":"The SCRAM mechanism used for this credential.","title":"mechanism"},"name":{"description":"(IMMUTABLE) The name of the SCRAM credential.","title":"name","type":"string"},"password":{"description":"The password for the SCRAM credential.","title":"password","type":"string","writeOnly":true},"passwordSetAt":{"allOf":[{"$ref":"#/components/schemas/google.protobuf.Timestamp"}],"description":"The timestamp when the password was last set.\n For passwords set before this feature was implemented, this will return\n the Unix epoch (1970-01-01T00:00:00Z).","readOnly":true,"title":"password_set_at"}},"required":["name"],"title":"ScramCredential","type":"object"},"redpanda.core.admin.v2.ScramMechanism":{"description":"Valid SCRAM mechanisms","enum":["SCRAM_MECHANISM_UNSPECIFIED","SCRAM_MECHANISM_SCRAM_SHA_256","SCRAM_MECHANISM_SCRAM_SHA_512"],"title":"ScramMechanism","type":"string"},"redpanda.core.admin.v2.SecuritySettingsSyncOptions":{"additionalProperties":false,"description":"Options for syncing security settings","properties":{"aclFilters":{"description":"ACL filters","items":{"$ref":"#/components/schemas/redpanda.core.admin.v2.ACLFilter"},"title":"acl_filters","type":"array"},"effectiveInterval":{"allOf":[{"$ref":"#/components/schemas/google.protobuf.Duration"}],"description":"The effective interval for the task","readOnly":true,"title":"effective_interval"},"interval":{"allOf":[{"$ref":"#/components/schemas/google.protobuf.Duration"}],"description":"Sync interval\n If 0 provided, defaults to 30 seconds","title":"interval"},"paused":{"description":"Allows user to pause the security settings sync task.  If paused,\n then the task will enter the 'paused' state and will not sync security\n settings from the source cluster","title":"paused","type":"boolean"}},"title":"SecuritySettingsSyncOptions","type":"object"},"redpanda.core.admin.v2.ShadowLink":{"additionalProperties":false,"description":"A ShadowLink resource","properties":{"configurations":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.ShadowLinkConfigurations"}],"description":"Shadow link configuration","title":"configurations"},"name":{"description":"The name of the shadow link","title":"name","type":"string"},"status":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.ShadowLinkStatus"}],"description":"Status of the shadow link","readOnly":true,"title":"status"},"uid":{"description":"The UUID of the shadow link","readOnly":true,"title":"uid","type":"string"}},"required":["name"],"title":"ShadowLink","type":"object"},"redpanda.core.admin.v2.ShadowLinkClientOptions":{"additionalProperties":false,"description":"Options for the client link","properties":{"authenticationConfiguration":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.AuthenticationConfiguration"}],"description":"Authentication settings","nullable":true,"title":"authentication_configuration"},"bootstrapServers":{"description":"The bootstrap servers to use","items":{"type":"string"},"title":"bootstrap_servers","type":"array"},"clientId":{"description":"The Client ID for the Kafka RPC requests setn by this cluster to the\n source cluster","readOnly":true,"title":"client_id","type":"string"},"connectionTimeoutMs":{"description":"Connection timeout.\n If 0 is provided, defaults to 1 second","format":"int32","title":"connection_timeout_ms","type":"integer"},"effectiveConnectionTimeoutMs":{"description":"The effective connection timeout in milliseconds","format":"int32","readOnly":true,"title":"effective_connection_timeout_ms","type":"integer"},"effectiveFetchMaxBytes":{"description":"The effective fetch max bytes","format":"int32","readOnly":true,"title":"effective_fetch_max_bytes","type":"integer"},"effectiveFetchMinBytes":{"description":"The effective fetch min bytes","format":"int32","readOnly":true,"title":"effective_fetch_min_bytes","type":"integer"},"effectiveFetchPartitionMaxBytes":{"description":"The effective fetch partition max bytes","format":"int32","readOnly":true,"title":"effective_fetch_partition_max_bytes","type":"integer"},"effectiveFetchWaitMaxMs":{"description":"The effective fetch wait max in milliseconds","format":"int32","readOnly":true,"title":"effective_fetch_wait_max_ms","type":"integer"},"effectiveMetadataMaxAgeMs":{"description":"The effective metadata max age in milliseconds","format":"int32","readOnly":true,"title":"effective_metadata_max_age_ms","type":"integer"},"effectiveRetryBackoffMs":{"description":"The effective retry backoff in milliseconds","format":"int32","readOnly":true,"title":"effective_retry_backoff_ms","type":"integer"},"fetchMaxBytes":{"description":"Fetch max bytes.\n If 0 is provided, defaults to 20 MiB","format":"int32","title":"fetch_max_bytes","type":"integer"},"fetchMinBytes":{"description":"Fetch min bytes.\n If 0 is provided, defaults to 5 MiB","format":"int32","title":"fetch_min_bytes","type":"integer"},"fetchPartitionMaxBytes":{"description":"Fetch partition max bytes.\n If 0 is provided, defaults to 5 MiB","format":"int32","title":"fetch_partition_max_bytes","type":"integer"},"fetchWaitMaxMs":{"description":"Fetch request timeout.\n If 0 is provided, defaults to 500ms","format":"int32","title":"fetch_wait_max_ms","type":"integer"},"metadataMaxAgeMs":{"description":"Max metadata age.\n If 0 is provided, defaults to 10 seconds","format":"int32","title":"metadata_max_age_ms","type":"integer"},"retryBackoffMs":{"description":"Retry base backoff.\n If 0 is provided, defaults to 100ms","format":"int32","title":"retry_backoff_ms","type":"integer"},"sourceClusterId":{"description":"If provided, this is the expected ID of the source cluster.  If it does\n not match then the connection will be rejected.  If provided, this value\n must match the `ClusterId` field returned in the Kafka Metadata response\n message","title":"source_cluster_id","type":"string"},"tlsSettings":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.common.v1.TLSSettings"}],"description":"TLS settings","nullable":true,"title":"tls_settings"}},"required":["bootstrapServers"],"title":"ShadowLinkClientOptions","type":"object"},"redpanda.core.admin.v2.ShadowLinkConfigurations":{"additionalProperties":false,"description":"ShadowLink options","properties":{"clientOptions":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.ShadowLinkClientOptions"}],"description":"Configuration for the internal kafka client","title":"client_options"},"consumerOffsetSyncOptions":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.ConsumerOffsetSyncOptions"}],"description":"Consumer offset sync options","title":"consumer_offset_sync_options"},"schemaRegistrySyncOptions":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.SchemaRegistrySyncOptions"}],"description":"Schema Registry sync options","title":"schema_registry_sync_options"},"securitySyncOptions":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.SecuritySettingsSyncOptions"}],"description":"Security settings sync options","title":"security_sync_options"},"topicMetadataSyncOptions":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.TopicMetadataSyncOptions"}],"description":"Topic metadata sync options","title":"topic_metadata_sync_options"}},"title":"ShadowLinkConfigurations","type":"object"},"redpanda.core.admin.v2.ShadowLinkState":{"description":"State of the shadow link","enum":["SHADOW_LINK_STATE_UNSPECIFIED","SHADOW_LINK_STATE_ACTIVE","SHADOW_LINK_STATE_PAUSED"],"title":"ShadowLinkState","type":"string"},"redpanda.core.admin.v2.ShadowLinkStatus":{"additionalProperties":false,"description":"Status of the shadow link","properties":{"shadowTopics":{"description":"Status of shadow topics","items":{"$ref":"#/components/schemas/redpanda.core.admin.v2.ShadowTopic"},"title":"shadow_topics","type":"array"},"state":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.ShadowLinkState"}],"title":"state"},"syncedShadowTopicProperties":{"description":"List of topic properties that are being synced","items":{"type":"string"},"title":"synced_shadow_topic_properties","type":"array"},"taskStatuses":{"description":"Statuses of the running tasks","items":{"$ref":"#/components/schemas/redpanda.core.admin.v2.ShadowLinkTaskStatus"},"title":"task_statuses","type":"array"}},"title":"ShadowLinkStatus","type":"object"},"redpanda.core.admin.v2.ShadowLinkTaskStatus":{"additionalProperties":false,"description":"Status of a task","properties":{"brokerId":{"description":"The broker the task is running on","format":"int32","title":"broker_id","type":"integer"},"name":{"description":"Name of the task","title":"name","type":"string"},"reason":{"description":"Reason for task being in state","title":"reason","type":"string"},"shard":{"description":"The shard the task is running on","format":"int32","title":"shard","type":"integer"},"state":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.TaskState"}],"description":"State of the task","title":"state"}},"title":"ShadowLinkTaskStatus","type":"object"},"redpanda.core.admin.v2.ShadowTopic":{"additionalProperties":false,"description":"A ShadowTopic resource contained by the ShadowLink","properties":{"name":{"description":"Name of the shadow topic","readOnly":true,"title":"name","type":"string"},"sourceTopicId":{"description":"The topic ID of the source topic","readOnly":true,"title":"source_topic_id","type":"string"},"sourceTopicName":{"description":"The name of the source topic","title":"source_topic_name","type":"string"},"status":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.ShadowTopicStatus"}],"description":"The status of the shadow topic","readOnly":true,"title":"status"},"topicId":{"description":"The topic ID of the shadow topic","readOnly":true,"title":"topic_id","type":"string"}},"title":"ShadowTopic","type":"object"},"redpanda.core.admin.v2.ShadowTopicState":{"description":"State of a shadow topic","enum":["SHADOW_TOPIC_STATE_UNSPECIFIED","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":"ShadowTopicState","type":"string"},"redpanda.core.admin.v2.ShadowTopicStatus":{"additionalProperties":false,"description":"Status of a ShadowTopic","properties":{"partitionInformation":{"description":"List of partition information for the shadow topic","items":{"$ref":"#/components/schemas/redpanda.core.admin.v2.TopicPartitionInformation"},"title":"partition_information","type":"array"},"state":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.ShadowTopicState"}],"description":"State of the shadow topic","title":"state"}},"title":"ShadowTopicStatus","type":"object"},"redpanda.core.admin.v2.Source":{"additionalProperties":false,"properties":{"ipAddress":{"title":"ip_address","type":"string"},"port":{"title":"port","type":"integer"}},"title":"Source","type":"object"},"redpanda.core.admin.v2.TLSInfo":{"additionalProperties":false,"properties":{"enabled":{"description":"Whether TLS is in use","title":"enabled","type":"boolean"}},"title":"TLSInfo","type":"object"},"redpanda.core.admin.v2.TaskState":{"description":"Task states","enum":["TASK_STATE_UNSPECIFIED","TASK_STATE_ACTIVE","TASK_STATE_PAUSED","TASK_STATE_LINK_UNAVAILABLE","TASK_STATE_NOT_RUNNING","TASK_STATE_FAULTED"],"title":"TaskState","type":"string"},"redpanda.core.admin.v2.TopicMetadataSyncOptions":{"additionalProperties":false,"allOf":[{"properties":{"autoCreateShadowTopicFilters":{"description":"List of filters that indicate which topics should be automatically\n created as shadow topics on the shadow cluster.  This only controls\n automatic creation of shadow topics and does not effect the state of the\n mirror topic once it is created.\n Literal filters for __consumer_offsets, _redpanda.audit_log and _schemas\n will be rejected as well as prefix filters to match topics prefixed with\n _redpanda or __redpanda.\n Wildcard `*` is permitted only for literal filters and will _not_ match\n any topics that start with _redpanda or __redpanda.  If users wish to\n shadow topics that start with _redpanda or __redpanda, they should\n provide a literal filter for those topics.","items":{"$ref":"#/components/schemas/redpanda.core.admin.v2.NameFilter"},"title":"auto_create_shadow_topic_filters","type":"array"},"effectiveInterval":{"allOf":[{"$ref":"#/components/schemas/google.protobuf.Duration"}],"description":"The effective interval for the task","readOnly":true,"title":"effective_interval"},"excludeDefault":{"description":"If false, then the following topic properties will be synced by default:\n - `compression.type`\n - `retention.bytes`\n - `retention.ms`\n - `delete.retention.ms`\n - Replication Factor\n - `min.compaction.lag.ms`\n - `max.compaction.lag.ms`\n\n If this is true, then only the properties listed in\n `synced_shadow_topic_properties` will be synced.","title":"exclude_default","type":"boolean"},"interval":{"allOf":[{"$ref":"#/components/schemas/google.protobuf.Duration"}],"description":"How often to sync metadata\n If 0 provided, defaults to 30 seconds","title":"interval"},"paused":{"description":"Allows user to pause the topic sync task.  If paused, then\n the task will enter the 'paused' state and not sync topics or their\n properties from the source cluster","title":"paused","type":"boolean"},"syncedShadowTopicProperties":{"description":"List of topic properties that should be synced from the source topic.\n The following properties will always be replicated\n - Partition count\n - `max.message.bytes`\n - `cleanup.policy`\n - `timestamp.type`\n\n The following properties are not allowed to be replicated and adding them\n to this list will result in an error:\n - `redpanda.remote.readreplica`\n - `redpanda.remote.recovery`\n - `redpanda.remote.allowgaps`\n - `redpanda.virtual.cluster.id`\n - `redpanda.leaders.preference`\n - `redpanda.storage.mode`\n\n This list is a list of properties in addition to the default properties\n that will be synced.  See `exclude_default`.","items":{"type":"string"},"title":"synced_shadow_topic_properties","type":"array"}}},{"oneOf":[{"properties":{"startAtEarliest":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.TopicMetadataSyncOptions.EarliestOffset"}],"description":"Enables data replication from the earliest offset\n on the source topic/partition.","title":"start_at_earliest"}},"required":["startAtEarliest"],"title":"start_at_earliest"},{"properties":{"startAtLatest":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.TopicMetadataSyncOptions.LatestOffset"}],"description":"Enables data replication from the latest offset\n on the source topic/partition.","title":"start_at_latest"}},"required":["startAtLatest"],"title":"start_at_latest"},{"properties":{"startAtTimestamp":{"allOf":[{"$ref":"#/components/schemas/google.protobuf.Timestamp"}],"description":"Enables data replication from the first offset on the\n source topic/partition where the record's timestamp is\n at or after the specified timestamp.","title":"start_at_timestamp"}},"required":["startAtTimestamp"],"title":"start_at_timestamp"}]}],"description":"Options for syncing topic metadata","title":"TopicMetadataSyncOptions","type":"object"},"redpanda.core.admin.v2.TopicMetadataSyncOptions.EarliestOffset":{"additionalProperties":false,"description":"Start at the earliest offset in the partition.","title":"EarliestOffset","type":"object"},"redpanda.core.admin.v2.TopicMetadataSyncOptions.LatestOffset":{"additionalProperties":false,"description":"Start at the latest offset in the partition.","title":"LatestOffset","type":"object"},"redpanda.core.admin.v2.TopicPartitionInformation":{"additionalProperties":false,"description":"Topic partition information","properties":{"highWatermark":{"description":"Shadowed partition's HWM","format":"int64","title":"high_watermark","type":["integer","string"]},"partitionId":{"description":"Partition ID","format":"int64","title":"partition_id","type":["integer","string"]},"sourceHighWatermark":{"description":"Source partition's HWM","format":"int64","title":"source_high_watermark","type":["integer","string"]},"sourceLastStableOffset":{"description":"Source partition's LSO","format":"int64","title":"source_last_stable_offset","type":["integer","string"]},"sourceLastUpdatedTimestamp":{"allOf":[{"$ref":"#/components/schemas/google.protobuf.Timestamp"}],"description":"Timestamp of the last time the source partition information was updated","title":"source_last_updated_timestamp"}},"title":"TopicPartitionInformation","type":"object"},"redpanda.core.admin.v2.UpdateScramCredentialRequest":{"additionalProperties":false,"description":"UpdateScramCredentialRequest is the request for the UpdateScramCredential\n RPC.","properties":{"scramCredential":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.ScramCredential"}],"description":"The SCRAM credential to update.","title":"scram_credential"},"updateMask":{"allOf":[{"$ref":"#/components/schemas/google.protobuf.FieldMask"}],"description":"The list of fields to update\n See [AIP-134](https://google.aip.dev/134) for how to use `field_mask`","title":"update_mask"}},"required":["scramCredential"],"title":"UpdateScramCredentialRequest","type":"object"},"redpanda.core.admin.v2.UpdateScramCredentialResponse":{"additionalProperties":false,"description":"UpdateScramCredentialResponse is the response from the UpdateScramCredential\n RPC.","properties":{"scramCredential":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.ScramCredential"}],"description":"The updated SCRAM credential.","title":"scram_credential"}},"title":"UpdateScramCredentialResponse","type":"object"},"redpanda.core.admin.v2.UpdateShadowLinkRequest":{"additionalProperties":false,"description":"Updates a shadow link","properties":{"shadowLink":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.ShadowLink"}],"description":"The shadow link to update","title":"shadow_link"},"updateMask":{"allOf":[{"$ref":"#/components/schemas/google.protobuf.FieldMask"}],"description":"The list of fields to update\n See [AIP-134](https://google.aip.dev/134) for how to use `field_mask`","title":"update_mask"}},"title":"UpdateShadowLinkRequest","type":"object"},"redpanda.core.admin.v2.UpdateShadowLinkResponse":{"additionalProperties":false,"description":"Response to the update shadow link request","properties":{"shadowLink":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.admin.v2.ShadowLink"}],"description":"The shadow link that was updated","title":"shadow_link"}},"title":"UpdateShadowLinkResponse","type":"object"},"redpanda.core.common.v1.ACLOperation":{"description":"The ACL operation to match","enum":["ACL_OPERATION_UNSPECIFIED","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":"ACLOperation","type":"string"},"redpanda.core.common.v1.ACLPattern":{"description":"The ACL pattern type","enum":["ACL_PATTERN_UNSPECIFIED","ACL_PATTERN_ANY","ACL_PATTERN_LITERAL","ACL_PATTERN_PREFIXED","ACL_PATTERN_PREFIX","ACL_PATTERN_MATCH"],"title":"ACLPattern","type":"string"},"redpanda.core.common.v1.ACLPermissionType":{"description":"ACL permission types","enum":["ACL_PERMISSION_TYPE_UNSPECIFIED","ACL_PERMISSION_TYPE_ANY","ACL_PERMISSION_TYPE_ALLOW","ACL_PERMISSION_TYPE_DENY"],"title":"ACLPermissionType","type":"string"},"redpanda.core.common.v1.ACLResource":{"description":"The ACL resource types","enum":["ACL_RESOURCE_UNSPECIFIED","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":"ACLResource","type":"string"},"redpanda.core.common.v1.ScramMechanism":{"description":"Valid SCRAM mechanisms","enum":["SCRAM_MECHANISM_UNSPECIFIED","SCRAM_MECHANISM_SCRAM_SHA_256","SCRAM_MECHANISM_SCRAM_SHA_512"],"title":"ScramMechanism","type":"string"},"redpanda.core.common.v1.TLSFileSettings":{"additionalProperties":false,"description":"TLS file settings","properties":{"caPath":{"description":"Path to the CA","title":"ca_path","type":"string"},"certPath":{"description":"Path to the cert","title":"cert_path","type":"string"},"keyPath":{"description":"Key and Cert are optional but if one is provided, then both must be\n Path to the key","title":"key_path","type":"string"}},"title":"TLSFileSettings","type":"object"},"redpanda.core.common.v1.TLSPEMSettings":{"additionalProperties":false,"description":"Used when providing the TLS information in PEM format","properties":{"ca":{"description":"The CA","title":"ca","type":"string"},"cert":{"description":"The cert","title":"cert","type":"string"},"key":{"description":"Key and Cert are optional but if one is provided, then both must be\n The key","title":"key","type":"string","writeOnly":true},"keyFingerprint":{"description":"The SHA-256 of the key, in base64 format","readOnly":true,"title":"key_fingerprint","type":"string"}},"title":"TLSPEMSettings","type":"object"},"redpanda.core.common.v1.TLSSettings":{"additionalProperties":false,"allOf":[{"properties":{"doNotSetSniHostname":{"description":"If true, the SNI hostname will not be provided when TLS is used","title":"do_not_set_sni_hostname","type":"boolean"},"enabled":{"description":"Whether or not TLS is enabled","title":"enabled","type":"boolean"}}},{"oneOf":[{"properties":{"tlsFileSettings":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.common.v1.TLSFileSettings"}],"description":"Certificates and keys are provided as files","title":"tls_file_settings"}},"required":["tlsFileSettings"],"title":"tls_file_settings"},{"properties":{"tlsPemSettings":{"allOf":[{"$ref":"#/components/schemas/redpanda.core.common.v1.TLSPEMSettings"}],"description":"Certificates and keys are provided in PEM format","title":"tls_pem_settings"}},"required":["tlsPemSettings"],"title":"tls_pem_settings"}]}],"description":"TLS settings","title":"TLSSettings","type":"object"}}},"info":{"description":"Admin API ConnectRPC endpoints available with Redpanda v25.3 and later. Use the Admin API to manage and administer Redpanda clusters. To view legacy (RESTful) endpoints currently available on all supported versions of Redpanda, select \"v1\" from the version selector on this page.\n\nIf authentication is enabled for the API, you must have superuser privileges to access all endpoints.\n\nSee also:\n\n- [Manage Redpanda Using the Admin API](https://docs.redpanda.com/25.3/manage/use-admin-api)\n- [Configure Authentication](https://docs.redpanda.com/current/manage/security/authentication/)\n\n---\n","title":"Redpanda Admin API","version":"v2.0.0","x-admin-api-major":"v2.0.0","x-generated-at":"2026-03-19T03:09:31.752Z","x-generator":"redpanda-docs-openapi-bundler","x-redpanda-core-version":"v26.1.1-rc2","x-feedbackLink":{"label":"Share feedback","url":"https://github.com/redpanda-data/docs/issues/new?template=01_doc_request.yml"}},"openapi":"3.1.0","paths":{"/redpanda.core.admin.v2.BrokerService/GetBroker":{"post":{"description":"Returns information about a single broker in the cluster.","operationId":"redpanda.core.admin.v2.BrokerService.GetBroker","parameters":[{"in":"header","name":"Connect-Protocol-Version","required":true,"schema":{"$ref":"#/components/schemas/connect-protocol-version"}},{"in":"header","name":"Connect-Timeout-Ms","schema":{"$ref":"#/components/schemas/connect-timeout-header"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.GetBrokerRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.GetBrokerResponse"}}},"description":"Success"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/connect.error"}}},"description":"Error"}},"summary":"GetBroker","tags":["BrokerService"],"x-state":"Added in v25.3"}},"/redpanda.core.admin.v2.BrokerService/ListBrokers":{"post":{"description":"Returns information about all brokers in the cluster.","operationId":"redpanda.core.admin.v2.BrokerService.ListBrokers","parameters":[{"in":"header","name":"Connect-Protocol-Version","required":true,"schema":{"$ref":"#/components/schemas/connect-protocol-version"}},{"in":"header","name":"Connect-Timeout-Ms","schema":{"$ref":"#/components/schemas/connect-timeout-header"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.ListBrokersRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.ListBrokersResponse"}}},"description":"Success"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/connect.error"}}},"description":"Error"}},"summary":"ListBrokers","tags":["BrokerService"],"x-state":"Added in v25.3"}},"/redpanda.core.admin.v2.ClusterService/ListKafkaConnections":{"post":{"description":"Returns information about the cluster's Kafka connections, collected\n and ordered across all brokers.","operationId":"redpanda.core.admin.v2.ClusterService.ListKafkaConnections","parameters":[{"in":"header","name":"Connect-Protocol-Version","required":true,"schema":{"$ref":"#/components/schemas/connect-protocol-version"}},{"in":"header","name":"Connect-Timeout-Ms","schema":{"$ref":"#/components/schemas/connect-timeout-header"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.ListKafkaConnectionsRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.ListKafkaConnectionsResponse"}}},"description":"Success"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/connect.error"}}},"description":"Error"}},"summary":"ListKafkaConnections","tags":["ClusterService"],"x-state":"Added in v25.3"}},"/redpanda.core.admin.v2.SecurityService/AddRoleMembers":{"post":{"description":"Add members to a Role. If any members are already part of the role, they\n are ignored. Returns the updated Role resource.","operationId":"redpanda.core.admin.v2.SecurityService.AddRoleMembers","parameters":[{"in":"header","name":"Connect-Protocol-Version","required":true,"schema":{"$ref":"#/components/schemas/connect-protocol-version"}},{"in":"header","name":"Connect-Timeout-Ms","schema":{"$ref":"#/components/schemas/connect-timeout-header"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.AddRoleMembersRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.AddRoleMembersResponse"}}},"description":"Success"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/connect.error"}}},"description":"Error"}},"summary":"AddRoleMembers","tags":["SecurityService"],"x-state":"Added in v26.1"}},"/redpanda.core.admin.v2.SecurityService/CreateRole":{"post":{"description":"Create a new Role resource.","operationId":"redpanda.core.admin.v2.SecurityService.CreateRole","parameters":[{"in":"header","name":"Connect-Protocol-Version","required":true,"schema":{"$ref":"#/components/schemas/connect-protocol-version"}},{"in":"header","name":"Connect-Timeout-Ms","schema":{"$ref":"#/components/schemas/connect-timeout-header"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.CreateRoleRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.CreateRoleResponse"}}},"description":"Success"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/connect.error"}}},"description":"Error"}},"summary":"CreateRole","tags":["SecurityService"],"x-state":"Added in v26.1"}},"/redpanda.core.admin.v2.SecurityService/CreateScramCredential":{"post":{"description":"Create a SCRAM credential.","operationId":"redpanda.core.admin.v2.SecurityService.CreateScramCredential","parameters":[{"in":"header","name":"Connect-Protocol-Version","required":true,"schema":{"$ref":"#/components/schemas/connect-protocol-version"}},{"in":"header","name":"Connect-Timeout-Ms","schema":{"$ref":"#/components/schemas/connect-timeout-header"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.CreateScramCredentialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.CreateScramCredentialResponse"}}},"description":"Success"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/connect.error"}}},"description":"Error"}},"summary":"CreateScramCredential","tags":["SecurityService"],"x-state":"Added in v26.1"}},"/redpanda.core.admin.v2.SecurityService/DeleteRole":{"post":{"description":"Delete a Role resource by name.","operationId":"redpanda.core.admin.v2.SecurityService.DeleteRole","parameters":[{"in":"header","name":"Connect-Protocol-Version","required":true,"schema":{"$ref":"#/components/schemas/connect-protocol-version"}},{"in":"header","name":"Connect-Timeout-Ms","schema":{"$ref":"#/components/schemas/connect-timeout-header"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.DeleteRoleRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.DeleteRoleResponse"}}},"description":"Success"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/connect.error"}}},"description":"Error"}},"summary":"DeleteRole","tags":["SecurityService"],"x-state":"Added in v26.1"}},"/redpanda.core.admin.v2.SecurityService/DeleteScramCredential":{"post":{"description":"Delete a SCRAM credential.","operationId":"redpanda.core.admin.v2.SecurityService.DeleteScramCredential","parameters":[{"in":"header","name":"Connect-Protocol-Version","required":true,"schema":{"$ref":"#/components/schemas/connect-protocol-version"}},{"in":"header","name":"Connect-Timeout-Ms","schema":{"$ref":"#/components/schemas/connect-timeout-header"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.DeleteScramCredentialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.DeleteScramCredentialResponse"}}},"description":"Success"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/connect.error"}}},"description":"Error"}},"summary":"DeleteScramCredential","tags":["SecurityService"],"x-state":"Added in v26.1"}},"/redpanda.core.admin.v2.SecurityService/GetRole":{"post":{"description":"Retrieve a Role resource by name.","operationId":"redpanda.core.admin.v2.SecurityService.GetRole","parameters":[{"in":"header","name":"Connect-Protocol-Version","required":true,"schema":{"$ref":"#/components/schemas/connect-protocol-version"}},{"in":"header","name":"Connect-Timeout-Ms","schema":{"$ref":"#/components/schemas/connect-timeout-header"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.GetRoleRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.GetRoleResponse"}}},"description":"Success"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/connect.error"}}},"description":"Error"}},"summary":"GetRole","tags":["SecurityService"],"x-state":"Added in v26.1"}},"/redpanda.core.admin.v2.SecurityService/GetScramCredential":{"post":{"description":"Retrieve a SCRAM credential.","operationId":"redpanda.core.admin.v2.SecurityService.GetScramCredential","parameters":[{"in":"header","name":"Connect-Protocol-Version","required":true,"schema":{"$ref":"#/components/schemas/connect-protocol-version"}},{"in":"header","name":"Connect-Timeout-Ms","schema":{"$ref":"#/components/schemas/connect-timeout-header"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.GetScramCredentialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.GetScramCredentialResponse"}}},"description":"Success"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/connect.error"}}},"description":"Error"}},"summary":"GetScramCredential","tags":["SecurityService"],"x-state":"Added in v26.1"}},"/redpanda.core.admin.v2.SecurityService/ListCurrentUserRoles":{"post":{"description":"Gets a list of Role names that the current authenticated user is a member\n of on the current Redpanda broker.  This is useful for clients to\n determine their own permissions.","operationId":"redpanda.core.admin.v2.SecurityService.ListCurrentUserRoles","parameters":[{"in":"header","name":"Connect-Protocol-Version","required":true,"schema":{"$ref":"#/components/schemas/connect-protocol-version"}},{"in":"header","name":"Connect-Timeout-Ms","schema":{"$ref":"#/components/schemas/connect-timeout-header"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.ListCurrentUserRolesRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.ListCurrentUserRolesResponse"}}},"description":"Success"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/connect.error"}}},"description":"Error"}},"summary":"ListCurrentUserRoles","tags":["SecurityService"],"x-state":"Added in v26.1"}},"/redpanda.core.admin.v2.SecurityService/ListRoles":{"post":{"description":"List all Role resources.","operationId":"redpanda.core.admin.v2.SecurityService.ListRoles","parameters":[{"in":"header","name":"Connect-Protocol-Version","required":true,"schema":{"$ref":"#/components/schemas/connect-protocol-version"}},{"in":"header","name":"Connect-Timeout-Ms","schema":{"$ref":"#/components/schemas/connect-timeout-header"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.ListRolesRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.ListRolesResponse"}}},"description":"Success"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/connect.error"}}},"description":"Error"}},"summary":"ListRoles","tags":["SecurityService"],"x-state":"Added in v26.1"}},"/redpanda.core.admin.v2.SecurityService/ListScramCredentials":{"post":{"description":"List all SCRAM credentials.","operationId":"redpanda.core.admin.v2.SecurityService.ListScramCredentials","parameters":[{"in":"header","name":"Connect-Protocol-Version","required":true,"schema":{"$ref":"#/components/schemas/connect-protocol-version"}},{"in":"header","name":"Connect-Timeout-Ms","schema":{"$ref":"#/components/schemas/connect-timeout-header"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.ListScramCredentialsRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.ListScramCredentialsResponse"}}},"description":"Success"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/connect.error"}}},"description":"Error"}},"summary":"ListScramCredentials","tags":["SecurityService"],"x-state":"Added in v26.1"}},"/redpanda.core.admin.v2.SecurityService/RefreshOidcKeys":{"post":{"description":"Refresh cached OpenID Connect (OIDC) signing keys across the cluster so\n newly issued or rotated keys are recognized.","operationId":"redpanda.core.admin.v2.SecurityService.RefreshOidcKeys","parameters":[{"in":"header","name":"Connect-Protocol-Version","required":true,"schema":{"$ref":"#/components/schemas/connect-protocol-version"}},{"in":"header","name":"Connect-Timeout-Ms","schema":{"$ref":"#/components/schemas/connect-timeout-header"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.RefreshOidcKeysRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.RefreshOidcKeysResponse"}}},"description":"Success"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/connect.error"}}},"description":"Error"}},"summary":"RefreshOidcKeys","tags":["SecurityService"],"x-state":"Added in v26.1"}},"/redpanda.core.admin.v2.SecurityService/RemoveRoleMembers":{"post":{"description":"Remove members from a Role. If any members are not part of the role, they\n are ignored. Returns the updated Role resource.","operationId":"redpanda.core.admin.v2.SecurityService.RemoveRoleMembers","parameters":[{"in":"header","name":"Connect-Protocol-Version","required":true,"schema":{"$ref":"#/components/schemas/connect-protocol-version"}},{"in":"header","name":"Connect-Timeout-Ms","schema":{"$ref":"#/components/schemas/connect-timeout-header"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.RemoveRoleMembersRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.RemoveRoleMembersResponse"}}},"description":"Success"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/connect.error"}}},"description":"Error"}},"summary":"RemoveRoleMembers","tags":["SecurityService"],"x-state":"Added in v26.1"}},"/redpanda.core.admin.v2.SecurityService/ResolveOidcIdentity":{"post":{"description":"Validate an `Authorization` header `Bearer` token and return the mapped\n principal and token expiry time.","operationId":"redpanda.core.admin.v2.SecurityService.ResolveOidcIdentity","parameters":[{"in":"header","name":"Connect-Protocol-Version","required":true,"schema":{"$ref":"#/components/schemas/connect-protocol-version"}},{"in":"header","name":"Connect-Timeout-Ms","schema":{"$ref":"#/components/schemas/connect-timeout-header"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.ResolveOidcIdentityRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.ResolveOidcIdentityResponse"}}},"description":"Success"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/connect.error"}}},"description":"Error"}},"summary":"ResolveOidcIdentity","tags":["SecurityService"],"x-state":"Added in v26.1"}},"/redpanda.core.admin.v2.SecurityService/RevokeOidcSessions":{"post":{"description":"Refresh cached OpenID Connect (OIDC) signing keys and revoke all active\n OIDC sessions across the cluster. Clients authenticated with\n `OAUTHBEARER` must re-authenticate.","operationId":"redpanda.core.admin.v2.SecurityService.RevokeOidcSessions","parameters":[{"in":"header","name":"Connect-Protocol-Version","required":true,"schema":{"$ref":"#/components/schemas/connect-protocol-version"}},{"in":"header","name":"Connect-Timeout-Ms","schema":{"$ref":"#/components/schemas/connect-timeout-header"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.RevokeOidcSessionsRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.RevokeOidcSessionsResponse"}}},"description":"Success"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/connect.error"}}},"description":"Error"}},"summary":"RevokeOidcSessions","tags":["SecurityService"],"x-state":"Added in v26.1"}},"/redpanda.core.admin.v2.SecurityService/UpdateScramCredential":{"post":{"description":"Update a SCRAM credential.","operationId":"redpanda.core.admin.v2.SecurityService.UpdateScramCredential","parameters":[{"in":"header","name":"Connect-Protocol-Version","required":true,"schema":{"$ref":"#/components/schemas/connect-protocol-version"}},{"in":"header","name":"Connect-Timeout-Ms","schema":{"$ref":"#/components/schemas/connect-timeout-header"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.UpdateScramCredentialRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.UpdateScramCredentialResponse"}}},"description":"Success"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/connect.error"}}},"description":"Error"}},"summary":"UpdateScramCredential","tags":["SecurityService"],"x-state":"Added in v26.1"}},"/redpanda.core.admin.v2.ShadowLinkService/CreateShadowLink":{"post":{"description":"Creates a new shadow link between clusters.","operationId":"redpanda.core.admin.v2.ShadowLinkService.CreateShadowLink","parameters":[{"in":"header","name":"Connect-Protocol-Version","required":true,"schema":{"$ref":"#/components/schemas/connect-protocol-version"}},{"in":"header","name":"Connect-Timeout-Ms","schema":{"$ref":"#/components/schemas/connect-timeout-header"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.CreateShadowLinkRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.CreateShadowLinkResponse"}}},"description":"Success"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/connect.error"}}},"description":"Error"}},"summary":"CreateShadowLink","tags":["ShadowLinkService"],"x-state":"Added in v25.3"}},"/redpanda.core.admin.v2.ShadowLinkService/DeleteShadowLink":{"post":{"description":"Deletes an existing shadow link.","operationId":"redpanda.core.admin.v2.ShadowLinkService.DeleteShadowLink","parameters":[{"in":"header","name":"Connect-Protocol-Version","required":true,"schema":{"$ref":"#/components/schemas/connect-protocol-version"}},{"in":"header","name":"Connect-Timeout-Ms","schema":{"$ref":"#/components/schemas/connect-timeout-header"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.DeleteShadowLinkRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.DeleteShadowLinkResponse"}}},"description":"Success"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/connect.error"}}},"description":"Error"}},"summary":"DeleteShadowLink","tags":["ShadowLinkService"],"x-state":"Added in v25.3"}},"/redpanda.core.admin.v2.ShadowLinkService/FailOver":{"post":{"description":"Fails over a shadow link or a single shadow topic for disaster recovery.","operationId":"redpanda.core.admin.v2.ShadowLinkService.FailOver","parameters":[{"in":"header","name":"Connect-Protocol-Version","required":true,"schema":{"$ref":"#/components/schemas/connect-protocol-version"}},{"in":"header","name":"Connect-Timeout-Ms","schema":{"$ref":"#/components/schemas/connect-timeout-header"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.FailOverRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.FailOverResponse"}}},"description":"Success"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/connect.error"}}},"description":"Error"}},"summary":"FailOver","tags":["ShadowLinkService"],"x-state":"Added in v25.3"}},"/redpanda.core.admin.v2.ShadowLinkService/GetShadowLink":{"post":{"description":"Gets information about a specific shadow link.","operationId":"redpanda.core.admin.v2.ShadowLinkService.GetShadowLink","parameters":[{"in":"header","name":"Connect-Protocol-Version","required":true,"schema":{"$ref":"#/components/schemas/connect-protocol-version"}},{"in":"header","name":"Connect-Timeout-Ms","schema":{"$ref":"#/components/schemas/connect-timeout-header"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.GetShadowLinkRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.GetShadowLinkResponse"}}},"description":"Success"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/connect.error"}}},"description":"Error"}},"summary":"GetShadowLink","tags":["ShadowLinkService"],"x-state":"Added in v25.3"}},"/redpanda.core.admin.v2.ShadowLinkService/GetShadowTopic":{"post":{"description":"Returns information about a shadow topic on a shadow link.\n A shadow topic is a resource created automatically by a shadow link. The\n shadow topic 'shadows' a topic on a source cluster, mirroring the data\n and properties of that topic.","operationId":"redpanda.core.admin.v2.ShadowLinkService.GetShadowTopic","parameters":[{"in":"header","name":"Connect-Protocol-Version","required":true,"schema":{"$ref":"#/components/schemas/connect-protocol-version"}},{"in":"header","name":"Connect-Timeout-Ms","schema":{"$ref":"#/components/schemas/connect-timeout-header"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.GetShadowTopicRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.GetShadowTopicResponse"}}},"description":"Success"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/connect.error"}}},"description":"Error"}},"summary":"GetShadowTopic","tags":["ShadowLinkService"],"x-state":"Added in v25.3"}},"/redpanda.core.admin.v2.ShadowLinkService/ListShadowLinks":{"post":{"description":"Lists all shadow links in the cluster.","operationId":"redpanda.core.admin.v2.ShadowLinkService.ListShadowLinks","parameters":[{"in":"header","name":"Connect-Protocol-Version","required":true,"schema":{"$ref":"#/components/schemas/connect-protocol-version"}},{"in":"header","name":"Connect-Timeout-Ms","schema":{"$ref":"#/components/schemas/connect-timeout-header"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.ListShadowLinksRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.ListShadowLinksResponse"}}},"description":"Success"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/connect.error"}}},"description":"Error"}},"summary":"ListShadowLinks","tags":["ShadowLinkService"],"x-state":"Added in v25.3"}},"/redpanda.core.admin.v2.ShadowLinkService/ListShadowTopics":{"post":{"description":"Returns a list of all shadow topics on a shadow link and\n their status.","operationId":"redpanda.core.admin.v2.ShadowLinkService.ListShadowTopics","parameters":[{"in":"header","name":"Connect-Protocol-Version","required":true,"schema":{"$ref":"#/components/schemas/connect-protocol-version"}},{"in":"header","name":"Connect-Timeout-Ms","schema":{"$ref":"#/components/schemas/connect-timeout-header"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.ListShadowTopicsRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.ListShadowTopicsResponse"}}},"description":"Success"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/connect.error"}}},"description":"Error"}},"summary":"ListShadowTopics","tags":["ShadowLinkService"],"x-state":"Added in v25.3"}},"/redpanda.core.admin.v2.ShadowLinkService/UpdateShadowLink":{"post":{"description":"Updates an existing shadow link configuration.","operationId":"redpanda.core.admin.v2.ShadowLinkService.UpdateShadowLink","parameters":[{"in":"header","name":"Connect-Protocol-Version","required":true,"schema":{"$ref":"#/components/schemas/connect-protocol-version"}},{"in":"header","name":"Connect-Timeout-Ms","schema":{"$ref":"#/components/schemas/connect-timeout-header"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.UpdateShadowLinkRequest"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/redpanda.core.admin.v2.UpdateShadowLinkResponse"}}},"description":"Success"},"default":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/connect.error"}}},"description":"Error"}},"summary":"UpdateShadowLink","tags":["ShadowLinkService"],"x-state":"Added in v25.3"}}},"servers":[{"url":"http://localhost:9644"}],"tags":[{"name":"BrokerService","description":"BrokerService provides information about individual brokers within a Redpanda cluster. "},{"name":"ClusterService","description":"ClusterService provides information about the Redpanda cluster as a whole, such as its configuration, status, and client connections."},{"name":"SecurityService","description":"Use SecurityService to manage SCRAM credentials, role-based access control (RBAC), and OpenID Connect (OIDC) operations."},{"name":"ShadowLinkService","description":"Use ShadowLinkService to manage shadow links between clusters for disaster recovery.\nShadow links replicate topics from a source cluster to a shadow cluster."}]}