如何将SignatureOption传递给FedEx RateRequest API?

时间:2013-11-11 23:35:05

标签: api fedex

对于某些交付,我需要签名,这是额外费用。我想知道使用费率请求API的额外费用是多少。我想知道这是否是获得该价值的地方,或者是否有其他方式。

在文档中,我只在RateReplyDetails的解释中看到SignatureOption元素,但没有关于如何在RateRequest中将它发送给它们的内容。对于SignatureOption,回复总是说“SERVICE_DEFAULT”,其值为零。我想回复一下,例如,间接和一些金额。其他选项包括ADULT,DIRECT,NO_SIGNATURE_REQUIRED等。

下面你可以看到我尝试将元素放在RequestedShipment元素下的位置。但这会导致回复成为“无效元素”错误。我在RateRequest的各个地方试过它都无济于事。

<ns:RateRequest xmlns:ns="http://fedex.com/ws/rate/v7" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <ns:WebAuthenticationDetail>
                    <ns:UserCredential>
                        <ns:Key>00000</ns:Key>
                        <ns:Password>00000</ns:Password>
                    </ns:UserCredential>
                </ns:WebAuthenticationDetail>
                <ns:ClientDetail>
                    <ns:AccountNumber>00000</ns:AccountNumber>
                    <ns:MeterNumber>00000</ns:MeterNumber>
                </ns:ClientDetail>
                <ns:Version>
                    <ns:ServiceId>crs</ns:ServiceId>
                    <ns:Major>7</ns:Major>
                    <ns:Intermediate>0</ns:Intermediate>
                    <ns:Minor>0</ns:Minor>
                </ns:Version>
                <ns:RequestedShipment>
                    <ns:SignatureOption>INDIRECT</ns:SignatureOption>
                    <ns:ShipTimestamp>#DateFormat(Now(),'yyyy-mm-dd')#T#TimeFormat(Now(),'hh:mm:ss')#</ns:ShipTimestamp>
                    <ns:DropoffType>REGULAR_PICKUP</ns:DropoffType>
                    <ns:PackagingType>YOUR_PACKAGING</ns:PackagingType>

2 个答案:

答案 0 :(得分:5)

使用更新版本的API时,您需要在RequestedPackageLineItems中设置选项。只有在选择了实际签名选项时才发送元素。

<RequestedPackageLineItems>
… dim, weight, etc…
<SpecialServicesRequested>
<SpecialServiceTypes>SIGNATURE_OPTION</SpecialServiceTypes>
<SignatureOptionDetail>
<OptionType>DIRECT|INDIRECT|ADULT|NO_SIGNATURE_REQUIRED</OptionType>
</SignatureOptionDetail>
</SpecialServicesRequested>
</RequestedPackageLineItems>

答案 1 :(得分:1)

虽然adnyknas的答案是正确的,但关于您应该将其放入XML的地方,请注意签名服务请求仅适用于美国:

这是我从FedEX技术支持获得的信息:

  

大多数国家/地区都无法使用签名要求(SR)服务。仅适用于美国的FedEx Express美国包裹服务和FedEx Ground美国服务。请参阅以下http://www.fedex.com/us/2014rates/surcharges-and-fees.html的限制