// DescribeUserSCRAMCredentialsRequest, proposed in KIP-554 and introduced
// with Kafka 2.7.0, describes user SCRAM credentials.
//
// This request was introduced as part of the overarching KIP-500 initiative,
// which is to remove Zookeeper as a dependency.
//
// This request requires DESCRIBE on CLUSTER.
DescribeUserSCRAMCredentialsRequest => key 50, max version 0, flexible v0+
  // The users to describe, or null to describe all.
  Users: nullable[=>]
    // The user name.
    Name: string

// DescribeUserSCRAMCredentialsResponse is a response for a
// DescribeUserSCRAMCredentialsRequest.
DescribeUserSCRAMCredentialsResponse =>
  ThrottleMillis
  // The request-level error code. This is 0 except for auth or infra issues.
  //
  // CLUSTER_AUTHORIZATION_FAILED if you do not have DESCRIBE on CLUSTER.
  ErrorCode: int16
  // The request-level error message, if any.
  ErrorMessage: nullable-string
  // Results for descriptions, one per user.
  Results: [=>]
    // The name this result corresponds to.
    User: string
    // The user-level error code.
    //
    // RESOURCE_NOT_FOUND if the user does not exist or has no credentials.
    //
    // DUPLICATE_RESOURCE if the user is requested twice+.
    ErrorCode: int16
    // The user-level error message, if any.
    ErrorMessage: nullable-string
    // Information about the SCRAM credentials for this user.
    CredentialInfos: [=>]
      // The SCRAM mechanism for this user, where 0 is UNKNOWN, 1 is SCRAM-SHA-256,
      // and 2 is SCRAM-SHA-512.
      Mechanism: int8
      // The number of iterations used in the SCRAM credential.
      Iterations: int32
