I am supposed to access a a publicly accessible API (<https://ABCInsuranceCoreApp.ng.bluemix.net/ABCInsurance/ProductService>) using POST method. It accepts an XML Payload of the form 

```
<Customer>
   <Age>40</Age>
   <Gender>M</Gender>
   <Location>IBM</Location>
</Customer>

```

and returns a list of products. The API works in a REST-Client and tested.

What I have done in the Apigee API Dev Platform is as follows.

Default ProxyEndpoint: 

```
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ProxyEndpoint name="default">
    <Flows>
        <Flow name="default">
            <Request>
                <Step>
                    <Name>AssignCustomerData</Name>
                </Step>
                <Step>
                    <Name>ExecuteProductService</Name>
                </Step>
            </Request>
            <Response>
                <Step>
                    <Name>ParseProductList</Name>
                </Step>
          </Response>
        </Flow>
    </Flows>
    <HTTPProxyConnection>
        <BasePath>/v1/abcinsproductservice</BasePath>
        <VirtualHost>default</VirtualHost>
    </HTTPProxyConnection>
    <RouteRule name="default"/>
</ProxyEndpoint>

```

AssignCustomerData is an AssignMessage Policy and it looks like..

```
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AssignMessage async="false" continueOnError="false" enabled="true" name="AssignCustomerData">
    <DisplayName>AssignCustomerData</DisplayName>
    <AssignTo createNew="true" type="request">CustomerData</AssignTo>
  <Set>
    <Payload contentType="text/xml">
      <Customer>
        <Age>40</Age>
        <Gender>M</Gender>
        <Location>IBM</Location>
      </Customer>
    </Payload>
    <Verb>POST</Verb>
  </Set>
</AssignMessage>

```

ExecuteProductService is a service callout and it looks like..

```
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ServiceCallout async="false" continueOnError="false" enabled="true" name="ExecuteProductService">
  <!-- Send the message we just made to the target, and save the result -->
  <Request variable="CustomerData"/>
  <Response>ProductList</Response>
  <HTTPTargetConnection>
    <URL>https://ABCInsuranceCoreApp.ng.bluemix.net/ABCInsurance/ProductService</URL>
  </HTTPTargetConnection>
</ServiceCallout>

```

and ParseProductList is an ExtractVriable Policy which looks like..

```
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ExtractVariables async="false" continueOnError="false" enabled="true" name="ParseProductList">
    <DisplayName>ParseProductList</DisplayName>
    <FaultRules/>
    <Properties/>
  <VariablePrefix>products</VariablePrefix>
  <XMLPayload>
    <Variable name="name" type="string">
      <XPath>//Products/Product[1]/Name</XPath>
    </Variable>
  </XMLPayload>
</ExtractVariables>

```

I have dilligently followed the samples, however the arrangement does not work. I am confused as to where the error is.
The trace is not working either..
Can you pls help out..

Many thanks in advance 
Amitava