code: public GHAuthorization createToken(@Nonnull String username,
                                         @Nonnull String password,
                                         @Nullable String apiUrl) throws IOException {
          GitHub gitHub = new GitHubBuilder()
                  .withEndpoint(defaultIfBlank(apiUrl, GITHUB_URL))
                  .withPassword(username, password)
                  .build();
  
          return gitHub.createToken(
                  GH_PLUGIN_REQUIRED_SCOPE,
                  format("Jenkins GitHub Plugin token (%s)", Jenkins.getInstance().getRootUrl()),
                  Jenkins.getInstance().getRootUrl()
          );
      }
docs: Can be used to convert given login and password to GH personal token as more secured way to interact with api
  
  @param username gh login
  @param password gh password
  @param apiUrl   gh api url. Can be null or empty to default
  
  @return personal token with requested scope
  @throws IOException when can't create token with given creds