code: def sign_direct(self, request, authheaders, secret):
          
          if request.get_header('x-authorization-timestamp') == '':
              request.with_header("X-Authorization-Timestamp", str(time.time()))
          if request.body is not None and request.body != b'':
              if request.get_header("x-authorization-content-sha256") == '':
                  sha256 = hashlib.sha256()
                  sha256.update(request.body)
                  request.with_header("X-Authorization-Content-SHA256", base64.b64encode(sha256.digest()).decode('utf-8'))
          sig = self.sign(request, authheaders, secret)
          authheaders["signature"] = sig
          return request.with_header("Authorization", "acquia-http-hmac {0}".format(self.unroll_auth_headers(authheaders)))
docs: Signs a request directly with a v2 signature. The request's Authorization header will change.
          This function may also add the required X-Authorization-Timestamp and X-Authorization-Content-SHA256 headers.
  
          Keyword arguments:
          request -- A request object which can be consumed by this API.
          authheaders -- A string-indexable object which contains the headers appropriate for this signature version.
          secret -- The base64-encoded secret key for the HMAC authorization.