MailGun Post Json to API

33 views Asked by At
public class Program
{
    private readonly IHttpClientFactory _httpClientFactory;
    public static async Task Main(string[] args)
    {
        var client = _httpClientFactory.CreateClient();
        var base64String =     Convert.ToBase64String(Encoding.ASCII.GetBytes("<username>:<password>"));
        client.DefaultRequestHeaders.Add("Authorization", "Basic "+ base64String);
        JObject json = JObject.Parse("{'items': [{'address': '[email protected]','createdat': {}},      {'address': '[email protected]','createdat': {}}]}");
        var postData = new StringContent(json.ToString(), Encoding.UTF8, "application/json");
        var DomainId = "YOUR_domainID_PARAMETER";
        var request = await client.PostAsync("https://api.mailgun.net/v3/" + DomainId + "/complaints", postData);
        var response = await request.Content.ReadAsStringAsync();

        Console.WriteLine(response);`
    }
}

I'm trying to post list of "complaints" to mailgun api. https://documentation.mailgun.com/docs/mailgun/api-reference/openapi-final/tag/Complaints/#tag/Complaints/operation/api.(*ComplaintController).InsertJSON-fm-36

I get a response back with "StatusCode: 400, ReasonPhrase: 'Bad Request'". Also a message {"message":"Missing mandatory parameter: address"}\n.

I'm not sure exactly whats wrong. I'm guessing it's my Json.

0

There are 0 answers