body =
%{event: ["accepted"]}
|> Plug.Conn.Query.encode
However the response I get is:
** (Bamboo.ApiError) There was a problem sending the email through the Mailgun API.
Here is the response:
"{\"message\":\"please provide at least one event: Missing mandatory parameter: event\"}\n"
Here are the params we sent:
"event[]=accepted"
I really like the design of Elixir standard lib here - query parameter should not be implemented as map (as duplicate key is possible) and the order is preserved (as in keywords), and no magic transformation (e.g. passing list as value) . I saw many “easy to use” http interface are based on wrong assumption on many details…
Can you include the code that calls out to Mailgun? I see the query preparation, but not how that is actually being sent along. My initial guess is that maybe that part is not setup correctly.
Do you mean query params? GET requests technically can have a body, but I would put the chances of a service respecting it very low.