Потом же var response = webClient.UploadValues(sendToListUrl, pars); не отработает или как можно направить по другому, и у меня не только bool параметр, имеется еще строковые.
var pars = new Dictionary<string, dynamic>();
pars.Add("access_token", token);
...
var client = new HttpClient();
var json = JsonConvert.SerializeObject(pars);
var content = new StringContent(json);
var response = client.PostAsync(sendToListUrl, content);
almenovr, а зачем делать Dictionary[string, dynamic]?
Используй тогда объекты -
var pars = new {
access_token = token
};
//...
var client = new HttpClient();
var json = JsonConvert.SerializeObject(pars);
var content = new StringContent(json);
var response = await client.PostAsync(sendToListUrl, content);
И "не работать" может по многим причинам, и без документации на целевую апишку/описания, какой должен быть запрос нельзя сказать, что не так.
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text.Json;
var token = "token"; // Токен как-то получаем
var client = new HttpClient();
// Вместо Dictionary можно использовать объект, но тогда надо будет поля разметить с JsonPropertyName
var requestParameters = new Dictionary<string, object>
{ // Параметры естественно свои пихаем
["email"] = "john.doe@example.com",
["fullName"] = "John Doe",
["firstName"] = "John",
["lastName"] = "Doe",
["country"] = "United States",
["locality"] = "Woodbridge, New Jersey",
["socialLinks[linkedIn]"] = "https://www.linkedin.com/in/johndoe/&social",
["social[twiiter]"] = "https://twitter.com/johndoe&social",
["customFields[phone number]"] = "+ 1 888 2073333",
["position"] = "Vice President of Sales",
["companyName"] = "GoldenRule",
["companySite"] = "https://goldenrule.com",
["updateContact"] = 1,
["listId"] = "12345",
};
var requestContent = new StringContent(JsonSerializer.Serialize(requestParameters))
{
Headers = {
ContentType = new MediaTypeHeaderValue("application/json")
}
};
var request = new HttpRequestMessage
{
Headers = {
Authorization = new AuthenticationHeaderValue("Bearer", token)
},
RequestUri = new Uri("https://api.snov.io/v1/add-prospect-to-list"),
Method = HttpMethod.Post,
Content = requestContent
};
var response = await client.SendAsync(request);