code: public static Map<String, Object> createFormParamRefreshTokenGrantType(String refreshToken, String scope, String clientId) {
          if (refreshToken == null) {
              throw new IllegalArgumentException("Missing the required parameter 'refresh_token'");
          }
          Map<String, Object> formParams = new HashMap<>();
          formParams.put("grant_type", "refresh_token");
          formParams.put("refresh_token", refreshToken);
          if (scope != null) {
              formParams.put("scope", scope);
          }
          if (clientId != null) {
              formParams.put("client_id", clientId);
          }
          return formParams;
      }
docs: Build form parameters
  
  @param refreshToken See [Refresh Token](https://tools.ietf.org/html/rfc6749#section-1.5) for details.
  @param scope        The scope of the access request. The Authentication API supports only the &#x60;*&#x60; value. (optional)
  @param clientId     The ID of the application or service that is registered as the client. You&#39;ll need to get this value from your PureEngage Cloud representative. (optional)
  @return a map of form parameters
  @throws IllegalArgumentException if required form parameter is missed