class Attio::Util::WebhookSignature

def extract_from_headers(headers)

Extract signature from headers
def extract_from_headers(headers)
  signature = headers[SIGNATURE_HEADER] || headers[SIGNATURE_HEADER.upcase] || headers[SIGNATURE_HEADER.tr("-", "_").upcase]
  timestamp = headers[TIMESTAMP_HEADER] || headers[TIMESTAMP_HEADER.upcase] || headers[TIMESTAMP_HEADER.tr("-", "_").upcase]
  raise SignatureVerificationError, "Missing signature header: #{SIGNATURE_HEADER}" unless signature
  raise SignatureVerificationError, "Missing timestamp header: #{TIMESTAMP_HEADER}" unless timestamp
  {
    signature: signature,
    timestamp: timestamp
  }
end