How to send SOAP request via Postman
<p>I'm trying to send a SOAP request via the Postman chrome extension. My request body looks like this in Postman:</p>

<pre class="lang-xml prettyprint-override"><code>&lt;soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://partnerapi.somewhere.com/"&gt;
  &lt;soapenv:Body&gt;
    &lt;ns1:GetCustomers&gt;
      &lt;GetCustomersRequest&gt;
        &lt;APIKey&gt;SECRET&lt;/APIKey&gt;
        &lt;PartnerKey&gt;&lt;/PartnerKey&gt;    
        &lt;SearchText&gt;&lt;/SearchText&gt;
        &lt;ItemsPerPage&gt;50&lt;/ItemsPerPage&gt;
        &lt;PageNumber&gt;1&lt;/PageNumber&gt;
        &lt;Fields&gt;&lt;/Fields&gt;
        &lt;OrderBy&gt;&lt;/OrderBy&gt;
      &lt;/GetCustomersRequest&gt; 
    &lt;/ns1:GetCustomers&gt;
  &lt;/soapenv:Body&gt;
&lt;/soapenv:Envelope&gt;
</code></pre>

<p>Edit:</p>

<p>Clicking the <code>Generate Code</code> button in Postman provides the following snippet:</p>

<pre><code>POST /PartnerAPI.asmx HTTP/1.1
Host: localhost:3000
Content-Type: text/xml
SOAPAction: http://partnerapi.somewhere.com/GetCustomers
Cache-Control: no-cache
Postman-Token: 1af78251-9d36-0c94-d0e3-21f7e37ffc41
</code></pre>

<pre class="lang-xml prettyprint-override"><code>&lt;soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://partnerapi.somewhere.com/"&gt;
  &lt;soapenv:Body&gt;
    &lt;ns1:GetCustomers&gt;
      &lt;GetCustomersRequest&gt;
        &lt;APIKey&gt;SECRET&lt;/APIKey&gt;
        &lt;PartnerKey&gt;&lt;/PartnerKey&gt;    
        &lt;SearchText&gt;&lt;/SearchText&gt;
        &lt;ItemsPerPage&gt;50&lt;/ItemsPerPage&gt;
        &lt;PageNumber&gt;1&lt;/PageNumber&gt;
        &lt;Fields&gt;&lt;/Fields&gt;
        &lt;OrderBy&gt;&lt;/OrderBy&gt;
      &lt;/GetCustomersRequest&gt; 
    &lt;/ns1:GetCustomers&gt;
  &lt;/soapenv:Body&gt;
&lt;/soapenv:Envelope&gt;
</code></pre>

<p>I have the web service running in Visual Studio and I have a breakpoint set in the web method which is being hit so the request is reaching the endpoint.</p>

<p>The web method signature looks like this:</p>

<pre><code>[WebMethod]
public CustomersObject GetCustomers(RequestObjects.GetCustomersRequest GetCustomersRequest)
</code></pre>

<p>But the <code>GetCustomersRequest</code> parameter is always NULL. </p>

<p>The <code>GetCustomersRequest</code> class looks like this:</p>

<pre><code>public class GetCustomersRequest {
    public string APIKey;
    public string PartnerKey;
    public string SearchText;
    public int ItemsPerPage = 50;
    public int PageNumber = 1;

    public string Fields;
    public string OrderBy;
}
</code></pre>

<p>Any idea why?</p>