code: public void setRequestDatetime(PiwikDate datetime){
          if (datetime != null && new Date().getTime()-datetime.getTime() > REQUEST_DATETIME_AUTH_LIMIT && getAuthToken() == null){
              throw new IllegalStateException("Because you are trying to set RequestDatetime for a time greater than 4 hours ago, AuthToken must be set first.");            
          }
          setParameter(REQUEST_DATETIME, datetime);
      }
docs: Set the datetime of the request (normally the current time is used).
  This can be used to record visits and page views in the past. The datetime
  must be sent in UTC timezone. <em>Note: if you record data in the past, you will
  need to <a href="http://piwik.org/faq/how-to/#faq_59">force Piwik to re-process
  reports for the past dates</a>.</em> If you set the <em>Request Datetime</em> to a datetime
  older than four hours then <em>Auth Token</em> must be set. If you set
  <em>Request Datetime</em> with a datetime in the last four hours then you
  don't need to pass <em>Auth Token</em>.
  @param datetime the datetime of the request to set.  A null value will remove this parameter