code: protected String sendRequestForData(final S service, final T accessToken, final String dataUrl, Verb verb) {
          logger.debug("accessToken: {} / dataUrl: {}", accessToken, dataUrl);
          final long t0 = System.currentTimeMillis();
          final OAuthRequest request = createOAuthRequest(dataUrl, verb);
          signRequest(service, accessToken, request);
          final String body;
          final int code;
          try {
              Response response = service.execute(request);
              code = response.getCode();
              body = response.getBody();
          } catch (final IOException | InterruptedException | ExecutionException e) {
              throw new HttpCommunicationException("Error getting body: " + e.getMessage());
          }
          final long t1 = System.currentTimeMillis();
          logger.debug("Request took: " + (t1 - t0) + " ms for: " + dataUrl);
          logger.debug("response code: {} / response body: {}", code, body);
          if (code != 200) {
              throw new HttpCommunicationException(code, body);
          }
          return body;
      }
docs: Make a request to get the data of the authenticated user for the provider.
  
  @param service the OAuth service
  @param accessToken the access token
  @param dataUrl     url of the data
  @param verb        method used to request data
  @return the user data response