Releases: MedShift/bigc
Releases · MedShift/bigc
v1.0.0
What’s New
- Standardized Signatures The method signatures across all API resources have been standardized to provide a consistent Pythonic interface.
- Reworked Exceptions Exceptions now include structured error messages from BigCommerce. The exception hierarchy has been reworked to make exception handling more convenient.
- Automatic Retries API calls can be configured to automatically retry after a failed attempt.
- Versioned APIs To support future- and backwards-compatibility, each resource now includes its API version in its signature.
- Timeouts can be specified on a per-request basis using the
timeout
keyword argument. - Comma-separated query parameters may be specified as a list, e.g.
[1, 2, 3]
→'1,2,3'
. - Added support for cursor-based pagination in the V3 API client.
- Added
update_many
anddelete_many
to the Customers v3 resource.
Breaking Changes
- The minimum supported Python version is now 3.10.
- The
timeout
argument toBigCommerceAPI.__init__
is now keyword-only. - Resources are now grouped by the BigCommerce API version. For example,
BigCommerceAPI.orders
has been split intoBigCommerceAPI.orders_v2
andBigCommerceAPI.orders_v3
. - Request bodies are now always passed as a dictionary (
data={}
), rather than as individual keyword arguments. - Query parameters are now always passed as a dictionary (
params={}
, kwarg-only), rather than as individual keyword arguments. - The
customer_id
argument has been removed from customer address methods. BigCommerceAPI.api.v2
andBigCommerceAPI.api.v3
have been renamed toBigCommerceAPI.api_v2
andBigCommerceAPI.api_v3
, respectively.- The signatures of
BigCommerceRequestClient.request
andBigCommerceRequestClient.get_many
have changed. Keyword arguments are no longer directly passed torequests.request
. - The signature of
BigCommerceException.__init__
has changed. - The exception hierarchy has been reworked completely:
BigCommerceAPIException
→BigCommerceError
BigCommerceRedirectionError
→ removedInvalidAuthorizationError
→UnauthorizedError
InsufficientScopesError
→ForbiddenError
ResourceNotFoundError
→DoesNotExistError
- (new)
ConflictError
- (new)
EntityTooLargeError
- (new)
InvalidDataError
- (new)
LockedError
RateLimitExceededError
→TooManyRequestsError
InternalBigCommerceError
→InternalServerError
- (new)
BadGatewayError
StoreUnavailableError
→ServiceUnavailableError
- (new)
GatewayTimeoutError
PlanLimitExceededError
→InsufficientStorageError
- (new)
BigCommerceNetworkError
- The type of
BigCommerceException.message
is nowstr | None
. To get a non-optional message, callBigCommerceException.__str__
. - The type of
BigCommerceException.response
is nowAny
(at runtime it is stillrequests.Response
). - Exceptions raised from Requests are now wrapped in a
BigCommerceException
.
v1.0.0b4
1.0.0b3
1.0.0b2
1.0.0b1
0.2.16
v0.2.15
v0.2.14
What's Changed
- Add timeout arguments to bigc api client by @briancbarrow in #44
New Contributors
- @briancbarrow made their first contribution in #44
Full Changelog: v0.2.13...v0.2.14
v0.2.13
What's Changed
- Add query param support for products.all() by @julius-walton in #43
New Contributors
- @julius-walton made their first contribution in #43
Full Changelog: v0.2.12...v0.2.13