When I initially export the API call from postman I didn't get the yellow highlighted lines.
I had to manually add those 2.
Then only this start working on C# Rest client.
So make sure to add headers when importing Request from Postmant to C# or other language.
var client1 = new RestClient("https://qtm4j-cloud-prod-4.s3.amazonaws.com/");
client1.Timeout = -1;
var request = new RestRequest(Method.POST);
request.AddHeader("apiKey", "" + APIKey+ "");
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Content-Type", "multipart/form-data");
request.AddParameter("acl", "authenticated-read");
request.AddParameter("key", "" + key + "");
request.AddParameter("policy", "" + Policy + "");
request.AddParameter("success_action_status", "201");
request.AddParameter("x-amz-algorithm", "AWS4-HMAC-SHA256");
request.AddParameter("x-amz-credential", "" + Credential +"");
request.AddParameter("x-amz-date", "" + Date + "");
request.AddParameter("x-amz-signature", "" + signature + "");
request.AddParameter("x-amz-Meta-file-name", "" + FileName + "");
request.AddParameter("x-amz-Meta-b", "" + Meta_b+ "");
request.AddParameter("x-amz-Meta-a", "" + Meta_a + "");
request.AddParameter("x-amz-Meta-c", "" + Meta_c + "");
request.AddParameter("x-amz-Meta-tc-id", "" + TC_ID + "");
request.AddParameter("x-amz-Meta-tc-version-id", "" + VersionID + "");
request.AddParameter("x-amz-Meta-tc-version-no", "" + TC_Version_No + "");
request.AddFile("file", FileLocationName);
try
{
IRestResponse response = client1.Execute(request);
if (response.Content.ToString().Contains("</Location><Bucket>"))
{