docs: async def build_nym_request(submitter_did: str,
                              target_did: str,
                              ver_key: Optional[str],
                              alias: Optional[str],
                              role: Optional[str]) -> str:
      """
      Builds a NYM request.
  
      :param submitter_did: DID of the submitter stored in secured Wallet.
      :param target_did: Target DID as base58-encoded string for 16 or 32 bit DID value.
      :param ver_key: Target identity verification key as base58-encoded string.
      :param alias: NYM's alias.
      :param role: Role of a user NYM record:
                               null (common USER)
                               TRUSTEE
                               STEWARD
                               TRUST_ANCHOR
                               NETWORK_MONITOR
                               empty string to reset role
      :return: Request result as json.
      """
  
      logger = logging.getLogger(__name__)
      logger.debug("build_nym_request: >>> submitter_did: %r, target_did: %r, ver_key: %r, alias: %r, role: %r",
                   submitter_did,
                   target_did,
                   ver_key,
                   alias,
                   role)
  
      if not hasattr(build_nym_request, "cb"):
          logger.debug("build_nym_request: Creating callback")
          build_nym_request.cb = create_cb(CFUNCTYPE(None, c_int32, c_int32, c_char_p))
  
      c_submitter_did = c_char_p(submitter_did.encode('utf-8'))
      c_target_did = c_char_p(target_did.encode('utf-8'))
      c_ver_key = c_char_p(ver_key.encode('utf-8')) if ver_key is not None else None
      c_alias = c_char_p(alias.encode('utf-8')) if alias is not None else None
      c_role = c_char_p(role.encode('utf-8')) if role is not None else None
  
      request_json = await do_call('indy_build_nym_request',
                                   c_submitter_did,
                                   c_target_did,
                                   c_ver_key,
                                   c_alias,
                                   c_role,
                                   build_nym_request.cb)
  
      res = request_json.decode()
      logger.debug("build_nym_request: <<< res: %r", res)
      return res