title: How to send SOAP request via Postman
body: <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>