docs: LineMessagingService buildRetrofitIface() {
          if (okHttpClientBuilder == null) {
              okHttpClientBuilder = new OkHttpClient.Builder();
          }
  
          // Add interceptors.
          if (addAuthenticationHeader) {
              okHttpClientBuilder.addInterceptor(buildAuthenticationInterceptor(channelTokenSupplier));
          }
          if (additionalInterceptors != null) {
              additionalInterceptors.forEach(okHttpClientBuilder::addInterceptor);
          }
          okHttpClientBuilder.addInterceptor(buildLoggingInterceptor());
  
          // Set timeout.
          okHttpClientBuilder
                  .connectTimeout(connectTimeout, TimeUnit.MILLISECONDS)
                  .readTimeout(readTimeout, TimeUnit.MILLISECONDS)
                  .writeTimeout(writeTimeout, TimeUnit.MILLISECONDS);
  
          final OkHttpClient okHttpClient = okHttpClientBuilder.build();
  
          if (retrofitBuilder == null) {
              retrofitBuilder = createDefaultRetrofitBuilder();
          }
          retrofitBuilder.client(okHttpClient);
          retrofitBuilder.baseUrl(apiEndPoint);
  
          final Retrofit retrofit = retrofitBuilder.build();
  
          return retrofit.create(LineMessagingService.class);
      }