HMAC Sha1 should be calculated on the serialized object which is sent by SurveyMonkey , not any intermediate object format which is used by Python.
Because if you need to support all frameworks , hash should always be calculated on the serialized object.