bigcommerce-api-python icon indicating copy to clipboard operation
bigcommerce-api-python copied to clipboard

Getting subresources alongside products (not separately)

Open dsoprea opened this issue 4 years ago • 1 comments
trafficstars

The API supports getting subresources within the same request as products:

image

However, the client seems to only provide access one at a time via a separate API call.

image

There's no way to just request products and subresources in one call?

dsoprea avatar May 14 '21 09:05 dsoprea

I had a similar issue with OrderCoupons. The problem is that these subresources use ListableApiSubResource but the iterall method you probably want is on the ListableApiResource mix in

You can work around this with a monkey patch at runtime if you do something like this:

class ListableOrderCoupons(bigcommerce.api.OrderCoupons, bigcommerce.api.ListableApiResource):
    pass

...
# at runtime add this monkeypatch to the API obj
conn.ListableOrderCoupons = bigcommerce.api.ApiResourceWrapper(ListableOrderCoupons, conn)

# now can just call...
foo = conn.ListableOrderCoupons.iterall()
...

not winning any awards for cleanest code but should work in a pinch

WillAyd avatar Apr 18 '22 18:04 WillAyd