Clearer response from BigCommerce

Deadly 提交于 2020-01-15 06:44:09

问题


Can BigCommerce change their API response to be more clear when a program tries to post a shipment that already exists?

When posting shipments to BigCommerce, if the shipment already exists, then you receive the following error message.

<?xml version="1.0"?>
<errors>
    <error>
        <status>400</status>
        <message>The field 'quantity' is invalid.</message>
        <details>
            <invalid_reason>The quantity specified is greater than the quantity of the product that is available to ship.</invalid_reason>
            <available_quantity>0</available_quantity>
            <order_product_id>628</order_product_id>
        </details>
    </error>
</errors>

I agree that it is a bad request, but it has nothing to do with the quantity of the item. Can we do something like the following for the message or invalid_reason instead?

The shipment [insert ID here] already exists and cannot be added.

This would make for a much more usable API.


回答1:


When querying the order products resource there is an available quantity to ship, and as you create a shipment(s) the available quantity is reduced to 0.

Initially a shipment POST is successful as the quantity specified in the payload matches that of the order. If you were to POST a shipment to an order that has already been shipped then the available quantity is actually 0, and when you specify a positive integer for quantity in the payload it is invalid and greater than the available quantity, so the error is accurate.



来源:https://stackoverflow.com/questions/17886266/clearer-response-from-bigcommerce

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!