-
Couldn't load subscription status.
- Fork 82
Allow implicit options to be passed into product.sku #84
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Changes from all commits
af02613
9063964
c802fa8
c124d74
01a8307
f4ca6e6
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -48,11 +48,17 @@ def rules(self, id=None): | |
| else: | ||
| return ProductRules.all(self.id, connection=self._connection) | ||
|
|
||
| def skus(self, id=None): | ||
| def skus(self, id=None, **kwargs): | ||
| if id: | ||
| return ProductSkus.get(self.id, id, connection=self._connection) | ||
| return ProductSkus.get(self.id, id, connection=self._connection, **kwargs) | ||
| else: | ||
| return ProductSkus.all(self.id, connection=self._connection) | ||
| return ProductSkus.all(self.id, connection=self._connection, **kwargs) | ||
|
|
||
| def variants(self, id=None, **kwargs): | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I would prefer to have the V3 products-related endpoints in a completely separate file from the V2 ones - that namespacing will help a lot if we try to apply different logic to them (pagination comes to mind) |
||
| if id: | ||
| return ProductVariants.get(self.id, id, connection=self._connection, **kwargs) | ||
| else: | ||
| return ProductVariants.all(self.id, connection=self._connection, **kwargs) | ||
|
|
||
| def videos(self, id=None): | ||
| if id: | ||
|
|
@@ -99,7 +105,9 @@ class ProductImages(ListableApiSubResource, CreateableApiSubResource, | |
| count_resource = 'products/images' | ||
|
|
||
|
|
||
| class ProductOptions(ListableApiSubResource): | ||
| class ProductOptions(ListableApiSubResource, CreateableApiSubResource, | ||
| UpdateableApiSubResource, DeleteableApiSubResource, | ||
| CollectionDeleteableApiSubResource, CountableApiSubResource): | ||
| resource_name = 'options' | ||
| parent_resource = 'products' | ||
| parent_key = 'product_id' | ||
|
|
@@ -131,6 +139,13 @@ class ProductSkus(ListableApiSubResource, CreateableApiSubResource, | |
| parent_key = 'product_id' | ||
| count_resource = 'products/skus' | ||
|
|
||
| class ProductVariants(ListableApiSubResource, CreateableApiSubResource, | ||
| UpdateableApiSubResource, DeleteableApiSubResource, | ||
| CollectionDeleteableApiSubResource, CountableApiSubResource): | ||
| resource_name = 'variants' | ||
| parent_resource = 'products' | ||
| parent_key = 'product_id' | ||
| count_resource = 'products/variants' | ||
|
|
||
| class ProductVideos(ListableApiSubResource, CountableApiSubResource, | ||
| CreateableApiSubResource, DeleteableApiSubResource, | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,10 @@ | ||
| from .base import * | ||
|
|
||
|
|
||
| class Variants(ListableApiResource, CreateableApiSubResource, | ||
| UpdateableApiSubResource, DeleteableApiSubResource, | ||
| CollectionDeleteableApiSubResource, CountableApiSubResource): | ||
| resource_name = 'variants' | ||
| parent_resource = 'products' | ||
| parent_key = 'product_id' | ||
| count_resource = 'products/variants' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@VDuda with this bit, the orders API no longer works, as this seems to have an explicit
/v2/path as per the docs here:https://developer.bigcommerce.com/api-reference/orders/orders-api/orders/getallorders
This bit of the code injects
catalogin when it is not needed, the url for orders is/store/{store_hash}/v2/ordersUsing the code this way would require making a fresh connection for a
v2connection so we don't break the rest of the API@bookernath am I missing anything with your API endpoints here?