Hello Joshua,
Ok. I will take a look at this, but please, Joshua, if you have any specific question, post it here! :)
Basically we can use the "SimplePost" action to perfom an HTTP POST call from our application including one or more key/values. The SimplePost's action editor we can see in the below image, allows us to place one or more key/value pairs in our HTTP POST call in an easy way:

In the above case the server receive two keys: "MyKey1" and "MyKey2", with their two specified values: "MyValue1" and "MyValue2". The server response are saved into the "[MyResultVariable]", but, as you know, there is not available just after the "SimplePost" action is executed, because they are executed in an asynchronous way.
And what happend if we wanted to know the server response of an HTTP POST call after perform it? If this is what we wanted the "HttpClient" control appear to the rescue. This control allow us to perform HTTP calls, also POST calls, and they have two events "Success" and "Error". Once the HTTP call is made, one of such events are fired, then we not only can know the server response, but also if a possible error occur.
How we can set the "key/value" pairs if we use the "HttpClient" control? Using the "HttpSetData" action we can do that. The below image show to us the HttpSetData's action editor. As you can see, we simply must specify the HttpClient control we want to use and the key/value pair we want to establish.

Once our HTTP call is prepared, we just call to the "HttpExecute" action to perform it. One interesting thing to note is that in both cases (by use the "SimplePost" action or an "HttpClient") our key's values can contains variables, and, if this variable is an Input File value, the user choose file is uploaded to the server along the HTTP call. We can take a look at various App Builder samples which deal with this like the "SimplePost", "SimpleFile" and the "HttpClient" samples.
Hope this information can help! Please post here if you have any further question Joshua!