from nacl import signing
import requests
def signed_request(request: requests.PreparedRequest, api_access_key, api_signing_key):
timestamp = timestamp = str(int(time.time()))
message = b"".join(
[bytearray(timestamp, "utf-8"), bytearray(request.method, "utf-8"),
bytearray(request.path_url, "utf-8"), request.body]
)
signing_key = signing.SigningKey(api_signing_key)
signature = signing_key.sign(message).signature.hex()
request.headers["Api-Access-Key"] = api_access_key
request.headers["Api-Signature"] = signature
request.headers["Api-Timestamp"] = timestamp
return request